diff --git a/packages/craftcms-sass/_mixins.scss b/packages/craftcms-sass/_mixins.scss index 9f9f70980ce..3d44bcc4426 100644 --- a/packages/craftcms-sass/_mixins.scss +++ b/packages/craftcms-sass/_mixins.scss @@ -590,7 +590,7 @@ $radioSize: 16px; @mixin input-styles { border-radius: $smallBorderRadius; - border: 1px solid transparentize($inputColor, 0.75); + border: 1px solid var(--input-border-color); background-color: hsl(212, 50%, 99%); background-clip: padding-box; } diff --git a/src/config/GeneralConfig.php b/src/config/GeneralConfig.php index d1e76e08fa3..dd506ef9647 100644 --- a/src/config/GeneralConfig.php +++ b/src/config/GeneralConfig.php @@ -75,6 +75,7 @@ class GeneralConfig extends BaseConfig * - `underlineLinks` – Whether links should be underlined. * - `notificationDuration` – How long notifications should be shown before they disappear automatically (in * milliseconds). Set to `0` to show them indefinitely. + * - `increaseContrast` - Whether the UI should be updated to have a higher contrast * * ```php * ->accessibilityDefaults([ @@ -90,6 +91,7 @@ class GeneralConfig extends BaseConfig 'useShapes' => false, 'underlineLinks' => false, 'notificationDuration' => 5000, + 'increaseContrast' => false, ]; /** diff --git a/src/controllers/UsersController.php b/src/controllers/UsersController.php index d13743fb0d9..37f14e91d60 100644 --- a/src/controllers/UsersController.php +++ b/src/controllers/UsersController.php @@ -1425,7 +1425,8 @@ public function actionSaveUser(): ?Response 'useShapes' => (bool)$this->request->getBodyParam('useShapes', $user->getPreference('useShapes')), 'underlineLinks' => (bool)$this->request->getBodyParam('underlineLinks', $user->getPreference('underlineLinks')), 'notificationDuration' => $this->request->getBodyParam('notificationDuration', $user->getPreference('notificationDuration')), - ]; + 'increaseContrast' => (bool)$this->request->getBodyParam('increaseContrast', $user->getPreference('increaseContrast')), + ]; if ($user->admin) { $preferences = array_merge($preferences, [ diff --git a/src/templates/_layouts/base.twig b/src/templates/_layouts/base.twig index c13f8b9ceeb..df09f5de0c6 100644 --- a/src/templates/_layouts/base.twig +++ b/src/templates/_layouts/base.twig @@ -9,6 +9,7 @@ not (currentUser.getPreference('alwaysShowFocusRings') ?? a11yDefaults['alwaysShowFocusRings'] ?? false) ? 'reduce-focus-visibility', (currentUser.getPreference('useShapes') ?? a11yDefaults['useShapes'] ?? false) ? 'use-shapes', (currentUser.getPreference('underlineLinks') ?? a11yDefaults['underlineLinks'] ?? false) ? 'underline-links', + (currentUser.getPreference('increaseContrast') ?? a11yDefaults['increaseContrast'] ?? false) ? 'increase-contrast', requestedSite ? "site--#{requestedSite.handle}", ])|filter -%} diff --git a/src/templates/users/_edit.twig b/src/templates/users/_edit.twig index b34f0045b59..2e421ec402e 100644 --- a/src/templates/users/_edit.twig +++ b/src/templates/users/_edit.twig @@ -264,6 +264,12 @@ id: 'underlineLinks', checked: user.getPreference('underlineLinks') ?? a11yDefaults['underlineLinks'] ?? false, }, + { + label: 'Increase contrast'|t('app'), + name: 'increaseContrast', + id: 'increaseContrast', + checked: user.getPreference('increaseContrast') ?? a11yDefaults['increaseContrast'] ?? false, + }, ], }) }} diff --git a/src/translations/en/app.php b/src/translations/en/app.php index 45bafe174d3..f0ca3bdab39 100644 --- a/src/translations/en/app.php +++ b/src/translations/en/app.php @@ -748,6 +748,7 @@ 'Includes suspending, unsuspending, and unlocking user accounts.' => 'Includes suspending, unsuspending, and unlocking user accounts.', 'Incorrect current password.' => 'Incorrect current password.', 'Incorrect password.' => 'Incorrect password.', + 'Increase contrast' => 'Increase contrast', 'Information' => 'Information', 'Initial Rows' => 'Initial Rows', 'Insert the button label for adding a new row to the table.' => 'Insert the button label for adding a new row to the table.', diff --git a/src/web/assets/admintable/dist/css/app.css b/src/web/assets/admintable/dist/css/app.css index b2f6e6eab96..16d54b0dd6c 100644 --- a/src/web/assets/admintable/dist/css/app.css +++ b/src/web/assets/admintable/dist/css/app.css @@ -1 +1,2 @@ -[v-cloak][data-v-5bfa05b0]{display:none}.vuetable th.sortable[data-v-5bfa05b0]:hover{color:#2185d0;cursor:pointer}.vuetable-body-wrapper[data-v-5bfa05b0]{overflow-y:auto;position:relative}.vuetable-head-wrapper[data-v-5bfa05b0]{overflow-x:hidden}.vuetable-actions[data-v-5bfa05b0]{padding:12px 0;text-align:center;width:15%}.vuetable-pagination[data-v-5bfa05b0]{background:#f9fafb!important}.vuetable-pagination-info[data-v-5bfa05b0]{margin-bottom:auto;margin-top:auto}.vuetable-empty-result[data-v-5bfa05b0]{text-align:center}.vuetable-clip-text[data-v-5bfa05b0]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:pre-wrap}.vuetable-semantic-no-top[data-v-5bfa05b0]{border-top:none!important;margin-top:0!important}.vuetable-fixed-layout[data-v-5bfa05b0]{table-layout:fixed}.vuetable-gutter-col[data-v-5bfa05b0]{border-left:none!important;border-right:none!important;padding:0!important}.vue-admin-table-pagination{border-top:1px solid #f3f7fc;margin-top:14px;padding-top:14px}.table-disabled-checkbox[data-v-1bbfb992]{opacity:.25}.detail-list{padding:.2rem .5rem}.detail-list-key{font-weight:700;padding-right:.25rem}.tableview td.checkbox-cell{padding-right:7px;position:relative;width:12px!important}.tableview td.checkbox-cell .checkbox{position:absolute;top:calc(50% - 6px)}.tableview.loading{opacity:.3}.tableview .cell-bold{font-weight:700}.vue-admin-table .toolbar{margin-bottom:32px}.vue-admin-table.vue-admin-table-padded .toolbar{margin-bottom:14px}.vue-admin-table-padded .tablepane{margin:0}.vue-admin-table-drag{background:#f3f7fc}table thead th.sortable:hover{background-color:#f9f9f9}table.data.vue-admin-table-dragging tbody tr:not(.disabled):hover td{background-color:transparent}.vue-admin-table-buttons{margin-left:auto}.vue-admin-table-buttons .flex:not(.flex-nowrap)>*{margin-bottom:0}.detail-cursor-pointer{cursor:pointer} \ No newline at end of file +[v-cloak][data-v-5bfa05b0]{display:none}.vuetable th.sortable[data-v-5bfa05b0]:hover{color:#2185d0;cursor:pointer}.vuetable-body-wrapper[data-v-5bfa05b0]{overflow-y:auto;position:relative}.vuetable-head-wrapper[data-v-5bfa05b0]{overflow-x:hidden}.vuetable-actions[data-v-5bfa05b0]{padding:12px 0;text-align:center;width:15%}.vuetable-pagination[data-v-5bfa05b0]{background:#f9fafb!important}.vuetable-pagination-info[data-v-5bfa05b0]{margin-bottom:auto;margin-top:auto}.vuetable-empty-result[data-v-5bfa05b0]{text-align:center}.vuetable-clip-text[data-v-5bfa05b0]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:pre-wrap}.vuetable-semantic-no-top[data-v-5bfa05b0]{border-top:none!important;margin-top:0!important}.vuetable-fixed-layout[data-v-5bfa05b0]{table-layout:fixed}.vuetable-gutter-col[data-v-5bfa05b0]{border-left:none!important;border-right:none!important;padding:0!important}.vue-admin-table-pagination{border-top:1px solid #f3f7fc;margin-top:14px;padding-top:14px}.table-disabled-checkbox[data-v-1bbfb992]{opacity:.25}.detail-list{padding:.2rem .5rem}.detail-list-key{font-weight:700;padding-right:.25rem}.tableview td.checkbox-cell{padding-right:7px;position:relative;width:12px!important}.tableview td.checkbox-cell .checkbox{position:absolute;top:calc(50% - 6px)}.tableview.loading{opacity:.3}.tableview .cell-bold{font-weight:700}.vue-admin-table .toolbar{margin-bottom:32px}.vue-admin-table.vue-admin-table-padded .toolbar{margin-bottom:14px}.vue-admin-table-padded .tablepane{margin:0}.vue-admin-table-drag{background:#f3f7fc}table thead th.sortable:hover{background-color:#f9f9f9}table.data.vue-admin-table-dragging tbody tr:not(.disabled):hover td{background-color:transparent}.vue-admin-table-buttons{margin-left:auto}.vue-admin-table-buttons .flex:not(.flex-nowrap)>*{margin-bottom:0}.detail-cursor-pointer{cursor:pointer} +/*# sourceMappingURL=app.css.map*/ \ No newline at end of file diff --git a/src/web/assets/admintable/dist/css/app.css.map b/src/web/assets/admintable/dist/css/app.css.map new file mode 100644 index 00000000000..337f8842871 --- /dev/null +++ b/src/web/assets/admintable/dist/css/app.css.map @@ -0,0 +1 @@ +{"version":3,"file":"css/app.css","mappings":"AACA,2BACE,aAEF,6CACE,cACA,eAEF,wCAEE,eAAc,CADd,iBACe,CAEjB,wCACE,kBAEF,mCAEE,eACA,kBAFA,SAEA,CAEF,sCACE,6BAEF,2CAEE,mBADA,eACA,CAEF,wCACE,kBAEF,qCAIE,cADA,gBADA,uBADA,oBAGA,CAEF,2CACE,yBAA0B,CAC1B,sBAAuB,CAEzB,wCACE,mBAEF,sCAEE,2BACA,4BAFA,mBAEA,CC7CF,4BACE,6BACA,gBACA,iBCHF,0CACE,YCDF,aACE,oBAOF,iBAEE,gBADA,oBACA,CCVF,4BACE,kBAEA,kBADA,oBACA,CAGF,sCACE,kBACA,oBAGF,mBACE,WAGF,sBACE,gBAGF,0BACE,mBAGF,iDACE,mBAGF,mCACE,SAGF,sBACE,mBAGF,8BACE,yBAGF,qEACE,6BAGF,yBACE,iBAGF,mDACE,gBAGF,uBACE","sources":["webpack:///../../../../../node_modules/vuetable-2/src/components/Vuetable.vue","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTablePagination.vue","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableCheckbox.vue","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableDetailRow.vue","webpack:///../../../../../packages/craftcms-vue/admintable/App.vue"],"sourcesContent":["\n[v-cloak] {\n display: none;\n}\n.vuetable th.sortable:hover {\n color: #2185d0;\n cursor: pointer;\n}\n.vuetable-body-wrapper {\n position:relative;\n overflow-y:auto;\n}\n.vuetable-head-wrapper {\n overflow-x: hidden;\n}\n.vuetable-actions {\n width: 15%;\n padding: 12px 0px;\n text-align: center;\n}\n.vuetable-pagination {\n background: #f9fafb !important;\n}\n.vuetable-pagination-info {\n margin-top: auto;\n margin-bottom: auto;\n}\n.vuetable-empty-result {\n text-align: center;\n}\n.vuetable-clip-text {\n white-space: pre-wrap;\n text-overflow: ellipsis;\n overflow: hidden;\n display: block;\n}\n.vuetable-semantic-no-top {\n border-top:none !important;\n margin-top:0 !important;\n}\n.vuetable-fixed-layout {\n table-layout: fixed;\n}\n.vuetable-gutter-col {\n padding: 0 !important;\n border-left: none !important;\n border-right: none !important;\n}\n","\n.vue-admin-table-pagination {\n border-top: 1px solid #f3f7fc;\n margin-top: 14px;\n padding-top: 14px;\n}\n","\n.table-disabled-checkbox {\n opacity: 0.25;\n}\n","\n.detail-list {\n padding: 0.2rem 0.5rem;\n}\n\n.detail-list-bg {\n //background: #f1f5f8;\n}\n\n.detail-list-key {\n padding-right: 0.25rem;\n font-weight: bold;\n}\n","\n.tableview td.checkbox-cell {\n padding-right: 7px;\n width: 12px !important;\n position: relative;\n}\n\n.tableview td.checkbox-cell .checkbox {\n position: absolute;\n top: calc(50% - 6px);\n}\n\n.tableview.loading {\n opacity: 0.3;\n}\n\n.tableview .cell-bold {\n font-weight: bold;\n}\n\n.vue-admin-table .toolbar {\n margin-bottom: 32px;\n}\n\n.vue-admin-table.vue-admin-table-padded .toolbar {\n margin-bottom: 14px;\n}\n\n.vue-admin-table-padded .tablepane {\n margin: 0;\n}\n\n.vue-admin-table-drag {\n background: #f3f7fc;\n}\n\ntable thead th.sortable:hover {\n background-color: #f9f9f9;\n}\n\ntable.data.vue-admin-table-dragging tbody tr:not(.disabled):hover td {\n background-color: transparent;\n}\n\n.vue-admin-table-buttons {\n margin-left: auto;\n}\n\n.vue-admin-table-buttons .flex:not(.flex-nowrap) > * {\n margin-bottom: 0;\n}\n\n.detail-cursor-pointer {\n cursor: pointer;\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/admintable/dist/js/app.js b/src/web/assets/admintable/dist/js/app.js index 310efe74e92..599f9ff519d 100644 --- a/src/web/assets/admintable/dist/js/app.js +++ b/src/web/assets/admintable/dist/js/app.js @@ -1,3 +1,3 @@ /*! For license information please see app.js.LICENSE.txt */ -!function(){var t={500:function(t,e,n){var r;t=n.nmd(t),function(){var i,a="Expected a function",o="__lodash_hash_undefined__",l="__lodash_placeholder__",s=32,u=128,c=1/0,f=9007199254740991,h=NaN,d=4294967295,p=[["ary",u],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",s],["partialRight",64],["rearg",256]],v="[object Arguments]",g="[object Array]",b="[object Boolean]",m="[object Date]",_="[object Error]",y="[object Function]",w="[object GeneratorFunction]",C="[object Map]",k="[object Number]",x="[object Object]",S="[object Promise]",D="[object RegExp]",E="[object Set]",P="[object String]",T="[object Symbol]",O="[object WeakMap]",A="[object ArrayBuffer]",I="[object DataView]",M="[object Float32Array]",R="[object Float64Array]",j="[object Int8Array]",F="[object Int16Array]",N="[object Int32Array]",B="[object Uint8Array]",L="[object Uint8ClampedArray]",$="[object Uint16Array]",H="[object Uint32Array]",z=/\b__p \+= '';/g,U=/\b(__p \+=) '' \+/g,W=/(__e\(.*?\)|\b__t\)) \+\n'';/g,q=/&(?:amp|lt|gt|quot|#39);/g,V=/[&<>"']/g,Y=RegExp(q.source),X=RegExp(V.source),Z=/<%-([\s\S]+?)%>/g,G=/<%([\s\S]+?)%>/g,K=/<%=([\s\S]+?)%>/g,J=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Q=/^\w*$/,tt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,et=/[\\^$.*+?()[\]{}|]/g,nt=RegExp(et.source),rt=/^\s+/,it=/\s/,at=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,ot=/\{\n\/\* \[wrapped with (.+)\] \*/,lt=/,? & /,st=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ut=/[()=,{}\[\]\/\s]/,ct=/\\(\\)?/g,ft=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,ht=/\w*$/,dt=/^[-+]0x[0-9a-f]+$/i,pt=/^0b[01]+$/i,vt=/^\[object .+?Constructor\]$/,gt=/^0o[0-7]+$/i,bt=/^(?:0|[1-9]\d*)$/,mt=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,_t=/($^)/,yt=/['\n\r\u2028\u2029\\]/g,wt="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Ct="a-z\\xdf-\\xf6\\xf8-\\xff",kt="A-Z\\xc0-\\xd6\\xd8-\\xde",xt="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",St="["+xt+"]",Dt="["+wt+"]",Et="\\d+",Pt="["+Ct+"]",Tt="[^\\ud800-\\udfff"+xt+Et+"\\u2700-\\u27bf"+Ct+kt+"]",Ot="\\ud83c[\\udffb-\\udfff]",At="[^\\ud800-\\udfff]",It="(?:\\ud83c[\\udde6-\\uddff]){2}",Mt="[\\ud800-\\udbff][\\udc00-\\udfff]",Rt="["+kt+"]",jt="(?:"+Pt+"|"+Tt+")",Ft="(?:"+Rt+"|"+Tt+")",Nt="(?:['’](?:d|ll|m|re|s|t|ve))?",Bt="(?:['’](?:D|LL|M|RE|S|T|VE))?",Lt="(?:"+Dt+"|"+Ot+")?",$t="[\\ufe0e\\ufe0f]?",Ht=$t+Lt+"(?:\\u200d(?:"+[At,It,Mt].join("|")+")"+$t+Lt+")*",zt="(?:"+["[\\u2700-\\u27bf]",It,Mt].join("|")+")"+Ht,Ut="(?:"+[At+Dt+"?",Dt,It,Mt,"[\\ud800-\\udfff]"].join("|")+")",Wt=RegExp("['’]","g"),qt=RegExp(Dt,"g"),Vt=RegExp(Ot+"(?="+Ot+")|"+Ut+Ht,"g"),Yt=RegExp([Rt+"?"+Pt+"+"+Nt+"(?="+[St,Rt,"$"].join("|")+")",Ft+"+"+Bt+"(?="+[St,Rt+jt,"$"].join("|")+")",Rt+"?"+jt+"+"+Nt,Rt+"+"+Bt,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Et,zt].join("|"),"g"),Xt=RegExp("[\\u200d\\ud800-\\udfff"+wt+"\\ufe0e\\ufe0f]"),Zt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Gt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Kt=-1,Jt={};Jt[M]=Jt[R]=Jt[j]=Jt[F]=Jt[N]=Jt[B]=Jt[L]=Jt[$]=Jt[H]=!0,Jt[v]=Jt[g]=Jt[A]=Jt[b]=Jt[I]=Jt[m]=Jt[_]=Jt[y]=Jt[C]=Jt[k]=Jt[x]=Jt[D]=Jt[E]=Jt[P]=Jt[O]=!1;var Qt={};Qt[v]=Qt[g]=Qt[A]=Qt[I]=Qt[b]=Qt[m]=Qt[M]=Qt[R]=Qt[j]=Qt[F]=Qt[N]=Qt[C]=Qt[k]=Qt[x]=Qt[D]=Qt[E]=Qt[P]=Qt[T]=Qt[B]=Qt[L]=Qt[$]=Qt[H]=!0,Qt[_]=Qt[y]=Qt[O]=!1;var te={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},ee=parseFloat,ne=parseInt,re="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,ie="object"==typeof self&&self&&self.Object===Object&&self,ae=re||ie||Function("return this")(),oe=e&&!e.nodeType&&e,le=oe&&t&&!t.nodeType&&t,se=le&&le.exports===oe,ue=se&&re.process,ce=function(){try{return le&&le.require&&le.require("util").types||ue&&ue.binding&&ue.binding("util")}catch(t){}}(),fe=ce&&ce.isArrayBuffer,he=ce&&ce.isDate,de=ce&&ce.isMap,pe=ce&&ce.isRegExp,ve=ce&&ce.isSet,ge=ce&&ce.isTypedArray;function be(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function me(t,e,n,r){for(var i=-1,a=null==t?0:t.length;++i-1}function xe(t,e,n){for(var r=-1,i=null==t?0:t.length;++r-1;);return n}function Ye(t,e){for(var n=t.length;n--&&Me(e,t[n],0)>-1;);return n}function Xe(t,e){for(var n=t.length,r=0;n--;)t[n]===e&&++r;return r}var Ze=Be({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),Ge=Be({"&":"&","<":"<",">":">",'"':""","'":"'"});function Ke(t){return"\\"+te[t]}function Je(t){return Xt.test(t)}function Qe(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}function tn(t,e){return function(n){return t(e(n))}}function en(t,e){for(var n=-1,r=t.length,i=0,a=[];++n",""":'"',"'":"'"}),un=function t(e){var n,r=(e=null==e?ae:un.defaults(ae.Object(),e,un.pick(ae,Gt))).Array,it=e.Date,wt=e.Error,Ct=e.Function,kt=e.Math,xt=e.Object,St=e.RegExp,Dt=e.String,Et=e.TypeError,Pt=r.prototype,Tt=Ct.prototype,Ot=xt.prototype,At=e["__core-js_shared__"],It=Tt.toString,Mt=Ot.hasOwnProperty,Rt=0,jt=(n=/[^.]+$/.exec(At&&At.keys&&At.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",Ft=Ot.toString,Nt=It.call(xt),Bt=ae._,Lt=St("^"+It.call(Mt).replace(et,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),$t=se?e.Buffer:i,Ht=e.Symbol,zt=e.Uint8Array,Ut=$t?$t.allocUnsafe:i,Vt=tn(xt.getPrototypeOf,xt),Xt=xt.create,te=Ot.propertyIsEnumerable,re=Pt.splice,ie=Ht?Ht.isConcatSpreadable:i,oe=Ht?Ht.iterator:i,le=Ht?Ht.toStringTag:i,ue=function(){try{var t=ua(xt,"defineProperty");return t({},"",{}),t}catch(t){}}(),ce=e.clearTimeout!==ae.clearTimeout&&e.clearTimeout,Oe=it&&it.now!==ae.Date.now&&it.now,Be=e.setTimeout!==ae.setTimeout&&e.setTimeout,cn=kt.ceil,fn=kt.floor,hn=xt.getOwnPropertySymbols,dn=$t?$t.isBuffer:i,pn=e.isFinite,vn=Pt.join,gn=tn(xt.keys,xt),bn=kt.max,mn=kt.min,_n=it.now,yn=e.parseInt,wn=kt.random,Cn=Pt.reverse,kn=ua(e,"DataView"),xn=ua(e,"Map"),Sn=ua(e,"Promise"),Dn=ua(e,"Set"),En=ua(e,"WeakMap"),Pn=ua(xt,"create"),Tn=En&&new En,On={},An=Ba(kn),In=Ba(xn),Mn=Ba(Sn),Rn=Ba(Dn),jn=Ba(En),Fn=Ht?Ht.prototype:i,Nn=Fn?Fn.valueOf:i,Bn=Fn?Fn.toString:i;function Ln(t){if(nl(t)&&!qo(t)&&!(t instanceof Un)){if(t instanceof zn)return t;if(Mt.call(t,"__wrapped__"))return La(t)}return new zn(t)}var $n=function(){function t(){}return function(e){if(!el(e))return{};if(Xt)return Xt(e);t.prototype=e;var n=new t;return t.prototype=i,n}}();function Hn(){}function zn(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=i}function Un(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=d,this.__views__=[]}function Wn(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e=e?t:e)),t}function lr(t,e,n,r,a,o){var l,s=1&e,u=2&e,c=4&e;if(n&&(l=a?n(t,r,a,o):n(t)),l!==i)return l;if(!el(t))return t;var f=qo(t);if(f){if(l=function(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&Mt.call(t,"index")&&(n.index=t.index,n.input=t.input),n}(t),!s)return Ei(t,l)}else{var h=ha(t),d=h==y||h==w;if(Zo(t))return wi(t,s);if(h==x||h==v||d&&!a){if(l=u||d?{}:pa(t),!s)return u?function(t,e){return Pi(t,fa(t),e)}(t,function(t,e){return t&&Pi(e,Ml(e),t)}(l,t)):function(t,e){return Pi(t,ca(t),e)}(t,rr(l,t))}else{if(!Qt[h])return a?t:{};l=function(t,e,n){var r,i=t.constructor;switch(e){case A:return Ci(t);case b:case m:return new i(+t);case I:return function(t,e){var n=e?Ci(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case M:case R:case j:case F:case N:case B:case L:case $:case H:return ki(t,n);case C:return new i;case k:case P:return new i(t);case D:return function(t){var e=new t.constructor(t.source,ht.exec(t));return e.lastIndex=t.lastIndex,e}(t);case E:return new i;case T:return r=t,Nn?xt(Nn.call(r)):{}}}(t,h,s)}}o||(o=new Xn);var p=o.get(t);if(p)return p;o.set(t,l),ll(t)?t.forEach((function(r){l.add(lr(r,e,n,r,t,o))})):rl(t)&&t.forEach((function(r,i){l.set(i,lr(r,e,n,i,t,o))}));var g=f?i:(c?u?na:ea:u?Ml:Il)(t);return _e(g||t,(function(r,i){g&&(r=t[i=r]),tr(l,i,lr(r,e,n,i,t,o))})),l}function sr(t,e,n){var r=n.length;if(null==t)return!r;for(t=xt(t);r--;){var a=n[r],o=e[a],l=t[a];if(l===i&&!(a in t)||!o(l))return!1}return!0}function ur(t,e,n){if("function"!=typeof t)throw new Et(a);return Ta((function(){t.apply(i,n)}),e)}function cr(t,e,n,r){var i=-1,a=ke,o=!0,l=t.length,s=[],u=e.length;if(!l)return s;n&&(e=Se(e,Ue(n))),r?(a=xe,o=!1):e.length>=200&&(a=qe,o=!1,e=new Yn(e));t:for(;++i-1},qn.prototype.set=function(t,e){var n=this.__data__,r=er(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this},Vn.prototype.clear=function(){this.size=0,this.__data__={hash:new Wn,map:new(xn||qn),string:new Wn}},Vn.prototype.delete=function(t){var e=la(this,t).delete(t);return this.size-=e?1:0,e},Vn.prototype.get=function(t){return la(this,t).get(t)},Vn.prototype.has=function(t){return la(this,t).has(t)},Vn.prototype.set=function(t,e){var n=la(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this},Yn.prototype.add=Yn.prototype.push=function(t){return this.__data__.set(t,o),this},Yn.prototype.has=function(t){return this.__data__.has(t)},Xn.prototype.clear=function(){this.__data__=new qn,this.size=0},Xn.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},Xn.prototype.get=function(t){return this.__data__.get(t)},Xn.prototype.has=function(t){return this.__data__.has(t)},Xn.prototype.set=function(t,e){var n=this.__data__;if(n instanceof qn){var r=n.__data__;if(!xn||r.length<199)return r.push([t,e]),this.size=++n.size,this;n=this.__data__=new Vn(r)}return n.set(t,e),this.size=n.size,this};var fr=Ai(_r),hr=Ai(yr,!0);function dr(t,e){var n=!0;return fr(t,(function(t,r,i){return n=!!e(t,r,i)})),n}function pr(t,e,n){for(var r=-1,a=t.length;++r0&&n(l)?e>1?gr(l,e-1,n,r,i):De(i,l):r||(i[i.length]=l)}return i}var br=Ii(),mr=Ii(!0);function _r(t,e){return t&&br(t,e,Il)}function yr(t,e){return t&&mr(t,e,Il)}function wr(t,e){return Ce(e,(function(e){return Jo(t[e])}))}function Cr(t,e){for(var n=0,r=(e=bi(e,t)).length;null!=t&&ne}function Dr(t,e){return null!=t&&Mt.call(t,e)}function Er(t,e){return null!=t&&e in xt(t)}function Pr(t,e,n){for(var a=n?xe:ke,o=t[0].length,l=t.length,s=l,u=r(l),c=1/0,f=[];s--;){var h=t[s];s&&e&&(h=Se(h,Ue(e))),c=mn(h.length,c),u[s]=!n&&(e||o>=120&&h.length>=120)?new Yn(s&&h):i}h=t[0];var d=-1,p=u[0];t:for(;++d=l?s:s*("desc"==n[r]?-1:1)}return t.index-e.index}(t,e,n)}));r--;)t[r]=t[r].value;return t}(i)}function Ur(t,e,n){for(var r=-1,i=e.length,a={};++r-1;)l!==t&&re.call(l,s,1),re.call(t,s,1);return t}function qr(t,e){for(var n=t?e.length:0,r=n-1;n--;){var i=e[n];if(n==r||i!==a){var a=i;ga(i)?re.call(t,i,1):ui(t,i)}}return t}function Vr(t,e){return t+fn(wn()*(e-t+1))}function Yr(t,e){var n="";if(!t||e<1||e>f)return n;do{e%2&&(n+=t),(e=fn(e/2))&&(t+=t)}while(e);return n}function Xr(t,e){return Oa(xa(t,e,is),t+"")}function Zr(t){return Gn(Hl(t))}function Gr(t,e){var n=Hl(t);return Ma(n,or(e,0,n.length))}function Kr(t,e,n,r){if(!el(t))return t;for(var a=-1,o=(e=bi(e,t)).length,l=o-1,s=t;null!=s&&++aa?0:a+e),(n=n>a?a:n)<0&&(n+=a),a=e>n?0:n-e>>>0,e>>>=0;for(var o=r(a);++i>>1,o=t[a];null!==o&&!ul(o)&&(n?o<=e:o=200){var u=e?null:Yi(t);if(u)return nn(u);o=!1,i=qe,s=new Yn}else s=e?[]:l;t:for(;++r=r?t:ei(t,e,n)}var yi=ce||function(t){return ae.clearTimeout(t)};function wi(t,e){if(e)return t.slice();var n=t.length,r=Ut?Ut(n):new t.constructor(n);return t.copy(r),r}function Ci(t){var e=new t.constructor(t.byteLength);return new zt(e).set(new zt(t)),e}function ki(t,e){var n=e?Ci(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function xi(t,e){if(t!==e){var n=t!==i,r=null===t,a=t==t,o=ul(t),l=e!==i,s=null===e,u=e==e,c=ul(e);if(!s&&!c&&!o&&t>e||o&&l&&u&&!s&&!c||r&&l&&u||!n&&u||!a)return 1;if(!r&&!o&&!c&&t1?n[a-1]:i,l=a>2?n[2]:i;for(o=t.length>3&&"function"==typeof o?(a--,o):i,l&&ba(n[0],n[1],l)&&(o=a<3?i:o,a=1),e=xt(e);++r-1?a[o?e[l]:l]:i}}function Ni(t){return ta((function(e){var n=e.length,r=n,o=zn.prototype.thru;for(t&&e.reverse();r--;){var l=e[r];if("function"!=typeof l)throw new Et(a);if(o&&!s&&"wrapper"==ia(l))var s=new zn([],!0)}for(r=s?r:n;++r1&&_.reverse(),d&&fs))return!1;var c=o.get(t),f=o.get(e);if(c&&f)return c==e&&f==t;var h=-1,d=!0,p=2&n?new Yn:i;for(o.set(t,e),o.set(e,t);++h-1&&t%1==0&&t1?"& ":"")+e[r],e=e.join(n>2?", ":" "),t.replace(at,"{\n/* [wrapped with "+e+"] */\n")}(r,function(t,e){return _e(p,(function(n){var r="_."+n[0];e&n[1]&&!ke(t,r)&&t.push(r)})),t.sort()}(function(t){var e=t.match(ot);return e?e[1].split(lt):[]}(r),n)))}function Ia(t){var e=0,n=0;return function(){var r=_n(),a=16-(r-n);if(n=r,a>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(i,arguments)}}function Ma(t,e){var n=-1,r=t.length,a=r-1;for(e=e===i?r:e;++n1?t[e-1]:i;return n="function"==typeof n?(t.pop(),n):i,ao(t,n)}));function ho(t){var e=Ln(t);return e.__chain__=!0,e}function po(t,e){return e(t)}var vo=ta((function(t){var e=t.length,n=e?t[0]:0,r=this.__wrapped__,a=function(e){return ar(e,t)};return!(e>1||this.__actions__.length)&&r instanceof Un&&ga(n)?((r=r.slice(n,+n+(e?1:0))).__actions__.push({func:po,args:[a],thisArg:i}),new zn(r,this.__chain__).thru((function(t){return e&&!t.length&&t.push(i),t}))):this.thru(a)})),go=Ti((function(t,e,n){Mt.call(t,n)?++t[n]:ir(t,n,1)})),bo=Fi(Ua),mo=Fi(Wa);function _o(t,e){return(qo(t)?_e:fr)(t,oa(e,3))}function yo(t,e){return(qo(t)?ye:hr)(t,oa(e,3))}var wo=Ti((function(t,e,n){Mt.call(t,n)?t[n].push(e):ir(t,n,[e])})),Co=Xr((function(t,e,n){var i=-1,a="function"==typeof e,o=Yo(t)?r(t.length):[];return fr(t,(function(t){o[++i]=a?be(e,t,n):Tr(t,e,n)})),o})),ko=Ti((function(t,e,n){ir(t,n,e)}));function xo(t,e){return(qo(t)?Se:Nr)(t,oa(e,3))}var So=Ti((function(t,e,n){t[n?0:1].push(e)}),(function(){return[[],[]]})),Do=Xr((function(t,e){if(null==t)return[];var n=e.length;return n>1&&ba(t,e[0],e[1])?e=[]:n>2&&ba(e[0],e[1],e[2])&&(e=[e[0]]),zr(t,gr(e,1),[])})),Eo=Oe||function(){return ae.Date.now()};function Po(t,e,n){return e=n?i:e,e=t&&null==e?t.length:e,Zi(t,u,i,i,i,i,e)}function To(t,e){var n;if("function"!=typeof e)throw new Et(a);return t=vl(t),function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=i),n}}var Oo=Xr((function(t,e,n){var r=1;if(n.length){var i=en(n,aa(Oo));r|=s}return Zi(t,r,e,n,i)})),Ao=Xr((function(t,e,n){var r=3;if(n.length){var i=en(n,aa(Ao));r|=s}return Zi(e,r,t,n,i)}));function Io(t,e,n){var r,o,l,s,u,c,f=0,h=!1,d=!1,p=!0;if("function"!=typeof t)throw new Et(a);function v(e){var n=r,a=o;return r=o=i,f=e,s=t.apply(a,n)}function g(t){return f=t,u=Ta(m,e),h?v(t):s}function b(t){var n=t-c;return c===i||n>=e||n<0||d&&t-f>=l}function m(){var t=Eo();if(b(t))return _(t);u=Ta(m,function(t){var n=e-(t-c);return d?mn(n,l-(t-f)):n}(t))}function _(t){return u=i,p&&r?v(t):(r=o=i,s)}function y(){var t=Eo(),n=b(t);if(r=arguments,o=this,c=t,n){if(u===i)return g(c);if(d)return yi(u),u=Ta(m,e),v(c)}return u===i&&(u=Ta(m,e)),s}return e=bl(e)||0,el(n)&&(h=!!n.leading,l=(d="maxWait"in n)?bn(bl(n.maxWait)||0,e):l,p="trailing"in n?!!n.trailing:p),y.cancel=function(){u!==i&&yi(u),f=0,r=c=o=u=i},y.flush=function(){return u===i?s:_(Eo())},y}var Mo=Xr((function(t,e){return ur(t,1,e)})),Ro=Xr((function(t,e,n){return ur(t,bl(e)||0,n)}));function jo(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new Et(a);var n=function(){var r=arguments,i=e?e.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var o=t.apply(this,r);return n.cache=a.set(i,o)||a,o};return n.cache=new(jo.Cache||Vn),n}function Fo(t){if("function"!=typeof t)throw new Et(a);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}jo.Cache=Vn;var No=mi((function(t,e){var n=(e=1==e.length&&qo(e[0])?Se(e[0],Ue(oa())):Se(gr(e,1),Ue(oa()))).length;return Xr((function(r){for(var i=-1,a=mn(r.length,n);++i=e})),Wo=Or(function(){return arguments}())?Or:function(t){return nl(t)&&Mt.call(t,"callee")&&!te.call(t,"callee")},qo=r.isArray,Vo=fe?Ue(fe):function(t){return nl(t)&&xr(t)==A};function Yo(t){return null!=t&&tl(t.length)&&!Jo(t)}function Xo(t){return nl(t)&&Yo(t)}var Zo=dn||bs,Go=he?Ue(he):function(t){return nl(t)&&xr(t)==m};function Ko(t){if(!nl(t))return!1;var e=xr(t);return e==_||"[object DOMException]"==e||"string"==typeof t.message&&"string"==typeof t.name&&!al(t)}function Jo(t){if(!el(t))return!1;var e=xr(t);return e==y||e==w||"[object AsyncFunction]"==e||"[object Proxy]"==e}function Qo(t){return"number"==typeof t&&t==vl(t)}function tl(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=f}function el(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function nl(t){return null!=t&&"object"==typeof t}var rl=de?Ue(de):function(t){return nl(t)&&ha(t)==C};function il(t){return"number"==typeof t||nl(t)&&xr(t)==k}function al(t){if(!nl(t)||xr(t)!=x)return!1;var e=Vt(t);if(null===e)return!0;var n=Mt.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&It.call(n)==Nt}var ol=pe?Ue(pe):function(t){return nl(t)&&xr(t)==D},ll=ve?Ue(ve):function(t){return nl(t)&&ha(t)==E};function sl(t){return"string"==typeof t||!qo(t)&&nl(t)&&xr(t)==P}function ul(t){return"symbol"==typeof t||nl(t)&&xr(t)==T}var cl=ge?Ue(ge):function(t){return nl(t)&&tl(t.length)&&!!Jt[xr(t)]},fl=Wi(Fr),hl=Wi((function(t,e){return t<=e}));function dl(t){if(!t)return[];if(Yo(t))return sl(t)?on(t):Ei(t);if(oe&&t[oe])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[oe]());var e=ha(t);return(e==C?Qe:e==E?nn:Hl)(t)}function pl(t){return t?(t=bl(t))===c||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function vl(t){var e=pl(t),n=e%1;return e==e?n?e-n:e:0}function gl(t){return t?or(vl(t),0,d):0}function bl(t){if("number"==typeof t)return t;if(ul(t))return h;if(el(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=el(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=ze(t);var n=pt.test(t);return n||gt.test(t)?ne(t.slice(2),n?2:8):dt.test(t)?h:+t}function ml(t){return Pi(t,Ml(t))}function _l(t){return null==t?"":li(t)}var yl=Oi((function(t,e){if(wa(e)||Yo(e))Pi(e,Il(e),t);else for(var n in e)Mt.call(e,n)&&tr(t,n,e[n])})),wl=Oi((function(t,e){Pi(e,Ml(e),t)})),Cl=Oi((function(t,e,n,r){Pi(e,Ml(e),t,r)})),kl=Oi((function(t,e,n,r){Pi(e,Il(e),t,r)})),xl=ta(ar),Sl=Xr((function(t,e){t=xt(t);var n=-1,r=e.length,a=r>2?e[2]:i;for(a&&ba(e[0],e[1],a)&&(r=1);++n1),e})),Pi(t,na(t),n),r&&(n=lr(n,7,Ji));for(var i=e.length;i--;)ui(n,e[i]);return n})),Nl=ta((function(t,e){return null==t?{}:function(t,e){return Ur(t,e,(function(e,n){return Pl(t,n)}))}(t,e)}));function Bl(t,e){if(null==t)return{};var n=Se(na(t),(function(t){return[t]}));return e=oa(e),Ur(t,n,(function(t,n){return e(t,n[0])}))}var Ll=Xi(Il),$l=Xi(Ml);function Hl(t){return null==t?[]:We(t,Il(t))}var zl=Ri((function(t,e,n){return e=e.toLowerCase(),t+(n?Ul(e):e)}));function Ul(t){return Kl(_l(t).toLowerCase())}function Wl(t){return(t=_l(t))&&t.replace(mt,Ze).replace(qt,"")}var ql=Ri((function(t,e,n){return t+(n?"-":"")+e.toLowerCase()})),Vl=Ri((function(t,e,n){return t+(n?" ":"")+e.toLowerCase()})),Yl=Mi("toLowerCase"),Xl=Ri((function(t,e,n){return t+(n?"_":"")+e.toLowerCase()})),Zl=Ri((function(t,e,n){return t+(n?" ":"")+Kl(e)})),Gl=Ri((function(t,e,n){return t+(n?" ":"")+e.toUpperCase()})),Kl=Mi("toUpperCase");function Jl(t,e,n){return t=_l(t),(e=n?i:e)===i?function(t){return Zt.test(t)}(t)?function(t){return t.match(Yt)||[]}(t):function(t){return t.match(st)||[]}(t):t.match(e)||[]}var Ql=Xr((function(t,e){try{return be(t,i,e)}catch(t){return Ko(t)?t:new wt(t)}})),ts=ta((function(t,e){return _e(e,(function(e){e=Na(e),ir(t,e,Oo(t[e],t))})),t}));function es(t){return function(){return t}}var ns=Ni(),rs=Ni(!0);function is(t){return t}function as(t){return Rr("function"==typeof t?t:lr(t,1))}var os=Xr((function(t,e){return function(n){return Tr(n,t,e)}})),ls=Xr((function(t,e){return function(n){return Tr(t,n,e)}}));function ss(t,e,n){var r=Il(e),i=wr(e,r);null!=n||el(e)&&(i.length||!r.length)||(n=e,e=t,t=this,i=wr(e,Il(e)));var a=!(el(n)&&"chain"in n&&!n.chain),o=Jo(t);return _e(i,(function(n){var r=e[n];t[n]=r,o&&(t.prototype[n]=function(){var e=this.__chain__;if(a||e){var n=t(this.__wrapped__),i=n.__actions__=Ei(this.__actions__);return i.push({func:r,args:arguments,thisArg:t}),n.__chain__=e,n}return r.apply(t,De([this.value()],arguments))})})),t}function us(){}var cs=Hi(Se),fs=Hi(we),hs=Hi(Te);function ds(t){return ma(t)?Ne(Na(t)):function(t){return function(e){return Cr(e,t)}}(t)}var ps=Ui(),vs=Ui(!0);function gs(){return[]}function bs(){return!1}var ms,_s=$i((function(t,e){return t+e}),0),ys=Vi("ceil"),ws=$i((function(t,e){return t/e}),1),Cs=Vi("floor"),ks=$i((function(t,e){return t*e}),1),xs=Vi("round"),Ss=$i((function(t,e){return t-e}),0);return Ln.after=function(t,e){if("function"!=typeof e)throw new Et(a);return t=vl(t),function(){if(--t<1)return e.apply(this,arguments)}},Ln.ary=Po,Ln.assign=yl,Ln.assignIn=wl,Ln.assignInWith=Cl,Ln.assignWith=kl,Ln.at=xl,Ln.before=To,Ln.bind=Oo,Ln.bindAll=ts,Ln.bindKey=Ao,Ln.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return qo(t)?t:[t]},Ln.chain=ho,Ln.chunk=function(t,e,n){e=(n?ba(t,e,n):e===i)?1:bn(vl(e),0);var a=null==t?0:t.length;if(!a||e<1)return[];for(var o=0,l=0,s=r(cn(a/e));oa?0:a+n),(r=r===i||r>a?a:vl(r))<0&&(r+=a),r=n>r?0:gl(r);n>>0)?(t=_l(t))&&("string"==typeof e||null!=e&&!ol(e))&&!(e=li(e))&&Je(t)?_i(on(t),0,n):t.split(e,n):[]},Ln.spread=function(t,e){if("function"!=typeof t)throw new Et(a);return e=null==e?0:bn(vl(e),0),Xr((function(n){var r=n[e],i=_i(n,0,e);return r&&De(i,r),be(t,this,i)}))},Ln.tail=function(t){var e=null==t?0:t.length;return e?ei(t,1,e):[]},Ln.take=function(t,e,n){return t&&t.length?ei(t,0,(e=n||e===i?1:vl(e))<0?0:e):[]},Ln.takeRight=function(t,e,n){var r=null==t?0:t.length;return r?ei(t,(e=r-(e=n||e===i?1:vl(e)))<0?0:e,r):[]},Ln.takeRightWhile=function(t,e){return t&&t.length?fi(t,oa(e,3),!1,!0):[]},Ln.takeWhile=function(t,e){return t&&t.length?fi(t,oa(e,3)):[]},Ln.tap=function(t,e){return e(t),t},Ln.throttle=function(t,e,n){var r=!0,i=!0;if("function"!=typeof t)throw new Et(a);return el(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),Io(t,e,{leading:r,maxWait:e,trailing:i})},Ln.thru=po,Ln.toArray=dl,Ln.toPairs=Ll,Ln.toPairsIn=$l,Ln.toPath=function(t){return qo(t)?Se(t,Na):ul(t)?[t]:Ei(Fa(_l(t)))},Ln.toPlainObject=ml,Ln.transform=function(t,e,n){var r=qo(t),i=r||Zo(t)||cl(t);if(e=oa(e,4),null==n){var a=t&&t.constructor;n=i?r?new a:[]:el(t)&&Jo(a)?$n(Vt(t)):{}}return(i?_e:_r)(t,(function(t,r,i){return e(n,t,r,i)})),n},Ln.unary=function(t){return Po(t,1)},Ln.union=eo,Ln.unionBy=no,Ln.unionWith=ro,Ln.uniq=function(t){return t&&t.length?si(t):[]},Ln.uniqBy=function(t,e){return t&&t.length?si(t,oa(e,2)):[]},Ln.uniqWith=function(t,e){return e="function"==typeof e?e:i,t&&t.length?si(t,i,e):[]},Ln.unset=function(t,e){return null==t||ui(t,e)},Ln.unzip=io,Ln.unzipWith=ao,Ln.update=function(t,e,n){return null==t?t:ci(t,e,gi(n))},Ln.updateWith=function(t,e,n,r){return r="function"==typeof r?r:i,null==t?t:ci(t,e,gi(n),r)},Ln.values=Hl,Ln.valuesIn=function(t){return null==t?[]:We(t,Ml(t))},Ln.without=oo,Ln.words=Jl,Ln.wrap=function(t,e){return Bo(gi(e),t)},Ln.xor=lo,Ln.xorBy=so,Ln.xorWith=uo,Ln.zip=co,Ln.zipObject=function(t,e){return pi(t||[],e||[],tr)},Ln.zipObjectDeep=function(t,e){return pi(t||[],e||[],Kr)},Ln.zipWith=fo,Ln.entries=Ll,Ln.entriesIn=$l,Ln.extend=wl,Ln.extendWith=Cl,ss(Ln,Ln),Ln.add=_s,Ln.attempt=Ql,Ln.camelCase=zl,Ln.capitalize=Ul,Ln.ceil=ys,Ln.clamp=function(t,e,n){return n===i&&(n=e,e=i),n!==i&&(n=(n=bl(n))==n?n:0),e!==i&&(e=(e=bl(e))==e?e:0),or(bl(t),e,n)},Ln.clone=function(t){return lr(t,4)},Ln.cloneDeep=function(t){return lr(t,5)},Ln.cloneDeepWith=function(t,e){return lr(t,5,e="function"==typeof e?e:i)},Ln.cloneWith=function(t,e){return lr(t,4,e="function"==typeof e?e:i)},Ln.conformsTo=function(t,e){return null==e||sr(t,e,Il(e))},Ln.deburr=Wl,Ln.defaultTo=function(t,e){return null==t||t!=t?e:t},Ln.divide=ws,Ln.endsWith=function(t,e,n){t=_l(t),e=li(e);var r=t.length,a=n=n===i?r:or(vl(n),0,r);return(n-=e.length)>=0&&t.slice(n,a)==e},Ln.eq=Ho,Ln.escape=function(t){return(t=_l(t))&&X.test(t)?t.replace(V,Ge):t},Ln.escapeRegExp=function(t){return(t=_l(t))&&nt.test(t)?t.replace(et,"\\$&"):t},Ln.every=function(t,e,n){var r=qo(t)?we:dr;return n&&ba(t,e,n)&&(e=i),r(t,oa(e,3))},Ln.find=bo,Ln.findIndex=Ua,Ln.findKey=function(t,e){return Ae(t,oa(e,3),_r)},Ln.findLast=mo,Ln.findLastIndex=Wa,Ln.findLastKey=function(t,e){return Ae(t,oa(e,3),yr)},Ln.floor=Cs,Ln.forEach=_o,Ln.forEachRight=yo,Ln.forIn=function(t,e){return null==t?t:br(t,oa(e,3),Ml)},Ln.forInRight=function(t,e){return null==t?t:mr(t,oa(e,3),Ml)},Ln.forOwn=function(t,e){return t&&_r(t,oa(e,3))},Ln.forOwnRight=function(t,e){return t&&yr(t,oa(e,3))},Ln.get=El,Ln.gt=zo,Ln.gte=Uo,Ln.has=function(t,e){return null!=t&&da(t,e,Dr)},Ln.hasIn=Pl,Ln.head=Va,Ln.identity=is,Ln.includes=function(t,e,n,r){t=Yo(t)?t:Hl(t),n=n&&!r?vl(n):0;var i=t.length;return n<0&&(n=bn(i+n,0)),sl(t)?n<=i&&t.indexOf(e,n)>-1:!!i&&Me(t,e,n)>-1},Ln.indexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=null==n?0:vl(n);return i<0&&(i=bn(r+i,0)),Me(t,e,i)},Ln.inRange=function(t,e,n){return e=pl(e),n===i?(n=e,e=0):n=pl(n),function(t,e,n){return t>=mn(e,n)&&t=-9007199254740991&&t<=f},Ln.isSet=ll,Ln.isString=sl,Ln.isSymbol=ul,Ln.isTypedArray=cl,Ln.isUndefined=function(t){return t===i},Ln.isWeakMap=function(t){return nl(t)&&ha(t)==O},Ln.isWeakSet=function(t){return nl(t)&&"[object WeakSet]"==xr(t)},Ln.join=function(t,e){return null==t?"":vn.call(t,e)},Ln.kebabCase=ql,Ln.last=Ga,Ln.lastIndexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var a=r;return n!==i&&(a=(a=vl(n))<0?bn(r+a,0):mn(a,r-1)),e==e?function(t,e,n){for(var r=n+1;r--;)if(t[r]===e)return r;return r}(t,e,a):Ie(t,je,a,!0)},Ln.lowerCase=Vl,Ln.lowerFirst=Yl,Ln.lt=fl,Ln.lte=hl,Ln.max=function(t){return t&&t.length?pr(t,is,Sr):i},Ln.maxBy=function(t,e){return t&&t.length?pr(t,oa(e,2),Sr):i},Ln.mean=function(t){return Fe(t,is)},Ln.meanBy=function(t,e){return Fe(t,oa(e,2))},Ln.min=function(t){return t&&t.length?pr(t,is,Fr):i},Ln.minBy=function(t,e){return t&&t.length?pr(t,oa(e,2),Fr):i},Ln.stubArray=gs,Ln.stubFalse=bs,Ln.stubObject=function(){return{}},Ln.stubString=function(){return""},Ln.stubTrue=function(){return!0},Ln.multiply=ks,Ln.nth=function(t,e){return t&&t.length?Hr(t,vl(e)):i},Ln.noConflict=function(){return ae._===this&&(ae._=Bt),this},Ln.noop=us,Ln.now=Eo,Ln.pad=function(t,e,n){t=_l(t);var r=(e=vl(e))?an(t):0;if(!e||r>=e)return t;var i=(e-r)/2;return zi(fn(i),n)+t+zi(cn(i),n)},Ln.padEnd=function(t,e,n){t=_l(t);var r=(e=vl(e))?an(t):0;return e&&re){var r=t;t=e,e=r}if(n||t%1||e%1){var a=wn();return mn(t+a*(e-t+ee("1e-"+((a+"").length-1))),e)}return Vr(t,e)},Ln.reduce=function(t,e,n){var r=qo(t)?Ee:Le,i=arguments.length<3;return r(t,oa(e,4),n,i,fr)},Ln.reduceRight=function(t,e,n){var r=qo(t)?Pe:Le,i=arguments.length<3;return r(t,oa(e,4),n,i,hr)},Ln.repeat=function(t,e,n){return e=(n?ba(t,e,n):e===i)?1:vl(e),Yr(_l(t),e)},Ln.replace=function(){var t=arguments,e=_l(t[0]);return t.length<3?e:e.replace(t[1],t[2])},Ln.result=function(t,e,n){var r=-1,a=(e=bi(e,t)).length;for(a||(a=1,t=i);++rf)return[];var n=d,r=mn(t,d);e=oa(e),t-=d;for(var i=He(r,e);++n=o)return t;var s=n-an(r);if(s<1)return r;var u=l?_i(l,0,s).join(""):t.slice(0,s);if(a===i)return u+r;if(l&&(s+=u.length-s),ol(a)){if(t.slice(s).search(a)){var c,f=u;for(a.global||(a=St(a.source,_l(ht.exec(a))+"g")),a.lastIndex=0;c=a.exec(f);)var h=c.index;u=u.slice(0,h===i?s:h)}}else if(t.indexOf(li(a),s)!=s){var d=u.lastIndexOf(a);d>-1&&(u=u.slice(0,d))}return u+r},Ln.unescape=function(t){return(t=_l(t))&&Y.test(t)?t.replace(q,sn):t},Ln.uniqueId=function(t){var e=++Rt;return _l(t)+e},Ln.upperCase=Gl,Ln.upperFirst=Kl,Ln.each=_o,Ln.eachRight=yo,Ln.first=Va,ss(Ln,(ms={},_r(Ln,(function(t,e){Mt.call(Ln.prototype,e)||(ms[e]=t)})),ms),{chain:!1}),Ln.VERSION="4.17.21",_e(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(t){Ln[t].placeholder=Ln})),_e(["drop","take"],(function(t,e){Un.prototype[t]=function(n){n=n===i?1:bn(vl(n),0);var r=this.__filtered__&&!e?new Un(this):this.clone();return r.__filtered__?r.__takeCount__=mn(n,r.__takeCount__):r.__views__.push({size:mn(n,d),type:t+(r.__dir__<0?"Right":"")}),r},Un.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}})),_e(["filter","map","takeWhile"],(function(t,e){var n=e+1,r=1==n||3==n;Un.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:oa(t,3),type:n}),e.__filtered__=e.__filtered__||r,e}})),_e(["head","last"],(function(t,e){var n="take"+(e?"Right":"");Un.prototype[t]=function(){return this[n](1).value()[0]}})),_e(["initial","tail"],(function(t,e){var n="drop"+(e?"":"Right");Un.prototype[t]=function(){return this.__filtered__?new Un(this):this[n](1)}})),Un.prototype.compact=function(){return this.filter(is)},Un.prototype.find=function(t){return this.filter(t).head()},Un.prototype.findLast=function(t){return this.reverse().find(t)},Un.prototype.invokeMap=Xr((function(t,e){return"function"==typeof t?new Un(this):this.map((function(n){return Tr(n,t,e)}))})),Un.prototype.reject=function(t){return this.filter(Fo(oa(t)))},Un.prototype.slice=function(t,e){t=vl(t);var n=this;return n.__filtered__&&(t>0||e<0)?new Un(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),e!==i&&(n=(e=vl(e))<0?n.dropRight(-e):n.take(e-t)),n)},Un.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},Un.prototype.toArray=function(){return this.take(d)},_r(Un.prototype,(function(t,e){var n=/^(?:filter|find|map|reject)|While$/.test(e),r=/^(?:head|last)$/.test(e),a=Ln[r?"take"+("last"==e?"Right":""):e],o=r||/^find/.test(e);a&&(Ln.prototype[e]=function(){var e=this.__wrapped__,l=r?[1]:arguments,s=e instanceof Un,u=l[0],c=s||qo(e),f=function(t){var e=a.apply(Ln,De([t],l));return r&&h?e[0]:e};c&&n&&"function"==typeof u&&1!=u.length&&(s=c=!1);var h=this.__chain__,d=!!this.__actions__.length,p=o&&!h,v=s&&!d;if(!o&&c){e=v?e:new Un(this);var g=t.apply(e,l);return g.__actions__.push({func:po,args:[f],thisArg:i}),new zn(g,h)}return p&&v?t.apply(this,l):(g=this.thru(f),p?r?g.value()[0]:g.value():g)})})),_e(["pop","push","shift","sort","splice","unshift"],(function(t){var e=Pt[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",r=/^(?:pop|shift)$/.test(t);Ln.prototype[t]=function(){var t=arguments;if(r&&!this.__chain__){var i=this.value();return e.apply(qo(i)?i:[],t)}return this[n]((function(n){return e.apply(qo(n)?n:[],t)}))}})),_r(Un.prototype,(function(t,e){var n=Ln[e];if(n){var r=n.name+"";Mt.call(On,r)||(On[r]=[]),On[r].push({name:e,func:n})}})),On[Bi(i,2).name]=[{name:"wrapper",func:i}],Un.prototype.clone=function(){var t=new Un(this.__wrapped__);return t.__actions__=Ei(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=Ei(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=Ei(this.__views__),t},Un.prototype.reverse=function(){if(this.__filtered__){var t=new Un(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},Un.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=qo(t),r=e<0,i=n?t.length:0,a=function(t,e,n){for(var r=-1,i=n.length;++r=this.__values__.length;return{done:t,value:t?i:this.__values__[this.__index__++]}},Ln.prototype.plant=function(t){for(var e,n=this;n instanceof Hn;){var r=La(n);r.__index__=0,r.__values__=i,e?a.__wrapped__=r:e=r;var a=r;n=n.__wrapped__}return a.__wrapped__=t,e},Ln.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof Un){var e=t;return this.__actions__.length&&(e=new Un(this)),(e=e.reverse()).__actions__.push({func:po,args:[to],thisArg:i}),new zn(e,this.__chain__)}return this.thru(to)},Ln.prototype.toJSON=Ln.prototype.valueOf=Ln.prototype.value=function(){return hi(this.__wrapped__,this.__actions__)},Ln.prototype.first=Ln.prototype.head,oe&&(Ln.prototype[oe]=function(){return this}),Ln}();ae._=un,(r=function(){return un}.call(e,n,e,t))===i||(t.exports=r)}.call(this)},475:function(){},925:function(){},654:function(){},601:function(){},435:function(){},46:function(t,e,n){var r=n(475);"string"==typeof r&&(r=[[t.id,r,""]]),r.locals&&(t.exports=r.locals),(0,n(441).Z)("717edd34",r,!0,{})},167:function(t,e,n){var r=n(925);"string"==typeof r&&(r=[[t.id,r,""]]),r.locals&&(t.exports=r.locals),(0,n(441).Z)("5dd6a209",r,!0,{})},64:function(t,e,n){var r=n(654);"string"==typeof r&&(r=[[t.id,r,""]]),r.locals&&(t.exports=r.locals),(0,n(441).Z)("5bfa26c9",r,!0,{})},454:function(t,e,n){var r=n(601);"string"==typeof r&&(r=[[t.id,r,""]]),r.locals&&(t.exports=r.locals),(0,n(441).Z)("0fefc87c",r,!0,{})},290:function(t,e,n){var r=n(435);"string"==typeof r&&(r=[[t.id,r,""]]),r.locals&&(t.exports=r.locals),(0,n(441).Z)("6003a31e",r,!0,{})},441:function(t,e,n){"use strict";function r(t,e){for(var n=[],r={},i=0;in.parts.length&&(r.parts.length=n.parts.length)}else{var o=[];for(i=0;i["get","post"].indexOf(t)>-1},reactiveApiUrl:{type:Boolean,default:!0},apiMode:{type:Boolean,default:!0},data:{type:[Array,Object],default:null},dataTotal:{type:Number,default:0},dataManager:{type:Function,default:null},dataPath:{type:String,default:"data"},paginationPath:{type:[String],default:"links.pagination"},queryParams:{type:[Object,Function],default(){return{sort:"sort",page:"page",perPage:"per_page"}}},appendParams:{type:Object,default(){return{}}},httpOptions:{type:Object,default(){return{}}},httpFetch:{type:Function,default:null},perPage:{type:Number,default:10},initialPage:{type:Number,default:1},sortOrder:{type:Array,default(){return[]}},multiSort:{type:Boolean,default(){return!1}},tableHeight:{type:String,default:null},multiSortKey:{type:String,default:"alt"},rowClassCallback:{type:[String,Function],default:""},rowClass:{type:[String,Function],default:""},detailRowComponent:{type:String,default:""},detailRowTransition:{type:String,default:""},trackBy:{type:String,default:"id"},css:{type:Object,default(){return{tableClass:"ui blue selectable celled stackable attached table",loadingClass:"loading",ascendingIcon:"blue chevron up icon",descendingIcon:"blue chevron down icon",ascendingClass:"sorted-asc",descendingClass:"sorted-desc",sortableIcon:"",detailRowClass:"vuetable-detail-row",handleIcon:"grey sidebar icon",tableBodyClass:"vuetable-semantic-no-top vuetable-fixed-layout",tableHeaderClass:"vuetable-fixed-layout"}}},minRows:{type:Number,default:0},silent:{type:Boolean,default:!1},noDataTemplate:{type:String,default(){return"No Data Available"}},showSortIcons:{type:Boolean,default:!0}},data(){return{eventPrefix:"vuetable:",tableFields:[],tableData:null,tablePagination:null,currentPage:this.initialPage,selectedTo:[],visibleDetailRows:[],lastScrollPosition:0,scrollBarWidth:"17px",scrollVisible:!1}},mounted(){if(this.normalizeFields(),this.normalizeSortOrder(),this.isFixedHeader&&(this.scrollBarWidth=this.getScrollBarWidth()+"px"),this.$nextTick((function(){this.fireEvent("initialized",this.tableFields)})),this.loadOnStart&&this.loadData(),this.isFixedHeader){let t=this.$el.getElementsByClassName("vuetable-body-wrapper")[0];null!=t&&t.addEventListener("scroll",this.handleScroll)}},destroyed(){let t=this.$el.getElementsByClassName("vuetable-body-wrapper")[0];null!=t&&t.removeEventListener("scroll",this.handleScroll)},computed:{version:()=>VERSION,useDetailRow(){return this.tableData&&this.tableData[0]&&""!==this.detailRowComponent&&void 0===this.tableData[0][this.trackBy]?(this.warn("You need to define unique row identifier in order for detail-row feature to work. Use `track-by` prop to define one!"),!1):""!==this.detailRowComponent},countVisibleFields(){return this.tableFields.filter((function(t){return t.visible})).length},countTableData(){return null===this.tableData?0:this.tableData.length},displayEmptyDataRow(){return 0===this.countTableData&&this.noDataTemplate.length>0},lessThanMinRows(){return null===this.tableData||0===this.tableData.length||this.tableData.length=this.minRows?0:this.minRows-this.tableData.length},isApiMode(){return this.apiMode},isDataMode(){return!this.apiMode},isFixedHeader(){return null!=this.tableHeight}},methods:{getScrollBarWidth(){const t=document.createElement("div"),e=document.createElement("div");t.style.visibility="hidden",t.style.width="100px",e.style.width="100%",t.appendChild(e),document.body.appendChild(t);const n=t.offsetWidth;t.style.overflow="scroll";const r=e.offsetWidth;return document.body.removeChild(t),n-r},handleScroll(t){let e=t.currentTarget.scrollLeft;if(e!=this.lastScrollPosition){let t=this.$el.getElementsByClassName("vuetable-head-wrapper")[0];null!=t&&(t.scrollLeft=e),this.lastScrollPosition=e}},normalizeFields(){if(void 0===this.fields)return void this.warn('You need to provide "fields" prop.');this.tableFields=[];let t,e=this;this.fields.forEach((function(n,r){t="string"==typeof n?{name:n,title:e.setTitle(n),titleClass:"",dataClass:"",callback:null,visible:!0}:{name:n.name,width:n.width,title:void 0===n.title?e.setTitle(n.name):n.title,sortField:n.sortField,titleClass:void 0===n.titleClass?"":n.titleClass,dataClass:void 0===n.dataClass?"":n.dataClass,callback:void 0===n.callback?"":n.callback,visible:void 0===n.visible||n.visible},e.tableFields.push(t)}))},setData(t){if(null!=t){if(this.fireEvent("loading"),Array.isArray(t))return this.tableData=t,void this.fireEvent("loaded");this.tableData=this.getObjectValue(t,this.dataPath,null),this.tablePagination=this.getObjectValue(t,this.paginationPath,null),this.$nextTick((function(){this.fixHeader(),this.fireEvent("pagination-data",this.tablePagination),this.fireEvent("loaded")}))}},setTitle(t){return this.isSpecialField(t)?"":this.titleCase(t)},getTitle(t){return"function"==typeof t.title?t.title():void 0===t.title?t.name.replace("."," "):t.title},renderTitle(t){let e=this.getTitle(t);if(e.length>0&&this.isInCurrentSortGroup(t)||this.hasSortableIcon(t)){let n=`opacity:${this.sortIconOpacity(t)};position:relative;float:right`;return e+" "+(this.showSortIcons?this.renderIconTag(["sort-icon",this.sortIcon(t)],`style="${n}"`):"")}return e},renderSequence(t){return this.tablePagination?this.tablePagination.from+t:t},renderNormalField(t,e){return this.hasCallback(t)?this.callCallback(t,e):this.getObjectValue(e,t.name,"")},isSpecialField(t){return"__"===t.slice(0,2)},titleCase(t){return t.replace(/\w+/g,(function(t){return t.charAt(0).toUpperCase()+t.substr(1).toLowerCase()}))},camelCase(t,e="_"){let n=this;return t.split(e).map((function(t){return n.titleCase(t)})).join("")},notIn(t,e){return-1===e.indexOf(t)},loadData(t=this.loadSuccess,e=this.loadFailed){if(!this.isDataMode)return this.fireEvent("loading"),this.httpOptions.params=this.getAppendParams(this.getAllQueryParams()),this.fetch(this.apiUrl,this.httpOptions).then(t,e).catch((()=>e()));this.callDataManager()},fetch(t,e){return this.httpFetch?this.httpFetch(t,e):i()[this.httpMethod](t,e)},loadSuccess(t){this.fireEvent("load-success",t);let e=this.transform(t.data);this.tableData=this.getObjectValue(e,this.dataPath,null),this.tablePagination=this.getObjectValue(e,this.paginationPath,null),null===this.tablePagination&&this.warn('vuetable: pagination-path "'+this.paginationPath+'" not found. It looks like the data returned from the sever does not have pagination information or you may have set it incorrectly.\nYou can explicitly suppress this warning by setting pagination-path="".'),this.$nextTick((function(){this.fixHeader(),this.fireEvent("pagination-data",this.tablePagination),this.fireEvent("loaded")}))},fixHeader(){if(!this.isFixedHeader)return;let t=this.$el.getElementsByClassName("vuetable-body-wrapper")[0];null!=t&&(t.scrollHeight>t.clientHeight?this.scrollVisible=!0:this.scrollVisible=!1)},loadFailed(t){console.error("load-error",t),this.fireEvent("load-error",t),this.fireEvent("loaded")},transform(t){let e="transform";return this.parentFunctionExists(e)?this.$parent[e].call(this.$parent,t):t},parentFunctionExists(t){return""!==t&&"function"==typeof this.$parent[t]},callParentFunction(t,e,n=null){return this.parentFunctionExists(t)?this.$parent[t].call(this.$parent,e):n},fireEvent(t,e){this.$emit(this.eventPrefix+t,e)},warn(t){this.silent||console.warn(t)},getAllQueryParams(){let t={};return"function"==typeof this.queryParams?(t=this.queryParams(this.sortOrder,this.currentPage,this.perPage),"object"!=typeof t?{}:t):(t[this.queryParams.sort]=this.getSortParam(),t[this.queryParams.page]=this.currentPage,t[this.queryParams.perPage]=this.perPage,t)},getSortParam(){return this.sortOrder&&""!=this.sortOrder.field?"function"==typeof this.$parent.getSortParam?this.$parent.getSortParam.call(this.$parent,this.sortOrder):this.getDefaultSortParam():""},getDefaultSortParam(){let t="";for(let e=0;e0?this.$parent[r].apply(this.$parent,[i].concat(n)):this.$parent[r].call(this.$parent,i)}return null},getObjectValue(t,e,n){n=void 0===n?null:n;let r=t;return""!=e.trim()&&e.split(".").forEach((function(t){r=null!==r&&void 0!==r[t]&&null!==r[t]?r[t]:n})),r},toggleCheckbox(t,e,n){let r=n.target.checked,i=this.trackBy;if(void 0===t[i])return void this.warn('__checkbox field: The "'+this.trackBy+'" field does not exist! Make sure the field you specify in "track-by" prop does exist.');let a=t[i];r?this.selectId(a):this.unselectId(a),this.$emit("vuetable:checkbox-toggled",r,t)},selectId(t){this.isSelectedRow(t)||this.selectedTo.push(t)},unselectId(t){this.selectedTo=this.selectedTo.filter((function(e){return e!==t}))},isSelectedRow(t){return this.selectedTo.indexOf(t)>=0},rowSelected(t,e){let n=t[this.trackBy];return this.isSelectedRow(n)},checkCheckboxesState(t){if(!this.tableData)return;let e=this,n=this.trackBy,r="th.vuetable-th-checkbox-"+n+" input[type=checkbox]",i=document.querySelectorAll(r);void 0===i.forEach&&(i.forEach=function(t){[].forEach.call(i,t)});let a=this.tableData.filter((function(t){return e.selectedTo.indexOf(t[n])>=0}));return a.length<=0?(i.forEach((function(t){t.indeterminate=!1})),!1):a.length1&&(this.currentPage--,this.loadData())},gotoNextPage(){this.currentPage0&&t<=this.tablePagination.last_page&&(this.currentPage=t,this.loadData())},isVisibleDetailRow(t){return this.visibleDetailRows.indexOf(t)>=0},showDetailRow(t){this.isVisibleDetailRow(t)||this.visibleDetailRows.push(t)},hideDetailRow(t){this.isVisibleDetailRow(t)&&this.visibleDetailRows.splice(this.visibleDetailRows.indexOf(t),1)},toggleDetailRow(t){this.isVisibleDetailRow(t)?this.hideDetailRow(t):this.showDetailRow(t)},showField(t){t<0||t>this.tableFields.length||(this.tableFields[t].visible=!0)},hideField(t){t<0||t>this.tableFields.length||(this.tableFields[t].visible=!1)},toggleField(t){t<0||t>this.tableFields.length||(this.tableFields[t].visible=!this.tableFields[t].visible)},renderIconTag(t,e=""){return void 0===this.css.renderIcon?``:this.css.renderIcon(t,e)},makePagination(t=null,e=null,n=null){return{total:t=null===t?this.dataTotal:t,per_page:e=null===e?this.perPage:e,current_page:n=null===n?this.currentPage:n,last_page:Math.ceil(t/e)||0,next_page_url:"",prev_page_url:"",from:(n-1)*e+1,to:Math.min(n*e,t)}},normalizeSortOrder(){this.sortOrder.forEach((function(t){t.sortField=t.sortField||t.field}))},callDataManager(){if(null!==this.dataManager||null!==this.data)return Array.isArray(this.data)?this.setData(this.data):(this.normalizeSortOrder(),this.setData(this.dataManager?this.dataManager(this.sortOrder,this.makePagination()):this.data))},onRowClass(t,e){if(""===this.rowClassCallback)return"function"==typeof this.rowClass?this.rowClass(t,e):this.rowClass;this.warn('"row-class-callback" prop is deprecated, please use "row-class" prop instead.')},onRowChanged(t){return this.fireEvent("row-changed",t),!0},onRowClicked(t,e){return this.$emit(this.eventPrefix+"row-clicked",t,e),!0},onRowDoubleClicked(t,e){this.$emit(this.eventPrefix+"row-dblclicked",t,e)},onDetailRowClick(t,e){this.$emit(this.eventPrefix+"detail-row-clicked",t,e)},onCellClicked(t,e,n){this.$emit(this.eventPrefix+"cell-clicked",t,e,n)},onCellDoubleClicked(t,e,n){this.$emit(this.eventPrefix+"cell-dblclicked",t,e,n)},onCellRightClicked(t,e,n){this.$emit(this.eventPrefix+"cell-rightclicked",t,e,n)},changePage(t){"prev"===t?this.gotoPreviousPage():"next"===t?this.gotoNextPage():this.gotoPage(t)},reload(){return this.loadData()},refresh(){return this.currentPage=1,this.loadData()},resetData(){this.tableData=null,this.tablePagination=null,this.fireEvent("data-reset")}},watch:{multiSort(t,e){!1===t&&this.sortOrder.length>1&&(this.sortOrder.splice(1),this.loadData())},apiUrl(t,e){this.reactiveApiUrl&&t!==e&&this.refresh()},data(t,e){this.setData(t)},tableHeight(t,e){this.fixHeader()}}},o=a;function l(t,e,n,r,i,a,o,l){var s,u="function"==typeof t?t.options:t;if(e&&(u.render=e,u.staticRenderFns=n,u._compiled=!0),r&&(u.functional=!0),a&&(u._scopeId="data-v-"+a),o?(s=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),i&&i.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(o)},u._ssrRegister=s):i&&(s=l?function(){i.call(this,(u.functional?this.parent:this).$root.$options.shadowRoot)}:i),s)if(u.functional){u._injectStyles=s;var c=u.render;u.render=function(t,e){return s.call(e),c(t,e)}}else{var f=u.beforeCreate;u.beforeCreate=f?[].concat(f,s):[s]}return{exports:t,options:u}}n(46);var s=l(o,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.isFixedHeader?n("div",[n("div",{staticClass:"vuetable-head-wrapper"},[n("table",{class:["vuetable",t.css.tableClass,t.css.tableHeaderClass]},[n("thead",[n("tr",[t._l(t.tableFields,(function(e,r){return[e.visible?[t.isSpecialField(e.name)?["__checkbox"==t.extractName(e.name)?n("th",{key:r,class:["vuetable-th-checkbox-"+t.trackBy,e.titleClass],style:{width:e.width}},[n("input",{attrs:{type:"checkbox"},domProps:{checked:t.checkCheckboxesState(e.name)},on:{change:function(n){return t.toggleAllCheckboxes(e.name,n)}}})]):t._e(),t._v(" "),"__component"==t.extractName(e.name)?n("th",{key:r,class:["vuetable-th-component-"+t.trackBy,e.titleClass,t.sortClass(e),{sortable:t.isSortable(e)}],style:{width:e.width},domProps:{innerHTML:t._s(t.renderTitle(e))},on:{click:function(n){return t.orderBy(e,n)}}}):t._e(),t._v(" "),"__slot"==t.extractName(e.name)?n("th",{key:r,class:["vuetable-th-slot-"+t.extractArgs(e.name),e.titleClass,t.sortClass(e),{sortable:t.isSortable(e)}],style:{width:e.width},domProps:{innerHTML:t._s(t.renderTitle(e))},on:{click:function(n){return t.orderBy(e,n)}}}):t._e(),t._v(" "),"__sequence"==t.extractName(e.name)?n("th",{key:r,class:["vuetable-th-sequence",e.titleClass||""],style:{width:e.width},domProps:{innerHTML:t._s(t.renderTitle(e))}}):t._e(),t._v(" "),t.notIn(t.extractName(e.name),["__sequence","__checkbox","__component","__slot"])?n("th",{key:r,class:["vuetable-th-"+e.name,e.titleClass||""],style:{width:e.width},domProps:{innerHTML:t._s(t.renderTitle(e))}}):t._e()]:[n("th",{key:r,class:["vuetable-th-"+e.name,e.titleClass,t.sortClass(e),{sortable:t.isSortable(e)}],style:{width:e.width},attrs:{id:"_"+e.name},domProps:{innerHTML:t._s(t.renderTitle(e))},on:{click:function(n){return t.orderBy(e,n)}}})]]:t._e()]})),t._v(" "),t.scrollVisible?n("th",{staticClass:"vuetable-gutter-col",style:{width:t.scrollBarWidth}}):t._e()],2)])])]),t._v(" "),n("div",{staticClass:"vuetable-body-wrapper",style:{height:t.tableHeight}},[n("table",{class:["vuetable",t.css.tableClass,t.css.tableBodyClass]},[n("colgroup",[t._l(t.tableFields,(function(e,r){return[e.visible?[n("col",{key:r,class:["vuetable-th-"+e.name,e.titleClass],style:{width:e.width},attrs:{id:"_col_"+e.name}})]:t._e()]}))],2),t._v(" "),n("tbody",{staticClass:"vuetable-body"},[t._l(t.tableData,(function(e,r){return[n("tr",{key:r,class:t.onRowClass(e,r),attrs:{"item-index":r,render:t.onRowChanged(e)},on:{click:function(n){return t.onRowClicked(e,n)},dblclick:function(n){return t.onRowDoubleClicked(e,n)}}},[t._l(t.tableFields,(function(i,a){return[i.visible?[t.isSpecialField(i.name)?["__sequence"==t.extractName(i.name)?n("td",{key:a,class:["vuetable-sequence",i.dataClass],domProps:{innerHTML:t._s(t.renderSequence(r))}}):t._e(),t._v(" "),"__handle"==t.extractName(i.name)?n("td",{key:a,class:["vuetable-handle",i.dataClass],domProps:{innerHTML:t._s(t.renderIconTag(["handle-icon",t.css.handleIcon]))}}):t._e(),t._v(" "),"__checkbox"==t.extractName(i.name)?n("td",{key:a,class:["vuetable-checkboxes",i.dataClass]},[n("input",{attrs:{type:"checkbox"},domProps:{checked:t.rowSelected(e,i.name)},on:{change:function(n){return t.toggleCheckbox(e,i.name,n)}}})]):t._e(),t._v(" "),"__component"===t.extractName(i.name)?n("td",{key:a,class:["vuetable-component",i.dataClass]},[n(t.extractArgs(i.name),{tag:"component",attrs:{"row-data":e,"row-index":r,"row-field":i.sortField}})],1):t._e(),t._v(" "),"__slot"===t.extractName(i.name)?n("td",{key:a,class:["vuetable-slot",i.dataClass]},[t._t(t.extractArgs(i.name),null,{rowData:e,rowIndex:r,rowField:i.sortField})],2):t._e()]:[n("td",{key:a,class:i.dataClass,domProps:{innerHTML:t._s(t.renderNormalField(i,e))},on:{click:function(n){return t.onCellClicked(e,i,n)},dblclick:function(n){return t.onCellDoubleClicked(e,i,n)},contextmenu:function(n){return t.onCellRightClicked(e,i,n)}}})]]:t._e()]}))],2),t._v(" "),t.useDetailRow?[n("transition",{key:r,attrs:{name:t.detailRowTransition}},[t.isVisibleDetailRow(e[t.trackBy])?n("tr",{class:[t.css.detailRowClass],on:{click:function(n){return t.onDetailRowClick(e,n)}}},[n("td",{attrs:{colspan:t.countVisibleFields}},[n(t.detailRowComponent,{tag:"component",attrs:{"row-data":e,"row-index":r}})],1)]):t._e()])]:t._e()]})),t._v(" "),t.displayEmptyDataRow?[n("tr",[n("td",{staticClass:"vuetable-empty-result",attrs:{colspan:t.countVisibleFields},domProps:{innerHTML:t._s(t.noDataTemplate)}})])]:t._e(),t._v(" "),t.lessThanMinRows?t._l(t.blankRows,(function(e){return n("tr",{key:e,staticClass:"blank-row"},[t._l(t.tableFields,(function(e,r){return[e.visible?n("td",{key:r},[t._v(" ")]):t._e()]}))],2)})):t._e()],2)])])]):n("table",{class:["vuetable",t.css.tableClass]},[n("thead",[n("tr",[t._l(t.tableFields,(function(e,r){return[e.visible?[t.isSpecialField(e.name)?["__checkbox"==t.extractName(e.name)?n("th",{key:r,class:["vuetable-th-checkbox-"+t.trackBy,e.titleClass],style:{width:e.width}},[n("input",{attrs:{type:"checkbox"},domProps:{checked:t.checkCheckboxesState(e.name)},on:{change:function(n){return t.toggleAllCheckboxes(e.name,n)}}})]):t._e(),t._v(" "),"__component"==t.extractName(e.name)?n("th",{key:r,class:["vuetable-th-component-"+t.trackBy,e.titleClass,t.sortClass(e),{sortable:t.isSortable(e)}],style:{width:e.width},domProps:{innerHTML:t._s(t.renderTitle(e))},on:{click:function(n){return t.orderBy(e,n)}}}):t._e(),t._v(" "),"__slot"==t.extractName(e.name)?n("th",{key:r,class:["vuetable-th-slot-"+t.extractArgs(e.name),e.titleClass,t.sortClass(e),{sortable:t.isSortable(e)}],style:{width:e.width},domProps:{innerHTML:t._s(t.renderTitle(e))},on:{click:function(n){return t.orderBy(e,n)}}}):t._e(),t._v(" "),"__sequence"==t.extractName(e.name)?n("th",{key:r,class:["vuetable-th-sequence",e.titleClass||"",t.sortClass(e)],style:{width:e.width},domProps:{innerHTML:t._s(t.renderTitle(e))}}):t._e(),t._v(" "),t.notIn(t.extractName(e.name),["__sequence","__checkbox","__component","__slot"])?n("th",{key:r,class:["vuetable-th-"+e.name,e.titleClass||"",t.sortClass(e)],style:{width:e.width},domProps:{innerHTML:t._s(t.renderTitle(e))}}):t._e()]:[n("th",{key:r,class:["vuetable-th-"+e.name,e.titleClass,t.sortClass(e),{sortable:t.isSortable(e)}],style:{width:e.width},attrs:{id:"_"+e.name},domProps:{innerHTML:t._s(t.renderTitle(e))},on:{click:function(n){return t.orderBy(e,n)}}})]]:t._e()]}))],2)]),t._v(" "),n("tbody",{staticClass:"vuetable-body"},[t._l(t.tableData,(function(e,r){return[n("tr",{key:r,class:t.onRowClass(e,r),attrs:{"item-index":r,render:t.onRowChanged(e)},on:{dblclick:function(n){return t.onRowDoubleClicked(e,n)},click:function(n){return t.onRowClicked(e,n)}}},[t._l(t.tableFields,(function(i,a){return[i.visible?[t.isSpecialField(i.name)?["__sequence"==t.extractName(i.name)?n("td",{key:a,class:["vuetable-sequence",i.dataClass],domProps:{innerHTML:t._s(t.renderSequence(r))}}):t._e(),t._v(" "),"__handle"==t.extractName(i.name)?n("td",{key:a,class:["vuetable-handle",i.dataClass],domProps:{innerHTML:t._s(t.renderIconTag(["handle-icon",t.css.handleIcon]))}}):t._e(),t._v(" "),"__checkbox"==t.extractName(i.name)?n("td",{key:a,class:["vuetable-checkboxes",i.dataClass]},[n("input",{attrs:{type:"checkbox"},domProps:{checked:t.rowSelected(e,i.name)},on:{change:function(n){return t.toggleCheckbox(e,i.name,n)}}})]):t._e(),t._v(" "),"__component"===t.extractName(i.name)?n("td",{key:a,class:["vuetable-component",i.dataClass]},[n(t.extractArgs(i.name),{tag:"component",attrs:{"row-data":e,"row-index":r,"row-field":i.sortField}})],1):t._e(),t._v(" "),"__slot"===t.extractName(i.name)?n("td",{key:a,class:["vuetable-slot",i.dataClass]},[t._t(t.extractArgs(i.name),null,{rowData:e,rowIndex:r,rowField:i.sortField})],2):t._e()]:[t.hasCallback(i)?n("td",{key:a,class:i.dataClass,domProps:{innerHTML:t._s(t.callCallback(i,e))},on:{click:function(n){return t.onCellClicked(e,i,n)},dblclick:function(n){return t.onCellDoubleClicked(e,i,n)},contextmenu:function(n){return t.onCellRightClicked(e,i,n)}}}):n("td",{key:a,class:i.dataClass,domProps:{innerHTML:t._s(t.getObjectValue(e,i.name,""))},on:{click:function(n){return t.onCellClicked(e,i,n)},dblclick:function(n){return t.onCellDoubleClicked(e,i,n)},contextmenu:function(n){return t.onCellRightClicked(e,i,n)}}})]]:t._e()]}))],2),t._v(" "),t.useDetailRow?[n("transition",{key:r,attrs:{name:t.detailRowTransition}},[t.isVisibleDetailRow(e[t.trackBy])?n("tr",{class:[t.css.detailRowClass],on:{click:function(n){return t.onDetailRowClick(e,n)}}},[n("td",{attrs:{colspan:t.countVisibleFields}},[n(t.detailRowComponent,{tag:"component",attrs:{"row-data":e,"row-index":r}})],1)]):t._e()])]:t._e()]})),t._v(" "),t.displayEmptyDataRow?[n("tr",[n("td",{staticClass:"vuetable-empty-result",attrs:{colspan:t.countVisibleFields},domProps:{innerHTML:t._s(t.noDataTemplate)}})])]:t._e(),t._v(" "),t.lessThanMinRows?t._l(t.blankRows,(function(e){return n("tr",{key:e,staticClass:"blank-row"},[t._l(t.tableFields,(function(e,r){return[e.visible?n("td",{key:r},[t._v(" ")]):t._e()]}))],2)})):t._e()],2)])}),[],!1,null,"5bfa05b0",null).exports,u={name:"AdminTablePagination",mixins:[l({props:{css:{type:Object,default(){return{wrapperClass:"ui right floated pagination menu",activeClass:"active large",disabledClass:"disabled",pageClass:"item",linkClass:"icon item",paginationClass:"ui bottom attached segment grid",paginationInfoClass:"left floated left aligned six wide column",dropdownClass:"ui search dropdown",icons:{first:"angle double left icon",prev:"left chevron icon",next:"right chevron icon",last:"angle double right icon"}}}},onEachSide:{type:Number,default(){return 2}}},data:function(){return{eventPrefix:"vuetable-pagination:",tablePagination:null}},computed:{totalPage(){return null===this.tablePagination?0:this.tablePagination.last_page},isOnFirstPage(){return null!==this.tablePagination&&1===this.tablePagination.current_page},isOnLastPage(){return null!==this.tablePagination&&this.tablePagination.current_page===this.tablePagination.last_page},notEnoughPages(){return this.totalPage<2*this.onEachSide+4},windowSize(){return 2*this.onEachSide+1},windowStart(){return!this.tablePagination||this.tablePagination.current_page<=this.onEachSide?1:this.tablePagination.current_page>=this.totalPage-this.onEachSide?this.totalPage-2*this.onEachSide:this.tablePagination.current_page-this.onEachSide}},methods:{loadPage(t){this.$emit(this.eventPrefix+"change-page",t)},isCurrentPage(t){return t===this.tablePagination.current_page},setPaginationData(t){this.tablePagination=t},resetData(){this.tablePagination=null}}},void 0,void 0,!1,null,null,null).exports],props:{itemLabels:{type:Object,default:function(){return{singular:Craft.t("app","Item"),plural:Craft.t("app","Items")}}}},computed:{paginationLabel:function(){return Craft.t("app","{first, number}-{last, number} of {total, number} {total, plural, =1{{item}} other{{items}}}",{first:this.tablePagination.from,last:this.tablePagination.to,total:this.tablePagination.total||0,item:this.itemLabels.singular,items:this.itemLabels.plural})}}},c=(n(290),l(u,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.tablePagination?n("div",{staticClass:"vue-admin-table-pagination flex pagination"},[n("div",{staticClass:"page-link prev-page",class:[t.isOnFirstPage?"disabled":""],attrs:{title:"Previous Page"},on:{click:function(e){return t.loadPage("prev")}}}),t._v(" "),n("div",{staticClass:"page-link next-page",class:[t.isOnLastPage?"disabled":""],attrs:{title:"Next Page"},on:{click:function(e){return t.loadPage("next")}}}),t._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:t.tablePagination,expression:"tablePagination"}],staticClass:"page-info"},[t._v(t._s(t.paginationLabel))])]):t._e()}),[],!1,null,null,null).exports),f=l({name:"AdminTableDeleteButton",props:{actionUrl:String,before:Function,confirmationMessage:String,disabled:Boolean,failMessage:String,id:[Number,String],name:String,successMessage:String},data:function(){return{}},computed:{success:function(){var t=void 0!==this.successMessage?Craft.t("site",this.successMessage,{name:this.name}):Craft.t("app","“{name}” deleted.",{name:this.name});return Craft.escapeHtml(t)},confirm:function(){var t=void 0!==this.confirmationMessage?Craft.t("site",this.confirmationMessage,{name:this.name}):Craft.t("app","Are you sure you want to delete “{name}”?",{name:this.name});return Craft.escapeHtml(t)},failed:function(){var t=void 0!==this.failMessage?Craft.t("site",this.failMessage,{name:this.name}):Craft.t("app","Couldn’t delete “{name}”.",{name:this.name});return Craft.escapeHtml(t)}},methods:{confirmDelete:function(){return confirm(this.confirm)},handleClick:function(){var t=this;t.disabled||(t.$emit("loading"),t.before(t.id).then((function(e){e&&t.confirmDelete()?Craft.sendActionRequest("POST",t.actionUrl,{data:{id:t.id}}).then((function(){Craft.cp.displayNotice(t.success),t.$emit("reload")})).catch((function(){Craft.cp.displayError(t.failed),t.$emit("finishloading")})):t.$emit("finishloading")})))}}},(function(){var t=this,e=t.$createElement;return(t._self._c||e)("a",{staticClass:"delete icon",class:{disabled:t.disabled},attrs:{title:t._f("t")("Delete","app"),role:"button",href:"#"},on:{click:function(e){return e.preventDefault(),t.handleClick.apply(null,arguments)}}})}),[],!1,null,"17f4cad8",null),h=f.exports,d={name:"AdminTableCheckbox",props:{id:Number,selectAll:Boolean,checks:Array,status:{type:Boolean,default:!0}},data:function(){return{}},computed:{isChecked:function(){return-1!==this.checks.indexOf(this.id)},title:function(){return Craft.escapeHtml(Craft.t("app","Select"))}},methods:{handleClick:function(){this.status&&(this.isChecked?this.$emit("removeCheck",this.id):this.$emit("addCheck",this.id))}}},p=(n(64),l(d,(function(){var t=this,e=t.$createElement;return(t._self._c||e)("div",{staticClass:"checkbox",class:{checked:t.isChecked,"table-disabled-checkbox":!t.status},attrs:{title:t.title},on:{click:function(e){return e.preventDefault(),t.handleClick.apply(null,arguments)}}})}),[],!1,null,"1bbfb992",null)),v=p.exports,g=l({name:"AdminTableActionButton",props:{action:String,actions:{type:Array,default:function(){return[]}},ajax:{type:Boolean,default:!1},allowMultiple:{type:Boolean,default:!0},enabled:Boolean,ids:Array,label:String,icon:String,error:{type:Boolean,default:!1}},data:function(){return{button:null,buttonDisabled:!1,tokenName:Craft.csrfTokenName,tokenValue:Craft.csrfTokenValue,param:"",value:""}},methods:{handleClick:function(t,e,n,r){var i=this;if(r){var a={ids:this.ids};a[t]=e,Craft.sendActionRequest("POST",n,{data:a}).then((function(t){Craft.cp.displayNotice(Craft.escapeHtml(Craft.t("app","Updated.")))})).finally((function(){i.$emit("reload")}))}else this.action=n,this.param=t,this.value=e,this.$nextTick((function(){i.$refs.form.submit()}))},enableButton:function(){this.isMenuButtonInitialised?this.button.data("menubtn").enable():this.buttonDisabled=!1},disableButton:function(){this.isMenuButtonInitialised?this.button.data("menubtn").disable():this.buttonDisabled=!0}},computed:{actionsList:function(){if(!this.actions.length)return[];var t=[],e=[];return this.actions.forEach((function(n){Object.keys(n).indexOf("separator")>=0&&n.separator&&(t.push(e),e=[]),e.push(n)})),e.length&&t.push(e),t},hasMultipleSelected:function(){return this.ids.length>1},isMenuButtonInitialised:function(){return this.isMenuButton&&this.button.data("menubtn")},isMenuButton:function(){return!!this.button&&!!this.actions.length}},watch:{enabled:function(){this.enabled?this.enableButton():this.disableButton()},hasMultipleSelected:function(t){!t||this.actions.length||this.allowMultiple?this.buttonDisabled=!1:this.buttonDisabled=!0}},mounted:function(){var t=this;this.$nextTick((function(){Craft.initUiElements(t.$refs.form),t.button=$(t.$refs.button),t.disableButton()}))}},(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("form",{ref:"form",attrs:{method:"post"}},[n("input",{attrs:{type:"hidden",name:t.tokenName},domProps:{value:t.tokenValue}}),t._v(" "),n("input",{attrs:{type:"hidden",name:"action"},domProps:{value:t.action}}),t._v(" "),t.param?n("input",{attrs:{type:"hidden",name:t.param},domProps:{value:t.value}}):t._e(),t._v(" "),t._l(t.ids,(function(t,e){return n("input",{key:e,attrs:{type:"hidden",name:"ids[]"},domProps:{value:t}})})),t._v(" "),n(t.isMenuButton?"div":"button",t._g({ref:"button",tag:"component",staticClass:"btn",class:{menubtn:t.isMenuButton,error:t.error,disabled:!t.enabled||t.buttonDisabled},attrs:{"data-icon":t.icon,disabled:t.buttonDisabled,type:!t.enabled||t.isMenuButton||t.ajax?null:"submit"}},t.enabled&&!t.isMenuButton&&t.ajax?{click:t.handleClick(t.param,t.value,t.action,t.ajax)}:{}),[t._v(t._s(t.label))]),t._v(" "),t.isMenuButton?n("div",{staticClass:"menu"},[t._l(t.actionsList,(function(e,r){return[n("ul",{key:r,staticClass:"padded"},t._l(e,(function(e,r){return n("li",{key:r},[n("a",{class:{error:void 0!==e.error&&e.error,disabled:void 0!==e.allowMultiple&&!e.allowMultiple&&t.hasMultipleSelected},attrs:{href:"#","data-param":e.param,"data-value":e.value,"data-ajax":e.ajax},on:{click:function(n){n.preventDefault(),(void 0===e.allowMultiple||e.allowMultiple||!t.hasMultipleSelected)&&t.handleClick(e.param,e.value,e.action,e.ajax)}}},[e.status?n("span",{class:"status "+e.status}):t._e(),t._v(t._s(e.label)+"\n ")])])})),0),t._v(" "),t.actionsList.length>1&&r!=t.actionsList.length-1&&0!=r?n("hr",{key:r}):t._e()]}))],2):t._e()],2)}),[],!1,null,"48f15ca4",null),b=g.exports;function m(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t)){var n=[],r=!0,i=!1,a=void 0;try{for(var o,l=t[Symbol.iterator]();!(r=(o=l.next()).done)&&(n.push(o.value),!e||n.length!==e);r=!0);}catch(t){i=!0,a=t}finally{try{r||null==l.return||l.return()}finally{if(i)throw a}}return n}}(t,e)||function(t,e){if(t){if("string"==typeof t)return _(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(!e)return[];Object.entries(e).forEach((function(e){var i=m(e,2),a=i[0],o=i[1],l=t.addDelimiter(n,a);t.isObject(o)?t.paths(o,l,r+1):t.list[l]=o}))}},computed:{listKeys:function(){return Object.keys(this.list).sort()}},created:function(){this.paths(this.rowData.detail.content)}},C=w,k=(n(454),l(C,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[!t.rowData.detail.content||t.rowData.detail.showAsList&&void 0!==t.rowData.detail.showAsList?t._e():n("div",{domProps:{innerHTML:t._s(t.rowData.detail.content)}}),t._v(" "),t.rowData.detail.content&&t.rowData.detail.showAsList?n("div",t._l(t.listKeys,(function(e){return n("div",{key:e,staticClass:"order-flex detail-list",class:{"detail-list-bg":t.index%2}},[n("div",{staticClass:"detail-list-key"},[t._v(t._s(e)+":")]),t._v(" "),n("div",{staticClass:"detail-list-value"},[t._v(t._s(t.list[e]))])])})),0):t._e()])}),[],!1,null,null,null).exports),x=l({name:"AdminTableButton",props:{btnClass:{type:String|Object,default:function(){return{}}},enabled:{type:Boolean|Function,default:function(){return!0}},href:String,label:String,icon:String},methods:{handleClick:function(t){this.isEnabled||t.preventDefault()}},computed:{buttonClass:function(){var t=this.isEnabled;return"string"==typeof this.btnClass?this.btnClass+(t?"":" disabled"):Object.assign(this.btnClass,{disabled:!t})},isEnabled:function(){return"function"==typeof this.enabled?this.enabled():this.enabled},linkHref:function(){return this.isEnabled?this.href:"#"}}},(function(){var t=this,e=t.$createElement;return(t._self._c||e)("a",{ref:"button",staticClass:"btn",class:t.buttonClass,attrs:{href:t.linkHref,"data-icon":t.icon},on:{click:t.handleClick}},[t._v(t._s(t.label))])}),[],!1,null,"0235bfad",null).exports,S=l({name:"AdminTableCopyTextButton",props:{value:String},mounted:function(){this.value&&$(this.$el).html(Craft.ui.createCopyTextBtn({value:this.value,class:"code small light"}))}},(function(){var t=this.$createElement;return(this._self._c||t)("div")}),[],!1,null,"b82d2fda",null).exports;function D(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function E(t){for(var e=1;e=0||(i[n]=t[n]);return i}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(i[n]=t[n])}return i}function I(t){if("undefined"!=typeof window&&window.navigator)return!!navigator.userAgent.match(t)}var M=I(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i),R=I(/Edge/i),j=I(/firefox/i),F=I(/safari/i)&&!I(/chrome/i)&&!I(/android/i),N=I(/iP(ad|od|hone)/i),B=I(/chrome/i)&&I(/android/i),L={capture:!1,passive:!1};function H(t,e,n){t.addEventListener(e,n,!M&&L)}function z(t,e,n){t.removeEventListener(e,n,!M&&L)}function U(t,e){if(e){if(">"===e[0]&&(e=e.substring(1)),t)try{if(t.matches)return t.matches(e);if(t.msMatchesSelector)return t.msMatchesSelector(e);if(t.webkitMatchesSelector)return t.webkitMatchesSelector(e)}catch(t){return!1}return!1}}function W(t){return t.host&&t!==document&&t.host.nodeType?t.host:t.parentNode}function q(t,e,n,r){if(t){n=n||document;do{if(null!=e&&(">"===e[0]?t.parentNode===n&&U(t,e):U(t,e))||r&&t===n)return t;if(t===n)break}while(t=W(t))}return null}var V,Y=/\s+/g;function X(t,e,n){if(t&&e)if(t.classList)t.classList[n?"add":"remove"](e);else{var r=(" "+t.className+" ").replace(Y," ").replace(" "+e+" "," ");t.className=(r+(n?" "+e:"")).replace(Y," ")}}function Z(t,e,n){var r=t&&t.style;if(r){if(void 0===n)return document.defaultView&&document.defaultView.getComputedStyle?n=document.defaultView.getComputedStyle(t,""):t.currentStyle&&(n=t.currentStyle),void 0===e?n:n[e];e in r||-1!==e.indexOf("webkit")||(e="-webkit-"+e),r[e]=n+("string"==typeof n?"":"px")}}function G(t,e){var n="";if("string"==typeof t)n=t;else do{var r=Z(t,"transform");r&&"none"!==r&&(n=r+" "+n)}while(!e&&(t=t.parentNode));var i=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return i&&new i(n)}function K(t,e,n){if(t){var r=t.getElementsByTagName(e),i=0,a=r.length;if(n)for(;i=a:i<=a))return r;if(r===J())break;r=at(r,!1)}return!1}function et(t,e,n,r){for(var i=0,a=0,o=t.children;a2&&void 0!==arguments[2]?arguments[2]:{},r=n.evt,i=A(n,pt);dt.pluginEvent.bind(le)(t,e,E({dragEl:bt,parentEl:mt,ghostEl:_t,rootEl:yt,nextEl:wt,lastDownEl:Ct,cloneEl:kt,cloneHidden:xt,dragStarted:Nt,putSortable:Ot,activeSortable:le.active,originalEvent:r,oldIndex:St,oldDraggableIndex:Et,newIndex:Dt,newDraggableIndex:Pt,hideGhostForTarget:re,unhideGhostForTarget:ie,cloneNowHidden:function(){xt=!0},cloneNowShown:function(){xt=!1},dispatchSortableEvent:function(t){gt({sortable:e,name:t,originalEvent:r})}},i))};function gt(t){!function(t){var e=t.sortable,n=t.rootEl,r=t.name,i=t.targetEl,a=t.cloneEl,o=t.toEl,l=t.fromEl,s=t.oldIndex,u=t.newIndex,c=t.oldDraggableIndex,f=t.newDraggableIndex,h=t.originalEvent,d=t.putSortable,p=t.extraEventProperties;if(e=e||n&&n[ct]){var v,g=e.options,b="on"+r.charAt(0).toUpperCase()+r.substr(1);!window.CustomEvent||M||R?(v=document.createEvent("Event")).initEvent(r,!0,!0):v=new CustomEvent(r,{bubbles:!0,cancelable:!0}),v.to=o||n,v.from=l||n,v.item=i||n,v.clone=a,v.oldIndex=s,v.newIndex=u,v.oldDraggableIndex=c,v.newDraggableIndex=f,v.originalEvent=h,v.pullMode=d?d.lastPutMode:void 0;var m=E(E({},p),dt.getEventProperties(r,e));for(var _ in m)v[_]=m[_];n&&n.dispatchEvent(v),g[b]&&g[b].call(e,v)}}(E({putSortable:Ot,cloneEl:kt,targetEl:bt,rootEl:yt,oldIndex:St,oldDraggableIndex:Et,newIndex:Dt,newDraggableIndex:Pt},t))}var bt,mt,_t,yt,wt,Ct,kt,xt,St,Dt,Et,Pt,Tt,Ot,At,It,Mt,Rt,jt,Ft,Nt,Bt,Lt,$t,Ht,zt=!1,Ut=!1,Wt=[],qt=!1,Vt=!1,Yt=[],Xt=!1,Zt=[],Gt="undefined"!=typeof document,Kt=N,Jt=R||M?"cssFloat":"float",Qt=Gt&&!B&&!N&&"draggable"in document.createElement("div"),te=function(){if(Gt){if(M)return!1;var t=document.createElement("x");return t.style.cssText="pointer-events:auto","auto"===t.style.pointerEvents}}(),ee=function(t,e){var n=Z(t),r=parseInt(n.width)-parseInt(n.paddingLeft)-parseInt(n.paddingRight)-parseInt(n.borderLeftWidth)-parseInt(n.borderRightWidth),i=et(t,0,e),a=et(t,1,e),o=i&&Z(i),l=a&&Z(a),s=o&&parseInt(o.marginLeft)+parseInt(o.marginRight)+Q(i).width,u=l&&parseInt(l.marginLeft)+parseInt(l.marginRight)+Q(a).width;if("flex"===n.display)return"column"===n.flexDirection||"column-reverse"===n.flexDirection?"vertical":"horizontal";if("grid"===n.display)return n.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(i&&o.float&&"none"!==o.float){var c="left"===o.float?"left":"right";return!a||"both"!==l.clear&&l.clear!==c?"horizontal":"vertical"}return i&&("block"===o.display||"flex"===o.display||"table"===o.display||"grid"===o.display||s>=r&&"none"===n[Jt]||a&&"none"===n[Jt]&&s+u>r)?"vertical":"horizontal"},ne=function(t){function e(t,n){return function(r,i,a,o){var l=r.options.group.name&&i.options.group.name&&r.options.group.name===i.options.group.name;if(null==t&&(n||l))return!0;if(null==t||!1===t)return!1;if(n&&"clone"===t)return t;if("function"==typeof t)return e(t(r,i,a,o),n)(r,i,a,o);var s=(n?r:i).options.group.name;return!0===t||"string"==typeof t&&t===s||t.join&&t.indexOf(s)>-1}}var n={},r=t.group;r&&"object"==P(r)||(r={name:r}),n.name=r.name,n.checkPull=e(r.pull,!0),n.checkPut=e(r.put),n.revertClone=r.revertClone,t.group=n},re=function(){!te&&_t&&Z(_t,"display","none")},ie=function(){!te&&_t&&Z(_t,"display","")};Gt&&!B&&document.addEventListener("click",(function(t){if(Ut)return t.preventDefault(),t.stopPropagation&&t.stopPropagation(),t.stopImmediatePropagation&&t.stopImmediatePropagation(),Ut=!1,!1}),!0);var ae=function(t){if(bt){t=t.touches?t.touches[0]:t;var e=(i=t.clientX,a=t.clientY,Wt.some((function(t){var e=t[ct].options.emptyInsertThreshold;if(e&&!nt(t)){var n=Q(t),r=i>=n.left-e&&i<=n.right+e,l=a>=n.top-e&&a<=n.bottom+e;return r&&l?o=t:void 0}})),o);if(e){var n={};for(var r in t)t.hasOwnProperty(r)&&(n[r]=t[r]);n.target=n.rootEl=e,n.preventDefault=void 0,n.stopPropagation=void 0,e[ct]._onDragOver(n)}}var i,a,o},oe=function(t){bt&&bt.parentNode[ct]._isOutsideThisEl(t.target)};function le(t,e){if(!t||!t.nodeType||1!==t.nodeType)throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(t));this.el=t,this.options=e=O({},e),t[ct]=this;var n,r,i={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(t.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return ee(t,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(t,e){t.setData("Text",e.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:!1!==le.supportPointer&&"PointerEvent"in window&&!F,emptyInsertThreshold:5};for(var a in dt.initializePlugins(this,t,i),i)!(a in e)&&(e[a]=i[a]);for(var o in ne(e),this)"_"===o.charAt(0)&&"function"==typeof this[o]&&(this[o]=this[o].bind(this));this.nativeDraggable=!e.forceFallback&&Qt,this.nativeDraggable&&(this.options.touchStartThreshold=1),e.supportPointer?H(t,"pointerdown",this._onTapStart):(H(t,"mousedown",this._onTapStart),H(t,"touchstart",this._onTapStart)),this.nativeDraggable&&(H(t,"dragover",this),H(t,"dragenter",this)),Wt.push(this.el),e.store&&e.store.get&&this.sort(e.store.get(this)||[]),O(this,(r=[],{captureAnimationState:function(){r=[],this.options.animation&&[].slice.call(this.el.children).forEach((function(t){if("none"!==Z(t,"display")&&t!==le.ghost){r.push({target:t,rect:Q(t)});var e=E({},r[r.length-1].rect);if(t.thisAnimationDuration){var n=G(t,!0);n&&(e.top-=n.f,e.left-=n.e)}t.fromRect=e}}))},addAnimationState:function(t){r.push(t)},removeAnimationState:function(t){r.splice(function(t,e){for(var n in t)if(t.hasOwnProperty(n))for(var r in e)if(e.hasOwnProperty(r)&&e[r]===t[n][r])return Number(n);return-1}(r,{target:t}),1)},animateAll:function(t){var e=this;if(!this.options.animation)return clearTimeout(n),void("function"==typeof t&&t());var i=!1,a=0;r.forEach((function(t){var n=0,r=t.target,o=r.fromRect,l=Q(r),s=r.prevFromRect,u=r.prevToRect,c=t.rect,f=G(r,!0);f&&(l.top-=f.f,l.left-=f.e),r.toRect=l,r.thisAnimationDuration&&ot(s,l)&&!ot(o,l)&&(c.top-l.top)/(c.left-l.left)==(o.top-l.top)/(o.left-l.left)&&(n=function(t,e,n,r){return Math.sqrt(Math.pow(e.top-t.top,2)+Math.pow(e.left-t.left,2))/Math.sqrt(Math.pow(e.top-n.top,2)+Math.pow(e.left-n.left,2))*r.animation}(c,s,u,e.options)),ot(l,o)||(r.prevFromRect=o,r.prevToRect=l,n||(n=e.options.animation),e.animate(r,c,l,n)),n&&(i=!0,a=Math.max(a,n),clearTimeout(r.animationResetTimer),r.animationResetTimer=setTimeout((function(){r.animationTime=0,r.prevFromRect=null,r.fromRect=null,r.prevToRect=null,r.thisAnimationDuration=null}),n),r.thisAnimationDuration=n)})),clearTimeout(n),i?n=setTimeout((function(){"function"==typeof t&&t()}),a):"function"==typeof t&&t(),r=[]},animate:function(t,e,n,r){if(r){Z(t,"transition",""),Z(t,"transform","");var i=G(this.el),a=i&&i.a,o=i&&i.d,l=(e.left-n.left)/(a||1),s=(e.top-n.top)/(o||1);t.animatingX=!!l,t.animatingY=!!s,Z(t,"transform","translate3d("+l+"px,"+s+"px,0)"),this.forRepaintDummy=function(t){return t.offsetWidth}(t),Z(t,"transition","transform "+r+"ms"+(this.options.easing?" "+this.options.easing:"")),Z(t,"transform","translate3d(0,0,0)"),"number"==typeof t.animated&&clearTimeout(t.animated),t.animated=setTimeout((function(){Z(t,"transition",""),Z(t,"transform",""),t.animated=!1,t.animatingX=!1,t.animatingY=!1}),r)}}}))}function se(t,e,n,r,i,a,o,l){var s,u,c=t[ct],f=c.options.onMove;return!window.CustomEvent||M||R?(s=document.createEvent("Event")).initEvent("move",!0,!0):s=new CustomEvent("move",{bubbles:!0,cancelable:!0}),s.to=e,s.from=t,s.dragged=n,s.draggedRect=r,s.related=i||e,s.relatedRect=a||Q(e),s.willInsertAfter=l,s.originalEvent=o,t.dispatchEvent(s),f&&(u=f.call(c,s,o)),u}function ue(t){t.draggable=!1}function ce(){Xt=!1}function fe(t){for(var e=t.tagName+t.className+t.src+t.href+t.textContent,n=e.length,r=0;n--;)r+=e.charCodeAt(n);return r.toString(36)}function he(t){return setTimeout(t,0)}function de(t){return clearTimeout(t)}le.prototype={constructor:le,_isOutsideThisEl:function(t){this.el.contains(t)||t===this.el||(Bt=null)},_getDirection:function(t,e){return"function"==typeof this.options.direction?this.options.direction.call(this,t,e,bt):this.options.direction},_onTapStart:function(t){if(t.cancelable){var e=this,n=this.el,r=this.options,i=r.preventOnFilter,a=t.type,o=t.touches&&t.touches[0]||t.pointerType&&"touch"===t.pointerType&&t,l=(o||t).target,s=t.target.shadowRoot&&(t.path&&t.path[0]||t.composedPath&&t.composedPath()[0])||l,u=r.filter;if(function(t){Zt.length=0;for(var e=t.getElementsByTagName("input"),n=e.length;n--;){var r=e[n];r.checked&&Zt.push(r)}}(n),!bt&&!(/mousedown|pointerdown/.test(a)&&0!==t.button||r.disabled)&&!s.isContentEditable&&(this.nativeDraggable||!F||!l||"SELECT"!==l.tagName.toUpperCase())&&!((l=q(l,r.draggable,n,!1))&&l.animated||Ct===l)){if(St=rt(l),Et=rt(l,r.draggable),"function"==typeof u){if(u.call(this,t,l,this))return gt({sortable:e,rootEl:s,name:"filter",targetEl:l,toEl:n,fromEl:n}),vt("filter",e,{evt:t}),void(i&&t.cancelable&&t.preventDefault())}else if(u&&(u=u.split(",").some((function(r){if(r=q(s,r.trim(),n,!1))return gt({sortable:e,rootEl:r,name:"filter",targetEl:l,fromEl:n,toEl:n}),vt("filter",e,{evt:t}),!0}))))return void(i&&t.cancelable&&t.preventDefault());r.handle&&!q(s,r.handle,n,!1)||this._prepareDragStart(t,o,l)}}},_prepareDragStart:function(t,e,n){var r,i=this,a=i.el,o=i.options,l=a.ownerDocument;if(n&&!bt&&n.parentNode===a){var s=Q(n);if(yt=a,mt=(bt=n).parentNode,wt=bt.nextSibling,Ct=n,Tt=o.group,le.dragged=bt,At={target:bt,clientX:(e||t).clientX,clientY:(e||t).clientY},jt=At.clientX-s.left,Ft=At.clientY-s.top,this._lastX=(e||t).clientX,this._lastY=(e||t).clientY,bt.style["will-change"]="all",r=function(){vt("delayEnded",i,{evt:t}),le.eventCanceled?i._onDrop():(i._disableDelayedDragEvents(),!j&&i.nativeDraggable&&(bt.draggable=!0),i._triggerDragStart(t,e),gt({sortable:i,name:"choose",originalEvent:t}),X(bt,o.chosenClass,!0))},o.ignore.split(",").forEach((function(t){K(bt,t.trim(),ue)})),H(l,"dragover",ae),H(l,"mousemove",ae),H(l,"touchmove",ae),H(l,"mouseup",i._onDrop),H(l,"touchend",i._onDrop),H(l,"touchcancel",i._onDrop),j&&this.nativeDraggable&&(this.options.touchStartThreshold=4,bt.draggable=!0),vt("delayStart",this,{evt:t}),!o.delay||o.delayOnTouchOnly&&!e||this.nativeDraggable&&(R||M))r();else{if(le.eventCanceled)return void this._onDrop();H(l,"mouseup",i._disableDelayedDrag),H(l,"touchend",i._disableDelayedDrag),H(l,"touchcancel",i._disableDelayedDrag),H(l,"mousemove",i._delayedDragTouchMoveHandler),H(l,"touchmove",i._delayedDragTouchMoveHandler),o.supportPointer&&H(l,"pointermove",i._delayedDragTouchMoveHandler),i._dragStartTimer=setTimeout(r,o.delay)}}},_delayedDragTouchMoveHandler:function(t){var e=t.touches?t.touches[0]:t;Math.max(Math.abs(e.clientX-this._lastX),Math.abs(e.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){bt&&ue(bt),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var t=this.el.ownerDocument;z(t,"mouseup",this._disableDelayedDrag),z(t,"touchend",this._disableDelayedDrag),z(t,"touchcancel",this._disableDelayedDrag),z(t,"mousemove",this._delayedDragTouchMoveHandler),z(t,"touchmove",this._delayedDragTouchMoveHandler),z(t,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(t,e){e=e||"touch"==t.pointerType&&t,!this.nativeDraggable||e?this.options.supportPointer?H(document,"pointermove",this._onTouchMove):H(document,e?"touchmove":"mousemove",this._onTouchMove):(H(bt,"dragend",this),H(yt,"dragstart",this._onDragStart));try{document.selection?he((function(){document.selection.empty()})):window.getSelection().removeAllRanges()}catch(t){}},_dragStarted:function(t,e){if(zt=!1,yt&&bt){vt("dragStarted",this,{evt:e}),this.nativeDraggable&&H(document,"dragover",oe);var n=this.options;!t&&X(bt,n.dragClass,!1),X(bt,n.ghostClass,!0),le.active=this,t&&this._appendGhost(),gt({sortable:this,name:"start",originalEvent:e})}else this._nulling()},_emulateDragOver:function(){if(It){this._lastX=It.clientX,this._lastY=It.clientY,re();for(var t=document.elementFromPoint(It.clientX,It.clientY),e=t;t&&t.shadowRoot&&(t=t.shadowRoot.elementFromPoint(It.clientX,It.clientY))!==e;)e=t;if(bt.parentNode[ct]._isOutsideThisEl(t),e)do{if(e[ct]&&e[ct]._onDragOver({clientX:It.clientX,clientY:It.clientY,target:t,rootEl:e})&&!this.options.dragoverBubble)break;t=e}while(e=e.parentNode);ie()}},_onTouchMove:function(t){if(At){var e=this.options,n=e.fallbackTolerance,r=e.fallbackOffset,i=t.touches?t.touches[0]:t,a=_t&&G(_t,!0),o=_t&&a&&a.a,l=_t&&a&&a.d,s=Kt&&Ht&&it(Ht),u=(i.clientX-At.clientX+r.x)/(o||1)+(s?s[0]-Yt[0]:0)/(o||1),c=(i.clientY-At.clientY+r.y)/(l||1)+(s?s[1]-Yt[1]:0)/(l||1);if(!le.active&&!zt){if(n&&Math.max(Math.abs(i.clientX-this._lastX),Math.abs(i.clientY-this._lastY))r.right+10||t.clientX<=r.right&&t.clientY>r.bottom&&t.clientX>=r.left:t.clientX>r.right&&t.clientY>r.top||t.clientX<=r.right&&t.clientY>r.bottom+10}(t,i,this)&&!v.animated){if(v===bt)return I(!1);if(v&&a===t.target&&(o=v),o&&(n=Q(o)),!1!==se(yt,a,bt,e,o,n,t,!!o))return A(),v&&v.nextSibling?a.insertBefore(bt,v.nextSibling):a.appendChild(bt),mt=a,M(),I(!0)}else if(v&&function(t,e,n){var r=Q(et(n.el,0,n.options,!0));return e?t.clientXc+u*a/2:sf-$t)return-Lt}else if(s>c+u*(1-i)/2&&sf-u*a/2)?s>c+u/2?1:-1:0}(t,o,n,i,w?1:l.swapThreshold,null==l.invertedSwapThreshold?l.swapThreshold:l.invertedSwapThreshold,Vt,Bt===o),0!==b){var S=rt(bt);do{S-=b,_=mt.children[S]}while(_&&("none"===Z(_,"display")||_===_t))}if(0===b||_===o)return I(!1);Bt=o,Lt=b;var D=o.nextElementSibling,P=!1,T=se(yt,a,bt,e,o,n,t,P=1===b);if(!1!==T)return 1!==T&&-1!==T||(P=1===T),Xt=!0,setTimeout(ce,30),A(),P&&!D?a.appendChild(bt):o.parentNode.insertBefore(bt,P?D:o),k&&st(k,0,x-k.scrollTop),mt=bt.parentNode,void 0===m||Vt||($t=Math.abs(m-Q(o)[C])),M(),I(!0)}if(a.contains(bt))return I(!1)}return!1}function O(l,s){vt(l,d,E({evt:t,isOwner:c,axis:i?"vertical":"horizontal",revert:r,dragRect:e,targetRect:n,canSort:f,fromSortable:h,target:o,completed:I,onMove:function(n,r){return se(yt,a,bt,e,n,Q(n),t,r)},changed:M},s))}function A(){O("dragOverAnimationCapture"),d.captureAnimationState(),d!==h&&h.captureAnimationState()}function I(e){return O("dragOverCompleted",{insertion:e}),e&&(c?u._hideClone():u._showClone(d),d!==h&&(X(bt,Ot?Ot.options.ghostClass:u.options.ghostClass,!1),X(bt,l.ghostClass,!0)),Ot!==d&&d!==le.active?Ot=d:d===le.active&&Ot&&(Ot=null),h===d&&(d._ignoreWhileAnimating=o),d.animateAll((function(){O("dragOverAnimationComplete"),d._ignoreWhileAnimating=null})),d!==h&&(h.animateAll(),h._ignoreWhileAnimating=null)),(o===bt&&!bt.animated||o===a&&!o.animated)&&(Bt=null),l.dragoverBubble||t.rootEl||o===document||(bt.parentNode[ct]._isOutsideThisEl(t.target),!e&&ae(t)),!l.dragoverBubble&&t.stopPropagation&&t.stopPropagation(),p=!0}function M(){Dt=rt(bt),Pt=rt(bt,l.draggable),gt({sortable:d,name:"change",toEl:a,newIndex:Dt,newDraggableIndex:Pt,originalEvent:t})}},_ignoreWhileAnimating:null,_offMoveEvents:function(){z(document,"mousemove",this._onTouchMove),z(document,"touchmove",this._onTouchMove),z(document,"pointermove",this._onTouchMove),z(document,"dragover",ae),z(document,"mousemove",ae),z(document,"touchmove",ae)},_offUpEvents:function(){var t=this.el.ownerDocument;z(t,"mouseup",this._onDrop),z(t,"touchend",this._onDrop),z(t,"pointerup",this._onDrop),z(t,"touchcancel",this._onDrop),z(document,"selectstart",this)},_onDrop:function(t){var e=this.el,n=this.options;Dt=rt(bt),Pt=rt(bt,n.draggable),vt("drop",this,{evt:t}),mt=bt&&bt.parentNode,Dt=rt(bt),Pt=rt(bt,n.draggable),le.eventCanceled||(zt=!1,Vt=!1,qt=!1,clearInterval(this._loopId),clearTimeout(this._dragStartTimer),de(this.cloneId),de(this._dragStartId),this.nativeDraggable&&(z(document,"drop",this),z(e,"dragstart",this._onDragStart)),this._offMoveEvents(),this._offUpEvents(),F&&Z(document.body,"user-select",""),Z(bt,"transform",""),t&&(Nt&&(t.cancelable&&t.preventDefault(),!n.dropBubble&&t.stopPropagation()),_t&&_t.parentNode&&_t.parentNode.removeChild(_t),(yt===mt||Ot&&"clone"!==Ot.lastPutMode)&&kt&&kt.parentNode&&kt.parentNode.removeChild(kt),bt&&(this.nativeDraggable&&z(bt,"dragend",this),ue(bt),bt.style["will-change"]="",Nt&&!zt&&X(bt,Ot?Ot.options.ghostClass:this.options.ghostClass,!1),X(bt,this.options.chosenClass,!1),gt({sortable:this,name:"unchoose",toEl:mt,newIndex:null,newDraggableIndex:null,originalEvent:t}),yt!==mt?(Dt>=0&&(gt({rootEl:mt,name:"add",toEl:mt,fromEl:yt,originalEvent:t}),gt({sortable:this,name:"remove",toEl:mt,originalEvent:t}),gt({rootEl:mt,name:"sort",toEl:mt,fromEl:yt,originalEvent:t}),gt({sortable:this,name:"sort",toEl:mt,originalEvent:t})),Ot&&Ot.save()):Dt!==St&&Dt>=0&&(gt({sortable:this,name:"update",toEl:mt,originalEvent:t}),gt({sortable:this,name:"sort",toEl:mt,originalEvent:t})),le.active&&(null!=Dt&&-1!==Dt||(Dt=St,Pt=Et),gt({sortable:this,name:"end",toEl:mt,originalEvent:t}),this.save())))),this._nulling()},_nulling:function(){vt("nulling",this),yt=bt=mt=_t=wt=kt=Ct=xt=At=It=Nt=Dt=Pt=St=Et=Bt=Lt=Ot=Tt=le.dragged=le.ghost=le.clone=le.active=null,Zt.forEach((function(t){t.checked=!0})),Zt.length=Mt=Rt=0},handleEvent:function(t){switch(t.type){case"drop":case"dragend":this._onDrop(t);break;case"dragenter":case"dragover":bt&&(this._onDragOver(t),function(t){t.dataTransfer&&(t.dataTransfer.dropEffect="move"),t.cancelable&&t.preventDefault()}(t));break;case"selectstart":t.preventDefault()}},toArray:function(){for(var t,e=[],n=this.el.children,r=0,i=n.length,a=this.options;rt.length)&&(e=t.length);for(var n=0,r=new Array(e);n0&&void 0!==arguments[0])||arguments[0];this.isLoading=t,t&&this.onLoading instanceof Function&&this.onLoading()},startReorder:function(){this.dragging=!0},endReorder:function(){this.dragging=!1},handleReorder:function(t){var e=this,n=Oe(t.target.querySelectorAll(".vue-table-move-handle"));if(n.length){var r=(0,Te.map)(n,(function(t){return t.dataset.id})),i={ids:JSON.stringify(r),startPosition:1+(this.currentPage>1?(this.currentPage-1)*this.perPage:0)};Craft.sendActionRequest("POST",this.reorderAction,{data:i}).then((function(t){Craft.cp.displayNotice(Craft.escapeHtml(e.reorderSuccessMessage))}))}else Craft.cp.displayError(Craft.escapeHtml(this.reorderFailMessage))},addCheck:function(t){-1===this.checks.indexOf(t)&&(this.checks.length>=1&&!this.allowMultipleSelections&&(this.checks=[]),this.checks.push(t)),this.handleOnSelectCallback(this.checks)},removeCheck:function(t){var e=this.checks.indexOf(t);e>=0&&this.checks.splice(e,1),this.handleOnSelectCallback(this.checks)},handleSearch:(0,Te.debounce)((function(){this.$refs.vuetable&&this.$refs.vuetable.gotoPage(1),this.reload()}),350),handleSelectAll:function(){var t=this,e=this.$refs.vuetable.tableData,n=e.length-this.disabledCheckboxesCount;this.checks.length!=n?e.forEach((function(e){t.checkboxStatus instanceof Function&&t.checkboxStatus(e)&&t.addCheck(e.id)})):this.checks=[],this.handleOnSelectCallback(this.checks)},handleDetailRow:function(t){this.$refs.vuetable.toggleDetailRow(t)},deselectAll:function(){this.checks=[],this.handleOnSelectCallback(this.checks)},reload:function(){this.isLoading=!0,this.deselectAll(),this.$refs.vuetable.reload()},remove:function(t,e){this.isLoading=!0,this.apiUrl?(this.deselectAll(),this.$refs.vuetable.reload()):(Vue.delete(this.$refs.vuetable.tableData,t),this.removeCheck(e),this.$refs.vuetable.refresh()),this.deleteCallback&&"[object Function]"==={}.toString.call(this.deleteCallback)&&this.deleteCallback(e),this.isLoading=!1},onLoadSuccess:function(t){if(t&&t.data&&t.data.data){var e=t.data.data;this.$emit("data",e),this.onData instanceof Function&&this.onData(e)}},onPaginationData:function(t){this.currentPage=t.current_page,this.$refs.pagination.setPaginationData(t),this.deselectAll(),this.onPagination instanceof Function&&this.onPagination(t)},onChangePage:function(t){this.$refs.vuetable.changePage(t),this.deselectAll()},handleOnSelectCallback:function(t){this.$emit("onSelect",t),this.onSelect instanceof Function&&this.onSelect(t)}},computed:{tableId:function(){return this.container?this.container.replace(/[#.]/g,""):""},apiUrl:function(){return this.tableDataEndpoint?Craft.getActionUrl(this.tableDataEndpoint):""},appendParams:function(){return this.searchTerm?{search:this.searchTerm}:{}},canDelete:function(){return!(this.minItems&&this.$refs.vuetable.tableData.length<=this.minItems)},canReorder:function(){return this.$refs.vuetable.tableData.length>1&&this.reorderAction&&this.$el.querySelector(this.tableBodySelector)&&!this.$refs.vuetable.tablePagination},detailRowComponent:function(){return this.tableDataEndpoint||this.tableData&&0!=this.tableData.length&&this.tableData.some((function(t){return Object.keys(t).indexOf("detail")>=0}))?this.detailRow:""},disabledCheckboxesCount:function(){var t=this,e=0;return this.$refs.vuetable.tableData.length&&(e=this.$refs.vuetable.tableData.filter((function(e){return!t.checkboxStatus(e)})).length),e},fields:function(){var t=this,e=[];if(this.checkboxes){var n="";this.allowMultipleSelections&&(n=''),e.push({name:"__slot:checkbox",titleClass:"thin",title:n,dataClass:"checkbox-cell"})}var r=(0,Te.map)(this.columns,(function(e){return t.reorderAction&&e.hasOwnProperty("sortField")&&delete e.sortField,e.title=Craft.escapeHtml(e.title),e}));return e=[].concat(Oe(e),Oe(r)),this.reorderAction&&e.push({name:"__slot:reorder",title:"",titleClass:"thin"}),this.deleteAction&&e.push({name:"__slot:delete",titleClass:"thin"}),e},searchPlaceholderText:function(){return Craft.escapeHtml(this.searchPlaceholder)},showToolbar:function(){return this.actions.length||this.search&&!this.tableData.length},tableCss:function(){var t=this.tableClass;return this.dragging&&(t+=" vue-admin-table-dragging"),{ascendingClass:"ordered asc",descendingClass:"ordered desc",sortableIcon:"orderable",handleIcon:"move icon",loadingClass:"loading",tableClass:t}}},watch:{checks:function(){if(this.selectAll){var t=this.selectAll.querySelector(".checkbox");this.checks.length&&this.checks.length==this.$refs.vuetable.tableData.length?(t.classList.add("checked"),t.classList.remove("indeterminate")):this.checks.length&&this.checks.length!=this.$refs.vuetable.tableData.length?(t.classList.remove("checked"),t.classList.add("indeterminate")):(t.classList.remove("checked"),t.classList.remove("indeterminate"))}},dragging:function(t){document.querySelector("header#header").style.pointerEvents=t?"none":""}}},Me=Ie,Re=(n(167),l(Me,(function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"vue-admin-table",class:{"vue-admin-table-padded":t.padded},attrs:{id:t.tableId}},[n("div",{directives:[{name:"show",rawName:"v-show",value:t.showToolbar,expression:"showToolbar"}],staticClass:"toolbar"},[n("div",{staticClass:"flex flex-nowrap"},[t._l(t.actions,(function(e,r){return n("div",{key:r},[n("admin-table-action-button",{attrs:{label:e.label,icon:e.icon,action:e.action,actions:e.actions,"allow-multiple":e.allowMultiple,ids:t.checks,enabled:!!t.checks.length,error:e.error,ajax:e.ajax},on:{reload:t.reload}})],1)})),t._v(" "),t.search&&!t.tableData.length?n("div",{staticClass:"flex-grow texticon search icon clearable"},[n("input",{directives:[{name:"model",rawName:"v-model",value:t.searchTerm,expression:"searchTerm"}],staticClass:"text fullwidth",attrs:{type:"text",autocomplete:"off",placeholder:t.searchPlaceholderText},domProps:{value:t.searchTerm},on:{input:[function(e){e.target.composing||(t.searchTerm=e.target.value)},t.handleSearch]}}),t._v(" "),n("div",{staticClass:"clear hidden",attrs:{title:t.searchClearTitle}})]):t._e(),t._v(" "),t.buttons&&t.buttons.length?n("div",{staticClass:"vue-admin-table-buttons"},[n("div",{staticClass:"flex flex-nowrap"},t._l(t.buttons,(function(e,r){return n("div",{key:r},[n("admin-table-button",{attrs:{label:e.label,icon:e.icon,href:e.href,"btn-class":e.class,enabled:!t.isLoading&&(null==e.enabled||e.enabled)}})],1)})),0)]):t._e()],2)]),t._v(" "),n("div",{class:{"content-pane":t.fullPage}},[this.isEmpty?n("div",{staticClass:"zilch"},[n("p",[t._v(t._s(t.emptyMessage))])]):t._e(),t._v(" "),n("div",{staticClass:"tableview",class:{loading:t.isLoading,hidden:this.isEmpty}},[n("div",{class:{"vue-admin-tablepane":!0,tablepane:t.fullPane}},[n("vuetable",{ref:"vuetable",attrs:{"append-params":t.appendParams,"api-mode":!!t.apiUrl,"api-url":t.apiUrl,css:t.tableCss,data:t.tableData,"detail-row-component":t.detailRowComponent,fields:t.fields,"per-page":t.perPage,"pagination-path":"pagination"},on:{"vuetable:loaded":t.init,"vuetable:loading":t.loading,"vuetable:pagination-data":t.onPaginationData,"vuetable:load-success":t.onLoadSuccess},scopedSlots:t._u([{key:"checkbox",fn:function(e){return[n("admin-table-checkbox",{attrs:{id:e.rowData.id,checks:t.checks,status:t.checkboxStatus(e.rowData)},on:{addCheck:t.addCheck,removeCheck:t.removeCheck}})]}},{key:"title",fn:function(e){return[void 0!==e.rowData.status?n("span",{staticClass:"status",class:{enabled:e.rowData.status}}):t._e(),t._v(" "),e.rowData.url?n("a",{class:{"cell-bold":void 0===e.rowData.status},attrs:{href:e.rowData.url}},[t._v(t._s(e.rowData.title))]):n("span",{class:{"cell-bold":void 0===e.rowData.status}},[t._v(t._s(e.rowData.title))])]}},{key:"handle",fn:function(t){return[n("admin-table-copy-text-button",{key:t.rowData.id,attrs:{value:t.rowData.handle}})]}},{key:"menu",fn:function(e){return[e.rowData.menu.showItems?[n("a",{attrs:{href:e.rowData.menu.url}},[t._v(t._s(e.rowData.menu.label)+" ("+t._s(e.rowData.menu.items.length)+")")]),t._v(" "),n("a",{staticClass:"menubtn",attrs:{title:e.rowData.menu.label}}),t._v(" "),n("div",{staticClass:"menu"},[n("ul",t._l(e.rowData.menu.items,(function(e,r){return n("li",{key:r},[n("a",{attrs:{href:e.url}},[t._v(t._s(e.label))])])})),0)])]:[n("a",{attrs:{href:e.rowData.menu.url}},[t._v(t._s(e.rowData.menu.label))])]]}},{key:"detail",fn:function(e){return[e.rowData.detail.content&&e.rowData.detail.handle?n("div",{staticClass:"detail-cursor-pointer",domProps:{innerHTML:t._s(e.rowData.detail.handle)},on:{click:function(n){return t.handleDetailRow(e.rowData.id)}}}):t._e(),t._v(" "),!e.rowData.detail.content||e.rowData.detail.handle&&null!=e.rowData.detail.handle||!Object.keys(e.rowData.detail.content).length&&!e.rowData.detail.content.length?t._e():n("div",{staticClass:"detail-cursor-pointer",attrs:{"data-icon":"info",title:e.rowData.detail.title},on:{click:function(n){return t.handleDetailRow(e.rowData.id)}}})]}},{key:"reorder",fn:function(e){return[n("i",{staticClass:"move icon vue-table-move-handle",class:{disabled:!t.canReorder},attrs:{"data-id":e.rowData.id}})]}},{key:"delete",fn:function(e){return[null==e.rowData._showDelete||1==e.rowData._showDelete?n("admin-table-delete-button",{attrs:{id:e.rowData.id,name:e.rowData.title,before:t.beforeDelete,"success-message":t.deleteSuccessMessage,"confirmation-message":t.deleteConfirmationMessage,"fail-message":t.deleteFailMessage,"action-url":t.deleteAction,disabled:!t.canDelete},on:{loading:function(e){return t.loading()},finishloading:function(e){return t.loading(!1)},reload:function(n){return t.remove(e.rowIndex,e.rowData.id)}}}):t._e()]}}])})],1),t._v(" "),n("admin-table-pagination",{ref:"pagination",attrs:{itemLabels:t.itemLabels},on:{"vuetable-pagination:change-page":t.onChangePage}})],1)])])}),[],!1,null,null,null)),je=Re.exports;Craft.VueAdminTable=Garnish.Base.extend({init:function(t){this.setSettings(t,Craft.VueAdminTable.defaults);var n=this.settings;return new(e())({components:{AdminTable:je},data:function(){return{}},render:function(t){return t(je,{props:n})}}).$mount(this.settings.container)}},{defaults:{actions:[],checkboxes:!1,checkboxStatus:function(){return!0},columns:[],container:null,deleteAction:null,reorderAction:null,reorderSuccessMessage:Craft.t("app","Items reordered."),reorderFailMessage:Craft.t("app","Couldn’t reorder items."),search:!1,searchPlaceholder:Craft.t("app","Search"),buttons:[],tableData:[],tableDataEndpoint:null,onLoaded:$.noop,onLoading:$.noop,onData:$.noop,onPagination:$.noop,onSelect:$.noop}})}()}(); +!function(){var t={500:function(t,e,n){var r;t=n.nmd(t),function(){var i,a="Expected a function",o="__lodash_hash_undefined__",l="__lodash_placeholder__",s=32,u=128,c=1/0,f=9007199254740991,h=NaN,d=4294967295,p=[["ary",u],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",s],["partialRight",64],["rearg",256]],v="[object Arguments]",g="[object Array]",b="[object Boolean]",m="[object Date]",_="[object Error]",y="[object Function]",w="[object GeneratorFunction]",C="[object Map]",k="[object Number]",x="[object Object]",S="[object Promise]",D="[object RegExp]",P="[object Set]",E="[object String]",T="[object Symbol]",O="[object WeakMap]",A="[object ArrayBuffer]",I="[object DataView]",M="[object Float32Array]",R="[object Float64Array]",j="[object Int8Array]",F="[object Int16Array]",N="[object Int32Array]",B="[object Uint8Array]",L="[object Uint8ClampedArray]",$="[object Uint16Array]",H="[object Uint32Array]",z=/\b__p \+= '';/g,U=/\b(__p \+=) '' \+/g,W=/(__e\(.*?\)|\b__t\)) \+\n'';/g,q=/&(?:amp|lt|gt|quot|#39);/g,V=/[&<>"']/g,Y=RegExp(q.source),X=RegExp(V.source),Z=/<%-([\s\S]+?)%>/g,G=/<%([\s\S]+?)%>/g,K=/<%=([\s\S]+?)%>/g,J=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Q=/^\w*$/,tt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,et=/[\\^$.*+?()[\]{}|]/g,nt=RegExp(et.source),rt=/^\s+/,it=/\s/,at=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,ot=/\{\n\/\* \[wrapped with (.+)\] \*/,lt=/,? & /,st=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ut=/[()=,{}\[\]\/\s]/,ct=/\\(\\)?/g,ft=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,ht=/\w*$/,dt=/^[-+]0x[0-9a-f]+$/i,pt=/^0b[01]+$/i,vt=/^\[object .+?Constructor\]$/,gt=/^0o[0-7]+$/i,bt=/^(?:0|[1-9]\d*)$/,mt=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,_t=/($^)/,yt=/['\n\r\u2028\u2029\\]/g,wt="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Ct="a-z\\xdf-\\xf6\\xf8-\\xff",kt="A-Z\\xc0-\\xd6\\xd8-\\xde",xt="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",St="["+xt+"]",Dt="["+wt+"]",Pt="\\d+",Et="["+Ct+"]",Tt="[^\\ud800-\\udfff"+xt+Pt+"\\u2700-\\u27bf"+Ct+kt+"]",Ot="\\ud83c[\\udffb-\\udfff]",At="[^\\ud800-\\udfff]",It="(?:\\ud83c[\\udde6-\\uddff]){2}",Mt="[\\ud800-\\udbff][\\udc00-\\udfff]",Rt="["+kt+"]",jt="(?:"+Et+"|"+Tt+")",Ft="(?:"+Rt+"|"+Tt+")",Nt="(?:['’](?:d|ll|m|re|s|t|ve))?",Bt="(?:['’](?:D|LL|M|RE|S|T|VE))?",Lt="(?:"+Dt+"|"+Ot+")?",$t="[\\ufe0e\\ufe0f]?",Ht=$t+Lt+"(?:\\u200d(?:"+[At,It,Mt].join("|")+")"+$t+Lt+")*",zt="(?:"+["[\\u2700-\\u27bf]",It,Mt].join("|")+")"+Ht,Ut="(?:"+[At+Dt+"?",Dt,It,Mt,"[\\ud800-\\udfff]"].join("|")+")",Wt=RegExp("['’]","g"),qt=RegExp(Dt,"g"),Vt=RegExp(Ot+"(?="+Ot+")|"+Ut+Ht,"g"),Yt=RegExp([Rt+"?"+Et+"+"+Nt+"(?="+[St,Rt,"$"].join("|")+")",Ft+"+"+Bt+"(?="+[St,Rt+jt,"$"].join("|")+")",Rt+"?"+jt+"+"+Nt,Rt+"+"+Bt,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Pt,zt].join("|"),"g"),Xt=RegExp("[\\u200d\\ud800-\\udfff"+wt+"\\ufe0e\\ufe0f]"),Zt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Gt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Kt=-1,Jt={};Jt[M]=Jt[R]=Jt[j]=Jt[F]=Jt[N]=Jt[B]=Jt[L]=Jt[$]=Jt[H]=!0,Jt[v]=Jt[g]=Jt[A]=Jt[b]=Jt[I]=Jt[m]=Jt[_]=Jt[y]=Jt[C]=Jt[k]=Jt[x]=Jt[D]=Jt[P]=Jt[E]=Jt[O]=!1;var Qt={};Qt[v]=Qt[g]=Qt[A]=Qt[I]=Qt[b]=Qt[m]=Qt[M]=Qt[R]=Qt[j]=Qt[F]=Qt[N]=Qt[C]=Qt[k]=Qt[x]=Qt[D]=Qt[P]=Qt[E]=Qt[T]=Qt[B]=Qt[L]=Qt[$]=Qt[H]=!0,Qt[_]=Qt[y]=Qt[O]=!1;var te={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},ee=parseFloat,ne=parseInt,re="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,ie="object"==typeof self&&self&&self.Object===Object&&self,ae=re||ie||Function("return this")(),oe=e&&!e.nodeType&&e,le=oe&&t&&!t.nodeType&&t,se=le&&le.exports===oe,ue=se&&re.process,ce=function(){try{return le&&le.require&&le.require("util").types||ue&&ue.binding&&ue.binding("util")}catch(t){}}(),fe=ce&&ce.isArrayBuffer,he=ce&&ce.isDate,de=ce&&ce.isMap,pe=ce&&ce.isRegExp,ve=ce&&ce.isSet,ge=ce&&ce.isTypedArray;function be(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function me(t,e,n,r){for(var i=-1,a=null==t?0:t.length;++i-1}function xe(t,e,n){for(var r=-1,i=null==t?0:t.length;++r-1;);return n}function Ye(t,e){for(var n=t.length;n--&&Me(e,t[n],0)>-1;);return n}function Xe(t,e){for(var n=t.length,r=0;n--;)t[n]===e&&++r;return r}var Ze=Be({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),Ge=Be({"&":"&","<":"<",">":">",'"':""","'":"'"});function Ke(t){return"\\"+te[t]}function Je(t){return Xt.test(t)}function Qe(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}function tn(t,e){return function(n){return t(e(n))}}function en(t,e){for(var n=-1,r=t.length,i=0,a=[];++n",""":'"',"'":"'"}),un=function t(e){var n,r=(e=null==e?ae:un.defaults(ae.Object(),e,un.pick(ae,Gt))).Array,it=e.Date,wt=e.Error,Ct=e.Function,kt=e.Math,xt=e.Object,St=e.RegExp,Dt=e.String,Pt=e.TypeError,Et=r.prototype,Tt=Ct.prototype,Ot=xt.prototype,At=e["__core-js_shared__"],It=Tt.toString,Mt=Ot.hasOwnProperty,Rt=0,jt=(n=/[^.]+$/.exec(At&&At.keys&&At.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",Ft=Ot.toString,Nt=It.call(xt),Bt=ae._,Lt=St("^"+It.call(Mt).replace(et,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),$t=se?e.Buffer:i,Ht=e.Symbol,zt=e.Uint8Array,Ut=$t?$t.allocUnsafe:i,Vt=tn(xt.getPrototypeOf,xt),Xt=xt.create,te=Ot.propertyIsEnumerable,re=Et.splice,ie=Ht?Ht.isConcatSpreadable:i,oe=Ht?Ht.iterator:i,le=Ht?Ht.toStringTag:i,ue=function(){try{var t=ua(xt,"defineProperty");return t({},"",{}),t}catch(t){}}(),ce=e.clearTimeout!==ae.clearTimeout&&e.clearTimeout,Oe=it&&it.now!==ae.Date.now&&it.now,Be=e.setTimeout!==ae.setTimeout&&e.setTimeout,cn=kt.ceil,fn=kt.floor,hn=xt.getOwnPropertySymbols,dn=$t?$t.isBuffer:i,pn=e.isFinite,vn=Et.join,gn=tn(xt.keys,xt),bn=kt.max,mn=kt.min,_n=it.now,yn=e.parseInt,wn=kt.random,Cn=Et.reverse,kn=ua(e,"DataView"),xn=ua(e,"Map"),Sn=ua(e,"Promise"),Dn=ua(e,"Set"),Pn=ua(e,"WeakMap"),En=ua(xt,"create"),Tn=Pn&&new Pn,On={},An=Ba(kn),In=Ba(xn),Mn=Ba(Sn),Rn=Ba(Dn),jn=Ba(Pn),Fn=Ht?Ht.prototype:i,Nn=Fn?Fn.valueOf:i,Bn=Fn?Fn.toString:i;function Ln(t){if(nl(t)&&!qo(t)&&!(t instanceof Un)){if(t instanceof zn)return t;if(Mt.call(t,"__wrapped__"))return La(t)}return new zn(t)}var $n=function(){function t(){}return function(e){if(!el(e))return{};if(Xt)return Xt(e);t.prototype=e;var n=new t;return t.prototype=i,n}}();function Hn(){}function zn(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=i}function Un(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=d,this.__views__=[]}function Wn(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e=e?t:e)),t}function lr(t,e,n,r,a,o){var l,s=1&e,u=2&e,c=4&e;if(n&&(l=a?n(t,r,a,o):n(t)),l!==i)return l;if(!el(t))return t;var f=qo(t);if(f){if(l=function(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&Mt.call(t,"index")&&(n.index=t.index,n.input=t.input),n}(t),!s)return Pi(t,l)}else{var h=ha(t),d=h==y||h==w;if(Zo(t))return wi(t,s);if(h==x||h==v||d&&!a){if(l=u||d?{}:pa(t),!s)return u?function(t,e){return Ei(t,fa(t),e)}(t,function(t,e){return t&&Ei(e,Ml(e),t)}(l,t)):function(t,e){return Ei(t,ca(t),e)}(t,rr(l,t))}else{if(!Qt[h])return a?t:{};l=function(t,e,n){var r,i=t.constructor;switch(e){case A:return Ci(t);case b:case m:return new i(+t);case I:return function(t,e){var n=e?Ci(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case M:case R:case j:case F:case N:case B:case L:case $:case H:return ki(t,n);case C:return new i;case k:case E:return new i(t);case D:return function(t){var e=new t.constructor(t.source,ht.exec(t));return e.lastIndex=t.lastIndex,e}(t);case P:return new i;case T:return r=t,Nn?xt(Nn.call(r)):{}}}(t,h,s)}}o||(o=new Xn);var p=o.get(t);if(p)return p;o.set(t,l),ll(t)?t.forEach((function(r){l.add(lr(r,e,n,r,t,o))})):rl(t)&&t.forEach((function(r,i){l.set(i,lr(r,e,n,i,t,o))}));var g=f?i:(c?u?na:ea:u?Ml:Il)(t);return _e(g||t,(function(r,i){g&&(r=t[i=r]),tr(l,i,lr(r,e,n,i,t,o))})),l}function sr(t,e,n){var r=n.length;if(null==t)return!r;for(t=xt(t);r--;){var a=n[r],o=e[a],l=t[a];if(l===i&&!(a in t)||!o(l))return!1}return!0}function ur(t,e,n){if("function"!=typeof t)throw new Pt(a);return Ta((function(){t.apply(i,n)}),e)}function cr(t,e,n,r){var i=-1,a=ke,o=!0,l=t.length,s=[],u=e.length;if(!l)return s;n&&(e=Se(e,Ue(n))),r?(a=xe,o=!1):e.length>=200&&(a=qe,o=!1,e=new Yn(e));t:for(;++i-1},qn.prototype.set=function(t,e){var n=this.__data__,r=er(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this},Vn.prototype.clear=function(){this.size=0,this.__data__={hash:new Wn,map:new(xn||qn),string:new Wn}},Vn.prototype.delete=function(t){var e=la(this,t).delete(t);return this.size-=e?1:0,e},Vn.prototype.get=function(t){return la(this,t).get(t)},Vn.prototype.has=function(t){return la(this,t).has(t)},Vn.prototype.set=function(t,e){var n=la(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this},Yn.prototype.add=Yn.prototype.push=function(t){return this.__data__.set(t,o),this},Yn.prototype.has=function(t){return this.__data__.has(t)},Xn.prototype.clear=function(){this.__data__=new qn,this.size=0},Xn.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},Xn.prototype.get=function(t){return this.__data__.get(t)},Xn.prototype.has=function(t){return this.__data__.has(t)},Xn.prototype.set=function(t,e){var n=this.__data__;if(n instanceof qn){var r=n.__data__;if(!xn||r.length<199)return r.push([t,e]),this.size=++n.size,this;n=this.__data__=new Vn(r)}return n.set(t,e),this.size=n.size,this};var fr=Ai(_r),hr=Ai(yr,!0);function dr(t,e){var n=!0;return fr(t,(function(t,r,i){return n=!!e(t,r,i)})),n}function pr(t,e,n){for(var r=-1,a=t.length;++r0&&n(l)?e>1?gr(l,e-1,n,r,i):De(i,l):r||(i[i.length]=l)}return i}var br=Ii(),mr=Ii(!0);function _r(t,e){return t&&br(t,e,Il)}function yr(t,e){return t&&mr(t,e,Il)}function wr(t,e){return Ce(e,(function(e){return Jo(t[e])}))}function Cr(t,e){for(var n=0,r=(e=bi(e,t)).length;null!=t&&ne}function Dr(t,e){return null!=t&&Mt.call(t,e)}function Pr(t,e){return null!=t&&e in xt(t)}function Er(t,e,n){for(var a=n?xe:ke,o=t[0].length,l=t.length,s=l,u=r(l),c=1/0,f=[];s--;){var h=t[s];s&&e&&(h=Se(h,Ue(e))),c=mn(h.length,c),u[s]=!n&&(e||o>=120&&h.length>=120)?new Yn(s&&h):i}h=t[0];var d=-1,p=u[0];t:for(;++d=l?s:s*("desc"==n[r]?-1:1)}return t.index-e.index}(t,e,n)}));r--;)t[r]=t[r].value;return t}(i)}function Ur(t,e,n){for(var r=-1,i=e.length,a={};++r-1;)l!==t&&re.call(l,s,1),re.call(t,s,1);return t}function qr(t,e){for(var n=t?e.length:0,r=n-1;n--;){var i=e[n];if(n==r||i!==a){var a=i;ga(i)?re.call(t,i,1):ui(t,i)}}return t}function Vr(t,e){return t+fn(wn()*(e-t+1))}function Yr(t,e){var n="";if(!t||e<1||e>f)return n;do{e%2&&(n+=t),(e=fn(e/2))&&(t+=t)}while(e);return n}function Xr(t,e){return Oa(xa(t,e,is),t+"")}function Zr(t){return Gn(Hl(t))}function Gr(t,e){var n=Hl(t);return Ma(n,or(e,0,n.length))}function Kr(t,e,n,r){if(!el(t))return t;for(var a=-1,o=(e=bi(e,t)).length,l=o-1,s=t;null!=s&&++aa?0:a+e),(n=n>a?a:n)<0&&(n+=a),a=e>n?0:n-e>>>0,e>>>=0;for(var o=r(a);++i>>1,o=t[a];null!==o&&!ul(o)&&(n?o<=e:o=200){var u=e?null:Yi(t);if(u)return nn(u);o=!1,i=qe,s=new Yn}else s=e?[]:l;t:for(;++r=r?t:ei(t,e,n)}var yi=ce||function(t){return ae.clearTimeout(t)};function wi(t,e){if(e)return t.slice();var n=t.length,r=Ut?Ut(n):new t.constructor(n);return t.copy(r),r}function Ci(t){var e=new t.constructor(t.byteLength);return new zt(e).set(new zt(t)),e}function ki(t,e){var n=e?Ci(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function xi(t,e){if(t!==e){var n=t!==i,r=null===t,a=t==t,o=ul(t),l=e!==i,s=null===e,u=e==e,c=ul(e);if(!s&&!c&&!o&&t>e||o&&l&&u&&!s&&!c||r&&l&&u||!n&&u||!a)return 1;if(!r&&!o&&!c&&t1?n[a-1]:i,l=a>2?n[2]:i;for(o=t.length>3&&"function"==typeof o?(a--,o):i,l&&ba(n[0],n[1],l)&&(o=a<3?i:o,a=1),e=xt(e);++r-1?a[o?e[l]:l]:i}}function Ni(t){return ta((function(e){var n=e.length,r=n,o=zn.prototype.thru;for(t&&e.reverse();r--;){var l=e[r];if("function"!=typeof l)throw new Pt(a);if(o&&!s&&"wrapper"==ia(l))var s=new zn([],!0)}for(r=s?r:n;++r1&&_.reverse(),d&&fs))return!1;var c=o.get(t),f=o.get(e);if(c&&f)return c==e&&f==t;var h=-1,d=!0,p=2&n?new Yn:i;for(o.set(t,e),o.set(e,t);++h-1&&t%1==0&&t1?"& ":"")+e[r],e=e.join(n>2?", ":" "),t.replace(at,"{\n/* [wrapped with "+e+"] */\n")}(r,function(t,e){return _e(p,(function(n){var r="_."+n[0];e&n[1]&&!ke(t,r)&&t.push(r)})),t.sort()}(function(t){var e=t.match(ot);return e?e[1].split(lt):[]}(r),n)))}function Ia(t){var e=0,n=0;return function(){var r=_n(),a=16-(r-n);if(n=r,a>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(i,arguments)}}function Ma(t,e){var n=-1,r=t.length,a=r-1;for(e=e===i?r:e;++n1?t[e-1]:i;return n="function"==typeof n?(t.pop(),n):i,ao(t,n)}));function ho(t){var e=Ln(t);return e.__chain__=!0,e}function po(t,e){return e(t)}var vo=ta((function(t){var e=t.length,n=e?t[0]:0,r=this.__wrapped__,a=function(e){return ar(e,t)};return!(e>1||this.__actions__.length)&&r instanceof Un&&ga(n)?((r=r.slice(n,+n+(e?1:0))).__actions__.push({func:po,args:[a],thisArg:i}),new zn(r,this.__chain__).thru((function(t){return e&&!t.length&&t.push(i),t}))):this.thru(a)})),go=Ti((function(t,e,n){Mt.call(t,n)?++t[n]:ir(t,n,1)})),bo=Fi(Ua),mo=Fi(Wa);function _o(t,e){return(qo(t)?_e:fr)(t,oa(e,3))}function yo(t,e){return(qo(t)?ye:hr)(t,oa(e,3))}var wo=Ti((function(t,e,n){Mt.call(t,n)?t[n].push(e):ir(t,n,[e])})),Co=Xr((function(t,e,n){var i=-1,a="function"==typeof e,o=Yo(t)?r(t.length):[];return fr(t,(function(t){o[++i]=a?be(e,t,n):Tr(t,e,n)})),o})),ko=Ti((function(t,e,n){ir(t,n,e)}));function xo(t,e){return(qo(t)?Se:Nr)(t,oa(e,3))}var So=Ti((function(t,e,n){t[n?0:1].push(e)}),(function(){return[[],[]]})),Do=Xr((function(t,e){if(null==t)return[];var n=e.length;return n>1&&ba(t,e[0],e[1])?e=[]:n>2&&ba(e[0],e[1],e[2])&&(e=[e[0]]),zr(t,gr(e,1),[])})),Po=Oe||function(){return ae.Date.now()};function Eo(t,e,n){return e=n?i:e,e=t&&null==e?t.length:e,Zi(t,u,i,i,i,i,e)}function To(t,e){var n;if("function"!=typeof e)throw new Pt(a);return t=vl(t),function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=i),n}}var Oo=Xr((function(t,e,n){var r=1;if(n.length){var i=en(n,aa(Oo));r|=s}return Zi(t,r,e,n,i)})),Ao=Xr((function(t,e,n){var r=3;if(n.length){var i=en(n,aa(Ao));r|=s}return Zi(e,r,t,n,i)}));function Io(t,e,n){var r,o,l,s,u,c,f=0,h=!1,d=!1,p=!0;if("function"!=typeof t)throw new Pt(a);function v(e){var n=r,a=o;return r=o=i,f=e,s=t.apply(a,n)}function g(t){return f=t,u=Ta(m,e),h?v(t):s}function b(t){var n=t-c;return c===i||n>=e||n<0||d&&t-f>=l}function m(){var t=Po();if(b(t))return _(t);u=Ta(m,function(t){var n=e-(t-c);return d?mn(n,l-(t-f)):n}(t))}function _(t){return u=i,p&&r?v(t):(r=o=i,s)}function y(){var t=Po(),n=b(t);if(r=arguments,o=this,c=t,n){if(u===i)return g(c);if(d)return yi(u),u=Ta(m,e),v(c)}return u===i&&(u=Ta(m,e)),s}return e=bl(e)||0,el(n)&&(h=!!n.leading,l=(d="maxWait"in n)?bn(bl(n.maxWait)||0,e):l,p="trailing"in n?!!n.trailing:p),y.cancel=function(){u!==i&&yi(u),f=0,r=c=o=u=i},y.flush=function(){return u===i?s:_(Po())},y}var Mo=Xr((function(t,e){return ur(t,1,e)})),Ro=Xr((function(t,e,n){return ur(t,bl(e)||0,n)}));function jo(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new Pt(a);var n=function(){var r=arguments,i=e?e.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var o=t.apply(this,r);return n.cache=a.set(i,o)||a,o};return n.cache=new(jo.Cache||Vn),n}function Fo(t){if("function"!=typeof t)throw new Pt(a);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}jo.Cache=Vn;var No=mi((function(t,e){var n=(e=1==e.length&&qo(e[0])?Se(e[0],Ue(oa())):Se(gr(e,1),Ue(oa()))).length;return Xr((function(r){for(var i=-1,a=mn(r.length,n);++i=e})),Wo=Or(function(){return arguments}())?Or:function(t){return nl(t)&&Mt.call(t,"callee")&&!te.call(t,"callee")},qo=r.isArray,Vo=fe?Ue(fe):function(t){return nl(t)&&xr(t)==A};function Yo(t){return null!=t&&tl(t.length)&&!Jo(t)}function Xo(t){return nl(t)&&Yo(t)}var Zo=dn||bs,Go=he?Ue(he):function(t){return nl(t)&&xr(t)==m};function Ko(t){if(!nl(t))return!1;var e=xr(t);return e==_||"[object DOMException]"==e||"string"==typeof t.message&&"string"==typeof t.name&&!al(t)}function Jo(t){if(!el(t))return!1;var e=xr(t);return e==y||e==w||"[object AsyncFunction]"==e||"[object Proxy]"==e}function Qo(t){return"number"==typeof t&&t==vl(t)}function tl(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=f}function el(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function nl(t){return null!=t&&"object"==typeof t}var rl=de?Ue(de):function(t){return nl(t)&&ha(t)==C};function il(t){return"number"==typeof t||nl(t)&&xr(t)==k}function al(t){if(!nl(t)||xr(t)!=x)return!1;var e=Vt(t);if(null===e)return!0;var n=Mt.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&It.call(n)==Nt}var ol=pe?Ue(pe):function(t){return nl(t)&&xr(t)==D},ll=ve?Ue(ve):function(t){return nl(t)&&ha(t)==P};function sl(t){return"string"==typeof t||!qo(t)&&nl(t)&&xr(t)==E}function ul(t){return"symbol"==typeof t||nl(t)&&xr(t)==T}var cl=ge?Ue(ge):function(t){return nl(t)&&tl(t.length)&&!!Jt[xr(t)]},fl=Wi(Fr),hl=Wi((function(t,e){return t<=e}));function dl(t){if(!t)return[];if(Yo(t))return sl(t)?on(t):Pi(t);if(oe&&t[oe])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[oe]());var e=ha(t);return(e==C?Qe:e==P?nn:Hl)(t)}function pl(t){return t?(t=bl(t))===c||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function vl(t){var e=pl(t),n=e%1;return e==e?n?e-n:e:0}function gl(t){return t?or(vl(t),0,d):0}function bl(t){if("number"==typeof t)return t;if(ul(t))return h;if(el(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=el(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=ze(t);var n=pt.test(t);return n||gt.test(t)?ne(t.slice(2),n?2:8):dt.test(t)?h:+t}function ml(t){return Ei(t,Ml(t))}function _l(t){return null==t?"":li(t)}var yl=Oi((function(t,e){if(wa(e)||Yo(e))Ei(e,Il(e),t);else for(var n in e)Mt.call(e,n)&&tr(t,n,e[n])})),wl=Oi((function(t,e){Ei(e,Ml(e),t)})),Cl=Oi((function(t,e,n,r){Ei(e,Ml(e),t,r)})),kl=Oi((function(t,e,n,r){Ei(e,Il(e),t,r)})),xl=ta(ar),Sl=Xr((function(t,e){t=xt(t);var n=-1,r=e.length,a=r>2?e[2]:i;for(a&&ba(e[0],e[1],a)&&(r=1);++n1),e})),Ei(t,na(t),n),r&&(n=lr(n,7,Ji));for(var i=e.length;i--;)ui(n,e[i]);return n})),Nl=ta((function(t,e){return null==t?{}:function(t,e){return Ur(t,e,(function(e,n){return El(t,n)}))}(t,e)}));function Bl(t,e){if(null==t)return{};var n=Se(na(t),(function(t){return[t]}));return e=oa(e),Ur(t,n,(function(t,n){return e(t,n[0])}))}var Ll=Xi(Il),$l=Xi(Ml);function Hl(t){return null==t?[]:We(t,Il(t))}var zl=Ri((function(t,e,n){return e=e.toLowerCase(),t+(n?Ul(e):e)}));function Ul(t){return Kl(_l(t).toLowerCase())}function Wl(t){return(t=_l(t))&&t.replace(mt,Ze).replace(qt,"")}var ql=Ri((function(t,e,n){return t+(n?"-":"")+e.toLowerCase()})),Vl=Ri((function(t,e,n){return t+(n?" ":"")+e.toLowerCase()})),Yl=Mi("toLowerCase"),Xl=Ri((function(t,e,n){return t+(n?"_":"")+e.toLowerCase()})),Zl=Ri((function(t,e,n){return t+(n?" ":"")+Kl(e)})),Gl=Ri((function(t,e,n){return t+(n?" ":"")+e.toUpperCase()})),Kl=Mi("toUpperCase");function Jl(t,e,n){return t=_l(t),(e=n?i:e)===i?function(t){return Zt.test(t)}(t)?function(t){return t.match(Yt)||[]}(t):function(t){return t.match(st)||[]}(t):t.match(e)||[]}var Ql=Xr((function(t,e){try{return be(t,i,e)}catch(t){return Ko(t)?t:new wt(t)}})),ts=ta((function(t,e){return _e(e,(function(e){e=Na(e),ir(t,e,Oo(t[e],t))})),t}));function es(t){return function(){return t}}var ns=Ni(),rs=Ni(!0);function is(t){return t}function as(t){return Rr("function"==typeof t?t:lr(t,1))}var os=Xr((function(t,e){return function(n){return Tr(n,t,e)}})),ls=Xr((function(t,e){return function(n){return Tr(t,n,e)}}));function ss(t,e,n){var r=Il(e),i=wr(e,r);null!=n||el(e)&&(i.length||!r.length)||(n=e,e=t,t=this,i=wr(e,Il(e)));var a=!(el(n)&&"chain"in n&&!n.chain),o=Jo(t);return _e(i,(function(n){var r=e[n];t[n]=r,o&&(t.prototype[n]=function(){var e=this.__chain__;if(a||e){var n=t(this.__wrapped__),i=n.__actions__=Pi(this.__actions__);return i.push({func:r,args:arguments,thisArg:t}),n.__chain__=e,n}return r.apply(t,De([this.value()],arguments))})})),t}function us(){}var cs=Hi(Se),fs=Hi(we),hs=Hi(Te);function ds(t){return ma(t)?Ne(Na(t)):function(t){return function(e){return Cr(e,t)}}(t)}var ps=Ui(),vs=Ui(!0);function gs(){return[]}function bs(){return!1}var ms,_s=$i((function(t,e){return t+e}),0),ys=Vi("ceil"),ws=$i((function(t,e){return t/e}),1),Cs=Vi("floor"),ks=$i((function(t,e){return t*e}),1),xs=Vi("round"),Ss=$i((function(t,e){return t-e}),0);return Ln.after=function(t,e){if("function"!=typeof e)throw new Pt(a);return t=vl(t),function(){if(--t<1)return e.apply(this,arguments)}},Ln.ary=Eo,Ln.assign=yl,Ln.assignIn=wl,Ln.assignInWith=Cl,Ln.assignWith=kl,Ln.at=xl,Ln.before=To,Ln.bind=Oo,Ln.bindAll=ts,Ln.bindKey=Ao,Ln.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return qo(t)?t:[t]},Ln.chain=ho,Ln.chunk=function(t,e,n){e=(n?ba(t,e,n):e===i)?1:bn(vl(e),0);var a=null==t?0:t.length;if(!a||e<1)return[];for(var o=0,l=0,s=r(cn(a/e));oa?0:a+n),(r=r===i||r>a?a:vl(r))<0&&(r+=a),r=n>r?0:gl(r);n>>0)?(t=_l(t))&&("string"==typeof e||null!=e&&!ol(e))&&!(e=li(e))&&Je(t)?_i(on(t),0,n):t.split(e,n):[]},Ln.spread=function(t,e){if("function"!=typeof t)throw new Pt(a);return e=null==e?0:bn(vl(e),0),Xr((function(n){var r=n[e],i=_i(n,0,e);return r&&De(i,r),be(t,this,i)}))},Ln.tail=function(t){var e=null==t?0:t.length;return e?ei(t,1,e):[]},Ln.take=function(t,e,n){return t&&t.length?ei(t,0,(e=n||e===i?1:vl(e))<0?0:e):[]},Ln.takeRight=function(t,e,n){var r=null==t?0:t.length;return r?ei(t,(e=r-(e=n||e===i?1:vl(e)))<0?0:e,r):[]},Ln.takeRightWhile=function(t,e){return t&&t.length?fi(t,oa(e,3),!1,!0):[]},Ln.takeWhile=function(t,e){return t&&t.length?fi(t,oa(e,3)):[]},Ln.tap=function(t,e){return e(t),t},Ln.throttle=function(t,e,n){var r=!0,i=!0;if("function"!=typeof t)throw new Pt(a);return el(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),Io(t,e,{leading:r,maxWait:e,trailing:i})},Ln.thru=po,Ln.toArray=dl,Ln.toPairs=Ll,Ln.toPairsIn=$l,Ln.toPath=function(t){return qo(t)?Se(t,Na):ul(t)?[t]:Pi(Fa(_l(t)))},Ln.toPlainObject=ml,Ln.transform=function(t,e,n){var r=qo(t),i=r||Zo(t)||cl(t);if(e=oa(e,4),null==n){var a=t&&t.constructor;n=i?r?new a:[]:el(t)&&Jo(a)?$n(Vt(t)):{}}return(i?_e:_r)(t,(function(t,r,i){return e(n,t,r,i)})),n},Ln.unary=function(t){return Eo(t,1)},Ln.union=eo,Ln.unionBy=no,Ln.unionWith=ro,Ln.uniq=function(t){return t&&t.length?si(t):[]},Ln.uniqBy=function(t,e){return t&&t.length?si(t,oa(e,2)):[]},Ln.uniqWith=function(t,e){return e="function"==typeof e?e:i,t&&t.length?si(t,i,e):[]},Ln.unset=function(t,e){return null==t||ui(t,e)},Ln.unzip=io,Ln.unzipWith=ao,Ln.update=function(t,e,n){return null==t?t:ci(t,e,gi(n))},Ln.updateWith=function(t,e,n,r){return r="function"==typeof r?r:i,null==t?t:ci(t,e,gi(n),r)},Ln.values=Hl,Ln.valuesIn=function(t){return null==t?[]:We(t,Ml(t))},Ln.without=oo,Ln.words=Jl,Ln.wrap=function(t,e){return Bo(gi(e),t)},Ln.xor=lo,Ln.xorBy=so,Ln.xorWith=uo,Ln.zip=co,Ln.zipObject=function(t,e){return pi(t||[],e||[],tr)},Ln.zipObjectDeep=function(t,e){return pi(t||[],e||[],Kr)},Ln.zipWith=fo,Ln.entries=Ll,Ln.entriesIn=$l,Ln.extend=wl,Ln.extendWith=Cl,ss(Ln,Ln),Ln.add=_s,Ln.attempt=Ql,Ln.camelCase=zl,Ln.capitalize=Ul,Ln.ceil=ys,Ln.clamp=function(t,e,n){return n===i&&(n=e,e=i),n!==i&&(n=(n=bl(n))==n?n:0),e!==i&&(e=(e=bl(e))==e?e:0),or(bl(t),e,n)},Ln.clone=function(t){return lr(t,4)},Ln.cloneDeep=function(t){return lr(t,5)},Ln.cloneDeepWith=function(t,e){return lr(t,5,e="function"==typeof e?e:i)},Ln.cloneWith=function(t,e){return lr(t,4,e="function"==typeof e?e:i)},Ln.conformsTo=function(t,e){return null==e||sr(t,e,Il(e))},Ln.deburr=Wl,Ln.defaultTo=function(t,e){return null==t||t!=t?e:t},Ln.divide=ws,Ln.endsWith=function(t,e,n){t=_l(t),e=li(e);var r=t.length,a=n=n===i?r:or(vl(n),0,r);return(n-=e.length)>=0&&t.slice(n,a)==e},Ln.eq=Ho,Ln.escape=function(t){return(t=_l(t))&&X.test(t)?t.replace(V,Ge):t},Ln.escapeRegExp=function(t){return(t=_l(t))&&nt.test(t)?t.replace(et,"\\$&"):t},Ln.every=function(t,e,n){var r=qo(t)?we:dr;return n&&ba(t,e,n)&&(e=i),r(t,oa(e,3))},Ln.find=bo,Ln.findIndex=Ua,Ln.findKey=function(t,e){return Ae(t,oa(e,3),_r)},Ln.findLast=mo,Ln.findLastIndex=Wa,Ln.findLastKey=function(t,e){return Ae(t,oa(e,3),yr)},Ln.floor=Cs,Ln.forEach=_o,Ln.forEachRight=yo,Ln.forIn=function(t,e){return null==t?t:br(t,oa(e,3),Ml)},Ln.forInRight=function(t,e){return null==t?t:mr(t,oa(e,3),Ml)},Ln.forOwn=function(t,e){return t&&_r(t,oa(e,3))},Ln.forOwnRight=function(t,e){return t&&yr(t,oa(e,3))},Ln.get=Pl,Ln.gt=zo,Ln.gte=Uo,Ln.has=function(t,e){return null!=t&&da(t,e,Dr)},Ln.hasIn=El,Ln.head=Va,Ln.identity=is,Ln.includes=function(t,e,n,r){t=Yo(t)?t:Hl(t),n=n&&!r?vl(n):0;var i=t.length;return n<0&&(n=bn(i+n,0)),sl(t)?n<=i&&t.indexOf(e,n)>-1:!!i&&Me(t,e,n)>-1},Ln.indexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=null==n?0:vl(n);return i<0&&(i=bn(r+i,0)),Me(t,e,i)},Ln.inRange=function(t,e,n){return e=pl(e),n===i?(n=e,e=0):n=pl(n),function(t,e,n){return t>=mn(e,n)&&t=-9007199254740991&&t<=f},Ln.isSet=ll,Ln.isString=sl,Ln.isSymbol=ul,Ln.isTypedArray=cl,Ln.isUndefined=function(t){return t===i},Ln.isWeakMap=function(t){return nl(t)&&ha(t)==O},Ln.isWeakSet=function(t){return nl(t)&&"[object WeakSet]"==xr(t)},Ln.join=function(t,e){return null==t?"":vn.call(t,e)},Ln.kebabCase=ql,Ln.last=Ga,Ln.lastIndexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var a=r;return n!==i&&(a=(a=vl(n))<0?bn(r+a,0):mn(a,r-1)),e==e?function(t,e,n){for(var r=n+1;r--;)if(t[r]===e)return r;return r}(t,e,a):Ie(t,je,a,!0)},Ln.lowerCase=Vl,Ln.lowerFirst=Yl,Ln.lt=fl,Ln.lte=hl,Ln.max=function(t){return t&&t.length?pr(t,is,Sr):i},Ln.maxBy=function(t,e){return t&&t.length?pr(t,oa(e,2),Sr):i},Ln.mean=function(t){return Fe(t,is)},Ln.meanBy=function(t,e){return Fe(t,oa(e,2))},Ln.min=function(t){return t&&t.length?pr(t,is,Fr):i},Ln.minBy=function(t,e){return t&&t.length?pr(t,oa(e,2),Fr):i},Ln.stubArray=gs,Ln.stubFalse=bs,Ln.stubObject=function(){return{}},Ln.stubString=function(){return""},Ln.stubTrue=function(){return!0},Ln.multiply=ks,Ln.nth=function(t,e){return t&&t.length?Hr(t,vl(e)):i},Ln.noConflict=function(){return ae._===this&&(ae._=Bt),this},Ln.noop=us,Ln.now=Po,Ln.pad=function(t,e,n){t=_l(t);var r=(e=vl(e))?an(t):0;if(!e||r>=e)return t;var i=(e-r)/2;return zi(fn(i),n)+t+zi(cn(i),n)},Ln.padEnd=function(t,e,n){t=_l(t);var r=(e=vl(e))?an(t):0;return e&&re){var r=t;t=e,e=r}if(n||t%1||e%1){var a=wn();return mn(t+a*(e-t+ee("1e-"+((a+"").length-1))),e)}return Vr(t,e)},Ln.reduce=function(t,e,n){var r=qo(t)?Pe:Le,i=arguments.length<3;return r(t,oa(e,4),n,i,fr)},Ln.reduceRight=function(t,e,n){var r=qo(t)?Ee:Le,i=arguments.length<3;return r(t,oa(e,4),n,i,hr)},Ln.repeat=function(t,e,n){return e=(n?ba(t,e,n):e===i)?1:vl(e),Yr(_l(t),e)},Ln.replace=function(){var t=arguments,e=_l(t[0]);return t.length<3?e:e.replace(t[1],t[2])},Ln.result=function(t,e,n){var r=-1,a=(e=bi(e,t)).length;for(a||(a=1,t=i);++rf)return[];var n=d,r=mn(t,d);e=oa(e),t-=d;for(var i=He(r,e);++n=o)return t;var s=n-an(r);if(s<1)return r;var u=l?_i(l,0,s).join(""):t.slice(0,s);if(a===i)return u+r;if(l&&(s+=u.length-s),ol(a)){if(t.slice(s).search(a)){var c,f=u;for(a.global||(a=St(a.source,_l(ht.exec(a))+"g")),a.lastIndex=0;c=a.exec(f);)var h=c.index;u=u.slice(0,h===i?s:h)}}else if(t.indexOf(li(a),s)!=s){var d=u.lastIndexOf(a);d>-1&&(u=u.slice(0,d))}return u+r},Ln.unescape=function(t){return(t=_l(t))&&Y.test(t)?t.replace(q,sn):t},Ln.uniqueId=function(t){var e=++Rt;return _l(t)+e},Ln.upperCase=Gl,Ln.upperFirst=Kl,Ln.each=_o,Ln.eachRight=yo,Ln.first=Va,ss(Ln,(ms={},_r(Ln,(function(t,e){Mt.call(Ln.prototype,e)||(ms[e]=t)})),ms),{chain:!1}),Ln.VERSION="4.17.21",_e(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(t){Ln[t].placeholder=Ln})),_e(["drop","take"],(function(t,e){Un.prototype[t]=function(n){n=n===i?1:bn(vl(n),0);var r=this.__filtered__&&!e?new Un(this):this.clone();return r.__filtered__?r.__takeCount__=mn(n,r.__takeCount__):r.__views__.push({size:mn(n,d),type:t+(r.__dir__<0?"Right":"")}),r},Un.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}})),_e(["filter","map","takeWhile"],(function(t,e){var n=e+1,r=1==n||3==n;Un.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:oa(t,3),type:n}),e.__filtered__=e.__filtered__||r,e}})),_e(["head","last"],(function(t,e){var n="take"+(e?"Right":"");Un.prototype[t]=function(){return this[n](1).value()[0]}})),_e(["initial","tail"],(function(t,e){var n="drop"+(e?"":"Right");Un.prototype[t]=function(){return this.__filtered__?new Un(this):this[n](1)}})),Un.prototype.compact=function(){return this.filter(is)},Un.prototype.find=function(t){return this.filter(t).head()},Un.prototype.findLast=function(t){return this.reverse().find(t)},Un.prototype.invokeMap=Xr((function(t,e){return"function"==typeof t?new Un(this):this.map((function(n){return Tr(n,t,e)}))})),Un.prototype.reject=function(t){return this.filter(Fo(oa(t)))},Un.prototype.slice=function(t,e){t=vl(t);var n=this;return n.__filtered__&&(t>0||e<0)?new Un(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),e!==i&&(n=(e=vl(e))<0?n.dropRight(-e):n.take(e-t)),n)},Un.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},Un.prototype.toArray=function(){return this.take(d)},_r(Un.prototype,(function(t,e){var n=/^(?:filter|find|map|reject)|While$/.test(e),r=/^(?:head|last)$/.test(e),a=Ln[r?"take"+("last"==e?"Right":""):e],o=r||/^find/.test(e);a&&(Ln.prototype[e]=function(){var e=this.__wrapped__,l=r?[1]:arguments,s=e instanceof Un,u=l[0],c=s||qo(e),f=function(t){var e=a.apply(Ln,De([t],l));return r&&h?e[0]:e};c&&n&&"function"==typeof u&&1!=u.length&&(s=c=!1);var h=this.__chain__,d=!!this.__actions__.length,p=o&&!h,v=s&&!d;if(!o&&c){e=v?e:new Un(this);var g=t.apply(e,l);return g.__actions__.push({func:po,args:[f],thisArg:i}),new zn(g,h)}return p&&v?t.apply(this,l):(g=this.thru(f),p?r?g.value()[0]:g.value():g)})})),_e(["pop","push","shift","sort","splice","unshift"],(function(t){var e=Et[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",r=/^(?:pop|shift)$/.test(t);Ln.prototype[t]=function(){var t=arguments;if(r&&!this.__chain__){var i=this.value();return e.apply(qo(i)?i:[],t)}return this[n]((function(n){return e.apply(qo(n)?n:[],t)}))}})),_r(Un.prototype,(function(t,e){var n=Ln[e];if(n){var r=n.name+"";Mt.call(On,r)||(On[r]=[]),On[r].push({name:e,func:n})}})),On[Bi(i,2).name]=[{name:"wrapper",func:i}],Un.prototype.clone=function(){var t=new Un(this.__wrapped__);return t.__actions__=Pi(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=Pi(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=Pi(this.__views__),t},Un.prototype.reverse=function(){if(this.__filtered__){var t=new Un(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},Un.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=qo(t),r=e<0,i=n?t.length:0,a=function(t,e,n){for(var r=-1,i=n.length;++r=this.__values__.length;return{done:t,value:t?i:this.__values__[this.__index__++]}},Ln.prototype.plant=function(t){for(var e,n=this;n instanceof Hn;){var r=La(n);r.__index__=0,r.__values__=i,e?a.__wrapped__=r:e=r;var a=r;n=n.__wrapped__}return a.__wrapped__=t,e},Ln.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof Un){var e=t;return this.__actions__.length&&(e=new Un(this)),(e=e.reverse()).__actions__.push({func:po,args:[to],thisArg:i}),new zn(e,this.__chain__)}return this.thru(to)},Ln.prototype.toJSON=Ln.prototype.valueOf=Ln.prototype.value=function(){return hi(this.__wrapped__,this.__actions__)},Ln.prototype.first=Ln.prototype.head,oe&&(Ln.prototype[oe]=function(){return this}),Ln}();ae._=un,(r=function(){return un}.call(e,n,e,t))===i||(t.exports=r)}.call(this)},174:function(){},803:function(){},569:function(){},172:function(){},948:function(){},6:function(t,e,n){var r=n(174);r.__esModule&&(r=r.default),"string"==typeof r&&(r=[[t.id,r,""]]),r.locals&&(t.exports=r.locals),(0,n(673).Z)("96696500",r,!0,{})},95:function(t,e,n){var r=n(803);r.__esModule&&(r=r.default),"string"==typeof r&&(r=[[t.id,r,""]]),r.locals&&(t.exports=r.locals),(0,n(673).Z)("59c695d0",r,!0,{})},714:function(t,e,n){var r=n(569);r.__esModule&&(r=r.default),"string"==typeof r&&(r=[[t.id,r,""]]),r.locals&&(t.exports=r.locals),(0,n(673).Z)("fdcd51e6",r,!0,{})},738:function(t,e,n){var r=n(172);r.__esModule&&(r=r.default),"string"==typeof r&&(r=[[t.id,r,""]]),r.locals&&(t.exports=r.locals),(0,n(673).Z)("3e465790",r,!0,{})},102:function(t,e,n){var r=n(948);r.__esModule&&(r=r.default),"string"==typeof r&&(r=[[t.id,r,""]]),r.locals&&(t.exports=r.locals),(0,n(673).Z)("60b14b6a",r,!0,{})},673:function(t,e,n){"use strict";function r(t,e){for(var n=[],r={},i=0;in.parts.length&&(r.parts.length=n.parts.length)}else{var o=[];for(i=0;i["get","post"].indexOf(t)>-1},reactiveApiUrl:{type:Boolean,default:!0},apiMode:{type:Boolean,default:!0},data:{type:[Array,Object],default:null},dataTotal:{type:Number,default:0},dataManager:{type:Function,default:null},dataPath:{type:String,default:"data"},paginationPath:{type:[String],default:"links.pagination"},queryParams:{type:[Object,Function],default(){return{sort:"sort",page:"page",perPage:"per_page"}}},appendParams:{type:Object,default(){return{}}},httpOptions:{type:Object,default(){return{}}},httpFetch:{type:Function,default:null},perPage:{type:Number,default:10},initialPage:{type:Number,default:1},sortOrder:{type:Array,default(){return[]}},multiSort:{type:Boolean,default(){return!1}},tableHeight:{type:String,default:null},multiSortKey:{type:String,default:"alt"},rowClassCallback:{type:[String,Function],default:""},rowClass:{type:[String,Function],default:""},detailRowComponent:{type:String,default:""},detailRowTransition:{type:String,default:""},trackBy:{type:String,default:"id"},css:{type:Object,default(){return{tableClass:"ui blue selectable celled stackable attached table",loadingClass:"loading",ascendingIcon:"blue chevron up icon",descendingIcon:"blue chevron down icon",ascendingClass:"sorted-asc",descendingClass:"sorted-desc",sortableIcon:"",detailRowClass:"vuetable-detail-row",handleIcon:"grey sidebar icon",tableBodyClass:"vuetable-semantic-no-top vuetable-fixed-layout",tableHeaderClass:"vuetable-fixed-layout"}}},minRows:{type:Number,default:0},silent:{type:Boolean,default:!1},noDataTemplate:{type:String,default(){return"No Data Available"}},showSortIcons:{type:Boolean,default:!0}},data(){return{eventPrefix:"vuetable:",tableFields:[],tableData:null,tablePagination:null,currentPage:this.initialPage,selectedTo:[],visibleDetailRows:[],lastScrollPosition:0,scrollBarWidth:"17px",scrollVisible:!1}},mounted(){if(this.normalizeFields(),this.normalizeSortOrder(),this.isFixedHeader&&(this.scrollBarWidth=this.getScrollBarWidth()+"px"),this.$nextTick((function(){this.fireEvent("initialized",this.tableFields)})),this.loadOnStart&&this.loadData(),this.isFixedHeader){let t=this.$el.getElementsByClassName("vuetable-body-wrapper")[0];null!=t&&t.addEventListener("scroll",this.handleScroll)}},destroyed(){let t=this.$el.getElementsByClassName("vuetable-body-wrapper")[0];null!=t&&t.removeEventListener("scroll",this.handleScroll)},computed:{version:()=>VERSION,useDetailRow(){return this.tableData&&this.tableData[0]&&""!==this.detailRowComponent&&void 0===this.tableData[0][this.trackBy]?(this.warn("You need to define unique row identifier in order for detail-row feature to work. Use `track-by` prop to define one!"),!1):""!==this.detailRowComponent},countVisibleFields(){return this.tableFields.filter((function(t){return t.visible})).length},countTableData(){return null===this.tableData?0:this.tableData.length},displayEmptyDataRow(){return 0===this.countTableData&&this.noDataTemplate.length>0},lessThanMinRows(){return null===this.tableData||0===this.tableData.length||this.tableData.length=this.minRows?0:this.minRows-this.tableData.length},isApiMode(){return this.apiMode},isDataMode(){return!this.apiMode},isFixedHeader(){return null!=this.tableHeight}},methods:{getScrollBarWidth(){const t=document.createElement("div"),e=document.createElement("div");t.style.visibility="hidden",t.style.width="100px",e.style.width="100%",t.appendChild(e),document.body.appendChild(t);const n=t.offsetWidth;t.style.overflow="scroll";const r=e.offsetWidth;return document.body.removeChild(t),n-r},handleScroll(t){let e=t.currentTarget.scrollLeft;if(e!=this.lastScrollPosition){let t=this.$el.getElementsByClassName("vuetable-head-wrapper")[0];null!=t&&(t.scrollLeft=e),this.lastScrollPosition=e}},normalizeFields(){if(void 0===this.fields)return void this.warn('You need to provide "fields" prop.');this.tableFields=[];let t,e=this;this.fields.forEach((function(n,r){t="string"==typeof n?{name:n,title:e.setTitle(n),titleClass:"",dataClass:"",callback:null,visible:!0}:{name:n.name,width:n.width,title:void 0===n.title?e.setTitle(n.name):n.title,sortField:n.sortField,titleClass:void 0===n.titleClass?"":n.titleClass,dataClass:void 0===n.dataClass?"":n.dataClass,callback:void 0===n.callback?"":n.callback,visible:void 0===n.visible||n.visible},e.tableFields.push(t)}))},setData(t){if(null!=t){if(this.fireEvent("loading"),Array.isArray(t))return this.tableData=t,void this.fireEvent("loaded");this.tableData=this.getObjectValue(t,this.dataPath,null),this.tablePagination=this.getObjectValue(t,this.paginationPath,null),this.$nextTick((function(){this.fixHeader(),this.fireEvent("pagination-data",this.tablePagination),this.fireEvent("loaded")}))}},setTitle(t){return this.isSpecialField(t)?"":this.titleCase(t)},getTitle(t){return"function"==typeof t.title?t.title():void 0===t.title?t.name.replace("."," "):t.title},renderTitle(t){let e=this.getTitle(t);if(e.length>0&&this.isInCurrentSortGroup(t)||this.hasSortableIcon(t)){let n=`opacity:${this.sortIconOpacity(t)};position:relative;float:right`;return e+" "+(this.showSortIcons?this.renderIconTag(["sort-icon",this.sortIcon(t)],`style="${n}"`):"")}return e},renderSequence(t){return this.tablePagination?this.tablePagination.from+t:t},renderNormalField(t,e){return this.hasCallback(t)?this.callCallback(t,e):this.getObjectValue(e,t.name,"")},isSpecialField(t){return"__"===t.slice(0,2)},titleCase(t){return t.replace(/\w+/g,(function(t){return t.charAt(0).toUpperCase()+t.substr(1).toLowerCase()}))},camelCase(t,e="_"){let n=this;return t.split(e).map((function(t){return n.titleCase(t)})).join("")},notIn(t,e){return-1===e.indexOf(t)},loadData(t=this.loadSuccess,e=this.loadFailed){if(!this.isDataMode)return this.fireEvent("loading"),this.httpOptions.params=this.getAppendParams(this.getAllQueryParams()),this.fetch(this.apiUrl,this.httpOptions).then(t,e).catch((()=>e()));this.callDataManager()},fetch(t,e){return this.httpFetch?this.httpFetch(t,e):i()[this.httpMethod](t,e)},loadSuccess(t){this.fireEvent("load-success",t);let e=this.transform(t.data);this.tableData=this.getObjectValue(e,this.dataPath,null),this.tablePagination=this.getObjectValue(e,this.paginationPath,null),null===this.tablePagination&&this.warn('vuetable: pagination-path "'+this.paginationPath+'" not found. It looks like the data returned from the sever does not have pagination information or you may have set it incorrectly.\nYou can explicitly suppress this warning by setting pagination-path="".'),this.$nextTick((function(){this.fixHeader(),this.fireEvent("pagination-data",this.tablePagination),this.fireEvent("loaded")}))},fixHeader(){if(!this.isFixedHeader)return;let t=this.$el.getElementsByClassName("vuetable-body-wrapper")[0];null!=t&&(t.scrollHeight>t.clientHeight?this.scrollVisible=!0:this.scrollVisible=!1)},loadFailed(t){console.error("load-error",t),this.fireEvent("load-error",t),this.fireEvent("loaded")},transform(t){let e="transform";return this.parentFunctionExists(e)?this.$parent[e].call(this.$parent,t):t},parentFunctionExists(t){return""!==t&&"function"==typeof this.$parent[t]},callParentFunction(t,e,n=null){return this.parentFunctionExists(t)?this.$parent[t].call(this.$parent,e):n},fireEvent(t,e){this.$emit(this.eventPrefix+t,e)},warn(t){this.silent||console.warn(t)},getAllQueryParams(){let t={};return"function"==typeof this.queryParams?(t=this.queryParams(this.sortOrder,this.currentPage,this.perPage),"object"!=typeof t?{}:t):(t[this.queryParams.sort]=this.getSortParam(),t[this.queryParams.page]=this.currentPage,t[this.queryParams.perPage]=this.perPage,t)},getSortParam(){return this.sortOrder&&""!=this.sortOrder.field?"function"==typeof this.$parent.getSortParam?this.$parent.getSortParam.call(this.$parent,this.sortOrder):this.getDefaultSortParam():""},getDefaultSortParam(){let t="";for(let e=0;e0?this.$parent[r].apply(this.$parent,[i].concat(n)):this.$parent[r].call(this.$parent,i)}return null},getObjectValue(t,e,n){n=void 0===n?null:n;let r=t;return""!=e.trim()&&e.split(".").forEach((function(t){r=null!==r&&void 0!==r[t]&&null!==r[t]?r[t]:n})),r},toggleCheckbox(t,e,n){let r=n.target.checked,i=this.trackBy;if(void 0===t[i])return void this.warn('__checkbox field: The "'+this.trackBy+'" field does not exist! Make sure the field you specify in "track-by" prop does exist.');let a=t[i];r?this.selectId(a):this.unselectId(a),this.$emit("vuetable:checkbox-toggled",r,t)},selectId(t){this.isSelectedRow(t)||this.selectedTo.push(t)},unselectId(t){this.selectedTo=this.selectedTo.filter((function(e){return e!==t}))},isSelectedRow(t){return this.selectedTo.indexOf(t)>=0},rowSelected(t,e){let n=t[this.trackBy];return this.isSelectedRow(n)},checkCheckboxesState(t){if(!this.tableData)return;let e=this,n=this.trackBy,r="th.vuetable-th-checkbox-"+n+" input[type=checkbox]",i=document.querySelectorAll(r);void 0===i.forEach&&(i.forEach=function(t){[].forEach.call(i,t)});let a=this.tableData.filter((function(t){return e.selectedTo.indexOf(t[n])>=0}));return a.length<=0?(i.forEach((function(t){t.indeterminate=!1})),!1):a.length1&&(this.currentPage--,this.loadData())},gotoNextPage(){this.currentPage0&&t<=this.tablePagination.last_page&&(this.currentPage=t,this.loadData())},isVisibleDetailRow(t){return this.visibleDetailRows.indexOf(t)>=0},showDetailRow(t){this.isVisibleDetailRow(t)||this.visibleDetailRows.push(t)},hideDetailRow(t){this.isVisibleDetailRow(t)&&this.visibleDetailRows.splice(this.visibleDetailRows.indexOf(t),1)},toggleDetailRow(t){this.isVisibleDetailRow(t)?this.hideDetailRow(t):this.showDetailRow(t)},showField(t){t<0||t>this.tableFields.length||(this.tableFields[t].visible=!0)},hideField(t){t<0||t>this.tableFields.length||(this.tableFields[t].visible=!1)},toggleField(t){t<0||t>this.tableFields.length||(this.tableFields[t].visible=!this.tableFields[t].visible)},renderIconTag(t,e=""){return void 0===this.css.renderIcon?``:this.css.renderIcon(t,e)},makePagination(t=null,e=null,n=null){return{total:t=null===t?this.dataTotal:t,per_page:e=null===e?this.perPage:e,current_page:n=null===n?this.currentPage:n,last_page:Math.ceil(t/e)||0,next_page_url:"",prev_page_url:"",from:(n-1)*e+1,to:Math.min(n*e,t)}},normalizeSortOrder(){this.sortOrder.forEach((function(t){t.sortField=t.sortField||t.field}))},callDataManager(){if(null!==this.dataManager||null!==this.data)return Array.isArray(this.data)?this.setData(this.data):(this.normalizeSortOrder(),this.setData(this.dataManager?this.dataManager(this.sortOrder,this.makePagination()):this.data))},onRowClass(t,e){if(""===this.rowClassCallback)return"function"==typeof this.rowClass?this.rowClass(t,e):this.rowClass;this.warn('"row-class-callback" prop is deprecated, please use "row-class" prop instead.')},onRowChanged(t){return this.fireEvent("row-changed",t),!0},onRowClicked(t,e){return this.$emit(this.eventPrefix+"row-clicked",t,e),!0},onRowDoubleClicked(t,e){this.$emit(this.eventPrefix+"row-dblclicked",t,e)},onDetailRowClick(t,e){this.$emit(this.eventPrefix+"detail-row-clicked",t,e)},onCellClicked(t,e,n){this.$emit(this.eventPrefix+"cell-clicked",t,e,n)},onCellDoubleClicked(t,e,n){this.$emit(this.eventPrefix+"cell-dblclicked",t,e,n)},onCellRightClicked(t,e,n){this.$emit(this.eventPrefix+"cell-rightclicked",t,e,n)},changePage(t){"prev"===t?this.gotoPreviousPage():"next"===t?this.gotoNextPage():this.gotoPage(t)},reload(){return this.loadData()},refresh(){return this.currentPage=1,this.loadData()},resetData(){this.tableData=null,this.tablePagination=null,this.fireEvent("data-reset")}},watch:{multiSort(t,e){!1===t&&this.sortOrder.length>1&&(this.sortOrder.splice(1),this.loadData())},apiUrl(t,e){this.reactiveApiUrl&&t!==e&&this.refresh()},data(t,e){this.setData(t)},tableHeight(t,e){this.fixHeader()}}},o=a;function l(t,e,n,r,i,a,o,l){var s,u="function"==typeof t?t.options:t;if(e&&(u.render=e,u.staticRenderFns=n,u._compiled=!0),r&&(u.functional=!0),a&&(u._scopeId="data-v-"+a),o?(s=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),i&&i.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(o)},u._ssrRegister=s):i&&(s=l?function(){i.call(this,(u.functional?this.parent:this).$root.$options.shadowRoot)}:i),s)if(u.functional){u._injectStyles=s;var c=u.render;u.render=function(t,e){return s.call(e),c(t,e)}}else{var f=u.beforeCreate;u.beforeCreate=f?[].concat(f,s):[s]}return{exports:t,options:u}}n(6);var s=l(o,(function(){var t=this,e=t._self._c;return t.isFixedHeader?e("div",[e("div",{staticClass:"vuetable-head-wrapper"},[e("table",{class:["vuetable",t.css.tableClass,t.css.tableHeaderClass]},[e("thead",[e("tr",[t._l(t.tableFields,(function(n,r){return[n.visible?[t.isSpecialField(n.name)?["__checkbox"==t.extractName(n.name)?e("th",{key:r,class:["vuetable-th-checkbox-"+t.trackBy,n.titleClass],style:{width:n.width}},[e("input",{attrs:{type:"checkbox"},domProps:{checked:t.checkCheckboxesState(n.name)},on:{change:function(e){return t.toggleAllCheckboxes(n.name,e)}}})]):t._e(),t._v(" "),"__component"==t.extractName(n.name)?e("th",{key:r,class:["vuetable-th-component-"+t.trackBy,n.titleClass,t.sortClass(n),{sortable:t.isSortable(n)}],style:{width:n.width},domProps:{innerHTML:t._s(t.renderTitle(n))},on:{click:function(e){return t.orderBy(n,e)}}}):t._e(),t._v(" "),"__slot"==t.extractName(n.name)?e("th",{key:r,class:["vuetable-th-slot-"+t.extractArgs(n.name),n.titleClass,t.sortClass(n),{sortable:t.isSortable(n)}],style:{width:n.width},domProps:{innerHTML:t._s(t.renderTitle(n))},on:{click:function(e){return t.orderBy(n,e)}}}):t._e(),t._v(" "),"__sequence"==t.extractName(n.name)?e("th",{key:r,class:["vuetable-th-sequence",n.titleClass||""],style:{width:n.width},domProps:{innerHTML:t._s(t.renderTitle(n))}}):t._e(),t._v(" "),t.notIn(t.extractName(n.name),["__sequence","__checkbox","__component","__slot"])?e("th",{key:r,class:["vuetable-th-"+n.name,n.titleClass||""],style:{width:n.width},domProps:{innerHTML:t._s(t.renderTitle(n))}}):t._e()]:[e("th",{key:r,class:["vuetable-th-"+n.name,n.titleClass,t.sortClass(n),{sortable:t.isSortable(n)}],style:{width:n.width},attrs:{id:"_"+n.name},domProps:{innerHTML:t._s(t.renderTitle(n))},on:{click:function(e){return t.orderBy(n,e)}}})]]:t._e()]})),t._v(" "),t.scrollVisible?e("th",{staticClass:"vuetable-gutter-col",style:{width:t.scrollBarWidth}}):t._e()],2)])])]),t._v(" "),e("div",{staticClass:"vuetable-body-wrapper",style:{height:t.tableHeight}},[e("table",{class:["vuetable",t.css.tableClass,t.css.tableBodyClass]},[e("colgroup",[t._l(t.tableFields,(function(n,r){return[n.visible?[e("col",{key:r,class:["vuetable-th-"+n.name,n.titleClass],style:{width:n.width},attrs:{id:"_col_"+n.name}})]:t._e()]}))],2),t._v(" "),e("tbody",{staticClass:"vuetable-body"},[t._l(t.tableData,(function(n,r){return[e("tr",{key:r,class:t.onRowClass(n,r),attrs:{"item-index":r,render:t.onRowChanged(n)},on:{click:function(e){return t.onRowClicked(n,e)},dblclick:function(e){return t.onRowDoubleClicked(n,e)}}},[t._l(t.tableFields,(function(i,a){return[i.visible?[t.isSpecialField(i.name)?["__sequence"==t.extractName(i.name)?e("td",{key:a,class:["vuetable-sequence",i.dataClass],domProps:{innerHTML:t._s(t.renderSequence(r))}}):t._e(),t._v(" "),"__handle"==t.extractName(i.name)?e("td",{key:a,class:["vuetable-handle",i.dataClass],domProps:{innerHTML:t._s(t.renderIconTag(["handle-icon",t.css.handleIcon]))}}):t._e(),t._v(" "),"__checkbox"==t.extractName(i.name)?e("td",{key:a,class:["vuetable-checkboxes",i.dataClass]},[e("input",{attrs:{type:"checkbox"},domProps:{checked:t.rowSelected(n,i.name)},on:{change:function(e){return t.toggleCheckbox(n,i.name,e)}}})]):t._e(),t._v(" "),"__component"===t.extractName(i.name)?e("td",{key:a,class:["vuetable-component",i.dataClass]},[e(t.extractArgs(i.name),{tag:"component",attrs:{"row-data":n,"row-index":r,"row-field":i.sortField}})],1):t._e(),t._v(" "),"__slot"===t.extractName(i.name)?e("td",{key:a,class:["vuetable-slot",i.dataClass]},[t._t(t.extractArgs(i.name),null,{rowData:n,rowIndex:r,rowField:i.sortField})],2):t._e()]:[e("td",{key:a,class:i.dataClass,domProps:{innerHTML:t._s(t.renderNormalField(i,n))},on:{click:function(e){return t.onCellClicked(n,i,e)},dblclick:function(e){return t.onCellDoubleClicked(n,i,e)},contextmenu:function(e){return t.onCellRightClicked(n,i,e)}}})]]:t._e()]}))],2),t._v(" "),t.useDetailRow?[e("transition",{key:r,attrs:{name:t.detailRowTransition}},[t.isVisibleDetailRow(n[t.trackBy])?e("tr",{class:[t.css.detailRowClass],on:{click:function(e){return t.onDetailRowClick(n,e)}}},[e("td",{attrs:{colspan:t.countVisibleFields}},[e(t.detailRowComponent,{tag:"component",attrs:{"row-data":n,"row-index":r}})],1)]):t._e()])]:t._e()]})),t._v(" "),t.displayEmptyDataRow?[e("tr",[e("td",{staticClass:"vuetable-empty-result",attrs:{colspan:t.countVisibleFields},domProps:{innerHTML:t._s(t.noDataTemplate)}})])]:t._e(),t._v(" "),t.lessThanMinRows?t._l(t.blankRows,(function(n){return e("tr",{key:n,staticClass:"blank-row"},[t._l(t.tableFields,(function(n,r){return[n.visible?e("td",{key:r},[t._v(" ")]):t._e()]}))],2)})):t._e()],2)])])]):e("table",{class:["vuetable",t.css.tableClass]},[e("thead",[e("tr",[t._l(t.tableFields,(function(n,r){return[n.visible?[t.isSpecialField(n.name)?["__checkbox"==t.extractName(n.name)?e("th",{key:r,class:["vuetable-th-checkbox-"+t.trackBy,n.titleClass],style:{width:n.width}},[e("input",{attrs:{type:"checkbox"},domProps:{checked:t.checkCheckboxesState(n.name)},on:{change:function(e){return t.toggleAllCheckboxes(n.name,e)}}})]):t._e(),t._v(" "),"__component"==t.extractName(n.name)?e("th",{key:r,class:["vuetable-th-component-"+t.trackBy,n.titleClass,t.sortClass(n),{sortable:t.isSortable(n)}],style:{width:n.width},domProps:{innerHTML:t._s(t.renderTitle(n))},on:{click:function(e){return t.orderBy(n,e)}}}):t._e(),t._v(" "),"__slot"==t.extractName(n.name)?e("th",{key:r,class:["vuetable-th-slot-"+t.extractArgs(n.name),n.titleClass,t.sortClass(n),{sortable:t.isSortable(n)}],style:{width:n.width},domProps:{innerHTML:t._s(t.renderTitle(n))},on:{click:function(e){return t.orderBy(n,e)}}}):t._e(),t._v(" "),"__sequence"==t.extractName(n.name)?e("th",{key:r,class:["vuetable-th-sequence",n.titleClass||"",t.sortClass(n)],style:{width:n.width},domProps:{innerHTML:t._s(t.renderTitle(n))}}):t._e(),t._v(" "),t.notIn(t.extractName(n.name),["__sequence","__checkbox","__component","__slot"])?e("th",{key:r,class:["vuetable-th-"+n.name,n.titleClass||"",t.sortClass(n)],style:{width:n.width},domProps:{innerHTML:t._s(t.renderTitle(n))}}):t._e()]:[e("th",{key:r,class:["vuetable-th-"+n.name,n.titleClass,t.sortClass(n),{sortable:t.isSortable(n)}],style:{width:n.width},attrs:{id:"_"+n.name},domProps:{innerHTML:t._s(t.renderTitle(n))},on:{click:function(e){return t.orderBy(n,e)}}})]]:t._e()]}))],2)]),t._v(" "),e("tbody",{staticClass:"vuetable-body"},[t._l(t.tableData,(function(n,r){return[e("tr",{key:r,class:t.onRowClass(n,r),attrs:{"item-index":r,render:t.onRowChanged(n)},on:{dblclick:function(e){return t.onRowDoubleClicked(n,e)},click:function(e){return t.onRowClicked(n,e)}}},[t._l(t.tableFields,(function(i,a){return[i.visible?[t.isSpecialField(i.name)?["__sequence"==t.extractName(i.name)?e("td",{key:a,class:["vuetable-sequence",i.dataClass],domProps:{innerHTML:t._s(t.renderSequence(r))}}):t._e(),t._v(" "),"__handle"==t.extractName(i.name)?e("td",{key:a,class:["vuetable-handle",i.dataClass],domProps:{innerHTML:t._s(t.renderIconTag(["handle-icon",t.css.handleIcon]))}}):t._e(),t._v(" "),"__checkbox"==t.extractName(i.name)?e("td",{key:a,class:["vuetable-checkboxes",i.dataClass]},[e("input",{attrs:{type:"checkbox"},domProps:{checked:t.rowSelected(n,i.name)},on:{change:function(e){return t.toggleCheckbox(n,i.name,e)}}})]):t._e(),t._v(" "),"__component"===t.extractName(i.name)?e("td",{key:a,class:["vuetable-component",i.dataClass]},[e(t.extractArgs(i.name),{tag:"component",attrs:{"row-data":n,"row-index":r,"row-field":i.sortField}})],1):t._e(),t._v(" "),"__slot"===t.extractName(i.name)?e("td",{key:a,class:["vuetable-slot",i.dataClass]},[t._t(t.extractArgs(i.name),null,{rowData:n,rowIndex:r,rowField:i.sortField})],2):t._e()]:[t.hasCallback(i)?e("td",{key:a,class:i.dataClass,domProps:{innerHTML:t._s(t.callCallback(i,n))},on:{click:function(e){return t.onCellClicked(n,i,e)},dblclick:function(e){return t.onCellDoubleClicked(n,i,e)},contextmenu:function(e){return t.onCellRightClicked(n,i,e)}}}):e("td",{key:a,class:i.dataClass,domProps:{innerHTML:t._s(t.getObjectValue(n,i.name,""))},on:{click:function(e){return t.onCellClicked(n,i,e)},dblclick:function(e){return t.onCellDoubleClicked(n,i,e)},contextmenu:function(e){return t.onCellRightClicked(n,i,e)}}})]]:t._e()]}))],2),t._v(" "),t.useDetailRow?[e("transition",{key:r,attrs:{name:t.detailRowTransition}},[t.isVisibleDetailRow(n[t.trackBy])?e("tr",{class:[t.css.detailRowClass],on:{click:function(e){return t.onDetailRowClick(n,e)}}},[e("td",{attrs:{colspan:t.countVisibleFields}},[e(t.detailRowComponent,{tag:"component",attrs:{"row-data":n,"row-index":r}})],1)]):t._e()])]:t._e()]})),t._v(" "),t.displayEmptyDataRow?[e("tr",[e("td",{staticClass:"vuetable-empty-result",attrs:{colspan:t.countVisibleFields},domProps:{innerHTML:t._s(t.noDataTemplate)}})])]:t._e(),t._v(" "),t.lessThanMinRows?t._l(t.blankRows,(function(n){return e("tr",{key:n,staticClass:"blank-row"},[t._l(t.tableFields,(function(n,r){return[n.visible?e("td",{key:r},[t._v(" ")]):t._e()]}))],2)})):t._e()],2)])}),[],!1,null,"5bfa05b0",null).exports,u={name:"AdminTablePagination",mixins:[l({props:{css:{type:Object,default(){return{wrapperClass:"ui right floated pagination menu",activeClass:"active large",disabledClass:"disabled",pageClass:"item",linkClass:"icon item",paginationClass:"ui bottom attached segment grid",paginationInfoClass:"left floated left aligned six wide column",dropdownClass:"ui search dropdown",icons:{first:"angle double left icon",prev:"left chevron icon",next:"right chevron icon",last:"angle double right icon"}}}},onEachSide:{type:Number,default(){return 2}}},data:function(){return{eventPrefix:"vuetable-pagination:",tablePagination:null}},computed:{totalPage(){return null===this.tablePagination?0:this.tablePagination.last_page},isOnFirstPage(){return null!==this.tablePagination&&1===this.tablePagination.current_page},isOnLastPage(){return null!==this.tablePagination&&this.tablePagination.current_page===this.tablePagination.last_page},notEnoughPages(){return this.totalPage<2*this.onEachSide+4},windowSize(){return 2*this.onEachSide+1},windowStart(){return!this.tablePagination||this.tablePagination.current_page<=this.onEachSide?1:this.tablePagination.current_page>=this.totalPage-this.onEachSide?this.totalPage-2*this.onEachSide:this.tablePagination.current_page-this.onEachSide}},methods:{loadPage(t){this.$emit(this.eventPrefix+"change-page",t)},isCurrentPage(t){return t===this.tablePagination.current_page},setPaginationData(t){this.tablePagination=t},resetData(){this.tablePagination=null}}},void 0,void 0,!1,null,null,null).exports],props:{itemLabels:{type:Object,default:function(){return{singular:Craft.t("app","Item"),plural:Craft.t("app","Items")}}}},computed:{paginationLabel:function(){return Craft.t("app","{first, number}-{last, number} of {total, number} {total, plural, =1{{item}} other{{items}}}",{first:this.tablePagination.from,last:this.tablePagination.to,total:this.tablePagination.total||0,item:this.itemLabels.singular,items:this.itemLabels.plural})}}},c=(n(102),l(u,(function(){var t=this,e=t._self._c;return t.tablePagination?e("div",{staticClass:"vue-admin-table-pagination flex pagination"},[e("div",{staticClass:"page-link prev-page",class:[t.isOnFirstPage?"disabled":""],attrs:{title:"Previous Page"},on:{click:function(e){return t.loadPage("prev")}}}),t._v(" "),e("div",{staticClass:"page-link next-page",class:[t.isOnLastPage?"disabled":""],attrs:{title:"Next Page"},on:{click:function(e){return t.loadPage("next")}}}),t._v(" "),e("div",{directives:[{name:"show",rawName:"v-show",value:t.tablePagination,expression:"tablePagination"}],staticClass:"page-info"},[t._v(t._s(t.paginationLabel))])]):t._e()}),[],!1,null,null,null).exports),f=l({name:"AdminTableDeleteButton",props:{actionUrl:String,before:Function,confirmationMessage:String,disabled:Boolean,failMessage:String,id:[Number,String],name:String,successMessage:String},data:function(){return{}},computed:{success:function(){var t=void 0!==this.successMessage?Craft.t("site",this.successMessage,{name:this.name}):Craft.t("app","“{name}” deleted.",{name:this.name});return Craft.escapeHtml(t)},confirm:function(){var t=void 0!==this.confirmationMessage?Craft.t("site",this.confirmationMessage,{name:this.name}):Craft.t("app","Are you sure you want to delete “{name}”?",{name:this.name});return Craft.escapeHtml(t)},failed:function(){var t=void 0!==this.failMessage?Craft.t("site",this.failMessage,{name:this.name}):Craft.t("app","Couldn’t delete “{name}”.",{name:this.name});return Craft.escapeHtml(t)}},methods:{confirmDelete:function(){return confirm(this.confirm)},handleClick:function(){var t=this;t.disabled||(t.$emit("loading"),t.before(t.id).then((function(e){e&&t.confirmDelete()?Craft.sendActionRequest("POST",t.actionUrl,{data:{id:t.id}}).then((function(){Craft.cp.displayNotice(t.success),t.$emit("reload")})).catch((function(){Craft.cp.displayError(t.failed),t.$emit("finishloading")})):t.$emit("finishloading")})))}}},(function(){var t=this;return(0,t._self._c)("a",{staticClass:"delete icon",class:{disabled:t.disabled},attrs:{title:t._f("t")("Delete","app"),role:"button",href:"#"},on:{click:function(e){return e.preventDefault(),t.handleClick.apply(null,arguments)}}})}),[],!1,null,"17f4cad8",null),h=f.exports,d={name:"AdminTableCheckbox",props:{id:Number,selectAll:Boolean,checks:Array,status:{type:Boolean,default:!0}},data:function(){return{}},computed:{isChecked:function(){return-1!==this.checks.indexOf(this.id)},title:function(){return Craft.escapeHtml(Craft.t("app","Select"))}},methods:{handleClick:function(){this.status&&(this.isChecked?this.$emit("removeCheck",this.id):this.$emit("addCheck",this.id))}}},p=(n(714),l(d,(function(){var t=this;return(0,t._self._c)("div",{staticClass:"checkbox",class:{checked:t.isChecked,"table-disabled-checkbox":!t.status},attrs:{title:t.title},on:{click:function(e){return e.preventDefault(),t.handleClick.apply(null,arguments)}}})}),[],!1,null,"1bbfb992",null)),v=p.exports,g=l({name:"AdminTableActionButton",props:{action:String,actions:{type:Array,default:function(){return[]}},ajax:{type:Boolean,default:!1},allowMultiple:{type:Boolean,default:!0},enabled:Boolean,ids:Array,label:String,icon:String,error:{type:Boolean,default:!1}},data:function(){return{button:null,buttonDisabled:!1,tokenName:Craft.csrfTokenName,tokenValue:Craft.csrfTokenValue,param:"",value:""}},methods:{handleClick:function(t,e,n,r){var i=this;if(r){var a={ids:this.ids};a[t]=e,Craft.sendActionRequest("POST",n,{data:a}).then((function(t){Craft.cp.displayNotice(Craft.escapeHtml(Craft.t("app","Updated.")))})).finally((function(){i.$emit("reload")}))}else this.action=n,this.param=t,this.value=e,this.$nextTick((function(){i.$refs.form.submit()}))},enableButton:function(){this.isMenuButtonInitialised?this.button.data("menubtn").enable():this.buttonDisabled=!1},disableButton:function(){this.isMenuButtonInitialised?this.button.data("menubtn").disable():this.buttonDisabled=!0}},computed:{actionsList:function(){if(!this.actions.length)return[];var t=[],e=[];return this.actions.forEach((function(n){Object.keys(n).indexOf("separator")>=0&&n.separator&&(t.push(e),e=[]),e.push(n)})),e.length&&t.push(e),t},hasMultipleSelected:function(){return this.ids.length>1},isMenuButtonInitialised:function(){return this.isMenuButton&&this.button.data("menubtn")},isMenuButton:function(){return!!this.button&&!!this.actions.length}},watch:{enabled:function(){this.enabled?this.enableButton():this.disableButton()},hasMultipleSelected:function(t){!t||this.actions.length||this.allowMultiple?this.buttonDisabled=!1:this.buttonDisabled=!0}},mounted:function(){var t=this;this.$nextTick((function(){Craft.initUiElements(t.$refs.form),t.button=$(t.$refs.button),t.disableButton()}))}},(function(){var t=this,e=t._self._c;return e("form",{ref:"form",attrs:{method:"post"}},[e("input",{attrs:{type:"hidden",name:t.tokenName},domProps:{value:t.tokenValue}}),t._v(" "),e("input",{attrs:{type:"hidden",name:"action"},domProps:{value:t.action}}),t._v(" "),t.param?e("input",{attrs:{type:"hidden",name:t.param},domProps:{value:t.value}}):t._e(),t._v(" "),t._l(t.ids,(function(t,n){return e("input",{key:n,attrs:{type:"hidden",name:"ids[]"},domProps:{value:t}})})),t._v(" "),e(t.isMenuButton?"div":"button",t._g({ref:"button",tag:"component",staticClass:"btn",class:{menubtn:t.isMenuButton,error:t.error,disabled:!t.enabled||t.buttonDisabled},attrs:{"data-icon":t.icon,disabled:t.buttonDisabled,type:!t.enabled||t.isMenuButton||t.ajax?null:"submit"}},t.enabled&&!t.isMenuButton&&t.ajax?{click:t.handleClick(t.param,t.value,t.action,t.ajax)}:{}),[t._v(t._s(t.label))]),t._v(" "),t.isMenuButton?e("div",{staticClass:"menu"},[t._l(t.actionsList,(function(n,r){return[e("ul",{key:r,staticClass:"padded"},t._l(n,(function(n,r){return e("li",{key:r},[e("a",{class:{error:void 0!==n.error&&n.error,disabled:void 0!==n.allowMultiple&&!n.allowMultiple&&t.hasMultipleSelected},attrs:{href:"#","data-param":n.param,"data-value":n.value,"data-ajax":n.ajax},on:{click:function(e){e.preventDefault(),(void 0===n.allowMultiple||n.allowMultiple||!t.hasMultipleSelected)&&t.handleClick(n.param,n.value,n.action,n.ajax)}}},[n.status?e("span",{class:"status "+n.status}):t._e(),t._v(t._s(n.label)+"\n ")])])})),0),t._v(" "),t.actionsList.length>1&&r!=t.actionsList.length-1&&0!=r?e("hr",{key:r}):t._e()]}))],2):t._e()],2)}),[],!1,null,"48f15ca4",null),b=g.exports;function m(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var r,i,a=[],o=!0,l=!1;try{for(n=n.call(t);!(o=(r=n.next()).done)&&(a.push(r.value),!e||a.length!==e);o=!0);}catch(t){l=!0,i=t}finally{try{o||null==n.return||n.return()}finally{if(l)throw i}}return a}}(t,e)||function(t,e){if(t){if("string"==typeof t)return _(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n0&&void 0!==arguments[0]?arguments[0]:{},n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(!e)return[];Object.entries(e).forEach((function(e){var i=m(e,2),a=i[0],o=i[1],l=t.addDelimiter(n,a);t.isObject(o)?t.paths(o,l,r+1):t.list[l]=o}))}},computed:{listKeys:function(){return Object.keys(this.list).sort()}},created:function(){this.paths(this.rowData.detail.content)}},C=w,k=(n(738),l(C,(function(){var t=this,e=t._self._c;return e("div",[!t.rowData.detail.content||t.rowData.detail.showAsList&&void 0!==t.rowData.detail.showAsList?t._e():e("div",{domProps:{innerHTML:t._s(t.rowData.detail.content)}}),t._v(" "),t.rowData.detail.content&&t.rowData.detail.showAsList?e("div",t._l(t.listKeys,(function(n){return e("div",{key:n,staticClass:"order-flex detail-list",class:{"detail-list-bg":t.index%2}},[e("div",{staticClass:"detail-list-key"},[t._v(t._s(n)+":")]),t._v(" "),e("div",{staticClass:"detail-list-value"},[t._v(t._s(t.list[n]))])])})),0):t._e()])}),[],!1,null,null,null).exports),x=l({name:"AdminTableButton",props:{btnClass:{type:String|Object,default:function(){return{}}},enabled:{type:Boolean|Function,default:function(){return!0}},href:String,label:String,icon:String},methods:{handleClick:function(t){this.isEnabled||t.preventDefault()}},computed:{buttonClass:function(){var t=this.isEnabled;return"string"==typeof this.btnClass?this.btnClass+(t?"":" disabled"):Object.assign(this.btnClass,{disabled:!t})},isEnabled:function(){return"function"==typeof this.enabled?this.enabled():this.enabled},linkHref:function(){return this.isEnabled?this.href:"#"}}},(function(){var t=this;return(0,t._self._c)("a",{ref:"button",staticClass:"btn",class:t.buttonClass,attrs:{href:t.linkHref,"data-icon":t.icon},on:{click:t.handleClick}},[t._v(t._s(t.label))])}),[],!1,null,"0235bfad",null).exports,S=l({name:"AdminTableCopyTextButton",props:{value:String},mounted:function(){this.value&&$(this.$el).html(Craft.ui.createCopyTextBtn({value:this.value,class:"code small light"}))}},(function(){return(0,this._self._c)("div")}),[],!1,null,"b82d2fda",null).exports;function D(t,e){var n=Object.keys(t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(t);e&&(r=r.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.push.apply(n,r)}return n}function P(t){for(var e=1;e=0||(i[n]=t[n]);return i}(t,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(i[n]=t[n])}return i}function I(t){if("undefined"!=typeof window&&window.navigator)return!!navigator.userAgent.match(t)}var M=I(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i),R=I(/Edge/i),j=I(/firefox/i),F=I(/safari/i)&&!I(/chrome/i)&&!I(/android/i),N=I(/iP(ad|od|hone)/i),B=I(/chrome/i)&&I(/android/i),L={capture:!1,passive:!1};function H(t,e,n){t.addEventListener(e,n,!M&&L)}function z(t,e,n){t.removeEventListener(e,n,!M&&L)}function U(t,e){if(e){if(">"===e[0]&&(e=e.substring(1)),t)try{if(t.matches)return t.matches(e);if(t.msMatchesSelector)return t.msMatchesSelector(e);if(t.webkitMatchesSelector)return t.webkitMatchesSelector(e)}catch(t){return!1}return!1}}function W(t){return t.host&&t!==document&&t.host.nodeType?t.host:t.parentNode}function q(t,e,n,r){if(t){n=n||document;do{if(null!=e&&(">"===e[0]?t.parentNode===n&&U(t,e):U(t,e))||r&&t===n)return t;if(t===n)break}while(t=W(t))}return null}var V,Y=/\s+/g;function X(t,e,n){if(t&&e)if(t.classList)t.classList[n?"add":"remove"](e);else{var r=(" "+t.className+" ").replace(Y," ").replace(" "+e+" "," ");t.className=(r+(n?" "+e:"")).replace(Y," ")}}function Z(t,e,n){var r=t&&t.style;if(r){if(void 0===n)return document.defaultView&&document.defaultView.getComputedStyle?n=document.defaultView.getComputedStyle(t,""):t.currentStyle&&(n=t.currentStyle),void 0===e?n:n[e];e in r||-1!==e.indexOf("webkit")||(e="-webkit-"+e),r[e]=n+("string"==typeof n?"":"px")}}function G(t,e){var n="";if("string"==typeof t)n=t;else do{var r=Z(t,"transform");r&&"none"!==r&&(n=r+" "+n)}while(!e&&(t=t.parentNode));var i=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return i&&new i(n)}function K(t,e,n){if(t){var r=t.getElementsByTagName(e),i=0,a=r.length;if(n)for(;i=a:i<=a))return r;if(r===J())break;r=at(r,!1)}return!1}function et(t,e,n,r){for(var i=0,a=0,o=t.children;a2&&void 0!==arguments[2]?arguments[2]:{},r=n.evt,i=A(n,pt);dt.pluginEvent.bind(le)(t,e,P({dragEl:bt,parentEl:mt,ghostEl:_t,rootEl:yt,nextEl:wt,lastDownEl:Ct,cloneEl:kt,cloneHidden:xt,dragStarted:Nt,putSortable:Ot,activeSortable:le.active,originalEvent:r,oldIndex:St,oldDraggableIndex:Pt,newIndex:Dt,newDraggableIndex:Et,hideGhostForTarget:re,unhideGhostForTarget:ie,cloneNowHidden:function(){xt=!0},cloneNowShown:function(){xt=!1},dispatchSortableEvent:function(t){gt({sortable:e,name:t,originalEvent:r})}},i))};function gt(t){!function(t){var e=t.sortable,n=t.rootEl,r=t.name,i=t.targetEl,a=t.cloneEl,o=t.toEl,l=t.fromEl,s=t.oldIndex,u=t.newIndex,c=t.oldDraggableIndex,f=t.newDraggableIndex,h=t.originalEvent,d=t.putSortable,p=t.extraEventProperties;if(e=e||n&&n[ct]){var v,g=e.options,b="on"+r.charAt(0).toUpperCase()+r.substr(1);!window.CustomEvent||M||R?(v=document.createEvent("Event")).initEvent(r,!0,!0):v=new CustomEvent(r,{bubbles:!0,cancelable:!0}),v.to=o||n,v.from=l||n,v.item=i||n,v.clone=a,v.oldIndex=s,v.newIndex=u,v.oldDraggableIndex=c,v.newDraggableIndex=f,v.originalEvent=h,v.pullMode=d?d.lastPutMode:void 0;var m=P(P({},p),dt.getEventProperties(r,e));for(var _ in m)v[_]=m[_];n&&n.dispatchEvent(v),g[b]&&g[b].call(e,v)}}(P({putSortable:Ot,cloneEl:kt,targetEl:bt,rootEl:yt,oldIndex:St,oldDraggableIndex:Pt,newIndex:Dt,newDraggableIndex:Et},t))}var bt,mt,_t,yt,wt,Ct,kt,xt,St,Dt,Pt,Et,Tt,Ot,At,It,Mt,Rt,jt,Ft,Nt,Bt,Lt,$t,Ht,zt=!1,Ut=!1,Wt=[],qt=!1,Vt=!1,Yt=[],Xt=!1,Zt=[],Gt="undefined"!=typeof document,Kt=N,Jt=R||M?"cssFloat":"float",Qt=Gt&&!B&&!N&&"draggable"in document.createElement("div"),te=function(){if(Gt){if(M)return!1;var t=document.createElement("x");return t.style.cssText="pointer-events:auto","auto"===t.style.pointerEvents}}(),ee=function(t,e){var n=Z(t),r=parseInt(n.width)-parseInt(n.paddingLeft)-parseInt(n.paddingRight)-parseInt(n.borderLeftWidth)-parseInt(n.borderRightWidth),i=et(t,0,e),a=et(t,1,e),o=i&&Z(i),l=a&&Z(a),s=o&&parseInt(o.marginLeft)+parseInt(o.marginRight)+Q(i).width,u=l&&parseInt(l.marginLeft)+parseInt(l.marginRight)+Q(a).width;if("flex"===n.display)return"column"===n.flexDirection||"column-reverse"===n.flexDirection?"vertical":"horizontal";if("grid"===n.display)return n.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(i&&o.float&&"none"!==o.float){var c="left"===o.float?"left":"right";return!a||"both"!==l.clear&&l.clear!==c?"horizontal":"vertical"}return i&&("block"===o.display||"flex"===o.display||"table"===o.display||"grid"===o.display||s>=r&&"none"===n[Jt]||a&&"none"===n[Jt]&&s+u>r)?"vertical":"horizontal"},ne=function(t){function e(t,n){return function(r,i,a,o){var l=r.options.group.name&&i.options.group.name&&r.options.group.name===i.options.group.name;if(null==t&&(n||l))return!0;if(null==t||!1===t)return!1;if(n&&"clone"===t)return t;if("function"==typeof t)return e(t(r,i,a,o),n)(r,i,a,o);var s=(n?r:i).options.group.name;return!0===t||"string"==typeof t&&t===s||t.join&&t.indexOf(s)>-1}}var n={},r=t.group;r&&"object"==E(r)||(r={name:r}),n.name=r.name,n.checkPull=e(r.pull,!0),n.checkPut=e(r.put),n.revertClone=r.revertClone,t.group=n},re=function(){!te&&_t&&Z(_t,"display","none")},ie=function(){!te&&_t&&Z(_t,"display","")};Gt&&!B&&document.addEventListener("click",(function(t){if(Ut)return t.preventDefault(),t.stopPropagation&&t.stopPropagation(),t.stopImmediatePropagation&&t.stopImmediatePropagation(),Ut=!1,!1}),!0);var ae=function(t){if(bt){t=t.touches?t.touches[0]:t;var e=(i=t.clientX,a=t.clientY,Wt.some((function(t){var e=t[ct].options.emptyInsertThreshold;if(e&&!nt(t)){var n=Q(t),r=i>=n.left-e&&i<=n.right+e,l=a>=n.top-e&&a<=n.bottom+e;return r&&l?o=t:void 0}})),o);if(e){var n={};for(var r in t)t.hasOwnProperty(r)&&(n[r]=t[r]);n.target=n.rootEl=e,n.preventDefault=void 0,n.stopPropagation=void 0,e[ct]._onDragOver(n)}}var i,a,o},oe=function(t){bt&&bt.parentNode[ct]._isOutsideThisEl(t.target)};function le(t,e){if(!t||!t.nodeType||1!==t.nodeType)throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(t));this.el=t,this.options=e=O({},e),t[ct]=this;var n,r,i={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(t.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return ee(t,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(t,e){t.setData("Text",e.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:!1!==le.supportPointer&&"PointerEvent"in window&&!F,emptyInsertThreshold:5};for(var a in dt.initializePlugins(this,t,i),i)!(a in e)&&(e[a]=i[a]);for(var o in ne(e),this)"_"===o.charAt(0)&&"function"==typeof this[o]&&(this[o]=this[o].bind(this));this.nativeDraggable=!e.forceFallback&&Qt,this.nativeDraggable&&(this.options.touchStartThreshold=1),e.supportPointer?H(t,"pointerdown",this._onTapStart):(H(t,"mousedown",this._onTapStart),H(t,"touchstart",this._onTapStart)),this.nativeDraggable&&(H(t,"dragover",this),H(t,"dragenter",this)),Wt.push(this.el),e.store&&e.store.get&&this.sort(e.store.get(this)||[]),O(this,(r=[],{captureAnimationState:function(){r=[],this.options.animation&&[].slice.call(this.el.children).forEach((function(t){if("none"!==Z(t,"display")&&t!==le.ghost){r.push({target:t,rect:Q(t)});var e=P({},r[r.length-1].rect);if(t.thisAnimationDuration){var n=G(t,!0);n&&(e.top-=n.f,e.left-=n.e)}t.fromRect=e}}))},addAnimationState:function(t){r.push(t)},removeAnimationState:function(t){r.splice(function(t,e){for(var n in t)if(t.hasOwnProperty(n))for(var r in e)if(e.hasOwnProperty(r)&&e[r]===t[n][r])return Number(n);return-1}(r,{target:t}),1)},animateAll:function(t){var e=this;if(!this.options.animation)return clearTimeout(n),void("function"==typeof t&&t());var i=!1,a=0;r.forEach((function(t){var n=0,r=t.target,o=r.fromRect,l=Q(r),s=r.prevFromRect,u=r.prevToRect,c=t.rect,f=G(r,!0);f&&(l.top-=f.f,l.left-=f.e),r.toRect=l,r.thisAnimationDuration&&ot(s,l)&&!ot(o,l)&&(c.top-l.top)/(c.left-l.left)==(o.top-l.top)/(o.left-l.left)&&(n=function(t,e,n,r){return Math.sqrt(Math.pow(e.top-t.top,2)+Math.pow(e.left-t.left,2))/Math.sqrt(Math.pow(e.top-n.top,2)+Math.pow(e.left-n.left,2))*r.animation}(c,s,u,e.options)),ot(l,o)||(r.prevFromRect=o,r.prevToRect=l,n||(n=e.options.animation),e.animate(r,c,l,n)),n&&(i=!0,a=Math.max(a,n),clearTimeout(r.animationResetTimer),r.animationResetTimer=setTimeout((function(){r.animationTime=0,r.prevFromRect=null,r.fromRect=null,r.prevToRect=null,r.thisAnimationDuration=null}),n),r.thisAnimationDuration=n)})),clearTimeout(n),i?n=setTimeout((function(){"function"==typeof t&&t()}),a):"function"==typeof t&&t(),r=[]},animate:function(t,e,n,r){if(r){Z(t,"transition",""),Z(t,"transform","");var i=G(this.el),a=i&&i.a,o=i&&i.d,l=(e.left-n.left)/(a||1),s=(e.top-n.top)/(o||1);t.animatingX=!!l,t.animatingY=!!s,Z(t,"transform","translate3d("+l+"px,"+s+"px,0)"),this.forRepaintDummy=function(t){return t.offsetWidth}(t),Z(t,"transition","transform "+r+"ms"+(this.options.easing?" "+this.options.easing:"")),Z(t,"transform","translate3d(0,0,0)"),"number"==typeof t.animated&&clearTimeout(t.animated),t.animated=setTimeout((function(){Z(t,"transition",""),Z(t,"transform",""),t.animated=!1,t.animatingX=!1,t.animatingY=!1}),r)}}}))}function se(t,e,n,r,i,a,o,l){var s,u,c=t[ct],f=c.options.onMove;return!window.CustomEvent||M||R?(s=document.createEvent("Event")).initEvent("move",!0,!0):s=new CustomEvent("move",{bubbles:!0,cancelable:!0}),s.to=e,s.from=t,s.dragged=n,s.draggedRect=r,s.related=i||e,s.relatedRect=a||Q(e),s.willInsertAfter=l,s.originalEvent=o,t.dispatchEvent(s),f&&(u=f.call(c,s,o)),u}function ue(t){t.draggable=!1}function ce(){Xt=!1}function fe(t){for(var e=t.tagName+t.className+t.src+t.href+t.textContent,n=e.length,r=0;n--;)r+=e.charCodeAt(n);return r.toString(36)}function he(t){return setTimeout(t,0)}function de(t){return clearTimeout(t)}le.prototype={constructor:le,_isOutsideThisEl:function(t){this.el.contains(t)||t===this.el||(Bt=null)},_getDirection:function(t,e){return"function"==typeof this.options.direction?this.options.direction.call(this,t,e,bt):this.options.direction},_onTapStart:function(t){if(t.cancelable){var e=this,n=this.el,r=this.options,i=r.preventOnFilter,a=t.type,o=t.touches&&t.touches[0]||t.pointerType&&"touch"===t.pointerType&&t,l=(o||t).target,s=t.target.shadowRoot&&(t.path&&t.path[0]||t.composedPath&&t.composedPath()[0])||l,u=r.filter;if(function(t){Zt.length=0;for(var e=t.getElementsByTagName("input"),n=e.length;n--;){var r=e[n];r.checked&&Zt.push(r)}}(n),!bt&&!(/mousedown|pointerdown/.test(a)&&0!==t.button||r.disabled)&&!s.isContentEditable&&(this.nativeDraggable||!F||!l||"SELECT"!==l.tagName.toUpperCase())&&!((l=q(l,r.draggable,n,!1))&&l.animated||Ct===l)){if(St=rt(l),Pt=rt(l,r.draggable),"function"==typeof u){if(u.call(this,t,l,this))return gt({sortable:e,rootEl:s,name:"filter",targetEl:l,toEl:n,fromEl:n}),vt("filter",e,{evt:t}),void(i&&t.cancelable&&t.preventDefault())}else if(u&&(u=u.split(",").some((function(r){if(r=q(s,r.trim(),n,!1))return gt({sortable:e,rootEl:r,name:"filter",targetEl:l,fromEl:n,toEl:n}),vt("filter",e,{evt:t}),!0}))))return void(i&&t.cancelable&&t.preventDefault());r.handle&&!q(s,r.handle,n,!1)||this._prepareDragStart(t,o,l)}}},_prepareDragStart:function(t,e,n){var r,i=this,a=i.el,o=i.options,l=a.ownerDocument;if(n&&!bt&&n.parentNode===a){var s=Q(n);if(yt=a,mt=(bt=n).parentNode,wt=bt.nextSibling,Ct=n,Tt=o.group,le.dragged=bt,At={target:bt,clientX:(e||t).clientX,clientY:(e||t).clientY},jt=At.clientX-s.left,Ft=At.clientY-s.top,this._lastX=(e||t).clientX,this._lastY=(e||t).clientY,bt.style["will-change"]="all",r=function(){vt("delayEnded",i,{evt:t}),le.eventCanceled?i._onDrop():(i._disableDelayedDragEvents(),!j&&i.nativeDraggable&&(bt.draggable=!0),i._triggerDragStart(t,e),gt({sortable:i,name:"choose",originalEvent:t}),X(bt,o.chosenClass,!0))},o.ignore.split(",").forEach((function(t){K(bt,t.trim(),ue)})),H(l,"dragover",ae),H(l,"mousemove",ae),H(l,"touchmove",ae),H(l,"mouseup",i._onDrop),H(l,"touchend",i._onDrop),H(l,"touchcancel",i._onDrop),j&&this.nativeDraggable&&(this.options.touchStartThreshold=4,bt.draggable=!0),vt("delayStart",this,{evt:t}),!o.delay||o.delayOnTouchOnly&&!e||this.nativeDraggable&&(R||M))r();else{if(le.eventCanceled)return void this._onDrop();H(l,"mouseup",i._disableDelayedDrag),H(l,"touchend",i._disableDelayedDrag),H(l,"touchcancel",i._disableDelayedDrag),H(l,"mousemove",i._delayedDragTouchMoveHandler),H(l,"touchmove",i._delayedDragTouchMoveHandler),o.supportPointer&&H(l,"pointermove",i._delayedDragTouchMoveHandler),i._dragStartTimer=setTimeout(r,o.delay)}}},_delayedDragTouchMoveHandler:function(t){var e=t.touches?t.touches[0]:t;Math.max(Math.abs(e.clientX-this._lastX),Math.abs(e.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){bt&&ue(bt),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var t=this.el.ownerDocument;z(t,"mouseup",this._disableDelayedDrag),z(t,"touchend",this._disableDelayedDrag),z(t,"touchcancel",this._disableDelayedDrag),z(t,"mousemove",this._delayedDragTouchMoveHandler),z(t,"touchmove",this._delayedDragTouchMoveHandler),z(t,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(t,e){e=e||"touch"==t.pointerType&&t,!this.nativeDraggable||e?this.options.supportPointer?H(document,"pointermove",this._onTouchMove):H(document,e?"touchmove":"mousemove",this._onTouchMove):(H(bt,"dragend",this),H(yt,"dragstart",this._onDragStart));try{document.selection?he((function(){document.selection.empty()})):window.getSelection().removeAllRanges()}catch(t){}},_dragStarted:function(t,e){if(zt=!1,yt&&bt){vt("dragStarted",this,{evt:e}),this.nativeDraggable&&H(document,"dragover",oe);var n=this.options;!t&&X(bt,n.dragClass,!1),X(bt,n.ghostClass,!0),le.active=this,t&&this._appendGhost(),gt({sortable:this,name:"start",originalEvent:e})}else this._nulling()},_emulateDragOver:function(){if(It){this._lastX=It.clientX,this._lastY=It.clientY,re();for(var t=document.elementFromPoint(It.clientX,It.clientY),e=t;t&&t.shadowRoot&&(t=t.shadowRoot.elementFromPoint(It.clientX,It.clientY))!==e;)e=t;if(bt.parentNode[ct]._isOutsideThisEl(t),e)do{if(e[ct]&&e[ct]._onDragOver({clientX:It.clientX,clientY:It.clientY,target:t,rootEl:e})&&!this.options.dragoverBubble)break;t=e}while(e=e.parentNode);ie()}},_onTouchMove:function(t){if(At){var e=this.options,n=e.fallbackTolerance,r=e.fallbackOffset,i=t.touches?t.touches[0]:t,a=_t&&G(_t,!0),o=_t&&a&&a.a,l=_t&&a&&a.d,s=Kt&&Ht&&it(Ht),u=(i.clientX-At.clientX+r.x)/(o||1)+(s?s[0]-Yt[0]:0)/(o||1),c=(i.clientY-At.clientY+r.y)/(l||1)+(s?s[1]-Yt[1]:0)/(l||1);if(!le.active&&!zt){if(n&&Math.max(Math.abs(i.clientX-this._lastX),Math.abs(i.clientY-this._lastY))r.right+10||t.clientX<=r.right&&t.clientY>r.bottom&&t.clientX>=r.left:t.clientX>r.right&&t.clientY>r.top||t.clientX<=r.right&&t.clientY>r.bottom+10}(t,i,this)&&!v.animated){if(v===bt)return I(!1);if(v&&a===t.target&&(o=v),o&&(n=Q(o)),!1!==se(yt,a,bt,e,o,n,t,!!o))return A(),v&&v.nextSibling?a.insertBefore(bt,v.nextSibling):a.appendChild(bt),mt=a,M(),I(!0)}else if(v&&function(t,e,n){var r=Q(et(n.el,0,n.options,!0));return e?t.clientXc+u*a/2:sf-$t)return-Lt}else if(s>c+u*(1-i)/2&&sf-u*a/2)?s>c+u/2?1:-1:0}(t,o,n,i,w?1:l.swapThreshold,null==l.invertedSwapThreshold?l.swapThreshold:l.invertedSwapThreshold,Vt,Bt===o),0!==b){var S=rt(bt);do{S-=b,_=mt.children[S]}while(_&&("none"===Z(_,"display")||_===_t))}if(0===b||_===o)return I(!1);Bt=o,Lt=b;var D=o.nextElementSibling,E=!1,T=se(yt,a,bt,e,o,n,t,E=1===b);if(!1!==T)return 1!==T&&-1!==T||(E=1===T),Xt=!0,setTimeout(ce,30),A(),E&&!D?a.appendChild(bt):o.parentNode.insertBefore(bt,E?D:o),k&&st(k,0,x-k.scrollTop),mt=bt.parentNode,void 0===m||Vt||($t=Math.abs(m-Q(o)[C])),M(),I(!0)}if(a.contains(bt))return I(!1)}return!1}function O(l,s){vt(l,d,P({evt:t,isOwner:c,axis:i?"vertical":"horizontal",revert:r,dragRect:e,targetRect:n,canSort:f,fromSortable:h,target:o,completed:I,onMove:function(n,r){return se(yt,a,bt,e,n,Q(n),t,r)},changed:M},s))}function A(){O("dragOverAnimationCapture"),d.captureAnimationState(),d!==h&&h.captureAnimationState()}function I(e){return O("dragOverCompleted",{insertion:e}),e&&(c?u._hideClone():u._showClone(d),d!==h&&(X(bt,Ot?Ot.options.ghostClass:u.options.ghostClass,!1),X(bt,l.ghostClass,!0)),Ot!==d&&d!==le.active?Ot=d:d===le.active&&Ot&&(Ot=null),h===d&&(d._ignoreWhileAnimating=o),d.animateAll((function(){O("dragOverAnimationComplete"),d._ignoreWhileAnimating=null})),d!==h&&(h.animateAll(),h._ignoreWhileAnimating=null)),(o===bt&&!bt.animated||o===a&&!o.animated)&&(Bt=null),l.dragoverBubble||t.rootEl||o===document||(bt.parentNode[ct]._isOutsideThisEl(t.target),!e&&ae(t)),!l.dragoverBubble&&t.stopPropagation&&t.stopPropagation(),p=!0}function M(){Dt=rt(bt),Et=rt(bt,l.draggable),gt({sortable:d,name:"change",toEl:a,newIndex:Dt,newDraggableIndex:Et,originalEvent:t})}},_ignoreWhileAnimating:null,_offMoveEvents:function(){z(document,"mousemove",this._onTouchMove),z(document,"touchmove",this._onTouchMove),z(document,"pointermove",this._onTouchMove),z(document,"dragover",ae),z(document,"mousemove",ae),z(document,"touchmove",ae)},_offUpEvents:function(){var t=this.el.ownerDocument;z(t,"mouseup",this._onDrop),z(t,"touchend",this._onDrop),z(t,"pointerup",this._onDrop),z(t,"touchcancel",this._onDrop),z(document,"selectstart",this)},_onDrop:function(t){var e=this.el,n=this.options;Dt=rt(bt),Et=rt(bt,n.draggable),vt("drop",this,{evt:t}),mt=bt&&bt.parentNode,Dt=rt(bt),Et=rt(bt,n.draggable),le.eventCanceled||(zt=!1,Vt=!1,qt=!1,clearInterval(this._loopId),clearTimeout(this._dragStartTimer),de(this.cloneId),de(this._dragStartId),this.nativeDraggable&&(z(document,"drop",this),z(e,"dragstart",this._onDragStart)),this._offMoveEvents(),this._offUpEvents(),F&&Z(document.body,"user-select",""),Z(bt,"transform",""),t&&(Nt&&(t.cancelable&&t.preventDefault(),!n.dropBubble&&t.stopPropagation()),_t&&_t.parentNode&&_t.parentNode.removeChild(_t),(yt===mt||Ot&&"clone"!==Ot.lastPutMode)&&kt&&kt.parentNode&&kt.parentNode.removeChild(kt),bt&&(this.nativeDraggable&&z(bt,"dragend",this),ue(bt),bt.style["will-change"]="",Nt&&!zt&&X(bt,Ot?Ot.options.ghostClass:this.options.ghostClass,!1),X(bt,this.options.chosenClass,!1),gt({sortable:this,name:"unchoose",toEl:mt,newIndex:null,newDraggableIndex:null,originalEvent:t}),yt!==mt?(Dt>=0&&(gt({rootEl:mt,name:"add",toEl:mt,fromEl:yt,originalEvent:t}),gt({sortable:this,name:"remove",toEl:mt,originalEvent:t}),gt({rootEl:mt,name:"sort",toEl:mt,fromEl:yt,originalEvent:t}),gt({sortable:this,name:"sort",toEl:mt,originalEvent:t})),Ot&&Ot.save()):Dt!==St&&Dt>=0&&(gt({sortable:this,name:"update",toEl:mt,originalEvent:t}),gt({sortable:this,name:"sort",toEl:mt,originalEvent:t})),le.active&&(null!=Dt&&-1!==Dt||(Dt=St,Et=Pt),gt({sortable:this,name:"end",toEl:mt,originalEvent:t}),this.save())))),this._nulling()},_nulling:function(){vt("nulling",this),yt=bt=mt=_t=wt=kt=Ct=xt=At=It=Nt=Dt=Et=St=Pt=Bt=Lt=Ot=Tt=le.dragged=le.ghost=le.clone=le.active=null,Zt.forEach((function(t){t.checked=!0})),Zt.length=Mt=Rt=0},handleEvent:function(t){switch(t.type){case"drop":case"dragend":this._onDrop(t);break;case"dragenter":case"dragover":bt&&(this._onDragOver(t),function(t){t.dataTransfer&&(t.dataTransfer.dropEffect="move"),t.cancelable&&t.preventDefault()}(t));break;case"selectstart":t.preventDefault()}},toArray:function(){for(var t,e=[],n=this.el.children,r=0,i=n.length,a=this.options;rt.length)&&(e=t.length);for(var n=0,r=new Array(e);n0&&void 0!==arguments[0])||arguments[0];this.isLoading=t,t&&this.onLoading instanceof Function&&this.onLoading()},startReorder:function(){this.dragging=!0},endReorder:function(){this.dragging=!1},handleReorder:function(t){var e=this,n=Oe(t.target.querySelectorAll(".vue-table-move-handle"));if(n.length){var r=(0,Te.map)(n,(function(t){return t.dataset.id})),i={ids:JSON.stringify(r),startPosition:1+(this.currentPage>1?(this.currentPage-1)*this.perPage:0)};Craft.sendActionRequest("POST",this.reorderAction,{data:i}).then((function(t){Craft.cp.displayNotice(Craft.escapeHtml(e.reorderSuccessMessage))}))}else Craft.cp.displayError(Craft.escapeHtml(this.reorderFailMessage))},addCheck:function(t){-1===this.checks.indexOf(t)&&(this.checks.length>=1&&!this.allowMultipleSelections&&(this.checks=[]),this.checks.push(t)),this.handleOnSelectCallback(this.checks)},removeCheck:function(t){var e=this.checks.indexOf(t);e>=0&&this.checks.splice(e,1),this.handleOnSelectCallback(this.checks)},handleSearch:(0,Te.debounce)((function(){this.$refs.vuetable&&this.$refs.vuetable.gotoPage(1),this.reload()}),350),handleSelectAll:function(){var t=this,e=this.$refs.vuetable.tableData,n=e.length-this.disabledCheckboxesCount;this.checks.length!=n?e.forEach((function(e){t.checkboxStatus instanceof Function&&t.checkboxStatus(e)&&t.addCheck(e.id)})):this.checks=[],this.handleOnSelectCallback(this.checks)},handleDetailRow:function(t){this.$refs.vuetable.toggleDetailRow(t)},deselectAll:function(){this.checks=[],this.handleOnSelectCallback(this.checks)},reload:function(){this.isLoading=!0,this.deselectAll(),this.$refs.vuetable.reload()},remove:function(t,e){this.isLoading=!0,this.apiUrl?(this.deselectAll(),this.$refs.vuetable.reload()):(Vue.delete(this.$refs.vuetable.tableData,t),this.removeCheck(e),this.$refs.vuetable.refresh()),this.deleteCallback&&"[object Function]"==={}.toString.call(this.deleteCallback)&&this.deleteCallback(e),this.isLoading=!1},onLoadSuccess:function(t){if(t&&t.data&&t.data.data){var e=t.data.data;this.$emit("data",e),this.onData instanceof Function&&this.onData(e)}},onPaginationData:function(t){this.currentPage=t.current_page,this.$refs.pagination.setPaginationData(t),this.deselectAll(),this.onPagination instanceof Function&&this.onPagination(t)},onChangePage:function(t){this.$refs.vuetable.changePage(t),this.deselectAll()},handleOnSelectCallback:function(t){this.$emit("onSelect",t),this.onSelect instanceof Function&&this.onSelect(t)}},computed:{tableId:function(){return this.container?this.container.replace(/[#.]/g,""):""},apiUrl:function(){return this.tableDataEndpoint?Craft.getActionUrl(this.tableDataEndpoint):""},appendParams:function(){return this.searchTerm?{search:this.searchTerm}:{}},canDelete:function(){return!(this.minItems&&this.$refs.vuetable.tableData.length<=this.minItems)},canReorder:function(){return this.$refs.vuetable.tableData.length>1&&this.reorderAction&&this.$el.querySelector(this.tableBodySelector)&&!this.$refs.vuetable.tablePagination},detailRowComponent:function(){return this.tableDataEndpoint||this.tableData&&0!=this.tableData.length&&this.tableData.some((function(t){return Object.keys(t).indexOf("detail")>=0}))?this.detailRow:""},disabledCheckboxesCount:function(){var t=this,e=0;return this.$refs.vuetable.tableData.length&&(e=this.$refs.vuetable.tableData.filter((function(e){return!t.checkboxStatus(e)})).length),e},fields:function(){var t=this,e=[];if(this.checkboxes){var n="";this.allowMultipleSelections&&(n=''),e.push({name:"__slot:checkbox",titleClass:"thin",title:n,dataClass:"checkbox-cell"})}var r=(0,Te.map)(this.columns,(function(e){return t.reorderAction&&e.hasOwnProperty("sortField")&&delete e.sortField,e.title=Craft.escapeHtml(e.title),e}));return e=[].concat(Oe(e),Oe(r)),this.reorderAction&&e.push({name:"__slot:reorder",title:"",titleClass:"thin"}),this.deleteAction&&e.push({name:"__slot:delete",titleClass:"thin"}),e},searchPlaceholderText:function(){return Craft.escapeHtml(this.searchPlaceholder)},showToolbar:function(){return this.actions.length||this.search&&!this.tableData.length},tableCss:function(){var t=this.tableClass;return this.dragging&&(t+=" vue-admin-table-dragging"),{ascendingClass:"ordered asc",descendingClass:"ordered desc",sortableIcon:"orderable",handleIcon:"move icon",loadingClass:"loading",tableClass:t}}},watch:{checks:function(){if(this.selectAll){var t=this.selectAll.querySelector(".checkbox");this.checks.length&&this.checks.length==this.$refs.vuetable.tableData.length?(t.classList.add("checked"),t.classList.remove("indeterminate")):this.checks.length&&this.checks.length!=this.$refs.vuetable.tableData.length?(t.classList.remove("checked"),t.classList.add("indeterminate")):(t.classList.remove("checked"),t.classList.remove("indeterminate"))}},dragging:function(t){document.querySelector("header#header").style.pointerEvents=t?"none":""}}},Me=Ie,Re=(n(95),l(Me,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"vue-admin-table",class:{"vue-admin-table-padded":t.padded},attrs:{id:t.tableId}},[e("div",{directives:[{name:"show",rawName:"v-show",value:t.showToolbar,expression:"showToolbar"}],staticClass:"toolbar"},[e("div",{staticClass:"flex flex-nowrap"},[t._l(t.actions,(function(n,r){return e("div",{key:r},[e("admin-table-action-button",{attrs:{label:n.label,icon:n.icon,action:n.action,actions:n.actions,"allow-multiple":n.allowMultiple,ids:t.checks,enabled:!!t.checks.length,error:n.error,ajax:n.ajax},on:{reload:t.reload}})],1)})),t._v(" "),t.search&&!t.tableData.length?e("div",{staticClass:"flex-grow texticon search icon clearable"},[e("input",{directives:[{name:"model",rawName:"v-model",value:t.searchTerm,expression:"searchTerm"}],staticClass:"text fullwidth",attrs:{type:"text",autocomplete:"off",placeholder:t.searchPlaceholderText},domProps:{value:t.searchTerm},on:{input:[function(e){e.target.composing||(t.searchTerm=e.target.value)},t.handleSearch]}}),t._v(" "),e("div",{staticClass:"clear hidden",attrs:{title:t.searchClearTitle}})]):t._e(),t._v(" "),t.buttons&&t.buttons.length?e("div",{staticClass:"vue-admin-table-buttons"},[e("div",{staticClass:"flex flex-nowrap"},t._l(t.buttons,(function(n,r){return e("div",{key:r},[e("admin-table-button",{attrs:{label:n.label,icon:n.icon,href:n.href,"btn-class":n.class,enabled:!t.isLoading&&(null==n.enabled||n.enabled)}})],1)})),0)]):t._e()],2)]),t._v(" "),e("div",{class:{"content-pane":t.fullPage}},[this.isEmpty?e("div",{staticClass:"zilch"},[e("p",[t._v(t._s(t.emptyMessage))])]):t._e(),t._v(" "),e("div",{staticClass:"tableview",class:{loading:t.isLoading,hidden:this.isEmpty}},[e("div",{class:{"vue-admin-tablepane":!0,tablepane:t.fullPane}},[e("vuetable",{ref:"vuetable",attrs:{"append-params":t.appendParams,"api-mode":!!t.apiUrl,"api-url":t.apiUrl,css:t.tableCss,data:t.tableData,"detail-row-component":t.detailRowComponent,fields:t.fields,"per-page":t.perPage,"pagination-path":"pagination"},on:{"vuetable:loaded":t.init,"vuetable:loading":t.loading,"vuetable:pagination-data":t.onPaginationData,"vuetable:load-success":t.onLoadSuccess},scopedSlots:t._u([{key:"checkbox",fn:function(n){return[e("admin-table-checkbox",{attrs:{id:n.rowData.id,checks:t.checks,status:t.checkboxStatus(n.rowData)},on:{addCheck:t.addCheck,removeCheck:t.removeCheck}})]}},{key:"title",fn:function(n){return[void 0!==n.rowData.status?e("span",{staticClass:"status",class:{enabled:n.rowData.status}}):t._e(),t._v(" "),n.rowData.url?e("a",{class:{"cell-bold":void 0===n.rowData.status},attrs:{href:n.rowData.url}},[t._v(t._s(n.rowData.title))]):e("span",{class:{"cell-bold":void 0===n.rowData.status}},[t._v(t._s(n.rowData.title))])]}},{key:"handle",fn:function(t){return[e("admin-table-copy-text-button",{key:t.rowData.id,attrs:{value:t.rowData.handle}})]}},{key:"menu",fn:function(n){return[n.rowData.menu.showItems?[e("a",{attrs:{href:n.rowData.menu.url}},[t._v(t._s(n.rowData.menu.label)+" ("+t._s(n.rowData.menu.items.length)+")")]),t._v(" "),e("a",{staticClass:"menubtn",attrs:{title:n.rowData.menu.label}}),t._v(" "),e("div",{staticClass:"menu"},[e("ul",t._l(n.rowData.menu.items,(function(n,r){return e("li",{key:r},[e("a",{attrs:{href:n.url}},[t._v(t._s(n.label))])])})),0)])]:[e("a",{attrs:{href:n.rowData.menu.url}},[t._v(t._s(n.rowData.menu.label))])]]}},{key:"detail",fn:function(n){return[n.rowData.detail.content&&n.rowData.detail.handle?e("div",{staticClass:"detail-cursor-pointer",domProps:{innerHTML:t._s(n.rowData.detail.handle)},on:{click:function(e){return t.handleDetailRow(n.rowData.id)}}}):t._e(),t._v(" "),!n.rowData.detail.content||n.rowData.detail.handle&&null!=n.rowData.detail.handle||!Object.keys(n.rowData.detail.content).length&&!n.rowData.detail.content.length?t._e():e("div",{staticClass:"detail-cursor-pointer",attrs:{"data-icon":"info",title:n.rowData.detail.title},on:{click:function(e){return t.handleDetailRow(n.rowData.id)}}})]}},{key:"reorder",fn:function(n){return[e("i",{staticClass:"move icon vue-table-move-handle",class:{disabled:!t.canReorder},attrs:{"data-id":n.rowData.id}})]}},{key:"delete",fn:function(n){return[null==n.rowData._showDelete||1==n.rowData._showDelete?e("admin-table-delete-button",{attrs:{id:n.rowData.id,name:n.rowData.title,before:t.beforeDelete,"success-message":t.deleteSuccessMessage,"confirmation-message":t.deleteConfirmationMessage,"fail-message":t.deleteFailMessage,"action-url":t.deleteAction,disabled:!t.canDelete},on:{loading:function(e){return t.loading()},finishloading:function(e){return t.loading(!1)},reload:function(e){return t.remove(n.rowIndex,n.rowData.id)}}}):t._e()]}}])})],1),t._v(" "),e("admin-table-pagination",{ref:"pagination",attrs:{itemLabels:t.itemLabels},on:{"vuetable-pagination:change-page":t.onChangePage}})],1)])])}),[],!1,null,null,null)),je=Re.exports;Craft.VueAdminTable=Garnish.Base.extend({init:function(t){this.setSettings(t,Craft.VueAdminTable.defaults);var n=this.settings;return new(e())({components:{AdminTable:je},data:function(){return{}},render:function(t){return t(je,{props:n})}}).$mount(this.settings.container)}},{defaults:{actions:[],checkboxes:!1,checkboxStatus:function(){return!0},columns:[],container:null,deleteAction:null,reorderAction:null,reorderSuccessMessage:Craft.t("app","Items reordered."),reorderFailMessage:Craft.t("app","Couldn’t reorder items."),search:!1,searchPlaceholder:Craft.t("app","Search"),buttons:[],tableData:[],tableDataEndpoint:null,onLoaded:$.noop,onLoading:$.noop,onData:$.noop,onPagination:$.noop,onSelect:$.noop}})}()}(); //# sourceMappingURL=app.js.map \ No newline at end of file diff --git a/src/web/assets/admintable/dist/js/app.js.map b/src/web/assets/admintable/dist/js/app.js.map index 8e2ca7406b2..f433f341b45 100644 --- a/src/web/assets/admintable/dist/js/app.js.map +++ b/src/web/assets/admintable/dist/js/app.js.map @@ -1 +1 @@ -{"version":3,"file":"js/app.js","mappings":"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","sources":["webpack:///../../../../../node_modules/lodash/lodash.js","webpack:///../../../../../node_modules/vuetable-2/src/components/Vuetable.vue?0d13","webpack:///../../../../../packages/craftcms-vue/admintable/App.vue?11f5","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableCheckbox.vue?99c2","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableDetailRow.vue?eb04","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTablePagination.vue?a444","webpack:///../node_modules/vue-style-loader/lib/listToStyles.js","webpack:///../node_modules/vue-style-loader/lib/addStylesClient.js","webpack:///webpack/bootstrap","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/global","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///webpack/runtime/node module decorator","webpack:///external var \"Vue\"","webpack:///external var \"axios\"","webpack:///../../../../../node_modules/vuetable-2/src/components/Vuetable.vue","webpack:///../../../../../node_modules/vuetable-2/src/components/Vuetable.vue?51b0","webpack:///../node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack:///../../../../../node_modules/vuetable-2/src/components/Vuetable.vue?2c18","webpack:///../../../../../node_modules/vuetable-2/src/components/Vuetable.vue?36b4","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTablePagination.vue?72f2","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTablePagination.vue","webpack:///../../../../../node_modules/vuetable-2/src/components/VuetablePaginationMixin.vue?f45d","webpack:///../../../../../node_modules/vuetable-2/src/components/VuetablePaginationMixin.vue","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTablePagination.vue?40c9","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTablePagination.vue?a215","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableDeleteButton.vue?a480","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableDeleteButton.vue","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableDeleteButton.vue?caa4","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableCheckbox.vue?a6d1","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableCheckbox.vue","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableCheckbox.vue?e83c","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableCheckbox.vue?d8db","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableActionButton.vue?d3cd","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableActionButton.vue","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableActionButton.vue?c386","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableDetailRow.vue","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableDetailRow.vue?520b","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableDetailRow.vue?41cf","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableDetailRow.vue?ad1a","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableButton.vue?2253","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableButton.vue","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableButton.vue?b159","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableCopyTextButton.vue?4b3d","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableCopyTextButton.vue","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableCopyTextButton.vue?cb99","webpack:///../../../../../node_modules/sortablejs/modular/sortable.esm.js","webpack:///../../../../../packages/craftcms-vue/admintable/App.vue","webpack:///../../../../../packages/craftcms-vue/admintable/App.vue?5f58","webpack:///../../../../../packages/craftcms-vue/admintable/App.vue?dfaa","webpack:///../../../../../packages/craftcms-vue/admintable/App.vue?bfb6","webpack:///./main.js"],"sourcesContent":["/**\n * @license\n * Lodash \n * Copyright OpenJS Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n;(function() {\n\n /** Used as a safe reference for `undefined` in pre-ES5 environments. */\n var undefined;\n\n /** Used as the semantic version number. */\n var VERSION = '4.17.21';\n\n /** Used as the size to enable large array optimizations. */\n var LARGE_ARRAY_SIZE = 200;\n\n /** Error message constants. */\n var CORE_ERROR_TEXT = 'Unsupported core-js use. Try https://npms.io/search?q=ponyfill.',\n FUNC_ERROR_TEXT = 'Expected a function',\n INVALID_TEMPL_VAR_ERROR_TEXT = 'Invalid `variable` option passed into `_.template`';\n\n /** Used to stand-in for `undefined` hash values. */\n var HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n /** Used as the maximum memoize cache size. */\n var MAX_MEMOIZE_SIZE = 500;\n\n /** Used as the internal argument placeholder. */\n var PLACEHOLDER = '__lodash_placeholder__';\n\n /** Used to compose bitmasks for cloning. */\n var CLONE_DEEP_FLAG = 1,\n CLONE_FLAT_FLAG = 2,\n CLONE_SYMBOLS_FLAG = 4;\n\n /** Used to compose bitmasks for value comparisons. */\n var COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n /** Used to compose bitmasks for function metadata. */\n var WRAP_BIND_FLAG = 1,\n WRAP_BIND_KEY_FLAG = 2,\n WRAP_CURRY_BOUND_FLAG = 4,\n WRAP_CURRY_FLAG = 8,\n WRAP_CURRY_RIGHT_FLAG = 16,\n WRAP_PARTIAL_FLAG = 32,\n WRAP_PARTIAL_RIGHT_FLAG = 64,\n WRAP_ARY_FLAG = 128,\n WRAP_REARG_FLAG = 256,\n WRAP_FLIP_FLAG = 512;\n\n /** Used as default options for `_.truncate`. */\n var DEFAULT_TRUNC_LENGTH = 30,\n DEFAULT_TRUNC_OMISSION = '...';\n\n /** Used to detect hot functions by number of calls within a span of milliseconds. */\n var HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n /** Used to indicate the type of lazy iteratees. */\n var LAZY_FILTER_FLAG = 1,\n LAZY_MAP_FLAG = 2,\n LAZY_WHILE_FLAG = 3;\n\n /** Used as references for various `Number` constants. */\n var INFINITY = 1 / 0,\n MAX_SAFE_INTEGER = 9007199254740991,\n MAX_INTEGER = 1.7976931348623157e+308,\n NAN = 0 / 0;\n\n /** Used as references for the maximum length and index of an array. */\n var MAX_ARRAY_LENGTH = 4294967295,\n MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1,\n HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1;\n\n /** Used to associate wrap methods with their bit flags. */\n var wrapFlags = [\n ['ary', WRAP_ARY_FLAG],\n ['bind', WRAP_BIND_FLAG],\n ['bindKey', WRAP_BIND_KEY_FLAG],\n ['curry', WRAP_CURRY_FLAG],\n ['curryRight', WRAP_CURRY_RIGHT_FLAG],\n ['flip', WRAP_FLIP_FLAG],\n ['partial', WRAP_PARTIAL_FLAG],\n ['partialRight', WRAP_PARTIAL_RIGHT_FLAG],\n ['rearg', WRAP_REARG_FLAG]\n ];\n\n /** `Object#toString` result references. */\n var argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n asyncTag = '[object AsyncFunction]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n domExcTag = '[object DOMException]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n nullTag = '[object Null]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n proxyTag = '[object Proxy]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]',\n undefinedTag = '[object Undefined]',\n weakMapTag = '[object WeakMap]',\n weakSetTag = '[object WeakSet]';\n\n var arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n /** Used to match empty string literals in compiled template source. */\n var reEmptyStringLeading = /\\b__p \\+= '';/g,\n reEmptyStringMiddle = /\\b(__p \\+=) '' \\+/g,\n reEmptyStringTrailing = /(__e\\(.*?\\)|\\b__t\\)) \\+\\n'';/g;\n\n /** Used to match HTML entities and HTML characters. */\n var reEscapedHtml = /&(?:amp|lt|gt|quot|#39);/g,\n reUnescapedHtml = /[&<>\"']/g,\n reHasEscapedHtml = RegExp(reEscapedHtml.source),\n reHasUnescapedHtml = RegExp(reUnescapedHtml.source);\n\n /** Used to match template delimiters. */\n var reEscape = /<%-([\\s\\S]+?)%>/g,\n reEvaluate = /<%([\\s\\S]+?)%>/g,\n reInterpolate = /<%=([\\s\\S]+?)%>/g;\n\n /** Used to match property names within property paths. */\n var reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/,\n rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n /**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\n var reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g,\n reHasRegExpChar = RegExp(reRegExpChar.source);\n\n /** Used to match leading whitespace. */\n var reTrimStart = /^\\s+/;\n\n /** Used to match a single whitespace character. */\n var reWhitespace = /\\s/;\n\n /** Used to match wrap detail comments. */\n var reWrapComment = /\\{(?:\\n\\/\\* \\[wrapped with .+\\] \\*\\/)?\\n?/,\n reWrapDetails = /\\{\\n\\/\\* \\[wrapped with (.+)\\] \\*/,\n reSplitDetails = /,? & /;\n\n /** Used to match words composed of alphanumeric characters. */\n var reAsciiWord = /[^\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\x7f]+/g;\n\n /**\n * Used to validate the `validate` option in `_.template` variable.\n *\n * Forbids characters which could potentially change the meaning of the function argument definition:\n * - \"(),\" (modification of function parameters)\n * - \"=\" (default value)\n * - \"[]{}\" (destructuring of function parameters)\n * - \"/\" (beginning of a comment)\n * - whitespace\n */\n var reForbiddenIdentifierChars = /[()=,{}\\[\\]\\/\\s]/;\n\n /** Used to match backslashes in property paths. */\n var reEscapeChar = /\\\\(\\\\)?/g;\n\n /**\n * Used to match\n * [ES template delimiters](http://ecma-international.org/ecma-262/7.0/#sec-template-literal-lexical-components).\n */\n var reEsTemplate = /\\$\\{([^\\\\}]*(?:\\\\.[^\\\\}]*)*)\\}/g;\n\n /** Used to match `RegExp` flags from their coerced string values. */\n var reFlags = /\\w*$/;\n\n /** Used to detect bad signed hexadecimal string values. */\n var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n /** Used to detect binary string values. */\n var reIsBinary = /^0b[01]+$/i;\n\n /** Used to detect host constructors (Safari). */\n var reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n /** Used to detect octal string values. */\n var reIsOctal = /^0o[0-7]+$/i;\n\n /** Used to detect unsigned integer values. */\n var reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n /** Used to match Latin Unicode letters (excluding mathematical operators). */\n var reLatin = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g;\n\n /** Used to ensure capturing order of template delimiters. */\n var reNoMatch = /($^)/;\n\n /** Used to match unescaped characters in compiled string literals. */\n var reUnescapedString = /['\\n\\r\\u2028\\u2029\\\\]/g;\n\n /** Used to compose unicode character classes. */\n var rsAstralRange = '\\\\ud800-\\\\udfff',\n rsComboMarksRange = '\\\\u0300-\\\\u036f',\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,\n rsDingbatRange = '\\\\u2700-\\\\u27bf',\n rsLowerRange = 'a-z\\\\xdf-\\\\xf6\\\\xf8-\\\\xff',\n rsMathOpRange = '\\\\xac\\\\xb1\\\\xd7\\\\xf7',\n rsNonCharRange = '\\\\x00-\\\\x2f\\\\x3a-\\\\x40\\\\x5b-\\\\x60\\\\x7b-\\\\xbf',\n rsPunctuationRange = '\\\\u2000-\\\\u206f',\n rsSpaceRange = ' \\\\t\\\\x0b\\\\f\\\\xa0\\\\ufeff\\\\n\\\\r\\\\u2028\\\\u2029\\\\u1680\\\\u180e\\\\u2000\\\\u2001\\\\u2002\\\\u2003\\\\u2004\\\\u2005\\\\u2006\\\\u2007\\\\u2008\\\\u2009\\\\u200a\\\\u202f\\\\u205f\\\\u3000',\n rsUpperRange = 'A-Z\\\\xc0-\\\\xd6\\\\xd8-\\\\xde',\n rsVarRange = '\\\\ufe0e\\\\ufe0f',\n rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;\n\n /** Used to compose unicode capture groups. */\n var rsApos = \"['\\u2019]\",\n rsAstral = '[' + rsAstralRange + ']',\n rsBreak = '[' + rsBreakRange + ']',\n rsCombo = '[' + rsComboRange + ']',\n rsDigits = '\\\\d+',\n rsDingbat = '[' + rsDingbatRange + ']',\n rsLower = '[' + rsLowerRange + ']',\n rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']',\n rsFitz = '\\\\ud83c[\\\\udffb-\\\\udfff]',\n rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',\n rsNonAstral = '[^' + rsAstralRange + ']',\n rsRegional = '(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}',\n rsSurrPair = '[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]',\n rsUpper = '[' + rsUpperRange + ']',\n rsZWJ = '\\\\u200d';\n\n /** Used to compose unicode regexes. */\n var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')',\n rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')',\n rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?',\n rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?',\n reOptMod = rsModifier + '?',\n rsOptVar = '[' + rsVarRange + ']?',\n rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',\n rsOrdLower = '\\\\d*(?:1st|2nd|3rd|(?![123])\\\\dth)(?=\\\\b|[A-Z_])',\n rsOrdUpper = '\\\\d*(?:1ST|2ND|3RD|(?![123])\\\\dTH)(?=\\\\b|[a-z_])',\n rsSeq = rsOptVar + reOptMod + rsOptJoin,\n rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq,\n rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')';\n\n /** Used to match apostrophes. */\n var reApos = RegExp(rsApos, 'g');\n\n /**\n * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and\n * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).\n */\n var reComboMark = RegExp(rsCombo, 'g');\n\n /** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */\n var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g');\n\n /** Used to match complex or compound words. */\n var reUnicodeWord = RegExp([\n rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')',\n rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')',\n rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower,\n rsUpper + '+' + rsOptContrUpper,\n rsOrdUpper,\n rsOrdLower,\n rsDigits,\n rsEmoji\n ].join('|'), 'g');\n\n /** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */\n var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']');\n\n /** Used to detect strings that need a more robust regexp to match words. */\n var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;\n\n /** Used to assign default `context` object properties. */\n var contextProps = [\n 'Array', 'Buffer', 'DataView', 'Date', 'Error', 'Float32Array', 'Float64Array',\n 'Function', 'Int8Array', 'Int16Array', 'Int32Array', 'Map', 'Math', 'Object',\n 'Promise', 'RegExp', 'Set', 'String', 'Symbol', 'TypeError', 'Uint8Array',\n 'Uint8ClampedArray', 'Uint16Array', 'Uint32Array', 'WeakMap',\n '_', 'clearTimeout', 'isFinite', 'parseInt', 'setTimeout'\n ];\n\n /** Used to make template sourceURLs easier to identify. */\n var templateCounter = -1;\n\n /** Used to identify `toStringTag` values of typed arrays. */\n var typedArrayTags = {};\n typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\n typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\n typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\n typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\n typedArrayTags[uint32Tag] = true;\n typedArrayTags[argsTag] = typedArrayTags[arrayTag] =\n typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\n typedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\n typedArrayTags[errorTag] = typedArrayTags[funcTag] =\n typedArrayTags[mapTag] = typedArrayTags[numberTag] =\n typedArrayTags[objectTag] = typedArrayTags[regexpTag] =\n typedArrayTags[setTag] = typedArrayTags[stringTag] =\n typedArrayTags[weakMapTag] = false;\n\n /** Used to identify `toStringTag` values supported by `_.clone`. */\n var cloneableTags = {};\n cloneableTags[argsTag] = cloneableTags[arrayTag] =\n cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] =\n cloneableTags[boolTag] = cloneableTags[dateTag] =\n cloneableTags[float32Tag] = cloneableTags[float64Tag] =\n cloneableTags[int8Tag] = cloneableTags[int16Tag] =\n cloneableTags[int32Tag] = cloneableTags[mapTag] =\n cloneableTags[numberTag] = cloneableTags[objectTag] =\n cloneableTags[regexpTag] = cloneableTags[setTag] =\n cloneableTags[stringTag] = cloneableTags[symbolTag] =\n cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =\n cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;\n cloneableTags[errorTag] = cloneableTags[funcTag] =\n cloneableTags[weakMapTag] = false;\n\n /** Used to map Latin Unicode letters to basic Latin letters. */\n var deburredLetters = {\n // Latin-1 Supplement block.\n '\\xc0': 'A', '\\xc1': 'A', '\\xc2': 'A', '\\xc3': 'A', '\\xc4': 'A', '\\xc5': 'A',\n '\\xe0': 'a', '\\xe1': 'a', '\\xe2': 'a', '\\xe3': 'a', '\\xe4': 'a', '\\xe5': 'a',\n '\\xc7': 'C', '\\xe7': 'c',\n '\\xd0': 'D', '\\xf0': 'd',\n '\\xc8': 'E', '\\xc9': 'E', '\\xca': 'E', '\\xcb': 'E',\n '\\xe8': 'e', '\\xe9': 'e', '\\xea': 'e', '\\xeb': 'e',\n '\\xcc': 'I', '\\xcd': 'I', '\\xce': 'I', '\\xcf': 'I',\n '\\xec': 'i', '\\xed': 'i', '\\xee': 'i', '\\xef': 'i',\n '\\xd1': 'N', '\\xf1': 'n',\n '\\xd2': 'O', '\\xd3': 'O', '\\xd4': 'O', '\\xd5': 'O', '\\xd6': 'O', '\\xd8': 'O',\n '\\xf2': 'o', '\\xf3': 'o', '\\xf4': 'o', '\\xf5': 'o', '\\xf6': 'o', '\\xf8': 'o',\n '\\xd9': 'U', '\\xda': 'U', '\\xdb': 'U', '\\xdc': 'U',\n '\\xf9': 'u', '\\xfa': 'u', '\\xfb': 'u', '\\xfc': 'u',\n '\\xdd': 'Y', '\\xfd': 'y', '\\xff': 'y',\n '\\xc6': 'Ae', '\\xe6': 'ae',\n '\\xde': 'Th', '\\xfe': 'th',\n '\\xdf': 'ss',\n // Latin Extended-A block.\n '\\u0100': 'A', '\\u0102': 'A', '\\u0104': 'A',\n '\\u0101': 'a', '\\u0103': 'a', '\\u0105': 'a',\n '\\u0106': 'C', '\\u0108': 'C', '\\u010a': 'C', '\\u010c': 'C',\n '\\u0107': 'c', '\\u0109': 'c', '\\u010b': 'c', '\\u010d': 'c',\n '\\u010e': 'D', '\\u0110': 'D', '\\u010f': 'd', '\\u0111': 'd',\n '\\u0112': 'E', '\\u0114': 'E', '\\u0116': 'E', '\\u0118': 'E', '\\u011a': 'E',\n '\\u0113': 'e', '\\u0115': 'e', '\\u0117': 'e', '\\u0119': 'e', '\\u011b': 'e',\n '\\u011c': 'G', '\\u011e': 'G', '\\u0120': 'G', '\\u0122': 'G',\n '\\u011d': 'g', '\\u011f': 'g', '\\u0121': 'g', '\\u0123': 'g',\n '\\u0124': 'H', '\\u0126': 'H', '\\u0125': 'h', '\\u0127': 'h',\n '\\u0128': 'I', '\\u012a': 'I', '\\u012c': 'I', '\\u012e': 'I', '\\u0130': 'I',\n '\\u0129': 'i', '\\u012b': 'i', '\\u012d': 'i', '\\u012f': 'i', '\\u0131': 'i',\n '\\u0134': 'J', '\\u0135': 'j',\n '\\u0136': 'K', '\\u0137': 'k', '\\u0138': 'k',\n '\\u0139': 'L', '\\u013b': 'L', '\\u013d': 'L', '\\u013f': 'L', '\\u0141': 'L',\n '\\u013a': 'l', '\\u013c': 'l', '\\u013e': 'l', '\\u0140': 'l', '\\u0142': 'l',\n '\\u0143': 'N', '\\u0145': 'N', '\\u0147': 'N', '\\u014a': 'N',\n '\\u0144': 'n', '\\u0146': 'n', '\\u0148': 'n', '\\u014b': 'n',\n '\\u014c': 'O', '\\u014e': 'O', '\\u0150': 'O',\n '\\u014d': 'o', '\\u014f': 'o', '\\u0151': 'o',\n '\\u0154': 'R', '\\u0156': 'R', '\\u0158': 'R',\n '\\u0155': 'r', '\\u0157': 'r', '\\u0159': 'r',\n '\\u015a': 'S', '\\u015c': 'S', '\\u015e': 'S', '\\u0160': 'S',\n '\\u015b': 's', '\\u015d': 's', '\\u015f': 's', '\\u0161': 's',\n '\\u0162': 'T', '\\u0164': 'T', '\\u0166': 'T',\n '\\u0163': 't', '\\u0165': 't', '\\u0167': 't',\n '\\u0168': 'U', '\\u016a': 'U', '\\u016c': 'U', '\\u016e': 'U', '\\u0170': 'U', '\\u0172': 'U',\n '\\u0169': 'u', '\\u016b': 'u', '\\u016d': 'u', '\\u016f': 'u', '\\u0171': 'u', '\\u0173': 'u',\n '\\u0174': 'W', '\\u0175': 'w',\n '\\u0176': 'Y', '\\u0177': 'y', '\\u0178': 'Y',\n '\\u0179': 'Z', '\\u017b': 'Z', '\\u017d': 'Z',\n '\\u017a': 'z', '\\u017c': 'z', '\\u017e': 'z',\n '\\u0132': 'IJ', '\\u0133': 'ij',\n '\\u0152': 'Oe', '\\u0153': 'oe',\n '\\u0149': \"'n\", '\\u017f': 's'\n };\n\n /** Used to map characters to HTML entities. */\n var htmlEscapes = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": '''\n };\n\n /** Used to map HTML entities to characters. */\n var htmlUnescapes = {\n '&': '&',\n '<': '<',\n '>': '>',\n '"': '\"',\n ''': \"'\"\n };\n\n /** Used to escape characters for inclusion in compiled string literals. */\n var stringEscapes = {\n '\\\\': '\\\\',\n \"'\": \"'\",\n '\\n': 'n',\n '\\r': 'r',\n '\\u2028': 'u2028',\n '\\u2029': 'u2029'\n };\n\n /** Built-in method references without a dependency on `root`. */\n var freeParseFloat = parseFloat,\n freeParseInt = parseInt;\n\n /** Detect free variable `global` from Node.js. */\n var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n /** Detect free variable `self`. */\n var freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n /** Used as a reference to the global object. */\n var root = freeGlobal || freeSelf || Function('return this')();\n\n /** Detect free variable `exports`. */\n var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n /** Detect free variable `module`. */\n var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n /** Detect the popular CommonJS extension `module.exports`. */\n var moduleExports = freeModule && freeModule.exports === freeExports;\n\n /** Detect free variable `process` from Node.js. */\n var freeProcess = moduleExports && freeGlobal.process;\n\n /** Used to access faster Node.js helpers. */\n var nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n }());\n\n /* Node.js helper references. */\n var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer,\n nodeIsDate = nodeUtil && nodeUtil.isDate,\n nodeIsMap = nodeUtil && nodeUtil.isMap,\n nodeIsRegExp = nodeUtil && nodeUtil.isRegExp,\n nodeIsSet = nodeUtil && nodeUtil.isSet,\n nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n /*--------------------------------------------------------------------------*/\n\n /**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\n function apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n }\n\n /**\n * A specialized version of `baseAggregator` for arrays.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform keys.\n * @param {Object} accumulator The initial aggregated object.\n * @returns {Function} Returns `accumulator`.\n */\n function arrayAggregator(array, setter, iteratee, accumulator) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n var value = array[index];\n setter(accumulator, value, iteratee(value), array);\n }\n return accumulator;\n }\n\n /**\n * A specialized version of `_.forEach` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns `array`.\n */\n function arrayEach(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (iteratee(array[index], index, array) === false) {\n break;\n }\n }\n return array;\n }\n\n /**\n * A specialized version of `_.forEachRight` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns `array`.\n */\n function arrayEachRight(array, iteratee) {\n var length = array == null ? 0 : array.length;\n\n while (length--) {\n if (iteratee(array[length], length, array) === false) {\n break;\n }\n }\n return array;\n }\n\n /**\n * A specialized version of `_.every` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if all elements pass the predicate check,\n * else `false`.\n */\n function arrayEvery(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (!predicate(array[index], index, array)) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\n function arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n }\n\n /**\n * A specialized version of `_.includes` for arrays without support for\n * specifying an index to search from.\n *\n * @private\n * @param {Array} [array] The array to inspect.\n * @param {*} target The value to search for.\n * @returns {boolean} Returns `true` if `target` is found, else `false`.\n */\n function arrayIncludes(array, value) {\n var length = array == null ? 0 : array.length;\n return !!length && baseIndexOf(array, value, 0) > -1;\n }\n\n /**\n * This function is like `arrayIncludes` except that it accepts a comparator.\n *\n * @private\n * @param {Array} [array] The array to inspect.\n * @param {*} target The value to search for.\n * @param {Function} comparator The comparator invoked per element.\n * @returns {boolean} Returns `true` if `target` is found, else `false`.\n */\n function arrayIncludesWith(array, value, comparator) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (comparator(value, array[index])) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\n function arrayMap(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length,\n result = Array(length);\n\n while (++index < length) {\n result[index] = iteratee(array[index], index, array);\n }\n return result;\n }\n\n /**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\n function arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n }\n\n /**\n * A specialized version of `_.reduce` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @param {boolean} [initAccum] Specify using the first element of `array` as\n * the initial value.\n * @returns {*} Returns the accumulated value.\n */\n function arrayReduce(array, iteratee, accumulator, initAccum) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n if (initAccum && length) {\n accumulator = array[++index];\n }\n while (++index < length) {\n accumulator = iteratee(accumulator, array[index], index, array);\n }\n return accumulator;\n }\n\n /**\n * A specialized version of `_.reduceRight` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @param {boolean} [initAccum] Specify using the last element of `array` as\n * the initial value.\n * @returns {*} Returns the accumulated value.\n */\n function arrayReduceRight(array, iteratee, accumulator, initAccum) {\n var length = array == null ? 0 : array.length;\n if (initAccum && length) {\n accumulator = array[--length];\n }\n while (length--) {\n accumulator = iteratee(accumulator, array[length], length, array);\n }\n return accumulator;\n }\n\n /**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\n function arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * Gets the size of an ASCII `string`.\n *\n * @private\n * @param {string} string The string inspect.\n * @returns {number} Returns the string size.\n */\n var asciiSize = baseProperty('length');\n\n /**\n * Converts an ASCII `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\n function asciiToArray(string) {\n return string.split('');\n }\n\n /**\n * Splits an ASCII `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\n function asciiWords(string) {\n return string.match(reAsciiWord) || [];\n }\n\n /**\n * The base implementation of methods like `_.findKey` and `_.findLastKey`,\n * without support for iteratee shorthands, which iterates over `collection`\n * using `eachFunc`.\n *\n * @private\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} predicate The function invoked per iteration.\n * @param {Function} eachFunc The function to iterate over `collection`.\n * @returns {*} Returns the found element or its key, else `undefined`.\n */\n function baseFindKey(collection, predicate, eachFunc) {\n var result;\n eachFunc(collection, function(value, key, collection) {\n if (predicate(value, key, collection)) {\n result = key;\n return false;\n }\n });\n return result;\n }\n\n /**\n * The base implementation of `_.findIndex` and `_.findLastIndex` without\n * support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} predicate The function invoked per iteration.\n * @param {number} fromIndex The index to search from.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function baseFindIndex(array, predicate, fromIndex, fromRight) {\n var length = array.length,\n index = fromIndex + (fromRight ? 1 : -1);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (predicate(array[index], index, array)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * The base implementation of `_.indexOf` without `fromIndex` bounds checks.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function baseIndexOf(array, value, fromIndex) {\n return value === value\n ? strictIndexOf(array, value, fromIndex)\n : baseFindIndex(array, baseIsNaN, fromIndex);\n }\n\n /**\n * This function is like `baseIndexOf` except that it accepts a comparator.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @param {Function} comparator The comparator invoked per element.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function baseIndexOfWith(array, value, fromIndex, comparator) {\n var index = fromIndex - 1,\n length = array.length;\n\n while (++index < length) {\n if (comparator(array[index], value)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * The base implementation of `_.isNaN` without support for number objects.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.\n */\n function baseIsNaN(value) {\n return value !== value;\n }\n\n /**\n * The base implementation of `_.mean` and `_.meanBy` without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {number} Returns the mean.\n */\n function baseMean(array, iteratee) {\n var length = array == null ? 0 : array.length;\n return length ? (baseSum(array, iteratee) / length) : NAN;\n }\n\n /**\n * The base implementation of `_.property` without support for deep paths.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\n function baseProperty(key) {\n return function(object) {\n return object == null ? undefined : object[key];\n };\n }\n\n /**\n * The base implementation of `_.propertyOf` without support for deep paths.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Function} Returns the new accessor function.\n */\n function basePropertyOf(object) {\n return function(key) {\n return object == null ? undefined : object[key];\n };\n }\n\n /**\n * The base implementation of `_.reduce` and `_.reduceRight`, without support\n * for iteratee shorthands, which iterates over `collection` using `eachFunc`.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} accumulator The initial value.\n * @param {boolean} initAccum Specify using the first or last element of\n * `collection` as the initial value.\n * @param {Function} eachFunc The function to iterate over `collection`.\n * @returns {*} Returns the accumulated value.\n */\n function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) {\n eachFunc(collection, function(value, index, collection) {\n accumulator = initAccum\n ? (initAccum = false, value)\n : iteratee(accumulator, value, index, collection);\n });\n return accumulator;\n }\n\n /**\n * The base implementation of `_.sortBy` which uses `comparer` to define the\n * sort order of `array` and replaces criteria objects with their corresponding\n * values.\n *\n * @private\n * @param {Array} array The array to sort.\n * @param {Function} comparer The function to define sort order.\n * @returns {Array} Returns `array`.\n */\n function baseSortBy(array, comparer) {\n var length = array.length;\n\n array.sort(comparer);\n while (length--) {\n array[length] = array[length].value;\n }\n return array;\n }\n\n /**\n * The base implementation of `_.sum` and `_.sumBy` without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {number} Returns the sum.\n */\n function baseSum(array, iteratee) {\n var result,\n index = -1,\n length = array.length;\n\n while (++index < length) {\n var current = iteratee(array[index]);\n if (current !== undefined) {\n result = result === undefined ? current : (result + current);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\n function baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n }\n\n /**\n * The base implementation of `_.toPairs` and `_.toPairsIn` which creates an array\n * of key-value pairs for `object` corresponding to the property names of `props`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} props The property names to get values for.\n * @returns {Object} Returns the key-value pairs.\n */\n function baseToPairs(object, props) {\n return arrayMap(props, function(key) {\n return [key, object[key]];\n });\n }\n\n /**\n * The base implementation of `_.trim`.\n *\n * @private\n * @param {string} string The string to trim.\n * @returns {string} Returns the trimmed string.\n */\n function baseTrim(string) {\n return string\n ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')\n : string;\n }\n\n /**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\n function baseUnary(func) {\n return function(value) {\n return func(value);\n };\n }\n\n /**\n * The base implementation of `_.values` and `_.valuesIn` which creates an\n * array of `object` property values corresponding to the property names\n * of `props`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} props The property names to get values for.\n * @returns {Object} Returns the array of property values.\n */\n function baseValues(object, props) {\n return arrayMap(props, function(key) {\n return object[key];\n });\n }\n\n /**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function cacheHas(cache, key) {\n return cache.has(key);\n }\n\n /**\n * Used by `_.trim` and `_.trimStart` to get the index of the first string symbol\n * that is not found in the character symbols.\n *\n * @private\n * @param {Array} strSymbols The string symbols to inspect.\n * @param {Array} chrSymbols The character symbols to find.\n * @returns {number} Returns the index of the first unmatched string symbol.\n */\n function charsStartIndex(strSymbols, chrSymbols) {\n var index = -1,\n length = strSymbols.length;\n\n while (++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {}\n return index;\n }\n\n /**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last string symbol\n * that is not found in the character symbols.\n *\n * @private\n * @param {Array} strSymbols The string symbols to inspect.\n * @param {Array} chrSymbols The character symbols to find.\n * @returns {number} Returns the index of the last unmatched string symbol.\n */\n function charsEndIndex(strSymbols, chrSymbols) {\n var index = strSymbols.length;\n\n while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {}\n return index;\n }\n\n /**\n * Gets the number of `placeholder` occurrences in `array`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} placeholder The placeholder to search for.\n * @returns {number} Returns the placeholder count.\n */\n function countHolders(array, placeholder) {\n var length = array.length,\n result = 0;\n\n while (length--) {\n if (array[length] === placeholder) {\n ++result;\n }\n }\n return result;\n }\n\n /**\n * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A\n * letters to basic Latin letters.\n *\n * @private\n * @param {string} letter The matched letter to deburr.\n * @returns {string} Returns the deburred letter.\n */\n var deburrLetter = basePropertyOf(deburredLetters);\n\n /**\n * Used by `_.escape` to convert characters to HTML entities.\n *\n * @private\n * @param {string} chr The matched character to escape.\n * @returns {string} Returns the escaped character.\n */\n var escapeHtmlChar = basePropertyOf(htmlEscapes);\n\n /**\n * Used by `_.template` to escape characters for inclusion in compiled string literals.\n *\n * @private\n * @param {string} chr The matched character to escape.\n * @returns {string} Returns the escaped character.\n */\n function escapeStringChar(chr) {\n return '\\\\' + stringEscapes[chr];\n }\n\n /**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\n function getValue(object, key) {\n return object == null ? undefined : object[key];\n }\n\n /**\n * Checks if `string` contains Unicode symbols.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {boolean} Returns `true` if a symbol is found, else `false`.\n */\n function hasUnicode(string) {\n return reHasUnicode.test(string);\n }\n\n /**\n * Checks if `string` contains a word composed of Unicode symbols.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {boolean} Returns `true` if a word is found, else `false`.\n */\n function hasUnicodeWord(string) {\n return reHasUnicodeWord.test(string);\n }\n\n /**\n * Converts `iterator` to an array.\n *\n * @private\n * @param {Object} iterator The iterator to convert.\n * @returns {Array} Returns the converted array.\n */\n function iteratorToArray(iterator) {\n var data,\n result = [];\n\n while (!(data = iterator.next()).done) {\n result.push(data.value);\n }\n return result;\n }\n\n /**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\n function mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n }\n\n /**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\n function overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n }\n\n /**\n * Replaces all `placeholder` elements in `array` with an internal placeholder\n * and returns an array of their indexes.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {*} placeholder The placeholder to replace.\n * @returns {Array} Returns the new array of placeholder indexes.\n */\n function replaceHolders(array, placeholder) {\n var index = -1,\n length = array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (value === placeholder || value === PLACEHOLDER) {\n array[index] = PLACEHOLDER;\n result[resIndex++] = index;\n }\n }\n return result;\n }\n\n /**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\n function setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n }\n\n /**\n * Converts `set` to its value-value pairs.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the value-value pairs.\n */\n function setToPairs(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = [value, value];\n });\n return result;\n }\n\n /**\n * A specialized version of `_.indexOf` which performs strict equality\n * comparisons of values, i.e. `===`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function strictIndexOf(array, value, fromIndex) {\n var index = fromIndex - 1,\n length = array.length;\n\n while (++index < length) {\n if (array[index] === value) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * A specialized version of `_.lastIndexOf` which performs strict equality\n * comparisons of values, i.e. `===`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function strictLastIndexOf(array, value, fromIndex) {\n var index = fromIndex + 1;\n while (index--) {\n if (array[index] === value) {\n return index;\n }\n }\n return index;\n }\n\n /**\n * Gets the number of symbols in `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the string size.\n */\n function stringSize(string) {\n return hasUnicode(string)\n ? unicodeSize(string)\n : asciiSize(string);\n }\n\n /**\n * Converts `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\n function stringToArray(string) {\n return hasUnicode(string)\n ? unicodeToArray(string)\n : asciiToArray(string);\n }\n\n /**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace\n * character of `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the index of the last non-whitespace character.\n */\n function trimmedEndIndex(string) {\n var index = string.length;\n\n while (index-- && reWhitespace.test(string.charAt(index))) {}\n return index;\n }\n\n /**\n * Used by `_.unescape` to convert HTML entities to characters.\n *\n * @private\n * @param {string} chr The matched character to unescape.\n * @returns {string} Returns the unescaped character.\n */\n var unescapeHtmlChar = basePropertyOf(htmlUnescapes);\n\n /**\n * Gets the size of a Unicode `string`.\n *\n * @private\n * @param {string} string The string inspect.\n * @returns {number} Returns the string size.\n */\n function unicodeSize(string) {\n var result = reUnicode.lastIndex = 0;\n while (reUnicode.test(string)) {\n ++result;\n }\n return result;\n }\n\n /**\n * Converts a Unicode `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\n function unicodeToArray(string) {\n return string.match(reUnicode) || [];\n }\n\n /**\n * Splits a Unicode `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\n function unicodeWords(string) {\n return string.match(reUnicodeWord) || [];\n }\n\n /*--------------------------------------------------------------------------*/\n\n /**\n * Create a new pristine `lodash` function using the `context` object.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Util\n * @param {Object} [context=root] The context object.\n * @returns {Function} Returns a new `lodash` function.\n * @example\n *\n * _.mixin({ 'foo': _.constant('foo') });\n *\n * var lodash = _.runInContext();\n * lodash.mixin({ 'bar': lodash.constant('bar') });\n *\n * _.isFunction(_.foo);\n * // => true\n * _.isFunction(_.bar);\n * // => false\n *\n * lodash.isFunction(lodash.foo);\n * // => false\n * lodash.isFunction(lodash.bar);\n * // => true\n *\n * // Create a suped-up `defer` in Node.js.\n * var defer = _.runInContext({ 'setTimeout': setImmediate }).defer;\n */\n var runInContext = (function runInContext(context) {\n context = context == null ? root : _.defaults(root.Object(), context, _.pick(root, contextProps));\n\n /** Built-in constructor references. */\n var Array = context.Array,\n Date = context.Date,\n Error = context.Error,\n Function = context.Function,\n Math = context.Math,\n Object = context.Object,\n RegExp = context.RegExp,\n String = context.String,\n TypeError = context.TypeError;\n\n /** Used for built-in method references. */\n var arrayProto = Array.prototype,\n funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n /** Used to detect overreaching core-js shims. */\n var coreJsData = context['__core-js_shared__'];\n\n /** Used to resolve the decompiled source of functions. */\n var funcToString = funcProto.toString;\n\n /** Used to check objects for own properties. */\n var hasOwnProperty = objectProto.hasOwnProperty;\n\n /** Used to generate unique IDs. */\n var idCounter = 0;\n\n /** Used to detect methods masquerading as native. */\n var maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n }());\n\n /**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\n var nativeObjectToString = objectProto.toString;\n\n /** Used to infer the `Object` constructor. */\n var objectCtorString = funcToString.call(Object);\n\n /** Used to restore the original `_` reference in `_.noConflict`. */\n var oldDash = root._;\n\n /** Used to detect if a method is native. */\n var reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n );\n\n /** Built-in value references. */\n var Buffer = moduleExports ? context.Buffer : undefined,\n Symbol = context.Symbol,\n Uint8Array = context.Uint8Array,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined,\n getPrototype = overArg(Object.getPrototypeOf, Object),\n objectCreate = Object.create,\n propertyIsEnumerable = objectProto.propertyIsEnumerable,\n splice = arrayProto.splice,\n spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined,\n symIterator = Symbol ? Symbol.iterator : undefined,\n symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n var defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n }());\n\n /** Mocked built-ins. */\n var ctxClearTimeout = context.clearTimeout !== root.clearTimeout && context.clearTimeout,\n ctxNow = Date && Date.now !== root.Date.now && Date.now,\n ctxSetTimeout = context.setTimeout !== root.setTimeout && context.setTimeout;\n\n /* Built-in method references for those with the same name as other `lodash` methods. */\n var nativeCeil = Math.ceil,\n nativeFloor = Math.floor,\n nativeGetSymbols = Object.getOwnPropertySymbols,\n nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined,\n nativeIsFinite = context.isFinite,\n nativeJoin = arrayProto.join,\n nativeKeys = overArg(Object.keys, Object),\n nativeMax = Math.max,\n nativeMin = Math.min,\n nativeNow = Date.now,\n nativeParseInt = context.parseInt,\n nativeRandom = Math.random,\n nativeReverse = arrayProto.reverse;\n\n /* Built-in method references that are verified to be native. */\n var DataView = getNative(context, 'DataView'),\n Map = getNative(context, 'Map'),\n Promise = getNative(context, 'Promise'),\n Set = getNative(context, 'Set'),\n WeakMap = getNative(context, 'WeakMap'),\n nativeCreate = getNative(Object, 'create');\n\n /** Used to store function metadata. */\n var metaMap = WeakMap && new WeakMap;\n\n /** Used to lookup unminified function names. */\n var realNames = {};\n\n /** Used to detect maps, sets, and weakmaps. */\n var dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n /** Used to convert symbols to primitives and strings. */\n var symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a `lodash` object which wraps `value` to enable implicit method\n * chain sequences. Methods that operate on and return arrays, collections,\n * and functions can be chained together. Methods that retrieve a single value\n * or may return a primitive value will automatically end the chain sequence\n * and return the unwrapped value. Otherwise, the value must be unwrapped\n * with `_#value`.\n *\n * Explicit chain sequences, which must be unwrapped with `_#value`, may be\n * enabled using `_.chain`.\n *\n * The execution of chained methods is lazy, that is, it's deferred until\n * `_#value` is implicitly or explicitly called.\n *\n * Lazy evaluation allows several methods to support shortcut fusion.\n * Shortcut fusion is an optimization to merge iteratee calls; this avoids\n * the creation of intermediate arrays and can greatly reduce the number of\n * iteratee executions. Sections of a chain sequence qualify for shortcut\n * fusion if the section is applied to an array and iteratees accept only\n * one argument. The heuristic for whether a section qualifies for shortcut\n * fusion is subject to change.\n *\n * Chaining is supported in custom builds as long as the `_#value` method is\n * directly or indirectly included in the build.\n *\n * In addition to lodash methods, wrappers have `Array` and `String` methods.\n *\n * The wrapper `Array` methods are:\n * `concat`, `join`, `pop`, `push`, `shift`, `sort`, `splice`, and `unshift`\n *\n * The wrapper `String` methods are:\n * `replace` and `split`\n *\n * The wrapper methods that support shortcut fusion are:\n * `at`, `compact`, `drop`, `dropRight`, `dropWhile`, `filter`, `find`,\n * `findLast`, `head`, `initial`, `last`, `map`, `reject`, `reverse`, `slice`,\n * `tail`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, and `toArray`\n *\n * The chainable wrapper methods are:\n * `after`, `ary`, `assign`, `assignIn`, `assignInWith`, `assignWith`, `at`,\n * `before`, `bind`, `bindAll`, `bindKey`, `castArray`, `chain`, `chunk`,\n * `commit`, `compact`, `concat`, `conforms`, `constant`, `countBy`, `create`,\n * `curry`, `debounce`, `defaults`, `defaultsDeep`, `defer`, `delay`,\n * `difference`, `differenceBy`, `differenceWith`, `drop`, `dropRight`,\n * `dropRightWhile`, `dropWhile`, `extend`, `extendWith`, `fill`, `filter`,\n * `flatMap`, `flatMapDeep`, `flatMapDepth`, `flatten`, `flattenDeep`,\n * `flattenDepth`, `flip`, `flow`, `flowRight`, `fromPairs`, `functions`,\n * `functionsIn`, `groupBy`, `initial`, `intersection`, `intersectionBy`,\n * `intersectionWith`, `invert`, `invertBy`, `invokeMap`, `iteratee`, `keyBy`,\n * `keys`, `keysIn`, `map`, `mapKeys`, `mapValues`, `matches`, `matchesProperty`,\n * `memoize`, `merge`, `mergeWith`, `method`, `methodOf`, `mixin`, `negate`,\n * `nthArg`, `omit`, `omitBy`, `once`, `orderBy`, `over`, `overArgs`,\n * `overEvery`, `overSome`, `partial`, `partialRight`, `partition`, `pick`,\n * `pickBy`, `plant`, `property`, `propertyOf`, `pull`, `pullAll`, `pullAllBy`,\n * `pullAllWith`, `pullAt`, `push`, `range`, `rangeRight`, `rearg`, `reject`,\n * `remove`, `rest`, `reverse`, `sampleSize`, `set`, `setWith`, `shuffle`,\n * `slice`, `sort`, `sortBy`, `splice`, `spread`, `tail`, `take`, `takeRight`,\n * `takeRightWhile`, `takeWhile`, `tap`, `throttle`, `thru`, `toArray`,\n * `toPairs`, `toPairsIn`, `toPath`, `toPlainObject`, `transform`, `unary`,\n * `union`, `unionBy`, `unionWith`, `uniq`, `uniqBy`, `uniqWith`, `unset`,\n * `unshift`, `unzip`, `unzipWith`, `update`, `updateWith`, `values`,\n * `valuesIn`, `without`, `wrap`, `xor`, `xorBy`, `xorWith`, `zip`,\n * `zipObject`, `zipObjectDeep`, and `zipWith`\n *\n * The wrapper methods that are **not** chainable by default are:\n * `add`, `attempt`, `camelCase`, `capitalize`, `ceil`, `clamp`, `clone`,\n * `cloneDeep`, `cloneDeepWith`, `cloneWith`, `conformsTo`, `deburr`,\n * `defaultTo`, `divide`, `each`, `eachRight`, `endsWith`, `eq`, `escape`,\n * `escapeRegExp`, `every`, `find`, `findIndex`, `findKey`, `findLast`,\n * `findLastIndex`, `findLastKey`, `first`, `floor`, `forEach`, `forEachRight`,\n * `forIn`, `forInRight`, `forOwn`, `forOwnRight`, `get`, `gt`, `gte`, `has`,\n * `hasIn`, `head`, `identity`, `includes`, `indexOf`, `inRange`, `invoke`,\n * `isArguments`, `isArray`, `isArrayBuffer`, `isArrayLike`, `isArrayLikeObject`,\n * `isBoolean`, `isBuffer`, `isDate`, `isElement`, `isEmpty`, `isEqual`,\n * `isEqualWith`, `isError`, `isFinite`, `isFunction`, `isInteger`, `isLength`,\n * `isMap`, `isMatch`, `isMatchWith`, `isNaN`, `isNative`, `isNil`, `isNull`,\n * `isNumber`, `isObject`, `isObjectLike`, `isPlainObject`, `isRegExp`,\n * `isSafeInteger`, `isSet`, `isString`, `isUndefined`, `isTypedArray`,\n * `isWeakMap`, `isWeakSet`, `join`, `kebabCase`, `last`, `lastIndexOf`,\n * `lowerCase`, `lowerFirst`, `lt`, `lte`, `max`, `maxBy`, `mean`, `meanBy`,\n * `min`, `minBy`, `multiply`, `noConflict`, `noop`, `now`, `nth`, `pad`,\n * `padEnd`, `padStart`, `parseInt`, `pop`, `random`, `reduce`, `reduceRight`,\n * `repeat`, `result`, `round`, `runInContext`, `sample`, `shift`, `size`,\n * `snakeCase`, `some`, `sortedIndex`, `sortedIndexBy`, `sortedLastIndex`,\n * `sortedLastIndexBy`, `startCase`, `startsWith`, `stubArray`, `stubFalse`,\n * `stubObject`, `stubString`, `stubTrue`, `subtract`, `sum`, `sumBy`,\n * `template`, `times`, `toFinite`, `toInteger`, `toJSON`, `toLength`,\n * `toLower`, `toNumber`, `toSafeInteger`, `toString`, `toUpper`, `trim`,\n * `trimEnd`, `trimStart`, `truncate`, `unescape`, `uniqueId`, `upperCase`,\n * `upperFirst`, `value`, and `words`\n *\n * @name _\n * @constructor\n * @category Seq\n * @param {*} value The value to wrap in a `lodash` instance.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * var wrapped = _([1, 2, 3]);\n *\n * // Returns an unwrapped value.\n * wrapped.reduce(_.add);\n * // => 6\n *\n * // Returns a wrapped value.\n * var squares = wrapped.map(square);\n *\n * _.isArray(squares);\n * // => false\n *\n * _.isArray(squares.value());\n * // => true\n */\n function lodash(value) {\n if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) {\n if (value instanceof LodashWrapper) {\n return value;\n }\n if (hasOwnProperty.call(value, '__wrapped__')) {\n return wrapperClone(value);\n }\n }\n return new LodashWrapper(value);\n }\n\n /**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\n var baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n }());\n\n /**\n * The function whose prototype chain sequence wrappers inherit from.\n *\n * @private\n */\n function baseLodash() {\n // No operation performed.\n }\n\n /**\n * The base constructor for creating `lodash` wrapper objects.\n *\n * @private\n * @param {*} value The value to wrap.\n * @param {boolean} [chainAll] Enable explicit method chain sequences.\n */\n function LodashWrapper(value, chainAll) {\n this.__wrapped__ = value;\n this.__actions__ = [];\n this.__chain__ = !!chainAll;\n this.__index__ = 0;\n this.__values__ = undefined;\n }\n\n /**\n * By default, the template delimiters used by lodash are like those in\n * embedded Ruby (ERB) as well as ES2015 template strings. Change the\n * following template settings to use alternative delimiters.\n *\n * @static\n * @memberOf _\n * @type {Object}\n */\n lodash.templateSettings = {\n\n /**\n * Used to detect `data` property values to be HTML-escaped.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n 'escape': reEscape,\n\n /**\n * Used to detect code to be evaluated.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n 'evaluate': reEvaluate,\n\n /**\n * Used to detect `data` property values to inject.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n 'interpolate': reInterpolate,\n\n /**\n * Used to reference the data object in the template text.\n *\n * @memberOf _.templateSettings\n * @type {string}\n */\n 'variable': '',\n\n /**\n * Used to import variables into the compiled template.\n *\n * @memberOf _.templateSettings\n * @type {Object}\n */\n 'imports': {\n\n /**\n * A reference to the `lodash` function.\n *\n * @memberOf _.templateSettings.imports\n * @type {Function}\n */\n '_': lodash\n }\n };\n\n // Ensure wrappers are instances of `baseLodash`.\n lodash.prototype = baseLodash.prototype;\n lodash.prototype.constructor = lodash;\n\n LodashWrapper.prototype = baseCreate(baseLodash.prototype);\n LodashWrapper.prototype.constructor = LodashWrapper;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a lazy wrapper object which wraps `value` to enable lazy evaluation.\n *\n * @private\n * @constructor\n * @param {*} value The value to wrap.\n */\n function LazyWrapper(value) {\n this.__wrapped__ = value;\n this.__actions__ = [];\n this.__dir__ = 1;\n this.__filtered__ = false;\n this.__iteratees__ = [];\n this.__takeCount__ = MAX_ARRAY_LENGTH;\n this.__views__ = [];\n }\n\n /**\n * Creates a clone of the lazy wrapper object.\n *\n * @private\n * @name clone\n * @memberOf LazyWrapper\n * @returns {Object} Returns the cloned `LazyWrapper` object.\n */\n function lazyClone() {\n var result = new LazyWrapper(this.__wrapped__);\n result.__actions__ = copyArray(this.__actions__);\n result.__dir__ = this.__dir__;\n result.__filtered__ = this.__filtered__;\n result.__iteratees__ = copyArray(this.__iteratees__);\n result.__takeCount__ = this.__takeCount__;\n result.__views__ = copyArray(this.__views__);\n return result;\n }\n\n /**\n * Reverses the direction of lazy iteration.\n *\n * @private\n * @name reverse\n * @memberOf LazyWrapper\n * @returns {Object} Returns the new reversed `LazyWrapper` object.\n */\n function lazyReverse() {\n if (this.__filtered__) {\n var result = new LazyWrapper(this);\n result.__dir__ = -1;\n result.__filtered__ = true;\n } else {\n result = this.clone();\n result.__dir__ *= -1;\n }\n return result;\n }\n\n /**\n * Extracts the unwrapped value from its lazy wrapper.\n *\n * @private\n * @name value\n * @memberOf LazyWrapper\n * @returns {*} Returns the unwrapped value.\n */\n function lazyValue() {\n var array = this.__wrapped__.value(),\n dir = this.__dir__,\n isArr = isArray(array),\n isRight = dir < 0,\n arrLength = isArr ? array.length : 0,\n view = getView(0, arrLength, this.__views__),\n start = view.start,\n end = view.end,\n length = end - start,\n index = isRight ? end : (start - 1),\n iteratees = this.__iteratees__,\n iterLength = iteratees.length,\n resIndex = 0,\n takeCount = nativeMin(length, this.__takeCount__);\n\n if (!isArr || (!isRight && arrLength == length && takeCount == length)) {\n return baseWrapperValue(array, this.__actions__);\n }\n var result = [];\n\n outer:\n while (length-- && resIndex < takeCount) {\n index += dir;\n\n var iterIndex = -1,\n value = array[index];\n\n while (++iterIndex < iterLength) {\n var data = iteratees[iterIndex],\n iteratee = data.iteratee,\n type = data.type,\n computed = iteratee(value);\n\n if (type == LAZY_MAP_FLAG) {\n value = computed;\n } else if (!computed) {\n if (type == LAZY_FILTER_FLAG) {\n continue outer;\n } else {\n break outer;\n }\n }\n }\n result[resIndex++] = value;\n }\n return result;\n }\n\n // Ensure `LazyWrapper` is an instance of `baseLodash`.\n LazyWrapper.prototype = baseCreate(baseLodash.prototype);\n LazyWrapper.prototype.constructor = LazyWrapper;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n }\n\n /**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\n function hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n }\n\n /**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n }\n\n /**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n }\n\n /**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n }\n\n /**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\n function hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n }\n\n // Add methods to `Hash`.\n Hash.prototype.clear = hashClear;\n Hash.prototype['delete'] = hashDelete;\n Hash.prototype.get = hashGet;\n Hash.prototype.has = hashHas;\n Hash.prototype.set = hashSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n }\n\n /**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\n function listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n }\n\n /**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n }\n\n /**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n }\n\n /**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n }\n\n /**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\n function listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n }\n\n // Add methods to `ListCache`.\n ListCache.prototype.clear = listCacheClear;\n ListCache.prototype['delete'] = listCacheDelete;\n ListCache.prototype.get = listCacheGet;\n ListCache.prototype.has = listCacheHas;\n ListCache.prototype.set = listCacheSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n }\n\n /**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\n function mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n }\n\n /**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n }\n\n /**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function mapCacheGet(key) {\n return getMapData(this, key).get(key);\n }\n\n /**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function mapCacheHas(key) {\n return getMapData(this, key).has(key);\n }\n\n /**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\n function mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n }\n\n // Add methods to `MapCache`.\n MapCache.prototype.clear = mapCacheClear;\n MapCache.prototype['delete'] = mapCacheDelete;\n MapCache.prototype.get = mapCacheGet;\n MapCache.prototype.has = mapCacheHas;\n MapCache.prototype.set = mapCacheSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\n function SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n }\n\n /**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\n function setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED);\n return this;\n }\n\n /**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\n function setCacheHas(value) {\n return this.__data__.has(value);\n }\n\n // Add methods to `SetCache`.\n SetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\n SetCache.prototype.has = setCacheHas;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n }\n\n /**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\n function stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n }\n\n /**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n }\n\n /**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function stackGet(key) {\n return this.__data__.get(key);\n }\n\n /**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function stackHas(key) {\n return this.__data__.has(key);\n }\n\n /**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\n function stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n }\n\n // Add methods to `Stack`.\n Stack.prototype.clear = stackClear;\n Stack.prototype['delete'] = stackDelete;\n Stack.prototype.get = stackGet;\n Stack.prototype.has = stackHas;\n Stack.prototype.set = stackSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\n function arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * A specialized version of `_.sample` for arrays.\n *\n * @private\n * @param {Array} array The array to sample.\n * @returns {*} Returns the random element.\n */\n function arraySample(array) {\n var length = array.length;\n return length ? array[baseRandom(0, length - 1)] : undefined;\n }\n\n /**\n * A specialized version of `_.sampleSize` for arrays.\n *\n * @private\n * @param {Array} array The array to sample.\n * @param {number} n The number of elements to sample.\n * @returns {Array} Returns the random elements.\n */\n function arraySampleSize(array, n) {\n return shuffleSelf(copyArray(array), baseClamp(n, 0, array.length));\n }\n\n /**\n * A specialized version of `_.shuffle` for arrays.\n *\n * @private\n * @param {Array} array The array to shuffle.\n * @returns {Array} Returns the new shuffled array.\n */\n function arrayShuffle(array) {\n return shuffleSelf(copyArray(array));\n }\n\n /**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\n function assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n }\n\n /**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\n function assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n }\n\n /**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n }\n\n /**\n * Aggregates elements of `collection` on `accumulator` with keys transformed\n * by `iteratee` and values set by `setter`.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform keys.\n * @param {Object} accumulator The initial aggregated object.\n * @returns {Function} Returns `accumulator`.\n */\n function baseAggregator(collection, setter, iteratee, accumulator) {\n baseEach(collection, function(value, key, collection) {\n setter(accumulator, value, iteratee(value), collection);\n });\n return accumulator;\n }\n\n /**\n * The base implementation of `_.assign` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\n function baseAssign(object, source) {\n return object && copyObject(source, keys(source), object);\n }\n\n /**\n * The base implementation of `_.assignIn` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\n function baseAssignIn(object, source) {\n return object && copyObject(source, keysIn(source), object);\n }\n\n /**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\n function baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n }\n\n /**\n * The base implementation of `_.at` without support for individual paths.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {string[]} paths The property paths to pick.\n * @returns {Array} Returns the picked elements.\n */\n function baseAt(object, paths) {\n var index = -1,\n length = paths.length,\n result = Array(length),\n skip = object == null;\n\n while (++index < length) {\n result[index] = skip ? undefined : get(object, paths[index]);\n }\n return result;\n }\n\n /**\n * The base implementation of `_.clamp` which doesn't coerce arguments.\n *\n * @private\n * @param {number} number The number to clamp.\n * @param {number} [lower] The lower bound.\n * @param {number} upper The upper bound.\n * @returns {number} Returns the clamped number.\n */\n function baseClamp(number, lower, upper) {\n if (number === number) {\n if (upper !== undefined) {\n number = number <= upper ? number : upper;\n }\n if (lower !== undefined) {\n number = number >= lower ? number : lower;\n }\n }\n return number;\n }\n\n /**\n * The base implementation of `_.clone` and `_.cloneDeep` which tracks\n * traversed objects.\n *\n * @private\n * @param {*} value The value to clone.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Deep clone\n * 2 - Flatten inherited properties\n * 4 - Clone symbols\n * @param {Function} [customizer] The function to customize cloning.\n * @param {string} [key] The key of `value`.\n * @param {Object} [object] The parent object of `value`.\n * @param {Object} [stack] Tracks traversed objects and their clone counterparts.\n * @returns {*} Returns the cloned value.\n */\n function baseClone(value, bitmask, customizer, key, object, stack) {\n var result,\n isDeep = bitmask & CLONE_DEEP_FLAG,\n isFlat = bitmask & CLONE_FLAT_FLAG,\n isFull = bitmask & CLONE_SYMBOLS_FLAG;\n\n if (customizer) {\n result = object ? customizer(value, key, object, stack) : customizer(value);\n }\n if (result !== undefined) {\n return result;\n }\n if (!isObject(value)) {\n return value;\n }\n var isArr = isArray(value);\n if (isArr) {\n result = initCloneArray(value);\n if (!isDeep) {\n return copyArray(value, result);\n }\n } else {\n var tag = getTag(value),\n isFunc = tag == funcTag || tag == genTag;\n\n if (isBuffer(value)) {\n return cloneBuffer(value, isDeep);\n }\n if (tag == objectTag || tag == argsTag || (isFunc && !object)) {\n result = (isFlat || isFunc) ? {} : initCloneObject(value);\n if (!isDeep) {\n return isFlat\n ? copySymbolsIn(value, baseAssignIn(result, value))\n : copySymbols(value, baseAssign(result, value));\n }\n } else {\n if (!cloneableTags[tag]) {\n return object ? value : {};\n }\n result = initCloneByTag(value, tag, isDeep);\n }\n }\n // Check for circular references and return its corresponding clone.\n stack || (stack = new Stack);\n var stacked = stack.get(value);\n if (stacked) {\n return stacked;\n }\n stack.set(value, result);\n\n if (isSet(value)) {\n value.forEach(function(subValue) {\n result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));\n });\n } else if (isMap(value)) {\n value.forEach(function(subValue, key) {\n result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n }\n\n var keysFunc = isFull\n ? (isFlat ? getAllKeysIn : getAllKeys)\n : (isFlat ? keysIn : keys);\n\n var props = isArr ? undefined : keysFunc(value);\n arrayEach(props || value, function(subValue, key) {\n if (props) {\n key = subValue;\n subValue = value[key];\n }\n // Recursively populate clone (susceptible to call stack limits).\n assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n return result;\n }\n\n /**\n * The base implementation of `_.conforms` which doesn't clone `source`.\n *\n * @private\n * @param {Object} source The object of property predicates to conform to.\n * @returns {Function} Returns the new spec function.\n */\n function baseConforms(source) {\n var props = keys(source);\n return function(object) {\n return baseConformsTo(object, source, props);\n };\n }\n\n /**\n * The base implementation of `_.conformsTo` which accepts `props` to check.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property predicates to conform to.\n * @returns {boolean} Returns `true` if `object` conforms, else `false`.\n */\n function baseConformsTo(object, source, props) {\n var length = props.length;\n if (object == null) {\n return !length;\n }\n object = Object(object);\n while (length--) {\n var key = props[length],\n predicate = source[key],\n value = object[key];\n\n if ((value === undefined && !(key in object)) || !predicate(value)) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * The base implementation of `_.delay` and `_.defer` which accepts `args`\n * to provide to `func`.\n *\n * @private\n * @param {Function} func The function to delay.\n * @param {number} wait The number of milliseconds to delay invocation.\n * @param {Array} args The arguments to provide to `func`.\n * @returns {number|Object} Returns the timer id or timeout object.\n */\n function baseDelay(func, wait, args) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n return setTimeout(function() { func.apply(undefined, args); }, wait);\n }\n\n /**\n * The base implementation of methods like `_.difference` without support\n * for excluding multiple arrays or iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Array} values The values to exclude.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n */\n function baseDifference(array, values, iteratee, comparator) {\n var index = -1,\n includes = arrayIncludes,\n isCommon = true,\n length = array.length,\n result = [],\n valuesLength = values.length;\n\n if (!length) {\n return result;\n }\n if (iteratee) {\n values = arrayMap(values, baseUnary(iteratee));\n }\n if (comparator) {\n includes = arrayIncludesWith;\n isCommon = false;\n }\n else if (values.length >= LARGE_ARRAY_SIZE) {\n includes = cacheHas;\n isCommon = false;\n values = new SetCache(values);\n }\n outer:\n while (++index < length) {\n var value = array[index],\n computed = iteratee == null ? value : iteratee(value);\n\n value = (comparator || value !== 0) ? value : 0;\n if (isCommon && computed === computed) {\n var valuesIndex = valuesLength;\n while (valuesIndex--) {\n if (values[valuesIndex] === computed) {\n continue outer;\n }\n }\n result.push(value);\n }\n else if (!includes(values, computed, comparator)) {\n result.push(value);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.forEach` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n */\n var baseEach = createBaseEach(baseForOwn);\n\n /**\n * The base implementation of `_.forEachRight` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n */\n var baseEachRight = createBaseEach(baseForOwnRight, true);\n\n /**\n * The base implementation of `_.every` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if all elements pass the predicate check,\n * else `false`\n */\n function baseEvery(collection, predicate) {\n var result = true;\n baseEach(collection, function(value, index, collection) {\n result = !!predicate(value, index, collection);\n return result;\n });\n return result;\n }\n\n /**\n * The base implementation of methods like `_.max` and `_.min` which accepts a\n * `comparator` to determine the extremum value.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The iteratee invoked per iteration.\n * @param {Function} comparator The comparator used to compare values.\n * @returns {*} Returns the extremum value.\n */\n function baseExtremum(array, iteratee, comparator) {\n var index = -1,\n length = array.length;\n\n while (++index < length) {\n var value = array[index],\n current = iteratee(value);\n\n if (current != null && (computed === undefined\n ? (current === current && !isSymbol(current))\n : comparator(current, computed)\n )) {\n var computed = current,\n result = value;\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.fill` without an iteratee call guard.\n *\n * @private\n * @param {Array} array The array to fill.\n * @param {*} value The value to fill `array` with.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns `array`.\n */\n function baseFill(array, value, start, end) {\n var length = array.length;\n\n start = toInteger(start);\n if (start < 0) {\n start = -start > length ? 0 : (length + start);\n }\n end = (end === undefined || end > length) ? length : toInteger(end);\n if (end < 0) {\n end += length;\n }\n end = start > end ? 0 : toLength(end);\n while (start < end) {\n array[start++] = value;\n }\n return array;\n }\n\n /**\n * The base implementation of `_.filter` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\n function baseFilter(collection, predicate) {\n var result = [];\n baseEach(collection, function(value, index, collection) {\n if (predicate(value, index, collection)) {\n result.push(value);\n }\n });\n return result;\n }\n\n /**\n * The base implementation of `_.flatten` with support for restricting flattening.\n *\n * @private\n * @param {Array} array The array to flatten.\n * @param {number} depth The maximum recursion depth.\n * @param {boolean} [predicate=isFlattenable] The function invoked per iteration.\n * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks.\n * @param {Array} [result=[]] The initial result value.\n * @returns {Array} Returns the new flattened array.\n */\n function baseFlatten(array, depth, predicate, isStrict, result) {\n var index = -1,\n length = array.length;\n\n predicate || (predicate = isFlattenable);\n result || (result = []);\n\n while (++index < length) {\n var value = array[index];\n if (depth > 0 && predicate(value)) {\n if (depth > 1) {\n // Recursively flatten arrays (susceptible to call stack limits).\n baseFlatten(value, depth - 1, predicate, isStrict, result);\n } else {\n arrayPush(result, value);\n }\n } else if (!isStrict) {\n result[result.length] = value;\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\n var baseFor = createBaseFor();\n\n /**\n * This function is like `baseFor` except that it iterates over properties\n * in the opposite order.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\n var baseForRight = createBaseFor(true);\n\n /**\n * The base implementation of `_.forOwn` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Object} Returns `object`.\n */\n function baseForOwn(object, iteratee) {\n return object && baseFor(object, iteratee, keys);\n }\n\n /**\n * The base implementation of `_.forOwnRight` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Object} Returns `object`.\n */\n function baseForOwnRight(object, iteratee) {\n return object && baseForRight(object, iteratee, keys);\n }\n\n /**\n * The base implementation of `_.functions` which creates an array of\n * `object` function property names filtered from `props`.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Array} props The property names to filter.\n * @returns {Array} Returns the function names.\n */\n function baseFunctions(object, props) {\n return arrayFilter(props, function(key) {\n return isFunction(object[key]);\n });\n }\n\n /**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\n function baseGet(object, path) {\n path = castPath(path, object);\n\n var index = 0,\n length = path.length;\n\n while (object != null && index < length) {\n object = object[toKey(path[index++])];\n }\n return (index && index == length) ? object : undefined;\n }\n\n /**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\n function baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n }\n\n /**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\n function baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n }\n\n /**\n * The base implementation of `_.gt` which doesn't coerce arguments.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is greater than `other`,\n * else `false`.\n */\n function baseGt(value, other) {\n return value > other;\n }\n\n /**\n * The base implementation of `_.has` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\n function baseHas(object, key) {\n return object != null && hasOwnProperty.call(object, key);\n }\n\n /**\n * The base implementation of `_.hasIn` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\n function baseHasIn(object, key) {\n return object != null && key in Object(object);\n }\n\n /**\n * The base implementation of `_.inRange` which doesn't coerce arguments.\n *\n * @private\n * @param {number} number The number to check.\n * @param {number} start The start of the range.\n * @param {number} end The end of the range.\n * @returns {boolean} Returns `true` if `number` is in the range, else `false`.\n */\n function baseInRange(number, start, end) {\n return number >= nativeMin(start, end) && number < nativeMax(start, end);\n }\n\n /**\n * The base implementation of methods like `_.intersection`, without support\n * for iteratee shorthands, that accepts an array of arrays to inspect.\n *\n * @private\n * @param {Array} arrays The arrays to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of shared values.\n */\n function baseIntersection(arrays, iteratee, comparator) {\n var includes = comparator ? arrayIncludesWith : arrayIncludes,\n length = arrays[0].length,\n othLength = arrays.length,\n othIndex = othLength,\n caches = Array(othLength),\n maxLength = Infinity,\n result = [];\n\n while (othIndex--) {\n var array = arrays[othIndex];\n if (othIndex && iteratee) {\n array = arrayMap(array, baseUnary(iteratee));\n }\n maxLength = nativeMin(array.length, maxLength);\n caches[othIndex] = !comparator && (iteratee || (length >= 120 && array.length >= 120))\n ? new SetCache(othIndex && array)\n : undefined;\n }\n array = arrays[0];\n\n var index = -1,\n seen = caches[0];\n\n outer:\n while (++index < length && result.length < maxLength) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n value = (comparator || value !== 0) ? value : 0;\n if (!(seen\n ? cacheHas(seen, computed)\n : includes(result, computed, comparator)\n )) {\n othIndex = othLength;\n while (--othIndex) {\n var cache = caches[othIndex];\n if (!(cache\n ? cacheHas(cache, computed)\n : includes(arrays[othIndex], computed, comparator))\n ) {\n continue outer;\n }\n }\n if (seen) {\n seen.push(computed);\n }\n result.push(value);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.invert` and `_.invertBy` which inverts\n * `object` with values transformed by `iteratee` and set by `setter`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform values.\n * @param {Object} accumulator The initial inverted object.\n * @returns {Function} Returns `accumulator`.\n */\n function baseInverter(object, setter, iteratee, accumulator) {\n baseForOwn(object, function(value, key, object) {\n setter(accumulator, iteratee(value), key, object);\n });\n return accumulator;\n }\n\n /**\n * The base implementation of `_.invoke` without support for individual\n * method arguments.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the method to invoke.\n * @param {Array} args The arguments to invoke the method with.\n * @returns {*} Returns the result of the invoked method.\n */\n function baseInvoke(object, path, args) {\n path = castPath(path, object);\n object = parent(object, path);\n var func = object == null ? object : object[toKey(last(path))];\n return func == null ? undefined : apply(func, object, args);\n }\n\n /**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\n function baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n }\n\n /**\n * The base implementation of `_.isArrayBuffer` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`.\n */\n function baseIsArrayBuffer(value) {\n return isObjectLike(value) && baseGetTag(value) == arrayBufferTag;\n }\n\n /**\n * The base implementation of `_.isDate` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a date object, else `false`.\n */\n function baseIsDate(value) {\n return isObjectLike(value) && baseGetTag(value) == dateTag;\n }\n\n /**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\n function baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {\n return value !== value && other !== other;\n }\n return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n }\n\n /**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\n function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray(object),\n othIsArr = isArray(other),\n objTag = objIsArr ? arrayTag : getTag(object),\n othTag = othIsArr ? arrayTag : getTag(other);\n\n objTag = objTag == argsTag ? objectTag : objTag;\n othTag = othTag == argsTag ? objectTag : othTag;\n\n var objIsObj = objTag == objectTag,\n othIsObj = othTag == objectTag,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer(object)) {\n if (!isBuffer(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new Stack);\n return (objIsArr || isTypedArray(object))\n ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new Stack);\n return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n }\n\n /**\n * The base implementation of `_.isMap` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n */\n function baseIsMap(value) {\n return isObjectLike(value) && getTag(value) == mapTag;\n }\n\n /**\n * The base implementation of `_.isMatch` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @param {Array} matchData The property names, values, and compare flags to match.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n */\n function baseIsMatch(object, source, matchData, customizer) {\n var index = matchData.length,\n length = index,\n noCustomizer = !customizer;\n\n if (object == null) {\n return !length;\n }\n object = Object(object);\n while (index--) {\n var data = matchData[index];\n if ((noCustomizer && data[2])\n ? data[1] !== object[data[0]]\n : !(data[0] in object)\n ) {\n return false;\n }\n }\n while (++index < length) {\n data = matchData[index];\n var key = data[0],\n objValue = object[key],\n srcValue = data[1];\n\n if (noCustomizer && data[2]) {\n if (objValue === undefined && !(key in object)) {\n return false;\n }\n } else {\n var stack = new Stack;\n if (customizer) {\n var result = customizer(objValue, srcValue, key, object, source, stack);\n }\n if (!(result === undefined\n ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack)\n : result\n )) {\n return false;\n }\n }\n }\n return true;\n }\n\n /**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\n function baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n }\n\n /**\n * The base implementation of `_.isRegExp` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a regexp, else `false`.\n */\n function baseIsRegExp(value) {\n return isObjectLike(value) && baseGetTag(value) == regexpTag;\n }\n\n /**\n * The base implementation of `_.isSet` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n */\n function baseIsSet(value) {\n return isObjectLike(value) && getTag(value) == setTag;\n }\n\n /**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\n function baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n }\n\n /**\n * The base implementation of `_.iteratee`.\n *\n * @private\n * @param {*} [value=_.identity] The value to convert to an iteratee.\n * @returns {Function} Returns the iteratee.\n */\n function baseIteratee(value) {\n // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9.\n // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details.\n if (typeof value == 'function') {\n return value;\n }\n if (value == null) {\n return identity;\n }\n if (typeof value == 'object') {\n return isArray(value)\n ? baseMatchesProperty(value[0], value[1])\n : baseMatches(value);\n }\n return property(value);\n }\n\n /**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\n function baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\n function baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.lt` which doesn't coerce arguments.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is less than `other`,\n * else `false`.\n */\n function baseLt(value, other) {\n return value < other;\n }\n\n /**\n * The base implementation of `_.map` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\n function baseMap(collection, iteratee) {\n var index = -1,\n result = isArrayLike(collection) ? Array(collection.length) : [];\n\n baseEach(collection, function(value, key, collection) {\n result[++index] = iteratee(value, key, collection);\n });\n return result;\n }\n\n /**\n * The base implementation of `_.matches` which doesn't clone `source`.\n *\n * @private\n * @param {Object} source The object of property values to match.\n * @returns {Function} Returns the new spec function.\n */\n function baseMatches(source) {\n var matchData = getMatchData(source);\n if (matchData.length == 1 && matchData[0][2]) {\n return matchesStrictComparable(matchData[0][0], matchData[0][1]);\n }\n return function(object) {\n return object === source || baseIsMatch(object, source, matchData);\n };\n }\n\n /**\n * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.\n *\n * @private\n * @param {string} path The path of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\n function baseMatchesProperty(path, srcValue) {\n if (isKey(path) && isStrictComparable(srcValue)) {\n return matchesStrictComparable(toKey(path), srcValue);\n }\n return function(object) {\n var objValue = get(object, path);\n return (objValue === undefined && objValue === srcValue)\n ? hasIn(object, path)\n : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);\n };\n }\n\n /**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\n function baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n baseFor(source, function(srcValue, key) {\n stack || (stack = new Stack);\n if (isObject(srcValue)) {\n baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n assignMergeValue(object, key, newValue);\n }\n }, keysIn);\n }\n\n /**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\n function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = safeGet(object, key),\n srcValue = safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(objValue)) {\n newValue = copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(objValue)) {\n newValue = initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n assignMergeValue(object, key, newValue);\n }\n\n /**\n * The base implementation of `_.nth` which doesn't coerce arguments.\n *\n * @private\n * @param {Array} array The array to query.\n * @param {number} n The index of the element to return.\n * @returns {*} Returns the nth element of `array`.\n */\n function baseNth(array, n) {\n var length = array.length;\n if (!length) {\n return;\n }\n n += n < 0 ? length : 0;\n return isIndex(n, length) ? array[n] : undefined;\n }\n\n /**\n * The base implementation of `_.orderBy` without param guards.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by.\n * @param {string[]} orders The sort orders of `iteratees`.\n * @returns {Array} Returns the new sorted array.\n */\n function baseOrderBy(collection, iteratees, orders) {\n if (iteratees.length) {\n iteratees = arrayMap(iteratees, function(iteratee) {\n if (isArray(iteratee)) {\n return function(value) {\n return baseGet(value, iteratee.length === 1 ? iteratee[0] : iteratee);\n }\n }\n return iteratee;\n });\n } else {\n iteratees = [identity];\n }\n\n var index = -1;\n iteratees = arrayMap(iteratees, baseUnary(getIteratee()));\n\n var result = baseMap(collection, function(value, key, collection) {\n var criteria = arrayMap(iteratees, function(iteratee) {\n return iteratee(value);\n });\n return { 'criteria': criteria, 'index': ++index, 'value': value };\n });\n\n return baseSortBy(result, function(object, other) {\n return compareMultiple(object, other, orders);\n });\n }\n\n /**\n * The base implementation of `_.pick` without support for individual\n * property identifiers.\n *\n * @private\n * @param {Object} object The source object.\n * @param {string[]} paths The property paths to pick.\n * @returns {Object} Returns the new object.\n */\n function basePick(object, paths) {\n return basePickBy(object, paths, function(value, path) {\n return hasIn(object, path);\n });\n }\n\n /**\n * The base implementation of `_.pickBy` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The source object.\n * @param {string[]} paths The property paths to pick.\n * @param {Function} predicate The function invoked per property.\n * @returns {Object} Returns the new object.\n */\n function basePickBy(object, paths, predicate) {\n var index = -1,\n length = paths.length,\n result = {};\n\n while (++index < length) {\n var path = paths[index],\n value = baseGet(object, path);\n\n if (predicate(value, path)) {\n baseSet(result, castPath(path, object), value);\n }\n }\n return result;\n }\n\n /**\n * A specialized version of `baseProperty` which supports deep paths.\n *\n * @private\n * @param {Array|string} path The path of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\n function basePropertyDeep(path) {\n return function(object) {\n return baseGet(object, path);\n };\n }\n\n /**\n * The base implementation of `_.pullAllBy` without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns `array`.\n */\n function basePullAll(array, values, iteratee, comparator) {\n var indexOf = comparator ? baseIndexOfWith : baseIndexOf,\n index = -1,\n length = values.length,\n seen = array;\n\n if (array === values) {\n values = copyArray(values);\n }\n if (iteratee) {\n seen = arrayMap(array, baseUnary(iteratee));\n }\n while (++index < length) {\n var fromIndex = 0,\n value = values[index],\n computed = iteratee ? iteratee(value) : value;\n\n while ((fromIndex = indexOf(seen, computed, fromIndex, comparator)) > -1) {\n if (seen !== array) {\n splice.call(seen, fromIndex, 1);\n }\n splice.call(array, fromIndex, 1);\n }\n }\n return array;\n }\n\n /**\n * The base implementation of `_.pullAt` without support for individual\n * indexes or capturing the removed elements.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {number[]} indexes The indexes of elements to remove.\n * @returns {Array} Returns `array`.\n */\n function basePullAt(array, indexes) {\n var length = array ? indexes.length : 0,\n lastIndex = length - 1;\n\n while (length--) {\n var index = indexes[length];\n if (length == lastIndex || index !== previous) {\n var previous = index;\n if (isIndex(index)) {\n splice.call(array, index, 1);\n } else {\n baseUnset(array, index);\n }\n }\n }\n return array;\n }\n\n /**\n * The base implementation of `_.random` without support for returning\n * floating-point numbers.\n *\n * @private\n * @param {number} lower The lower bound.\n * @param {number} upper The upper bound.\n * @returns {number} Returns the random number.\n */\n function baseRandom(lower, upper) {\n return lower + nativeFloor(nativeRandom() * (upper - lower + 1));\n }\n\n /**\n * The base implementation of `_.range` and `_.rangeRight` which doesn't\n * coerce arguments.\n *\n * @private\n * @param {number} start The start of the range.\n * @param {number} end The end of the range.\n * @param {number} step The value to increment or decrement by.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Array} Returns the range of numbers.\n */\n function baseRange(start, end, step, fromRight) {\n var index = -1,\n length = nativeMax(nativeCeil((end - start) / (step || 1)), 0),\n result = Array(length);\n\n while (length--) {\n result[fromRight ? length : ++index] = start;\n start += step;\n }\n return result;\n }\n\n /**\n * The base implementation of `_.repeat` which doesn't coerce arguments.\n *\n * @private\n * @param {string} string The string to repeat.\n * @param {number} n The number of times to repeat the string.\n * @returns {string} Returns the repeated string.\n */\n function baseRepeat(string, n) {\n var result = '';\n if (!string || n < 1 || n > MAX_SAFE_INTEGER) {\n return result;\n }\n // Leverage the exponentiation by squaring algorithm for a faster repeat.\n // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details.\n do {\n if (n % 2) {\n result += string;\n }\n n = nativeFloor(n / 2);\n if (n) {\n string += string;\n }\n } while (n);\n\n return result;\n }\n\n /**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\n function baseRest(func, start) {\n return setToString(overRest(func, start, identity), func + '');\n }\n\n /**\n * The base implementation of `_.sample`.\n *\n * @private\n * @param {Array|Object} collection The collection to sample.\n * @returns {*} Returns the random element.\n */\n function baseSample(collection) {\n return arraySample(values(collection));\n }\n\n /**\n * The base implementation of `_.sampleSize` without param guards.\n *\n * @private\n * @param {Array|Object} collection The collection to sample.\n * @param {number} n The number of elements to sample.\n * @returns {Array} Returns the random elements.\n */\n function baseSampleSize(collection, n) {\n var array = values(collection);\n return shuffleSelf(array, baseClamp(n, 0, array.length));\n }\n\n /**\n * The base implementation of `_.set`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @param {Function} [customizer] The function to customize path creation.\n * @returns {Object} Returns `object`.\n */\n function baseSet(object, path, value, customizer) {\n if (!isObject(object)) {\n return object;\n }\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n lastIndex = length - 1,\n nested = object;\n\n while (nested != null && ++index < length) {\n var key = toKey(path[index]),\n newValue = value;\n\n if (key === '__proto__' || key === 'constructor' || key === 'prototype') {\n return object;\n }\n\n if (index != lastIndex) {\n var objValue = nested[key];\n newValue = customizer ? customizer(objValue, key, nested) : undefined;\n if (newValue === undefined) {\n newValue = isObject(objValue)\n ? objValue\n : (isIndex(path[index + 1]) ? [] : {});\n }\n }\n assignValue(nested, key, newValue);\n nested = nested[key];\n }\n return object;\n }\n\n /**\n * The base implementation of `setData` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to associate metadata with.\n * @param {*} data The metadata.\n * @returns {Function} Returns `func`.\n */\n var baseSetData = !metaMap ? identity : function(func, data) {\n metaMap.set(func, data);\n return func;\n };\n\n /**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\n var baseSetToString = !defineProperty ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n };\n\n /**\n * The base implementation of `_.shuffle`.\n *\n * @private\n * @param {Array|Object} collection The collection to shuffle.\n * @returns {Array} Returns the new shuffled array.\n */\n function baseShuffle(collection) {\n return shuffleSelf(values(collection));\n }\n\n /**\n * The base implementation of `_.slice` without an iteratee call guard.\n *\n * @private\n * @param {Array} array The array to slice.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the slice of `array`.\n */\n function baseSlice(array, start, end) {\n var index = -1,\n length = array.length;\n\n if (start < 0) {\n start = -start > length ? 0 : (length + start);\n }\n end = end > length ? length : end;\n if (end < 0) {\n end += length;\n }\n length = start > end ? 0 : ((end - start) >>> 0);\n start >>>= 0;\n\n var result = Array(length);\n while (++index < length) {\n result[index] = array[index + start];\n }\n return result;\n }\n\n /**\n * The base implementation of `_.some` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\n function baseSome(collection, predicate) {\n var result;\n\n baseEach(collection, function(value, index, collection) {\n result = predicate(value, index, collection);\n return !result;\n });\n return !!result;\n }\n\n /**\n * The base implementation of `_.sortedIndex` and `_.sortedLastIndex` which\n * performs a binary search of `array` to determine the index at which `value`\n * should be inserted into `array` in order to maintain its sort order.\n *\n * @private\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {boolean} [retHighest] Specify returning the highest qualified index.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n */\n function baseSortedIndex(array, value, retHighest) {\n var low = 0,\n high = array == null ? low : array.length;\n\n if (typeof value == 'number' && value === value && high <= HALF_MAX_ARRAY_LENGTH) {\n while (low < high) {\n var mid = (low + high) >>> 1,\n computed = array[mid];\n\n if (computed !== null && !isSymbol(computed) &&\n (retHighest ? (computed <= value) : (computed < value))) {\n low = mid + 1;\n } else {\n high = mid;\n }\n }\n return high;\n }\n return baseSortedIndexBy(array, value, identity, retHighest);\n }\n\n /**\n * The base implementation of `_.sortedIndexBy` and `_.sortedLastIndexBy`\n * which invokes `iteratee` for `value` and each element of `array` to compute\n * their sort ranking. The iteratee is invoked with one argument; (value).\n *\n * @private\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {Function} iteratee The iteratee invoked per element.\n * @param {boolean} [retHighest] Specify returning the highest qualified index.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n */\n function baseSortedIndexBy(array, value, iteratee, retHighest) {\n var low = 0,\n high = array == null ? 0 : array.length;\n if (high === 0) {\n return 0;\n }\n\n value = iteratee(value);\n var valIsNaN = value !== value,\n valIsNull = value === null,\n valIsSymbol = isSymbol(value),\n valIsUndefined = value === undefined;\n\n while (low < high) {\n var mid = nativeFloor((low + high) / 2),\n computed = iteratee(array[mid]),\n othIsDefined = computed !== undefined,\n othIsNull = computed === null,\n othIsReflexive = computed === computed,\n othIsSymbol = isSymbol(computed);\n\n if (valIsNaN) {\n var setLow = retHighest || othIsReflexive;\n } else if (valIsUndefined) {\n setLow = othIsReflexive && (retHighest || othIsDefined);\n } else if (valIsNull) {\n setLow = othIsReflexive && othIsDefined && (retHighest || !othIsNull);\n } else if (valIsSymbol) {\n setLow = othIsReflexive && othIsDefined && !othIsNull && (retHighest || !othIsSymbol);\n } else if (othIsNull || othIsSymbol) {\n setLow = false;\n } else {\n setLow = retHighest ? (computed <= value) : (computed < value);\n }\n if (setLow) {\n low = mid + 1;\n } else {\n high = mid;\n }\n }\n return nativeMin(high, MAX_ARRAY_INDEX);\n }\n\n /**\n * The base implementation of `_.sortedUniq` and `_.sortedUniqBy` without\n * support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n */\n function baseSortedUniq(array, iteratee) {\n var index = -1,\n length = array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n if (!index || !eq(computed, seen)) {\n var seen = computed;\n result[resIndex++] = value === 0 ? 0 : value;\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.toNumber` which doesn't ensure correct\n * conversions of binary, hexadecimal, or octal string values.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n */\n function baseToNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n return +value;\n }\n\n /**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\n function baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isArray(value)) {\n // Recursively convert values (susceptible to call stack limits).\n return arrayMap(value, baseToString) + '';\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n }\n\n /**\n * The base implementation of `_.uniqBy` without support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n */\n function baseUniq(array, iteratee, comparator) {\n var index = -1,\n includes = arrayIncludes,\n length = array.length,\n isCommon = true,\n result = [],\n seen = result;\n\n if (comparator) {\n isCommon = false;\n includes = arrayIncludesWith;\n }\n else if (length >= LARGE_ARRAY_SIZE) {\n var set = iteratee ? null : createSet(array);\n if (set) {\n return setToArray(set);\n }\n isCommon = false;\n includes = cacheHas;\n seen = new SetCache;\n }\n else {\n seen = iteratee ? [] : result;\n }\n outer:\n while (++index < length) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n value = (comparator || value !== 0) ? value : 0;\n if (isCommon && computed === computed) {\n var seenIndex = seen.length;\n while (seenIndex--) {\n if (seen[seenIndex] === computed) {\n continue outer;\n }\n }\n if (iteratee) {\n seen.push(computed);\n }\n result.push(value);\n }\n else if (!includes(seen, computed, comparator)) {\n if (seen !== result) {\n seen.push(computed);\n }\n result.push(value);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.unset`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The property path to unset.\n * @returns {boolean} Returns `true` if the property is deleted, else `false`.\n */\n function baseUnset(object, path) {\n path = castPath(path, object);\n object = parent(object, path);\n return object == null || delete object[toKey(last(path))];\n }\n\n /**\n * The base implementation of `_.update`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to update.\n * @param {Function} updater The function to produce the updated value.\n * @param {Function} [customizer] The function to customize path creation.\n * @returns {Object} Returns `object`.\n */\n function baseUpdate(object, path, updater, customizer) {\n return baseSet(object, path, updater(baseGet(object, path)), customizer);\n }\n\n /**\n * The base implementation of methods like `_.dropWhile` and `_.takeWhile`\n * without support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to query.\n * @param {Function} predicate The function invoked per iteration.\n * @param {boolean} [isDrop] Specify dropping elements instead of taking them.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Array} Returns the slice of `array`.\n */\n function baseWhile(array, predicate, isDrop, fromRight) {\n var length = array.length,\n index = fromRight ? length : -1;\n\n while ((fromRight ? index-- : ++index < length) &&\n predicate(array[index], index, array)) {}\n\n return isDrop\n ? baseSlice(array, (fromRight ? 0 : index), (fromRight ? index + 1 : length))\n : baseSlice(array, (fromRight ? index + 1 : 0), (fromRight ? length : index));\n }\n\n /**\n * The base implementation of `wrapperValue` which returns the result of\n * performing a sequence of actions on the unwrapped `value`, where each\n * successive action is supplied the return value of the previous.\n *\n * @private\n * @param {*} value The unwrapped value.\n * @param {Array} actions Actions to perform to resolve the unwrapped value.\n * @returns {*} Returns the resolved value.\n */\n function baseWrapperValue(value, actions) {\n var result = value;\n if (result instanceof LazyWrapper) {\n result = result.value();\n }\n return arrayReduce(actions, function(result, action) {\n return action.func.apply(action.thisArg, arrayPush([result], action.args));\n }, result);\n }\n\n /**\n * The base implementation of methods like `_.xor`, without support for\n * iteratee shorthands, that accepts an array of arrays to inspect.\n *\n * @private\n * @param {Array} arrays The arrays to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of values.\n */\n function baseXor(arrays, iteratee, comparator) {\n var length = arrays.length;\n if (length < 2) {\n return length ? baseUniq(arrays[0]) : [];\n }\n var index = -1,\n result = Array(length);\n\n while (++index < length) {\n var array = arrays[index],\n othIndex = -1;\n\n while (++othIndex < length) {\n if (othIndex != index) {\n result[index] = baseDifference(result[index] || array, arrays[othIndex], iteratee, comparator);\n }\n }\n }\n return baseUniq(baseFlatten(result, 1), iteratee, comparator);\n }\n\n /**\n * This base implementation of `_.zipObject` which assigns values using `assignFunc`.\n *\n * @private\n * @param {Array} props The property identifiers.\n * @param {Array} values The property values.\n * @param {Function} assignFunc The function to assign values.\n * @returns {Object} Returns the new object.\n */\n function baseZipObject(props, values, assignFunc) {\n var index = -1,\n length = props.length,\n valsLength = values.length,\n result = {};\n\n while (++index < length) {\n var value = index < valsLength ? values[index] : undefined;\n assignFunc(result, props[index], value);\n }\n return result;\n }\n\n /**\n * Casts `value` to an empty array if it's not an array like object.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {Array|Object} Returns the cast array-like object.\n */\n function castArrayLikeObject(value) {\n return isArrayLikeObject(value) ? value : [];\n }\n\n /**\n * Casts `value` to `identity` if it's not a function.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {Function} Returns cast function.\n */\n function castFunction(value) {\n return typeof value == 'function' ? value : identity;\n }\n\n /**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {Object} [object] The object to query keys on.\n * @returns {Array} Returns the cast property path array.\n */\n function castPath(value, object) {\n if (isArray(value)) {\n return value;\n }\n return isKey(value, object) ? [value] : stringToPath(toString(value));\n }\n\n /**\n * A `baseRest` alias which can be replaced with `identity` by module\n * replacement plugins.\n *\n * @private\n * @type {Function}\n * @param {Function} func The function to apply a rest parameter to.\n * @returns {Function} Returns the new function.\n */\n var castRest = baseRest;\n\n /**\n * Casts `array` to a slice if it's needed.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {number} start The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the cast slice.\n */\n function castSlice(array, start, end) {\n var length = array.length;\n end = end === undefined ? length : end;\n return (!start && end >= length) ? array : baseSlice(array, start, end);\n }\n\n /**\n * A simple wrapper around the global [`clearTimeout`](https://mdn.io/clearTimeout).\n *\n * @private\n * @param {number|Object} id The timer id or timeout object of the timer to clear.\n */\n var clearTimeout = ctxClearTimeout || function(id) {\n return root.clearTimeout(id);\n };\n\n /**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\n function cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n }\n\n /**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\n function cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n }\n\n /**\n * Creates a clone of `dataView`.\n *\n * @private\n * @param {Object} dataView The data view to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned data view.\n */\n function cloneDataView(dataView, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;\n return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);\n }\n\n /**\n * Creates a clone of `regexp`.\n *\n * @private\n * @param {Object} regexp The regexp to clone.\n * @returns {Object} Returns the cloned regexp.\n */\n function cloneRegExp(regexp) {\n var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));\n result.lastIndex = regexp.lastIndex;\n return result;\n }\n\n /**\n * Creates a clone of the `symbol` object.\n *\n * @private\n * @param {Object} symbol The symbol object to clone.\n * @returns {Object} Returns the cloned symbol object.\n */\n function cloneSymbol(symbol) {\n return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};\n }\n\n /**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\n function cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n }\n\n /**\n * Compares values to sort them in ascending order.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {number} Returns the sort order indicator for `value`.\n */\n function compareAscending(value, other) {\n if (value !== other) {\n var valIsDefined = value !== undefined,\n valIsNull = value === null,\n valIsReflexive = value === value,\n valIsSymbol = isSymbol(value);\n\n var othIsDefined = other !== undefined,\n othIsNull = other === null,\n othIsReflexive = other === other,\n othIsSymbol = isSymbol(other);\n\n if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) ||\n (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) ||\n (valIsNull && othIsDefined && othIsReflexive) ||\n (!valIsDefined && othIsReflexive) ||\n !valIsReflexive) {\n return 1;\n }\n if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) ||\n (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) ||\n (othIsNull && valIsDefined && valIsReflexive) ||\n (!othIsDefined && valIsReflexive) ||\n !othIsReflexive) {\n return -1;\n }\n }\n return 0;\n }\n\n /**\n * Used by `_.orderBy` to compare multiple properties of a value to another\n * and stable sort them.\n *\n * If `orders` is unspecified, all values are sorted in ascending order. Otherwise,\n * specify an order of \"desc\" for descending or \"asc\" for ascending sort order\n * of corresponding values.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {boolean[]|string[]} orders The order to sort by for each property.\n * @returns {number} Returns the sort order indicator for `object`.\n */\n function compareMultiple(object, other, orders) {\n var index = -1,\n objCriteria = object.criteria,\n othCriteria = other.criteria,\n length = objCriteria.length,\n ordersLength = orders.length;\n\n while (++index < length) {\n var result = compareAscending(objCriteria[index], othCriteria[index]);\n if (result) {\n if (index >= ordersLength) {\n return result;\n }\n var order = orders[index];\n return result * (order == 'desc' ? -1 : 1);\n }\n }\n // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications\n // that causes it, under certain circumstances, to provide the same value for\n // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247\n // for more details.\n //\n // This also ensures a stable sort in V8 and other engines.\n // See https://bugs.chromium.org/p/v8/issues/detail?id=90 for more details.\n return object.index - other.index;\n }\n\n /**\n * Creates an array that is the composition of partially applied arguments,\n * placeholders, and provided arguments into a single array of arguments.\n *\n * @private\n * @param {Array} args The provided arguments.\n * @param {Array} partials The arguments to prepend to those provided.\n * @param {Array} holders The `partials` placeholder indexes.\n * @params {boolean} [isCurried] Specify composing for a curried function.\n * @returns {Array} Returns the new array of composed arguments.\n */\n function composeArgs(args, partials, holders, isCurried) {\n var argsIndex = -1,\n argsLength = args.length,\n holdersLength = holders.length,\n leftIndex = -1,\n leftLength = partials.length,\n rangeLength = nativeMax(argsLength - holdersLength, 0),\n result = Array(leftLength + rangeLength),\n isUncurried = !isCurried;\n\n while (++leftIndex < leftLength) {\n result[leftIndex] = partials[leftIndex];\n }\n while (++argsIndex < holdersLength) {\n if (isUncurried || argsIndex < argsLength) {\n result[holders[argsIndex]] = args[argsIndex];\n }\n }\n while (rangeLength--) {\n result[leftIndex++] = args[argsIndex++];\n }\n return result;\n }\n\n /**\n * This function is like `composeArgs` except that the arguments composition\n * is tailored for `_.partialRight`.\n *\n * @private\n * @param {Array} args The provided arguments.\n * @param {Array} partials The arguments to append to those provided.\n * @param {Array} holders The `partials` placeholder indexes.\n * @params {boolean} [isCurried] Specify composing for a curried function.\n * @returns {Array} Returns the new array of composed arguments.\n */\n function composeArgsRight(args, partials, holders, isCurried) {\n var argsIndex = -1,\n argsLength = args.length,\n holdersIndex = -1,\n holdersLength = holders.length,\n rightIndex = -1,\n rightLength = partials.length,\n rangeLength = nativeMax(argsLength - holdersLength, 0),\n result = Array(rangeLength + rightLength),\n isUncurried = !isCurried;\n\n while (++argsIndex < rangeLength) {\n result[argsIndex] = args[argsIndex];\n }\n var offset = argsIndex;\n while (++rightIndex < rightLength) {\n result[offset + rightIndex] = partials[rightIndex];\n }\n while (++holdersIndex < holdersLength) {\n if (isUncurried || argsIndex < argsLength) {\n result[offset + holders[holdersIndex]] = args[argsIndex++];\n }\n }\n return result;\n }\n\n /**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\n function copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n }\n\n /**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\n function copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n }\n\n /**\n * Copies own symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\n function copySymbols(source, object) {\n return copyObject(source, getSymbols(source), object);\n }\n\n /**\n * Copies own and inherited symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\n function copySymbolsIn(source, object) {\n return copyObject(source, getSymbolsIn(source), object);\n }\n\n /**\n * Creates a function like `_.groupBy`.\n *\n * @private\n * @param {Function} setter The function to set accumulator values.\n * @param {Function} [initializer] The accumulator object initializer.\n * @returns {Function} Returns the new aggregator function.\n */\n function createAggregator(setter, initializer) {\n return function(collection, iteratee) {\n var func = isArray(collection) ? arrayAggregator : baseAggregator,\n accumulator = initializer ? initializer() : {};\n\n return func(collection, setter, getIteratee(iteratee, 2), accumulator);\n };\n }\n\n /**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\n function createAssigner(assigner) {\n return baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n }\n\n /**\n * Creates a `baseEach` or `baseEachRight` function.\n *\n * @private\n * @param {Function} eachFunc The function to iterate over a collection.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\n function createBaseEach(eachFunc, fromRight) {\n return function(collection, iteratee) {\n if (collection == null) {\n return collection;\n }\n if (!isArrayLike(collection)) {\n return eachFunc(collection, iteratee);\n }\n var length = collection.length,\n index = fromRight ? length : -1,\n iterable = Object(collection);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (iteratee(iterable[index], index, iterable) === false) {\n break;\n }\n }\n return collection;\n };\n }\n\n /**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\n function createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n }\n\n /**\n * Creates a function that wraps `func` to invoke it with the optional `this`\n * binding of `thisArg`.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {*} [thisArg] The `this` binding of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createBind(func, bitmask, thisArg) {\n var isBind = bitmask & WRAP_BIND_FLAG,\n Ctor = createCtor(func);\n\n function wrapper() {\n var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n return fn.apply(isBind ? thisArg : this, arguments);\n }\n return wrapper;\n }\n\n /**\n * Creates a function like `_.lowerFirst`.\n *\n * @private\n * @param {string} methodName The name of the `String` case method to use.\n * @returns {Function} Returns the new case function.\n */\n function createCaseFirst(methodName) {\n return function(string) {\n string = toString(string);\n\n var strSymbols = hasUnicode(string)\n ? stringToArray(string)\n : undefined;\n\n var chr = strSymbols\n ? strSymbols[0]\n : string.charAt(0);\n\n var trailing = strSymbols\n ? castSlice(strSymbols, 1).join('')\n : string.slice(1);\n\n return chr[methodName]() + trailing;\n };\n }\n\n /**\n * Creates a function like `_.camelCase`.\n *\n * @private\n * @param {Function} callback The function to combine each word.\n * @returns {Function} Returns the new compounder function.\n */\n function createCompounder(callback) {\n return function(string) {\n return arrayReduce(words(deburr(string).replace(reApos, '')), callback, '');\n };\n }\n\n /**\n * Creates a function that produces an instance of `Ctor` regardless of\n * whether it was invoked as part of a `new` expression or by `call` or `apply`.\n *\n * @private\n * @param {Function} Ctor The constructor to wrap.\n * @returns {Function} Returns the new wrapped function.\n */\n function createCtor(Ctor) {\n return function() {\n // Use a `switch` statement to work with class constructors. See\n // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist\n // for more details.\n var args = arguments;\n switch (args.length) {\n case 0: return new Ctor;\n case 1: return new Ctor(args[0]);\n case 2: return new Ctor(args[0], args[1]);\n case 3: return new Ctor(args[0], args[1], args[2]);\n case 4: return new Ctor(args[0], args[1], args[2], args[3]);\n case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]);\n case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]);\n case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]);\n }\n var thisBinding = baseCreate(Ctor.prototype),\n result = Ctor.apply(thisBinding, args);\n\n // Mimic the constructor's `return` behavior.\n // See https://es5.github.io/#x13.2.2 for more details.\n return isObject(result) ? result : thisBinding;\n };\n }\n\n /**\n * Creates a function that wraps `func` to enable currying.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {number} arity The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createCurry(func, bitmask, arity) {\n var Ctor = createCtor(func);\n\n function wrapper() {\n var length = arguments.length,\n args = Array(length),\n index = length,\n placeholder = getHolder(wrapper);\n\n while (index--) {\n args[index] = arguments[index];\n }\n var holders = (length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder)\n ? []\n : replaceHolders(args, placeholder);\n\n length -= holders.length;\n if (length < arity) {\n return createRecurry(\n func, bitmask, createHybrid, wrapper.placeholder, undefined,\n args, holders, undefined, undefined, arity - length);\n }\n var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n return apply(fn, this, args);\n }\n return wrapper;\n }\n\n /**\n * Creates a `_.find` or `_.findLast` function.\n *\n * @private\n * @param {Function} findIndexFunc The function to find the collection index.\n * @returns {Function} Returns the new find function.\n */\n function createFind(findIndexFunc) {\n return function(collection, predicate, fromIndex) {\n var iterable = Object(collection);\n if (!isArrayLike(collection)) {\n var iteratee = getIteratee(predicate, 3);\n collection = keys(collection);\n predicate = function(key) { return iteratee(iterable[key], key, iterable); };\n }\n var index = findIndexFunc(collection, predicate, fromIndex);\n return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined;\n };\n }\n\n /**\n * Creates a `_.flow` or `_.flowRight` function.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new flow function.\n */\n function createFlow(fromRight) {\n return flatRest(function(funcs) {\n var length = funcs.length,\n index = length,\n prereq = LodashWrapper.prototype.thru;\n\n if (fromRight) {\n funcs.reverse();\n }\n while (index--) {\n var func = funcs[index];\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n if (prereq && !wrapper && getFuncName(func) == 'wrapper') {\n var wrapper = new LodashWrapper([], true);\n }\n }\n index = wrapper ? index : length;\n while (++index < length) {\n func = funcs[index];\n\n var funcName = getFuncName(func),\n data = funcName == 'wrapper' ? getData(func) : undefined;\n\n if (data && isLaziable(data[0]) &&\n data[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) &&\n !data[4].length && data[9] == 1\n ) {\n wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]);\n } else {\n wrapper = (func.length == 1 && isLaziable(func))\n ? wrapper[funcName]()\n : wrapper.thru(func);\n }\n }\n return function() {\n var args = arguments,\n value = args[0];\n\n if (wrapper && args.length == 1 && isArray(value)) {\n return wrapper.plant(value).value();\n }\n var index = 0,\n result = length ? funcs[index].apply(this, args) : value;\n\n while (++index < length) {\n result = funcs[index].call(this, result);\n }\n return result;\n };\n });\n }\n\n /**\n * Creates a function that wraps `func` to invoke it with optional `this`\n * binding of `thisArg`, partial application, and currying.\n *\n * @private\n * @param {Function|string} func The function or method name to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to prepend to those provided to\n * the new function.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [partialsRight] The arguments to append to those provided\n * to the new function.\n * @param {Array} [holdersRight] The `partialsRight` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createHybrid(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) {\n var isAry = bitmask & WRAP_ARY_FLAG,\n isBind = bitmask & WRAP_BIND_FLAG,\n isBindKey = bitmask & WRAP_BIND_KEY_FLAG,\n isCurried = bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG),\n isFlip = bitmask & WRAP_FLIP_FLAG,\n Ctor = isBindKey ? undefined : createCtor(func);\n\n function wrapper() {\n var length = arguments.length,\n args = Array(length),\n index = length;\n\n while (index--) {\n args[index] = arguments[index];\n }\n if (isCurried) {\n var placeholder = getHolder(wrapper),\n holdersCount = countHolders(args, placeholder);\n }\n if (partials) {\n args = composeArgs(args, partials, holders, isCurried);\n }\n if (partialsRight) {\n args = composeArgsRight(args, partialsRight, holdersRight, isCurried);\n }\n length -= holdersCount;\n if (isCurried && length < arity) {\n var newHolders = replaceHolders(args, placeholder);\n return createRecurry(\n func, bitmask, createHybrid, wrapper.placeholder, thisArg,\n args, newHolders, argPos, ary, arity - length\n );\n }\n var thisBinding = isBind ? thisArg : this,\n fn = isBindKey ? thisBinding[func] : func;\n\n length = args.length;\n if (argPos) {\n args = reorder(args, argPos);\n } else if (isFlip && length > 1) {\n args.reverse();\n }\n if (isAry && ary < length) {\n args.length = ary;\n }\n if (this && this !== root && this instanceof wrapper) {\n fn = Ctor || createCtor(fn);\n }\n return fn.apply(thisBinding, args);\n }\n return wrapper;\n }\n\n /**\n * Creates a function like `_.invertBy`.\n *\n * @private\n * @param {Function} setter The function to set accumulator values.\n * @param {Function} toIteratee The function to resolve iteratees.\n * @returns {Function} Returns the new inverter function.\n */\n function createInverter(setter, toIteratee) {\n return function(object, iteratee) {\n return baseInverter(object, setter, toIteratee(iteratee), {});\n };\n }\n\n /**\n * Creates a function that performs a mathematical operation on two values.\n *\n * @private\n * @param {Function} operator The function to perform the operation.\n * @param {number} [defaultValue] The value used for `undefined` arguments.\n * @returns {Function} Returns the new mathematical operation function.\n */\n function createMathOperation(operator, defaultValue) {\n return function(value, other) {\n var result;\n if (value === undefined && other === undefined) {\n return defaultValue;\n }\n if (value !== undefined) {\n result = value;\n }\n if (other !== undefined) {\n if (result === undefined) {\n return other;\n }\n if (typeof value == 'string' || typeof other == 'string') {\n value = baseToString(value);\n other = baseToString(other);\n } else {\n value = baseToNumber(value);\n other = baseToNumber(other);\n }\n result = operator(value, other);\n }\n return result;\n };\n }\n\n /**\n * Creates a function like `_.over`.\n *\n * @private\n * @param {Function} arrayFunc The function to iterate over iteratees.\n * @returns {Function} Returns the new over function.\n */\n function createOver(arrayFunc) {\n return flatRest(function(iteratees) {\n iteratees = arrayMap(iteratees, baseUnary(getIteratee()));\n return baseRest(function(args) {\n var thisArg = this;\n return arrayFunc(iteratees, function(iteratee) {\n return apply(iteratee, thisArg, args);\n });\n });\n });\n }\n\n /**\n * Creates the padding for `string` based on `length`. The `chars` string\n * is truncated if the number of characters exceeds `length`.\n *\n * @private\n * @param {number} length The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padding for `string`.\n */\n function createPadding(length, chars) {\n chars = chars === undefined ? ' ' : baseToString(chars);\n\n var charsLength = chars.length;\n if (charsLength < 2) {\n return charsLength ? baseRepeat(chars, length) : chars;\n }\n var result = baseRepeat(chars, nativeCeil(length / stringSize(chars)));\n return hasUnicode(chars)\n ? castSlice(stringToArray(result), 0, length).join('')\n : result.slice(0, length);\n }\n\n /**\n * Creates a function that wraps `func` to invoke it with the `this` binding\n * of `thisArg` and `partials` prepended to the arguments it receives.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} partials The arguments to prepend to those provided to\n * the new function.\n * @returns {Function} Returns the new wrapped function.\n */\n function createPartial(func, bitmask, thisArg, partials) {\n var isBind = bitmask & WRAP_BIND_FLAG,\n Ctor = createCtor(func);\n\n function wrapper() {\n var argsIndex = -1,\n argsLength = arguments.length,\n leftIndex = -1,\n leftLength = partials.length,\n args = Array(leftLength + argsLength),\n fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n\n while (++leftIndex < leftLength) {\n args[leftIndex] = partials[leftIndex];\n }\n while (argsLength--) {\n args[leftIndex++] = arguments[++argsIndex];\n }\n return apply(fn, isBind ? thisArg : this, args);\n }\n return wrapper;\n }\n\n /**\n * Creates a `_.range` or `_.rangeRight` function.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new range function.\n */\n function createRange(fromRight) {\n return function(start, end, step) {\n if (step && typeof step != 'number' && isIterateeCall(start, end, step)) {\n end = step = undefined;\n }\n // Ensure the sign of `-0` is preserved.\n start = toFinite(start);\n if (end === undefined) {\n end = start;\n start = 0;\n } else {\n end = toFinite(end);\n }\n step = step === undefined ? (start < end ? 1 : -1) : toFinite(step);\n return baseRange(start, end, step, fromRight);\n };\n }\n\n /**\n * Creates a function that performs a relational operation on two values.\n *\n * @private\n * @param {Function} operator The function to perform the operation.\n * @returns {Function} Returns the new relational operation function.\n */\n function createRelationalOperation(operator) {\n return function(value, other) {\n if (!(typeof value == 'string' && typeof other == 'string')) {\n value = toNumber(value);\n other = toNumber(other);\n }\n return operator(value, other);\n };\n }\n\n /**\n * Creates a function that wraps `func` to continue currying.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {Function} wrapFunc The function to create the `func` wrapper.\n * @param {*} placeholder The placeholder value.\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to prepend to those provided to\n * the new function.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) {\n var isCurry = bitmask & WRAP_CURRY_FLAG,\n newHolders = isCurry ? holders : undefined,\n newHoldersRight = isCurry ? undefined : holders,\n newPartials = isCurry ? partials : undefined,\n newPartialsRight = isCurry ? undefined : partials;\n\n bitmask |= (isCurry ? WRAP_PARTIAL_FLAG : WRAP_PARTIAL_RIGHT_FLAG);\n bitmask &= ~(isCurry ? WRAP_PARTIAL_RIGHT_FLAG : WRAP_PARTIAL_FLAG);\n\n if (!(bitmask & WRAP_CURRY_BOUND_FLAG)) {\n bitmask &= ~(WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG);\n }\n var newData = [\n func, bitmask, thisArg, newPartials, newHolders, newPartialsRight,\n newHoldersRight, argPos, ary, arity\n ];\n\n var result = wrapFunc.apply(undefined, newData);\n if (isLaziable(func)) {\n setData(result, newData);\n }\n result.placeholder = placeholder;\n return setWrapToString(result, func, bitmask);\n }\n\n /**\n * Creates a function like `_.round`.\n *\n * @private\n * @param {string} methodName The name of the `Math` method to use when rounding.\n * @returns {Function} Returns the new round function.\n */\n function createRound(methodName) {\n var func = Math[methodName];\n return function(number, precision) {\n number = toNumber(number);\n precision = precision == null ? 0 : nativeMin(toInteger(precision), 292);\n if (precision && nativeIsFinite(number)) {\n // Shift with exponential notation to avoid floating-point issues.\n // See [MDN](https://mdn.io/round#Examples) for more details.\n var pair = (toString(number) + 'e').split('e'),\n value = func(pair[0] + 'e' + (+pair[1] + precision));\n\n pair = (toString(value) + 'e').split('e');\n return +(pair[0] + 'e' + (+pair[1] - precision));\n }\n return func(number);\n };\n }\n\n /**\n * Creates a set object of `values`.\n *\n * @private\n * @param {Array} values The values to add to the set.\n * @returns {Object} Returns the new set.\n */\n var createSet = !(Set && (1 / setToArray(new Set([,-0]))[1]) == INFINITY) ? noop : function(values) {\n return new Set(values);\n };\n\n /**\n * Creates a `_.toPairs` or `_.toPairsIn` function.\n *\n * @private\n * @param {Function} keysFunc The function to get the keys of a given object.\n * @returns {Function} Returns the new pairs function.\n */\n function createToPairs(keysFunc) {\n return function(object) {\n var tag = getTag(object);\n if (tag == mapTag) {\n return mapToArray(object);\n }\n if (tag == setTag) {\n return setToPairs(object);\n }\n return baseToPairs(object, keysFunc(object));\n };\n }\n\n /**\n * Creates a function that either curries or invokes `func` with optional\n * `this` binding and partially applied arguments.\n *\n * @private\n * @param {Function|string} func The function or method name to wrap.\n * @param {number} bitmask The bitmask flags.\n * 1 - `_.bind`\n * 2 - `_.bindKey`\n * 4 - `_.curry` or `_.curryRight` of a bound function\n * 8 - `_.curry`\n * 16 - `_.curryRight`\n * 32 - `_.partial`\n * 64 - `_.partialRight`\n * 128 - `_.rearg`\n * 256 - `_.ary`\n * 512 - `_.flip`\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to be partially applied.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createWrap(func, bitmask, thisArg, partials, holders, argPos, ary, arity) {\n var isBindKey = bitmask & WRAP_BIND_KEY_FLAG;\n if (!isBindKey && typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var length = partials ? partials.length : 0;\n if (!length) {\n bitmask &= ~(WRAP_PARTIAL_FLAG | WRAP_PARTIAL_RIGHT_FLAG);\n partials = holders = undefined;\n }\n ary = ary === undefined ? ary : nativeMax(toInteger(ary), 0);\n arity = arity === undefined ? arity : toInteger(arity);\n length -= holders ? holders.length : 0;\n\n if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) {\n var partialsRight = partials,\n holdersRight = holders;\n\n partials = holders = undefined;\n }\n var data = isBindKey ? undefined : getData(func);\n\n var newData = [\n func, bitmask, thisArg, partials, holders, partialsRight, holdersRight,\n argPos, ary, arity\n ];\n\n if (data) {\n mergeData(newData, data);\n }\n func = newData[0];\n bitmask = newData[1];\n thisArg = newData[2];\n partials = newData[3];\n holders = newData[4];\n arity = newData[9] = newData[9] === undefined\n ? (isBindKey ? 0 : func.length)\n : nativeMax(newData[9] - length, 0);\n\n if (!arity && bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG)) {\n bitmask &= ~(WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG);\n }\n if (!bitmask || bitmask == WRAP_BIND_FLAG) {\n var result = createBind(func, bitmask, thisArg);\n } else if (bitmask == WRAP_CURRY_FLAG || bitmask == WRAP_CURRY_RIGHT_FLAG) {\n result = createCurry(func, bitmask, arity);\n } else if ((bitmask == WRAP_PARTIAL_FLAG || bitmask == (WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG)) && !holders.length) {\n result = createPartial(func, bitmask, thisArg, partials);\n } else {\n result = createHybrid.apply(undefined, newData);\n }\n var setter = data ? baseSetData : setData;\n return setWrapToString(setter(result, newData), func, bitmask);\n }\n\n /**\n * Used by `_.defaults` to customize its `_.assignIn` use to assign properties\n * of source objects to the destination object for all destination properties\n * that resolve to `undefined`.\n *\n * @private\n * @param {*} objValue The destination value.\n * @param {*} srcValue The source value.\n * @param {string} key The key of the property to assign.\n * @param {Object} object The parent object of `objValue`.\n * @returns {*} Returns the value to assign.\n */\n function customDefaultsAssignIn(objValue, srcValue, key, object) {\n if (objValue === undefined ||\n (eq(objValue, objectProto[key]) && !hasOwnProperty.call(object, key))) {\n return srcValue;\n }\n return objValue;\n }\n\n /**\n * Used by `_.defaultsDeep` to customize its `_.merge` use to merge source\n * objects into destination objects that are passed thru.\n *\n * @private\n * @param {*} objValue The destination value.\n * @param {*} srcValue The source value.\n * @param {string} key The key of the property to merge.\n * @param {Object} object The parent object of `objValue`.\n * @param {Object} source The parent object of `srcValue`.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n * @returns {*} Returns the value to assign.\n */\n function customDefaultsMerge(objValue, srcValue, key, object, source, stack) {\n if (isObject(objValue) && isObject(srcValue)) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, objValue);\n baseMerge(objValue, srcValue, undefined, customDefaultsMerge, stack);\n stack['delete'](srcValue);\n }\n return objValue;\n }\n\n /**\n * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain\n * objects.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {string} key The key of the property to inspect.\n * @returns {*} Returns the uncloned value or `undefined` to defer cloning to `_.cloneDeep`.\n */\n function customOmitClone(value) {\n return isPlainObject(value) ? undefined : value;\n }\n\n /**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\n function equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Check that cyclic values are equal.\n var arrStacked = stack.get(array);\n var othStacked = stack.get(other);\n if (arrStacked && othStacked) {\n return arrStacked == other && othStacked == array;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!arraySome(other, function(othValue, othIndex) {\n if (!cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n }\n\n /**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\n function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n }\n\n /**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\n function equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n objProps = getAllKeys(object),\n objLength = objProps.length,\n othProps = getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n return false;\n }\n }\n // Check that cyclic values are equal.\n var objStacked = stack.get(object);\n var othStacked = stack.get(other);\n if (objStacked && othStacked) {\n return objStacked == other && othStacked == object;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n }\n\n /**\n * A specialized version of `baseRest` which flattens the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @returns {Function} Returns the new function.\n */\n function flatRest(func) {\n return setToString(overRest(func, undefined, flatten), func + '');\n }\n\n /**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\n function getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n }\n\n /**\n * Creates an array of own and inherited enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\n function getAllKeysIn(object) {\n return baseGetAllKeys(object, keysIn, getSymbolsIn);\n }\n\n /**\n * Gets metadata for `func`.\n *\n * @private\n * @param {Function} func The function to query.\n * @returns {*} Returns the metadata for `func`.\n */\n var getData = !metaMap ? noop : function(func) {\n return metaMap.get(func);\n };\n\n /**\n * Gets the name of `func`.\n *\n * @private\n * @param {Function} func The function to query.\n * @returns {string} Returns the function name.\n */\n function getFuncName(func) {\n var result = (func.name + ''),\n array = realNames[result],\n length = hasOwnProperty.call(realNames, result) ? array.length : 0;\n\n while (length--) {\n var data = array[length],\n otherFunc = data.func;\n if (otherFunc == null || otherFunc == func) {\n return data.name;\n }\n }\n return result;\n }\n\n /**\n * Gets the argument placeholder value for `func`.\n *\n * @private\n * @param {Function} func The function to inspect.\n * @returns {*} Returns the placeholder value.\n */\n function getHolder(func) {\n var object = hasOwnProperty.call(lodash, 'placeholder') ? lodash : func;\n return object.placeholder;\n }\n\n /**\n * Gets the appropriate \"iteratee\" function. If `_.iteratee` is customized,\n * this function returns the custom method, otherwise it returns `baseIteratee`.\n * If arguments are provided, the chosen function is invoked with them and\n * its result is returned.\n *\n * @private\n * @param {*} [value] The value to convert to an iteratee.\n * @param {number} [arity] The arity of the created iteratee.\n * @returns {Function} Returns the chosen function or its result.\n */\n function getIteratee() {\n var result = lodash.iteratee || iteratee;\n result = result === iteratee ? baseIteratee : result;\n return arguments.length ? result(arguments[0], arguments[1]) : result;\n }\n\n /**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\n function getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n }\n\n /**\n * Gets the property names, values, and compare flags of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the match data of `object`.\n */\n function getMatchData(object) {\n var result = keys(object),\n length = result.length;\n\n while (length--) {\n var key = result[length],\n value = object[key];\n\n result[length] = [key, value, isStrictComparable(value)];\n }\n return result;\n }\n\n /**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\n function getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n }\n\n /**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\n function getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n }\n\n /**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\n var getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n };\n\n /**\n * Creates an array of the own and inherited enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\n var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) {\n var result = [];\n while (object) {\n arrayPush(result, getSymbols(object));\n object = getPrototype(object);\n }\n return result;\n };\n\n /**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\n var getTag = baseGetTag;\n\n // Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\n if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n }\n\n /**\n * Gets the view, applying any `transforms` to the `start` and `end` positions.\n *\n * @private\n * @param {number} start The start of the view.\n * @param {number} end The end of the view.\n * @param {Array} transforms The transformations to apply to the view.\n * @returns {Object} Returns an object containing the `start` and `end`\n * positions of the view.\n */\n function getView(start, end, transforms) {\n var index = -1,\n length = transforms.length;\n\n while (++index < length) {\n var data = transforms[index],\n size = data.size;\n\n switch (data.type) {\n case 'drop': start += size; break;\n case 'dropRight': end -= size; break;\n case 'take': end = nativeMin(end, start + size); break;\n case 'takeRight': start = nativeMax(start, end - size); break;\n }\n }\n return { 'start': start, 'end': end };\n }\n\n /**\n * Extracts wrapper details from the `source` body comment.\n *\n * @private\n * @param {string} source The source to inspect.\n * @returns {Array} Returns the wrapper details.\n */\n function getWrapDetails(source) {\n var match = source.match(reWrapDetails);\n return match ? match[1].split(reSplitDetails) : [];\n }\n\n /**\n * Checks if `path` exists on `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @param {Function} hasFunc The function to check properties.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n */\n function hasPath(object, path, hasFunc) {\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n result = false;\n\n while (++index < length) {\n var key = toKey(path[index]);\n if (!(result = object != null && hasFunc(object, key))) {\n break;\n }\n object = object[key];\n }\n if (result || ++index != length) {\n return result;\n }\n length = object == null ? 0 : object.length;\n return !!length && isLength(length) && isIndex(key, length) &&\n (isArray(object) || isArguments(object));\n }\n\n /**\n * Initializes an array clone.\n *\n * @private\n * @param {Array} array The array to clone.\n * @returns {Array} Returns the initialized clone.\n */\n function initCloneArray(array) {\n var length = array.length,\n result = new array.constructor(length);\n\n // Add properties assigned by `RegExp#exec`.\n if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {\n result.index = array.index;\n result.input = array.input;\n }\n return result;\n }\n\n /**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\n function initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n }\n\n /**\n * Initializes an object clone based on its `toStringTag`.\n *\n * **Note:** This function only supports cloning values with tags of\n * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`.\n *\n * @private\n * @param {Object} object The object to clone.\n * @param {string} tag The `toStringTag` of the object to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the initialized clone.\n */\n function initCloneByTag(object, tag, isDeep) {\n var Ctor = object.constructor;\n switch (tag) {\n case arrayBufferTag:\n return cloneArrayBuffer(object);\n\n case boolTag:\n case dateTag:\n return new Ctor(+object);\n\n case dataViewTag:\n return cloneDataView(object, isDeep);\n\n case float32Tag: case float64Tag:\n case int8Tag: case int16Tag: case int32Tag:\n case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:\n return cloneTypedArray(object, isDeep);\n\n case mapTag:\n return new Ctor;\n\n case numberTag:\n case stringTag:\n return new Ctor(object);\n\n case regexpTag:\n return cloneRegExp(object);\n\n case setTag:\n return new Ctor;\n\n case symbolTag:\n return cloneSymbol(object);\n }\n }\n\n /**\n * Inserts wrapper `details` in a comment at the top of the `source` body.\n *\n * @private\n * @param {string} source The source to modify.\n * @returns {Array} details The details to insert.\n * @returns {string} Returns the modified source.\n */\n function insertWrapDetails(source, details) {\n var length = details.length;\n if (!length) {\n return source;\n }\n var lastIndex = length - 1;\n details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex];\n details = details.join(length > 2 ? ', ' : ' ');\n return source.replace(reWrapComment, '{\\n/* [wrapped with ' + details + '] */\\n');\n }\n\n /**\n * Checks if `value` is a flattenable `arguments` object or array.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is flattenable, else `false`.\n */\n function isFlattenable(value) {\n return isArray(value) || isArguments(value) ||\n !!(spreadableSymbol && value && value[spreadableSymbol]);\n }\n\n /**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\n function isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n }\n\n /**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\n function isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n }\n\n /**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\n function isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n }\n\n /**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\n function isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n }\n\n /**\n * Checks if `func` has a lazy counterpart.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` has a lazy counterpart,\n * else `false`.\n */\n function isLaziable(func) {\n var funcName = getFuncName(func),\n other = lodash[funcName];\n\n if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) {\n return false;\n }\n if (func === other) {\n return true;\n }\n var data = getData(other);\n return !!data && func === data[0];\n }\n\n /**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\n function isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n }\n\n /**\n * Checks if `func` is capable of being masked.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `func` is maskable, else `false`.\n */\n var isMaskable = coreJsData ? isFunction : stubFalse;\n\n /**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\n function isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n }\n\n /**\n * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` if suitable for strict\n * equality comparisons, else `false`.\n */\n function isStrictComparable(value) {\n return value === value && !isObject(value);\n }\n\n /**\n * A specialized version of `matchesProperty` for source values suitable\n * for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\n function matchesStrictComparable(key, srcValue) {\n return function(object) {\n if (object == null) {\n return false;\n }\n return object[key] === srcValue &&\n (srcValue !== undefined || (key in Object(object)));\n };\n }\n\n /**\n * A specialized version of `_.memoize` which clears the memoized function's\n * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n *\n * @private\n * @param {Function} func The function to have its output memoized.\n * @returns {Function} Returns the new memoized function.\n */\n function memoizeCapped(func) {\n var result = memoize(func, function(key) {\n if (cache.size === MAX_MEMOIZE_SIZE) {\n cache.clear();\n }\n return key;\n });\n\n var cache = result.cache;\n return result;\n }\n\n /**\n * Merges the function metadata of `source` into `data`.\n *\n * Merging metadata reduces the number of wrappers used to invoke a function.\n * This is possible because methods like `_.bind`, `_.curry`, and `_.partial`\n * may be applied regardless of execution order. Methods like `_.ary` and\n * `_.rearg` modify function arguments, making the order in which they are\n * executed important, preventing the merging of metadata. However, we make\n * an exception for a safe combined case where curried functions have `_.ary`\n * and or `_.rearg` applied.\n *\n * @private\n * @param {Array} data The destination metadata.\n * @param {Array} source The source metadata.\n * @returns {Array} Returns `data`.\n */\n function mergeData(data, source) {\n var bitmask = data[1],\n srcBitmask = source[1],\n newBitmask = bitmask | srcBitmask,\n isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG);\n\n var isCombo =\n ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_CURRY_FLAG)) ||\n ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_REARG_FLAG) && (data[7].length <= source[8])) ||\n ((srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG)) && (source[7].length <= source[8]) && (bitmask == WRAP_CURRY_FLAG));\n\n // Exit early if metadata can't be merged.\n if (!(isCommon || isCombo)) {\n return data;\n }\n // Use source `thisArg` if available.\n if (srcBitmask & WRAP_BIND_FLAG) {\n data[2] = source[2];\n // Set when currying a bound function.\n newBitmask |= bitmask & WRAP_BIND_FLAG ? 0 : WRAP_CURRY_BOUND_FLAG;\n }\n // Compose partial arguments.\n var value = source[3];\n if (value) {\n var partials = data[3];\n data[3] = partials ? composeArgs(partials, value, source[4]) : value;\n data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : source[4];\n }\n // Compose partial right arguments.\n value = source[5];\n if (value) {\n partials = data[5];\n data[5] = partials ? composeArgsRight(partials, value, source[6]) : value;\n data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : source[6];\n }\n // Use source `argPos` if available.\n value = source[7];\n if (value) {\n data[7] = value;\n }\n // Use source `ary` if it's smaller.\n if (srcBitmask & WRAP_ARY_FLAG) {\n data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]);\n }\n // Use source `arity` if one is not provided.\n if (data[9] == null) {\n data[9] = source[9];\n }\n // Use source `func` and merge bitmasks.\n data[0] = source[0];\n data[1] = newBitmask;\n\n return data;\n }\n\n /**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\n function nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\n function objectToString(value) {\n return nativeObjectToString.call(value);\n }\n\n /**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\n function overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n }\n\n /**\n * Gets the parent value at `path` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} path The path to get the parent value of.\n * @returns {*} Returns the parent value.\n */\n function parent(object, path) {\n return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1));\n }\n\n /**\n * Reorder `array` according to the specified indexes where the element at\n * the first index is assigned as the first element, the element at\n * the second index is assigned as the second element, and so on.\n *\n * @private\n * @param {Array} array The array to reorder.\n * @param {Array} indexes The arranged array indexes.\n * @returns {Array} Returns `array`.\n */\n function reorder(array, indexes) {\n var arrLength = array.length,\n length = nativeMin(indexes.length, arrLength),\n oldArray = copyArray(array);\n\n while (length--) {\n var index = indexes[length];\n array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined;\n }\n return array;\n }\n\n /**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\n function safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n }\n\n /**\n * Sets metadata for `func`.\n *\n * **Note:** If this function becomes hot, i.e. is invoked a lot in a short\n * period of time, it will trip its breaker and transition to an identity\n * function to avoid garbage collection pauses in V8. See\n * [V8 issue 2070](https://bugs.chromium.org/p/v8/issues/detail?id=2070)\n * for more details.\n *\n * @private\n * @param {Function} func The function to associate metadata with.\n * @param {*} data The metadata.\n * @returns {Function} Returns `func`.\n */\n var setData = shortOut(baseSetData);\n\n /**\n * A simple wrapper around the global [`setTimeout`](https://mdn.io/setTimeout).\n *\n * @private\n * @param {Function} func The function to delay.\n * @param {number} wait The number of milliseconds to delay invocation.\n * @returns {number|Object} Returns the timer id or timeout object.\n */\n var setTimeout = ctxSetTimeout || function(func, wait) {\n return root.setTimeout(func, wait);\n };\n\n /**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\n var setToString = shortOut(baseSetToString);\n\n /**\n * Sets the `toString` method of `wrapper` to mimic the source of `reference`\n * with wrapper details in a comment at the top of the source body.\n *\n * @private\n * @param {Function} wrapper The function to modify.\n * @param {Function} reference The reference function.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @returns {Function} Returns `wrapper`.\n */\n function setWrapToString(wrapper, reference, bitmask) {\n var source = (reference + '');\n return setToString(wrapper, insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask)));\n }\n\n /**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\n function shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n }\n\n /**\n * A specialized version of `_.shuffle` which mutates and sets the size of `array`.\n *\n * @private\n * @param {Array} array The array to shuffle.\n * @param {number} [size=array.length] The size of `array`.\n * @returns {Array} Returns `array`.\n */\n function shuffleSelf(array, size) {\n var index = -1,\n length = array.length,\n lastIndex = length - 1;\n\n size = size === undefined ? length : size;\n while (++index < size) {\n var rand = baseRandom(index, lastIndex),\n value = array[rand];\n\n array[rand] = array[index];\n array[index] = value;\n }\n array.length = size;\n return array;\n }\n\n /**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\n var stringToPath = memoizeCapped(function(string) {\n var result = [];\n if (string.charCodeAt(0) === 46 /* . */) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, subString) {\n result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n });\n\n /**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\n function toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n }\n\n /**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\n function toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n }\n\n /**\n * Updates wrapper `details` based on `bitmask` flags.\n *\n * @private\n * @returns {Array} details The details to modify.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @returns {Array} Returns `details`.\n */\n function updateWrapDetails(details, bitmask) {\n arrayEach(wrapFlags, function(pair) {\n var value = '_.' + pair[0];\n if ((bitmask & pair[1]) && !arrayIncludes(details, value)) {\n details.push(value);\n }\n });\n return details.sort();\n }\n\n /**\n * Creates a clone of `wrapper`.\n *\n * @private\n * @param {Object} wrapper The wrapper to clone.\n * @returns {Object} Returns the cloned wrapper.\n */\n function wrapperClone(wrapper) {\n if (wrapper instanceof LazyWrapper) {\n return wrapper.clone();\n }\n var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__);\n result.__actions__ = copyArray(wrapper.__actions__);\n result.__index__ = wrapper.__index__;\n result.__values__ = wrapper.__values__;\n return result;\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an array of elements split into groups the length of `size`.\n * If `array` can't be split evenly, the final chunk will be the remaining\n * elements.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to process.\n * @param {number} [size=1] The length of each chunk\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the new array of chunks.\n * @example\n *\n * _.chunk(['a', 'b', 'c', 'd'], 2);\n * // => [['a', 'b'], ['c', 'd']]\n *\n * _.chunk(['a', 'b', 'c', 'd'], 3);\n * // => [['a', 'b', 'c'], ['d']]\n */\n function chunk(array, size, guard) {\n if ((guard ? isIterateeCall(array, size, guard) : size === undefined)) {\n size = 1;\n } else {\n size = nativeMax(toInteger(size), 0);\n }\n var length = array == null ? 0 : array.length;\n if (!length || size < 1) {\n return [];\n }\n var index = 0,\n resIndex = 0,\n result = Array(nativeCeil(length / size));\n\n while (index < length) {\n result[resIndex++] = baseSlice(array, index, (index += size));\n }\n return result;\n }\n\n /**\n * Creates an array with all falsey values removed. The values `false`, `null`,\n * `0`, `\"\"`, `undefined`, and `NaN` are falsey.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to compact.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.compact([0, 1, false, 2, '', 3]);\n * // => [1, 2, 3]\n */\n function compact(array) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (value) {\n result[resIndex++] = value;\n }\n }\n return result;\n }\n\n /**\n * Creates a new array concatenating `array` with any additional arrays\n * and/or values.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to concatenate.\n * @param {...*} [values] The values to concatenate.\n * @returns {Array} Returns the new concatenated array.\n * @example\n *\n * var array = [1];\n * var other = _.concat(array, 2, [3], [[4]]);\n *\n * console.log(other);\n * // => [1, 2, 3, [4]]\n *\n * console.log(array);\n * // => [1]\n */\n function concat() {\n var length = arguments.length;\n if (!length) {\n return [];\n }\n var args = Array(length - 1),\n array = arguments[0],\n index = length;\n\n while (index--) {\n args[index - 1] = arguments[index];\n }\n return arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1));\n }\n\n /**\n * Creates an array of `array` values not included in the other given arrays\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons. The order and references of result values are\n * determined by the first array.\n *\n * **Note:** Unlike `_.pullAll`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...Array} [values] The values to exclude.\n * @returns {Array} Returns the new array of filtered values.\n * @see _.without, _.xor\n * @example\n *\n * _.difference([2, 1], [2, 3]);\n * // => [1]\n */\n var difference = baseRest(function(array, values) {\n return isArrayLikeObject(array)\n ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true))\n : [];\n });\n\n /**\n * This method is like `_.difference` except that it accepts `iteratee` which\n * is invoked for each element of `array` and `values` to generate the criterion\n * by which they're compared. The order and references of result values are\n * determined by the first array. The iteratee is invoked with one argument:\n * (value).\n *\n * **Note:** Unlike `_.pullAllBy`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...Array} [values] The values to exclude.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.differenceBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n * // => [1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.differenceBy([{ 'x': 2 }, { 'x': 1 }], [{ 'x': 1 }], 'x');\n * // => [{ 'x': 2 }]\n */\n var differenceBy = baseRest(function(array, values) {\n var iteratee = last(values);\n if (isArrayLikeObject(iteratee)) {\n iteratee = undefined;\n }\n return isArrayLikeObject(array)\n ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), getIteratee(iteratee, 2))\n : [];\n });\n\n /**\n * This method is like `_.difference` except that it accepts `comparator`\n * which is invoked to compare elements of `array` to `values`. The order and\n * references of result values are determined by the first array. The comparator\n * is invoked with two arguments: (arrVal, othVal).\n *\n * **Note:** Unlike `_.pullAllWith`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...Array} [values] The values to exclude.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n *\n * _.differenceWith(objects, [{ 'x': 1, 'y': 2 }], _.isEqual);\n * // => [{ 'x': 2, 'y': 1 }]\n */\n var differenceWith = baseRest(function(array, values) {\n var comparator = last(values);\n if (isArrayLikeObject(comparator)) {\n comparator = undefined;\n }\n return isArrayLikeObject(array)\n ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), undefined, comparator)\n : [];\n });\n\n /**\n * Creates a slice of `array` with `n` elements dropped from the beginning.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to drop.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.drop([1, 2, 3]);\n * // => [2, 3]\n *\n * _.drop([1, 2, 3], 2);\n * // => [3]\n *\n * _.drop([1, 2, 3], 5);\n * // => []\n *\n * _.drop([1, 2, 3], 0);\n * // => [1, 2, 3]\n */\n function drop(array, n, guard) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n return baseSlice(array, n < 0 ? 0 : n, length);\n }\n\n /**\n * Creates a slice of `array` with `n` elements dropped from the end.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to drop.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.dropRight([1, 2, 3]);\n * // => [1, 2]\n *\n * _.dropRight([1, 2, 3], 2);\n * // => [1]\n *\n * _.dropRight([1, 2, 3], 5);\n * // => []\n *\n * _.dropRight([1, 2, 3], 0);\n * // => [1, 2, 3]\n */\n function dropRight(array, n, guard) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n n = length - n;\n return baseSlice(array, 0, n < 0 ? 0 : n);\n }\n\n /**\n * Creates a slice of `array` excluding elements dropped from the end.\n * Elements are dropped until `predicate` returns falsey. The predicate is\n * invoked with three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.dropRightWhile(users, function(o) { return !o.active; });\n * // => objects for ['barney']\n *\n * // The `_.matches` iteratee shorthand.\n * _.dropRightWhile(users, { 'user': 'pebbles', 'active': false });\n * // => objects for ['barney', 'fred']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.dropRightWhile(users, ['active', false]);\n * // => objects for ['barney']\n *\n * // The `_.property` iteratee shorthand.\n * _.dropRightWhile(users, 'active');\n * // => objects for ['barney', 'fred', 'pebbles']\n */\n function dropRightWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3), true, true)\n : [];\n }\n\n /**\n * Creates a slice of `array` excluding elements dropped from the beginning.\n * Elements are dropped until `predicate` returns falsey. The predicate is\n * invoked with three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.dropWhile(users, function(o) { return !o.active; });\n * // => objects for ['pebbles']\n *\n * // The `_.matches` iteratee shorthand.\n * _.dropWhile(users, { 'user': 'barney', 'active': false });\n * // => objects for ['fred', 'pebbles']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.dropWhile(users, ['active', false]);\n * // => objects for ['pebbles']\n *\n * // The `_.property` iteratee shorthand.\n * _.dropWhile(users, 'active');\n * // => objects for ['barney', 'fred', 'pebbles']\n */\n function dropWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3), true)\n : [];\n }\n\n /**\n * Fills elements of `array` with `value` from `start` up to, but not\n * including, `end`.\n *\n * **Note:** This method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 3.2.0\n * @category Array\n * @param {Array} array The array to fill.\n * @param {*} value The value to fill `array` with.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [1, 2, 3];\n *\n * _.fill(array, 'a');\n * console.log(array);\n * // => ['a', 'a', 'a']\n *\n * _.fill(Array(3), 2);\n * // => [2, 2, 2]\n *\n * _.fill([4, 6, 8, 10], '*', 1, 3);\n * // => [4, '*', '*', 10]\n */\n function fill(array, value, start, end) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n if (start && typeof start != 'number' && isIterateeCall(array, value, start)) {\n start = 0;\n end = length;\n }\n return baseFill(array, value, start, end);\n }\n\n /**\n * This method is like `_.find` except that it returns the index of the first\n * element `predicate` returns truthy for instead of the element itself.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {number} Returns the index of the found element, else `-1`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.findIndex(users, function(o) { return o.user == 'barney'; });\n * // => 0\n *\n * // The `_.matches` iteratee shorthand.\n * _.findIndex(users, { 'user': 'fred', 'active': false });\n * // => 1\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findIndex(users, ['active', false]);\n * // => 0\n *\n * // The `_.property` iteratee shorthand.\n * _.findIndex(users, 'active');\n * // => 2\n */\n function findIndex(array, predicate, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = fromIndex == null ? 0 : toInteger(fromIndex);\n if (index < 0) {\n index = nativeMax(length + index, 0);\n }\n return baseFindIndex(array, getIteratee(predicate, 3), index);\n }\n\n /**\n * This method is like `_.findIndex` except that it iterates over elements\n * of `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=array.length-1] The index to search from.\n * @returns {number} Returns the index of the found element, else `-1`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.findLastIndex(users, function(o) { return o.user == 'pebbles'; });\n * // => 2\n *\n * // The `_.matches` iteratee shorthand.\n * _.findLastIndex(users, { 'user': 'barney', 'active': true });\n * // => 0\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findLastIndex(users, ['active', false]);\n * // => 2\n *\n * // The `_.property` iteratee shorthand.\n * _.findLastIndex(users, 'active');\n * // => 0\n */\n function findLastIndex(array, predicate, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = length - 1;\n if (fromIndex !== undefined) {\n index = toInteger(fromIndex);\n index = fromIndex < 0\n ? nativeMax(length + index, 0)\n : nativeMin(index, length - 1);\n }\n return baseFindIndex(array, getIteratee(predicate, 3), index, true);\n }\n\n /**\n * Flattens `array` a single level deep.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * _.flatten([1, [2, [3, [4]], 5]]);\n * // => [1, 2, [3, [4]], 5]\n */\n function flatten(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseFlatten(array, 1) : [];\n }\n\n /**\n * Recursively flattens `array`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * _.flattenDeep([1, [2, [3, [4]], 5]]);\n * // => [1, 2, 3, 4, 5]\n */\n function flattenDeep(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseFlatten(array, INFINITY) : [];\n }\n\n /**\n * Recursively flatten `array` up to `depth` times.\n *\n * @static\n * @memberOf _\n * @since 4.4.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @param {number} [depth=1] The maximum recursion depth.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * var array = [1, [2, [3, [4]], 5]];\n *\n * _.flattenDepth(array, 1);\n * // => [1, 2, [3, [4]], 5]\n *\n * _.flattenDepth(array, 2);\n * // => [1, 2, 3, [4], 5]\n */\n function flattenDepth(array, depth) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n depth = depth === undefined ? 1 : toInteger(depth);\n return baseFlatten(array, depth);\n }\n\n /**\n * The inverse of `_.toPairs`; this method returns an object composed\n * from key-value `pairs`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} pairs The key-value pairs.\n * @returns {Object} Returns the new object.\n * @example\n *\n * _.fromPairs([['a', 1], ['b', 2]]);\n * // => { 'a': 1, 'b': 2 }\n */\n function fromPairs(pairs) {\n var index = -1,\n length = pairs == null ? 0 : pairs.length,\n result = {};\n\n while (++index < length) {\n var pair = pairs[index];\n result[pair[0]] = pair[1];\n }\n return result;\n }\n\n /**\n * Gets the first element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @alias first\n * @category Array\n * @param {Array} array The array to query.\n * @returns {*} Returns the first element of `array`.\n * @example\n *\n * _.head([1, 2, 3]);\n * // => 1\n *\n * _.head([]);\n * // => undefined\n */\n function head(array) {\n return (array && array.length) ? array[0] : undefined;\n }\n\n /**\n * Gets the index at which the first occurrence of `value` is found in `array`\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons. If `fromIndex` is negative, it's used as the\n * offset from the end of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.indexOf([1, 2, 1, 2], 2);\n * // => 1\n *\n * // Search from the `fromIndex`.\n * _.indexOf([1, 2, 1, 2], 2, 2);\n * // => 3\n */\n function indexOf(array, value, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = fromIndex == null ? 0 : toInteger(fromIndex);\n if (index < 0) {\n index = nativeMax(length + index, 0);\n }\n return baseIndexOf(array, value, index);\n }\n\n /**\n * Gets all but the last element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.initial([1, 2, 3]);\n * // => [1, 2]\n */\n function initial(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseSlice(array, 0, -1) : [];\n }\n\n /**\n * Creates an array of unique values that are included in all given arrays\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons. The order and references of result values are\n * determined by the first array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @returns {Array} Returns the new array of intersecting values.\n * @example\n *\n * _.intersection([2, 1], [2, 3]);\n * // => [2]\n */\n var intersection = baseRest(function(arrays) {\n var mapped = arrayMap(arrays, castArrayLikeObject);\n return (mapped.length && mapped[0] === arrays[0])\n ? baseIntersection(mapped)\n : [];\n });\n\n /**\n * This method is like `_.intersection` except that it accepts `iteratee`\n * which is invoked for each element of each `arrays` to generate the criterion\n * by which they're compared. The order and references of result values are\n * determined by the first array. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of intersecting values.\n * @example\n *\n * _.intersectionBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n * // => [2.1]\n *\n * // The `_.property` iteratee shorthand.\n * _.intersectionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }]\n */\n var intersectionBy = baseRest(function(arrays) {\n var iteratee = last(arrays),\n mapped = arrayMap(arrays, castArrayLikeObject);\n\n if (iteratee === last(mapped)) {\n iteratee = undefined;\n } else {\n mapped.pop();\n }\n return (mapped.length && mapped[0] === arrays[0])\n ? baseIntersection(mapped, getIteratee(iteratee, 2))\n : [];\n });\n\n /**\n * This method is like `_.intersection` except that it accepts `comparator`\n * which is invoked to compare elements of `arrays`. The order and references\n * of result values are determined by the first array. The comparator is\n * invoked with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of intersecting values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.intersectionWith(objects, others, _.isEqual);\n * // => [{ 'x': 1, 'y': 2 }]\n */\n var intersectionWith = baseRest(function(arrays) {\n var comparator = last(arrays),\n mapped = arrayMap(arrays, castArrayLikeObject);\n\n comparator = typeof comparator == 'function' ? comparator : undefined;\n if (comparator) {\n mapped.pop();\n }\n return (mapped.length && mapped[0] === arrays[0])\n ? baseIntersection(mapped, undefined, comparator)\n : [];\n });\n\n /**\n * Converts all elements in `array` into a string separated by `separator`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to convert.\n * @param {string} [separator=','] The element separator.\n * @returns {string} Returns the joined string.\n * @example\n *\n * _.join(['a', 'b', 'c'], '~');\n * // => 'a~b~c'\n */\n function join(array, separator) {\n return array == null ? '' : nativeJoin.call(array, separator);\n }\n\n /**\n * Gets the last element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {*} Returns the last element of `array`.\n * @example\n *\n * _.last([1, 2, 3]);\n * // => 3\n */\n function last(array) {\n var length = array == null ? 0 : array.length;\n return length ? array[length - 1] : undefined;\n }\n\n /**\n * This method is like `_.indexOf` except that it iterates over elements of\n * `array` from right to left.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} [fromIndex=array.length-1] The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.lastIndexOf([1, 2, 1, 2], 2);\n * // => 3\n *\n * // Search from the `fromIndex`.\n * _.lastIndexOf([1, 2, 1, 2], 2, 2);\n * // => 1\n */\n function lastIndexOf(array, value, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = length;\n if (fromIndex !== undefined) {\n index = toInteger(fromIndex);\n index = index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1);\n }\n return value === value\n ? strictLastIndexOf(array, value, index)\n : baseFindIndex(array, baseIsNaN, index, true);\n }\n\n /**\n * Gets the element at index `n` of `array`. If `n` is negative, the nth\n * element from the end is returned.\n *\n * @static\n * @memberOf _\n * @since 4.11.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=0] The index of the element to return.\n * @returns {*} Returns the nth element of `array`.\n * @example\n *\n * var array = ['a', 'b', 'c', 'd'];\n *\n * _.nth(array, 1);\n * // => 'b'\n *\n * _.nth(array, -2);\n * // => 'c';\n */\n function nth(array, n) {\n return (array && array.length) ? baseNth(array, toInteger(n)) : undefined;\n }\n\n /**\n * Removes all given values from `array` using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * **Note:** Unlike `_.without`, this method mutates `array`. Use `_.remove`\n * to remove elements from an array by predicate.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {...*} [values] The values to remove.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = ['a', 'b', 'c', 'a', 'b', 'c'];\n *\n * _.pull(array, 'a', 'c');\n * console.log(array);\n * // => ['b', 'b']\n */\n var pull = baseRest(pullAll);\n\n /**\n * This method is like `_.pull` except that it accepts an array of values to remove.\n *\n * **Note:** Unlike `_.difference`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = ['a', 'b', 'c', 'a', 'b', 'c'];\n *\n * _.pullAll(array, ['a', 'c']);\n * console.log(array);\n * // => ['b', 'b']\n */\n function pullAll(array, values) {\n return (array && array.length && values && values.length)\n ? basePullAll(array, values)\n : array;\n }\n\n /**\n * This method is like `_.pullAll` except that it accepts `iteratee` which is\n * invoked for each element of `array` and `values` to generate the criterion\n * by which they're compared. The iteratee is invoked with one argument: (value).\n *\n * **Note:** Unlike `_.differenceBy`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [{ 'x': 1 }, { 'x': 2 }, { 'x': 3 }, { 'x': 1 }];\n *\n * _.pullAllBy(array, [{ 'x': 1 }, { 'x': 3 }], 'x');\n * console.log(array);\n * // => [{ 'x': 2 }]\n */\n function pullAllBy(array, values, iteratee) {\n return (array && array.length && values && values.length)\n ? basePullAll(array, values, getIteratee(iteratee, 2))\n : array;\n }\n\n /**\n * This method is like `_.pullAll` except that it accepts `comparator` which\n * is invoked to compare elements of `array` to `values`. The comparator is\n * invoked with two arguments: (arrVal, othVal).\n *\n * **Note:** Unlike `_.differenceWith`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 4.6.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [{ 'x': 1, 'y': 2 }, { 'x': 3, 'y': 4 }, { 'x': 5, 'y': 6 }];\n *\n * _.pullAllWith(array, [{ 'x': 3, 'y': 4 }], _.isEqual);\n * console.log(array);\n * // => [{ 'x': 1, 'y': 2 }, { 'x': 5, 'y': 6 }]\n */\n function pullAllWith(array, values, comparator) {\n return (array && array.length && values && values.length)\n ? basePullAll(array, values, undefined, comparator)\n : array;\n }\n\n /**\n * Removes elements from `array` corresponding to `indexes` and returns an\n * array of removed elements.\n *\n * **Note:** Unlike `_.at`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {...(number|number[])} [indexes] The indexes of elements to remove.\n * @returns {Array} Returns the new array of removed elements.\n * @example\n *\n * var array = ['a', 'b', 'c', 'd'];\n * var pulled = _.pullAt(array, [1, 3]);\n *\n * console.log(array);\n * // => ['a', 'c']\n *\n * console.log(pulled);\n * // => ['b', 'd']\n */\n var pullAt = flatRest(function(array, indexes) {\n var length = array == null ? 0 : array.length,\n result = baseAt(array, indexes);\n\n basePullAt(array, arrayMap(indexes, function(index) {\n return isIndex(index, length) ? +index : index;\n }).sort(compareAscending));\n\n return result;\n });\n\n /**\n * Removes all elements from `array` that `predicate` returns truthy for\n * and returns an array of the removed elements. The predicate is invoked\n * with three arguments: (value, index, array).\n *\n * **Note:** Unlike `_.filter`, this method mutates `array`. Use `_.pull`\n * to pull elements from an array by value.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new array of removed elements.\n * @example\n *\n * var array = [1, 2, 3, 4];\n * var evens = _.remove(array, function(n) {\n * return n % 2 == 0;\n * });\n *\n * console.log(array);\n * // => [1, 3]\n *\n * console.log(evens);\n * // => [2, 4]\n */\n function remove(array, predicate) {\n var result = [];\n if (!(array && array.length)) {\n return result;\n }\n var index = -1,\n indexes = [],\n length = array.length;\n\n predicate = getIteratee(predicate, 3);\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result.push(value);\n indexes.push(index);\n }\n }\n basePullAt(array, indexes);\n return result;\n }\n\n /**\n * Reverses `array` so that the first element becomes the last, the second\n * element becomes the second to last, and so on.\n *\n * **Note:** This method mutates `array` and is based on\n * [`Array#reverse`](https://mdn.io/Array/reverse).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [1, 2, 3];\n *\n * _.reverse(array);\n * // => [3, 2, 1]\n *\n * console.log(array);\n * // => [3, 2, 1]\n */\n function reverse(array) {\n return array == null ? array : nativeReverse.call(array);\n }\n\n /**\n * Creates a slice of `array` from `start` up to, but not including, `end`.\n *\n * **Note:** This method is used instead of\n * [`Array#slice`](https://mdn.io/Array/slice) to ensure dense arrays are\n * returned.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to slice.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the slice of `array`.\n */\n function slice(array, start, end) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n if (end && typeof end != 'number' && isIterateeCall(array, start, end)) {\n start = 0;\n end = length;\n }\n else {\n start = start == null ? 0 : toInteger(start);\n end = end === undefined ? length : toInteger(end);\n }\n return baseSlice(array, start, end);\n }\n\n /**\n * Uses a binary search to determine the lowest index at which `value`\n * should be inserted into `array` in order to maintain its sort order.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * _.sortedIndex([30, 50], 40);\n * // => 1\n */\n function sortedIndex(array, value) {\n return baseSortedIndex(array, value);\n }\n\n /**\n * This method is like `_.sortedIndex` except that it accepts `iteratee`\n * which is invoked for `value` and each element of `array` to compute their\n * sort ranking. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * var objects = [{ 'x': 4 }, { 'x': 5 }];\n *\n * _.sortedIndexBy(objects, { 'x': 4 }, function(o) { return o.x; });\n * // => 0\n *\n * // The `_.property` iteratee shorthand.\n * _.sortedIndexBy(objects, { 'x': 4 }, 'x');\n * // => 0\n */\n function sortedIndexBy(array, value, iteratee) {\n return baseSortedIndexBy(array, value, getIteratee(iteratee, 2));\n }\n\n /**\n * This method is like `_.indexOf` except that it performs a binary\n * search on a sorted `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.sortedIndexOf([4, 5, 5, 5, 6], 5);\n * // => 1\n */\n function sortedIndexOf(array, value) {\n var length = array == null ? 0 : array.length;\n if (length) {\n var index = baseSortedIndex(array, value);\n if (index < length && eq(array[index], value)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * This method is like `_.sortedIndex` except that it returns the highest\n * index at which `value` should be inserted into `array` in order to\n * maintain its sort order.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * _.sortedLastIndex([4, 5, 5, 5, 6], 5);\n * // => 4\n */\n function sortedLastIndex(array, value) {\n return baseSortedIndex(array, value, true);\n }\n\n /**\n * This method is like `_.sortedLastIndex` except that it accepts `iteratee`\n * which is invoked for `value` and each element of `array` to compute their\n * sort ranking. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * var objects = [{ 'x': 4 }, { 'x': 5 }];\n *\n * _.sortedLastIndexBy(objects, { 'x': 4 }, function(o) { return o.x; });\n * // => 1\n *\n * // The `_.property` iteratee shorthand.\n * _.sortedLastIndexBy(objects, { 'x': 4 }, 'x');\n * // => 1\n */\n function sortedLastIndexBy(array, value, iteratee) {\n return baseSortedIndexBy(array, value, getIteratee(iteratee, 2), true);\n }\n\n /**\n * This method is like `_.lastIndexOf` except that it performs a binary\n * search on a sorted `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.sortedLastIndexOf([4, 5, 5, 5, 6], 5);\n * // => 3\n */\n function sortedLastIndexOf(array, value) {\n var length = array == null ? 0 : array.length;\n if (length) {\n var index = baseSortedIndex(array, value, true) - 1;\n if (eq(array[index], value)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * This method is like `_.uniq` except that it's designed and optimized\n * for sorted arrays.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.sortedUniq([1, 1, 2]);\n * // => [1, 2]\n */\n function sortedUniq(array) {\n return (array && array.length)\n ? baseSortedUniq(array)\n : [];\n }\n\n /**\n * This method is like `_.uniqBy` except that it's designed and optimized\n * for sorted arrays.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.sortedUniqBy([1.1, 1.2, 2.3, 2.4], Math.floor);\n * // => [1.1, 2.3]\n */\n function sortedUniqBy(array, iteratee) {\n return (array && array.length)\n ? baseSortedUniq(array, getIteratee(iteratee, 2))\n : [];\n }\n\n /**\n * Gets all but the first element of `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.tail([1, 2, 3]);\n * // => [2, 3]\n */\n function tail(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseSlice(array, 1, length) : [];\n }\n\n /**\n * Creates a slice of `array` with `n` elements taken from the beginning.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to take.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.take([1, 2, 3]);\n * // => [1]\n *\n * _.take([1, 2, 3], 2);\n * // => [1, 2]\n *\n * _.take([1, 2, 3], 5);\n * // => [1, 2, 3]\n *\n * _.take([1, 2, 3], 0);\n * // => []\n */\n function take(array, n, guard) {\n if (!(array && array.length)) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n return baseSlice(array, 0, n < 0 ? 0 : n);\n }\n\n /**\n * Creates a slice of `array` with `n` elements taken from the end.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to take.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.takeRight([1, 2, 3]);\n * // => [3]\n *\n * _.takeRight([1, 2, 3], 2);\n * // => [2, 3]\n *\n * _.takeRight([1, 2, 3], 5);\n * // => [1, 2, 3]\n *\n * _.takeRight([1, 2, 3], 0);\n * // => []\n */\n function takeRight(array, n, guard) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n n = length - n;\n return baseSlice(array, n < 0 ? 0 : n, length);\n }\n\n /**\n * Creates a slice of `array` with elements taken from the end. Elements are\n * taken until `predicate` returns falsey. The predicate is invoked with\n * three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.takeRightWhile(users, function(o) { return !o.active; });\n * // => objects for ['fred', 'pebbles']\n *\n * // The `_.matches` iteratee shorthand.\n * _.takeRightWhile(users, { 'user': 'pebbles', 'active': false });\n * // => objects for ['pebbles']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.takeRightWhile(users, ['active', false]);\n * // => objects for ['fred', 'pebbles']\n *\n * // The `_.property` iteratee shorthand.\n * _.takeRightWhile(users, 'active');\n * // => []\n */\n function takeRightWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3), false, true)\n : [];\n }\n\n /**\n * Creates a slice of `array` with elements taken from the beginning. Elements\n * are taken until `predicate` returns falsey. The predicate is invoked with\n * three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.takeWhile(users, function(o) { return !o.active; });\n * // => objects for ['barney', 'fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.takeWhile(users, { 'user': 'barney', 'active': false });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.takeWhile(users, ['active', false]);\n * // => objects for ['barney', 'fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.takeWhile(users, 'active');\n * // => []\n */\n function takeWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3))\n : [];\n }\n\n /**\n * Creates an array of unique values, in order, from all given arrays using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @returns {Array} Returns the new array of combined values.\n * @example\n *\n * _.union([2], [1, 2]);\n * // => [2, 1]\n */\n var union = baseRest(function(arrays) {\n return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true));\n });\n\n /**\n * This method is like `_.union` except that it accepts `iteratee` which is\n * invoked for each element of each `arrays` to generate the criterion by\n * which uniqueness is computed. Result values are chosen from the first\n * array in which the value occurs. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of combined values.\n * @example\n *\n * _.unionBy([2.1], [1.2, 2.3], Math.floor);\n * // => [2.1, 1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.unionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }, { 'x': 2 }]\n */\n var unionBy = baseRest(function(arrays) {\n var iteratee = last(arrays);\n if (isArrayLikeObject(iteratee)) {\n iteratee = undefined;\n }\n return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), getIteratee(iteratee, 2));\n });\n\n /**\n * This method is like `_.union` except that it accepts `comparator` which\n * is invoked to compare elements of `arrays`. Result values are chosen from\n * the first array in which the value occurs. The comparator is invoked\n * with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of combined values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.unionWith(objects, others, _.isEqual);\n * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }]\n */\n var unionWith = baseRest(function(arrays) {\n var comparator = last(arrays);\n comparator = typeof comparator == 'function' ? comparator : undefined;\n return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), undefined, comparator);\n });\n\n /**\n * Creates a duplicate-free version of an array, using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons, in which only the first occurrence of each element\n * is kept. The order of result values is determined by the order they occur\n * in the array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.uniq([2, 1, 2]);\n * // => [2, 1]\n */\n function uniq(array) {\n return (array && array.length) ? baseUniq(array) : [];\n }\n\n /**\n * This method is like `_.uniq` except that it accepts `iteratee` which is\n * invoked for each element in `array` to generate the criterion by which\n * uniqueness is computed. The order of result values is determined by the\n * order they occur in the array. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.uniqBy([2.1, 1.2, 2.3], Math.floor);\n * // => [2.1, 1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.uniqBy([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }, { 'x': 2 }]\n */\n function uniqBy(array, iteratee) {\n return (array && array.length) ? baseUniq(array, getIteratee(iteratee, 2)) : [];\n }\n\n /**\n * This method is like `_.uniq` except that it accepts `comparator` which\n * is invoked to compare elements of `array`. The order of result values is\n * determined by the order they occur in the array.The comparator is invoked\n * with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.uniqWith(objects, _.isEqual);\n * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]\n */\n function uniqWith(array, comparator) {\n comparator = typeof comparator == 'function' ? comparator : undefined;\n return (array && array.length) ? baseUniq(array, undefined, comparator) : [];\n }\n\n /**\n * This method is like `_.zip` except that it accepts an array of grouped\n * elements and creates an array regrouping the elements to their pre-zip\n * configuration.\n *\n * @static\n * @memberOf _\n * @since 1.2.0\n * @category Array\n * @param {Array} array The array of grouped elements to process.\n * @returns {Array} Returns the new array of regrouped elements.\n * @example\n *\n * var zipped = _.zip(['a', 'b'], [1, 2], [true, false]);\n * // => [['a', 1, true], ['b', 2, false]]\n *\n * _.unzip(zipped);\n * // => [['a', 'b'], [1, 2], [true, false]]\n */\n function unzip(array) {\n if (!(array && array.length)) {\n return [];\n }\n var length = 0;\n array = arrayFilter(array, function(group) {\n if (isArrayLikeObject(group)) {\n length = nativeMax(group.length, length);\n return true;\n }\n });\n return baseTimes(length, function(index) {\n return arrayMap(array, baseProperty(index));\n });\n }\n\n /**\n * This method is like `_.unzip` except that it accepts `iteratee` to specify\n * how regrouped values should be combined. The iteratee is invoked with the\n * elements of each group: (...group).\n *\n * @static\n * @memberOf _\n * @since 3.8.0\n * @category Array\n * @param {Array} array The array of grouped elements to process.\n * @param {Function} [iteratee=_.identity] The function to combine\n * regrouped values.\n * @returns {Array} Returns the new array of regrouped elements.\n * @example\n *\n * var zipped = _.zip([1, 2], [10, 20], [100, 200]);\n * // => [[1, 10, 100], [2, 20, 200]]\n *\n * _.unzipWith(zipped, _.add);\n * // => [3, 30, 300]\n */\n function unzipWith(array, iteratee) {\n if (!(array && array.length)) {\n return [];\n }\n var result = unzip(array);\n if (iteratee == null) {\n return result;\n }\n return arrayMap(result, function(group) {\n return apply(iteratee, undefined, group);\n });\n }\n\n /**\n * Creates an array excluding all given values using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * **Note:** Unlike `_.pull`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...*} [values] The values to exclude.\n * @returns {Array} Returns the new array of filtered values.\n * @see _.difference, _.xor\n * @example\n *\n * _.without([2, 1, 2, 3], 1, 2);\n * // => [3]\n */\n var without = baseRest(function(array, values) {\n return isArrayLikeObject(array)\n ? baseDifference(array, values)\n : [];\n });\n\n /**\n * Creates an array of unique values that is the\n * [symmetric difference](https://en.wikipedia.org/wiki/Symmetric_difference)\n * of the given arrays. The order of result values is determined by the order\n * they occur in the arrays.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @returns {Array} Returns the new array of filtered values.\n * @see _.difference, _.without\n * @example\n *\n * _.xor([2, 1], [2, 3]);\n * // => [1, 3]\n */\n var xor = baseRest(function(arrays) {\n return baseXor(arrayFilter(arrays, isArrayLikeObject));\n });\n\n /**\n * This method is like `_.xor` except that it accepts `iteratee` which is\n * invoked for each element of each `arrays` to generate the criterion by\n * which by which they're compared. The order of result values is determined\n * by the order they occur in the arrays. The iteratee is invoked with one\n * argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.xorBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n * // => [1.2, 3.4]\n *\n * // The `_.property` iteratee shorthand.\n * _.xorBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 2 }]\n */\n var xorBy = baseRest(function(arrays) {\n var iteratee = last(arrays);\n if (isArrayLikeObject(iteratee)) {\n iteratee = undefined;\n }\n return baseXor(arrayFilter(arrays, isArrayLikeObject), getIteratee(iteratee, 2));\n });\n\n /**\n * This method is like `_.xor` except that it accepts `comparator` which is\n * invoked to compare elements of `arrays`. The order of result values is\n * determined by the order they occur in the arrays. The comparator is invoked\n * with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.xorWith(objects, others, _.isEqual);\n * // => [{ 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }]\n */\n var xorWith = baseRest(function(arrays) {\n var comparator = last(arrays);\n comparator = typeof comparator == 'function' ? comparator : undefined;\n return baseXor(arrayFilter(arrays, isArrayLikeObject), undefined, comparator);\n });\n\n /**\n * Creates an array of grouped elements, the first of which contains the\n * first elements of the given arrays, the second of which contains the\n * second elements of the given arrays, and so on.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {...Array} [arrays] The arrays to process.\n * @returns {Array} Returns the new array of grouped elements.\n * @example\n *\n * _.zip(['a', 'b'], [1, 2], [true, false]);\n * // => [['a', 1, true], ['b', 2, false]]\n */\n var zip = baseRest(unzip);\n\n /**\n * This method is like `_.fromPairs` except that it accepts two arrays,\n * one of property identifiers and one of corresponding values.\n *\n * @static\n * @memberOf _\n * @since 0.4.0\n * @category Array\n * @param {Array} [props=[]] The property identifiers.\n * @param {Array} [values=[]] The property values.\n * @returns {Object} Returns the new object.\n * @example\n *\n * _.zipObject(['a', 'b'], [1, 2]);\n * // => { 'a': 1, 'b': 2 }\n */\n function zipObject(props, values) {\n return baseZipObject(props || [], values || [], assignValue);\n }\n\n /**\n * This method is like `_.zipObject` except that it supports property paths.\n *\n * @static\n * @memberOf _\n * @since 4.1.0\n * @category Array\n * @param {Array} [props=[]] The property identifiers.\n * @param {Array} [values=[]] The property values.\n * @returns {Object} Returns the new object.\n * @example\n *\n * _.zipObjectDeep(['a.b[0].c', 'a.b[1].d'], [1, 2]);\n * // => { 'a': { 'b': [{ 'c': 1 }, { 'd': 2 }] } }\n */\n function zipObjectDeep(props, values) {\n return baseZipObject(props || [], values || [], baseSet);\n }\n\n /**\n * This method is like `_.zip` except that it accepts `iteratee` to specify\n * how grouped values should be combined. The iteratee is invoked with the\n * elements of each group: (...group).\n *\n * @static\n * @memberOf _\n * @since 3.8.0\n * @category Array\n * @param {...Array} [arrays] The arrays to process.\n * @param {Function} [iteratee=_.identity] The function to combine\n * grouped values.\n * @returns {Array} Returns the new array of grouped elements.\n * @example\n *\n * _.zipWith([1, 2], [10, 20], [100, 200], function(a, b, c) {\n * return a + b + c;\n * });\n * // => [111, 222]\n */\n var zipWith = baseRest(function(arrays) {\n var length = arrays.length,\n iteratee = length > 1 ? arrays[length - 1] : undefined;\n\n iteratee = typeof iteratee == 'function' ? (arrays.pop(), iteratee) : undefined;\n return unzipWith(arrays, iteratee);\n });\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a `lodash` wrapper instance that wraps `value` with explicit method\n * chain sequences enabled. The result of such sequences must be unwrapped\n * with `_#value`.\n *\n * @static\n * @memberOf _\n * @since 1.3.0\n * @category Seq\n * @param {*} value The value to wrap.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36 },\n * { 'user': 'fred', 'age': 40 },\n * { 'user': 'pebbles', 'age': 1 }\n * ];\n *\n * var youngest = _\n * .chain(users)\n * .sortBy('age')\n * .map(function(o) {\n * return o.user + ' is ' + o.age;\n * })\n * .head()\n * .value();\n * // => 'pebbles is 1'\n */\n function chain(value) {\n var result = lodash(value);\n result.__chain__ = true;\n return result;\n }\n\n /**\n * This method invokes `interceptor` and returns `value`. The interceptor\n * is invoked with one argument; (value). The purpose of this method is to\n * \"tap into\" a method chain sequence in order to modify intermediate results.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Seq\n * @param {*} value The value to provide to `interceptor`.\n * @param {Function} interceptor The function to invoke.\n * @returns {*} Returns `value`.\n * @example\n *\n * _([1, 2, 3])\n * .tap(function(array) {\n * // Mutate input array.\n * array.pop();\n * })\n * .reverse()\n * .value();\n * // => [2, 1]\n */\n function tap(value, interceptor) {\n interceptor(value);\n return value;\n }\n\n /**\n * This method is like `_.tap` except that it returns the result of `interceptor`.\n * The purpose of this method is to \"pass thru\" values replacing intermediate\n * results in a method chain sequence.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Seq\n * @param {*} value The value to provide to `interceptor`.\n * @param {Function} interceptor The function to invoke.\n * @returns {*} Returns the result of `interceptor`.\n * @example\n *\n * _(' abc ')\n * .chain()\n * .trim()\n * .thru(function(value) {\n * return [value];\n * })\n * .value();\n * // => ['abc']\n */\n function thru(value, interceptor) {\n return interceptor(value);\n }\n\n /**\n * This method is the wrapper version of `_.at`.\n *\n * @name at\n * @memberOf _\n * @since 1.0.0\n * @category Seq\n * @param {...(string|string[])} [paths] The property paths to pick.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] };\n *\n * _(object).at(['a[0].b.c', 'a[1]']).value();\n * // => [3, 4]\n */\n var wrapperAt = flatRest(function(paths) {\n var length = paths.length,\n start = length ? paths[0] : 0,\n value = this.__wrapped__,\n interceptor = function(object) { return baseAt(object, paths); };\n\n if (length > 1 || this.__actions__.length ||\n !(value instanceof LazyWrapper) || !isIndex(start)) {\n return this.thru(interceptor);\n }\n value = value.slice(start, +start + (length ? 1 : 0));\n value.__actions__.push({\n 'func': thru,\n 'args': [interceptor],\n 'thisArg': undefined\n });\n return new LodashWrapper(value, this.__chain__).thru(function(array) {\n if (length && !array.length) {\n array.push(undefined);\n }\n return array;\n });\n });\n\n /**\n * Creates a `lodash` wrapper instance with explicit method chain sequences enabled.\n *\n * @name chain\n * @memberOf _\n * @since 0.1.0\n * @category Seq\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36 },\n * { 'user': 'fred', 'age': 40 }\n * ];\n *\n * // A sequence without explicit chaining.\n * _(users).head();\n * // => { 'user': 'barney', 'age': 36 }\n *\n * // A sequence with explicit chaining.\n * _(users)\n * .chain()\n * .head()\n * .pick('user')\n * .value();\n * // => { 'user': 'barney' }\n */\n function wrapperChain() {\n return chain(this);\n }\n\n /**\n * Executes the chain sequence and returns the wrapped result.\n *\n * @name commit\n * @memberOf _\n * @since 3.2.0\n * @category Seq\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var array = [1, 2];\n * var wrapped = _(array).push(3);\n *\n * console.log(array);\n * // => [1, 2]\n *\n * wrapped = wrapped.commit();\n * console.log(array);\n * // => [1, 2, 3]\n *\n * wrapped.last();\n * // => 3\n *\n * console.log(array);\n * // => [1, 2, 3]\n */\n function wrapperCommit() {\n return new LodashWrapper(this.value(), this.__chain__);\n }\n\n /**\n * Gets the next value on a wrapped object following the\n * [iterator protocol](https://mdn.io/iteration_protocols#iterator).\n *\n * @name next\n * @memberOf _\n * @since 4.0.0\n * @category Seq\n * @returns {Object} Returns the next iterator value.\n * @example\n *\n * var wrapped = _([1, 2]);\n *\n * wrapped.next();\n * // => { 'done': false, 'value': 1 }\n *\n * wrapped.next();\n * // => { 'done': false, 'value': 2 }\n *\n * wrapped.next();\n * // => { 'done': true, 'value': undefined }\n */\n function wrapperNext() {\n if (this.__values__ === undefined) {\n this.__values__ = toArray(this.value());\n }\n var done = this.__index__ >= this.__values__.length,\n value = done ? undefined : this.__values__[this.__index__++];\n\n return { 'done': done, 'value': value };\n }\n\n /**\n * Enables the wrapper to be iterable.\n *\n * @name Symbol.iterator\n * @memberOf _\n * @since 4.0.0\n * @category Seq\n * @returns {Object} Returns the wrapper object.\n * @example\n *\n * var wrapped = _([1, 2]);\n *\n * wrapped[Symbol.iterator]() === wrapped;\n * // => true\n *\n * Array.from(wrapped);\n * // => [1, 2]\n */\n function wrapperToIterator() {\n return this;\n }\n\n /**\n * Creates a clone of the chain sequence planting `value` as the wrapped value.\n *\n * @name plant\n * @memberOf _\n * @since 3.2.0\n * @category Seq\n * @param {*} value The value to plant.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * var wrapped = _([1, 2]).map(square);\n * var other = wrapped.plant([3, 4]);\n *\n * other.value();\n * // => [9, 16]\n *\n * wrapped.value();\n * // => [1, 4]\n */\n function wrapperPlant(value) {\n var result,\n parent = this;\n\n while (parent instanceof baseLodash) {\n var clone = wrapperClone(parent);\n clone.__index__ = 0;\n clone.__values__ = undefined;\n if (result) {\n previous.__wrapped__ = clone;\n } else {\n result = clone;\n }\n var previous = clone;\n parent = parent.__wrapped__;\n }\n previous.__wrapped__ = value;\n return result;\n }\n\n /**\n * This method is the wrapper version of `_.reverse`.\n *\n * **Note:** This method mutates the wrapped array.\n *\n * @name reverse\n * @memberOf _\n * @since 0.1.0\n * @category Seq\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var array = [1, 2, 3];\n *\n * _(array).reverse().value()\n * // => [3, 2, 1]\n *\n * console.log(array);\n * // => [3, 2, 1]\n */\n function wrapperReverse() {\n var value = this.__wrapped__;\n if (value instanceof LazyWrapper) {\n var wrapped = value;\n if (this.__actions__.length) {\n wrapped = new LazyWrapper(this);\n }\n wrapped = wrapped.reverse();\n wrapped.__actions__.push({\n 'func': thru,\n 'args': [reverse],\n 'thisArg': undefined\n });\n return new LodashWrapper(wrapped, this.__chain__);\n }\n return this.thru(reverse);\n }\n\n /**\n * Executes the chain sequence to resolve the unwrapped value.\n *\n * @name value\n * @memberOf _\n * @since 0.1.0\n * @alias toJSON, valueOf\n * @category Seq\n * @returns {*} Returns the resolved unwrapped value.\n * @example\n *\n * _([1, 2, 3]).value();\n * // => [1, 2, 3]\n */\n function wrapperValue() {\n return baseWrapperValue(this.__wrapped__, this.__actions__);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The corresponding value of\n * each key is the number of times the key was returned by `iteratee`. The\n * iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * _.countBy([6.1, 4.2, 6.3], Math.floor);\n * // => { '4': 1, '6': 2 }\n *\n * // The `_.property` iteratee shorthand.\n * _.countBy(['one', 'two', 'three'], 'length');\n * // => { '3': 2, '5': 1 }\n */\n var countBy = createAggregator(function(result, value, key) {\n if (hasOwnProperty.call(result, key)) {\n ++result[key];\n } else {\n baseAssignValue(result, key, 1);\n }\n });\n\n /**\n * Checks if `predicate` returns truthy for **all** elements of `collection`.\n * Iteration is stopped once `predicate` returns falsey. The predicate is\n * invoked with three arguments: (value, index|key, collection).\n *\n * **Note:** This method returns `true` for\n * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because\n * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of\n * elements of empty collections.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {boolean} Returns `true` if all elements pass the predicate check,\n * else `false`.\n * @example\n *\n * _.every([true, 1, null, 'yes'], Boolean);\n * // => false\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': false },\n * { 'user': 'fred', 'age': 40, 'active': false }\n * ];\n *\n * // The `_.matches` iteratee shorthand.\n * _.every(users, { 'user': 'barney', 'active': false });\n * // => false\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.every(users, ['active', false]);\n * // => true\n *\n * // The `_.property` iteratee shorthand.\n * _.every(users, 'active');\n * // => false\n */\n function every(collection, predicate, guard) {\n var func = isArray(collection) ? arrayEvery : baseEvery;\n if (guard && isIterateeCall(collection, predicate, guard)) {\n predicate = undefined;\n }\n return func(collection, getIteratee(predicate, 3));\n }\n\n /**\n * Iterates over elements of `collection`, returning an array of all elements\n * `predicate` returns truthy for. The predicate is invoked with three\n * arguments: (value, index|key, collection).\n *\n * **Note:** Unlike `_.remove`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n * @see _.reject\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': true },\n * { 'user': 'fred', 'age': 40, 'active': false }\n * ];\n *\n * _.filter(users, function(o) { return !o.active; });\n * // => objects for ['fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.filter(users, { 'age': 36, 'active': true });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.filter(users, ['active', false]);\n * // => objects for ['fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.filter(users, 'active');\n * // => objects for ['barney']\n *\n * // Combining several predicates using `_.overEvery` or `_.overSome`.\n * _.filter(users, _.overSome([{ 'age': 36 }, ['age', 40]]));\n * // => objects for ['fred', 'barney']\n */\n function filter(collection, predicate) {\n var func = isArray(collection) ? arrayFilter : baseFilter;\n return func(collection, getIteratee(predicate, 3));\n }\n\n /**\n * Iterates over elements of `collection`, returning the first element\n * `predicate` returns truthy for. The predicate is invoked with three\n * arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {*} Returns the matched element, else `undefined`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': true },\n * { 'user': 'fred', 'age': 40, 'active': false },\n * { 'user': 'pebbles', 'age': 1, 'active': true }\n * ];\n *\n * _.find(users, function(o) { return o.age < 40; });\n * // => object for 'barney'\n *\n * // The `_.matches` iteratee shorthand.\n * _.find(users, { 'age': 1, 'active': true });\n * // => object for 'pebbles'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.find(users, ['active', false]);\n * // => object for 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.find(users, 'active');\n * // => object for 'barney'\n */\n var find = createFind(findIndex);\n\n /**\n * This method is like `_.find` except that it iterates over elements of\n * `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=collection.length-1] The index to search from.\n * @returns {*} Returns the matched element, else `undefined`.\n * @example\n *\n * _.findLast([1, 2, 3, 4], function(n) {\n * return n % 2 == 1;\n * });\n * // => 3\n */\n var findLast = createFind(findLastIndex);\n\n /**\n * Creates a flattened array of values by running each element in `collection`\n * thru `iteratee` and flattening the mapped results. The iteratee is invoked\n * with three arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * function duplicate(n) {\n * return [n, n];\n * }\n *\n * _.flatMap([1, 2], duplicate);\n * // => [1, 1, 2, 2]\n */\n function flatMap(collection, iteratee) {\n return baseFlatten(map(collection, iteratee), 1);\n }\n\n /**\n * This method is like `_.flatMap` except that it recursively flattens the\n * mapped results.\n *\n * @static\n * @memberOf _\n * @since 4.7.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * function duplicate(n) {\n * return [[[n, n]]];\n * }\n *\n * _.flatMapDeep([1, 2], duplicate);\n * // => [1, 1, 2, 2]\n */\n function flatMapDeep(collection, iteratee) {\n return baseFlatten(map(collection, iteratee), INFINITY);\n }\n\n /**\n * This method is like `_.flatMap` except that it recursively flattens the\n * mapped results up to `depth` times.\n *\n * @static\n * @memberOf _\n * @since 4.7.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {number} [depth=1] The maximum recursion depth.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * function duplicate(n) {\n * return [[[n, n]]];\n * }\n *\n * _.flatMapDepth([1, 2], duplicate, 2);\n * // => [[1, 1], [2, 2]]\n */\n function flatMapDepth(collection, iteratee, depth) {\n depth = depth === undefined ? 1 : toInteger(depth);\n return baseFlatten(map(collection, iteratee), depth);\n }\n\n /**\n * Iterates over elements of `collection` and invokes `iteratee` for each element.\n * The iteratee is invoked with three arguments: (value, index|key, collection).\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * **Note:** As with other \"Collections\" methods, objects with a \"length\"\n * property are iterated like arrays. To avoid this behavior use `_.forIn`\n * or `_.forOwn` for object iteration.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @alias each\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n * @see _.forEachRight\n * @example\n *\n * _.forEach([1, 2], function(value) {\n * console.log(value);\n * });\n * // => Logs `1` then `2`.\n *\n * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'a' then 'b' (iteration order is not guaranteed).\n */\n function forEach(collection, iteratee) {\n var func = isArray(collection) ? arrayEach : baseEach;\n return func(collection, getIteratee(iteratee, 3));\n }\n\n /**\n * This method is like `_.forEach` except that it iterates over elements of\n * `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @alias eachRight\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n * @see _.forEach\n * @example\n *\n * _.forEachRight([1, 2], function(value) {\n * console.log(value);\n * });\n * // => Logs `2` then `1`.\n */\n function forEachRight(collection, iteratee) {\n var func = isArray(collection) ? arrayEachRight : baseEachRight;\n return func(collection, getIteratee(iteratee, 3));\n }\n\n /**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The order of grouped values\n * is determined by the order they occur in `collection`. The corresponding\n * value of each key is an array of elements responsible for generating the\n * key. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * _.groupBy([6.1, 4.2, 6.3], Math.floor);\n * // => { '4': [4.2], '6': [6.1, 6.3] }\n *\n * // The `_.property` iteratee shorthand.\n * _.groupBy(['one', 'two', 'three'], 'length');\n * // => { '3': ['one', 'two'], '5': ['three'] }\n */\n var groupBy = createAggregator(function(result, value, key) {\n if (hasOwnProperty.call(result, key)) {\n result[key].push(value);\n } else {\n baseAssignValue(result, key, [value]);\n }\n });\n\n /**\n * Checks if `value` is in `collection`. If `collection` is a string, it's\n * checked for a substring of `value`, otherwise\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * is used for equality comparisons. If `fromIndex` is negative, it's used as\n * the offset from the end of `collection`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object|string} collection The collection to inspect.\n * @param {*} value The value to search for.\n * @param {number} [fromIndex=0] The index to search from.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`.\n * @returns {boolean} Returns `true` if `value` is found, else `false`.\n * @example\n *\n * _.includes([1, 2, 3], 1);\n * // => true\n *\n * _.includes([1, 2, 3], 1, 2);\n * // => false\n *\n * _.includes({ 'a': 1, 'b': 2 }, 1);\n * // => true\n *\n * _.includes('abcd', 'bc');\n * // => true\n */\n function includes(collection, value, fromIndex, guard) {\n collection = isArrayLike(collection) ? collection : values(collection);\n fromIndex = (fromIndex && !guard) ? toInteger(fromIndex) : 0;\n\n var length = collection.length;\n if (fromIndex < 0) {\n fromIndex = nativeMax(length + fromIndex, 0);\n }\n return isString(collection)\n ? (fromIndex <= length && collection.indexOf(value, fromIndex) > -1)\n : (!!length && baseIndexOf(collection, value, fromIndex) > -1);\n }\n\n /**\n * Invokes the method at `path` of each element in `collection`, returning\n * an array of the results of each invoked method. Any additional arguments\n * are provided to each invoked method. If `path` is a function, it's invoked\n * for, and `this` bound to, each element in `collection`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Array|Function|string} path The path of the method to invoke or\n * the function invoked per iteration.\n * @param {...*} [args] The arguments to invoke each method with.\n * @returns {Array} Returns the array of results.\n * @example\n *\n * _.invokeMap([[5, 1, 7], [3, 2, 1]], 'sort');\n * // => [[1, 5, 7], [1, 2, 3]]\n *\n * _.invokeMap([123, 456], String.prototype.split, '');\n * // => [['1', '2', '3'], ['4', '5', '6']]\n */\n var invokeMap = baseRest(function(collection, path, args) {\n var index = -1,\n isFunc = typeof path == 'function',\n result = isArrayLike(collection) ? Array(collection.length) : [];\n\n baseEach(collection, function(value) {\n result[++index] = isFunc ? apply(path, value, args) : baseInvoke(value, path, args);\n });\n return result;\n });\n\n /**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The corresponding value of\n * each key is the last element responsible for generating the key. The\n * iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * var array = [\n * { 'dir': 'left', 'code': 97 },\n * { 'dir': 'right', 'code': 100 }\n * ];\n *\n * _.keyBy(array, function(o) {\n * return String.fromCharCode(o.code);\n * });\n * // => { 'a': { 'dir': 'left', 'code': 97 }, 'd': { 'dir': 'right', 'code': 100 } }\n *\n * _.keyBy(array, 'dir');\n * // => { 'left': { 'dir': 'left', 'code': 97 }, 'right': { 'dir': 'right', 'code': 100 } }\n */\n var keyBy = createAggregator(function(result, value, key) {\n baseAssignValue(result, key, value);\n });\n\n /**\n * Creates an array of values by running each element in `collection` thru\n * `iteratee`. The iteratee is invoked with three arguments:\n * (value, index|key, collection).\n *\n * Many lodash methods are guarded to work as iteratees for methods like\n * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`.\n *\n * The guarded methods are:\n * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`,\n * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`,\n * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`,\n * `template`, `trim`, `trimEnd`, `trimStart`, and `words`\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * _.map([4, 8], square);\n * // => [16, 64]\n *\n * _.map({ 'a': 4, 'b': 8 }, square);\n * // => [16, 64] (iteration order is not guaranteed)\n *\n * var users = [\n * { 'user': 'barney' },\n * { 'user': 'fred' }\n * ];\n *\n * // The `_.property` iteratee shorthand.\n * _.map(users, 'user');\n * // => ['barney', 'fred']\n */\n function map(collection, iteratee) {\n var func = isArray(collection) ? arrayMap : baseMap;\n return func(collection, getIteratee(iteratee, 3));\n }\n\n /**\n * This method is like `_.sortBy` except that it allows specifying the sort\n * orders of the iteratees to sort by. If `orders` is unspecified, all values\n * are sorted in ascending order. Otherwise, specify an order of \"desc\" for\n * descending or \"asc\" for ascending sort order of corresponding values.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Array[]|Function[]|Object[]|string[]} [iteratees=[_.identity]]\n * The iteratees to sort by.\n * @param {string[]} [orders] The sort orders of `iteratees`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`.\n * @returns {Array} Returns the new sorted array.\n * @example\n *\n * var users = [\n * { 'user': 'fred', 'age': 48 },\n * { 'user': 'barney', 'age': 34 },\n * { 'user': 'fred', 'age': 40 },\n * { 'user': 'barney', 'age': 36 }\n * ];\n *\n * // Sort by `user` in ascending order and by `age` in descending order.\n * _.orderBy(users, ['user', 'age'], ['asc', 'desc']);\n * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]]\n */\n function orderBy(collection, iteratees, orders, guard) {\n if (collection == null) {\n return [];\n }\n if (!isArray(iteratees)) {\n iteratees = iteratees == null ? [] : [iteratees];\n }\n orders = guard ? undefined : orders;\n if (!isArray(orders)) {\n orders = orders == null ? [] : [orders];\n }\n return baseOrderBy(collection, iteratees, orders);\n }\n\n /**\n * Creates an array of elements split into two groups, the first of which\n * contains elements `predicate` returns truthy for, the second of which\n * contains elements `predicate` returns falsey for. The predicate is\n * invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the array of grouped elements.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': false },\n * { 'user': 'fred', 'age': 40, 'active': true },\n * { 'user': 'pebbles', 'age': 1, 'active': false }\n * ];\n *\n * _.partition(users, function(o) { return o.active; });\n * // => objects for [['fred'], ['barney', 'pebbles']]\n *\n * // The `_.matches` iteratee shorthand.\n * _.partition(users, { 'age': 1, 'active': false });\n * // => objects for [['pebbles'], ['barney', 'fred']]\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.partition(users, ['active', false]);\n * // => objects for [['barney', 'pebbles'], ['fred']]\n *\n * // The `_.property` iteratee shorthand.\n * _.partition(users, 'active');\n * // => objects for [['fred'], ['barney', 'pebbles']]\n */\n var partition = createAggregator(function(result, value, key) {\n result[key ? 0 : 1].push(value);\n }, function() { return [[], []]; });\n\n /**\n * Reduces `collection` to a value which is the accumulated result of running\n * each element in `collection` thru `iteratee`, where each successive\n * invocation is supplied the return value of the previous. If `accumulator`\n * is not given, the first element of `collection` is used as the initial\n * value. The iteratee is invoked with four arguments:\n * (accumulator, value, index|key, collection).\n *\n * Many lodash methods are guarded to work as iteratees for methods like\n * `_.reduce`, `_.reduceRight`, and `_.transform`.\n *\n * The guarded methods are:\n * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`,\n * and `sortBy`\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @returns {*} Returns the accumulated value.\n * @see _.reduceRight\n * @example\n *\n * _.reduce([1, 2], function(sum, n) {\n * return sum + n;\n * }, 0);\n * // => 3\n *\n * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {\n * (result[value] || (result[value] = [])).push(key);\n * return result;\n * }, {});\n * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed)\n */\n function reduce(collection, iteratee, accumulator) {\n var func = isArray(collection) ? arrayReduce : baseReduce,\n initAccum = arguments.length < 3;\n\n return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEach);\n }\n\n /**\n * This method is like `_.reduce` except that it iterates over elements of\n * `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @returns {*} Returns the accumulated value.\n * @see _.reduce\n * @example\n *\n * var array = [[0, 1], [2, 3], [4, 5]];\n *\n * _.reduceRight(array, function(flattened, other) {\n * return flattened.concat(other);\n * }, []);\n * // => [4, 5, 2, 3, 0, 1]\n */\n function reduceRight(collection, iteratee, accumulator) {\n var func = isArray(collection) ? arrayReduceRight : baseReduce,\n initAccum = arguments.length < 3;\n\n return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEachRight);\n }\n\n /**\n * The opposite of `_.filter`; this method returns the elements of `collection`\n * that `predicate` does **not** return truthy for.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n * @see _.filter\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': false },\n * { 'user': 'fred', 'age': 40, 'active': true }\n * ];\n *\n * _.reject(users, function(o) { return !o.active; });\n * // => objects for ['fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.reject(users, { 'age': 40, 'active': true });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.reject(users, ['active', false]);\n * // => objects for ['fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.reject(users, 'active');\n * // => objects for ['barney']\n */\n function reject(collection, predicate) {\n var func = isArray(collection) ? arrayFilter : baseFilter;\n return func(collection, negate(getIteratee(predicate, 3)));\n }\n\n /**\n * Gets a random element from `collection`.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to sample.\n * @returns {*} Returns the random element.\n * @example\n *\n * _.sample([1, 2, 3, 4]);\n * // => 2\n */\n function sample(collection) {\n var func = isArray(collection) ? arraySample : baseSample;\n return func(collection);\n }\n\n /**\n * Gets `n` random elements at unique keys from `collection` up to the\n * size of `collection`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to sample.\n * @param {number} [n=1] The number of elements to sample.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the random elements.\n * @example\n *\n * _.sampleSize([1, 2, 3], 2);\n * // => [3, 1]\n *\n * _.sampleSize([1, 2, 3], 4);\n * // => [2, 3, 1]\n */\n function sampleSize(collection, n, guard) {\n if ((guard ? isIterateeCall(collection, n, guard) : n === undefined)) {\n n = 1;\n } else {\n n = toInteger(n);\n }\n var func = isArray(collection) ? arraySampleSize : baseSampleSize;\n return func(collection, n);\n }\n\n /**\n * Creates an array of shuffled values, using a version of the\n * [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher-Yates_shuffle).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to shuffle.\n * @returns {Array} Returns the new shuffled array.\n * @example\n *\n * _.shuffle([1, 2, 3, 4]);\n * // => [4, 1, 3, 2]\n */\n function shuffle(collection) {\n var func = isArray(collection) ? arrayShuffle : baseShuffle;\n return func(collection);\n }\n\n /**\n * Gets the size of `collection` by returning its length for array-like\n * values or the number of own enumerable string keyed properties for objects.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object|string} collection The collection to inspect.\n * @returns {number} Returns the collection size.\n * @example\n *\n * _.size([1, 2, 3]);\n * // => 3\n *\n * _.size({ 'a': 1, 'b': 2 });\n * // => 2\n *\n * _.size('pebbles');\n * // => 7\n */\n function size(collection) {\n if (collection == null) {\n return 0;\n }\n if (isArrayLike(collection)) {\n return isString(collection) ? stringSize(collection) : collection.length;\n }\n var tag = getTag(collection);\n if (tag == mapTag || tag == setTag) {\n return collection.size;\n }\n return baseKeys(collection).length;\n }\n\n /**\n * Checks if `predicate` returns truthy for **any** element of `collection`.\n * Iteration is stopped once `predicate` returns truthy. The predicate is\n * invoked with three arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n * @example\n *\n * _.some([null, 0, 'yes', false], Boolean);\n * // => true\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false }\n * ];\n *\n * // The `_.matches` iteratee shorthand.\n * _.some(users, { 'user': 'barney', 'active': false });\n * // => false\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.some(users, ['active', false]);\n * // => true\n *\n * // The `_.property` iteratee shorthand.\n * _.some(users, 'active');\n * // => true\n */\n function some(collection, predicate, guard) {\n var func = isArray(collection) ? arraySome : baseSome;\n if (guard && isIterateeCall(collection, predicate, guard)) {\n predicate = undefined;\n }\n return func(collection, getIteratee(predicate, 3));\n }\n\n /**\n * Creates an array of elements, sorted in ascending order by the results of\n * running each element in a collection thru each iteratee. This method\n * performs a stable sort, that is, it preserves the original sort order of\n * equal elements. The iteratees are invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {...(Function|Function[])} [iteratees=[_.identity]]\n * The iteratees to sort by.\n * @returns {Array} Returns the new sorted array.\n * @example\n *\n * var users = [\n * { 'user': 'fred', 'age': 48 },\n * { 'user': 'barney', 'age': 36 },\n * { 'user': 'fred', 'age': 30 },\n * { 'user': 'barney', 'age': 34 }\n * ];\n *\n * _.sortBy(users, [function(o) { return o.user; }]);\n * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 30]]\n *\n * _.sortBy(users, ['user', 'age']);\n * // => objects for [['barney', 34], ['barney', 36], ['fred', 30], ['fred', 48]]\n */\n var sortBy = baseRest(function(collection, iteratees) {\n if (collection == null) {\n return [];\n }\n var length = iteratees.length;\n if (length > 1 && isIterateeCall(collection, iteratees[0], iteratees[1])) {\n iteratees = [];\n } else if (length > 2 && isIterateeCall(iteratees[0], iteratees[1], iteratees[2])) {\n iteratees = [iteratees[0]];\n }\n return baseOrderBy(collection, baseFlatten(iteratees, 1), []);\n });\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\n var now = ctxNow || function() {\n return root.Date.now();\n };\n\n /*------------------------------------------------------------------------*/\n\n /**\n * The opposite of `_.before`; this method creates a function that invokes\n * `func` once it's called `n` or more times.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {number} n The number of calls before `func` is invoked.\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new restricted function.\n * @example\n *\n * var saves = ['profile', 'settings'];\n *\n * var done = _.after(saves.length, function() {\n * console.log('done saving!');\n * });\n *\n * _.forEach(saves, function(type) {\n * asyncSave({ 'type': type, 'complete': done });\n * });\n * // => Logs 'done saving!' after the two async saves have completed.\n */\n function after(n, func) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n n = toInteger(n);\n return function() {\n if (--n < 1) {\n return func.apply(this, arguments);\n }\n };\n }\n\n /**\n * Creates a function that invokes `func`, with up to `n` arguments,\n * ignoring any additional arguments.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} func The function to cap arguments for.\n * @param {number} [n=func.length] The arity cap.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the new capped function.\n * @example\n *\n * _.map(['6', '8', '10'], _.ary(parseInt, 1));\n * // => [6, 8, 10]\n */\n function ary(func, n, guard) {\n n = guard ? undefined : n;\n n = (func && n == null) ? func.length : n;\n return createWrap(func, WRAP_ARY_FLAG, undefined, undefined, undefined, undefined, n);\n }\n\n /**\n * Creates a function that invokes `func`, with the `this` binding and arguments\n * of the created function, while it's called less than `n` times. Subsequent\n * calls to the created function return the result of the last `func` invocation.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {number} n The number of calls at which `func` is no longer invoked.\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new restricted function.\n * @example\n *\n * jQuery(element).on('click', _.before(5, addContactToList));\n * // => Allows adding up to 4 contacts to the list.\n */\n function before(n, func) {\n var result;\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n n = toInteger(n);\n return function() {\n if (--n > 0) {\n result = func.apply(this, arguments);\n }\n if (n <= 1) {\n func = undefined;\n }\n return result;\n };\n }\n\n /**\n * Creates a function that invokes `func` with the `this` binding of `thisArg`\n * and `partials` prepended to the arguments it receives.\n *\n * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds,\n * may be used as a placeholder for partially applied arguments.\n *\n * **Note:** Unlike native `Function#bind`, this method doesn't set the \"length\"\n * property of bound functions.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to bind.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new bound function.\n * @example\n *\n * function greet(greeting, punctuation) {\n * return greeting + ' ' + this.user + punctuation;\n * }\n *\n * var object = { 'user': 'fred' };\n *\n * var bound = _.bind(greet, object, 'hi');\n * bound('!');\n * // => 'hi fred!'\n *\n * // Bound with placeholders.\n * var bound = _.bind(greet, object, _, '!');\n * bound('hi');\n * // => 'hi fred!'\n */\n var bind = baseRest(function(func, thisArg, partials) {\n var bitmask = WRAP_BIND_FLAG;\n if (partials.length) {\n var holders = replaceHolders(partials, getHolder(bind));\n bitmask |= WRAP_PARTIAL_FLAG;\n }\n return createWrap(func, bitmask, thisArg, partials, holders);\n });\n\n /**\n * Creates a function that invokes the method at `object[key]` with `partials`\n * prepended to the arguments it receives.\n *\n * This method differs from `_.bind` by allowing bound functions to reference\n * methods that may be redefined or don't yet exist. See\n * [Peter Michaux's article](http://peter.michaux.ca/articles/lazy-function-definition-pattern)\n * for more details.\n *\n * The `_.bindKey.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for partially applied arguments.\n *\n * @static\n * @memberOf _\n * @since 0.10.0\n * @category Function\n * @param {Object} object The object to invoke the method on.\n * @param {string} key The key of the method.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new bound function.\n * @example\n *\n * var object = {\n * 'user': 'fred',\n * 'greet': function(greeting, punctuation) {\n * return greeting + ' ' + this.user + punctuation;\n * }\n * };\n *\n * var bound = _.bindKey(object, 'greet', 'hi');\n * bound('!');\n * // => 'hi fred!'\n *\n * object.greet = function(greeting, punctuation) {\n * return greeting + 'ya ' + this.user + punctuation;\n * };\n *\n * bound('!');\n * // => 'hiya fred!'\n *\n * // Bound with placeholders.\n * var bound = _.bindKey(object, 'greet', _, '!');\n * bound('hi');\n * // => 'hiya fred!'\n */\n var bindKey = baseRest(function(object, key, partials) {\n var bitmask = WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG;\n if (partials.length) {\n var holders = replaceHolders(partials, getHolder(bindKey));\n bitmask |= WRAP_PARTIAL_FLAG;\n }\n return createWrap(key, bitmask, object, partials, holders);\n });\n\n /**\n * Creates a function that accepts arguments of `func` and either invokes\n * `func` returning its result, if at least `arity` number of arguments have\n * been provided, or returns a function that accepts the remaining `func`\n * arguments, and so on. The arity of `func` may be specified if `func.length`\n * is not sufficient.\n *\n * The `_.curry.placeholder` value, which defaults to `_` in monolithic builds,\n * may be used as a placeholder for provided arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of curried functions.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Function\n * @param {Function} func The function to curry.\n * @param {number} [arity=func.length] The arity of `func`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the new curried function.\n * @example\n *\n * var abc = function(a, b, c) {\n * return [a, b, c];\n * };\n *\n * var curried = _.curry(abc);\n *\n * curried(1)(2)(3);\n * // => [1, 2, 3]\n *\n * curried(1, 2)(3);\n * // => [1, 2, 3]\n *\n * curried(1, 2, 3);\n * // => [1, 2, 3]\n *\n * // Curried with placeholders.\n * curried(1)(_, 3)(2);\n * // => [1, 2, 3]\n */\n function curry(func, arity, guard) {\n arity = guard ? undefined : arity;\n var result = createWrap(func, WRAP_CURRY_FLAG, undefined, undefined, undefined, undefined, undefined, arity);\n result.placeholder = curry.placeholder;\n return result;\n }\n\n /**\n * This method is like `_.curry` except that arguments are applied to `func`\n * in the manner of `_.partialRight` instead of `_.partial`.\n *\n * The `_.curryRight.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for provided arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of curried functions.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} func The function to curry.\n * @param {number} [arity=func.length] The arity of `func`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the new curried function.\n * @example\n *\n * var abc = function(a, b, c) {\n * return [a, b, c];\n * };\n *\n * var curried = _.curryRight(abc);\n *\n * curried(3)(2)(1);\n * // => [1, 2, 3]\n *\n * curried(2, 3)(1);\n * // => [1, 2, 3]\n *\n * curried(1, 2, 3);\n * // => [1, 2, 3]\n *\n * // Curried with placeholders.\n * curried(3)(1, _)(2);\n * // => [1, 2, 3]\n */\n function curryRight(func, arity, guard) {\n arity = guard ? undefined : arity;\n var result = createWrap(func, WRAP_CURRY_RIGHT_FLAG, undefined, undefined, undefined, undefined, undefined, arity);\n result.placeholder = curryRight.placeholder;\n return result;\n }\n\n /**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\n function debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n timeWaiting = wait - timeSinceLastCall;\n\n return maxing\n ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)\n : timeWaiting;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n clearTimeout(timerId);\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n }\n\n /**\n * Defers invoking the `func` until the current call stack has cleared. Any\n * additional arguments are provided to `func` when it's invoked.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to defer.\n * @param {...*} [args] The arguments to invoke `func` with.\n * @returns {number} Returns the timer id.\n * @example\n *\n * _.defer(function(text) {\n * console.log(text);\n * }, 'deferred');\n * // => Logs 'deferred' after one millisecond.\n */\n var defer = baseRest(function(func, args) {\n return baseDelay(func, 1, args);\n });\n\n /**\n * Invokes `func` after `wait` milliseconds. Any additional arguments are\n * provided to `func` when it's invoked.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to delay.\n * @param {number} wait The number of milliseconds to delay invocation.\n * @param {...*} [args] The arguments to invoke `func` with.\n * @returns {number} Returns the timer id.\n * @example\n *\n * _.delay(function(text) {\n * console.log(text);\n * }, 1000, 'later');\n * // => Logs 'later' after one second.\n */\n var delay = baseRest(function(func, wait, args) {\n return baseDelay(func, toNumber(wait) || 0, args);\n });\n\n /**\n * Creates a function that invokes `func` with arguments reversed.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Function\n * @param {Function} func The function to flip arguments for.\n * @returns {Function} Returns the new flipped function.\n * @example\n *\n * var flipped = _.flip(function() {\n * return _.toArray(arguments);\n * });\n *\n * flipped('a', 'b', 'c', 'd');\n * // => ['d', 'c', 'b', 'a']\n */\n function flip(func) {\n return createWrap(func, WRAP_FLIP_FLAG);\n }\n\n /**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\n function memoize(func, resolver) {\n if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result) || cache;\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n }\n\n // Expose `MapCache`.\n memoize.Cache = MapCache;\n\n /**\n * Creates a function that negates the result of the predicate `func`. The\n * `func` predicate is invoked with the `this` binding and arguments of the\n * created function.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} predicate The predicate to negate.\n * @returns {Function} Returns the new negated function.\n * @example\n *\n * function isEven(n) {\n * return n % 2 == 0;\n * }\n *\n * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven));\n * // => [1, 3, 5]\n */\n function negate(predicate) {\n if (typeof predicate != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n return function() {\n var args = arguments;\n switch (args.length) {\n case 0: return !predicate.call(this);\n case 1: return !predicate.call(this, args[0]);\n case 2: return !predicate.call(this, args[0], args[1]);\n case 3: return !predicate.call(this, args[0], args[1], args[2]);\n }\n return !predicate.apply(this, args);\n };\n }\n\n /**\n * Creates a function that is restricted to invoking `func` once. Repeat calls\n * to the function return the value of the first invocation. The `func` is\n * invoked with the `this` binding and arguments of the created function.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new restricted function.\n * @example\n *\n * var initialize = _.once(createApplication);\n * initialize();\n * initialize();\n * // => `createApplication` is invoked once\n */\n function once(func) {\n return before(2, func);\n }\n\n /**\n * Creates a function that invokes `func` with its arguments transformed.\n *\n * @static\n * @since 4.0.0\n * @memberOf _\n * @category Function\n * @param {Function} func The function to wrap.\n * @param {...(Function|Function[])} [transforms=[_.identity]]\n * The argument transforms.\n * @returns {Function} Returns the new function.\n * @example\n *\n * function doubled(n) {\n * return n * 2;\n * }\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * var func = _.overArgs(function(x, y) {\n * return [x, y];\n * }, [square, doubled]);\n *\n * func(9, 3);\n * // => [81, 6]\n *\n * func(10, 5);\n * // => [100, 10]\n */\n var overArgs = castRest(function(func, transforms) {\n transforms = (transforms.length == 1 && isArray(transforms[0]))\n ? arrayMap(transforms[0], baseUnary(getIteratee()))\n : arrayMap(baseFlatten(transforms, 1), baseUnary(getIteratee()));\n\n var funcsLength = transforms.length;\n return baseRest(function(args) {\n var index = -1,\n length = nativeMin(args.length, funcsLength);\n\n while (++index < length) {\n args[index] = transforms[index].call(this, args[index]);\n }\n return apply(func, this, args);\n });\n });\n\n /**\n * Creates a function that invokes `func` with `partials` prepended to the\n * arguments it receives. This method is like `_.bind` except it does **not**\n * alter the `this` binding.\n *\n * The `_.partial.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for partially applied arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of partially\n * applied functions.\n *\n * @static\n * @memberOf _\n * @since 0.2.0\n * @category Function\n * @param {Function} func The function to partially apply arguments to.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new partially applied function.\n * @example\n *\n * function greet(greeting, name) {\n * return greeting + ' ' + name;\n * }\n *\n * var sayHelloTo = _.partial(greet, 'hello');\n * sayHelloTo('fred');\n * // => 'hello fred'\n *\n * // Partially applied with placeholders.\n * var greetFred = _.partial(greet, _, 'fred');\n * greetFred('hi');\n * // => 'hi fred'\n */\n var partial = baseRest(function(func, partials) {\n var holders = replaceHolders(partials, getHolder(partial));\n return createWrap(func, WRAP_PARTIAL_FLAG, undefined, partials, holders);\n });\n\n /**\n * This method is like `_.partial` except that partially applied arguments\n * are appended to the arguments it receives.\n *\n * The `_.partialRight.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for partially applied arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of partially\n * applied functions.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Function\n * @param {Function} func The function to partially apply arguments to.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new partially applied function.\n * @example\n *\n * function greet(greeting, name) {\n * return greeting + ' ' + name;\n * }\n *\n * var greetFred = _.partialRight(greet, 'fred');\n * greetFred('hi');\n * // => 'hi fred'\n *\n * // Partially applied with placeholders.\n * var sayHelloTo = _.partialRight(greet, 'hello', _);\n * sayHelloTo('fred');\n * // => 'hello fred'\n */\n var partialRight = baseRest(function(func, partials) {\n var holders = replaceHolders(partials, getHolder(partialRight));\n return createWrap(func, WRAP_PARTIAL_RIGHT_FLAG, undefined, partials, holders);\n });\n\n /**\n * Creates a function that invokes `func` with arguments arranged according\n * to the specified `indexes` where the argument value at the first index is\n * provided as the first argument, the argument value at the second index is\n * provided as the second argument, and so on.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} func The function to rearrange arguments for.\n * @param {...(number|number[])} indexes The arranged argument indexes.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var rearged = _.rearg(function(a, b, c) {\n * return [a, b, c];\n * }, [2, 0, 1]);\n *\n * rearged('b', 'c', 'a')\n * // => ['a', 'b', 'c']\n */\n var rearg = flatRest(function(func, indexes) {\n return createWrap(func, WRAP_REARG_FLAG, undefined, undefined, undefined, indexes);\n });\n\n /**\n * Creates a function that invokes `func` with the `this` binding of the\n * created function and arguments from `start` and beyond provided as\n * an array.\n *\n * **Note:** This method is based on the\n * [rest parameter](https://mdn.io/rest_parameters).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Function\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var say = _.rest(function(what, names) {\n * return what + ' ' + _.initial(names).join(', ') +\n * (_.size(names) > 1 ? ', & ' : '') + _.last(names);\n * });\n *\n * say('hello', 'fred', 'barney', 'pebbles');\n * // => 'hello fred, barney, & pebbles'\n */\n function rest(func, start) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n start = start === undefined ? start : toInteger(start);\n return baseRest(func, start);\n }\n\n /**\n * Creates a function that invokes `func` with the `this` binding of the\n * create function and an array of arguments much like\n * [`Function#apply`](http://www.ecma-international.org/ecma-262/7.0/#sec-function.prototype.apply).\n *\n * **Note:** This method is based on the\n * [spread operator](https://mdn.io/spread_operator).\n *\n * @static\n * @memberOf _\n * @since 3.2.0\n * @category Function\n * @param {Function} func The function to spread arguments over.\n * @param {number} [start=0] The start position of the spread.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var say = _.spread(function(who, what) {\n * return who + ' says ' + what;\n * });\n *\n * say(['fred', 'hello']);\n * // => 'fred says hello'\n *\n * var numbers = Promise.all([\n * Promise.resolve(40),\n * Promise.resolve(36)\n * ]);\n *\n * numbers.then(_.spread(function(x, y) {\n * return x + y;\n * }));\n * // => a Promise of 76\n */\n function spread(func, start) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n start = start == null ? 0 : nativeMax(toInteger(start), 0);\n return baseRest(function(args) {\n var array = args[start],\n otherArgs = castSlice(args, 0, start);\n\n if (array) {\n arrayPush(otherArgs, array);\n }\n return apply(func, this, otherArgs);\n });\n }\n\n /**\n * Creates a throttled function that only invokes `func` at most once per\n * every `wait` milliseconds. The throttled function comes with a `cancel`\n * method to cancel delayed `func` invocations and a `flush` method to\n * immediately invoke them. Provide `options` to indicate whether `func`\n * should be invoked on the leading and/or trailing edge of the `wait`\n * timeout. The `func` is invoked with the last arguments provided to the\n * throttled function. Subsequent calls to the throttled function return the\n * result of the last `func` invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the throttled function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.throttle` and `_.debounce`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to throttle.\n * @param {number} [wait=0] The number of milliseconds to throttle invocations to.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=true]\n * Specify invoking on the leading edge of the timeout.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new throttled function.\n * @example\n *\n * // Avoid excessively updating the position while scrolling.\n * jQuery(window).on('scroll', _.throttle(updatePosition, 100));\n *\n * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes.\n * var throttled = _.throttle(renewToken, 300000, { 'trailing': false });\n * jQuery(element).on('click', throttled);\n *\n * // Cancel the trailing throttled invocation.\n * jQuery(window).on('popstate', throttled.cancel);\n */\n function throttle(func, wait, options) {\n var leading = true,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n if (isObject(options)) {\n leading = 'leading' in options ? !!options.leading : leading;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n return debounce(func, wait, {\n 'leading': leading,\n 'maxWait': wait,\n 'trailing': trailing\n });\n }\n\n /**\n * Creates a function that accepts up to one argument, ignoring any\n * additional arguments.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Function\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n * @example\n *\n * _.map(['6', '8', '10'], _.unary(parseInt));\n * // => [6, 8, 10]\n */\n function unary(func) {\n return ary(func, 1);\n }\n\n /**\n * Creates a function that provides `value` to `wrapper` as its first\n * argument. Any additional arguments provided to the function are appended\n * to those provided to the `wrapper`. The wrapper is invoked with the `this`\n * binding of the created function.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {*} value The value to wrap.\n * @param {Function} [wrapper=identity] The wrapper function.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var p = _.wrap(_.escape, function(func, text) {\n * return '

' + func(text) + '

';\n * });\n *\n * p('fred, barney, & pebbles');\n * // => '

fred, barney, & pebbles

'\n */\n function wrap(value, wrapper) {\n return partial(castFunction(wrapper), value);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Casts `value` as an array if it's not one.\n *\n * @static\n * @memberOf _\n * @since 4.4.0\n * @category Lang\n * @param {*} value The value to inspect.\n * @returns {Array} Returns the cast array.\n * @example\n *\n * _.castArray(1);\n * // => [1]\n *\n * _.castArray({ 'a': 1 });\n * // => [{ 'a': 1 }]\n *\n * _.castArray('abc');\n * // => ['abc']\n *\n * _.castArray(null);\n * // => [null]\n *\n * _.castArray(undefined);\n * // => [undefined]\n *\n * _.castArray();\n * // => []\n *\n * var array = [1, 2, 3];\n * console.log(_.castArray(array) === array);\n * // => true\n */\n function castArray() {\n if (!arguments.length) {\n return [];\n }\n var value = arguments[0];\n return isArray(value) ? value : [value];\n }\n\n /**\n * Creates a shallow clone of `value`.\n *\n * **Note:** This method is loosely based on the\n * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm)\n * and supports cloning arrays, array buffers, booleans, date objects, maps,\n * numbers, `Object` objects, regexes, sets, strings, symbols, and typed\n * arrays. The own enumerable properties of `arguments` objects are cloned\n * as plain objects. An empty object is returned for uncloneable values such\n * as error objects, functions, DOM nodes, and WeakMaps.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to clone.\n * @returns {*} Returns the cloned value.\n * @see _.cloneDeep\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var shallow = _.clone(objects);\n * console.log(shallow[0] === objects[0]);\n * // => true\n */\n function clone(value) {\n return baseClone(value, CLONE_SYMBOLS_FLAG);\n }\n\n /**\n * This method is like `_.clone` except that it accepts `customizer` which\n * is invoked to produce the cloned value. If `customizer` returns `undefined`,\n * cloning is handled by the method instead. The `customizer` is invoked with\n * up to four arguments; (value [, index|key, object, stack]).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to clone.\n * @param {Function} [customizer] The function to customize cloning.\n * @returns {*} Returns the cloned value.\n * @see _.cloneDeepWith\n * @example\n *\n * function customizer(value) {\n * if (_.isElement(value)) {\n * return value.cloneNode(false);\n * }\n * }\n *\n * var el = _.cloneWith(document.body, customizer);\n *\n * console.log(el === document.body);\n * // => false\n * console.log(el.nodeName);\n * // => 'BODY'\n * console.log(el.childNodes.length);\n * // => 0\n */\n function cloneWith(value, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return baseClone(value, CLONE_SYMBOLS_FLAG, customizer);\n }\n\n /**\n * This method is like `_.clone` except that it recursively clones `value`.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Lang\n * @param {*} value The value to recursively clone.\n * @returns {*} Returns the deep cloned value.\n * @see _.clone\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var deep = _.cloneDeep(objects);\n * console.log(deep[0] === objects[0]);\n * // => false\n */\n function cloneDeep(value) {\n return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);\n }\n\n /**\n * This method is like `_.cloneWith` except that it recursively clones `value`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to recursively clone.\n * @param {Function} [customizer] The function to customize cloning.\n * @returns {*} Returns the deep cloned value.\n * @see _.cloneWith\n * @example\n *\n * function customizer(value) {\n * if (_.isElement(value)) {\n * return value.cloneNode(true);\n * }\n * }\n *\n * var el = _.cloneDeepWith(document.body, customizer);\n *\n * console.log(el === document.body);\n * // => false\n * console.log(el.nodeName);\n * // => 'BODY'\n * console.log(el.childNodes.length);\n * // => 20\n */\n function cloneDeepWith(value, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG, customizer);\n }\n\n /**\n * Checks if `object` conforms to `source` by invoking the predicate\n * properties of `source` with the corresponding property values of `object`.\n *\n * **Note:** This method is equivalent to `_.conforms` when `source` is\n * partially applied.\n *\n * @static\n * @memberOf _\n * @since 4.14.0\n * @category Lang\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property predicates to conform to.\n * @returns {boolean} Returns `true` if `object` conforms, else `false`.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n *\n * _.conformsTo(object, { 'b': function(n) { return n > 1; } });\n * // => true\n *\n * _.conformsTo(object, { 'b': function(n) { return n > 2; } });\n * // => false\n */\n function conformsTo(object, source) {\n return source == null || baseConformsTo(object, source, keys(source));\n }\n\n /**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\n function eq(value, other) {\n return value === other || (value !== value && other !== other);\n }\n\n /**\n * Checks if `value` is greater than `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is greater than `other`,\n * else `false`.\n * @see _.lt\n * @example\n *\n * _.gt(3, 1);\n * // => true\n *\n * _.gt(3, 3);\n * // => false\n *\n * _.gt(1, 3);\n * // => false\n */\n var gt = createRelationalOperation(baseGt);\n\n /**\n * Checks if `value` is greater than or equal to `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is greater than or equal to\n * `other`, else `false`.\n * @see _.lte\n * @example\n *\n * _.gte(3, 1);\n * // => true\n *\n * _.gte(3, 3);\n * // => true\n *\n * _.gte(1, 3);\n * // => false\n */\n var gte = createRelationalOperation(function(value, other) {\n return value >= other;\n });\n\n /**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\n var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n };\n\n /**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\n var isArray = Array.isArray;\n\n /**\n * Checks if `value` is classified as an `ArrayBuffer` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`.\n * @example\n *\n * _.isArrayBuffer(new ArrayBuffer(2));\n * // => true\n *\n * _.isArrayBuffer(new Array(2));\n * // => false\n */\n var isArrayBuffer = nodeIsArrayBuffer ? baseUnary(nodeIsArrayBuffer) : baseIsArrayBuffer;\n\n /**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\n function isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n }\n\n /**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\n function isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n }\n\n /**\n * Checks if `value` is classified as a boolean primitive or object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a boolean, else `false`.\n * @example\n *\n * _.isBoolean(false);\n * // => true\n *\n * _.isBoolean(null);\n * // => false\n */\n function isBoolean(value) {\n return value === true || value === false ||\n (isObjectLike(value) && baseGetTag(value) == boolTag);\n }\n\n /**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\n var isBuffer = nativeIsBuffer || stubFalse;\n\n /**\n * Checks if `value` is classified as a `Date` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a date object, else `false`.\n * @example\n *\n * _.isDate(new Date);\n * // => true\n *\n * _.isDate('Mon April 23 2012');\n * // => false\n */\n var isDate = nodeIsDate ? baseUnary(nodeIsDate) : baseIsDate;\n\n /**\n * Checks if `value` is likely a DOM element.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a DOM element, else `false`.\n * @example\n *\n * _.isElement(document.body);\n * // => true\n *\n * _.isElement('');\n * // => false\n */\n function isElement(value) {\n return isObjectLike(value) && value.nodeType === 1 && !isPlainObject(value);\n }\n\n /**\n * Checks if `value` is an empty object, collection, map, or set.\n *\n * Objects are considered empty if they have no own enumerable string keyed\n * properties.\n *\n * Array-like values such as `arguments` objects, arrays, buffers, strings, or\n * jQuery-like collections are considered empty if they have a `length` of `0`.\n * Similarly, maps and sets are considered empty if they have a `size` of `0`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is empty, else `false`.\n * @example\n *\n * _.isEmpty(null);\n * // => true\n *\n * _.isEmpty(true);\n * // => true\n *\n * _.isEmpty(1);\n * // => true\n *\n * _.isEmpty([1, 2, 3]);\n * // => false\n *\n * _.isEmpty({ 'a': 1 });\n * // => false\n */\n function isEmpty(value) {\n if (value == null) {\n return true;\n }\n if (isArrayLike(value) &&\n (isArray(value) || typeof value == 'string' || typeof value.splice == 'function' ||\n isBuffer(value) || isTypedArray(value) || isArguments(value))) {\n return !value.length;\n }\n var tag = getTag(value);\n if (tag == mapTag || tag == setTag) {\n return !value.size;\n }\n if (isPrototype(value)) {\n return !baseKeys(value).length;\n }\n for (var key in value) {\n if (hasOwnProperty.call(value, key)) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\n function isEqual(value, other) {\n return baseIsEqual(value, other);\n }\n\n /**\n * This method is like `_.isEqual` except that it accepts `customizer` which\n * is invoked to compare values. If `customizer` returns `undefined`, comparisons\n * are handled by the method instead. The `customizer` is invoked with up to\n * six arguments: (objValue, othValue [, index|key, object, other, stack]).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * function isGreeting(value) {\n * return /^h(?:i|ello)$/.test(value);\n * }\n *\n * function customizer(objValue, othValue) {\n * if (isGreeting(objValue) && isGreeting(othValue)) {\n * return true;\n * }\n * }\n *\n * var array = ['hello', 'goodbye'];\n * var other = ['hi', 'goodbye'];\n *\n * _.isEqualWith(array, other, customizer);\n * // => true\n */\n function isEqualWith(value, other, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n var result = customizer ? customizer(value, other) : undefined;\n return result === undefined ? baseIsEqual(value, other, undefined, customizer) : !!result;\n }\n\n /**\n * Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`,\n * `SyntaxError`, `TypeError`, or `URIError` object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an error object, else `false`.\n * @example\n *\n * _.isError(new Error);\n * // => true\n *\n * _.isError(Error);\n * // => false\n */\n function isError(value) {\n if (!isObjectLike(value)) {\n return false;\n }\n var tag = baseGetTag(value);\n return tag == errorTag || tag == domExcTag ||\n (typeof value.message == 'string' && typeof value.name == 'string' && !isPlainObject(value));\n }\n\n /**\n * Checks if `value` is a finite primitive number.\n *\n * **Note:** This method is based on\n * [`Number.isFinite`](https://mdn.io/Number/isFinite).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a finite number, else `false`.\n * @example\n *\n * _.isFinite(3);\n * // => true\n *\n * _.isFinite(Number.MIN_VALUE);\n * // => true\n *\n * _.isFinite(Infinity);\n * // => false\n *\n * _.isFinite('3');\n * // => false\n */\n function isFinite(value) {\n return typeof value == 'number' && nativeIsFinite(value);\n }\n\n /**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\n function isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n }\n\n /**\n * Checks if `value` is an integer.\n *\n * **Note:** This method is based on\n * [`Number.isInteger`](https://mdn.io/Number/isInteger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an integer, else `false`.\n * @example\n *\n * _.isInteger(3);\n * // => true\n *\n * _.isInteger(Number.MIN_VALUE);\n * // => false\n *\n * _.isInteger(Infinity);\n * // => false\n *\n * _.isInteger('3');\n * // => false\n */\n function isInteger(value) {\n return typeof value == 'number' && value == toInteger(value);\n }\n\n /**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\n function isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n }\n\n /**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\n function isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n }\n\n /**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\n function isObjectLike(value) {\n return value != null && typeof value == 'object';\n }\n\n /**\n * Checks if `value` is classified as a `Map` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n * @example\n *\n * _.isMap(new Map);\n * // => true\n *\n * _.isMap(new WeakMap);\n * // => false\n */\n var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap;\n\n /**\n * Performs a partial deep comparison between `object` and `source` to\n * determine if `object` contains equivalent property values.\n *\n * **Note:** This method is equivalent to `_.matches` when `source` is\n * partially applied.\n *\n * Partial comparisons will match empty array and empty object `source`\n * values against any array or object value, respectively. See `_.isEqual`\n * for a list of supported value comparisons.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n *\n * _.isMatch(object, { 'b': 2 });\n * // => true\n *\n * _.isMatch(object, { 'b': 1 });\n * // => false\n */\n function isMatch(object, source) {\n return object === source || baseIsMatch(object, source, getMatchData(source));\n }\n\n /**\n * This method is like `_.isMatch` except that it accepts `customizer` which\n * is invoked to compare values. If `customizer` returns `undefined`, comparisons\n * are handled by the method instead. The `customizer` is invoked with five\n * arguments: (objValue, srcValue, index|key, object, source).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n * @example\n *\n * function isGreeting(value) {\n * return /^h(?:i|ello)$/.test(value);\n * }\n *\n * function customizer(objValue, srcValue) {\n * if (isGreeting(objValue) && isGreeting(srcValue)) {\n * return true;\n * }\n * }\n *\n * var object = { 'greeting': 'hello' };\n * var source = { 'greeting': 'hi' };\n *\n * _.isMatchWith(object, source, customizer);\n * // => true\n */\n function isMatchWith(object, source, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return baseIsMatch(object, source, getMatchData(source), customizer);\n }\n\n /**\n * Checks if `value` is `NaN`.\n *\n * **Note:** This method is based on\n * [`Number.isNaN`](https://mdn.io/Number/isNaN) and is not the same as\n * global [`isNaN`](https://mdn.io/isNaN) which returns `true` for\n * `undefined` and other non-number values.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.\n * @example\n *\n * _.isNaN(NaN);\n * // => true\n *\n * _.isNaN(new Number(NaN));\n * // => true\n *\n * isNaN(undefined);\n * // => true\n *\n * _.isNaN(undefined);\n * // => false\n */\n function isNaN(value) {\n // An `NaN` primitive is the only value that is not equal to itself.\n // Perform the `toStringTag` check first to avoid errors with some\n // ActiveX objects in IE.\n return isNumber(value) && value != +value;\n }\n\n /**\n * Checks if `value` is a pristine native function.\n *\n * **Note:** This method can't reliably detect native functions in the presence\n * of the core-js package because core-js circumvents this kind of detection.\n * Despite multiple requests, the core-js maintainer has made it clear: any\n * attempt to fix the detection will be obstructed. As a result, we're left\n * with little choice but to throw an error. Unfortunately, this also affects\n * packages, like [babel-polyfill](https://www.npmjs.com/package/babel-polyfill),\n * which rely on core-js.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n * @example\n *\n * _.isNative(Array.prototype.push);\n * // => true\n *\n * _.isNative(_);\n * // => false\n */\n function isNative(value) {\n if (isMaskable(value)) {\n throw new Error(CORE_ERROR_TEXT);\n }\n return baseIsNative(value);\n }\n\n /**\n * Checks if `value` is `null`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `null`, else `false`.\n * @example\n *\n * _.isNull(null);\n * // => true\n *\n * _.isNull(void 0);\n * // => false\n */\n function isNull(value) {\n return value === null;\n }\n\n /**\n * Checks if `value` is `null` or `undefined`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is nullish, else `false`.\n * @example\n *\n * _.isNil(null);\n * // => true\n *\n * _.isNil(void 0);\n * // => true\n *\n * _.isNil(NaN);\n * // => false\n */\n function isNil(value) {\n return value == null;\n }\n\n /**\n * Checks if `value` is classified as a `Number` primitive or object.\n *\n * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are\n * classified as numbers, use the `_.isFinite` method.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a number, else `false`.\n * @example\n *\n * _.isNumber(3);\n * // => true\n *\n * _.isNumber(Number.MIN_VALUE);\n * // => true\n *\n * _.isNumber(Infinity);\n * // => true\n *\n * _.isNumber('3');\n * // => false\n */\n function isNumber(value) {\n return typeof value == 'number' ||\n (isObjectLike(value) && baseGetTag(value) == numberTag);\n }\n\n /**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\n function isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n }\n\n /**\n * Checks if `value` is classified as a `RegExp` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a regexp, else `false`.\n * @example\n *\n * _.isRegExp(/abc/);\n * // => true\n *\n * _.isRegExp('/abc/');\n * // => false\n */\n var isRegExp = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp;\n\n /**\n * Checks if `value` is a safe integer. An integer is safe if it's an IEEE-754\n * double precision number which isn't the result of a rounded unsafe integer.\n *\n * **Note:** This method is based on\n * [`Number.isSafeInteger`](https://mdn.io/Number/isSafeInteger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a safe integer, else `false`.\n * @example\n *\n * _.isSafeInteger(3);\n * // => true\n *\n * _.isSafeInteger(Number.MIN_VALUE);\n * // => false\n *\n * _.isSafeInteger(Infinity);\n * // => false\n *\n * _.isSafeInteger('3');\n * // => false\n */\n function isSafeInteger(value) {\n return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER;\n }\n\n /**\n * Checks if `value` is classified as a `Set` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n * @example\n *\n * _.isSet(new Set);\n * // => true\n *\n * _.isSet(new WeakSet);\n * // => false\n */\n var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;\n\n /**\n * Checks if `value` is classified as a `String` primitive or object.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a string, else `false`.\n * @example\n *\n * _.isString('abc');\n * // => true\n *\n * _.isString(1);\n * // => false\n */\n function isString(value) {\n return typeof value == 'string' ||\n (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag);\n }\n\n /**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\n function isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n }\n\n /**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\n var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\n /**\n * Checks if `value` is `undefined`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`.\n * @example\n *\n * _.isUndefined(void 0);\n * // => true\n *\n * _.isUndefined(null);\n * // => false\n */\n function isUndefined(value) {\n return value === undefined;\n }\n\n /**\n * Checks if `value` is classified as a `WeakMap` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a weak map, else `false`.\n * @example\n *\n * _.isWeakMap(new WeakMap);\n * // => true\n *\n * _.isWeakMap(new Map);\n * // => false\n */\n function isWeakMap(value) {\n return isObjectLike(value) && getTag(value) == weakMapTag;\n }\n\n /**\n * Checks if `value` is classified as a `WeakSet` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a weak set, else `false`.\n * @example\n *\n * _.isWeakSet(new WeakSet);\n * // => true\n *\n * _.isWeakSet(new Set);\n * // => false\n */\n function isWeakSet(value) {\n return isObjectLike(value) && baseGetTag(value) == weakSetTag;\n }\n\n /**\n * Checks if `value` is less than `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is less than `other`,\n * else `false`.\n * @see _.gt\n * @example\n *\n * _.lt(1, 3);\n * // => true\n *\n * _.lt(3, 3);\n * // => false\n *\n * _.lt(3, 1);\n * // => false\n */\n var lt = createRelationalOperation(baseLt);\n\n /**\n * Checks if `value` is less than or equal to `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is less than or equal to\n * `other`, else `false`.\n * @see _.gte\n * @example\n *\n * _.lte(1, 3);\n * // => true\n *\n * _.lte(3, 3);\n * // => true\n *\n * _.lte(3, 1);\n * // => false\n */\n var lte = createRelationalOperation(function(value, other) {\n return value <= other;\n });\n\n /**\n * Converts `value` to an array.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Array} Returns the converted array.\n * @example\n *\n * _.toArray({ 'a': 1, 'b': 2 });\n * // => [1, 2]\n *\n * _.toArray('abc');\n * // => ['a', 'b', 'c']\n *\n * _.toArray(1);\n * // => []\n *\n * _.toArray(null);\n * // => []\n */\n function toArray(value) {\n if (!value) {\n return [];\n }\n if (isArrayLike(value)) {\n return isString(value) ? stringToArray(value) : copyArray(value);\n }\n if (symIterator && value[symIterator]) {\n return iteratorToArray(value[symIterator]());\n }\n var tag = getTag(value),\n func = tag == mapTag ? mapToArray : (tag == setTag ? setToArray : values);\n\n return func(value);\n }\n\n /**\n * Converts `value` to a finite number.\n *\n * @static\n * @memberOf _\n * @since 4.12.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted number.\n * @example\n *\n * _.toFinite(3.2);\n * // => 3.2\n *\n * _.toFinite(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toFinite(Infinity);\n * // => 1.7976931348623157e+308\n *\n * _.toFinite('3.2');\n * // => 3.2\n */\n function toFinite(value) {\n if (!value) {\n return value === 0 ? value : 0;\n }\n value = toNumber(value);\n if (value === INFINITY || value === -INFINITY) {\n var sign = (value < 0 ? -1 : 1);\n return sign * MAX_INTEGER;\n }\n return value === value ? value : 0;\n }\n\n /**\n * Converts `value` to an integer.\n *\n * **Note:** This method is loosely based on\n * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toInteger(3.2);\n * // => 3\n *\n * _.toInteger(Number.MIN_VALUE);\n * // => 0\n *\n * _.toInteger(Infinity);\n * // => 1.7976931348623157e+308\n *\n * _.toInteger('3.2');\n * // => 3\n */\n function toInteger(value) {\n var result = toFinite(value),\n remainder = result % 1;\n\n return result === result ? (remainder ? result - remainder : result) : 0;\n }\n\n /**\n * Converts `value` to an integer suitable for use as the length of an\n * array-like object.\n *\n * **Note:** This method is based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toLength(3.2);\n * // => 3\n *\n * _.toLength(Number.MIN_VALUE);\n * // => 0\n *\n * _.toLength(Infinity);\n * // => 4294967295\n *\n * _.toLength('3.2');\n * // => 3\n */\n function toLength(value) {\n return value ? baseClamp(toInteger(value), 0, MAX_ARRAY_LENGTH) : 0;\n }\n\n /**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\n function toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = baseTrim(value);\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n }\n\n /**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\n function toPlainObject(value) {\n return copyObject(value, keysIn(value));\n }\n\n /**\n * Converts `value` to a safe integer. A safe integer can be compared and\n * represented correctly.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toSafeInteger(3.2);\n * // => 3\n *\n * _.toSafeInteger(Number.MIN_VALUE);\n * // => 0\n *\n * _.toSafeInteger(Infinity);\n * // => 9007199254740991\n *\n * _.toSafeInteger('3.2');\n * // => 3\n */\n function toSafeInteger(value) {\n return value\n ? baseClamp(toInteger(value), -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER)\n : (value === 0 ? value : 0);\n }\n\n /**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\n function toString(value) {\n return value == null ? '' : baseToString(value);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Assigns own enumerable string keyed properties of source objects to the\n * destination object. Source objects are applied from left to right.\n * Subsequent sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object` and is loosely based on\n * [`Object.assign`](https://mdn.io/Object/assign).\n *\n * @static\n * @memberOf _\n * @since 0.10.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.assignIn\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * function Bar() {\n * this.c = 3;\n * }\n *\n * Foo.prototype.b = 2;\n * Bar.prototype.d = 4;\n *\n * _.assign({ 'a': 0 }, new Foo, new Bar);\n * // => { 'a': 1, 'c': 3 }\n */\n var assign = createAssigner(function(object, source) {\n if (isPrototype(source) || isArrayLike(source)) {\n copyObject(source, keys(source), object);\n return;\n }\n for (var key in source) {\n if (hasOwnProperty.call(source, key)) {\n assignValue(object, key, source[key]);\n }\n }\n });\n\n /**\n * This method is like `_.assign` except that it iterates over own and\n * inherited source properties.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias extend\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.assign\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * function Bar() {\n * this.c = 3;\n * }\n *\n * Foo.prototype.b = 2;\n * Bar.prototype.d = 4;\n *\n * _.assignIn({ 'a': 0 }, new Foo, new Bar);\n * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4 }\n */\n var assignIn = createAssigner(function(object, source) {\n copyObject(source, keysIn(source), object);\n });\n\n /**\n * This method is like `_.assignIn` except that it accepts `customizer`\n * which is invoked to produce the assigned values. If `customizer` returns\n * `undefined`, assignment is handled by the method instead. The `customizer`\n * is invoked with five arguments: (objValue, srcValue, key, object, source).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias extendWith\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @see _.assignWith\n * @example\n *\n * function customizer(objValue, srcValue) {\n * return _.isUndefined(objValue) ? srcValue : objValue;\n * }\n *\n * var defaults = _.partialRight(_.assignInWith, customizer);\n *\n * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\n var assignInWith = createAssigner(function(object, source, srcIndex, customizer) {\n copyObject(source, keysIn(source), object, customizer);\n });\n\n /**\n * This method is like `_.assign` except that it accepts `customizer`\n * which is invoked to produce the assigned values. If `customizer` returns\n * `undefined`, assignment is handled by the method instead. The `customizer`\n * is invoked with five arguments: (objValue, srcValue, key, object, source).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @see _.assignInWith\n * @example\n *\n * function customizer(objValue, srcValue) {\n * return _.isUndefined(objValue) ? srcValue : objValue;\n * }\n *\n * var defaults = _.partialRight(_.assignWith, customizer);\n *\n * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\n var assignWith = createAssigner(function(object, source, srcIndex, customizer) {\n copyObject(source, keys(source), object, customizer);\n });\n\n /**\n * Creates an array of values corresponding to `paths` of `object`.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {...(string|string[])} [paths] The property paths to pick.\n * @returns {Array} Returns the picked values.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] };\n *\n * _.at(object, ['a[0].b.c', 'a[1]']);\n * // => [3, 4]\n */\n var at = flatRest(baseAt);\n\n /**\n * Creates an object that inherits from the `prototype` object. If a\n * `properties` object is given, its own enumerable string keyed properties\n * are assigned to the created object.\n *\n * @static\n * @memberOf _\n * @since 2.3.0\n * @category Object\n * @param {Object} prototype The object to inherit from.\n * @param {Object} [properties] The properties to assign to the object.\n * @returns {Object} Returns the new object.\n * @example\n *\n * function Shape() {\n * this.x = 0;\n * this.y = 0;\n * }\n *\n * function Circle() {\n * Shape.call(this);\n * }\n *\n * Circle.prototype = _.create(Shape.prototype, {\n * 'constructor': Circle\n * });\n *\n * var circle = new Circle;\n * circle instanceof Circle;\n * // => true\n *\n * circle instanceof Shape;\n * // => true\n */\n function create(prototype, properties) {\n var result = baseCreate(prototype);\n return properties == null ? result : baseAssign(result, properties);\n }\n\n /**\n * Assigns own and inherited enumerable string keyed properties of source\n * objects to the destination object for all destination properties that\n * resolve to `undefined`. Source objects are applied from left to right.\n * Once a property is set, additional values of the same property are ignored.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.defaultsDeep\n * @example\n *\n * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\n var defaults = baseRest(function(object, sources) {\n object = Object(object);\n\n var index = -1;\n var length = sources.length;\n var guard = length > 2 ? sources[2] : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n length = 1;\n }\n\n while (++index < length) {\n var source = sources[index];\n var props = keysIn(source);\n var propsIndex = -1;\n var propsLength = props.length;\n\n while (++propsIndex < propsLength) {\n var key = props[propsIndex];\n var value = object[key];\n\n if (value === undefined ||\n (eq(value, objectProto[key]) && !hasOwnProperty.call(object, key))) {\n object[key] = source[key];\n }\n }\n }\n\n return object;\n });\n\n /**\n * This method is like `_.defaults` except that it recursively assigns\n * default properties.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.10.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.defaults\n * @example\n *\n * _.defaultsDeep({ 'a': { 'b': 2 } }, { 'a': { 'b': 1, 'c': 3 } });\n * // => { 'a': { 'b': 2, 'c': 3 } }\n */\n var defaultsDeep = baseRest(function(args) {\n args.push(undefined, customDefaultsMerge);\n return apply(mergeWith, undefined, args);\n });\n\n /**\n * This method is like `_.find` except that it returns the key of the first\n * element `predicate` returns truthy for instead of the element itself.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Object\n * @param {Object} object The object to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {string|undefined} Returns the key of the matched element,\n * else `undefined`.\n * @example\n *\n * var users = {\n * 'barney': { 'age': 36, 'active': true },\n * 'fred': { 'age': 40, 'active': false },\n * 'pebbles': { 'age': 1, 'active': true }\n * };\n *\n * _.findKey(users, function(o) { return o.age < 40; });\n * // => 'barney' (iteration order is not guaranteed)\n *\n * // The `_.matches` iteratee shorthand.\n * _.findKey(users, { 'age': 1, 'active': true });\n * // => 'pebbles'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findKey(users, ['active', false]);\n * // => 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.findKey(users, 'active');\n * // => 'barney'\n */\n function findKey(object, predicate) {\n return baseFindKey(object, getIteratee(predicate, 3), baseForOwn);\n }\n\n /**\n * This method is like `_.findKey` except that it iterates over elements of\n * a collection in the opposite order.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Object\n * @param {Object} object The object to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {string|undefined} Returns the key of the matched element,\n * else `undefined`.\n * @example\n *\n * var users = {\n * 'barney': { 'age': 36, 'active': true },\n * 'fred': { 'age': 40, 'active': false },\n * 'pebbles': { 'age': 1, 'active': true }\n * };\n *\n * _.findLastKey(users, function(o) { return o.age < 40; });\n * // => returns 'pebbles' assuming `_.findKey` returns 'barney'\n *\n * // The `_.matches` iteratee shorthand.\n * _.findLastKey(users, { 'age': 36, 'active': true });\n * // => 'barney'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findLastKey(users, ['active', false]);\n * // => 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.findLastKey(users, 'active');\n * // => 'pebbles'\n */\n function findLastKey(object, predicate) {\n return baseFindKey(object, getIteratee(predicate, 3), baseForOwnRight);\n }\n\n /**\n * Iterates over own and inherited enumerable string keyed properties of an\n * object and invokes `iteratee` for each property. The iteratee is invoked\n * with three arguments: (value, key, object). Iteratee functions may exit\n * iteration early by explicitly returning `false`.\n *\n * @static\n * @memberOf _\n * @since 0.3.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forInRight\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forIn(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'a', 'b', then 'c' (iteration order is not guaranteed).\n */\n function forIn(object, iteratee) {\n return object == null\n ? object\n : baseFor(object, getIteratee(iteratee, 3), keysIn);\n }\n\n /**\n * This method is like `_.forIn` except that it iterates over properties of\n * `object` in the opposite order.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forIn\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forInRight(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'c', 'b', then 'a' assuming `_.forIn` logs 'a', 'b', then 'c'.\n */\n function forInRight(object, iteratee) {\n return object == null\n ? object\n : baseForRight(object, getIteratee(iteratee, 3), keysIn);\n }\n\n /**\n * Iterates over own enumerable string keyed properties of an object and\n * invokes `iteratee` for each property. The iteratee is invoked with three\n * arguments: (value, key, object). Iteratee functions may exit iteration\n * early by explicitly returning `false`.\n *\n * @static\n * @memberOf _\n * @since 0.3.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forOwnRight\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forOwn(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'a' then 'b' (iteration order is not guaranteed).\n */\n function forOwn(object, iteratee) {\n return object && baseForOwn(object, getIteratee(iteratee, 3));\n }\n\n /**\n * This method is like `_.forOwn` except that it iterates over properties of\n * `object` in the opposite order.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forOwn\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forOwnRight(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'b' then 'a' assuming `_.forOwn` logs 'a' then 'b'.\n */\n function forOwnRight(object, iteratee) {\n return object && baseForOwnRight(object, getIteratee(iteratee, 3));\n }\n\n /**\n * Creates an array of function property names from own enumerable properties\n * of `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to inspect.\n * @returns {Array} Returns the function names.\n * @see _.functionsIn\n * @example\n *\n * function Foo() {\n * this.a = _.constant('a');\n * this.b = _.constant('b');\n * }\n *\n * Foo.prototype.c = _.constant('c');\n *\n * _.functions(new Foo);\n * // => ['a', 'b']\n */\n function functions(object) {\n return object == null ? [] : baseFunctions(object, keys(object));\n }\n\n /**\n * Creates an array of function property names from own and inherited\n * enumerable properties of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to inspect.\n * @returns {Array} Returns the function names.\n * @see _.functions\n * @example\n *\n * function Foo() {\n * this.a = _.constant('a');\n * this.b = _.constant('b');\n * }\n *\n * Foo.prototype.c = _.constant('c');\n *\n * _.functionsIn(new Foo);\n * // => ['a', 'b', 'c']\n */\n function functionsIn(object) {\n return object == null ? [] : baseFunctions(object, keysIn(object));\n }\n\n /**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\n function get(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n }\n\n /**\n * Checks if `path` is a direct property of `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = { 'a': { 'b': 2 } };\n * var other = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.has(object, 'a');\n * // => true\n *\n * _.has(object, 'a.b');\n * // => true\n *\n * _.has(object, ['a', 'b']);\n * // => true\n *\n * _.has(other, 'a');\n * // => false\n */\n function has(object, path) {\n return object != null && hasPath(object, path, baseHas);\n }\n\n /**\n * Checks if `path` is a direct or inherited property of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.hasIn(object, 'a');\n * // => true\n *\n * _.hasIn(object, 'a.b');\n * // => true\n *\n * _.hasIn(object, ['a', 'b']);\n * // => true\n *\n * _.hasIn(object, 'b');\n * // => false\n */\n function hasIn(object, path) {\n return object != null && hasPath(object, path, baseHasIn);\n }\n\n /**\n * Creates an object composed of the inverted keys and values of `object`.\n * If `object` contains duplicate values, subsequent values overwrite\n * property assignments of previous values.\n *\n * @static\n * @memberOf _\n * @since 0.7.0\n * @category Object\n * @param {Object} object The object to invert.\n * @returns {Object} Returns the new inverted object.\n * @example\n *\n * var object = { 'a': 1, 'b': 2, 'c': 1 };\n *\n * _.invert(object);\n * // => { '1': 'c', '2': 'b' }\n */\n var invert = createInverter(function(result, value, key) {\n if (value != null &&\n typeof value.toString != 'function') {\n value = nativeObjectToString.call(value);\n }\n\n result[value] = key;\n }, constant(identity));\n\n /**\n * This method is like `_.invert` except that the inverted object is generated\n * from the results of running each element of `object` thru `iteratee`. The\n * corresponding inverted value of each inverted key is an array of keys\n * responsible for generating the inverted value. The iteratee is invoked\n * with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.1.0\n * @category Object\n * @param {Object} object The object to invert.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Object} Returns the new inverted object.\n * @example\n *\n * var object = { 'a': 1, 'b': 2, 'c': 1 };\n *\n * _.invertBy(object);\n * // => { '1': ['a', 'c'], '2': ['b'] }\n *\n * _.invertBy(object, function(value) {\n * return 'group' + value;\n * });\n * // => { 'group1': ['a', 'c'], 'group2': ['b'] }\n */\n var invertBy = createInverter(function(result, value, key) {\n if (value != null &&\n typeof value.toString != 'function') {\n value = nativeObjectToString.call(value);\n }\n\n if (hasOwnProperty.call(result, value)) {\n result[value].push(key);\n } else {\n result[value] = [key];\n }\n }, getIteratee);\n\n /**\n * Invokes the method at `path` of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the method to invoke.\n * @param {...*} [args] The arguments to invoke the method with.\n * @returns {*} Returns the result of the invoked method.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': [1, 2, 3, 4] } }] };\n *\n * _.invoke(object, 'a[0].b.c.slice', 1, 3);\n * // => [2, 3]\n */\n var invoke = baseRest(baseInvoke);\n\n /**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\n function keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n }\n\n /**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\n function keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n }\n\n /**\n * The opposite of `_.mapValues`; this method creates an object with the\n * same values as `object` and keys generated by running each own enumerable\n * string keyed property of `object` thru `iteratee`. The iteratee is invoked\n * with three arguments: (value, key, object).\n *\n * @static\n * @memberOf _\n * @since 3.8.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns the new mapped object.\n * @see _.mapValues\n * @example\n *\n * _.mapKeys({ 'a': 1, 'b': 2 }, function(value, key) {\n * return key + value;\n * });\n * // => { 'a1': 1, 'b2': 2 }\n */\n function mapKeys(object, iteratee) {\n var result = {};\n iteratee = getIteratee(iteratee, 3);\n\n baseForOwn(object, function(value, key, object) {\n baseAssignValue(result, iteratee(value, key, object), value);\n });\n return result;\n }\n\n /**\n * Creates an object with the same keys as `object` and values generated\n * by running each own enumerable string keyed property of `object` thru\n * `iteratee`. The iteratee is invoked with three arguments:\n * (value, key, object).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns the new mapped object.\n * @see _.mapKeys\n * @example\n *\n * var users = {\n * 'fred': { 'user': 'fred', 'age': 40 },\n * 'pebbles': { 'user': 'pebbles', 'age': 1 }\n * };\n *\n * _.mapValues(users, function(o) { return o.age; });\n * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)\n *\n * // The `_.property` iteratee shorthand.\n * _.mapValues(users, 'age');\n * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)\n */\n function mapValues(object, iteratee) {\n var result = {};\n iteratee = getIteratee(iteratee, 3);\n\n baseForOwn(object, function(value, key, object) {\n baseAssignValue(result, key, iteratee(value, key, object));\n });\n return result;\n }\n\n /**\n * This method is like `_.assign` except that it recursively merges own and\n * inherited enumerable string keyed properties of source objects into the\n * destination object. Source properties that resolve to `undefined` are\n * skipped if a destination value exists. Array and plain object properties\n * are merged recursively. Other objects and value types are overridden by\n * assignment. Source objects are applied from left to right. Subsequent\n * sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {\n * 'a': [{ 'b': 2 }, { 'd': 4 }]\n * };\n *\n * var other = {\n * 'a': [{ 'c': 3 }, { 'e': 5 }]\n * };\n *\n * _.merge(object, other);\n * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }\n */\n var merge = createAssigner(function(object, source, srcIndex) {\n baseMerge(object, source, srcIndex);\n });\n\n /**\n * This method is like `_.merge` except that it accepts `customizer` which\n * is invoked to produce the merged values of the destination and source\n * properties. If `customizer` returns `undefined`, merging is handled by the\n * method instead. The `customizer` is invoked with six arguments:\n * (objValue, srcValue, key, object, source, stack).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} customizer The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * function customizer(objValue, srcValue) {\n * if (_.isArray(objValue)) {\n * return objValue.concat(srcValue);\n * }\n * }\n *\n * var object = { 'a': [1], 'b': [2] };\n * var other = { 'a': [3], 'b': [4] };\n *\n * _.mergeWith(object, other, customizer);\n * // => { 'a': [1, 3], 'b': [2, 4] }\n */\n var mergeWith = createAssigner(function(object, source, srcIndex, customizer) {\n baseMerge(object, source, srcIndex, customizer);\n });\n\n /**\n * The opposite of `_.pick`; this method creates an object composed of the\n * own and inherited enumerable property paths of `object` that are not omitted.\n *\n * **Note:** This method is considerably slower than `_.pick`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The source object.\n * @param {...(string|string[])} [paths] The property paths to omit.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.omit(object, ['a', 'c']);\n * // => { 'b': '2' }\n */\n var omit = flatRest(function(object, paths) {\n var result = {};\n if (object == null) {\n return result;\n }\n var isDeep = false;\n paths = arrayMap(paths, function(path) {\n path = castPath(path, object);\n isDeep || (isDeep = path.length > 1);\n return path;\n });\n copyObject(object, getAllKeysIn(object), result);\n if (isDeep) {\n result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG, customOmitClone);\n }\n var length = paths.length;\n while (length--) {\n baseUnset(result, paths[length]);\n }\n return result;\n });\n\n /**\n * The opposite of `_.pickBy`; this method creates an object composed of\n * the own and inherited enumerable string keyed properties of `object` that\n * `predicate` doesn't return truthy for. The predicate is invoked with two\n * arguments: (value, key).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The source object.\n * @param {Function} [predicate=_.identity] The function invoked per property.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.omitBy(object, _.isNumber);\n * // => { 'b': '2' }\n */\n function omitBy(object, predicate) {\n return pickBy(object, negate(getIteratee(predicate)));\n }\n\n /**\n * Creates an object composed of the picked `object` properties.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The source object.\n * @param {...(string|string[])} [paths] The property paths to pick.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.pick(object, ['a', 'c']);\n * // => { 'a': 1, 'c': 3 }\n */\n var pick = flatRest(function(object, paths) {\n return object == null ? {} : basePick(object, paths);\n });\n\n /**\n * Creates an object composed of the `object` properties `predicate` returns\n * truthy for. The predicate is invoked with two arguments: (value, key).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The source object.\n * @param {Function} [predicate=_.identity] The function invoked per property.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.pickBy(object, _.isNumber);\n * // => { 'a': 1, 'c': 3 }\n */\n function pickBy(object, predicate) {\n if (object == null) {\n return {};\n }\n var props = arrayMap(getAllKeysIn(object), function(prop) {\n return [prop];\n });\n predicate = getIteratee(predicate);\n return basePickBy(object, props, function(value, path) {\n return predicate(value, path[0]);\n });\n }\n\n /**\n * This method is like `_.get` except that if the resolved value is a\n * function it's invoked with the `this` binding of its parent object and\n * its result is returned.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to resolve.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c1': 3, 'c2': _.constant(4) } }] };\n *\n * _.result(object, 'a[0].b.c1');\n * // => 3\n *\n * _.result(object, 'a[0].b.c2');\n * // => 4\n *\n * _.result(object, 'a[0].b.c3', 'default');\n * // => 'default'\n *\n * _.result(object, 'a[0].b.c3', _.constant('default'));\n * // => 'default'\n */\n function result(object, path, defaultValue) {\n path = castPath(path, object);\n\n var index = -1,\n length = path.length;\n\n // Ensure the loop is entered when path is empty.\n if (!length) {\n length = 1;\n object = undefined;\n }\n while (++index < length) {\n var value = object == null ? undefined : object[toKey(path[index])];\n if (value === undefined) {\n index = length;\n value = defaultValue;\n }\n object = isFunction(value) ? value.call(object) : value;\n }\n return object;\n }\n\n /**\n * Sets the value at `path` of `object`. If a portion of `path` doesn't exist,\n * it's created. Arrays are created for missing index properties while objects\n * are created for all other missing properties. Use `_.setWith` to customize\n * `path` creation.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.set(object, 'a[0].b.c', 4);\n * console.log(object.a[0].b.c);\n * // => 4\n *\n * _.set(object, ['x', '0', 'y', 'z'], 5);\n * console.log(object.x[0].y.z);\n * // => 5\n */\n function set(object, path, value) {\n return object == null ? object : baseSet(object, path, value);\n }\n\n /**\n * This method is like `_.set` except that it accepts `customizer` which is\n * invoked to produce the objects of `path`. If `customizer` returns `undefined`\n * path creation is handled by the method instead. The `customizer` is invoked\n * with three arguments: (nsValue, key, nsObject).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {};\n *\n * _.setWith(object, '[0][1]', 'a', Object);\n * // => { '0': { '1': 'a' } }\n */\n function setWith(object, path, value, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return object == null ? object : baseSet(object, path, value, customizer);\n }\n\n /**\n * Creates an array of own enumerable string keyed-value pairs for `object`\n * which can be consumed by `_.fromPairs`. If `object` is a map or set, its\n * entries are returned.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias entries\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the key-value pairs.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.toPairs(new Foo);\n * // => [['a', 1], ['b', 2]] (iteration order is not guaranteed)\n */\n var toPairs = createToPairs(keys);\n\n /**\n * Creates an array of own and inherited enumerable string keyed-value pairs\n * for `object` which can be consumed by `_.fromPairs`. If `object` is a map\n * or set, its entries are returned.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias entriesIn\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the key-value pairs.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.toPairsIn(new Foo);\n * // => [['a', 1], ['b', 2], ['c', 3]] (iteration order is not guaranteed)\n */\n var toPairsIn = createToPairs(keysIn);\n\n /**\n * An alternative to `_.reduce`; this method transforms `object` to a new\n * `accumulator` object which is the result of running each of its own\n * enumerable string keyed properties thru `iteratee`, with each invocation\n * potentially mutating the `accumulator` object. If `accumulator` is not\n * provided, a new object with the same `[[Prototype]]` will be used. The\n * iteratee is invoked with four arguments: (accumulator, value, key, object).\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @static\n * @memberOf _\n * @since 1.3.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {*} [accumulator] The custom accumulator value.\n * @returns {*} Returns the accumulated value.\n * @example\n *\n * _.transform([2, 3, 4], function(result, n) {\n * result.push(n *= n);\n * return n % 2 == 0;\n * }, []);\n * // => [4, 9]\n *\n * _.transform({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {\n * (result[value] || (result[value] = [])).push(key);\n * }, {});\n * // => { '1': ['a', 'c'], '2': ['b'] }\n */\n function transform(object, iteratee, accumulator) {\n var isArr = isArray(object),\n isArrLike = isArr || isBuffer(object) || isTypedArray(object);\n\n iteratee = getIteratee(iteratee, 4);\n if (accumulator == null) {\n var Ctor = object && object.constructor;\n if (isArrLike) {\n accumulator = isArr ? new Ctor : [];\n }\n else if (isObject(object)) {\n accumulator = isFunction(Ctor) ? baseCreate(getPrototype(object)) : {};\n }\n else {\n accumulator = {};\n }\n }\n (isArrLike ? arrayEach : baseForOwn)(object, function(value, index, object) {\n return iteratee(accumulator, value, index, object);\n });\n return accumulator;\n }\n\n /**\n * Removes the property at `path` of `object`.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to unset.\n * @returns {boolean} Returns `true` if the property is deleted, else `false`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 7 } }] };\n * _.unset(object, 'a[0].b.c');\n * // => true\n *\n * console.log(object);\n * // => { 'a': [{ 'b': {} }] };\n *\n * _.unset(object, ['a', '0', 'b', 'c']);\n * // => true\n *\n * console.log(object);\n * // => { 'a': [{ 'b': {} }] };\n */\n function unset(object, path) {\n return object == null ? true : baseUnset(object, path);\n }\n\n /**\n * This method is like `_.set` except that accepts `updater` to produce the\n * value to set. Use `_.updateWith` to customize `path` creation. The `updater`\n * is invoked with one argument: (value).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.6.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {Function} updater The function to produce the updated value.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.update(object, 'a[0].b.c', function(n) { return n * n; });\n * console.log(object.a[0].b.c);\n * // => 9\n *\n * _.update(object, 'x[0].y.z', function(n) { return n ? n + 1 : 0; });\n * console.log(object.x[0].y.z);\n * // => 0\n */\n function update(object, path, updater) {\n return object == null ? object : baseUpdate(object, path, castFunction(updater));\n }\n\n /**\n * This method is like `_.update` except that it accepts `customizer` which is\n * invoked to produce the objects of `path`. If `customizer` returns `undefined`\n * path creation is handled by the method instead. The `customizer` is invoked\n * with three arguments: (nsValue, key, nsObject).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.6.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {Function} updater The function to produce the updated value.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {};\n *\n * _.updateWith(object, '[0][1]', _.constant('a'), Object);\n * // => { '0': { '1': 'a' } }\n */\n function updateWith(object, path, updater, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return object == null ? object : baseUpdate(object, path, castFunction(updater), customizer);\n }\n\n /**\n * Creates an array of the own enumerable string keyed property values of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property values.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.values(new Foo);\n * // => [1, 2] (iteration order is not guaranteed)\n *\n * _.values('hi');\n * // => ['h', 'i']\n */\n function values(object) {\n return object == null ? [] : baseValues(object, keys(object));\n }\n\n /**\n * Creates an array of the own and inherited enumerable string keyed property\n * values of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property values.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.valuesIn(new Foo);\n * // => [1, 2, 3] (iteration order is not guaranteed)\n */\n function valuesIn(object) {\n return object == null ? [] : baseValues(object, keysIn(object));\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Clamps `number` within the inclusive `lower` and `upper` bounds.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Number\n * @param {number} number The number to clamp.\n * @param {number} [lower] The lower bound.\n * @param {number} upper The upper bound.\n * @returns {number} Returns the clamped number.\n * @example\n *\n * _.clamp(-10, -5, 5);\n * // => -5\n *\n * _.clamp(10, -5, 5);\n * // => 5\n */\n function clamp(number, lower, upper) {\n if (upper === undefined) {\n upper = lower;\n lower = undefined;\n }\n if (upper !== undefined) {\n upper = toNumber(upper);\n upper = upper === upper ? upper : 0;\n }\n if (lower !== undefined) {\n lower = toNumber(lower);\n lower = lower === lower ? lower : 0;\n }\n return baseClamp(toNumber(number), lower, upper);\n }\n\n /**\n * Checks if `n` is between `start` and up to, but not including, `end`. If\n * `end` is not specified, it's set to `start` with `start` then set to `0`.\n * If `start` is greater than `end` the params are swapped to support\n * negative ranges.\n *\n * @static\n * @memberOf _\n * @since 3.3.0\n * @category Number\n * @param {number} number The number to check.\n * @param {number} [start=0] The start of the range.\n * @param {number} end The end of the range.\n * @returns {boolean} Returns `true` if `number` is in the range, else `false`.\n * @see _.range, _.rangeRight\n * @example\n *\n * _.inRange(3, 2, 4);\n * // => true\n *\n * _.inRange(4, 8);\n * // => true\n *\n * _.inRange(4, 2);\n * // => false\n *\n * _.inRange(2, 2);\n * // => false\n *\n * _.inRange(1.2, 2);\n * // => true\n *\n * _.inRange(5.2, 4);\n * // => false\n *\n * _.inRange(-3, -2, -6);\n * // => true\n */\n function inRange(number, start, end) {\n start = toFinite(start);\n if (end === undefined) {\n end = start;\n start = 0;\n } else {\n end = toFinite(end);\n }\n number = toNumber(number);\n return baseInRange(number, start, end);\n }\n\n /**\n * Produces a random number between the inclusive `lower` and `upper` bounds.\n * If only one argument is provided a number between `0` and the given number\n * is returned. If `floating` is `true`, or either `lower` or `upper` are\n * floats, a floating-point number is returned instead of an integer.\n *\n * **Note:** JavaScript follows the IEEE-754 standard for resolving\n * floating-point values which can produce unexpected results.\n *\n * @static\n * @memberOf _\n * @since 0.7.0\n * @category Number\n * @param {number} [lower=0] The lower bound.\n * @param {number} [upper=1] The upper bound.\n * @param {boolean} [floating] Specify returning a floating-point number.\n * @returns {number} Returns the random number.\n * @example\n *\n * _.random(0, 5);\n * // => an integer between 0 and 5\n *\n * _.random(5);\n * // => also an integer between 0 and 5\n *\n * _.random(5, true);\n * // => a floating-point number between 0 and 5\n *\n * _.random(1.2, 5.2);\n * // => a floating-point number between 1.2 and 5.2\n */\n function random(lower, upper, floating) {\n if (floating && typeof floating != 'boolean' && isIterateeCall(lower, upper, floating)) {\n upper = floating = undefined;\n }\n if (floating === undefined) {\n if (typeof upper == 'boolean') {\n floating = upper;\n upper = undefined;\n }\n else if (typeof lower == 'boolean') {\n floating = lower;\n lower = undefined;\n }\n }\n if (lower === undefined && upper === undefined) {\n lower = 0;\n upper = 1;\n }\n else {\n lower = toFinite(lower);\n if (upper === undefined) {\n upper = lower;\n lower = 0;\n } else {\n upper = toFinite(upper);\n }\n }\n if (lower > upper) {\n var temp = lower;\n lower = upper;\n upper = temp;\n }\n if (floating || lower % 1 || upper % 1) {\n var rand = nativeRandom();\n return nativeMin(lower + (rand * (upper - lower + freeParseFloat('1e-' + ((rand + '').length - 1)))), upper);\n }\n return baseRandom(lower, upper);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the camel cased string.\n * @example\n *\n * _.camelCase('Foo Bar');\n * // => 'fooBar'\n *\n * _.camelCase('--foo-bar--');\n * // => 'fooBar'\n *\n * _.camelCase('__FOO_BAR__');\n * // => 'fooBar'\n */\n var camelCase = createCompounder(function(result, word, index) {\n word = word.toLowerCase();\n return result + (index ? capitalize(word) : word);\n });\n\n /**\n * Converts the first character of `string` to upper case and the remaining\n * to lower case.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to capitalize.\n * @returns {string} Returns the capitalized string.\n * @example\n *\n * _.capitalize('FRED');\n * // => 'Fred'\n */\n function capitalize(string) {\n return upperFirst(toString(string).toLowerCase());\n }\n\n /**\n * Deburrs `string` by converting\n * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)\n * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)\n * letters to basic Latin letters and removing\n * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to deburr.\n * @returns {string} Returns the deburred string.\n * @example\n *\n * _.deburr('déjà vu');\n * // => 'deja vu'\n */\n function deburr(string) {\n string = toString(string);\n return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');\n }\n\n /**\n * Checks if `string` ends with the given target string.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to inspect.\n * @param {string} [target] The string to search for.\n * @param {number} [position=string.length] The position to search up to.\n * @returns {boolean} Returns `true` if `string` ends with `target`,\n * else `false`.\n * @example\n *\n * _.endsWith('abc', 'c');\n * // => true\n *\n * _.endsWith('abc', 'b');\n * // => false\n *\n * _.endsWith('abc', 'b', 2);\n * // => true\n */\n function endsWith(string, target, position) {\n string = toString(string);\n target = baseToString(target);\n\n var length = string.length;\n position = position === undefined\n ? length\n : baseClamp(toInteger(position), 0, length);\n\n var end = position;\n position -= target.length;\n return position >= 0 && string.slice(position, end) == target;\n }\n\n /**\n * Converts the characters \"&\", \"<\", \">\", '\"', and \"'\" in `string` to their\n * corresponding HTML entities.\n *\n * **Note:** No other characters are escaped. To escape additional\n * characters use a third-party library like [_he_](https://mths.be/he).\n *\n * Though the \">\" character is escaped for symmetry, characters like\n * \">\" and \"/\" don't need escaping in HTML and have no special meaning\n * unless they're part of a tag or unquoted attribute value. See\n * [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands)\n * (under \"semi-related fun fact\") for more details.\n *\n * When working with HTML you should always\n * [quote attribute values](http://wonko.com/post/html-escaping) to reduce\n * XSS vectors.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category String\n * @param {string} [string=''] The string to escape.\n * @returns {string} Returns the escaped string.\n * @example\n *\n * _.escape('fred, barney, & pebbles');\n * // => 'fred, barney, & pebbles'\n */\n function escape(string) {\n string = toString(string);\n return (string && reHasUnescapedHtml.test(string))\n ? string.replace(reUnescapedHtml, escapeHtmlChar)\n : string;\n }\n\n /**\n * Escapes the `RegExp` special characters \"^\", \"$\", \"\\\", \".\", \"*\", \"+\",\n * \"?\", \"(\", \")\", \"[\", \"]\", \"{\", \"}\", and \"|\" in `string`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to escape.\n * @returns {string} Returns the escaped string.\n * @example\n *\n * _.escapeRegExp('[lodash](https://lodash.com/)');\n * // => '\\[lodash\\]\\(https://lodash\\.com/\\)'\n */\n function escapeRegExp(string) {\n string = toString(string);\n return (string && reHasRegExpChar.test(string))\n ? string.replace(reRegExpChar, '\\\\$&')\n : string;\n }\n\n /**\n * Converts `string` to\n * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the kebab cased string.\n * @example\n *\n * _.kebabCase('Foo Bar');\n * // => 'foo-bar'\n *\n * _.kebabCase('fooBar');\n * // => 'foo-bar'\n *\n * _.kebabCase('__FOO_BAR__');\n * // => 'foo-bar'\n */\n var kebabCase = createCompounder(function(result, word, index) {\n return result + (index ? '-' : '') + word.toLowerCase();\n });\n\n /**\n * Converts `string`, as space separated words, to lower case.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the lower cased string.\n * @example\n *\n * _.lowerCase('--Foo-Bar--');\n * // => 'foo bar'\n *\n * _.lowerCase('fooBar');\n * // => 'foo bar'\n *\n * _.lowerCase('__FOO_BAR__');\n * // => 'foo bar'\n */\n var lowerCase = createCompounder(function(result, word, index) {\n return result + (index ? ' ' : '') + word.toLowerCase();\n });\n\n /**\n * Converts the first character of `string` to lower case.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.lowerFirst('Fred');\n * // => 'fred'\n *\n * _.lowerFirst('FRED');\n * // => 'fRED'\n */\n var lowerFirst = createCaseFirst('toLowerCase');\n\n /**\n * Pads `string` on the left and right sides if it's shorter than `length`.\n * Padding characters are truncated if they can't be evenly divided by `length`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to pad.\n * @param {number} [length=0] The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padded string.\n * @example\n *\n * _.pad('abc', 8);\n * // => ' abc '\n *\n * _.pad('abc', 8, '_-');\n * // => '_-abc_-_'\n *\n * _.pad('abc', 3);\n * // => 'abc'\n */\n function pad(string, length, chars) {\n string = toString(string);\n length = toInteger(length);\n\n var strLength = length ? stringSize(string) : 0;\n if (!length || strLength >= length) {\n return string;\n }\n var mid = (length - strLength) / 2;\n return (\n createPadding(nativeFloor(mid), chars) +\n string +\n createPadding(nativeCeil(mid), chars)\n );\n }\n\n /**\n * Pads `string` on the right side if it's shorter than `length`. Padding\n * characters are truncated if they exceed `length`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to pad.\n * @param {number} [length=0] The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padded string.\n * @example\n *\n * _.padEnd('abc', 6);\n * // => 'abc '\n *\n * _.padEnd('abc', 6, '_-');\n * // => 'abc_-_'\n *\n * _.padEnd('abc', 3);\n * // => 'abc'\n */\n function padEnd(string, length, chars) {\n string = toString(string);\n length = toInteger(length);\n\n var strLength = length ? stringSize(string) : 0;\n return (length && strLength < length)\n ? (string + createPadding(length - strLength, chars))\n : string;\n }\n\n /**\n * Pads `string` on the left side if it's shorter than `length`. Padding\n * characters are truncated if they exceed `length`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to pad.\n * @param {number} [length=0] The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padded string.\n * @example\n *\n * _.padStart('abc', 6);\n * // => ' abc'\n *\n * _.padStart('abc', 6, '_-');\n * // => '_-_abc'\n *\n * _.padStart('abc', 3);\n * // => 'abc'\n */\n function padStart(string, length, chars) {\n string = toString(string);\n length = toInteger(length);\n\n var strLength = length ? stringSize(string) : 0;\n return (length && strLength < length)\n ? (createPadding(length - strLength, chars) + string)\n : string;\n }\n\n /**\n * Converts `string` to an integer of the specified radix. If `radix` is\n * `undefined` or `0`, a `radix` of `10` is used unless `value` is a\n * hexadecimal, in which case a `radix` of `16` is used.\n *\n * **Note:** This method aligns with the\n * [ES5 implementation](https://es5.github.io/#x15.1.2.2) of `parseInt`.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category String\n * @param {string} string The string to convert.\n * @param {number} [radix=10] The radix to interpret `value` by.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.parseInt('08');\n * // => 8\n *\n * _.map(['6', '08', '10'], _.parseInt);\n * // => [6, 8, 10]\n */\n function parseInt(string, radix, guard) {\n if (guard || radix == null) {\n radix = 0;\n } else if (radix) {\n radix = +radix;\n }\n return nativeParseInt(toString(string).replace(reTrimStart, ''), radix || 0);\n }\n\n /**\n * Repeats the given string `n` times.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to repeat.\n * @param {number} [n=1] The number of times to repeat the string.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {string} Returns the repeated string.\n * @example\n *\n * _.repeat('*', 3);\n * // => '***'\n *\n * _.repeat('abc', 2);\n * // => 'abcabc'\n *\n * _.repeat('abc', 0);\n * // => ''\n */\n function repeat(string, n, guard) {\n if ((guard ? isIterateeCall(string, n, guard) : n === undefined)) {\n n = 1;\n } else {\n n = toInteger(n);\n }\n return baseRepeat(toString(string), n);\n }\n\n /**\n * Replaces matches for `pattern` in `string` with `replacement`.\n *\n * **Note:** This method is based on\n * [`String#replace`](https://mdn.io/String/replace).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to modify.\n * @param {RegExp|string} pattern The pattern to replace.\n * @param {Function|string} replacement The match replacement.\n * @returns {string} Returns the modified string.\n * @example\n *\n * _.replace('Hi Fred', 'Fred', 'Barney');\n * // => 'Hi Barney'\n */\n function replace() {\n var args = arguments,\n string = toString(args[0]);\n\n return args.length < 3 ? string : string.replace(args[1], args[2]);\n }\n\n /**\n * Converts `string` to\n * [snake case](https://en.wikipedia.org/wiki/Snake_case).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the snake cased string.\n * @example\n *\n * _.snakeCase('Foo Bar');\n * // => 'foo_bar'\n *\n * _.snakeCase('fooBar');\n * // => 'foo_bar'\n *\n * _.snakeCase('--FOO-BAR--');\n * // => 'foo_bar'\n */\n var snakeCase = createCompounder(function(result, word, index) {\n return result + (index ? '_' : '') + word.toLowerCase();\n });\n\n /**\n * Splits `string` by `separator`.\n *\n * **Note:** This method is based on\n * [`String#split`](https://mdn.io/String/split).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to split.\n * @param {RegExp|string} separator The separator pattern to split by.\n * @param {number} [limit] The length to truncate results to.\n * @returns {Array} Returns the string segments.\n * @example\n *\n * _.split('a-b-c', '-', 2);\n * // => ['a', 'b']\n */\n function split(string, separator, limit) {\n if (limit && typeof limit != 'number' && isIterateeCall(string, separator, limit)) {\n separator = limit = undefined;\n }\n limit = limit === undefined ? MAX_ARRAY_LENGTH : limit >>> 0;\n if (!limit) {\n return [];\n }\n string = toString(string);\n if (string && (\n typeof separator == 'string' ||\n (separator != null && !isRegExp(separator))\n )) {\n separator = baseToString(separator);\n if (!separator && hasUnicode(string)) {\n return castSlice(stringToArray(string), 0, limit);\n }\n }\n return string.split(separator, limit);\n }\n\n /**\n * Converts `string` to\n * [start case](https://en.wikipedia.org/wiki/Letter_case#Stylistic_or_specialised_usage).\n *\n * @static\n * @memberOf _\n * @since 3.1.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the start cased string.\n * @example\n *\n * _.startCase('--foo-bar--');\n * // => 'Foo Bar'\n *\n * _.startCase('fooBar');\n * // => 'Foo Bar'\n *\n * _.startCase('__FOO_BAR__');\n * // => 'FOO BAR'\n */\n var startCase = createCompounder(function(result, word, index) {\n return result + (index ? ' ' : '') + upperFirst(word);\n });\n\n /**\n * Checks if `string` starts with the given target string.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to inspect.\n * @param {string} [target] The string to search for.\n * @param {number} [position=0] The position to search from.\n * @returns {boolean} Returns `true` if `string` starts with `target`,\n * else `false`.\n * @example\n *\n * _.startsWith('abc', 'a');\n * // => true\n *\n * _.startsWith('abc', 'b');\n * // => false\n *\n * _.startsWith('abc', 'b', 1);\n * // => true\n */\n function startsWith(string, target, position) {\n string = toString(string);\n position = position == null\n ? 0\n : baseClamp(toInteger(position), 0, string.length);\n\n target = baseToString(target);\n return string.slice(position, position + target.length) == target;\n }\n\n /**\n * Creates a compiled template function that can interpolate data properties\n * in \"interpolate\" delimiters, HTML-escape interpolated data properties in\n * \"escape\" delimiters, and execute JavaScript in \"evaluate\" delimiters. Data\n * properties may be accessed as free variables in the template. If a setting\n * object is given, it takes precedence over `_.templateSettings` values.\n *\n * **Note:** In the development build `_.template` utilizes\n * [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl)\n * for easier debugging.\n *\n * For more information on precompiling templates see\n * [lodash's custom builds documentation](https://lodash.com/custom-builds).\n *\n * For more information on Chrome extension sandboxes see\n * [Chrome's extensions documentation](https://developer.chrome.com/extensions/sandboxingEval).\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category String\n * @param {string} [string=''] The template string.\n * @param {Object} [options={}] The options object.\n * @param {RegExp} [options.escape=_.templateSettings.escape]\n * The HTML \"escape\" delimiter.\n * @param {RegExp} [options.evaluate=_.templateSettings.evaluate]\n * The \"evaluate\" delimiter.\n * @param {Object} [options.imports=_.templateSettings.imports]\n * An object to import into the template as free variables.\n * @param {RegExp} [options.interpolate=_.templateSettings.interpolate]\n * The \"interpolate\" delimiter.\n * @param {string} [options.sourceURL='lodash.templateSources[n]']\n * The sourceURL of the compiled template.\n * @param {string} [options.variable='obj']\n * The data object variable name.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the compiled template function.\n * @example\n *\n * // Use the \"interpolate\" delimiter to create a compiled template.\n * var compiled = _.template('hello <%= user %>!');\n * compiled({ 'user': 'fred' });\n * // => 'hello fred!'\n *\n * // Use the HTML \"escape\" delimiter to escape data property values.\n * var compiled = _.template('<%- value %>');\n * compiled({ 'value': '\r\n\r\n\r\n","import mod from \"-!../../../../src/web/assets/admintable/node_modules/vue-loader/lib/index.js??vue-loader-options!./Vuetable.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../src/web/assets/admintable/node_modules/vue-loader/lib/index.js??vue-loader-options!./Vuetable.vue?vue&type=script&lang=js&\"","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent (\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier, /* server only */\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n )\n }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","import { render, staticRenderFns } from \"./Vuetable.vue?vue&type=template&id=5bfa05b0&scoped=true&\"\nimport script from \"./Vuetable.vue?vue&type=script&lang=js&\"\nexport * from \"./Vuetable.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Vuetable.vue?vue&type=style&index=0&id=5bfa05b0&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../src/web/assets/admintable/node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5bfa05b0\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.isFixedHeader)?_c('div',[_c('div',{staticClass:\"vuetable-head-wrapper\"},[_c('table',{class:['vuetable', _vm.css.tableClass, _vm.css.tableHeaderClass]},[_c('thead',[_c('tr',[_vm._l((_vm.tableFields),function(field,fieldIndex){return [(field.visible)?[(_vm.isSpecialField(field.name))?[(_vm.extractName(field.name) == '__checkbox')?_c('th',{key:fieldIndex,class:['vuetable-th-checkbox-'+_vm.trackBy, field.titleClass],style:({width: field.width})},[_c('input',{attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.checkCheckboxesState(field.name)},on:{\"change\":function($event){return _vm.toggleAllCheckboxes(field.name, $event)}}})]):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__component')?_c('th',{key:fieldIndex,class:['vuetable-th-component-'+_vm.trackBy, field.titleClass, _vm.sortClass(field), {'sortable': _vm.isSortable(field)}],style:({width: field.width}),domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))},on:{\"click\":function($event){return _vm.orderBy(field, $event)}}}):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__slot')?_c('th',{key:fieldIndex,class:['vuetable-th-slot-'+_vm.extractArgs(field.name), field.titleClass, _vm.sortClass(field), {'sortable': _vm.isSortable(field)}],style:({width: field.width}),domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))},on:{\"click\":function($event){return _vm.orderBy(field, $event)}}}):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__sequence')?_c('th',{key:fieldIndex,class:['vuetable-th-sequence', field.titleClass || ''],style:({width: field.width}),domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))}}):_vm._e(),_vm._v(\" \"),(_vm.notIn(_vm.extractName(field.name), ['__sequence', '__checkbox', '__component', '__slot']))?_c('th',{key:fieldIndex,class:['vuetable-th-'+field.name, field.titleClass || ''],style:({width: field.width}),domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))}}):_vm._e()]:[_c('th',{key:fieldIndex,class:['vuetable-th-'+field.name, field.titleClass, _vm.sortClass(field), {'sortable': _vm.isSortable(field)}],style:({width: field.width}),attrs:{\"id\":'_' + field.name},domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))},on:{\"click\":function($event){return _vm.orderBy(field, $event)}}})]]:_vm._e()]}),_vm._v(\" \"),(_vm.scrollVisible)?_c('th',{staticClass:\"vuetable-gutter-col\",style:({width: _vm.scrollBarWidth})}):_vm._e()],2)])])]),_vm._v(\" \"),_c('div',{staticClass:\"vuetable-body-wrapper\",style:({height: _vm.tableHeight})},[_c('table',{class:['vuetable', _vm.css.tableClass, _vm.css.tableBodyClass]},[_c('colgroup',[_vm._l((_vm.tableFields),function(field,fieldIndex){return [(field.visible)?[_c('col',{key:fieldIndex,class:['vuetable-th-'+field.name, field.titleClass],style:({width: field.width}),attrs:{\"id\":'_col_' + field.name}})]:_vm._e()]})],2),_vm._v(\" \"),_c('tbody',{staticClass:\"vuetable-body\"},[_vm._l((_vm.tableData),function(item,itemIndex){return [_c('tr',{key:itemIndex,class:_vm.onRowClass(item, itemIndex),attrs:{\"item-index\":itemIndex,\"render\":_vm.onRowChanged(item)},on:{\"click\":function($event){return _vm.onRowClicked(item, $event)},\"dblclick\":function($event){return _vm.onRowDoubleClicked(item, $event)}}},[_vm._l((_vm.tableFields),function(field,fieldIndex){return [(field.visible)?[(_vm.isSpecialField(field.name))?[(_vm.extractName(field.name) == '__sequence')?_c('td',{key:fieldIndex,class:['vuetable-sequence', field.dataClass],domProps:{\"innerHTML\":_vm._s(_vm.renderSequence(itemIndex))}}):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__handle')?_c('td',{key:fieldIndex,class:['vuetable-handle', field.dataClass],domProps:{\"innerHTML\":_vm._s(_vm.renderIconTag(['handle-icon', _vm.css.handleIcon]))}}):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__checkbox')?_c('td',{key:fieldIndex,class:['vuetable-checkboxes', field.dataClass]},[_c('input',{attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.rowSelected(item, field.name)},on:{\"change\":function($event){return _vm.toggleCheckbox(item, field.name, $event)}}})]):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) === '__component')?_c('td',{key:fieldIndex,class:['vuetable-component', field.dataClass]},[_c(_vm.extractArgs(field.name),{tag:\"component\",attrs:{\"row-data\":item,\"row-index\":itemIndex,\"row-field\":field.sortField}})],1):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) === '__slot')?_c('td',{key:fieldIndex,class:['vuetable-slot', field.dataClass]},[_vm._t(_vm.extractArgs(field.name),null,{\"rowData\":item,\"rowIndex\":itemIndex,\"rowField\":field.sortField})],2):_vm._e()]:[_c('td',{key:fieldIndex,class:field.dataClass,domProps:{\"innerHTML\":_vm._s(_vm.renderNormalField(field, item))},on:{\"click\":function($event){return _vm.onCellClicked(item, field, $event)},\"dblclick\":function($event){return _vm.onCellDoubleClicked(item, field, $event)},\"contextmenu\":function($event){return _vm.onCellRightClicked(item, field, $event)}}})]]:_vm._e()]})],2),_vm._v(\" \"),(_vm.useDetailRow)?[_c('transition',{key:itemIndex,attrs:{\"name\":_vm.detailRowTransition}},[(_vm.isVisibleDetailRow(item[_vm.trackBy]))?_c('tr',{class:[_vm.css.detailRowClass],on:{\"click\":function($event){return _vm.onDetailRowClick(item, $event)}}},[_c('td',{attrs:{\"colspan\":_vm.countVisibleFields}},[_c(_vm.detailRowComponent,{tag:\"component\",attrs:{\"row-data\":item,\"row-index\":itemIndex}})],1)]):_vm._e()])]:_vm._e()]}),_vm._v(\" \"),(_vm.displayEmptyDataRow)?[_c('tr',[_c('td',{staticClass:\"vuetable-empty-result\",attrs:{\"colspan\":_vm.countVisibleFields},domProps:{\"innerHTML\":_vm._s(_vm.noDataTemplate)}})])]:_vm._e(),_vm._v(\" \"),(_vm.lessThanMinRows)?_vm._l((_vm.blankRows),function(i){return _c('tr',{key:i,staticClass:\"blank-row\"},[_vm._l((_vm.tableFields),function(field,fieldIndex){return [(field.visible)?_c('td',{key:fieldIndex},[_vm._v(\" \")]):_vm._e()]})],2)}):_vm._e()],2)])])]):_c('table',{class:['vuetable', _vm.css.tableClass]},[_c('thead',[_c('tr',[_vm._l((_vm.tableFields),function(field,fieldIndex){return [(field.visible)?[(_vm.isSpecialField(field.name))?[(_vm.extractName(field.name) == '__checkbox')?_c('th',{key:fieldIndex,class:['vuetable-th-checkbox-'+_vm.trackBy, field.titleClass],style:({width: field.width})},[_c('input',{attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.checkCheckboxesState(field.name)},on:{\"change\":function($event){return _vm.toggleAllCheckboxes(field.name, $event)}}})]):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__component')?_c('th',{key:fieldIndex,class:['vuetable-th-component-'+_vm.trackBy, field.titleClass, _vm.sortClass(field), {'sortable': _vm.isSortable(field)}],style:({width: field.width}),domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))},on:{\"click\":function($event){return _vm.orderBy(field, $event)}}}):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__slot')?_c('th',{key:fieldIndex,class:['vuetable-th-slot-'+_vm.extractArgs(field.name), field.titleClass, _vm.sortClass(field), {'sortable': _vm.isSortable(field)}],style:({width: field.width}),domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))},on:{\"click\":function($event){return _vm.orderBy(field, $event)}}}):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__sequence')?_c('th',{key:fieldIndex,class:['vuetable-th-sequence', field.titleClass || '', _vm.sortClass(field)],style:({width: field.width}),domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))}}):_vm._e(),_vm._v(\" \"),(_vm.notIn(_vm.extractName(field.name), ['__sequence', '__checkbox', '__component', '__slot']))?_c('th',{key:fieldIndex,class:['vuetable-th-'+field.name, field.titleClass || '', _vm.sortClass(field)],style:({width: field.width}),domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))}}):_vm._e()]:[_c('th',{key:fieldIndex,class:['vuetable-th-'+field.name, field.titleClass, _vm.sortClass(field), {'sortable': _vm.isSortable(field)}],style:({width: field.width}),attrs:{\"id\":'_' + field.name},domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))},on:{\"click\":function($event){return _vm.orderBy(field, $event)}}})]]:_vm._e()]})],2)]),_vm._v(\" \"),_c('tbody',{staticClass:\"vuetable-body\"},[_vm._l((_vm.tableData),function(item,itemIndex){return [_c('tr',{key:itemIndex,class:_vm.onRowClass(item, itemIndex),attrs:{\"item-index\":itemIndex,\"render\":_vm.onRowChanged(item)},on:{\"dblclick\":function($event){return _vm.onRowDoubleClicked(item, $event)},\"click\":function($event){return _vm.onRowClicked(item, $event)}}},[_vm._l((_vm.tableFields),function(field,fieldIndex){return [(field.visible)?[(_vm.isSpecialField(field.name))?[(_vm.extractName(field.name) == '__sequence')?_c('td',{key:fieldIndex,class:['vuetable-sequence', field.dataClass],domProps:{\"innerHTML\":_vm._s(_vm.renderSequence(itemIndex))}}):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__handle')?_c('td',{key:fieldIndex,class:['vuetable-handle', field.dataClass],domProps:{\"innerHTML\":_vm._s(_vm.renderIconTag(['handle-icon', _vm.css.handleIcon]))}}):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__checkbox')?_c('td',{key:fieldIndex,class:['vuetable-checkboxes', field.dataClass]},[_c('input',{attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.rowSelected(item, field.name)},on:{\"change\":function($event){return _vm.toggleCheckbox(item, field.name, $event)}}})]):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) === '__component')?_c('td',{key:fieldIndex,class:['vuetable-component', field.dataClass]},[_c(_vm.extractArgs(field.name),{tag:\"component\",attrs:{\"row-data\":item,\"row-index\":itemIndex,\"row-field\":field.sortField}})],1):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) === '__slot')?_c('td',{key:fieldIndex,class:['vuetable-slot', field.dataClass]},[_vm._t(_vm.extractArgs(field.name),null,{\"rowData\":item,\"rowIndex\":itemIndex,\"rowField\":field.sortField})],2):_vm._e()]:[(_vm.hasCallback(field))?_c('td',{key:fieldIndex,class:field.dataClass,domProps:{\"innerHTML\":_vm._s(_vm.callCallback(field, item))},on:{\"click\":function($event){return _vm.onCellClicked(item, field, $event)},\"dblclick\":function($event){return _vm.onCellDoubleClicked(item, field, $event)},\"contextmenu\":function($event){return _vm.onCellRightClicked(item, field, $event)}}}):_c('td',{key:fieldIndex,class:field.dataClass,domProps:{\"innerHTML\":_vm._s(_vm.getObjectValue(item, field.name, ''))},on:{\"click\":function($event){return _vm.onCellClicked(item, field, $event)},\"dblclick\":function($event){return _vm.onCellDoubleClicked(item, field, $event)},\"contextmenu\":function($event){return _vm.onCellRightClicked(item, field, $event)}}})]]:_vm._e()]})],2),_vm._v(\" \"),(_vm.useDetailRow)?[_c('transition',{key:itemIndex,attrs:{\"name\":_vm.detailRowTransition}},[(_vm.isVisibleDetailRow(item[_vm.trackBy]))?_c('tr',{class:[_vm.css.detailRowClass],on:{\"click\":function($event){return _vm.onDetailRowClick(item, $event)}}},[_c('td',{attrs:{\"colspan\":_vm.countVisibleFields}},[_c(_vm.detailRowComponent,{tag:\"component\",attrs:{\"row-data\":item,\"row-index\":itemIndex}})],1)]):_vm._e()])]:_vm._e()]}),_vm._v(\" \"),(_vm.displayEmptyDataRow)?[_c('tr',[_c('td',{staticClass:\"vuetable-empty-result\",attrs:{\"colspan\":_vm.countVisibleFields},domProps:{\"innerHTML\":_vm._s(_vm.noDataTemplate)}})])]:_vm._e(),_vm._v(\" \"),(_vm.lessThanMinRows)?_vm._l((_vm.blankRows),function(i){return _c('tr',{key:i,staticClass:\"blank-row\"},[_vm._l((_vm.tableFields),function(field,fieldIndex){return [(field.visible)?_c('td',{key:fieldIndex},[_vm._v(\" \")]):_vm._e()]})],2)}):_vm._e()],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../src/web/assets/admintable/node_modules/babel-loader/lib/index.js??clonedRuleSet-2.use!../../../../src/web/assets/admintable/node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminTablePagination.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../src/web/assets/admintable/node_modules/babel-loader/lib/index.js??clonedRuleSet-2.use!../../../../src/web/assets/admintable/node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminTablePagination.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","var render, staticRenderFns\nimport script from \"./VuetablePaginationMixin.vue?vue&type=script&lang=js&\"\nexport * from \"./VuetablePaginationMixin.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../src/web/assets/admintable/node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\r\n","import { render, staticRenderFns } from \"./AdminTablePagination.vue?vue&type=template&id=53f2bb54&\"\nimport script from \"./AdminTablePagination.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminTablePagination.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AdminTablePagination.vue?vue&type=style&index=0&land=scss&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../src/web/assets/admintable/node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.tablePagination)?_c('div',{staticClass:\"vue-admin-table-pagination flex pagination\"},[_c('div',{staticClass:\"page-link prev-page\",class:[_vm.isOnFirstPage ? 'disabled' : ''],attrs:{\"title\":\"Previous Page\"},on:{\"click\":function($event){return _vm.loadPage('prev')}}}),_vm._v(\" \"),_c('div',{staticClass:\"page-link next-page\",class:[_vm.isOnLastPage ? 'disabled' : ''],attrs:{\"title\":\"Next Page\"},on:{\"click\":function($event){return _vm.loadPage('next')}}}),_vm._v(\" \"),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.tablePagination),expression:\"tablePagination\"}],staticClass:\"page-info\"},[_vm._v(_vm._s(_vm.paginationLabel))])]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./AdminTableDeleteButton.vue?vue&type=template&id=17f4cad8&scoped=true&\"\nimport script from \"./AdminTableDeleteButton.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminTableDeleteButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../src/web/assets/admintable/node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"17f4cad8\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('a',{staticClass:\"delete icon\",class:{disabled: _vm.disabled},attrs:{\"title\":_vm._f(\"t\")('Delete','app'),\"role\":\"button\",\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.handleClick.apply(null, arguments)}}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../src/web/assets/admintable/node_modules/babel-loader/lib/index.js??clonedRuleSet-2.use!../../../../src/web/assets/admintable/node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminTableCheckbox.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../src/web/assets/admintable/node_modules/babel-loader/lib/index.js??clonedRuleSet-2.use!../../../../src/web/assets/admintable/node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminTableCheckbox.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./AdminTableCheckbox.vue?vue&type=template&id=1bbfb992&scoped=true&\"\nimport script from \"./AdminTableCheckbox.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminTableCheckbox.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AdminTableCheckbox.vue?vue&type=style&index=0&id=1bbfb992&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../src/web/assets/admintable/node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1bbfb992\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"checkbox\",class:{\n checked: _vm.isChecked,\n 'table-disabled-checkbox': !_vm.status,\n },attrs:{\"title\":_vm.title},on:{\"click\":function($event){$event.preventDefault();return _vm.handleClick.apply(null, arguments)}}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./AdminTableActionButton.vue?vue&type=template&id=48f15ca4&scoped=true&\"\nimport script from \"./AdminTableActionButton.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminTableActionButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../src/web/assets/admintable/node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"48f15ca4\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('form',{ref:\"form\",attrs:{\"method\":\"post\"}},[_c('input',{attrs:{\"type\":\"hidden\",\"name\":_vm.tokenName},domProps:{\"value\":_vm.tokenValue}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"action\"},domProps:{\"value\":_vm.action}}),_vm._v(\" \"),(_vm.param)?_c('input',{attrs:{\"type\":\"hidden\",\"name\":_vm.param},domProps:{\"value\":_vm.value}}):_vm._e(),_vm._v(\" \"),_vm._l((_vm.ids),function(id,index){return _c('input',{key:index,attrs:{\"type\":\"hidden\",\"name\":\"ids[]\"},domProps:{\"value\":id}})}),_vm._v(\" \"),_c(_vm.isMenuButton ? 'div' : 'button',_vm._g({ref:\"button\",tag:\"component\",staticClass:\"btn\",class:{\n menubtn: _vm.isMenuButton,\n error: _vm.error,\n disabled: !_vm.enabled || _vm.buttonDisabled,\n },attrs:{\"data-icon\":_vm.icon,\"disabled\":_vm.buttonDisabled,\"type\":_vm.enabled && !_vm.isMenuButton && !_vm.ajax ? 'submit' : null}},\n _vm.enabled && !_vm.isMenuButton && _vm.ajax\n ? {click: _vm.handleClick(_vm.param, _vm.value, _vm.action, _vm.ajax)}\n : {}\n ),[_vm._v(_vm._s(_vm.label))]),_vm._v(\" \"),(_vm.isMenuButton)?_c('div',{staticClass:\"menu\"},[_vm._l((_vm.actionsList),function(actList,ind){return [_c('ul',{key:ind,staticClass:\"padded\"},_vm._l((actList),function(act,index){return _c('li',{key:index},[_c('a',{class:{\n error: act.error !== undefined && act.error,\n disabled:\n act.allowMultiple !== undefined &&\n !act.allowMultiple &&\n _vm.hasMultipleSelected,\n },attrs:{\"href\":\"#\",\"data-param\":act.param,\"data-value\":act.value,\"data-ajax\":act.ajax},on:{\"click\":function($event){$event.preventDefault();!(\n act.allowMultiple !== undefined &&\n !act.allowMultiple &&\n _vm.hasMultipleSelected\n )\n ? _vm.handleClick(act.param, act.value, act.action, act.ajax)\n : null}}},[(act.status)?_c('span',{class:'status ' + act.status}):_vm._e(),_vm._v(_vm._s(act.label)+\"\\n \")])])}),0),_vm._v(\" \"),(\n _vm.actionsList.length > 1 && ind != _vm.actionsList.length - 1 && ind != 0\n )?_c('hr',{key:ind}):_vm._e()]})],2):_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../src/web/assets/admintable/node_modules/babel-loader/lib/index.js??clonedRuleSet-2.use!../../../../src/web/assets/admintable/node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminTableDetailRow.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../src/web/assets/admintable/node_modules/babel-loader/lib/index.js??clonedRuleSet-2.use!../../../../src/web/assets/admintable/node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminTableDetailRow.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminTableDetailRow.vue?vue&type=template&id=759b1d62&\"\nimport script from \"./AdminTableDetailRow.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminTableDetailRow.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AdminTableDetailRow.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../src/web/assets/admintable/node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(\n _vm.rowData.detail.content &&\n (!_vm.rowData.detail.showAsList || _vm.rowData.detail.showAsList === undefined)\n )?_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.rowData.detail.content)}}):_vm._e(),_vm._v(\" \"),(_vm.rowData.detail.content && _vm.rowData.detail.showAsList)?_c('div',_vm._l((_vm.listKeys),function(key){return _c('div',{key:key,staticClass:\"order-flex detail-list\",class:{'detail-list-bg': _vm.index % 2}},[_c('div',{staticClass:\"detail-list-key\"},[_vm._v(_vm._s(key)+\":\")]),_vm._v(\" \"),_c('div',{staticClass:\"detail-list-value\"},[_vm._v(_vm._s(_vm.list[key]))])])}),0):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./AdminTableButton.vue?vue&type=template&id=0235bfad&scoped=true&\"\nimport script from \"./AdminTableButton.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminTableButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../src/web/assets/admintable/node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0235bfad\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('a',{ref:\"button\",staticClass:\"btn\",class:_vm.buttonClass,attrs:{\"href\":_vm.linkHref,\"data-icon\":_vm.icon},on:{\"click\":_vm.handleClick}},[_vm._v(_vm._s(_vm.label))])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./AdminTableCopyTextButton.vue?vue&type=template&id=b82d2fda&scoped=true&\"\nimport script from \"./AdminTableCopyTextButton.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminTableCopyTextButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../src/web/assets/admintable/node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"b82d2fda\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div')}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**!\n * Sortable 1.15.0\n * @author\tRubaXa \n * @author\towenm \n * @license MIT\n */\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n\n if (enumerableOnly) {\n symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n }\n\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\n\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nvar version = \"1.15.0\";\n\nfunction userAgent(pattern) {\n if (typeof window !== 'undefined' && window.navigator) {\n return !! /*@__PURE__*/navigator.userAgent.match(pattern);\n }\n}\n\nvar IE11OrLess = userAgent(/(?:Trident.*rv[ :]?11\\.|msie|iemobile|Windows Phone)/i);\nvar Edge = userAgent(/Edge/i);\nvar FireFox = userAgent(/firefox/i);\nvar Safari = userAgent(/safari/i) && !userAgent(/chrome/i) && !userAgent(/android/i);\nvar IOS = userAgent(/iP(ad|od|hone)/i);\nvar ChromeForAndroid = userAgent(/chrome/i) && userAgent(/android/i);\n\nvar captureMode = {\n capture: false,\n passive: false\n};\n\nfunction on(el, event, fn) {\n el.addEventListener(event, fn, !IE11OrLess && captureMode);\n}\n\nfunction off(el, event, fn) {\n el.removeEventListener(event, fn, !IE11OrLess && captureMode);\n}\n\nfunction matches(\n/**HTMLElement*/\nel,\n/**String*/\nselector) {\n if (!selector) return;\n selector[0] === '>' && (selector = selector.substring(1));\n\n if (el) {\n try {\n if (el.matches) {\n return el.matches(selector);\n } else if (el.msMatchesSelector) {\n return el.msMatchesSelector(selector);\n } else if (el.webkitMatchesSelector) {\n return el.webkitMatchesSelector(selector);\n }\n } catch (_) {\n return false;\n }\n }\n\n return false;\n}\n\nfunction getParentOrHost(el) {\n return el.host && el !== document && el.host.nodeType ? el.host : el.parentNode;\n}\n\nfunction closest(\n/**HTMLElement*/\nel,\n/**String*/\nselector,\n/**HTMLElement*/\nctx, includeCTX) {\n if (el) {\n ctx = ctx || document;\n\n do {\n if (selector != null && (selector[0] === '>' ? el.parentNode === ctx && matches(el, selector) : matches(el, selector)) || includeCTX && el === ctx) {\n return el;\n }\n\n if (el === ctx) break;\n /* jshint boss:true */\n } while (el = getParentOrHost(el));\n }\n\n return null;\n}\n\nvar R_SPACE = /\\s+/g;\n\nfunction toggleClass(el, name, state) {\n if (el && name) {\n if (el.classList) {\n el.classList[state ? 'add' : 'remove'](name);\n } else {\n var className = (' ' + el.className + ' ').replace(R_SPACE, ' ').replace(' ' + name + ' ', ' ');\n el.className = (className + (state ? ' ' + name : '')).replace(R_SPACE, ' ');\n }\n }\n}\n\nfunction css(el, prop, val) {\n var style = el && el.style;\n\n if (style) {\n if (val === void 0) {\n if (document.defaultView && document.defaultView.getComputedStyle) {\n val = document.defaultView.getComputedStyle(el, '');\n } else if (el.currentStyle) {\n val = el.currentStyle;\n }\n\n return prop === void 0 ? val : val[prop];\n } else {\n if (!(prop in style) && prop.indexOf('webkit') === -1) {\n prop = '-webkit-' + prop;\n }\n\n style[prop] = val + (typeof val === 'string' ? '' : 'px');\n }\n }\n}\n\nfunction matrix(el, selfOnly) {\n var appliedTransforms = '';\n\n if (typeof el === 'string') {\n appliedTransforms = el;\n } else {\n do {\n var transform = css(el, 'transform');\n\n if (transform && transform !== 'none') {\n appliedTransforms = transform + ' ' + appliedTransforms;\n }\n /* jshint boss:true */\n\n } while (!selfOnly && (el = el.parentNode));\n }\n\n var matrixFn = window.DOMMatrix || window.WebKitCSSMatrix || window.CSSMatrix || window.MSCSSMatrix;\n /*jshint -W056 */\n\n return matrixFn && new matrixFn(appliedTransforms);\n}\n\nfunction find(ctx, tagName, iterator) {\n if (ctx) {\n var list = ctx.getElementsByTagName(tagName),\n i = 0,\n n = list.length;\n\n if (iterator) {\n for (; i < n; i++) {\n iterator(list[i], i);\n }\n }\n\n return list;\n }\n\n return [];\n}\n\nfunction getWindowScrollingElement() {\n var scrollingElement = document.scrollingElement;\n\n if (scrollingElement) {\n return scrollingElement;\n } else {\n return document.documentElement;\n }\n}\n/**\n * Returns the \"bounding client rect\" of given element\n * @param {HTMLElement} el The element whose boundingClientRect is wanted\n * @param {[Boolean]} relativeToContainingBlock Whether the rect should be relative to the containing block of (including) the container\n * @param {[Boolean]} relativeToNonStaticParent Whether the rect should be relative to the relative parent of (including) the contaienr\n * @param {[Boolean]} undoScale Whether the container's scale() should be undone\n * @param {[HTMLElement]} container The parent the element will be placed in\n * @return {Object} The boundingClientRect of el, with specified adjustments\n */\n\n\nfunction getRect(el, relativeToContainingBlock, relativeToNonStaticParent, undoScale, container) {\n if (!el.getBoundingClientRect && el !== window) return;\n var elRect, top, left, bottom, right, height, width;\n\n if (el !== window && el.parentNode && el !== getWindowScrollingElement()) {\n elRect = el.getBoundingClientRect();\n top = elRect.top;\n left = elRect.left;\n bottom = elRect.bottom;\n right = elRect.right;\n height = elRect.height;\n width = elRect.width;\n } else {\n top = 0;\n left = 0;\n bottom = window.innerHeight;\n right = window.innerWidth;\n height = window.innerHeight;\n width = window.innerWidth;\n }\n\n if ((relativeToContainingBlock || relativeToNonStaticParent) && el !== window) {\n // Adjust for translate()\n container = container || el.parentNode; // solves #1123 (see: https://stackoverflow.com/a/37953806/6088312)\n // Not needed on <= IE11\n\n if (!IE11OrLess) {\n do {\n if (container && container.getBoundingClientRect && (css(container, 'transform') !== 'none' || relativeToNonStaticParent && css(container, 'position') !== 'static')) {\n var containerRect = container.getBoundingClientRect(); // Set relative to edges of padding box of container\n\n top -= containerRect.top + parseInt(css(container, 'border-top-width'));\n left -= containerRect.left + parseInt(css(container, 'border-left-width'));\n bottom = top + elRect.height;\n right = left + elRect.width;\n break;\n }\n /* jshint boss:true */\n\n } while (container = container.parentNode);\n }\n }\n\n if (undoScale && el !== window) {\n // Adjust for scale()\n var elMatrix = matrix(container || el),\n scaleX = elMatrix && elMatrix.a,\n scaleY = elMatrix && elMatrix.d;\n\n if (elMatrix) {\n top /= scaleY;\n left /= scaleX;\n width /= scaleX;\n height /= scaleY;\n bottom = top + height;\n right = left + width;\n }\n }\n\n return {\n top: top,\n left: left,\n bottom: bottom,\n right: right,\n width: width,\n height: height\n };\n}\n/**\n * Checks if a side of an element is scrolled past a side of its parents\n * @param {HTMLElement} el The element who's side being scrolled out of view is in question\n * @param {String} elSide Side of the element in question ('top', 'left', 'right', 'bottom')\n * @param {String} parentSide Side of the parent in question ('top', 'left', 'right', 'bottom')\n * @return {HTMLElement} The parent scroll element that the el's side is scrolled past, or null if there is no such element\n */\n\n\nfunction isScrolledPast(el, elSide, parentSide) {\n var parent = getParentAutoScrollElement(el, true),\n elSideVal = getRect(el)[elSide];\n /* jshint boss:true */\n\n while (parent) {\n var parentSideVal = getRect(parent)[parentSide],\n visible = void 0;\n\n if (parentSide === 'top' || parentSide === 'left') {\n visible = elSideVal >= parentSideVal;\n } else {\n visible = elSideVal <= parentSideVal;\n }\n\n if (!visible) return parent;\n if (parent === getWindowScrollingElement()) break;\n parent = getParentAutoScrollElement(parent, false);\n }\n\n return false;\n}\n/**\n * Gets nth child of el, ignoring hidden children, sortable's elements (does not ignore clone if it's visible)\n * and non-draggable elements\n * @param {HTMLElement} el The parent element\n * @param {Number} childNum The index of the child\n * @param {Object} options Parent Sortable's options\n * @return {HTMLElement} The child at index childNum, or null if not found\n */\n\n\nfunction getChild(el, childNum, options, includeDragEl) {\n var currentChild = 0,\n i = 0,\n children = el.children;\n\n while (i < children.length) {\n if (children[i].style.display !== 'none' && children[i] !== Sortable.ghost && (includeDragEl || children[i] !== Sortable.dragged) && closest(children[i], options.draggable, el, false)) {\n if (currentChild === childNum) {\n return children[i];\n }\n\n currentChild++;\n }\n\n i++;\n }\n\n return null;\n}\n/**\n * Gets the last child in the el, ignoring ghostEl or invisible elements (clones)\n * @param {HTMLElement} el Parent element\n * @param {selector} selector Any other elements that should be ignored\n * @return {HTMLElement} The last child, ignoring ghostEl\n */\n\n\nfunction lastChild(el, selector) {\n var last = el.lastElementChild;\n\n while (last && (last === Sortable.ghost || css(last, 'display') === 'none' || selector && !matches(last, selector))) {\n last = last.previousElementSibling;\n }\n\n return last || null;\n}\n/**\n * Returns the index of an element within its parent for a selected set of\n * elements\n * @param {HTMLElement} el\n * @param {selector} selector\n * @return {number}\n */\n\n\nfunction index(el, selector) {\n var index = 0;\n\n if (!el || !el.parentNode) {\n return -1;\n }\n /* jshint boss:true */\n\n\n while (el = el.previousElementSibling) {\n if (el.nodeName.toUpperCase() !== 'TEMPLATE' && el !== Sortable.clone && (!selector || matches(el, selector))) {\n index++;\n }\n }\n\n return index;\n}\n/**\n * Returns the scroll offset of the given element, added with all the scroll offsets of parent elements.\n * The value is returned in real pixels.\n * @param {HTMLElement} el\n * @return {Array} Offsets in the format of [left, top]\n */\n\n\nfunction getRelativeScrollOffset(el) {\n var offsetLeft = 0,\n offsetTop = 0,\n winScroller = getWindowScrollingElement();\n\n if (el) {\n do {\n var elMatrix = matrix(el),\n scaleX = elMatrix.a,\n scaleY = elMatrix.d;\n offsetLeft += el.scrollLeft * scaleX;\n offsetTop += el.scrollTop * scaleY;\n } while (el !== winScroller && (el = el.parentNode));\n }\n\n return [offsetLeft, offsetTop];\n}\n/**\n * Returns the index of the object within the given array\n * @param {Array} arr Array that may or may not hold the object\n * @param {Object} obj An object that has a key-value pair unique to and identical to a key-value pair in the object you want to find\n * @return {Number} The index of the object in the array, or -1\n */\n\n\nfunction indexOfObject(arr, obj) {\n for (var i in arr) {\n if (!arr.hasOwnProperty(i)) continue;\n\n for (var key in obj) {\n if (obj.hasOwnProperty(key) && obj[key] === arr[i][key]) return Number(i);\n }\n }\n\n return -1;\n}\n\nfunction getParentAutoScrollElement(el, includeSelf) {\n // skip to window\n if (!el || !el.getBoundingClientRect) return getWindowScrollingElement();\n var elem = el;\n var gotSelf = false;\n\n do {\n // we don't need to get elem css if it isn't even overflowing in the first place (performance)\n if (elem.clientWidth < elem.scrollWidth || elem.clientHeight < elem.scrollHeight) {\n var elemCSS = css(elem);\n\n if (elem.clientWidth < elem.scrollWidth && (elemCSS.overflowX == 'auto' || elemCSS.overflowX == 'scroll') || elem.clientHeight < elem.scrollHeight && (elemCSS.overflowY == 'auto' || elemCSS.overflowY == 'scroll')) {\n if (!elem.getBoundingClientRect || elem === document.body) return getWindowScrollingElement();\n if (gotSelf || includeSelf) return elem;\n gotSelf = true;\n }\n }\n /* jshint boss:true */\n\n } while (elem = elem.parentNode);\n\n return getWindowScrollingElement();\n}\n\nfunction extend(dst, src) {\n if (dst && src) {\n for (var key in src) {\n if (src.hasOwnProperty(key)) {\n dst[key] = src[key];\n }\n }\n }\n\n return dst;\n}\n\nfunction isRectEqual(rect1, rect2) {\n return Math.round(rect1.top) === Math.round(rect2.top) && Math.round(rect1.left) === Math.round(rect2.left) && Math.round(rect1.height) === Math.round(rect2.height) && Math.round(rect1.width) === Math.round(rect2.width);\n}\n\nvar _throttleTimeout;\n\nfunction throttle(callback, ms) {\n return function () {\n if (!_throttleTimeout) {\n var args = arguments,\n _this = this;\n\n if (args.length === 1) {\n callback.call(_this, args[0]);\n } else {\n callback.apply(_this, args);\n }\n\n _throttleTimeout = setTimeout(function () {\n _throttleTimeout = void 0;\n }, ms);\n }\n };\n}\n\nfunction cancelThrottle() {\n clearTimeout(_throttleTimeout);\n _throttleTimeout = void 0;\n}\n\nfunction scrollBy(el, x, y) {\n el.scrollLeft += x;\n el.scrollTop += y;\n}\n\nfunction clone(el) {\n var Polymer = window.Polymer;\n var $ = window.jQuery || window.Zepto;\n\n if (Polymer && Polymer.dom) {\n return Polymer.dom(el).cloneNode(true);\n } else if ($) {\n return $(el).clone(true)[0];\n } else {\n return el.cloneNode(true);\n }\n}\n\nfunction setRect(el, rect) {\n css(el, 'position', 'absolute');\n css(el, 'top', rect.top);\n css(el, 'left', rect.left);\n css(el, 'width', rect.width);\n css(el, 'height', rect.height);\n}\n\nfunction unsetRect(el) {\n css(el, 'position', '');\n css(el, 'top', '');\n css(el, 'left', '');\n css(el, 'width', '');\n css(el, 'height', '');\n}\n\nvar expando = 'Sortable' + new Date().getTime();\n\nfunction AnimationStateManager() {\n var animationStates = [],\n animationCallbackId;\n return {\n captureAnimationState: function captureAnimationState() {\n animationStates = [];\n if (!this.options.animation) return;\n var children = [].slice.call(this.el.children);\n children.forEach(function (child) {\n if (css(child, 'display') === 'none' || child === Sortable.ghost) return;\n animationStates.push({\n target: child,\n rect: getRect(child)\n });\n\n var fromRect = _objectSpread2({}, animationStates[animationStates.length - 1].rect); // If animating: compensate for current animation\n\n\n if (child.thisAnimationDuration) {\n var childMatrix = matrix(child, true);\n\n if (childMatrix) {\n fromRect.top -= childMatrix.f;\n fromRect.left -= childMatrix.e;\n }\n }\n\n child.fromRect = fromRect;\n });\n },\n addAnimationState: function addAnimationState(state) {\n animationStates.push(state);\n },\n removeAnimationState: function removeAnimationState(target) {\n animationStates.splice(indexOfObject(animationStates, {\n target: target\n }), 1);\n },\n animateAll: function animateAll(callback) {\n var _this = this;\n\n if (!this.options.animation) {\n clearTimeout(animationCallbackId);\n if (typeof callback === 'function') callback();\n return;\n }\n\n var animating = false,\n animationTime = 0;\n animationStates.forEach(function (state) {\n var time = 0,\n target = state.target,\n fromRect = target.fromRect,\n toRect = getRect(target),\n prevFromRect = target.prevFromRect,\n prevToRect = target.prevToRect,\n animatingRect = state.rect,\n targetMatrix = matrix(target, true);\n\n if (targetMatrix) {\n // Compensate for current animation\n toRect.top -= targetMatrix.f;\n toRect.left -= targetMatrix.e;\n }\n\n target.toRect = toRect;\n\n if (target.thisAnimationDuration) {\n // Could also check if animatingRect is between fromRect and toRect\n if (isRectEqual(prevFromRect, toRect) && !isRectEqual(fromRect, toRect) && // Make sure animatingRect is on line between toRect & fromRect\n (animatingRect.top - toRect.top) / (animatingRect.left - toRect.left) === (fromRect.top - toRect.top) / (fromRect.left - toRect.left)) {\n // If returning to same place as started from animation and on same axis\n time = calculateRealTime(animatingRect, prevFromRect, prevToRect, _this.options);\n }\n } // if fromRect != toRect: animate\n\n\n if (!isRectEqual(toRect, fromRect)) {\n target.prevFromRect = fromRect;\n target.prevToRect = toRect;\n\n if (!time) {\n time = _this.options.animation;\n }\n\n _this.animate(target, animatingRect, toRect, time);\n }\n\n if (time) {\n animating = true;\n animationTime = Math.max(animationTime, time);\n clearTimeout(target.animationResetTimer);\n target.animationResetTimer = setTimeout(function () {\n target.animationTime = 0;\n target.prevFromRect = null;\n target.fromRect = null;\n target.prevToRect = null;\n target.thisAnimationDuration = null;\n }, time);\n target.thisAnimationDuration = time;\n }\n });\n clearTimeout(animationCallbackId);\n\n if (!animating) {\n if (typeof callback === 'function') callback();\n } else {\n animationCallbackId = setTimeout(function () {\n if (typeof callback === 'function') callback();\n }, animationTime);\n }\n\n animationStates = [];\n },\n animate: function animate(target, currentRect, toRect, duration) {\n if (duration) {\n css(target, 'transition', '');\n css(target, 'transform', '');\n var elMatrix = matrix(this.el),\n scaleX = elMatrix && elMatrix.a,\n scaleY = elMatrix && elMatrix.d,\n translateX = (currentRect.left - toRect.left) / (scaleX || 1),\n translateY = (currentRect.top - toRect.top) / (scaleY || 1);\n target.animatingX = !!translateX;\n target.animatingY = !!translateY;\n css(target, 'transform', 'translate3d(' + translateX + 'px,' + translateY + 'px,0)');\n this.forRepaintDummy = repaint(target); // repaint\n\n css(target, 'transition', 'transform ' + duration + 'ms' + (this.options.easing ? ' ' + this.options.easing : ''));\n css(target, 'transform', 'translate3d(0,0,0)');\n typeof target.animated === 'number' && clearTimeout(target.animated);\n target.animated = setTimeout(function () {\n css(target, 'transition', '');\n css(target, 'transform', '');\n target.animated = false;\n target.animatingX = false;\n target.animatingY = false;\n }, duration);\n }\n }\n };\n}\n\nfunction repaint(target) {\n return target.offsetWidth;\n}\n\nfunction calculateRealTime(animatingRect, fromRect, toRect, options) {\n return Math.sqrt(Math.pow(fromRect.top - animatingRect.top, 2) + Math.pow(fromRect.left - animatingRect.left, 2)) / Math.sqrt(Math.pow(fromRect.top - toRect.top, 2) + Math.pow(fromRect.left - toRect.left, 2)) * options.animation;\n}\n\nvar plugins = [];\nvar defaults = {\n initializeByDefault: true\n};\nvar PluginManager = {\n mount: function mount(plugin) {\n // Set default static properties\n for (var option in defaults) {\n if (defaults.hasOwnProperty(option) && !(option in plugin)) {\n plugin[option] = defaults[option];\n }\n }\n\n plugins.forEach(function (p) {\n if (p.pluginName === plugin.pluginName) {\n throw \"Sortable: Cannot mount plugin \".concat(plugin.pluginName, \" more than once\");\n }\n });\n plugins.push(plugin);\n },\n pluginEvent: function pluginEvent(eventName, sortable, evt) {\n var _this = this;\n\n this.eventCanceled = false;\n\n evt.cancel = function () {\n _this.eventCanceled = true;\n };\n\n var eventNameGlobal = eventName + 'Global';\n plugins.forEach(function (plugin) {\n if (!sortable[plugin.pluginName]) return; // Fire global events if it exists in this sortable\n\n if (sortable[plugin.pluginName][eventNameGlobal]) {\n sortable[plugin.pluginName][eventNameGlobal](_objectSpread2({\n sortable: sortable\n }, evt));\n } // Only fire plugin event if plugin is enabled in this sortable,\n // and plugin has event defined\n\n\n if (sortable.options[plugin.pluginName] && sortable[plugin.pluginName][eventName]) {\n sortable[plugin.pluginName][eventName](_objectSpread2({\n sortable: sortable\n }, evt));\n }\n });\n },\n initializePlugins: function initializePlugins(sortable, el, defaults, options) {\n plugins.forEach(function (plugin) {\n var pluginName = plugin.pluginName;\n if (!sortable.options[pluginName] && !plugin.initializeByDefault) return;\n var initialized = new plugin(sortable, el, sortable.options);\n initialized.sortable = sortable;\n initialized.options = sortable.options;\n sortable[pluginName] = initialized; // Add default options from plugin\n\n _extends(defaults, initialized.defaults);\n });\n\n for (var option in sortable.options) {\n if (!sortable.options.hasOwnProperty(option)) continue;\n var modified = this.modifyOption(sortable, option, sortable.options[option]);\n\n if (typeof modified !== 'undefined') {\n sortable.options[option] = modified;\n }\n }\n },\n getEventProperties: function getEventProperties(name, sortable) {\n var eventProperties = {};\n plugins.forEach(function (plugin) {\n if (typeof plugin.eventProperties !== 'function') return;\n\n _extends(eventProperties, plugin.eventProperties.call(sortable[plugin.pluginName], name));\n });\n return eventProperties;\n },\n modifyOption: function modifyOption(sortable, name, value) {\n var modifiedValue;\n plugins.forEach(function (plugin) {\n // Plugin must exist on the Sortable\n if (!sortable[plugin.pluginName]) return; // If static option listener exists for this option, call in the context of the Sortable's instance of this plugin\n\n if (plugin.optionListeners && typeof plugin.optionListeners[name] === 'function') {\n modifiedValue = plugin.optionListeners[name].call(sortable[plugin.pluginName], value);\n }\n });\n return modifiedValue;\n }\n};\n\nfunction dispatchEvent(_ref) {\n var sortable = _ref.sortable,\n rootEl = _ref.rootEl,\n name = _ref.name,\n targetEl = _ref.targetEl,\n cloneEl = _ref.cloneEl,\n toEl = _ref.toEl,\n fromEl = _ref.fromEl,\n oldIndex = _ref.oldIndex,\n newIndex = _ref.newIndex,\n oldDraggableIndex = _ref.oldDraggableIndex,\n newDraggableIndex = _ref.newDraggableIndex,\n originalEvent = _ref.originalEvent,\n putSortable = _ref.putSortable,\n extraEventProperties = _ref.extraEventProperties;\n sortable = sortable || rootEl && rootEl[expando];\n if (!sortable) return;\n var evt,\n options = sortable.options,\n onName = 'on' + name.charAt(0).toUpperCase() + name.substr(1); // Support for new CustomEvent feature\n\n if (window.CustomEvent && !IE11OrLess && !Edge) {\n evt = new CustomEvent(name, {\n bubbles: true,\n cancelable: true\n });\n } else {\n evt = document.createEvent('Event');\n evt.initEvent(name, true, true);\n }\n\n evt.to = toEl || rootEl;\n evt.from = fromEl || rootEl;\n evt.item = targetEl || rootEl;\n evt.clone = cloneEl;\n evt.oldIndex = oldIndex;\n evt.newIndex = newIndex;\n evt.oldDraggableIndex = oldDraggableIndex;\n evt.newDraggableIndex = newDraggableIndex;\n evt.originalEvent = originalEvent;\n evt.pullMode = putSortable ? putSortable.lastPutMode : undefined;\n\n var allEventProperties = _objectSpread2(_objectSpread2({}, extraEventProperties), PluginManager.getEventProperties(name, sortable));\n\n for (var option in allEventProperties) {\n evt[option] = allEventProperties[option];\n }\n\n if (rootEl) {\n rootEl.dispatchEvent(evt);\n }\n\n if (options[onName]) {\n options[onName].call(sortable, evt);\n }\n}\n\nvar _excluded = [\"evt\"];\n\nvar pluginEvent = function pluginEvent(eventName, sortable) {\n var _ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},\n originalEvent = _ref.evt,\n data = _objectWithoutProperties(_ref, _excluded);\n\n PluginManager.pluginEvent.bind(Sortable)(eventName, sortable, _objectSpread2({\n dragEl: dragEl,\n parentEl: parentEl,\n ghostEl: ghostEl,\n rootEl: rootEl,\n nextEl: nextEl,\n lastDownEl: lastDownEl,\n cloneEl: cloneEl,\n cloneHidden: cloneHidden,\n dragStarted: moved,\n putSortable: putSortable,\n activeSortable: Sortable.active,\n originalEvent: originalEvent,\n oldIndex: oldIndex,\n oldDraggableIndex: oldDraggableIndex,\n newIndex: newIndex,\n newDraggableIndex: newDraggableIndex,\n hideGhostForTarget: _hideGhostForTarget,\n unhideGhostForTarget: _unhideGhostForTarget,\n cloneNowHidden: function cloneNowHidden() {\n cloneHidden = true;\n },\n cloneNowShown: function cloneNowShown() {\n cloneHidden = false;\n },\n dispatchSortableEvent: function dispatchSortableEvent(name) {\n _dispatchEvent({\n sortable: sortable,\n name: name,\n originalEvent: originalEvent\n });\n }\n }, data));\n};\n\nfunction _dispatchEvent(info) {\n dispatchEvent(_objectSpread2({\n putSortable: putSortable,\n cloneEl: cloneEl,\n targetEl: dragEl,\n rootEl: rootEl,\n oldIndex: oldIndex,\n oldDraggableIndex: oldDraggableIndex,\n newIndex: newIndex,\n newDraggableIndex: newDraggableIndex\n }, info));\n}\n\nvar dragEl,\n parentEl,\n ghostEl,\n rootEl,\n nextEl,\n lastDownEl,\n cloneEl,\n cloneHidden,\n oldIndex,\n newIndex,\n oldDraggableIndex,\n newDraggableIndex,\n activeGroup,\n putSortable,\n awaitingDragStarted = false,\n ignoreNextClick = false,\n sortables = [],\n tapEvt,\n touchEvt,\n lastDx,\n lastDy,\n tapDistanceLeft,\n tapDistanceTop,\n moved,\n lastTarget,\n lastDirection,\n pastFirstInvertThresh = false,\n isCircumstantialInvert = false,\n targetMoveDistance,\n // For positioning ghost absolutely\nghostRelativeParent,\n ghostRelativeParentInitialScroll = [],\n // (left, top)\n_silent = false,\n savedInputChecked = [];\n/** @const */\n\nvar documentExists = typeof document !== 'undefined',\n PositionGhostAbsolutely = IOS,\n CSSFloatProperty = Edge || IE11OrLess ? 'cssFloat' : 'float',\n // This will not pass for IE9, because IE9 DnD only works on anchors\nsupportDraggable = documentExists && !ChromeForAndroid && !IOS && 'draggable' in document.createElement('div'),\n supportCssPointerEvents = function () {\n if (!documentExists) return; // false when <= IE11\n\n if (IE11OrLess) {\n return false;\n }\n\n var el = document.createElement('x');\n el.style.cssText = 'pointer-events:auto';\n return el.style.pointerEvents === 'auto';\n}(),\n _detectDirection = function _detectDirection(el, options) {\n var elCSS = css(el),\n elWidth = parseInt(elCSS.width) - parseInt(elCSS.paddingLeft) - parseInt(elCSS.paddingRight) - parseInt(elCSS.borderLeftWidth) - parseInt(elCSS.borderRightWidth),\n child1 = getChild(el, 0, options),\n child2 = getChild(el, 1, options),\n firstChildCSS = child1 && css(child1),\n secondChildCSS = child2 && css(child2),\n firstChildWidth = firstChildCSS && parseInt(firstChildCSS.marginLeft) + parseInt(firstChildCSS.marginRight) + getRect(child1).width,\n secondChildWidth = secondChildCSS && parseInt(secondChildCSS.marginLeft) + parseInt(secondChildCSS.marginRight) + getRect(child2).width;\n\n if (elCSS.display === 'flex') {\n return elCSS.flexDirection === 'column' || elCSS.flexDirection === 'column-reverse' ? 'vertical' : 'horizontal';\n }\n\n if (elCSS.display === 'grid') {\n return elCSS.gridTemplateColumns.split(' ').length <= 1 ? 'vertical' : 'horizontal';\n }\n\n if (child1 && firstChildCSS[\"float\"] && firstChildCSS[\"float\"] !== 'none') {\n var touchingSideChild2 = firstChildCSS[\"float\"] === 'left' ? 'left' : 'right';\n return child2 && (secondChildCSS.clear === 'both' || secondChildCSS.clear === touchingSideChild2) ? 'vertical' : 'horizontal';\n }\n\n return child1 && (firstChildCSS.display === 'block' || firstChildCSS.display === 'flex' || firstChildCSS.display === 'table' || firstChildCSS.display === 'grid' || firstChildWidth >= elWidth && elCSS[CSSFloatProperty] === 'none' || child2 && elCSS[CSSFloatProperty] === 'none' && firstChildWidth + secondChildWidth > elWidth) ? 'vertical' : 'horizontal';\n},\n _dragElInRowColumn = function _dragElInRowColumn(dragRect, targetRect, vertical) {\n var dragElS1Opp = vertical ? dragRect.left : dragRect.top,\n dragElS2Opp = vertical ? dragRect.right : dragRect.bottom,\n dragElOppLength = vertical ? dragRect.width : dragRect.height,\n targetS1Opp = vertical ? targetRect.left : targetRect.top,\n targetS2Opp = vertical ? targetRect.right : targetRect.bottom,\n targetOppLength = vertical ? targetRect.width : targetRect.height;\n return dragElS1Opp === targetS1Opp || dragElS2Opp === targetS2Opp || dragElS1Opp + dragElOppLength / 2 === targetS1Opp + targetOppLength / 2;\n},\n\n/**\r\n * Detects first nearest empty sortable to X and Y position using emptyInsertThreshold.\r\n * @param {Number} x X position\r\n * @param {Number} y Y position\r\n * @return {HTMLElement} Element of the first found nearest Sortable\r\n */\n_detectNearestEmptySortable = function _detectNearestEmptySortable(x, y) {\n var ret;\n sortables.some(function (sortable) {\n var threshold = sortable[expando].options.emptyInsertThreshold;\n if (!threshold || lastChild(sortable)) return;\n var rect = getRect(sortable),\n insideHorizontally = x >= rect.left - threshold && x <= rect.right + threshold,\n insideVertically = y >= rect.top - threshold && y <= rect.bottom + threshold;\n\n if (insideHorizontally && insideVertically) {\n return ret = sortable;\n }\n });\n return ret;\n},\n _prepareGroup = function _prepareGroup(options) {\n function toFn(value, pull) {\n return function (to, from, dragEl, evt) {\n var sameGroup = to.options.group.name && from.options.group.name && to.options.group.name === from.options.group.name;\n\n if (value == null && (pull || sameGroup)) {\n // Default pull value\n // Default pull and put value if same group\n return true;\n } else if (value == null || value === false) {\n return false;\n } else if (pull && value === 'clone') {\n return value;\n } else if (typeof value === 'function') {\n return toFn(value(to, from, dragEl, evt), pull)(to, from, dragEl, evt);\n } else {\n var otherGroup = (pull ? to : from).options.group.name;\n return value === true || typeof value === 'string' && value === otherGroup || value.join && value.indexOf(otherGroup) > -1;\n }\n };\n }\n\n var group = {};\n var originalGroup = options.group;\n\n if (!originalGroup || _typeof(originalGroup) != 'object') {\n originalGroup = {\n name: originalGroup\n };\n }\n\n group.name = originalGroup.name;\n group.checkPull = toFn(originalGroup.pull, true);\n group.checkPut = toFn(originalGroup.put);\n group.revertClone = originalGroup.revertClone;\n options.group = group;\n},\n _hideGhostForTarget = function _hideGhostForTarget() {\n if (!supportCssPointerEvents && ghostEl) {\n css(ghostEl, 'display', 'none');\n }\n},\n _unhideGhostForTarget = function _unhideGhostForTarget() {\n if (!supportCssPointerEvents && ghostEl) {\n css(ghostEl, 'display', '');\n }\n}; // #1184 fix - Prevent click event on fallback if dragged but item not changed position\n\n\nif (documentExists && !ChromeForAndroid) {\n document.addEventListener('click', function (evt) {\n if (ignoreNextClick) {\n evt.preventDefault();\n evt.stopPropagation && evt.stopPropagation();\n evt.stopImmediatePropagation && evt.stopImmediatePropagation();\n ignoreNextClick = false;\n return false;\n }\n }, true);\n}\n\nvar nearestEmptyInsertDetectEvent = function nearestEmptyInsertDetectEvent(evt) {\n if (dragEl) {\n evt = evt.touches ? evt.touches[0] : evt;\n\n var nearest = _detectNearestEmptySortable(evt.clientX, evt.clientY);\n\n if (nearest) {\n // Create imitation event\n var event = {};\n\n for (var i in evt) {\n if (evt.hasOwnProperty(i)) {\n event[i] = evt[i];\n }\n }\n\n event.target = event.rootEl = nearest;\n event.preventDefault = void 0;\n event.stopPropagation = void 0;\n\n nearest[expando]._onDragOver(event);\n }\n }\n};\n\nvar _checkOutsideTargetEl = function _checkOutsideTargetEl(evt) {\n if (dragEl) {\n dragEl.parentNode[expando]._isOutsideThisEl(evt.target);\n }\n};\n/**\r\n * @class Sortable\r\n * @param {HTMLElement} el\r\n * @param {Object} [options]\r\n */\n\n\nfunction Sortable(el, options) {\n if (!(el && el.nodeType && el.nodeType === 1)) {\n throw \"Sortable: `el` must be an HTMLElement, not \".concat({}.toString.call(el));\n }\n\n this.el = el; // root element\n\n this.options = options = _extends({}, options); // Export instance\n\n el[expando] = this;\n var defaults = {\n group: null,\n sort: true,\n disabled: false,\n store: null,\n handle: null,\n draggable: /^[uo]l$/i.test(el.nodeName) ? '>li' : '>*',\n swapThreshold: 1,\n // percentage; 0 <= x <= 1\n invertSwap: false,\n // invert always\n invertedSwapThreshold: null,\n // will be set to same as swapThreshold if default\n removeCloneOnHide: true,\n direction: function direction() {\n return _detectDirection(el, this.options);\n },\n ghostClass: 'sortable-ghost',\n chosenClass: 'sortable-chosen',\n dragClass: 'sortable-drag',\n ignore: 'a, img',\n filter: null,\n preventOnFilter: true,\n animation: 0,\n easing: null,\n setData: function setData(dataTransfer, dragEl) {\n dataTransfer.setData('Text', dragEl.textContent);\n },\n dropBubble: false,\n dragoverBubble: false,\n dataIdAttr: 'data-id',\n delay: 0,\n delayOnTouchOnly: false,\n touchStartThreshold: (Number.parseInt ? Number : window).parseInt(window.devicePixelRatio, 10) || 1,\n forceFallback: false,\n fallbackClass: 'sortable-fallback',\n fallbackOnBody: false,\n fallbackTolerance: 0,\n fallbackOffset: {\n x: 0,\n y: 0\n },\n supportPointer: Sortable.supportPointer !== false && 'PointerEvent' in window && !Safari,\n emptyInsertThreshold: 5\n };\n PluginManager.initializePlugins(this, el, defaults); // Set default options\n\n for (var name in defaults) {\n !(name in options) && (options[name] = defaults[name]);\n }\n\n _prepareGroup(options); // Bind all private methods\n\n\n for (var fn in this) {\n if (fn.charAt(0) === '_' && typeof this[fn] === 'function') {\n this[fn] = this[fn].bind(this);\n }\n } // Setup drag mode\n\n\n this.nativeDraggable = options.forceFallback ? false : supportDraggable;\n\n if (this.nativeDraggable) {\n // Touch start threshold cannot be greater than the native dragstart threshold\n this.options.touchStartThreshold = 1;\n } // Bind events\n\n\n if (options.supportPointer) {\n on(el, 'pointerdown', this._onTapStart);\n } else {\n on(el, 'mousedown', this._onTapStart);\n on(el, 'touchstart', this._onTapStart);\n }\n\n if (this.nativeDraggable) {\n on(el, 'dragover', this);\n on(el, 'dragenter', this);\n }\n\n sortables.push(this.el); // Restore sorting\n\n options.store && options.store.get && this.sort(options.store.get(this) || []); // Add animation state manager\n\n _extends(this, AnimationStateManager());\n}\n\nSortable.prototype =\n/** @lends Sortable.prototype */\n{\n constructor: Sortable,\n _isOutsideThisEl: function _isOutsideThisEl(target) {\n if (!this.el.contains(target) && target !== this.el) {\n lastTarget = null;\n }\n },\n _getDirection: function _getDirection(evt, target) {\n return typeof this.options.direction === 'function' ? this.options.direction.call(this, evt, target, dragEl) : this.options.direction;\n },\n _onTapStart: function _onTapStart(\n /** Event|TouchEvent */\n evt) {\n if (!evt.cancelable) return;\n\n var _this = this,\n el = this.el,\n options = this.options,\n preventOnFilter = options.preventOnFilter,\n type = evt.type,\n touch = evt.touches && evt.touches[0] || evt.pointerType && evt.pointerType === 'touch' && evt,\n target = (touch || evt).target,\n originalTarget = evt.target.shadowRoot && (evt.path && evt.path[0] || evt.composedPath && evt.composedPath()[0]) || target,\n filter = options.filter;\n\n _saveInputCheckedState(el); // Don't trigger start event when an element is been dragged, otherwise the evt.oldindex always wrong when set option.group.\n\n\n if (dragEl) {\n return;\n }\n\n if (/mousedown|pointerdown/.test(type) && evt.button !== 0 || options.disabled) {\n return; // only left button and enabled\n } // cancel dnd if original target is content editable\n\n\n if (originalTarget.isContentEditable) {\n return;\n } // Safari ignores further event handling after mousedown\n\n\n if (!this.nativeDraggable && Safari && target && target.tagName.toUpperCase() === 'SELECT') {\n return;\n }\n\n target = closest(target, options.draggable, el, false);\n\n if (target && target.animated) {\n return;\n }\n\n if (lastDownEl === target) {\n // Ignoring duplicate `down`\n return;\n } // Get the index of the dragged element within its parent\n\n\n oldIndex = index(target);\n oldDraggableIndex = index(target, options.draggable); // Check filter\n\n if (typeof filter === 'function') {\n if (filter.call(this, evt, target, this)) {\n _dispatchEvent({\n sortable: _this,\n rootEl: originalTarget,\n name: 'filter',\n targetEl: target,\n toEl: el,\n fromEl: el\n });\n\n pluginEvent('filter', _this, {\n evt: evt\n });\n preventOnFilter && evt.cancelable && evt.preventDefault();\n return; // cancel dnd\n }\n } else if (filter) {\n filter = filter.split(',').some(function (criteria) {\n criteria = closest(originalTarget, criteria.trim(), el, false);\n\n if (criteria) {\n _dispatchEvent({\n sortable: _this,\n rootEl: criteria,\n name: 'filter',\n targetEl: target,\n fromEl: el,\n toEl: el\n });\n\n pluginEvent('filter', _this, {\n evt: evt\n });\n return true;\n }\n });\n\n if (filter) {\n preventOnFilter && evt.cancelable && evt.preventDefault();\n return; // cancel dnd\n }\n }\n\n if (options.handle && !closest(originalTarget, options.handle, el, false)) {\n return;\n } // Prepare `dragstart`\n\n\n this._prepareDragStart(evt, touch, target);\n },\n _prepareDragStart: function _prepareDragStart(\n /** Event */\n evt,\n /** Touch */\n touch,\n /** HTMLElement */\n target) {\n var _this = this,\n el = _this.el,\n options = _this.options,\n ownerDocument = el.ownerDocument,\n dragStartFn;\n\n if (target && !dragEl && target.parentNode === el) {\n var dragRect = getRect(target);\n rootEl = el;\n dragEl = target;\n parentEl = dragEl.parentNode;\n nextEl = dragEl.nextSibling;\n lastDownEl = target;\n activeGroup = options.group;\n Sortable.dragged = dragEl;\n tapEvt = {\n target: dragEl,\n clientX: (touch || evt).clientX,\n clientY: (touch || evt).clientY\n };\n tapDistanceLeft = tapEvt.clientX - dragRect.left;\n tapDistanceTop = tapEvt.clientY - dragRect.top;\n this._lastX = (touch || evt).clientX;\n this._lastY = (touch || evt).clientY;\n dragEl.style['will-change'] = 'all';\n\n dragStartFn = function dragStartFn() {\n pluginEvent('delayEnded', _this, {\n evt: evt\n });\n\n if (Sortable.eventCanceled) {\n _this._onDrop();\n\n return;\n } // Delayed drag has been triggered\n // we can re-enable the events: touchmove/mousemove\n\n\n _this._disableDelayedDragEvents();\n\n if (!FireFox && _this.nativeDraggable) {\n dragEl.draggable = true;\n } // Bind the events: dragstart/dragend\n\n\n _this._triggerDragStart(evt, touch); // Drag start event\n\n\n _dispatchEvent({\n sortable: _this,\n name: 'choose',\n originalEvent: evt\n }); // Chosen item\n\n\n toggleClass(dragEl, options.chosenClass, true);\n }; // Disable \"draggable\"\n\n\n options.ignore.split(',').forEach(function (criteria) {\n find(dragEl, criteria.trim(), _disableDraggable);\n });\n on(ownerDocument, 'dragover', nearestEmptyInsertDetectEvent);\n on(ownerDocument, 'mousemove', nearestEmptyInsertDetectEvent);\n on(ownerDocument, 'touchmove', nearestEmptyInsertDetectEvent);\n on(ownerDocument, 'mouseup', _this._onDrop);\n on(ownerDocument, 'touchend', _this._onDrop);\n on(ownerDocument, 'touchcancel', _this._onDrop); // Make dragEl draggable (must be before delay for FireFox)\n\n if (FireFox && this.nativeDraggable) {\n this.options.touchStartThreshold = 4;\n dragEl.draggable = true;\n }\n\n pluginEvent('delayStart', this, {\n evt: evt\n }); // Delay is impossible for native DnD in Edge or IE\n\n if (options.delay && (!options.delayOnTouchOnly || touch) && (!this.nativeDraggable || !(Edge || IE11OrLess))) {\n if (Sortable.eventCanceled) {\n this._onDrop();\n\n return;\n } // If the user moves the pointer or let go the click or touch\n // before the delay has been reached:\n // disable the delayed drag\n\n\n on(ownerDocument, 'mouseup', _this._disableDelayedDrag);\n on(ownerDocument, 'touchend', _this._disableDelayedDrag);\n on(ownerDocument, 'touchcancel', _this._disableDelayedDrag);\n on(ownerDocument, 'mousemove', _this._delayedDragTouchMoveHandler);\n on(ownerDocument, 'touchmove', _this._delayedDragTouchMoveHandler);\n options.supportPointer && on(ownerDocument, 'pointermove', _this._delayedDragTouchMoveHandler);\n _this._dragStartTimer = setTimeout(dragStartFn, options.delay);\n } else {\n dragStartFn();\n }\n }\n },\n _delayedDragTouchMoveHandler: function _delayedDragTouchMoveHandler(\n /** TouchEvent|PointerEvent **/\n e) {\n var touch = e.touches ? e.touches[0] : e;\n\n if (Math.max(Math.abs(touch.clientX - this._lastX), Math.abs(touch.clientY - this._lastY)) >= Math.floor(this.options.touchStartThreshold / (this.nativeDraggable && window.devicePixelRatio || 1))) {\n this._disableDelayedDrag();\n }\n },\n _disableDelayedDrag: function _disableDelayedDrag() {\n dragEl && _disableDraggable(dragEl);\n clearTimeout(this._dragStartTimer);\n\n this._disableDelayedDragEvents();\n },\n _disableDelayedDragEvents: function _disableDelayedDragEvents() {\n var ownerDocument = this.el.ownerDocument;\n off(ownerDocument, 'mouseup', this._disableDelayedDrag);\n off(ownerDocument, 'touchend', this._disableDelayedDrag);\n off(ownerDocument, 'touchcancel', this._disableDelayedDrag);\n off(ownerDocument, 'mousemove', this._delayedDragTouchMoveHandler);\n off(ownerDocument, 'touchmove', this._delayedDragTouchMoveHandler);\n off(ownerDocument, 'pointermove', this._delayedDragTouchMoveHandler);\n },\n _triggerDragStart: function _triggerDragStart(\n /** Event */\n evt,\n /** Touch */\n touch) {\n touch = touch || evt.pointerType == 'touch' && evt;\n\n if (!this.nativeDraggable || touch) {\n if (this.options.supportPointer) {\n on(document, 'pointermove', this._onTouchMove);\n } else if (touch) {\n on(document, 'touchmove', this._onTouchMove);\n } else {\n on(document, 'mousemove', this._onTouchMove);\n }\n } else {\n on(dragEl, 'dragend', this);\n on(rootEl, 'dragstart', this._onDragStart);\n }\n\n try {\n if (document.selection) {\n // Timeout neccessary for IE9\n _nextTick(function () {\n document.selection.empty();\n });\n } else {\n window.getSelection().removeAllRanges();\n }\n } catch (err) {}\n },\n _dragStarted: function _dragStarted(fallback, evt) {\n\n awaitingDragStarted = false;\n\n if (rootEl && dragEl) {\n pluginEvent('dragStarted', this, {\n evt: evt\n });\n\n if (this.nativeDraggable) {\n on(document, 'dragover', _checkOutsideTargetEl);\n }\n\n var options = this.options; // Apply effect\n\n !fallback && toggleClass(dragEl, options.dragClass, false);\n toggleClass(dragEl, options.ghostClass, true);\n Sortable.active = this;\n fallback && this._appendGhost(); // Drag start event\n\n _dispatchEvent({\n sortable: this,\n name: 'start',\n originalEvent: evt\n });\n } else {\n this._nulling();\n }\n },\n _emulateDragOver: function _emulateDragOver() {\n if (touchEvt) {\n this._lastX = touchEvt.clientX;\n this._lastY = touchEvt.clientY;\n\n _hideGhostForTarget();\n\n var target = document.elementFromPoint(touchEvt.clientX, touchEvt.clientY);\n var parent = target;\n\n while (target && target.shadowRoot) {\n target = target.shadowRoot.elementFromPoint(touchEvt.clientX, touchEvt.clientY);\n if (target === parent) break;\n parent = target;\n }\n\n dragEl.parentNode[expando]._isOutsideThisEl(target);\n\n if (parent) {\n do {\n if (parent[expando]) {\n var inserted = void 0;\n inserted = parent[expando]._onDragOver({\n clientX: touchEvt.clientX,\n clientY: touchEvt.clientY,\n target: target,\n rootEl: parent\n });\n\n if (inserted && !this.options.dragoverBubble) {\n break;\n }\n }\n\n target = parent; // store last element\n }\n /* jshint boss:true */\n while (parent = parent.parentNode);\n }\n\n _unhideGhostForTarget();\n }\n },\n _onTouchMove: function _onTouchMove(\n /**TouchEvent*/\n evt) {\n if (tapEvt) {\n var options = this.options,\n fallbackTolerance = options.fallbackTolerance,\n fallbackOffset = options.fallbackOffset,\n touch = evt.touches ? evt.touches[0] : evt,\n ghostMatrix = ghostEl && matrix(ghostEl, true),\n scaleX = ghostEl && ghostMatrix && ghostMatrix.a,\n scaleY = ghostEl && ghostMatrix && ghostMatrix.d,\n relativeScrollOffset = PositionGhostAbsolutely && ghostRelativeParent && getRelativeScrollOffset(ghostRelativeParent),\n dx = (touch.clientX - tapEvt.clientX + fallbackOffset.x) / (scaleX || 1) + (relativeScrollOffset ? relativeScrollOffset[0] - ghostRelativeParentInitialScroll[0] : 0) / (scaleX || 1),\n dy = (touch.clientY - tapEvt.clientY + fallbackOffset.y) / (scaleY || 1) + (relativeScrollOffset ? relativeScrollOffset[1] - ghostRelativeParentInitialScroll[1] : 0) / (scaleY || 1); // only set the status to dragging, when we are actually dragging\n\n if (!Sortable.active && !awaitingDragStarted) {\n if (fallbackTolerance && Math.max(Math.abs(touch.clientX - this._lastX), Math.abs(touch.clientY - this._lastY)) < fallbackTolerance) {\n return;\n }\n\n this._onDragStart(evt, true);\n }\n\n if (ghostEl) {\n if (ghostMatrix) {\n ghostMatrix.e += dx - (lastDx || 0);\n ghostMatrix.f += dy - (lastDy || 0);\n } else {\n ghostMatrix = {\n a: 1,\n b: 0,\n c: 0,\n d: 1,\n e: dx,\n f: dy\n };\n }\n\n var cssMatrix = \"matrix(\".concat(ghostMatrix.a, \",\").concat(ghostMatrix.b, \",\").concat(ghostMatrix.c, \",\").concat(ghostMatrix.d, \",\").concat(ghostMatrix.e, \",\").concat(ghostMatrix.f, \")\");\n css(ghostEl, 'webkitTransform', cssMatrix);\n css(ghostEl, 'mozTransform', cssMatrix);\n css(ghostEl, 'msTransform', cssMatrix);\n css(ghostEl, 'transform', cssMatrix);\n lastDx = dx;\n lastDy = dy;\n touchEvt = touch;\n }\n\n evt.cancelable && evt.preventDefault();\n }\n },\n _appendGhost: function _appendGhost() {\n // Bug if using scale(): https://stackoverflow.com/questions/2637058\n // Not being adjusted for\n if (!ghostEl) {\n var container = this.options.fallbackOnBody ? document.body : rootEl,\n rect = getRect(dragEl, true, PositionGhostAbsolutely, true, container),\n options = this.options; // Position absolutely\n\n if (PositionGhostAbsolutely) {\n // Get relatively positioned parent\n ghostRelativeParent = container;\n\n while (css(ghostRelativeParent, 'position') === 'static' && css(ghostRelativeParent, 'transform') === 'none' && ghostRelativeParent !== document) {\n ghostRelativeParent = ghostRelativeParent.parentNode;\n }\n\n if (ghostRelativeParent !== document.body && ghostRelativeParent !== document.documentElement) {\n if (ghostRelativeParent === document) ghostRelativeParent = getWindowScrollingElement();\n rect.top += ghostRelativeParent.scrollTop;\n rect.left += ghostRelativeParent.scrollLeft;\n } else {\n ghostRelativeParent = getWindowScrollingElement();\n }\n\n ghostRelativeParentInitialScroll = getRelativeScrollOffset(ghostRelativeParent);\n }\n\n ghostEl = dragEl.cloneNode(true);\n toggleClass(ghostEl, options.ghostClass, false);\n toggleClass(ghostEl, options.fallbackClass, true);\n toggleClass(ghostEl, options.dragClass, true);\n css(ghostEl, 'transition', '');\n css(ghostEl, 'transform', '');\n css(ghostEl, 'box-sizing', 'border-box');\n css(ghostEl, 'margin', 0);\n css(ghostEl, 'top', rect.top);\n css(ghostEl, 'left', rect.left);\n css(ghostEl, 'width', rect.width);\n css(ghostEl, 'height', rect.height);\n css(ghostEl, 'opacity', '0.8');\n css(ghostEl, 'position', PositionGhostAbsolutely ? 'absolute' : 'fixed');\n css(ghostEl, 'zIndex', '100000');\n css(ghostEl, 'pointerEvents', 'none');\n Sortable.ghost = ghostEl;\n container.appendChild(ghostEl); // Set transform-origin\n\n css(ghostEl, 'transform-origin', tapDistanceLeft / parseInt(ghostEl.style.width) * 100 + '% ' + tapDistanceTop / parseInt(ghostEl.style.height) * 100 + '%');\n }\n },\n _onDragStart: function _onDragStart(\n /**Event*/\n evt,\n /**boolean*/\n fallback) {\n var _this = this;\n\n var dataTransfer = evt.dataTransfer;\n var options = _this.options;\n pluginEvent('dragStart', this, {\n evt: evt\n });\n\n if (Sortable.eventCanceled) {\n this._onDrop();\n\n return;\n }\n\n pluginEvent('setupClone', this);\n\n if (!Sortable.eventCanceled) {\n cloneEl = clone(dragEl);\n cloneEl.removeAttribute(\"id\");\n cloneEl.draggable = false;\n cloneEl.style['will-change'] = '';\n\n this._hideClone();\n\n toggleClass(cloneEl, this.options.chosenClass, false);\n Sortable.clone = cloneEl;\n } // #1143: IFrame support workaround\n\n\n _this.cloneId = _nextTick(function () {\n pluginEvent('clone', _this);\n if (Sortable.eventCanceled) return;\n\n if (!_this.options.removeCloneOnHide) {\n rootEl.insertBefore(cloneEl, dragEl);\n }\n\n _this._hideClone();\n\n _dispatchEvent({\n sortable: _this,\n name: 'clone'\n });\n });\n !fallback && toggleClass(dragEl, options.dragClass, true); // Set proper drop events\n\n if (fallback) {\n ignoreNextClick = true;\n _this._loopId = setInterval(_this._emulateDragOver, 50);\n } else {\n // Undo what was set in _prepareDragStart before drag started\n off(document, 'mouseup', _this._onDrop);\n off(document, 'touchend', _this._onDrop);\n off(document, 'touchcancel', _this._onDrop);\n\n if (dataTransfer) {\n dataTransfer.effectAllowed = 'move';\n options.setData && options.setData.call(_this, dataTransfer, dragEl);\n }\n\n on(document, 'drop', _this); // #1276 fix:\n\n css(dragEl, 'transform', 'translateZ(0)');\n }\n\n awaitingDragStarted = true;\n _this._dragStartId = _nextTick(_this._dragStarted.bind(_this, fallback, evt));\n on(document, 'selectstart', _this);\n moved = true;\n\n if (Safari) {\n css(document.body, 'user-select', 'none');\n }\n },\n // Returns true - if no further action is needed (either inserted or another condition)\n _onDragOver: function _onDragOver(\n /**Event*/\n evt) {\n var el = this.el,\n target = evt.target,\n dragRect,\n targetRect,\n revert,\n options = this.options,\n group = options.group,\n activeSortable = Sortable.active,\n isOwner = activeGroup === group,\n canSort = options.sort,\n fromSortable = putSortable || activeSortable,\n vertical,\n _this = this,\n completedFired = false;\n\n if (_silent) return;\n\n function dragOverEvent(name, extra) {\n pluginEvent(name, _this, _objectSpread2({\n evt: evt,\n isOwner: isOwner,\n axis: vertical ? 'vertical' : 'horizontal',\n revert: revert,\n dragRect: dragRect,\n targetRect: targetRect,\n canSort: canSort,\n fromSortable: fromSortable,\n target: target,\n completed: completed,\n onMove: function onMove(target, after) {\n return _onMove(rootEl, el, dragEl, dragRect, target, getRect(target), evt, after);\n },\n changed: changed\n }, extra));\n } // Capture animation state\n\n\n function capture() {\n dragOverEvent('dragOverAnimationCapture');\n\n _this.captureAnimationState();\n\n if (_this !== fromSortable) {\n fromSortable.captureAnimationState();\n }\n } // Return invocation when dragEl is inserted (or completed)\n\n\n function completed(insertion) {\n dragOverEvent('dragOverCompleted', {\n insertion: insertion\n });\n\n if (insertion) {\n // Clones must be hidden before folding animation to capture dragRectAbsolute properly\n if (isOwner) {\n activeSortable._hideClone();\n } else {\n activeSortable._showClone(_this);\n }\n\n if (_this !== fromSortable) {\n // Set ghost class to new sortable's ghost class\n toggleClass(dragEl, putSortable ? putSortable.options.ghostClass : activeSortable.options.ghostClass, false);\n toggleClass(dragEl, options.ghostClass, true);\n }\n\n if (putSortable !== _this && _this !== Sortable.active) {\n putSortable = _this;\n } else if (_this === Sortable.active && putSortable) {\n putSortable = null;\n } // Animation\n\n\n if (fromSortable === _this) {\n _this._ignoreWhileAnimating = target;\n }\n\n _this.animateAll(function () {\n dragOverEvent('dragOverAnimationComplete');\n _this._ignoreWhileAnimating = null;\n });\n\n if (_this !== fromSortable) {\n fromSortable.animateAll();\n fromSortable._ignoreWhileAnimating = null;\n }\n } // Null lastTarget if it is not inside a previously swapped element\n\n\n if (target === dragEl && !dragEl.animated || target === el && !target.animated) {\n lastTarget = null;\n } // no bubbling and not fallback\n\n\n if (!options.dragoverBubble && !evt.rootEl && target !== document) {\n dragEl.parentNode[expando]._isOutsideThisEl(evt.target); // Do not detect for empty insert if already inserted\n\n\n !insertion && nearestEmptyInsertDetectEvent(evt);\n }\n\n !options.dragoverBubble && evt.stopPropagation && evt.stopPropagation();\n return completedFired = true;\n } // Call when dragEl has been inserted\n\n\n function changed() {\n newIndex = index(dragEl);\n newDraggableIndex = index(dragEl, options.draggable);\n\n _dispatchEvent({\n sortable: _this,\n name: 'change',\n toEl: el,\n newIndex: newIndex,\n newDraggableIndex: newDraggableIndex,\n originalEvent: evt\n });\n }\n\n if (evt.preventDefault !== void 0) {\n evt.cancelable && evt.preventDefault();\n }\n\n target = closest(target, options.draggable, el, true);\n dragOverEvent('dragOver');\n if (Sortable.eventCanceled) return completedFired;\n\n if (dragEl.contains(evt.target) || target.animated && target.animatingX && target.animatingY || _this._ignoreWhileAnimating === target) {\n return completed(false);\n }\n\n ignoreNextClick = false;\n\n if (activeSortable && !options.disabled && (isOwner ? canSort || (revert = parentEl !== rootEl) // Reverting item into the original list\n : putSortable === this || (this.lastPutMode = activeGroup.checkPull(this, activeSortable, dragEl, evt)) && group.checkPut(this, activeSortable, dragEl, evt))) {\n vertical = this._getDirection(evt, target) === 'vertical';\n dragRect = getRect(dragEl);\n dragOverEvent('dragOverValid');\n if (Sortable.eventCanceled) return completedFired;\n\n if (revert) {\n parentEl = rootEl; // actualization\n\n capture();\n\n this._hideClone();\n\n dragOverEvent('revert');\n\n if (!Sortable.eventCanceled) {\n if (nextEl) {\n rootEl.insertBefore(dragEl, nextEl);\n } else {\n rootEl.appendChild(dragEl);\n }\n }\n\n return completed(true);\n }\n\n var elLastChild = lastChild(el, options.draggable);\n\n if (!elLastChild || _ghostIsLast(evt, vertical, this) && !elLastChild.animated) {\n // Insert to end of list\n // If already at end of list: Do not insert\n if (elLastChild === dragEl) {\n return completed(false);\n } // if there is a last element, it is the target\n\n\n if (elLastChild && el === evt.target) {\n target = elLastChild;\n }\n\n if (target) {\n targetRect = getRect(target);\n }\n\n if (_onMove(rootEl, el, dragEl, dragRect, target, targetRect, evt, !!target) !== false) {\n capture();\n\n if (elLastChild && elLastChild.nextSibling) {\n // the last draggable element is not the last node\n el.insertBefore(dragEl, elLastChild.nextSibling);\n } else {\n el.appendChild(dragEl);\n }\n\n parentEl = el; // actualization\n\n changed();\n return completed(true);\n }\n } else if (elLastChild && _ghostIsFirst(evt, vertical, this)) {\n // Insert to start of list\n var firstChild = getChild(el, 0, options, true);\n\n if (firstChild === dragEl) {\n return completed(false);\n }\n\n target = firstChild;\n targetRect = getRect(target);\n\n if (_onMove(rootEl, el, dragEl, dragRect, target, targetRect, evt, false) !== false) {\n capture();\n el.insertBefore(dragEl, firstChild);\n parentEl = el; // actualization\n\n changed();\n return completed(true);\n }\n } else if (target.parentNode === el) {\n targetRect = getRect(target);\n var direction = 0,\n targetBeforeFirstSwap,\n differentLevel = dragEl.parentNode !== el,\n differentRowCol = !_dragElInRowColumn(dragEl.animated && dragEl.toRect || dragRect, target.animated && target.toRect || targetRect, vertical),\n side1 = vertical ? 'top' : 'left',\n scrolledPastTop = isScrolledPast(target, 'top', 'top') || isScrolledPast(dragEl, 'top', 'top'),\n scrollBefore = scrolledPastTop ? scrolledPastTop.scrollTop : void 0;\n\n if (lastTarget !== target) {\n targetBeforeFirstSwap = targetRect[side1];\n pastFirstInvertThresh = false;\n isCircumstantialInvert = !differentRowCol && options.invertSwap || differentLevel;\n }\n\n direction = _getSwapDirection(evt, target, targetRect, vertical, differentRowCol ? 1 : options.swapThreshold, options.invertedSwapThreshold == null ? options.swapThreshold : options.invertedSwapThreshold, isCircumstantialInvert, lastTarget === target);\n var sibling;\n\n if (direction !== 0) {\n // Check if target is beside dragEl in respective direction (ignoring hidden elements)\n var dragIndex = index(dragEl);\n\n do {\n dragIndex -= direction;\n sibling = parentEl.children[dragIndex];\n } while (sibling && (css(sibling, 'display') === 'none' || sibling === ghostEl));\n } // If dragEl is already beside target: Do not insert\n\n\n if (direction === 0 || sibling === target) {\n return completed(false);\n }\n\n lastTarget = target;\n lastDirection = direction;\n var nextSibling = target.nextElementSibling,\n after = false;\n after = direction === 1;\n\n var moveVector = _onMove(rootEl, el, dragEl, dragRect, target, targetRect, evt, after);\n\n if (moveVector !== false) {\n if (moveVector === 1 || moveVector === -1) {\n after = moveVector === 1;\n }\n\n _silent = true;\n setTimeout(_unsilent, 30);\n capture();\n\n if (after && !nextSibling) {\n el.appendChild(dragEl);\n } else {\n target.parentNode.insertBefore(dragEl, after ? nextSibling : target);\n } // Undo chrome's scroll adjustment (has no effect on other browsers)\n\n\n if (scrolledPastTop) {\n scrollBy(scrolledPastTop, 0, scrollBefore - scrolledPastTop.scrollTop);\n }\n\n parentEl = dragEl.parentNode; // actualization\n // must be done before animation\n\n if (targetBeforeFirstSwap !== undefined && !isCircumstantialInvert) {\n targetMoveDistance = Math.abs(targetBeforeFirstSwap - getRect(target)[side1]);\n }\n\n changed();\n return completed(true);\n }\n }\n\n if (el.contains(dragEl)) {\n return completed(false);\n }\n }\n\n return false;\n },\n _ignoreWhileAnimating: null,\n _offMoveEvents: function _offMoveEvents() {\n off(document, 'mousemove', this._onTouchMove);\n off(document, 'touchmove', this._onTouchMove);\n off(document, 'pointermove', this._onTouchMove);\n off(document, 'dragover', nearestEmptyInsertDetectEvent);\n off(document, 'mousemove', nearestEmptyInsertDetectEvent);\n off(document, 'touchmove', nearestEmptyInsertDetectEvent);\n },\n _offUpEvents: function _offUpEvents() {\n var ownerDocument = this.el.ownerDocument;\n off(ownerDocument, 'mouseup', this._onDrop);\n off(ownerDocument, 'touchend', this._onDrop);\n off(ownerDocument, 'pointerup', this._onDrop);\n off(ownerDocument, 'touchcancel', this._onDrop);\n off(document, 'selectstart', this);\n },\n _onDrop: function _onDrop(\n /**Event*/\n evt) {\n var el = this.el,\n options = this.options; // Get the index of the dragged element within its parent\n\n newIndex = index(dragEl);\n newDraggableIndex = index(dragEl, options.draggable);\n pluginEvent('drop', this, {\n evt: evt\n });\n parentEl = dragEl && dragEl.parentNode; // Get again after plugin event\n\n newIndex = index(dragEl);\n newDraggableIndex = index(dragEl, options.draggable);\n\n if (Sortable.eventCanceled) {\n this._nulling();\n\n return;\n }\n\n awaitingDragStarted = false;\n isCircumstantialInvert = false;\n pastFirstInvertThresh = false;\n clearInterval(this._loopId);\n clearTimeout(this._dragStartTimer);\n\n _cancelNextTick(this.cloneId);\n\n _cancelNextTick(this._dragStartId); // Unbind events\n\n\n if (this.nativeDraggable) {\n off(document, 'drop', this);\n off(el, 'dragstart', this._onDragStart);\n }\n\n this._offMoveEvents();\n\n this._offUpEvents();\n\n if (Safari) {\n css(document.body, 'user-select', '');\n }\n\n css(dragEl, 'transform', '');\n\n if (evt) {\n if (moved) {\n evt.cancelable && evt.preventDefault();\n !options.dropBubble && evt.stopPropagation();\n }\n\n ghostEl && ghostEl.parentNode && ghostEl.parentNode.removeChild(ghostEl);\n\n if (rootEl === parentEl || putSortable && putSortable.lastPutMode !== 'clone') {\n // Remove clone(s)\n cloneEl && cloneEl.parentNode && cloneEl.parentNode.removeChild(cloneEl);\n }\n\n if (dragEl) {\n if (this.nativeDraggable) {\n off(dragEl, 'dragend', this);\n }\n\n _disableDraggable(dragEl);\n\n dragEl.style['will-change'] = ''; // Remove classes\n // ghostClass is added in dragStarted\n\n if (moved && !awaitingDragStarted) {\n toggleClass(dragEl, putSortable ? putSortable.options.ghostClass : this.options.ghostClass, false);\n }\n\n toggleClass(dragEl, this.options.chosenClass, false); // Drag stop event\n\n _dispatchEvent({\n sortable: this,\n name: 'unchoose',\n toEl: parentEl,\n newIndex: null,\n newDraggableIndex: null,\n originalEvent: evt\n });\n\n if (rootEl !== parentEl) {\n if (newIndex >= 0) {\n // Add event\n _dispatchEvent({\n rootEl: parentEl,\n name: 'add',\n toEl: parentEl,\n fromEl: rootEl,\n originalEvent: evt\n }); // Remove event\n\n\n _dispatchEvent({\n sortable: this,\n name: 'remove',\n toEl: parentEl,\n originalEvent: evt\n }); // drag from one list and drop into another\n\n\n _dispatchEvent({\n rootEl: parentEl,\n name: 'sort',\n toEl: parentEl,\n fromEl: rootEl,\n originalEvent: evt\n });\n\n _dispatchEvent({\n sortable: this,\n name: 'sort',\n toEl: parentEl,\n originalEvent: evt\n });\n }\n\n putSortable && putSortable.save();\n } else {\n if (newIndex !== oldIndex) {\n if (newIndex >= 0) {\n // drag & drop within the same list\n _dispatchEvent({\n sortable: this,\n name: 'update',\n toEl: parentEl,\n originalEvent: evt\n });\n\n _dispatchEvent({\n sortable: this,\n name: 'sort',\n toEl: parentEl,\n originalEvent: evt\n });\n }\n }\n }\n\n if (Sortable.active) {\n /* jshint eqnull:true */\n if (newIndex == null || newIndex === -1) {\n newIndex = oldIndex;\n newDraggableIndex = oldDraggableIndex;\n }\n\n _dispatchEvent({\n sortable: this,\n name: 'end',\n toEl: parentEl,\n originalEvent: evt\n }); // Save sorting\n\n\n this.save();\n }\n }\n }\n\n this._nulling();\n },\n _nulling: function _nulling() {\n pluginEvent('nulling', this);\n rootEl = dragEl = parentEl = ghostEl = nextEl = cloneEl = lastDownEl = cloneHidden = tapEvt = touchEvt = moved = newIndex = newDraggableIndex = oldIndex = oldDraggableIndex = lastTarget = lastDirection = putSortable = activeGroup = Sortable.dragged = Sortable.ghost = Sortable.clone = Sortable.active = null;\n savedInputChecked.forEach(function (el) {\n el.checked = true;\n });\n savedInputChecked.length = lastDx = lastDy = 0;\n },\n handleEvent: function handleEvent(\n /**Event*/\n evt) {\n switch (evt.type) {\n case 'drop':\n case 'dragend':\n this._onDrop(evt);\n\n break;\n\n case 'dragenter':\n case 'dragover':\n if (dragEl) {\n this._onDragOver(evt);\n\n _globalDragOver(evt);\n }\n\n break;\n\n case 'selectstart':\n evt.preventDefault();\n break;\n }\n },\n\n /**\r\n * Serializes the item into an array of string.\r\n * @returns {String[]}\r\n */\n toArray: function toArray() {\n var order = [],\n el,\n children = this.el.children,\n i = 0,\n n = children.length,\n options = this.options;\n\n for (; i < n; i++) {\n el = children[i];\n\n if (closest(el, options.draggable, this.el, false)) {\n order.push(el.getAttribute(options.dataIdAttr) || _generateId(el));\n }\n }\n\n return order;\n },\n\n /**\r\n * Sorts the elements according to the array.\r\n * @param {String[]} order order of the items\r\n */\n sort: function sort(order, useAnimation) {\n var items = {},\n rootEl = this.el;\n this.toArray().forEach(function (id, i) {\n var el = rootEl.children[i];\n\n if (closest(el, this.options.draggable, rootEl, false)) {\n items[id] = el;\n }\n }, this);\n useAnimation && this.captureAnimationState();\n order.forEach(function (id) {\n if (items[id]) {\n rootEl.removeChild(items[id]);\n rootEl.appendChild(items[id]);\n }\n });\n useAnimation && this.animateAll();\n },\n\n /**\r\n * Save the current sorting\r\n */\n save: function save() {\n var store = this.options.store;\n store && store.set && store.set(this);\n },\n\n /**\r\n * For each element in the set, get the first element that matches the selector by testing the element itself and traversing up through its ancestors in the DOM tree.\r\n * @param {HTMLElement} el\r\n * @param {String} [selector] default: `options.draggable`\r\n * @returns {HTMLElement|null}\r\n */\n closest: function closest$1(el, selector) {\n return closest(el, selector || this.options.draggable, this.el, false);\n },\n\n /**\r\n * Set/get option\r\n * @param {string} name\r\n * @param {*} [value]\r\n * @returns {*}\r\n */\n option: function option(name, value) {\n var options = this.options;\n\n if (value === void 0) {\n return options[name];\n } else {\n var modifiedValue = PluginManager.modifyOption(this, name, value);\n\n if (typeof modifiedValue !== 'undefined') {\n options[name] = modifiedValue;\n } else {\n options[name] = value;\n }\n\n if (name === 'group') {\n _prepareGroup(options);\n }\n }\n },\n\n /**\r\n * Destroy\r\n */\n destroy: function destroy() {\n pluginEvent('destroy', this);\n var el = this.el;\n el[expando] = null;\n off(el, 'mousedown', this._onTapStart);\n off(el, 'touchstart', this._onTapStart);\n off(el, 'pointerdown', this._onTapStart);\n\n if (this.nativeDraggable) {\n off(el, 'dragover', this);\n off(el, 'dragenter', this);\n } // Remove draggable attributes\n\n\n Array.prototype.forEach.call(el.querySelectorAll('[draggable]'), function (el) {\n el.removeAttribute('draggable');\n });\n\n this._onDrop();\n\n this._disableDelayedDragEvents();\n\n sortables.splice(sortables.indexOf(this.el), 1);\n this.el = el = null;\n },\n _hideClone: function _hideClone() {\n if (!cloneHidden) {\n pluginEvent('hideClone', this);\n if (Sortable.eventCanceled) return;\n css(cloneEl, 'display', 'none');\n\n if (this.options.removeCloneOnHide && cloneEl.parentNode) {\n cloneEl.parentNode.removeChild(cloneEl);\n }\n\n cloneHidden = true;\n }\n },\n _showClone: function _showClone(putSortable) {\n if (putSortable.lastPutMode !== 'clone') {\n this._hideClone();\n\n return;\n }\n\n if (cloneHidden) {\n pluginEvent('showClone', this);\n if (Sortable.eventCanceled) return; // show clone at dragEl or original position\n\n if (dragEl.parentNode == rootEl && !this.options.group.revertClone) {\n rootEl.insertBefore(cloneEl, dragEl);\n } else if (nextEl) {\n rootEl.insertBefore(cloneEl, nextEl);\n } else {\n rootEl.appendChild(cloneEl);\n }\n\n if (this.options.group.revertClone) {\n this.animate(dragEl, cloneEl);\n }\n\n css(cloneEl, 'display', '');\n cloneHidden = false;\n }\n }\n};\n\nfunction _globalDragOver(\n/**Event*/\nevt) {\n if (evt.dataTransfer) {\n evt.dataTransfer.dropEffect = 'move';\n }\n\n evt.cancelable && evt.preventDefault();\n}\n\nfunction _onMove(fromEl, toEl, dragEl, dragRect, targetEl, targetRect, originalEvent, willInsertAfter) {\n var evt,\n sortable = fromEl[expando],\n onMoveFn = sortable.options.onMove,\n retVal; // Support for new CustomEvent feature\n\n if (window.CustomEvent && !IE11OrLess && !Edge) {\n evt = new CustomEvent('move', {\n bubbles: true,\n cancelable: true\n });\n } else {\n evt = document.createEvent('Event');\n evt.initEvent('move', true, true);\n }\n\n evt.to = toEl;\n evt.from = fromEl;\n evt.dragged = dragEl;\n evt.draggedRect = dragRect;\n evt.related = targetEl || toEl;\n evt.relatedRect = targetRect || getRect(toEl);\n evt.willInsertAfter = willInsertAfter;\n evt.originalEvent = originalEvent;\n fromEl.dispatchEvent(evt);\n\n if (onMoveFn) {\n retVal = onMoveFn.call(sortable, evt, originalEvent);\n }\n\n return retVal;\n}\n\nfunction _disableDraggable(el) {\n el.draggable = false;\n}\n\nfunction _unsilent() {\n _silent = false;\n}\n\nfunction _ghostIsFirst(evt, vertical, sortable) {\n var rect = getRect(getChild(sortable.el, 0, sortable.options, true));\n var spacer = 10;\n return vertical ? evt.clientX < rect.left - spacer || evt.clientY < rect.top && evt.clientX < rect.right : evt.clientY < rect.top - spacer || evt.clientY < rect.bottom && evt.clientX < rect.left;\n}\n\nfunction _ghostIsLast(evt, vertical, sortable) {\n var rect = getRect(lastChild(sortable.el, sortable.options.draggable));\n var spacer = 10;\n return vertical ? evt.clientX > rect.right + spacer || evt.clientX <= rect.right && evt.clientY > rect.bottom && evt.clientX >= rect.left : evt.clientX > rect.right && evt.clientY > rect.top || evt.clientX <= rect.right && evt.clientY > rect.bottom + spacer;\n}\n\nfunction _getSwapDirection(evt, target, targetRect, vertical, swapThreshold, invertedSwapThreshold, invertSwap, isLastTarget) {\n var mouseOnAxis = vertical ? evt.clientY : evt.clientX,\n targetLength = vertical ? targetRect.height : targetRect.width,\n targetS1 = vertical ? targetRect.top : targetRect.left,\n targetS2 = vertical ? targetRect.bottom : targetRect.right,\n invert = false;\n\n if (!invertSwap) {\n // Never invert or create dragEl shadow when target movemenet causes mouse to move past the end of regular swapThreshold\n if (isLastTarget && targetMoveDistance < targetLength * swapThreshold) {\n // multiplied only by swapThreshold because mouse will already be inside target by (1 - threshold) * targetLength / 2\n // check if past first invert threshold on side opposite of lastDirection\n if (!pastFirstInvertThresh && (lastDirection === 1 ? mouseOnAxis > targetS1 + targetLength * invertedSwapThreshold / 2 : mouseOnAxis < targetS2 - targetLength * invertedSwapThreshold / 2)) {\n // past first invert threshold, do not restrict inverted threshold to dragEl shadow\n pastFirstInvertThresh = true;\n }\n\n if (!pastFirstInvertThresh) {\n // dragEl shadow (target move distance shadow)\n if (lastDirection === 1 ? mouseOnAxis < targetS1 + targetMoveDistance // over dragEl shadow\n : mouseOnAxis > targetS2 - targetMoveDistance) {\n return -lastDirection;\n }\n } else {\n invert = true;\n }\n } else {\n // Regular\n if (mouseOnAxis > targetS1 + targetLength * (1 - swapThreshold) / 2 && mouseOnAxis < targetS2 - targetLength * (1 - swapThreshold) / 2) {\n return _getInsertDirection(target);\n }\n }\n }\n\n invert = invert || invertSwap;\n\n if (invert) {\n // Invert of regular\n if (mouseOnAxis < targetS1 + targetLength * invertedSwapThreshold / 2 || mouseOnAxis > targetS2 - targetLength * invertedSwapThreshold / 2) {\n return mouseOnAxis > targetS1 + targetLength / 2 ? 1 : -1;\n }\n }\n\n return 0;\n}\n/**\r\n * Gets the direction dragEl must be swapped relative to target in order to make it\r\n * seem that dragEl has been \"inserted\" into that element's position\r\n * @param {HTMLElement} target The target whose position dragEl is being inserted at\r\n * @return {Number} Direction dragEl must be swapped\r\n */\n\n\nfunction _getInsertDirection(target) {\n if (index(dragEl) < index(target)) {\n return 1;\n } else {\n return -1;\n }\n}\n/**\r\n * Generate id\r\n * @param {HTMLElement} el\r\n * @returns {String}\r\n * @private\r\n */\n\n\nfunction _generateId(el) {\n var str = el.tagName + el.className + el.src + el.href + el.textContent,\n i = str.length,\n sum = 0;\n\n while (i--) {\n sum += str.charCodeAt(i);\n }\n\n return sum.toString(36);\n}\n\nfunction _saveInputCheckedState(root) {\n savedInputChecked.length = 0;\n var inputs = root.getElementsByTagName('input');\n var idx = inputs.length;\n\n while (idx--) {\n var el = inputs[idx];\n el.checked && savedInputChecked.push(el);\n }\n}\n\nfunction _nextTick(fn) {\n return setTimeout(fn, 0);\n}\n\nfunction _cancelNextTick(id) {\n return clearTimeout(id);\n} // Fixed #973:\n\n\nif (documentExists) {\n on(document, 'touchmove', function (evt) {\n if ((Sortable.active || awaitingDragStarted) && evt.cancelable) {\n evt.preventDefault();\n }\n });\n} // Export utils\n\n\nSortable.utils = {\n on: on,\n off: off,\n css: css,\n find: find,\n is: function is(el, selector) {\n return !!closest(el, selector, el, false);\n },\n extend: extend,\n throttle: throttle,\n closest: closest,\n toggleClass: toggleClass,\n clone: clone,\n index: index,\n nextTick: _nextTick,\n cancelNextTick: _cancelNextTick,\n detectDirection: _detectDirection,\n getChild: getChild\n};\n/**\r\n * Get the Sortable instance of an element\r\n * @param {HTMLElement} element The element\r\n * @return {Sortable|undefined} The instance of Sortable\r\n */\n\nSortable.get = function (element) {\n return element[expando];\n};\n/**\r\n * Mount a plugin to Sortable\r\n * @param {...SortablePlugin|SortablePlugin[]} plugins Plugins being mounted\r\n */\n\n\nSortable.mount = function () {\n for (var _len = arguments.length, plugins = new Array(_len), _key = 0; _key < _len; _key++) {\n plugins[_key] = arguments[_key];\n }\n\n if (plugins[0].constructor === Array) plugins = plugins[0];\n plugins.forEach(function (plugin) {\n if (!plugin.prototype || !plugin.prototype.constructor) {\n throw \"Sortable: Mounted plugin must be a constructor function, not \".concat({}.toString.call(plugin));\n }\n\n if (plugin.utils) Sortable.utils = _objectSpread2(_objectSpread2({}, Sortable.utils), plugin.utils);\n PluginManager.mount(plugin);\n });\n};\n/**\r\n * Create sortable instance\r\n * @param {HTMLElement} el\r\n * @param {Object} [options]\r\n */\n\n\nSortable.create = function (el, options) {\n return new Sortable(el, options);\n}; // Export\n\n\nSortable.version = version;\n\nvar autoScrolls = [],\n scrollEl,\n scrollRootEl,\n scrolling = false,\n lastAutoScrollX,\n lastAutoScrollY,\n touchEvt$1,\n pointerElemChangedInterval;\n\nfunction AutoScrollPlugin() {\n function AutoScroll() {\n this.defaults = {\n scroll: true,\n forceAutoScrollFallback: false,\n scrollSensitivity: 30,\n scrollSpeed: 10,\n bubbleScroll: true\n }; // Bind all private methods\n\n for (var fn in this) {\n if (fn.charAt(0) === '_' && typeof this[fn] === 'function') {\n this[fn] = this[fn].bind(this);\n }\n }\n }\n\n AutoScroll.prototype = {\n dragStarted: function dragStarted(_ref) {\n var originalEvent = _ref.originalEvent;\n\n if (this.sortable.nativeDraggable) {\n on(document, 'dragover', this._handleAutoScroll);\n } else {\n if (this.options.supportPointer) {\n on(document, 'pointermove', this._handleFallbackAutoScroll);\n } else if (originalEvent.touches) {\n on(document, 'touchmove', this._handleFallbackAutoScroll);\n } else {\n on(document, 'mousemove', this._handleFallbackAutoScroll);\n }\n }\n },\n dragOverCompleted: function dragOverCompleted(_ref2) {\n var originalEvent = _ref2.originalEvent;\n\n // For when bubbling is canceled and using fallback (fallback 'touchmove' always reached)\n if (!this.options.dragOverBubble && !originalEvent.rootEl) {\n this._handleAutoScroll(originalEvent);\n }\n },\n drop: function drop() {\n if (this.sortable.nativeDraggable) {\n off(document, 'dragover', this._handleAutoScroll);\n } else {\n off(document, 'pointermove', this._handleFallbackAutoScroll);\n off(document, 'touchmove', this._handleFallbackAutoScroll);\n off(document, 'mousemove', this._handleFallbackAutoScroll);\n }\n\n clearPointerElemChangedInterval();\n clearAutoScrolls();\n cancelThrottle();\n },\n nulling: function nulling() {\n touchEvt$1 = scrollRootEl = scrollEl = scrolling = pointerElemChangedInterval = lastAutoScrollX = lastAutoScrollY = null;\n autoScrolls.length = 0;\n },\n _handleFallbackAutoScroll: function _handleFallbackAutoScroll(evt) {\n this._handleAutoScroll(evt, true);\n },\n _handleAutoScroll: function _handleAutoScroll(evt, fallback) {\n var _this = this;\n\n var x = (evt.touches ? evt.touches[0] : evt).clientX,\n y = (evt.touches ? evt.touches[0] : evt).clientY,\n elem = document.elementFromPoint(x, y);\n touchEvt$1 = evt; // IE does not seem to have native autoscroll,\n // Edge's autoscroll seems too conditional,\n // MACOS Safari does not have autoscroll,\n // Firefox and Chrome are good\n\n if (fallback || this.options.forceAutoScrollFallback || Edge || IE11OrLess || Safari) {\n autoScroll(evt, this.options, elem, fallback); // Listener for pointer element change\n\n var ogElemScroller = getParentAutoScrollElement(elem, true);\n\n if (scrolling && (!pointerElemChangedInterval || x !== lastAutoScrollX || y !== lastAutoScrollY)) {\n pointerElemChangedInterval && clearPointerElemChangedInterval(); // Detect for pointer elem change, emulating native DnD behaviour\n\n pointerElemChangedInterval = setInterval(function () {\n var newElem = getParentAutoScrollElement(document.elementFromPoint(x, y), true);\n\n if (newElem !== ogElemScroller) {\n ogElemScroller = newElem;\n clearAutoScrolls();\n }\n\n autoScroll(evt, _this.options, newElem, fallback);\n }, 10);\n lastAutoScrollX = x;\n lastAutoScrollY = y;\n }\n } else {\n // if DnD is enabled (and browser has good autoscrolling), first autoscroll will already scroll, so get parent autoscroll of first autoscroll\n if (!this.options.bubbleScroll || getParentAutoScrollElement(elem, true) === getWindowScrollingElement()) {\n clearAutoScrolls();\n return;\n }\n\n autoScroll(evt, this.options, getParentAutoScrollElement(elem, false), false);\n }\n }\n };\n return _extends(AutoScroll, {\n pluginName: 'scroll',\n initializeByDefault: true\n });\n}\n\nfunction clearAutoScrolls() {\n autoScrolls.forEach(function (autoScroll) {\n clearInterval(autoScroll.pid);\n });\n autoScrolls = [];\n}\n\nfunction clearPointerElemChangedInterval() {\n clearInterval(pointerElemChangedInterval);\n}\n\nvar autoScroll = throttle(function (evt, options, rootEl, isFallback) {\n // Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=505521\n if (!options.scroll) return;\n var x = (evt.touches ? evt.touches[0] : evt).clientX,\n y = (evt.touches ? evt.touches[0] : evt).clientY,\n sens = options.scrollSensitivity,\n speed = options.scrollSpeed,\n winScroller = getWindowScrollingElement();\n var scrollThisInstance = false,\n scrollCustomFn; // New scroll root, set scrollEl\n\n if (scrollRootEl !== rootEl) {\n scrollRootEl = rootEl;\n clearAutoScrolls();\n scrollEl = options.scroll;\n scrollCustomFn = options.scrollFn;\n\n if (scrollEl === true) {\n scrollEl = getParentAutoScrollElement(rootEl, true);\n }\n }\n\n var layersOut = 0;\n var currentParent = scrollEl;\n\n do {\n var el = currentParent,\n rect = getRect(el),\n top = rect.top,\n bottom = rect.bottom,\n left = rect.left,\n right = rect.right,\n width = rect.width,\n height = rect.height,\n canScrollX = void 0,\n canScrollY = void 0,\n scrollWidth = el.scrollWidth,\n scrollHeight = el.scrollHeight,\n elCSS = css(el),\n scrollPosX = el.scrollLeft,\n scrollPosY = el.scrollTop;\n\n if (el === winScroller) {\n canScrollX = width < scrollWidth && (elCSS.overflowX === 'auto' || elCSS.overflowX === 'scroll' || elCSS.overflowX === 'visible');\n canScrollY = height < scrollHeight && (elCSS.overflowY === 'auto' || elCSS.overflowY === 'scroll' || elCSS.overflowY === 'visible');\n } else {\n canScrollX = width < scrollWidth && (elCSS.overflowX === 'auto' || elCSS.overflowX === 'scroll');\n canScrollY = height < scrollHeight && (elCSS.overflowY === 'auto' || elCSS.overflowY === 'scroll');\n }\n\n var vx = canScrollX && (Math.abs(right - x) <= sens && scrollPosX + width < scrollWidth) - (Math.abs(left - x) <= sens && !!scrollPosX);\n var vy = canScrollY && (Math.abs(bottom - y) <= sens && scrollPosY + height < scrollHeight) - (Math.abs(top - y) <= sens && !!scrollPosY);\n\n if (!autoScrolls[layersOut]) {\n for (var i = 0; i <= layersOut; i++) {\n if (!autoScrolls[i]) {\n autoScrolls[i] = {};\n }\n }\n }\n\n if (autoScrolls[layersOut].vx != vx || autoScrolls[layersOut].vy != vy || autoScrolls[layersOut].el !== el) {\n autoScrolls[layersOut].el = el;\n autoScrolls[layersOut].vx = vx;\n autoScrolls[layersOut].vy = vy;\n clearInterval(autoScrolls[layersOut].pid);\n\n if (vx != 0 || vy != 0) {\n scrollThisInstance = true;\n /* jshint loopfunc:true */\n\n autoScrolls[layersOut].pid = setInterval(function () {\n // emulate drag over during autoscroll (fallback), emulating native DnD behaviour\n if (isFallback && this.layer === 0) {\n Sortable.active._onTouchMove(touchEvt$1); // To move ghost if it is positioned absolutely\n\n }\n\n var scrollOffsetY = autoScrolls[this.layer].vy ? autoScrolls[this.layer].vy * speed : 0;\n var scrollOffsetX = autoScrolls[this.layer].vx ? autoScrolls[this.layer].vx * speed : 0;\n\n if (typeof scrollCustomFn === 'function') {\n if (scrollCustomFn.call(Sortable.dragged.parentNode[expando], scrollOffsetX, scrollOffsetY, evt, touchEvt$1, autoScrolls[this.layer].el) !== 'continue') {\n return;\n }\n }\n\n scrollBy(autoScrolls[this.layer].el, scrollOffsetX, scrollOffsetY);\n }.bind({\n layer: layersOut\n }), 24);\n }\n }\n\n layersOut++;\n } while (options.bubbleScroll && currentParent !== winScroller && (currentParent = getParentAutoScrollElement(currentParent, false)));\n\n scrolling = scrollThisInstance; // in case another function catches scrolling as false in between when it is not\n}, 30);\n\nvar drop = function drop(_ref) {\n var originalEvent = _ref.originalEvent,\n putSortable = _ref.putSortable,\n dragEl = _ref.dragEl,\n activeSortable = _ref.activeSortable,\n dispatchSortableEvent = _ref.dispatchSortableEvent,\n hideGhostForTarget = _ref.hideGhostForTarget,\n unhideGhostForTarget = _ref.unhideGhostForTarget;\n if (!originalEvent) return;\n var toSortable = putSortable || activeSortable;\n hideGhostForTarget();\n var touch = originalEvent.changedTouches && originalEvent.changedTouches.length ? originalEvent.changedTouches[0] : originalEvent;\n var target = document.elementFromPoint(touch.clientX, touch.clientY);\n unhideGhostForTarget();\n\n if (toSortable && !toSortable.el.contains(target)) {\n dispatchSortableEvent('spill');\n this.onSpill({\n dragEl: dragEl,\n putSortable: putSortable\n });\n }\n};\n\nfunction Revert() {}\n\nRevert.prototype = {\n startIndex: null,\n dragStart: function dragStart(_ref2) {\n var oldDraggableIndex = _ref2.oldDraggableIndex;\n this.startIndex = oldDraggableIndex;\n },\n onSpill: function onSpill(_ref3) {\n var dragEl = _ref3.dragEl,\n putSortable = _ref3.putSortable;\n this.sortable.captureAnimationState();\n\n if (putSortable) {\n putSortable.captureAnimationState();\n }\n\n var nextSibling = getChild(this.sortable.el, this.startIndex, this.options);\n\n if (nextSibling) {\n this.sortable.el.insertBefore(dragEl, nextSibling);\n } else {\n this.sortable.el.appendChild(dragEl);\n }\n\n this.sortable.animateAll();\n\n if (putSortable) {\n putSortable.animateAll();\n }\n },\n drop: drop\n};\n\n_extends(Revert, {\n pluginName: 'revertOnSpill'\n});\n\nfunction Remove() {}\n\nRemove.prototype = {\n onSpill: function onSpill(_ref4) {\n var dragEl = _ref4.dragEl,\n putSortable = _ref4.putSortable;\n var parentSortable = putSortable || this.sortable;\n parentSortable.captureAnimationState();\n dragEl.parentNode && dragEl.parentNode.removeChild(dragEl);\n parentSortable.animateAll();\n },\n drop: drop\n};\n\n_extends(Remove, {\n pluginName: 'removeOnSpill'\n});\n\nvar lastSwapEl;\n\nfunction SwapPlugin() {\n function Swap() {\n this.defaults = {\n swapClass: 'sortable-swap-highlight'\n };\n }\n\n Swap.prototype = {\n dragStart: function dragStart(_ref) {\n var dragEl = _ref.dragEl;\n lastSwapEl = dragEl;\n },\n dragOverValid: function dragOverValid(_ref2) {\n var completed = _ref2.completed,\n target = _ref2.target,\n onMove = _ref2.onMove,\n activeSortable = _ref2.activeSortable,\n changed = _ref2.changed,\n cancel = _ref2.cancel;\n if (!activeSortable.options.swap) return;\n var el = this.sortable.el,\n options = this.options;\n\n if (target && target !== el) {\n var prevSwapEl = lastSwapEl;\n\n if (onMove(target) !== false) {\n toggleClass(target, options.swapClass, true);\n lastSwapEl = target;\n } else {\n lastSwapEl = null;\n }\n\n if (prevSwapEl && prevSwapEl !== lastSwapEl) {\n toggleClass(prevSwapEl, options.swapClass, false);\n }\n }\n\n changed();\n completed(true);\n cancel();\n },\n drop: function drop(_ref3) {\n var activeSortable = _ref3.activeSortable,\n putSortable = _ref3.putSortable,\n dragEl = _ref3.dragEl;\n var toSortable = putSortable || this.sortable;\n var options = this.options;\n lastSwapEl && toggleClass(lastSwapEl, options.swapClass, false);\n\n if (lastSwapEl && (options.swap || putSortable && putSortable.options.swap)) {\n if (dragEl !== lastSwapEl) {\n toSortable.captureAnimationState();\n if (toSortable !== activeSortable) activeSortable.captureAnimationState();\n swapNodes(dragEl, lastSwapEl);\n toSortable.animateAll();\n if (toSortable !== activeSortable) activeSortable.animateAll();\n }\n }\n },\n nulling: function nulling() {\n lastSwapEl = null;\n }\n };\n return _extends(Swap, {\n pluginName: 'swap',\n eventProperties: function eventProperties() {\n return {\n swapItem: lastSwapEl\n };\n }\n });\n}\n\nfunction swapNodes(n1, n2) {\n var p1 = n1.parentNode,\n p2 = n2.parentNode,\n i1,\n i2;\n if (!p1 || !p2 || p1.isEqualNode(n2) || p2.isEqualNode(n1)) return;\n i1 = index(n1);\n i2 = index(n2);\n\n if (p1.isEqualNode(p2) && i1 < i2) {\n i2++;\n }\n\n p1.insertBefore(n2, p1.children[i1]);\n p2.insertBefore(n1, p2.children[i2]);\n}\n\nvar multiDragElements = [],\n multiDragClones = [],\n lastMultiDragSelect,\n // for selection with modifier key down (SHIFT)\nmultiDragSortable,\n initialFolding = false,\n // Initial multi-drag fold when drag started\nfolding = false,\n // Folding any other time\ndragStarted = false,\n dragEl$1,\n clonesFromRect,\n clonesHidden;\n\nfunction MultiDragPlugin() {\n function MultiDrag(sortable) {\n // Bind all private methods\n for (var fn in this) {\n if (fn.charAt(0) === '_' && typeof this[fn] === 'function') {\n this[fn] = this[fn].bind(this);\n }\n }\n\n if (!sortable.options.avoidImplicitDeselect) {\n if (sortable.options.supportPointer) {\n on(document, 'pointerup', this._deselectMultiDrag);\n } else {\n on(document, 'mouseup', this._deselectMultiDrag);\n on(document, 'touchend', this._deselectMultiDrag);\n }\n }\n\n on(document, 'keydown', this._checkKeyDown);\n on(document, 'keyup', this._checkKeyUp);\n this.defaults = {\n selectedClass: 'sortable-selected',\n multiDragKey: null,\n avoidImplicitDeselect: false,\n setData: function setData(dataTransfer, dragEl) {\n var data = '';\n\n if (multiDragElements.length && multiDragSortable === sortable) {\n multiDragElements.forEach(function (multiDragElement, i) {\n data += (!i ? '' : ', ') + multiDragElement.textContent;\n });\n } else {\n data = dragEl.textContent;\n }\n\n dataTransfer.setData('Text', data);\n }\n };\n }\n\n MultiDrag.prototype = {\n multiDragKeyDown: false,\n isMultiDrag: false,\n delayStartGlobal: function delayStartGlobal(_ref) {\n var dragged = _ref.dragEl;\n dragEl$1 = dragged;\n },\n delayEnded: function delayEnded() {\n this.isMultiDrag = ~multiDragElements.indexOf(dragEl$1);\n },\n setupClone: function setupClone(_ref2) {\n var sortable = _ref2.sortable,\n cancel = _ref2.cancel;\n if (!this.isMultiDrag) return;\n\n for (var i = 0; i < multiDragElements.length; i++) {\n multiDragClones.push(clone(multiDragElements[i]));\n multiDragClones[i].sortableIndex = multiDragElements[i].sortableIndex;\n multiDragClones[i].draggable = false;\n multiDragClones[i].style['will-change'] = '';\n toggleClass(multiDragClones[i], this.options.selectedClass, false);\n multiDragElements[i] === dragEl$1 && toggleClass(multiDragClones[i], this.options.chosenClass, false);\n }\n\n sortable._hideClone();\n\n cancel();\n },\n clone: function clone(_ref3) {\n var sortable = _ref3.sortable,\n rootEl = _ref3.rootEl,\n dispatchSortableEvent = _ref3.dispatchSortableEvent,\n cancel = _ref3.cancel;\n if (!this.isMultiDrag) return;\n\n if (!this.options.removeCloneOnHide) {\n if (multiDragElements.length && multiDragSortable === sortable) {\n insertMultiDragClones(true, rootEl);\n dispatchSortableEvent('clone');\n cancel();\n }\n }\n },\n showClone: function showClone(_ref4) {\n var cloneNowShown = _ref4.cloneNowShown,\n rootEl = _ref4.rootEl,\n cancel = _ref4.cancel;\n if (!this.isMultiDrag) return;\n insertMultiDragClones(false, rootEl);\n multiDragClones.forEach(function (clone) {\n css(clone, 'display', '');\n });\n cloneNowShown();\n clonesHidden = false;\n cancel();\n },\n hideClone: function hideClone(_ref5) {\n var _this = this;\n\n var sortable = _ref5.sortable,\n cloneNowHidden = _ref5.cloneNowHidden,\n cancel = _ref5.cancel;\n if (!this.isMultiDrag) return;\n multiDragClones.forEach(function (clone) {\n css(clone, 'display', 'none');\n\n if (_this.options.removeCloneOnHide && clone.parentNode) {\n clone.parentNode.removeChild(clone);\n }\n });\n cloneNowHidden();\n clonesHidden = true;\n cancel();\n },\n dragStartGlobal: function dragStartGlobal(_ref6) {\n var sortable = _ref6.sortable;\n\n if (!this.isMultiDrag && multiDragSortable) {\n multiDragSortable.multiDrag._deselectMultiDrag();\n }\n\n multiDragElements.forEach(function (multiDragElement) {\n multiDragElement.sortableIndex = index(multiDragElement);\n }); // Sort multi-drag elements\n\n multiDragElements = multiDragElements.sort(function (a, b) {\n return a.sortableIndex - b.sortableIndex;\n });\n dragStarted = true;\n },\n dragStarted: function dragStarted(_ref7) {\n var _this2 = this;\n\n var sortable = _ref7.sortable;\n if (!this.isMultiDrag) return;\n\n if (this.options.sort) {\n // Capture rects,\n // hide multi drag elements (by positioning them absolute),\n // set multi drag elements rects to dragRect,\n // show multi drag elements,\n // animate to rects,\n // unset rects & remove from DOM\n sortable.captureAnimationState();\n\n if (this.options.animation) {\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement === dragEl$1) return;\n css(multiDragElement, 'position', 'absolute');\n });\n var dragRect = getRect(dragEl$1, false, true, true);\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement === dragEl$1) return;\n setRect(multiDragElement, dragRect);\n });\n folding = true;\n initialFolding = true;\n }\n }\n\n sortable.animateAll(function () {\n folding = false;\n initialFolding = false;\n\n if (_this2.options.animation) {\n multiDragElements.forEach(function (multiDragElement) {\n unsetRect(multiDragElement);\n });\n } // Remove all auxiliary multidrag items from el, if sorting enabled\n\n\n if (_this2.options.sort) {\n removeMultiDragElements();\n }\n });\n },\n dragOver: function dragOver(_ref8) {\n var target = _ref8.target,\n completed = _ref8.completed,\n cancel = _ref8.cancel;\n\n if (folding && ~multiDragElements.indexOf(target)) {\n completed(false);\n cancel();\n }\n },\n revert: function revert(_ref9) {\n var fromSortable = _ref9.fromSortable,\n rootEl = _ref9.rootEl,\n sortable = _ref9.sortable,\n dragRect = _ref9.dragRect;\n\n if (multiDragElements.length > 1) {\n // Setup unfold animation\n multiDragElements.forEach(function (multiDragElement) {\n sortable.addAnimationState({\n target: multiDragElement,\n rect: folding ? getRect(multiDragElement) : dragRect\n });\n unsetRect(multiDragElement);\n multiDragElement.fromRect = dragRect;\n fromSortable.removeAnimationState(multiDragElement);\n });\n folding = false;\n insertMultiDragElements(!this.options.removeCloneOnHide, rootEl);\n }\n },\n dragOverCompleted: function dragOverCompleted(_ref10) {\n var sortable = _ref10.sortable,\n isOwner = _ref10.isOwner,\n insertion = _ref10.insertion,\n activeSortable = _ref10.activeSortable,\n parentEl = _ref10.parentEl,\n putSortable = _ref10.putSortable;\n var options = this.options;\n\n if (insertion) {\n // Clones must be hidden before folding animation to capture dragRectAbsolute properly\n if (isOwner) {\n activeSortable._hideClone();\n }\n\n initialFolding = false; // If leaving sort:false root, or already folding - Fold to new location\n\n if (options.animation && multiDragElements.length > 1 && (folding || !isOwner && !activeSortable.options.sort && !putSortable)) {\n // Fold: Set all multi drag elements's rects to dragEl's rect when multi-drag elements are invisible\n var dragRectAbsolute = getRect(dragEl$1, false, true, true);\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement === dragEl$1) return;\n setRect(multiDragElement, dragRectAbsolute); // Move element(s) to end of parentEl so that it does not interfere with multi-drag clones insertion if they are inserted\n // while folding, and so that we can capture them again because old sortable will no longer be fromSortable\n\n parentEl.appendChild(multiDragElement);\n });\n folding = true;\n } // Clones must be shown (and check to remove multi drags) after folding when interfering multiDragElements are moved out\n\n\n if (!isOwner) {\n // Only remove if not folding (folding will remove them anyways)\n if (!folding) {\n removeMultiDragElements();\n }\n\n if (multiDragElements.length > 1) {\n var clonesHiddenBefore = clonesHidden;\n\n activeSortable._showClone(sortable); // Unfold animation for clones if showing from hidden\n\n\n if (activeSortable.options.animation && !clonesHidden && clonesHiddenBefore) {\n multiDragClones.forEach(function (clone) {\n activeSortable.addAnimationState({\n target: clone,\n rect: clonesFromRect\n });\n clone.fromRect = clonesFromRect;\n clone.thisAnimationDuration = null;\n });\n }\n } else {\n activeSortable._showClone(sortable);\n }\n }\n }\n },\n dragOverAnimationCapture: function dragOverAnimationCapture(_ref11) {\n var dragRect = _ref11.dragRect,\n isOwner = _ref11.isOwner,\n activeSortable = _ref11.activeSortable;\n multiDragElements.forEach(function (multiDragElement) {\n multiDragElement.thisAnimationDuration = null;\n });\n\n if (activeSortable.options.animation && !isOwner && activeSortable.multiDrag.isMultiDrag) {\n clonesFromRect = _extends({}, dragRect);\n var dragMatrix = matrix(dragEl$1, true);\n clonesFromRect.top -= dragMatrix.f;\n clonesFromRect.left -= dragMatrix.e;\n }\n },\n dragOverAnimationComplete: function dragOverAnimationComplete() {\n if (folding) {\n folding = false;\n removeMultiDragElements();\n }\n },\n drop: function drop(_ref12) {\n var evt = _ref12.originalEvent,\n rootEl = _ref12.rootEl,\n parentEl = _ref12.parentEl,\n sortable = _ref12.sortable,\n dispatchSortableEvent = _ref12.dispatchSortableEvent,\n oldIndex = _ref12.oldIndex,\n putSortable = _ref12.putSortable;\n var toSortable = putSortable || this.sortable;\n if (!evt) return;\n var options = this.options,\n children = parentEl.children; // Multi-drag selection\n\n if (!dragStarted) {\n if (options.multiDragKey && !this.multiDragKeyDown) {\n this._deselectMultiDrag();\n }\n\n toggleClass(dragEl$1, options.selectedClass, !~multiDragElements.indexOf(dragEl$1));\n\n if (!~multiDragElements.indexOf(dragEl$1)) {\n multiDragElements.push(dragEl$1);\n dispatchEvent({\n sortable: sortable,\n rootEl: rootEl,\n name: 'select',\n targetEl: dragEl$1,\n originalEvent: evt\n }); // Modifier activated, select from last to dragEl\n\n if (evt.shiftKey && lastMultiDragSelect && sortable.el.contains(lastMultiDragSelect)) {\n var lastIndex = index(lastMultiDragSelect),\n currentIndex = index(dragEl$1);\n\n if (~lastIndex && ~currentIndex && lastIndex !== currentIndex) {\n // Must include lastMultiDragSelect (select it), in case modified selection from no selection\n // (but previous selection existed)\n var n, i;\n\n if (currentIndex > lastIndex) {\n i = lastIndex;\n n = currentIndex;\n } else {\n i = currentIndex;\n n = lastIndex + 1;\n }\n\n for (; i < n; i++) {\n if (~multiDragElements.indexOf(children[i])) continue;\n toggleClass(children[i], options.selectedClass, true);\n multiDragElements.push(children[i]);\n dispatchEvent({\n sortable: sortable,\n rootEl: rootEl,\n name: 'select',\n targetEl: children[i],\n originalEvent: evt\n });\n }\n }\n } else {\n lastMultiDragSelect = dragEl$1;\n }\n\n multiDragSortable = toSortable;\n } else {\n multiDragElements.splice(multiDragElements.indexOf(dragEl$1), 1);\n lastMultiDragSelect = null;\n dispatchEvent({\n sortable: sortable,\n rootEl: rootEl,\n name: 'deselect',\n targetEl: dragEl$1,\n originalEvent: evt\n });\n }\n } // Multi-drag drop\n\n\n if (dragStarted && this.isMultiDrag) {\n folding = false; // Do not \"unfold\" after around dragEl if reverted\n\n if ((parentEl[expando].options.sort || parentEl !== rootEl) && multiDragElements.length > 1) {\n var dragRect = getRect(dragEl$1),\n multiDragIndex = index(dragEl$1, ':not(.' + this.options.selectedClass + ')');\n if (!initialFolding && options.animation) dragEl$1.thisAnimationDuration = null;\n toSortable.captureAnimationState();\n\n if (!initialFolding) {\n if (options.animation) {\n dragEl$1.fromRect = dragRect;\n multiDragElements.forEach(function (multiDragElement) {\n multiDragElement.thisAnimationDuration = null;\n\n if (multiDragElement !== dragEl$1) {\n var rect = folding ? getRect(multiDragElement) : dragRect;\n multiDragElement.fromRect = rect; // Prepare unfold animation\n\n toSortable.addAnimationState({\n target: multiDragElement,\n rect: rect\n });\n }\n });\n } // Multi drag elements are not necessarily removed from the DOM on drop, so to reinsert\n // properly they must all be removed\n\n\n removeMultiDragElements();\n multiDragElements.forEach(function (multiDragElement) {\n if (children[multiDragIndex]) {\n parentEl.insertBefore(multiDragElement, children[multiDragIndex]);\n } else {\n parentEl.appendChild(multiDragElement);\n }\n\n multiDragIndex++;\n }); // If initial folding is done, the elements may have changed position because they are now\n // unfolding around dragEl, even though dragEl may not have his index changed, so update event\n // must be fired here as Sortable will not.\n\n if (oldIndex === index(dragEl$1)) {\n var update = false;\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement.sortableIndex !== index(multiDragElement)) {\n update = true;\n return;\n }\n });\n\n if (update) {\n dispatchSortableEvent('update');\n }\n }\n } // Must be done after capturing individual rects (scroll bar)\n\n\n multiDragElements.forEach(function (multiDragElement) {\n unsetRect(multiDragElement);\n });\n toSortable.animateAll();\n }\n\n multiDragSortable = toSortable;\n } // Remove clones if necessary\n\n\n if (rootEl === parentEl || putSortable && putSortable.lastPutMode !== 'clone') {\n multiDragClones.forEach(function (clone) {\n clone.parentNode && clone.parentNode.removeChild(clone);\n });\n }\n },\n nullingGlobal: function nullingGlobal() {\n this.isMultiDrag = dragStarted = false;\n multiDragClones.length = 0;\n },\n destroyGlobal: function destroyGlobal() {\n this._deselectMultiDrag();\n\n off(document, 'pointerup', this._deselectMultiDrag);\n off(document, 'mouseup', this._deselectMultiDrag);\n off(document, 'touchend', this._deselectMultiDrag);\n off(document, 'keydown', this._checkKeyDown);\n off(document, 'keyup', this._checkKeyUp);\n },\n _deselectMultiDrag: function _deselectMultiDrag(evt) {\n if (typeof dragStarted !== \"undefined\" && dragStarted) return; // Only deselect if selection is in this sortable\n\n if (multiDragSortable !== this.sortable) return; // Only deselect if target is not item in this sortable\n\n if (evt && closest(evt.target, this.options.draggable, this.sortable.el, false)) return; // Only deselect if left click\n\n if (evt && evt.button !== 0) return;\n\n while (multiDragElements.length) {\n var el = multiDragElements[0];\n toggleClass(el, this.options.selectedClass, false);\n multiDragElements.shift();\n dispatchEvent({\n sortable: this.sortable,\n rootEl: this.sortable.el,\n name: 'deselect',\n targetEl: el,\n originalEvent: evt\n });\n }\n },\n _checkKeyDown: function _checkKeyDown(evt) {\n if (evt.key === this.options.multiDragKey) {\n this.multiDragKeyDown = true;\n }\n },\n _checkKeyUp: function _checkKeyUp(evt) {\n if (evt.key === this.options.multiDragKey) {\n this.multiDragKeyDown = false;\n }\n }\n };\n return _extends(MultiDrag, {\n // Static methods & properties\n pluginName: 'multiDrag',\n utils: {\n /**\r\n * Selects the provided multi-drag item\r\n * @param {HTMLElement} el The element to be selected\r\n */\n select: function select(el) {\n var sortable = el.parentNode[expando];\n if (!sortable || !sortable.options.multiDrag || ~multiDragElements.indexOf(el)) return;\n\n if (multiDragSortable && multiDragSortable !== sortable) {\n multiDragSortable.multiDrag._deselectMultiDrag();\n\n multiDragSortable = sortable;\n }\n\n toggleClass(el, sortable.options.selectedClass, true);\n multiDragElements.push(el);\n },\n\n /**\r\n * Deselects the provided multi-drag item\r\n * @param {HTMLElement} el The element to be deselected\r\n */\n deselect: function deselect(el) {\n var sortable = el.parentNode[expando],\n index = multiDragElements.indexOf(el);\n if (!sortable || !sortable.options.multiDrag || !~index) return;\n toggleClass(el, sortable.options.selectedClass, false);\n multiDragElements.splice(index, 1);\n }\n },\n eventProperties: function eventProperties() {\n var _this3 = this;\n\n var oldIndicies = [],\n newIndicies = [];\n multiDragElements.forEach(function (multiDragElement) {\n oldIndicies.push({\n multiDragElement: multiDragElement,\n index: multiDragElement.sortableIndex\n }); // multiDragElements will already be sorted if folding\n\n var newIndex;\n\n if (folding && multiDragElement !== dragEl$1) {\n newIndex = -1;\n } else if (folding) {\n newIndex = index(multiDragElement, ':not(.' + _this3.options.selectedClass + ')');\n } else {\n newIndex = index(multiDragElement);\n }\n\n newIndicies.push({\n multiDragElement: multiDragElement,\n index: newIndex\n });\n });\n return {\n items: _toConsumableArray(multiDragElements),\n clones: [].concat(multiDragClones),\n oldIndicies: oldIndicies,\n newIndicies: newIndicies\n };\n },\n optionListeners: {\n multiDragKey: function multiDragKey(key) {\n key = key.toLowerCase();\n\n if (key === 'ctrl') {\n key = 'Control';\n } else if (key.length > 1) {\n key = key.charAt(0).toUpperCase() + key.substr(1);\n }\n\n return key;\n }\n }\n });\n}\n\nfunction insertMultiDragElements(clonesInserted, rootEl) {\n multiDragElements.forEach(function (multiDragElement, i) {\n var target = rootEl.children[multiDragElement.sortableIndex + (clonesInserted ? Number(i) : 0)];\n\n if (target) {\n rootEl.insertBefore(multiDragElement, target);\n } else {\n rootEl.appendChild(multiDragElement);\n }\n });\n}\n/**\r\n * Insert multi-drag clones\r\n * @param {[Boolean]} elementsInserted Whether the multi-drag elements are inserted\r\n * @param {HTMLElement} rootEl\r\n */\n\n\nfunction insertMultiDragClones(elementsInserted, rootEl) {\n multiDragClones.forEach(function (clone, i) {\n var target = rootEl.children[clone.sortableIndex + (elementsInserted ? Number(i) : 0)];\n\n if (target) {\n rootEl.insertBefore(clone, target);\n } else {\n rootEl.appendChild(clone);\n }\n });\n}\n\nfunction removeMultiDragElements() {\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement === dragEl$1) return;\n multiDragElement.parentNode && multiDragElement.parentNode.removeChild(multiDragElement);\n });\n}\n\nSortable.mount(new AutoScrollPlugin());\nSortable.mount(Remove, Revert);\n\nexport default Sortable;\nexport { MultiDragPlugin as MultiDrag, Sortable, SwapPlugin as Swap };\n","\n\n\n\n","import mod from \"-!../../../src/web/assets/admintable/node_modules/babel-loader/lib/index.js??clonedRuleSet-2.use!../../../src/web/assets/admintable/node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../src/web/assets/admintable/node_modules/babel-loader/lib/index.js??clonedRuleSet-2.use!../../../src/web/assets/admintable/node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=65861e68&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../src/web/assets/admintable/node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"vue-admin-table\",class:{'vue-admin-table-padded': _vm.padded},attrs:{\"id\":_vm.tableId}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showToolbar),expression:\"showToolbar\"}],staticClass:\"toolbar\"},[_c('div',{staticClass:\"flex flex-nowrap\"},[_vm._l((_vm.actions),function(action,index){return _c('div',{key:index},[_c('admin-table-action-button',{attrs:{\"label\":action.label,\"icon\":action.icon,\"action\":action.action,\"actions\":action.actions,\"allow-multiple\":action.allowMultiple,\"ids\":_vm.checks,\"enabled\":_vm.checks.length ? true : false,\"error\":action.error,\"ajax\":action.ajax},on:{\"reload\":_vm.reload}})],1)}),_vm._v(\" \"),(_vm.search && !_vm.tableData.length)?_c('div',{staticClass:\"flex-grow texticon search icon clearable\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.searchTerm),expression:\"searchTerm\"}],staticClass:\"text fullwidth\",attrs:{\"type\":\"text\",\"autocomplete\":\"off\",\"placeholder\":_vm.searchPlaceholderText},domProps:{\"value\":(_vm.searchTerm)},on:{\"input\":[function($event){if($event.target.composing){ return; }_vm.searchTerm=$event.target.value},_vm.handleSearch]}}),_vm._v(\" \"),_c('div',{staticClass:\"clear hidden\",attrs:{\"title\":_vm.searchClearTitle}})]):_vm._e(),_vm._v(\" \"),(_vm.buttons && _vm.buttons.length)?_c('div',{staticClass:\"vue-admin-table-buttons\"},[_c('div',{staticClass:\"flex flex-nowrap\"},_vm._l((_vm.buttons),function(button,index){return _c('div',{key:index},[_c('admin-table-button',{attrs:{\"label\":button.label,\"icon\":button.icon,\"href\":button.href,\"btn-class\":button.class,\"enabled\":_vm.isLoading\n ? false\n : button.enabled != undefined\n ? button.enabled\n : true}})],1)}),0)]):_vm._e()],2)]),_vm._v(\" \"),_c('div',{class:{'content-pane': _vm.fullPage}},[(this.isEmpty)?_c('div',{staticClass:\"zilch\"},[_c('p',[_vm._v(_vm._s(_vm.emptyMessage))])]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"tableview\",class:{loading: _vm.isLoading, hidden: this.isEmpty}},[_c('div',{class:{'vue-admin-tablepane': true, tablepane: _vm.fullPane}},[_c('vuetable',{ref:\"vuetable\",attrs:{\"append-params\":_vm.appendParams,\"api-mode\":_vm.apiUrl ? true : false,\"api-url\":_vm.apiUrl,\"css\":_vm.tableCss,\"data\":_vm.tableData,\"detail-row-component\":_vm.detailRowComponent,\"fields\":_vm.fields,\"per-page\":_vm.perPage,\"pagination-path\":\"pagination\"},on:{\"vuetable:loaded\":_vm.init,\"vuetable:loading\":_vm.loading,\"vuetable:pagination-data\":_vm.onPaginationData,\"vuetable:load-success\":_vm.onLoadSuccess},scopedSlots:_vm._u([{key:\"checkbox\",fn:function(props){return [_c('admin-table-checkbox',{attrs:{\"id\":props.rowData.id,\"checks\":_vm.checks,\"status\":_vm.checkboxStatus(props.rowData)},on:{\"addCheck\":_vm.addCheck,\"removeCheck\":_vm.removeCheck}})]}},{key:\"title\",fn:function(props){return [(props.rowData.status !== undefined)?_c('span',{staticClass:\"status\",class:{enabled: props.rowData.status}}):_vm._e(),_vm._v(\" \"),(props.rowData.url)?_c('a',{class:{'cell-bold': props.rowData.status === undefined},attrs:{\"href\":props.rowData.url}},[_vm._v(_vm._s(props.rowData.title))]):_c('span',{class:{'cell-bold': props.rowData.status === undefined}},[_vm._v(_vm._s(props.rowData.title))])]}},{key:\"handle\",fn:function(props){return [_c('admin-table-copy-text-button',{key:props.rowData.id,attrs:{\"value\":props.rowData.handle}})]}},{key:\"menu\",fn:function(props){return [(props.rowData.menu.showItems)?[_c('a',{attrs:{\"href\":props.rowData.menu.url}},[_vm._v(_vm._s(props.rowData.menu.label)+\" (\"+_vm._s(props.rowData.menu.items.length)+\")\")]),_vm._v(\" \"),_c('a',{staticClass:\"menubtn\",attrs:{\"title\":props.rowData.menu.label}}),_vm._v(\" \"),_c('div',{staticClass:\"menu\"},[_c('ul',_vm._l((props.rowData.menu.items),function(item,index){return _c('li',{key:index},[_c('a',{attrs:{\"href\":item.url}},[_vm._v(_vm._s(item.label))])])}),0)])]:[_c('a',{attrs:{\"href\":props.rowData.menu.url}},[_vm._v(_vm._s(props.rowData.menu.label))])]]}},{key:\"detail\",fn:function(props){return [(\n props.rowData.detail.content && props.rowData.detail.handle\n )?_c('div',{staticClass:\"detail-cursor-pointer\",domProps:{\"innerHTML\":_vm._s(props.rowData.detail.handle)},on:{\"click\":function($event){return _vm.handleDetailRow(props.rowData.id)}}}):_vm._e(),_vm._v(\" \"),(\n props.rowData.detail.content &&\n (!props.rowData.detail.handle ||\n props.rowData.detail.handle == undefined) &&\n (Object.keys(props.rowData.detail.content).length ||\n props.rowData.detail.content.length)\n )?_c('div',{staticClass:\"detail-cursor-pointer\",attrs:{\"data-icon\":\"info\",\"title\":props.rowData.detail.title},on:{\"click\":function($event){return _vm.handleDetailRow(props.rowData.id)}}}):_vm._e()]}},{key:\"reorder\",fn:function(props){return [_c('i',{staticClass:\"move icon vue-table-move-handle\",class:{disabled: !_vm.canReorder},attrs:{\"data-id\":props.rowData.id}})]}},{key:\"delete\",fn:function(props){return [(\n props.rowData._showDelete == undefined ||\n props.rowData._showDelete == true\n )?_c('admin-table-delete-button',{attrs:{\"id\":props.rowData.id,\"name\":props.rowData.title,\"before\":_vm.beforeDelete,\"success-message\":_vm.deleteSuccessMessage,\"confirmation-message\":_vm.deleteConfirmationMessage,\"fail-message\":_vm.deleteFailMessage,\"action-url\":_vm.deleteAction,\"disabled\":!_vm.canDelete},on:{\"loading\":function($event){return _vm.loading()},\"finishloading\":function($event){return _vm.loading(false)},\"reload\":function($event){return _vm.remove(props.rowIndex, props.rowData.id)}}}):_vm._e()]}}])})],1),_vm._v(\" \"),_c('admin-table-pagination',{ref:\"pagination\",attrs:{\"itemLabels\":_vm.itemLabels},on:{\"vuetable-pagination:change-page\":_vm.onChangePage}})],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/* jshint esversion: 6, strict: false */\n/* global Craft */\n/* global Garnish */\n/* global $ */\n\nimport Vue from 'vue';\nimport AdminTable from '@craftcms/vue/admintable/App';\n\nCraft.VueAdminTable = Garnish.Base.extend(\n {\n init: function (settings) {\n this.setSettings(settings, Craft.VueAdminTable.defaults);\n\n const props = this.settings;\n\n return new Vue({\n components: {\n AdminTable,\n },\n data() {\n return {};\n },\n render: (h) => {\n return h(AdminTable, {\n props: props,\n });\n },\n }).$mount(this.settings.container);\n },\n },\n {\n defaults: {\n actions: [],\n checkboxes: false,\n checkboxStatus: function () {\n return true;\n },\n columns: [],\n container: null,\n deleteAction: null,\n reorderAction: null,\n reorderSuccessMessage: Craft.t('app', 'Items reordered.'),\n reorderFailMessage: Craft.t('app', 'Couldn’t reorder items.'),\n search: false,\n searchPlaceholder: Craft.t('app', 'Search'),\n buttons: [],\n tableData: [],\n tableDataEndpoint: null,\n onLoaded: $.noop,\n onLoading: $.noop,\n onData: $.noop,\n onPagination: $.noop,\n onSelect: $.noop,\n },\n }\n);\n"],"names":["undefined","FUNC_ERROR_TEXT","HASH_UNDEFINED","PLACEHOLDER","WRAP_PARTIAL_FLAG","WRAP_ARY_FLAG","INFINITY","MAX_SAFE_INTEGER","NAN","MAX_ARRAY_LENGTH","wrapFlags","argsTag","arrayTag","boolTag","dateTag","errorTag","funcTag","genTag","mapTag","numberTag","objectTag","promiseTag","regexpTag","setTag","stringTag","symbolTag","weakMapTag","arrayBufferTag","dataViewTag","float32Tag","float64Tag","int8Tag","int16Tag","int32Tag","uint8Tag","uint8ClampedTag","uint16Tag","uint32Tag","reEmptyStringLeading","reEmptyStringMiddle","reEmptyStringTrailing","reEscapedHtml","reUnescapedHtml","reHasEscapedHtml","RegExp","source","reHasUnescapedHtml","reEscape","reEvaluate","reInterpolate","reIsDeepProp","reIsPlainProp","rePropName","reRegExpChar","reHasRegExpChar","reTrimStart","reWhitespace","reWrapComment","reWrapDetails","reSplitDetails","reAsciiWord","reForbiddenIdentifierChars","reEscapeChar","reEsTemplate","reFlags","reIsBadHex","reIsBinary","reIsHostCtor","reIsOctal","reIsUint","reLatin","reNoMatch","reUnescapedString","rsComboRange","rsComboMarksRange","rsLowerRange","rsUpperRange","rsBreakRange","rsMathOpRange","rsBreak","rsCombo","rsDigits","rsLower","rsMisc","rsFitz","rsNonAstral","rsRegional","rsSurrPair","rsUpper","rsMiscLower","rsMiscUpper","rsOptContrLower","rsOptContrUpper","reOptMod","rsModifier","rsOptVar","rsSeq","join","rsEmoji","rsSymbol","reApos","reComboMark","reUnicode","reUnicodeWord","reHasUnicode","reHasUnicodeWord","contextProps","templateCounter","typedArrayTags","cloneableTags","stringEscapes","freeParseFloat","parseFloat","freeParseInt","parseInt","freeGlobal","g","Object","freeSelf","self","root","Function","freeExports","exports","nodeType","freeModule","module","moduleExports","freeProcess","process","nodeUtil","require","types","binding","e","nodeIsArrayBuffer","isArrayBuffer","nodeIsDate","isDate","nodeIsMap","isMap","nodeIsRegExp","isRegExp","nodeIsSet","isSet","nodeIsTypedArray","isTypedArray","apply","func","thisArg","args","length","call","arrayAggregator","array","setter","iteratee","accumulator","index","value","arrayEach","arrayEachRight","arrayEvery","predicate","arrayFilter","resIndex","result","arrayIncludes","baseIndexOf","arrayIncludesWith","comparator","arrayMap","Array","arrayPush","values","offset","arrayReduce","initAccum","arrayReduceRight","arraySome","asciiSize","baseProperty","baseFindKey","collection","eachFunc","key","baseFindIndex","fromIndex","fromRight","strictIndexOf","baseIsNaN","baseIndexOfWith","baseMean","baseSum","object","basePropertyOf","baseReduce","current","baseTimes","n","baseTrim","string","slice","trimmedEndIndex","replace","baseUnary","baseValues","props","cacheHas","cache","has","charsStartIndex","strSymbols","chrSymbols","charsEndIndex","countHolders","placeholder","deburrLetter","escapeHtmlChar","escapeStringChar","chr","hasUnicode","test","mapToArray","map","size","forEach","overArg","transform","arg","replaceHolders","setToArray","set","setToPairs","stringSize","lastIndex","unicodeSize","stringToArray","match","unicodeToArray","split","asciiToArray","charAt","unescapeHtmlChar","_","runInContext","context","uid","defaults","pick","Date","Error","Math","String","TypeError","arrayProto","prototype","funcProto","objectProto","coreJsData","funcToString","toString","hasOwnProperty","idCounter","maskSrcKey","exec","keys","IE_PROTO","nativeObjectToString","objectCtorString","oldDash","reIsNative","Buffer","Symbol","Uint8Array","allocUnsafe","getPrototype","getPrototypeOf","objectCreate","create","propertyIsEnumerable","splice","spreadableSymbol","isConcatSpreadable","symIterator","iterator","symToStringTag","toStringTag","defineProperty","getNative","ctxClearTimeout","clearTimeout","ctxNow","now","ctxSetTimeout","setTimeout","nativeCeil","ceil","nativeFloor","floor","nativeGetSymbols","getOwnPropertySymbols","nativeIsBuffer","isBuffer","nativeIsFinite","isFinite","nativeJoin","nativeKeys","nativeMax","max","nativeMin","min","nativeNow","nativeParseInt","nativeRandom","random","nativeReverse","reverse","DataView","Map","Promise","Set","WeakMap","nativeCreate","metaMap","realNames","dataViewCtorString","toSource","mapCtorString","promiseCtorString","setCtorString","weakMapCtorString","symbolProto","symbolValueOf","valueOf","symbolToString","lodash","isObjectLike","isArray","LazyWrapper","LodashWrapper","wrapperClone","baseCreate","proto","isObject","baseLodash","chainAll","this","__wrapped__","__actions__","__chain__","__index__","__values__","__dir__","__filtered__","__iteratees__","__takeCount__","__views__","Hash","entries","clear","entry","ListCache","MapCache","SetCache","__data__","add","Stack","data","arrayLikeKeys","inherited","isArr","isArg","isArguments","isBuff","isType","skipIndexes","isIndex","push","arraySample","baseRandom","arraySampleSize","shuffleSelf","copyArray","baseClamp","arrayShuffle","assignMergeValue","eq","baseAssignValue","assignValue","objValue","assocIndexOf","baseAggregator","baseEach","baseAssign","copyObject","baseAt","paths","skip","get","number","lower","upper","baseClone","bitmask","customizer","stack","isDeep","isFlat","isFull","constructor","input","initCloneArray","tag","getTag","isFunc","cloneBuffer","initCloneObject","getSymbolsIn","copySymbolsIn","keysIn","baseAssignIn","getSymbols","copySymbols","symbol","Ctor","cloneArrayBuffer","dataView","buffer","byteOffset","byteLength","cloneDataView","cloneTypedArray","regexp","cloneRegExp","initCloneByTag","stacked","subValue","getAllKeysIn","getAllKeys","baseConformsTo","baseDelay","wait","baseDifference","includes","isCommon","valuesLength","outer","computed","valuesIndex","templateSettings","pop","getMapData","pairs","LARGE_ARRAY_SIZE","createBaseEach","baseForOwn","baseEachRight","baseForOwnRight","baseEvery","baseExtremum","isSymbol","baseFilter","baseFlatten","depth","isStrict","isFlattenable","baseFor","createBaseFor","baseForRight","baseFunctions","isFunction","baseGet","path","castPath","toKey","baseGetAllKeys","keysFunc","symbolsFunc","baseGetTag","isOwn","unmasked","getRawTag","objectToString","baseGt","other","baseHas","baseHasIn","baseIntersection","arrays","othLength","othIndex","caches","maxLength","Infinity","seen","baseInvoke","parent","last","baseIsArguments","baseIsEqual","equalFunc","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","equalArrays","name","message","convert","isPartial","equalByTag","objIsWrapped","othIsWrapped","objUnwrapped","othUnwrapped","objProps","objLength","objStacked","othStacked","skipCtor","othValue","compared","objCtor","othCtor","equalObjects","baseIsEqualDeep","baseIsMatch","matchData","noCustomizer","srcValue","COMPARE_PARTIAL_FLAG","baseIsNative","baseIteratee","identity","baseMatchesProperty","baseMatches","property","baseKeys","isPrototype","baseLt","baseMap","isArrayLike","getMatchData","matchesStrictComparable","isKey","isStrictComparable","hasIn","baseMerge","srcIndex","mergeFunc","safeGet","newValue","isTyped","isArrayLikeObject","isPlainObject","toPlainObject","baseMergeDeep","baseNth","baseOrderBy","iteratees","orders","getIteratee","criteria","comparer","sort","objCriteria","othCriteria","ordersLength","compareAscending","compareMultiple","baseSortBy","basePickBy","baseSet","basePullAll","indexOf","basePullAt","indexes","previous","baseUnset","baseRepeat","baseRest","start","setToString","overRest","baseSample","baseSampleSize","nested","baseSetData","baseSetToString","constant","baseShuffle","baseSlice","end","baseSome","baseSortedIndex","retHighest","low","high","mid","baseSortedIndexBy","valIsNaN","valIsNull","valIsSymbol","valIsUndefined","othIsDefined","othIsNull","othIsReflexive","othIsSymbol","setLow","baseSortedUniq","baseToNumber","baseToString","baseUniq","createSet","seenIndex","baseUpdate","updater","baseWhile","isDrop","baseWrapperValue","actions","action","baseXor","baseZipObject","assignFunc","valsLength","castArrayLikeObject","castFunction","stringToPath","castRest","castSlice","id","copy","arrayBuffer","typedArray","valIsDefined","valIsReflexive","composeArgs","partials","holders","isCurried","argsIndex","argsLength","holdersLength","leftIndex","leftLength","rangeLength","isUncurried","composeArgsRight","holdersIndex","rightIndex","rightLength","isNew","createAggregator","initializer","createAssigner","assigner","sources","guard","isIterateeCall","iterable","createCaseFirst","methodName","trailing","createCompounder","callback","words","deburr","createCtor","arguments","thisBinding","createFind","findIndexFunc","createFlow","flatRest","funcs","prereq","thru","wrapper","getFuncName","funcName","getData","isLaziable","plant","createHybrid","partialsRight","holdersRight","argPos","ary","arity","isAry","isBind","isBindKey","isFlip","getHolder","holdersCount","newHolders","createRecurry","fn","reorder","createInverter","toIteratee","baseInverter","createMathOperation","operator","defaultValue","createOver","arrayFunc","createPadding","chars","charsLength","createRange","step","toFinite","baseRange","createRelationalOperation","toNumber","wrapFunc","isCurry","newData","setData","setWrapToString","createRound","precision","toInteger","pair","noop","createToPairs","baseToPairs","createWrap","srcBitmask","newBitmask","isCombo","mergeData","createCurry","createPartial","createBind","customDefaultsAssignIn","customDefaultsMerge","customOmitClone","arrLength","arrStacked","arrValue","flatten","otherFunc","type","getValue","stubArray","hasPath","hasFunc","isLength","ArrayBuffer","resolve","ctorString","isMaskable","stubFalse","otherArgs","oldArray","shortOut","reference","details","insertWrapDetails","updateWrapDetails","getWrapDetails","count","lastCalled","stamp","remaining","rand","memoize","charCodeAt","quote","subString","clone","difference","differenceBy","differenceWith","findIndex","findLastIndex","head","intersection","mapped","intersectionBy","intersectionWith","pull","pullAll","pullAt","union","unionBy","unionWith","unzip","group","unzipWith","without","xor","xorBy","xorWith","zip","zipWith","chain","interceptor","wrapperAt","countBy","find","findLast","forEachRight","groupBy","invokeMap","keyBy","partition","sortBy","before","bind","bindKey","WRAP_BIND_FLAG","debounce","options","lastArgs","lastThis","maxWait","timerId","lastCallTime","lastInvokeTime","leading","maxing","invokeFunc","time","leadingEdge","timerExpired","shouldInvoke","timeSinceLastCall","trailingEdge","timeWaiting","remainingWait","debounced","isInvoking","cancel","flush","defer","delay","resolver","memoized","Cache","negate","overArgs","transforms","funcsLength","partial","partialRight","rearg","gt","gte","isError","isInteger","isNumber","isString","lt","lte","toArray","next","done","iteratorToArray","remainder","toLength","isBinary","assign","assignIn","assignInWith","assignWith","at","propsIndex","propsLength","defaultsDeep","mergeWith","invert","invertBy","invoke","nativeKeysIn","isProto","baseKeysIn","merge","omit","CLONE_DEEP_FLAG","basePick","pickBy","prop","toPairs","toPairsIn","camelCase","word","toLowerCase","capitalize","upperFirst","kebabCase","lowerCase","lowerFirst","snakeCase","startCase","upperCase","toUpperCase","pattern","hasUnicodeWord","unicodeWords","asciiWords","attempt","bindAll","methodNames","flow","flowRight","method","methodOf","mixin","over","overEvery","overSome","basePropertyDeep","range","rangeRight","augend","addend","divide","dividend","divisor","multiply","multiplier","multiplicand","round","subtract","minuend","subtrahend","after","castArray","chunk","compact","concat","cond","conforms","baseConforms","properties","curry","curryRight","drop","dropRight","dropRightWhile","dropWhile","fill","baseFill","filter","flatMap","flatMapDeep","flatMapDepth","flattenDeep","flattenDepth","flip","fromPairs","functions","functionsIn","initial","mapKeys","mapValues","matches","matchesProperty","nthArg","omitBy","once","orderBy","propertyOf","pullAllBy","pullAllWith","reject","remove","rest","sampleSize","setWith","shuffle","sortedUniq","sortedUniqBy","separator","limit","spread","tail","take","takeRight","takeRightWhile","takeWhile","tap","throttle","toPath","isArrLike","unary","uniq","uniqBy","uniqWith","unset","update","updateWith","valuesIn","wrap","zipObject","zipObjectDeep","entriesIn","extend","extendWith","clamp","cloneDeep","cloneDeepWith","cloneWith","conformsTo","defaultTo","endsWith","target","position","escape","escapeRegExp","every","findKey","findLastKey","forIn","forInRight","forOwn","forOwnRight","inRange","baseInRange","isBoolean","isElement","isEmpty","isEqual","isEqualWith","isMatch","isMatchWith","isNaN","isNative","isNil","isNull","isSafeInteger","isUndefined","isWeakMap","isWeakSet","lastIndexOf","strictLastIndexOf","maxBy","mean","meanBy","minBy","stubObject","stubString","stubTrue","nth","noConflict","pad","strLength","padEnd","padStart","radix","floating","temp","reduce","reduceRight","repeat","sample","some","sortedIndex","sortedIndexBy","sortedIndexOf","sortedLastIndex","sortedLastIndexBy","sortedLastIndexOf","startsWith","sum","sumBy","template","settings","isEscaping","isEvaluating","imports","importsKeys","importsValues","interpolate","reDelimiters","evaluate","sourceURL","escapeValue","interpolateValue","esTemplateValue","evaluateValue","variable","times","toLower","toSafeInteger","toUpper","trim","trimEnd","trimStart","truncate","omission","search","substring","global","newEnd","unescape","uniqueId","prefix","each","eachRight","first","VERSION","isFilter","takeName","dropName","checkIteratee","isTaker","lodashFunc","retUnwrapped","isLazy","useLazy","isHybrid","isUnwrapped","onlyLazy","chainName","dir","isRight","view","getView","iterLength","takeCount","iterIndex","commit","wrapped","toJSON","content","locals","listToStyles","parentId","list","styles","newStyles","i","item","part","css","media","sourceMap","parts","hasDocument","document","DEBUG","stylesInDom","getElementsByTagName","singletonElement","singletonCounter","isProduction","ssrIdKey","isOldIE","navigator","userAgent","addStylesClient","_isProduction","_options","addStylesToDom","newList","mayRemove","domStyle","refs","j","addStyle","createStyleElement","styleElement","createElement","appendChild","obj","querySelector","parentNode","removeChild","styleIndex","applyToSingletonTag","applyToTag","newObj","textStore","replaceText","replacement","Boolean","styleSheet","cssText","cssNode","createTextNode","childNodes","insertBefore","setAttribute","ssrId","btoa","encodeURIComponent","JSON","stringify","firstChild","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","getter","__esModule","d","a","definition","o","enumerable","globalThis","window","nmd","children","Vue","axios","fields","required","loadOnStart","default","apiUrl","httpMethod","validator","reactiveApiUrl","apiMode","dataTotal","Number","dataManager","dataPath","paginationPath","queryParams","page","perPage","appendParams","httpOptions","httpFetch","initialPage","sortOrder","multiSort","tableHeight","multiSortKey","rowClassCallback","rowClass","detailRowComponent","detailRowTransition","trackBy","tableClass","loadingClass","ascendingIcon","descendingIcon","ascendingClass","descendingClass","sortableIcon","detailRowClass","handleIcon","tableBodyClass","tableHeaderClass","minRows","silent","noDataTemplate","showSortIcons","eventPrefix","tableFields","tableData","tablePagination","currentPage","selectedTo","visibleDetailRows","lastScrollPosition","scrollBarWidth","scrollVisible","mounted","normalizeFields","normalizeSortOrder","isFixedHeader","getScrollBarWidth","$nextTick","fireEvent","loadData","elem","$el","getElementsByClassName","addEventListener","handleScroll","destroyed","removeEventListener","version","useDetailRow","warn","countVisibleFields","field","visible","countTableData","displayEmptyDataRow","lessThanMinRows","blankRows","isApiMode","isDataMode","methods","inner","style","visibility","width","body","widthWithoutScrollbar","offsetWidth","overflow","widthWithScrollbar","horizontal","currentTarget","scrollLeft","header","title","setTitle","titleClass","dataClass","sortField","getObjectValue","fixHeader","str","isSpecialField","titleCase","getTitle","renderTitle","isInCurrentSortGroup","hasSortableIcon","sortIconOpacity","renderIconTag","sortIcon","renderSequence","from","renderNormalField","hasCallback","callCallback","fieldName","txt","substr","delimiter","notIn","arr","success","loadSuccess","failed","loadFailed","getAppendParams","getAllQueryParams","fetch","then","catch","callDataManager","response","scrollHeight","clientHeight","console","error","parentFunctionExists","$parent","callParentFunction","eventName","$emit","msg","params","getSortParam","getDefaultSortParam","direction","x","extractName","extractArgs","isSortable","currentSortOrderPosition","fieldIsInSortOrderPosition","event","multiColumnSort","singleColumnSort","clearSortOrder","sortClass","cls","shift","toggleCheckbox","dataItem","isChecked","checked","idColumn","selectId","unselectId","isSelectedRow","rowSelected","checkCheckboxesState","selector","els","querySelectorAll","cb","selected","el","indeterminate","toggleAllCheckboxes","gotoPreviousPage","gotoNextPage","last_page","gotoPage","isVisibleDetailRow","rowId","showDetailRow","hideDetailRow","toggleDetailRow","showField","hideField","toggleField","classes","renderIcon","makePagination","total","onRowClass","onRowChanged","onRowClicked","onRowDoubleClicked","onDetailRowClick","onCellClicked","onCellDoubleClicked","onCellRightClicked","changePage","reload","refresh","resetData","watch","newVal","oldVal","normalizeComponent","scriptExports","render","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","hook","_compiled","functional","_scopeId","$vnode","ssrContext","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","$root","$options","shadowRoot","_injectStyles","originalRender","h","existing","beforeCreate","_vm","_h","$createElement","_c","_self","staticClass","class","_l","fieldIndex","attrs","domProps","on","$event","_e","_v","_s","height","itemIndex","_t","wrapperClass","activeClass","disabledClass","pageClass","linkClass","paginationClass","paginationInfoClass","dropdownClass","icons","prev","onEachSide","totalPage","isOnFirstPage","current_page","isOnLastPage","notEnoughPages","windowSize","windowStart","loadPage","isCurrentPage","setPaginationData","directives","rawName","expression","paginationLabel","disabled","_f","preventDefault","handleClick","status","ref","tokenName","tokenValue","param","isMenuButton","_g","menubtn","enabled","buttonDisabled","icon","ajax","click","label","actList","ind","act","allowMultiple","hasMultipleSelected","actionsList","rowData","detail","showAsList","buttonClass","linkHref","ownKeys","enumerableOnly","symbols","sym","getOwnPropertyDescriptor","_objectSpread2","_defineProperty","getOwnPropertyDescriptors","defineProperties","configurable","writable","_extends","_objectWithoutProperties","excluded","sourceKeys","_objectWithoutPropertiesLoose","sourceSymbolKeys","IE11OrLess","Edge","FireFox","Safari","IOS","ChromeForAndroid","captureMode","capture","passive","off","msMatchesSelector","webkitMatchesSelector","getParentOrHost","host","closest","ctx","includeCTX","_throttleTimeout","R_SPACE","toggleClass","state","classList","className","val","defaultView","getComputedStyle","currentStyle","matrix","selfOnly","appliedTransforms","matrixFn","DOMMatrix","WebKitCSSMatrix","CSSMatrix","MSCSSMatrix","tagName","getWindowScrollingElement","scrollingElement","documentElement","getRect","relativeToContainingBlock","relativeToNonStaticParent","undoScale","container","getBoundingClientRect","elRect","top","left","bottom","right","innerHeight","innerWidth","containerRect","elMatrix","scaleX","scaleY","isScrolledPast","elSide","parentSide","getParentAutoScrollElement","elSideVal","parentSideVal","getChild","childNum","includeDragEl","currentChild","display","Sortable","ghost","dragged","draggable","lastChild","lastElementChild","previousElementSibling","nodeName","getRelativeScrollOffset","offsetLeft","offsetTop","winScroller","scrollTop","includeSelf","gotSelf","clientWidth","scrollWidth","elemCSS","overflowX","overflowY","isRectEqual","rect1","rect2","ms","_this","scrollBy","y","Polymer","$","jQuery","Zepto","dom","cloneNode","expando","getTime","plugins","initializeByDefault","PluginManager","mount","plugin","option","p","pluginName","pluginEvent","sortable","evt","eventCanceled","eventNameGlobal","initializePlugins","initialized","modified","modifyOption","getEventProperties","eventProperties","modifiedValue","optionListeners","_excluded","_ref","originalEvent","dragEl","parentEl","ghostEl","rootEl","nextEl","lastDownEl","cloneEl","cloneHidden","dragStarted","moved","putSortable","activeSortable","active","oldIndex","oldDraggableIndex","newIndex","newDraggableIndex","hideGhostForTarget","_hideGhostForTarget","unhideGhostForTarget","_unhideGhostForTarget","cloneNowHidden","cloneNowShown","dispatchSortableEvent","_dispatchEvent","info","targetEl","toEl","fromEl","extraEventProperties","onName","CustomEvent","createEvent","initEvent","bubbles","cancelable","to","pullMode","lastPutMode","allEventProperties","dispatchEvent","activeGroup","tapEvt","touchEvt","lastDx","lastDy","tapDistanceLeft","tapDistanceTop","lastTarget","lastDirection","targetMoveDistance","ghostRelativeParent","awaitingDragStarted","ignoreNextClick","sortables","pastFirstInvertThresh","isCircumstantialInvert","ghostRelativeParentInitialScroll","_silent","savedInputChecked","documentExists","PositionGhostAbsolutely","CSSFloatProperty","supportDraggable","supportCssPointerEvents","pointerEvents","_detectDirection","elCSS","elWidth","paddingLeft","paddingRight","borderLeftWidth","borderRightWidth","child1","child2","firstChildCSS","secondChildCSS","firstChildWidth","marginLeft","marginRight","secondChildWidth","flexDirection","gridTemplateColumns","touchingSideChild2","_prepareGroup","toFn","sameGroup","otherGroup","originalGroup","checkPull","checkPut","put","revertClone","stopPropagation","stopImmediatePropagation","nearestEmptyInsertDetectEvent","touches","nearest","clientX","clientY","threshold","emptyInsertThreshold","rect","insideHorizontally","insideVertically","ret","_onDragOver","_checkOutsideTargetEl","_isOutsideThisEl","animationCallbackId","animationStates","store","handle","swapThreshold","invertSwap","invertedSwapThreshold","removeCloneOnHide","ghostClass","chosenClass","dragClass","ignore","preventOnFilter","animation","easing","dataTransfer","textContent","dropBubble","dragoverBubble","dataIdAttr","delayOnTouchOnly","touchStartThreshold","devicePixelRatio","forceFallback","fallbackClass","fallbackOnBody","fallbackTolerance","fallbackOffset","supportPointer","nativeDraggable","_onTapStart","captureAnimationState","child","fromRect","thisAnimationDuration","childMatrix","f","addAnimationState","removeAnimationState","indexOfObject","animateAll","animating","animationTime","toRect","prevFromRect","prevToRect","animatingRect","targetMatrix","sqrt","pow","calculateRealTime","animate","animationResetTimer","currentRect","duration","translateX","translateY","animatingX","animatingY","forRepaintDummy","repaint","animated","_onMove","dragRect","targetRect","willInsertAfter","retVal","onMoveFn","onMove","draggedRect","related","relatedRect","_disableDraggable","_unsilent","_generateId","src","href","_nextTick","_cancelNextTick","contains","_getDirection","touch","pointerType","originalTarget","composedPath","inputs","idx","_saveInputCheckedState","button","isContentEditable","_prepareDragStart","dragStartFn","ownerDocument","nextSibling","_lastX","_lastY","_onDrop","_disableDelayedDragEvents","_triggerDragStart","_disableDelayedDrag","_delayedDragTouchMoveHandler","_dragStartTimer","abs","_onTouchMove","_onDragStart","selection","empty","getSelection","removeAllRanges","err","_dragStarted","fallback","_appendGhost","_nulling","_emulateDragOver","elementFromPoint","ghostMatrix","relativeScrollOffset","dx","dy","b","c","cssMatrix","removeAttribute","_hideClone","cloneId","_loopId","setInterval","effectAllowed","_dragStartId","revert","vertical","isOwner","canSort","fromSortable","completedFired","dragOverEvent","_ignoreWhileAnimating","completed","elLastChild","_ghostIsLast","changed","_ghostIsFirst","targetBeforeFirstSwap","sibling","differentLevel","differentRowCol","dragElS1Opp","dragElS2Opp","dragElOppLength","targetS1Opp","targetS2Opp","targetOppLength","_dragElInRowColumn","side1","scrolledPastTop","scrollBefore","isLastTarget","mouseOnAxis","targetLength","targetS1","targetS2","_getInsertDirection","_getSwapDirection","dragIndex","nextElementSibling","moveVector","extra","axis","insertion","_showClone","_offMoveEvents","_offUpEvents","clearInterval","save","handleEvent","dropEffect","_globalDragOver","order","getAttribute","useAnimation","items","destroy","utils","is","dst","nextTick","cancelNextTick","detectDirection","element","_len","_key","scrollEl","scrollRootEl","lastAutoScrollX","lastAutoScrollY","touchEvt$1","pointerElemChangedInterval","autoScrolls","scrolling","clearAutoScrolls","autoScroll","pid","clearPointerElemChangedInterval","isFallback","scroll","scrollCustomFn","sens","scrollSensitivity","speed","scrollSpeed","scrollThisInstance","scrollFn","layersOut","currentParent","canScrollX","canScrollY","scrollPosX","scrollPosY","vx","vy","layer","scrollOffsetY","scrollOffsetX","bubbleScroll","toSortable","changedTouches","onSpill","Revert","Remove","startIndex","dragStart","_ref2","_ref3","_ref4","parentSortable","AutoScroll","forceAutoScrollFallback","_handleAutoScroll","_handleFallbackAutoScroll","dragOverCompleted","dragOverBubble","nulling","ogElemScroller","newElem","padded","tableId","checks","searchPlaceholderText","composing","searchTerm","handleSearch","searchClearTitle","buttons","isLoading","fullPage","emptyMessage","loading","hidden","tablepane","fullPane","tableCss","init","onPaginationData","onLoadSuccess","scopedSlots","_u","checkboxStatus","addCheck","removeCheck","url","menu","handleDetailRow","canReorder","_showDelete","beforeDelete","deleteSuccessMessage","deleteConfirmationMessage","deleteFailMessage","deleteAction","canDelete","rowIndex","itemLabels","onChangePage","Craft","VueAdminTable","Garnish","Base","setSettings","components","AdminTable","$mount","checkboxes","columns","reorderAction","reorderSuccessMessage","t","reorderFailMessage","searchPlaceholder","tableDataEndpoint","onLoaded","onLoading","onData","onPagination","onSelect"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/app.js","mappings":"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","sources":["webpack:///../../../../../node_modules/lodash/lodash.js","webpack:///../../../../../node_modules/vuetable-2/src/components/Vuetable.vue?91ab","webpack:///../../../../../packages/craftcms-vue/admintable/App.vue?6ad9","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableCheckbox.vue?94a0","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableDetailRow.vue?09d6","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTablePagination.vue?9013","webpack:///../../../../../node_modules/vue-style-loader/lib/listToStyles.js","webpack:///../../../../../node_modules/vue-style-loader/lib/addStylesClient.js","webpack:///webpack/bootstrap","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/global","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///webpack/runtime/node module decorator","webpack:///external var \"Vue\"","webpack:///external var \"axios\"","webpack:///../../../../../node_modules/vuetable-2/src/components/Vuetable.vue","webpack:///../../../../../node_modules/vuetable-2/src/components/Vuetable.vue?2800","webpack:///../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack:///../../../../../node_modules/vuetable-2/src/components/Vuetable.vue?be8f","webpack:///../../../../../node_modules/vuetable-2/src/components/Vuetable.vue?7ed4","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTablePagination.vue?771d","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTablePagination.vue","webpack:///../../../../../node_modules/vuetable-2/src/components/VuetablePaginationMixin.vue?d987","webpack:///../../../../../node_modules/vuetable-2/src/components/VuetablePaginationMixin.vue","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTablePagination.vue?e6e8","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableDeleteButton.vue?a28d","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableDeleteButton.vue","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableCheckbox.vue?9b0b","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableCheckbox.vue","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableCheckbox.vue?18c7","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableActionButton.vue?5df2","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableActionButton.vue","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableDetailRow.vue","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableDetailRow.vue?4a11","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableDetailRow.vue?d032","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableButton.vue?dba0","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableButton.vue","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableCopyTextButton.vue?ca14","webpack:///../../../../../packages/craftcms-vue/admintable/components/AdminTableCopyTextButton.vue","webpack:///../../../../../node_modules/sortablejs/modular/sortable.esm.js","webpack:///../../../../../packages/craftcms-vue/admintable/App.vue","webpack:///../../../../../packages/craftcms-vue/admintable/App.vue?6195","webpack:///../../../../../packages/craftcms-vue/admintable/App.vue?86f4","webpack:///./main.js"],"sourcesContent":["/**\n * @license\n * Lodash \n * Copyright OpenJS Foundation and other contributors \n * Released under MIT license \n * Based on Underscore.js 1.8.3 \n * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n */\n;(function() {\n\n /** Used as a safe reference for `undefined` in pre-ES5 environments. */\n var undefined;\n\n /** Used as the semantic version number. */\n var VERSION = '4.17.21';\n\n /** Used as the size to enable large array optimizations. */\n var LARGE_ARRAY_SIZE = 200;\n\n /** Error message constants. */\n var CORE_ERROR_TEXT = 'Unsupported core-js use. Try https://npms.io/search?q=ponyfill.',\n FUNC_ERROR_TEXT = 'Expected a function',\n INVALID_TEMPL_VAR_ERROR_TEXT = 'Invalid `variable` option passed into `_.template`';\n\n /** Used to stand-in for `undefined` hash values. */\n var HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n /** Used as the maximum memoize cache size. */\n var MAX_MEMOIZE_SIZE = 500;\n\n /** Used as the internal argument placeholder. */\n var PLACEHOLDER = '__lodash_placeholder__';\n\n /** Used to compose bitmasks for cloning. */\n var CLONE_DEEP_FLAG = 1,\n CLONE_FLAT_FLAG = 2,\n CLONE_SYMBOLS_FLAG = 4;\n\n /** Used to compose bitmasks for value comparisons. */\n var COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n /** Used to compose bitmasks for function metadata. */\n var WRAP_BIND_FLAG = 1,\n WRAP_BIND_KEY_FLAG = 2,\n WRAP_CURRY_BOUND_FLAG = 4,\n WRAP_CURRY_FLAG = 8,\n WRAP_CURRY_RIGHT_FLAG = 16,\n WRAP_PARTIAL_FLAG = 32,\n WRAP_PARTIAL_RIGHT_FLAG = 64,\n WRAP_ARY_FLAG = 128,\n WRAP_REARG_FLAG = 256,\n WRAP_FLIP_FLAG = 512;\n\n /** Used as default options for `_.truncate`. */\n var DEFAULT_TRUNC_LENGTH = 30,\n DEFAULT_TRUNC_OMISSION = '...';\n\n /** Used to detect hot functions by number of calls within a span of milliseconds. */\n var HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n /** Used to indicate the type of lazy iteratees. */\n var LAZY_FILTER_FLAG = 1,\n LAZY_MAP_FLAG = 2,\n LAZY_WHILE_FLAG = 3;\n\n /** Used as references for various `Number` constants. */\n var INFINITY = 1 / 0,\n MAX_SAFE_INTEGER = 9007199254740991,\n MAX_INTEGER = 1.7976931348623157e+308,\n NAN = 0 / 0;\n\n /** Used as references for the maximum length and index of an array. */\n var MAX_ARRAY_LENGTH = 4294967295,\n MAX_ARRAY_INDEX = MAX_ARRAY_LENGTH - 1,\n HALF_MAX_ARRAY_LENGTH = MAX_ARRAY_LENGTH >>> 1;\n\n /** Used to associate wrap methods with their bit flags. */\n var wrapFlags = [\n ['ary', WRAP_ARY_FLAG],\n ['bind', WRAP_BIND_FLAG],\n ['bindKey', WRAP_BIND_KEY_FLAG],\n ['curry', WRAP_CURRY_FLAG],\n ['curryRight', WRAP_CURRY_RIGHT_FLAG],\n ['flip', WRAP_FLIP_FLAG],\n ['partial', WRAP_PARTIAL_FLAG],\n ['partialRight', WRAP_PARTIAL_RIGHT_FLAG],\n ['rearg', WRAP_REARG_FLAG]\n ];\n\n /** `Object#toString` result references. */\n var argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n asyncTag = '[object AsyncFunction]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n domExcTag = '[object DOMException]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n nullTag = '[object Null]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n proxyTag = '[object Proxy]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]',\n undefinedTag = '[object Undefined]',\n weakMapTag = '[object WeakMap]',\n weakSetTag = '[object WeakSet]';\n\n var arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n /** Used to match empty string literals in compiled template source. */\n var reEmptyStringLeading = /\\b__p \\+= '';/g,\n reEmptyStringMiddle = /\\b(__p \\+=) '' \\+/g,\n reEmptyStringTrailing = /(__e\\(.*?\\)|\\b__t\\)) \\+\\n'';/g;\n\n /** Used to match HTML entities and HTML characters. */\n var reEscapedHtml = /&(?:amp|lt|gt|quot|#39);/g,\n reUnescapedHtml = /[&<>\"']/g,\n reHasEscapedHtml = RegExp(reEscapedHtml.source),\n reHasUnescapedHtml = RegExp(reUnescapedHtml.source);\n\n /** Used to match template delimiters. */\n var reEscape = /<%-([\\s\\S]+?)%>/g,\n reEvaluate = /<%([\\s\\S]+?)%>/g,\n reInterpolate = /<%=([\\s\\S]+?)%>/g;\n\n /** Used to match property names within property paths. */\n var reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/,\n rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n /**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\n var reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g,\n reHasRegExpChar = RegExp(reRegExpChar.source);\n\n /** Used to match leading whitespace. */\n var reTrimStart = /^\\s+/;\n\n /** Used to match a single whitespace character. */\n var reWhitespace = /\\s/;\n\n /** Used to match wrap detail comments. */\n var reWrapComment = /\\{(?:\\n\\/\\* \\[wrapped with .+\\] \\*\\/)?\\n?/,\n reWrapDetails = /\\{\\n\\/\\* \\[wrapped with (.+)\\] \\*/,\n reSplitDetails = /,? & /;\n\n /** Used to match words composed of alphanumeric characters. */\n var reAsciiWord = /[^\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\x7f]+/g;\n\n /**\n * Used to validate the `validate` option in `_.template` variable.\n *\n * Forbids characters which could potentially change the meaning of the function argument definition:\n * - \"(),\" (modification of function parameters)\n * - \"=\" (default value)\n * - \"[]{}\" (destructuring of function parameters)\n * - \"/\" (beginning of a comment)\n * - whitespace\n */\n var reForbiddenIdentifierChars = /[()=,{}\\[\\]\\/\\s]/;\n\n /** Used to match backslashes in property paths. */\n var reEscapeChar = /\\\\(\\\\)?/g;\n\n /**\n * Used to match\n * [ES template delimiters](http://ecma-international.org/ecma-262/7.0/#sec-template-literal-lexical-components).\n */\n var reEsTemplate = /\\$\\{([^\\\\}]*(?:\\\\.[^\\\\}]*)*)\\}/g;\n\n /** Used to match `RegExp` flags from their coerced string values. */\n var reFlags = /\\w*$/;\n\n /** Used to detect bad signed hexadecimal string values. */\n var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;\n\n /** Used to detect binary string values. */\n var reIsBinary = /^0b[01]+$/i;\n\n /** Used to detect host constructors (Safari). */\n var reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n /** Used to detect octal string values. */\n var reIsOctal = /^0o[0-7]+$/i;\n\n /** Used to detect unsigned integer values. */\n var reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n /** Used to match Latin Unicode letters (excluding mathematical operators). */\n var reLatin = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g;\n\n /** Used to ensure capturing order of template delimiters. */\n var reNoMatch = /($^)/;\n\n /** Used to match unescaped characters in compiled string literals. */\n var reUnescapedString = /['\\n\\r\\u2028\\u2029\\\\]/g;\n\n /** Used to compose unicode character classes. */\n var rsAstralRange = '\\\\ud800-\\\\udfff',\n rsComboMarksRange = '\\\\u0300-\\\\u036f',\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,\n rsDingbatRange = '\\\\u2700-\\\\u27bf',\n rsLowerRange = 'a-z\\\\xdf-\\\\xf6\\\\xf8-\\\\xff',\n rsMathOpRange = '\\\\xac\\\\xb1\\\\xd7\\\\xf7',\n rsNonCharRange = '\\\\x00-\\\\x2f\\\\x3a-\\\\x40\\\\x5b-\\\\x60\\\\x7b-\\\\xbf',\n rsPunctuationRange = '\\\\u2000-\\\\u206f',\n rsSpaceRange = ' \\\\t\\\\x0b\\\\f\\\\xa0\\\\ufeff\\\\n\\\\r\\\\u2028\\\\u2029\\\\u1680\\\\u180e\\\\u2000\\\\u2001\\\\u2002\\\\u2003\\\\u2004\\\\u2005\\\\u2006\\\\u2007\\\\u2008\\\\u2009\\\\u200a\\\\u202f\\\\u205f\\\\u3000',\n rsUpperRange = 'A-Z\\\\xc0-\\\\xd6\\\\xd8-\\\\xde',\n rsVarRange = '\\\\ufe0e\\\\ufe0f',\n rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;\n\n /** Used to compose unicode capture groups. */\n var rsApos = \"['\\u2019]\",\n rsAstral = '[' + rsAstralRange + ']',\n rsBreak = '[' + rsBreakRange + ']',\n rsCombo = '[' + rsComboRange + ']',\n rsDigits = '\\\\d+',\n rsDingbat = '[' + rsDingbatRange + ']',\n rsLower = '[' + rsLowerRange + ']',\n rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']',\n rsFitz = '\\\\ud83c[\\\\udffb-\\\\udfff]',\n rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',\n rsNonAstral = '[^' + rsAstralRange + ']',\n rsRegional = '(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}',\n rsSurrPair = '[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]',\n rsUpper = '[' + rsUpperRange + ']',\n rsZWJ = '\\\\u200d';\n\n /** Used to compose unicode regexes. */\n var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')',\n rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')',\n rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?',\n rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?',\n reOptMod = rsModifier + '?',\n rsOptVar = '[' + rsVarRange + ']?',\n rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',\n rsOrdLower = '\\\\d*(?:1st|2nd|3rd|(?![123])\\\\dth)(?=\\\\b|[A-Z_])',\n rsOrdUpper = '\\\\d*(?:1ST|2ND|3RD|(?![123])\\\\dTH)(?=\\\\b|[a-z_])',\n rsSeq = rsOptVar + reOptMod + rsOptJoin,\n rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq,\n rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')';\n\n /** Used to match apostrophes. */\n var reApos = RegExp(rsApos, 'g');\n\n /**\n * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and\n * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).\n */\n var reComboMark = RegExp(rsCombo, 'g');\n\n /** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */\n var reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g');\n\n /** Used to match complex or compound words. */\n var reUnicodeWord = RegExp([\n rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')',\n rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')',\n rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower,\n rsUpper + '+' + rsOptContrUpper,\n rsOrdUpper,\n rsOrdLower,\n rsDigits,\n rsEmoji\n ].join('|'), 'g');\n\n /** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */\n var reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']');\n\n /** Used to detect strings that need a more robust regexp to match words. */\n var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;\n\n /** Used to assign default `context` object properties. */\n var contextProps = [\n 'Array', 'Buffer', 'DataView', 'Date', 'Error', 'Float32Array', 'Float64Array',\n 'Function', 'Int8Array', 'Int16Array', 'Int32Array', 'Map', 'Math', 'Object',\n 'Promise', 'RegExp', 'Set', 'String', 'Symbol', 'TypeError', 'Uint8Array',\n 'Uint8ClampedArray', 'Uint16Array', 'Uint32Array', 'WeakMap',\n '_', 'clearTimeout', 'isFinite', 'parseInt', 'setTimeout'\n ];\n\n /** Used to make template sourceURLs easier to identify. */\n var templateCounter = -1;\n\n /** Used to identify `toStringTag` values of typed arrays. */\n var typedArrayTags = {};\n typedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\n typedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\n typedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\n typedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\n typedArrayTags[uint32Tag] = true;\n typedArrayTags[argsTag] = typedArrayTags[arrayTag] =\n typedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\n typedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\n typedArrayTags[errorTag] = typedArrayTags[funcTag] =\n typedArrayTags[mapTag] = typedArrayTags[numberTag] =\n typedArrayTags[objectTag] = typedArrayTags[regexpTag] =\n typedArrayTags[setTag] = typedArrayTags[stringTag] =\n typedArrayTags[weakMapTag] = false;\n\n /** Used to identify `toStringTag` values supported by `_.clone`. */\n var cloneableTags = {};\n cloneableTags[argsTag] = cloneableTags[arrayTag] =\n cloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] =\n cloneableTags[boolTag] = cloneableTags[dateTag] =\n cloneableTags[float32Tag] = cloneableTags[float64Tag] =\n cloneableTags[int8Tag] = cloneableTags[int16Tag] =\n cloneableTags[int32Tag] = cloneableTags[mapTag] =\n cloneableTags[numberTag] = cloneableTags[objectTag] =\n cloneableTags[regexpTag] = cloneableTags[setTag] =\n cloneableTags[stringTag] = cloneableTags[symbolTag] =\n cloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =\n cloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;\n cloneableTags[errorTag] = cloneableTags[funcTag] =\n cloneableTags[weakMapTag] = false;\n\n /** Used to map Latin Unicode letters to basic Latin letters. */\n var deburredLetters = {\n // Latin-1 Supplement block.\n '\\xc0': 'A', '\\xc1': 'A', '\\xc2': 'A', '\\xc3': 'A', '\\xc4': 'A', '\\xc5': 'A',\n '\\xe0': 'a', '\\xe1': 'a', '\\xe2': 'a', '\\xe3': 'a', '\\xe4': 'a', '\\xe5': 'a',\n '\\xc7': 'C', '\\xe7': 'c',\n '\\xd0': 'D', '\\xf0': 'd',\n '\\xc8': 'E', '\\xc9': 'E', '\\xca': 'E', '\\xcb': 'E',\n '\\xe8': 'e', '\\xe9': 'e', '\\xea': 'e', '\\xeb': 'e',\n '\\xcc': 'I', '\\xcd': 'I', '\\xce': 'I', '\\xcf': 'I',\n '\\xec': 'i', '\\xed': 'i', '\\xee': 'i', '\\xef': 'i',\n '\\xd1': 'N', '\\xf1': 'n',\n '\\xd2': 'O', '\\xd3': 'O', '\\xd4': 'O', '\\xd5': 'O', '\\xd6': 'O', '\\xd8': 'O',\n '\\xf2': 'o', '\\xf3': 'o', '\\xf4': 'o', '\\xf5': 'o', '\\xf6': 'o', '\\xf8': 'o',\n '\\xd9': 'U', '\\xda': 'U', '\\xdb': 'U', '\\xdc': 'U',\n '\\xf9': 'u', '\\xfa': 'u', '\\xfb': 'u', '\\xfc': 'u',\n '\\xdd': 'Y', '\\xfd': 'y', '\\xff': 'y',\n '\\xc6': 'Ae', '\\xe6': 'ae',\n '\\xde': 'Th', '\\xfe': 'th',\n '\\xdf': 'ss',\n // Latin Extended-A block.\n '\\u0100': 'A', '\\u0102': 'A', '\\u0104': 'A',\n '\\u0101': 'a', '\\u0103': 'a', '\\u0105': 'a',\n '\\u0106': 'C', '\\u0108': 'C', '\\u010a': 'C', '\\u010c': 'C',\n '\\u0107': 'c', '\\u0109': 'c', '\\u010b': 'c', '\\u010d': 'c',\n '\\u010e': 'D', '\\u0110': 'D', '\\u010f': 'd', '\\u0111': 'd',\n '\\u0112': 'E', '\\u0114': 'E', '\\u0116': 'E', '\\u0118': 'E', '\\u011a': 'E',\n '\\u0113': 'e', '\\u0115': 'e', '\\u0117': 'e', '\\u0119': 'e', '\\u011b': 'e',\n '\\u011c': 'G', '\\u011e': 'G', '\\u0120': 'G', '\\u0122': 'G',\n '\\u011d': 'g', '\\u011f': 'g', '\\u0121': 'g', '\\u0123': 'g',\n '\\u0124': 'H', '\\u0126': 'H', '\\u0125': 'h', '\\u0127': 'h',\n '\\u0128': 'I', '\\u012a': 'I', '\\u012c': 'I', '\\u012e': 'I', '\\u0130': 'I',\n '\\u0129': 'i', '\\u012b': 'i', '\\u012d': 'i', '\\u012f': 'i', '\\u0131': 'i',\n '\\u0134': 'J', '\\u0135': 'j',\n '\\u0136': 'K', '\\u0137': 'k', '\\u0138': 'k',\n '\\u0139': 'L', '\\u013b': 'L', '\\u013d': 'L', '\\u013f': 'L', '\\u0141': 'L',\n '\\u013a': 'l', '\\u013c': 'l', '\\u013e': 'l', '\\u0140': 'l', '\\u0142': 'l',\n '\\u0143': 'N', '\\u0145': 'N', '\\u0147': 'N', '\\u014a': 'N',\n '\\u0144': 'n', '\\u0146': 'n', '\\u0148': 'n', '\\u014b': 'n',\n '\\u014c': 'O', '\\u014e': 'O', '\\u0150': 'O',\n '\\u014d': 'o', '\\u014f': 'o', '\\u0151': 'o',\n '\\u0154': 'R', '\\u0156': 'R', '\\u0158': 'R',\n '\\u0155': 'r', '\\u0157': 'r', '\\u0159': 'r',\n '\\u015a': 'S', '\\u015c': 'S', '\\u015e': 'S', '\\u0160': 'S',\n '\\u015b': 's', '\\u015d': 's', '\\u015f': 's', '\\u0161': 's',\n '\\u0162': 'T', '\\u0164': 'T', '\\u0166': 'T',\n '\\u0163': 't', '\\u0165': 't', '\\u0167': 't',\n '\\u0168': 'U', '\\u016a': 'U', '\\u016c': 'U', '\\u016e': 'U', '\\u0170': 'U', '\\u0172': 'U',\n '\\u0169': 'u', '\\u016b': 'u', '\\u016d': 'u', '\\u016f': 'u', '\\u0171': 'u', '\\u0173': 'u',\n '\\u0174': 'W', '\\u0175': 'w',\n '\\u0176': 'Y', '\\u0177': 'y', '\\u0178': 'Y',\n '\\u0179': 'Z', '\\u017b': 'Z', '\\u017d': 'Z',\n '\\u017a': 'z', '\\u017c': 'z', '\\u017e': 'z',\n '\\u0132': 'IJ', '\\u0133': 'ij',\n '\\u0152': 'Oe', '\\u0153': 'oe',\n '\\u0149': \"'n\", '\\u017f': 's'\n };\n\n /** Used to map characters to HTML entities. */\n var htmlEscapes = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": '''\n };\n\n /** Used to map HTML entities to characters. */\n var htmlUnescapes = {\n '&': '&',\n '<': '<',\n '>': '>',\n '"': '\"',\n ''': \"'\"\n };\n\n /** Used to escape characters for inclusion in compiled string literals. */\n var stringEscapes = {\n '\\\\': '\\\\',\n \"'\": \"'\",\n '\\n': 'n',\n '\\r': 'r',\n '\\u2028': 'u2028',\n '\\u2029': 'u2029'\n };\n\n /** Built-in method references without a dependency on `root`. */\n var freeParseFloat = parseFloat,\n freeParseInt = parseInt;\n\n /** Detect free variable `global` from Node.js. */\n var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\n /** Detect free variable `self`. */\n var freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n /** Used as a reference to the global object. */\n var root = freeGlobal || freeSelf || Function('return this')();\n\n /** Detect free variable `exports`. */\n var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n /** Detect free variable `module`. */\n var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n /** Detect the popular CommonJS extension `module.exports`. */\n var moduleExports = freeModule && freeModule.exports === freeExports;\n\n /** Detect free variable `process` from Node.js. */\n var freeProcess = moduleExports && freeGlobal.process;\n\n /** Used to access faster Node.js helpers. */\n var nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n }());\n\n /* Node.js helper references. */\n var nodeIsArrayBuffer = nodeUtil && nodeUtil.isArrayBuffer,\n nodeIsDate = nodeUtil && nodeUtil.isDate,\n nodeIsMap = nodeUtil && nodeUtil.isMap,\n nodeIsRegExp = nodeUtil && nodeUtil.isRegExp,\n nodeIsSet = nodeUtil && nodeUtil.isSet,\n nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n /*--------------------------------------------------------------------------*/\n\n /**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\n function apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n }\n\n /**\n * A specialized version of `baseAggregator` for arrays.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform keys.\n * @param {Object} accumulator The initial aggregated object.\n * @returns {Function} Returns `accumulator`.\n */\n function arrayAggregator(array, setter, iteratee, accumulator) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n var value = array[index];\n setter(accumulator, value, iteratee(value), array);\n }\n return accumulator;\n }\n\n /**\n * A specialized version of `_.forEach` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns `array`.\n */\n function arrayEach(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (iteratee(array[index], index, array) === false) {\n break;\n }\n }\n return array;\n }\n\n /**\n * A specialized version of `_.forEachRight` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns `array`.\n */\n function arrayEachRight(array, iteratee) {\n var length = array == null ? 0 : array.length;\n\n while (length--) {\n if (iteratee(array[length], length, array) === false) {\n break;\n }\n }\n return array;\n }\n\n /**\n * A specialized version of `_.every` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if all elements pass the predicate check,\n * else `false`.\n */\n function arrayEvery(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (!predicate(array[index], index, array)) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\n function arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n }\n\n /**\n * A specialized version of `_.includes` for arrays without support for\n * specifying an index to search from.\n *\n * @private\n * @param {Array} [array] The array to inspect.\n * @param {*} target The value to search for.\n * @returns {boolean} Returns `true` if `target` is found, else `false`.\n */\n function arrayIncludes(array, value) {\n var length = array == null ? 0 : array.length;\n return !!length && baseIndexOf(array, value, 0) > -1;\n }\n\n /**\n * This function is like `arrayIncludes` except that it accepts a comparator.\n *\n * @private\n * @param {Array} [array] The array to inspect.\n * @param {*} target The value to search for.\n * @param {Function} comparator The comparator invoked per element.\n * @returns {boolean} Returns `true` if `target` is found, else `false`.\n */\n function arrayIncludesWith(array, value, comparator) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (comparator(value, array[index])) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\n function arrayMap(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length,\n result = Array(length);\n\n while (++index < length) {\n result[index] = iteratee(array[index], index, array);\n }\n return result;\n }\n\n /**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\n function arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n }\n\n /**\n * A specialized version of `_.reduce` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @param {boolean} [initAccum] Specify using the first element of `array` as\n * the initial value.\n * @returns {*} Returns the accumulated value.\n */\n function arrayReduce(array, iteratee, accumulator, initAccum) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n if (initAccum && length) {\n accumulator = array[++index];\n }\n while (++index < length) {\n accumulator = iteratee(accumulator, array[index], index, array);\n }\n return accumulator;\n }\n\n /**\n * A specialized version of `_.reduceRight` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @param {boolean} [initAccum] Specify using the last element of `array` as\n * the initial value.\n * @returns {*} Returns the accumulated value.\n */\n function arrayReduceRight(array, iteratee, accumulator, initAccum) {\n var length = array == null ? 0 : array.length;\n if (initAccum && length) {\n accumulator = array[--length];\n }\n while (length--) {\n accumulator = iteratee(accumulator, array[length], length, array);\n }\n return accumulator;\n }\n\n /**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\n function arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n }\n\n /**\n * Gets the size of an ASCII `string`.\n *\n * @private\n * @param {string} string The string inspect.\n * @returns {number} Returns the string size.\n */\n var asciiSize = baseProperty('length');\n\n /**\n * Converts an ASCII `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\n function asciiToArray(string) {\n return string.split('');\n }\n\n /**\n * Splits an ASCII `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\n function asciiWords(string) {\n return string.match(reAsciiWord) || [];\n }\n\n /**\n * The base implementation of methods like `_.findKey` and `_.findLastKey`,\n * without support for iteratee shorthands, which iterates over `collection`\n * using `eachFunc`.\n *\n * @private\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} predicate The function invoked per iteration.\n * @param {Function} eachFunc The function to iterate over `collection`.\n * @returns {*} Returns the found element or its key, else `undefined`.\n */\n function baseFindKey(collection, predicate, eachFunc) {\n var result;\n eachFunc(collection, function(value, key, collection) {\n if (predicate(value, key, collection)) {\n result = key;\n return false;\n }\n });\n return result;\n }\n\n /**\n * The base implementation of `_.findIndex` and `_.findLastIndex` without\n * support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} predicate The function invoked per iteration.\n * @param {number} fromIndex The index to search from.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function baseFindIndex(array, predicate, fromIndex, fromRight) {\n var length = array.length,\n index = fromIndex + (fromRight ? 1 : -1);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (predicate(array[index], index, array)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * The base implementation of `_.indexOf` without `fromIndex` bounds checks.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function baseIndexOf(array, value, fromIndex) {\n return value === value\n ? strictIndexOf(array, value, fromIndex)\n : baseFindIndex(array, baseIsNaN, fromIndex);\n }\n\n /**\n * This function is like `baseIndexOf` except that it accepts a comparator.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @param {Function} comparator The comparator invoked per element.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function baseIndexOfWith(array, value, fromIndex, comparator) {\n var index = fromIndex - 1,\n length = array.length;\n\n while (++index < length) {\n if (comparator(array[index], value)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * The base implementation of `_.isNaN` without support for number objects.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.\n */\n function baseIsNaN(value) {\n return value !== value;\n }\n\n /**\n * The base implementation of `_.mean` and `_.meanBy` without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {number} Returns the mean.\n */\n function baseMean(array, iteratee) {\n var length = array == null ? 0 : array.length;\n return length ? (baseSum(array, iteratee) / length) : NAN;\n }\n\n /**\n * The base implementation of `_.property` without support for deep paths.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\n function baseProperty(key) {\n return function(object) {\n return object == null ? undefined : object[key];\n };\n }\n\n /**\n * The base implementation of `_.propertyOf` without support for deep paths.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Function} Returns the new accessor function.\n */\n function basePropertyOf(object) {\n return function(key) {\n return object == null ? undefined : object[key];\n };\n }\n\n /**\n * The base implementation of `_.reduce` and `_.reduceRight`, without support\n * for iteratee shorthands, which iterates over `collection` using `eachFunc`.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} accumulator The initial value.\n * @param {boolean} initAccum Specify using the first or last element of\n * `collection` as the initial value.\n * @param {Function} eachFunc The function to iterate over `collection`.\n * @returns {*} Returns the accumulated value.\n */\n function baseReduce(collection, iteratee, accumulator, initAccum, eachFunc) {\n eachFunc(collection, function(value, index, collection) {\n accumulator = initAccum\n ? (initAccum = false, value)\n : iteratee(accumulator, value, index, collection);\n });\n return accumulator;\n }\n\n /**\n * The base implementation of `_.sortBy` which uses `comparer` to define the\n * sort order of `array` and replaces criteria objects with their corresponding\n * values.\n *\n * @private\n * @param {Array} array The array to sort.\n * @param {Function} comparer The function to define sort order.\n * @returns {Array} Returns `array`.\n */\n function baseSortBy(array, comparer) {\n var length = array.length;\n\n array.sort(comparer);\n while (length--) {\n array[length] = array[length].value;\n }\n return array;\n }\n\n /**\n * The base implementation of `_.sum` and `_.sumBy` without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {number} Returns the sum.\n */\n function baseSum(array, iteratee) {\n var result,\n index = -1,\n length = array.length;\n\n while (++index < length) {\n var current = iteratee(array[index]);\n if (current !== undefined) {\n result = result === undefined ? current : (result + current);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\n function baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n }\n\n /**\n * The base implementation of `_.toPairs` and `_.toPairsIn` which creates an array\n * of key-value pairs for `object` corresponding to the property names of `props`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} props The property names to get values for.\n * @returns {Object} Returns the key-value pairs.\n */\n function baseToPairs(object, props) {\n return arrayMap(props, function(key) {\n return [key, object[key]];\n });\n }\n\n /**\n * The base implementation of `_.trim`.\n *\n * @private\n * @param {string} string The string to trim.\n * @returns {string} Returns the trimmed string.\n */\n function baseTrim(string) {\n return string\n ? string.slice(0, trimmedEndIndex(string) + 1).replace(reTrimStart, '')\n : string;\n }\n\n /**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\n function baseUnary(func) {\n return function(value) {\n return func(value);\n };\n }\n\n /**\n * The base implementation of `_.values` and `_.valuesIn` which creates an\n * array of `object` property values corresponding to the property names\n * of `props`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} props The property names to get values for.\n * @returns {Object} Returns the array of property values.\n */\n function baseValues(object, props) {\n return arrayMap(props, function(key) {\n return object[key];\n });\n }\n\n /**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function cacheHas(cache, key) {\n return cache.has(key);\n }\n\n /**\n * Used by `_.trim` and `_.trimStart` to get the index of the first string symbol\n * that is not found in the character symbols.\n *\n * @private\n * @param {Array} strSymbols The string symbols to inspect.\n * @param {Array} chrSymbols The character symbols to find.\n * @returns {number} Returns the index of the first unmatched string symbol.\n */\n function charsStartIndex(strSymbols, chrSymbols) {\n var index = -1,\n length = strSymbols.length;\n\n while (++index < length && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {}\n return index;\n }\n\n /**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last string symbol\n * that is not found in the character symbols.\n *\n * @private\n * @param {Array} strSymbols The string symbols to inspect.\n * @param {Array} chrSymbols The character symbols to find.\n * @returns {number} Returns the index of the last unmatched string symbol.\n */\n function charsEndIndex(strSymbols, chrSymbols) {\n var index = strSymbols.length;\n\n while (index-- && baseIndexOf(chrSymbols, strSymbols[index], 0) > -1) {}\n return index;\n }\n\n /**\n * Gets the number of `placeholder` occurrences in `array`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} placeholder The placeholder to search for.\n * @returns {number} Returns the placeholder count.\n */\n function countHolders(array, placeholder) {\n var length = array.length,\n result = 0;\n\n while (length--) {\n if (array[length] === placeholder) {\n ++result;\n }\n }\n return result;\n }\n\n /**\n * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A\n * letters to basic Latin letters.\n *\n * @private\n * @param {string} letter The matched letter to deburr.\n * @returns {string} Returns the deburred letter.\n */\n var deburrLetter = basePropertyOf(deburredLetters);\n\n /**\n * Used by `_.escape` to convert characters to HTML entities.\n *\n * @private\n * @param {string} chr The matched character to escape.\n * @returns {string} Returns the escaped character.\n */\n var escapeHtmlChar = basePropertyOf(htmlEscapes);\n\n /**\n * Used by `_.template` to escape characters for inclusion in compiled string literals.\n *\n * @private\n * @param {string} chr The matched character to escape.\n * @returns {string} Returns the escaped character.\n */\n function escapeStringChar(chr) {\n return '\\\\' + stringEscapes[chr];\n }\n\n /**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\n function getValue(object, key) {\n return object == null ? undefined : object[key];\n }\n\n /**\n * Checks if `string` contains Unicode symbols.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {boolean} Returns `true` if a symbol is found, else `false`.\n */\n function hasUnicode(string) {\n return reHasUnicode.test(string);\n }\n\n /**\n * Checks if `string` contains a word composed of Unicode symbols.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {boolean} Returns `true` if a word is found, else `false`.\n */\n function hasUnicodeWord(string) {\n return reHasUnicodeWord.test(string);\n }\n\n /**\n * Converts `iterator` to an array.\n *\n * @private\n * @param {Object} iterator The iterator to convert.\n * @returns {Array} Returns the converted array.\n */\n function iteratorToArray(iterator) {\n var data,\n result = [];\n\n while (!(data = iterator.next()).done) {\n result.push(data.value);\n }\n return result;\n }\n\n /**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\n function mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n }\n\n /**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\n function overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n }\n\n /**\n * Replaces all `placeholder` elements in `array` with an internal placeholder\n * and returns an array of their indexes.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {*} placeholder The placeholder to replace.\n * @returns {Array} Returns the new array of placeholder indexes.\n */\n function replaceHolders(array, placeholder) {\n var index = -1,\n length = array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (value === placeholder || value === PLACEHOLDER) {\n array[index] = PLACEHOLDER;\n result[resIndex++] = index;\n }\n }\n return result;\n }\n\n /**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\n function setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n }\n\n /**\n * Converts `set` to its value-value pairs.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the value-value pairs.\n */\n function setToPairs(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = [value, value];\n });\n return result;\n }\n\n /**\n * A specialized version of `_.indexOf` which performs strict equality\n * comparisons of values, i.e. `===`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function strictIndexOf(array, value, fromIndex) {\n var index = fromIndex - 1,\n length = array.length;\n\n while (++index < length) {\n if (array[index] === value) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * A specialized version of `_.lastIndexOf` which performs strict equality\n * comparisons of values, i.e. `===`.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} fromIndex The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function strictLastIndexOf(array, value, fromIndex) {\n var index = fromIndex + 1;\n while (index--) {\n if (array[index] === value) {\n return index;\n }\n }\n return index;\n }\n\n /**\n * Gets the number of symbols in `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the string size.\n */\n function stringSize(string) {\n return hasUnicode(string)\n ? unicodeSize(string)\n : asciiSize(string);\n }\n\n /**\n * Converts `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\n function stringToArray(string) {\n return hasUnicode(string)\n ? unicodeToArray(string)\n : asciiToArray(string);\n }\n\n /**\n * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace\n * character of `string`.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {number} Returns the index of the last non-whitespace character.\n */\n function trimmedEndIndex(string) {\n var index = string.length;\n\n while (index-- && reWhitespace.test(string.charAt(index))) {}\n return index;\n }\n\n /**\n * Used by `_.unescape` to convert HTML entities to characters.\n *\n * @private\n * @param {string} chr The matched character to unescape.\n * @returns {string} Returns the unescaped character.\n */\n var unescapeHtmlChar = basePropertyOf(htmlUnescapes);\n\n /**\n * Gets the size of a Unicode `string`.\n *\n * @private\n * @param {string} string The string inspect.\n * @returns {number} Returns the string size.\n */\n function unicodeSize(string) {\n var result = reUnicode.lastIndex = 0;\n while (reUnicode.test(string)) {\n ++result;\n }\n return result;\n }\n\n /**\n * Converts a Unicode `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\n function unicodeToArray(string) {\n return string.match(reUnicode) || [];\n }\n\n /**\n * Splits a Unicode `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\n function unicodeWords(string) {\n return string.match(reUnicodeWord) || [];\n }\n\n /*--------------------------------------------------------------------------*/\n\n /**\n * Create a new pristine `lodash` function using the `context` object.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Util\n * @param {Object} [context=root] The context object.\n * @returns {Function} Returns a new `lodash` function.\n * @example\n *\n * _.mixin({ 'foo': _.constant('foo') });\n *\n * var lodash = _.runInContext();\n * lodash.mixin({ 'bar': lodash.constant('bar') });\n *\n * _.isFunction(_.foo);\n * // => true\n * _.isFunction(_.bar);\n * // => false\n *\n * lodash.isFunction(lodash.foo);\n * // => false\n * lodash.isFunction(lodash.bar);\n * // => true\n *\n * // Create a suped-up `defer` in Node.js.\n * var defer = _.runInContext({ 'setTimeout': setImmediate }).defer;\n */\n var runInContext = (function runInContext(context) {\n context = context == null ? root : _.defaults(root.Object(), context, _.pick(root, contextProps));\n\n /** Built-in constructor references. */\n var Array = context.Array,\n Date = context.Date,\n Error = context.Error,\n Function = context.Function,\n Math = context.Math,\n Object = context.Object,\n RegExp = context.RegExp,\n String = context.String,\n TypeError = context.TypeError;\n\n /** Used for built-in method references. */\n var arrayProto = Array.prototype,\n funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n /** Used to detect overreaching core-js shims. */\n var coreJsData = context['__core-js_shared__'];\n\n /** Used to resolve the decompiled source of functions. */\n var funcToString = funcProto.toString;\n\n /** Used to check objects for own properties. */\n var hasOwnProperty = objectProto.hasOwnProperty;\n\n /** Used to generate unique IDs. */\n var idCounter = 0;\n\n /** Used to detect methods masquerading as native. */\n var maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n }());\n\n /**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\n var nativeObjectToString = objectProto.toString;\n\n /** Used to infer the `Object` constructor. */\n var objectCtorString = funcToString.call(Object);\n\n /** Used to restore the original `_` reference in `_.noConflict`. */\n var oldDash = root._;\n\n /** Used to detect if a method is native. */\n var reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n );\n\n /** Built-in value references. */\n var Buffer = moduleExports ? context.Buffer : undefined,\n Symbol = context.Symbol,\n Uint8Array = context.Uint8Array,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined,\n getPrototype = overArg(Object.getPrototypeOf, Object),\n objectCreate = Object.create,\n propertyIsEnumerable = objectProto.propertyIsEnumerable,\n splice = arrayProto.splice,\n spreadableSymbol = Symbol ? Symbol.isConcatSpreadable : undefined,\n symIterator = Symbol ? Symbol.iterator : undefined,\n symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n var defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n }());\n\n /** Mocked built-ins. */\n var ctxClearTimeout = context.clearTimeout !== root.clearTimeout && context.clearTimeout,\n ctxNow = Date && Date.now !== root.Date.now && Date.now,\n ctxSetTimeout = context.setTimeout !== root.setTimeout && context.setTimeout;\n\n /* Built-in method references for those with the same name as other `lodash` methods. */\n var nativeCeil = Math.ceil,\n nativeFloor = Math.floor,\n nativeGetSymbols = Object.getOwnPropertySymbols,\n nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined,\n nativeIsFinite = context.isFinite,\n nativeJoin = arrayProto.join,\n nativeKeys = overArg(Object.keys, Object),\n nativeMax = Math.max,\n nativeMin = Math.min,\n nativeNow = Date.now,\n nativeParseInt = context.parseInt,\n nativeRandom = Math.random,\n nativeReverse = arrayProto.reverse;\n\n /* Built-in method references that are verified to be native. */\n var DataView = getNative(context, 'DataView'),\n Map = getNative(context, 'Map'),\n Promise = getNative(context, 'Promise'),\n Set = getNative(context, 'Set'),\n WeakMap = getNative(context, 'WeakMap'),\n nativeCreate = getNative(Object, 'create');\n\n /** Used to store function metadata. */\n var metaMap = WeakMap && new WeakMap;\n\n /** Used to lookup unminified function names. */\n var realNames = {};\n\n /** Used to detect maps, sets, and weakmaps. */\n var dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n /** Used to convert symbols to primitives and strings. */\n var symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a `lodash` object which wraps `value` to enable implicit method\n * chain sequences. Methods that operate on and return arrays, collections,\n * and functions can be chained together. Methods that retrieve a single value\n * or may return a primitive value will automatically end the chain sequence\n * and return the unwrapped value. Otherwise, the value must be unwrapped\n * with `_#value`.\n *\n * Explicit chain sequences, which must be unwrapped with `_#value`, may be\n * enabled using `_.chain`.\n *\n * The execution of chained methods is lazy, that is, it's deferred until\n * `_#value` is implicitly or explicitly called.\n *\n * Lazy evaluation allows several methods to support shortcut fusion.\n * Shortcut fusion is an optimization to merge iteratee calls; this avoids\n * the creation of intermediate arrays and can greatly reduce the number of\n * iteratee executions. Sections of a chain sequence qualify for shortcut\n * fusion if the section is applied to an array and iteratees accept only\n * one argument. The heuristic for whether a section qualifies for shortcut\n * fusion is subject to change.\n *\n * Chaining is supported in custom builds as long as the `_#value` method is\n * directly or indirectly included in the build.\n *\n * In addition to lodash methods, wrappers have `Array` and `String` methods.\n *\n * The wrapper `Array` methods are:\n * `concat`, `join`, `pop`, `push`, `shift`, `sort`, `splice`, and `unshift`\n *\n * The wrapper `String` methods are:\n * `replace` and `split`\n *\n * The wrapper methods that support shortcut fusion are:\n * `at`, `compact`, `drop`, `dropRight`, `dropWhile`, `filter`, `find`,\n * `findLast`, `head`, `initial`, `last`, `map`, `reject`, `reverse`, `slice`,\n * `tail`, `take`, `takeRight`, `takeRightWhile`, `takeWhile`, and `toArray`\n *\n * The chainable wrapper methods are:\n * `after`, `ary`, `assign`, `assignIn`, `assignInWith`, `assignWith`, `at`,\n * `before`, `bind`, `bindAll`, `bindKey`, `castArray`, `chain`, `chunk`,\n * `commit`, `compact`, `concat`, `conforms`, `constant`, `countBy`, `create`,\n * `curry`, `debounce`, `defaults`, `defaultsDeep`, `defer`, `delay`,\n * `difference`, `differenceBy`, `differenceWith`, `drop`, `dropRight`,\n * `dropRightWhile`, `dropWhile`, `extend`, `extendWith`, `fill`, `filter`,\n * `flatMap`, `flatMapDeep`, `flatMapDepth`, `flatten`, `flattenDeep`,\n * `flattenDepth`, `flip`, `flow`, `flowRight`, `fromPairs`, `functions`,\n * `functionsIn`, `groupBy`, `initial`, `intersection`, `intersectionBy`,\n * `intersectionWith`, `invert`, `invertBy`, `invokeMap`, `iteratee`, `keyBy`,\n * `keys`, `keysIn`, `map`, `mapKeys`, `mapValues`, `matches`, `matchesProperty`,\n * `memoize`, `merge`, `mergeWith`, `method`, `methodOf`, `mixin`, `negate`,\n * `nthArg`, `omit`, `omitBy`, `once`, `orderBy`, `over`, `overArgs`,\n * `overEvery`, `overSome`, `partial`, `partialRight`, `partition`, `pick`,\n * `pickBy`, `plant`, `property`, `propertyOf`, `pull`, `pullAll`, `pullAllBy`,\n * `pullAllWith`, `pullAt`, `push`, `range`, `rangeRight`, `rearg`, `reject`,\n * `remove`, `rest`, `reverse`, `sampleSize`, `set`, `setWith`, `shuffle`,\n * `slice`, `sort`, `sortBy`, `splice`, `spread`, `tail`, `take`, `takeRight`,\n * `takeRightWhile`, `takeWhile`, `tap`, `throttle`, `thru`, `toArray`,\n * `toPairs`, `toPairsIn`, `toPath`, `toPlainObject`, `transform`, `unary`,\n * `union`, `unionBy`, `unionWith`, `uniq`, `uniqBy`, `uniqWith`, `unset`,\n * `unshift`, `unzip`, `unzipWith`, `update`, `updateWith`, `values`,\n * `valuesIn`, `without`, `wrap`, `xor`, `xorBy`, `xorWith`, `zip`,\n * `zipObject`, `zipObjectDeep`, and `zipWith`\n *\n * The wrapper methods that are **not** chainable by default are:\n * `add`, `attempt`, `camelCase`, `capitalize`, `ceil`, `clamp`, `clone`,\n * `cloneDeep`, `cloneDeepWith`, `cloneWith`, `conformsTo`, `deburr`,\n * `defaultTo`, `divide`, `each`, `eachRight`, `endsWith`, `eq`, `escape`,\n * `escapeRegExp`, `every`, `find`, `findIndex`, `findKey`, `findLast`,\n * `findLastIndex`, `findLastKey`, `first`, `floor`, `forEach`, `forEachRight`,\n * `forIn`, `forInRight`, `forOwn`, `forOwnRight`, `get`, `gt`, `gte`, `has`,\n * `hasIn`, `head`, `identity`, `includes`, `indexOf`, `inRange`, `invoke`,\n * `isArguments`, `isArray`, `isArrayBuffer`, `isArrayLike`, `isArrayLikeObject`,\n * `isBoolean`, `isBuffer`, `isDate`, `isElement`, `isEmpty`, `isEqual`,\n * `isEqualWith`, `isError`, `isFinite`, `isFunction`, `isInteger`, `isLength`,\n * `isMap`, `isMatch`, `isMatchWith`, `isNaN`, `isNative`, `isNil`, `isNull`,\n * `isNumber`, `isObject`, `isObjectLike`, `isPlainObject`, `isRegExp`,\n * `isSafeInteger`, `isSet`, `isString`, `isUndefined`, `isTypedArray`,\n * `isWeakMap`, `isWeakSet`, `join`, `kebabCase`, `last`, `lastIndexOf`,\n * `lowerCase`, `lowerFirst`, `lt`, `lte`, `max`, `maxBy`, `mean`, `meanBy`,\n * `min`, `minBy`, `multiply`, `noConflict`, `noop`, `now`, `nth`, `pad`,\n * `padEnd`, `padStart`, `parseInt`, `pop`, `random`, `reduce`, `reduceRight`,\n * `repeat`, `result`, `round`, `runInContext`, `sample`, `shift`, `size`,\n * `snakeCase`, `some`, `sortedIndex`, `sortedIndexBy`, `sortedLastIndex`,\n * `sortedLastIndexBy`, `startCase`, `startsWith`, `stubArray`, `stubFalse`,\n * `stubObject`, `stubString`, `stubTrue`, `subtract`, `sum`, `sumBy`,\n * `template`, `times`, `toFinite`, `toInteger`, `toJSON`, `toLength`,\n * `toLower`, `toNumber`, `toSafeInteger`, `toString`, `toUpper`, `trim`,\n * `trimEnd`, `trimStart`, `truncate`, `unescape`, `uniqueId`, `upperCase`,\n * `upperFirst`, `value`, and `words`\n *\n * @name _\n * @constructor\n * @category Seq\n * @param {*} value The value to wrap in a `lodash` instance.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * var wrapped = _([1, 2, 3]);\n *\n * // Returns an unwrapped value.\n * wrapped.reduce(_.add);\n * // => 6\n *\n * // Returns a wrapped value.\n * var squares = wrapped.map(square);\n *\n * _.isArray(squares);\n * // => false\n *\n * _.isArray(squares.value());\n * // => true\n */\n function lodash(value) {\n if (isObjectLike(value) && !isArray(value) && !(value instanceof LazyWrapper)) {\n if (value instanceof LodashWrapper) {\n return value;\n }\n if (hasOwnProperty.call(value, '__wrapped__')) {\n return wrapperClone(value);\n }\n }\n return new LodashWrapper(value);\n }\n\n /**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\n var baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n }());\n\n /**\n * The function whose prototype chain sequence wrappers inherit from.\n *\n * @private\n */\n function baseLodash() {\n // No operation performed.\n }\n\n /**\n * The base constructor for creating `lodash` wrapper objects.\n *\n * @private\n * @param {*} value The value to wrap.\n * @param {boolean} [chainAll] Enable explicit method chain sequences.\n */\n function LodashWrapper(value, chainAll) {\n this.__wrapped__ = value;\n this.__actions__ = [];\n this.__chain__ = !!chainAll;\n this.__index__ = 0;\n this.__values__ = undefined;\n }\n\n /**\n * By default, the template delimiters used by lodash are like those in\n * embedded Ruby (ERB) as well as ES2015 template strings. Change the\n * following template settings to use alternative delimiters.\n *\n * @static\n * @memberOf _\n * @type {Object}\n */\n lodash.templateSettings = {\n\n /**\n * Used to detect `data` property values to be HTML-escaped.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n 'escape': reEscape,\n\n /**\n * Used to detect code to be evaluated.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n 'evaluate': reEvaluate,\n\n /**\n * Used to detect `data` property values to inject.\n *\n * @memberOf _.templateSettings\n * @type {RegExp}\n */\n 'interpolate': reInterpolate,\n\n /**\n * Used to reference the data object in the template text.\n *\n * @memberOf _.templateSettings\n * @type {string}\n */\n 'variable': '',\n\n /**\n * Used to import variables into the compiled template.\n *\n * @memberOf _.templateSettings\n * @type {Object}\n */\n 'imports': {\n\n /**\n * A reference to the `lodash` function.\n *\n * @memberOf _.templateSettings.imports\n * @type {Function}\n */\n '_': lodash\n }\n };\n\n // Ensure wrappers are instances of `baseLodash`.\n lodash.prototype = baseLodash.prototype;\n lodash.prototype.constructor = lodash;\n\n LodashWrapper.prototype = baseCreate(baseLodash.prototype);\n LodashWrapper.prototype.constructor = LodashWrapper;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a lazy wrapper object which wraps `value` to enable lazy evaluation.\n *\n * @private\n * @constructor\n * @param {*} value The value to wrap.\n */\n function LazyWrapper(value) {\n this.__wrapped__ = value;\n this.__actions__ = [];\n this.__dir__ = 1;\n this.__filtered__ = false;\n this.__iteratees__ = [];\n this.__takeCount__ = MAX_ARRAY_LENGTH;\n this.__views__ = [];\n }\n\n /**\n * Creates a clone of the lazy wrapper object.\n *\n * @private\n * @name clone\n * @memberOf LazyWrapper\n * @returns {Object} Returns the cloned `LazyWrapper` object.\n */\n function lazyClone() {\n var result = new LazyWrapper(this.__wrapped__);\n result.__actions__ = copyArray(this.__actions__);\n result.__dir__ = this.__dir__;\n result.__filtered__ = this.__filtered__;\n result.__iteratees__ = copyArray(this.__iteratees__);\n result.__takeCount__ = this.__takeCount__;\n result.__views__ = copyArray(this.__views__);\n return result;\n }\n\n /**\n * Reverses the direction of lazy iteration.\n *\n * @private\n * @name reverse\n * @memberOf LazyWrapper\n * @returns {Object} Returns the new reversed `LazyWrapper` object.\n */\n function lazyReverse() {\n if (this.__filtered__) {\n var result = new LazyWrapper(this);\n result.__dir__ = -1;\n result.__filtered__ = true;\n } else {\n result = this.clone();\n result.__dir__ *= -1;\n }\n return result;\n }\n\n /**\n * Extracts the unwrapped value from its lazy wrapper.\n *\n * @private\n * @name value\n * @memberOf LazyWrapper\n * @returns {*} Returns the unwrapped value.\n */\n function lazyValue() {\n var array = this.__wrapped__.value(),\n dir = this.__dir__,\n isArr = isArray(array),\n isRight = dir < 0,\n arrLength = isArr ? array.length : 0,\n view = getView(0, arrLength, this.__views__),\n start = view.start,\n end = view.end,\n length = end - start,\n index = isRight ? end : (start - 1),\n iteratees = this.__iteratees__,\n iterLength = iteratees.length,\n resIndex = 0,\n takeCount = nativeMin(length, this.__takeCount__);\n\n if (!isArr || (!isRight && arrLength == length && takeCount == length)) {\n return baseWrapperValue(array, this.__actions__);\n }\n var result = [];\n\n outer:\n while (length-- && resIndex < takeCount) {\n index += dir;\n\n var iterIndex = -1,\n value = array[index];\n\n while (++iterIndex < iterLength) {\n var data = iteratees[iterIndex],\n iteratee = data.iteratee,\n type = data.type,\n computed = iteratee(value);\n\n if (type == LAZY_MAP_FLAG) {\n value = computed;\n } else if (!computed) {\n if (type == LAZY_FILTER_FLAG) {\n continue outer;\n } else {\n break outer;\n }\n }\n }\n result[resIndex++] = value;\n }\n return result;\n }\n\n // Ensure `LazyWrapper` is an instance of `baseLodash`.\n LazyWrapper.prototype = baseCreate(baseLodash.prototype);\n LazyWrapper.prototype.constructor = LazyWrapper;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n }\n\n /**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\n function hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n }\n\n /**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n }\n\n /**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n }\n\n /**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n }\n\n /**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\n function hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n }\n\n // Add methods to `Hash`.\n Hash.prototype.clear = hashClear;\n Hash.prototype['delete'] = hashDelete;\n Hash.prototype.get = hashGet;\n Hash.prototype.has = hashHas;\n Hash.prototype.set = hashSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n }\n\n /**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\n function listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n }\n\n /**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n }\n\n /**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n }\n\n /**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n }\n\n /**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\n function listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n }\n\n // Add methods to `ListCache`.\n ListCache.prototype.clear = listCacheClear;\n ListCache.prototype['delete'] = listCacheDelete;\n ListCache.prototype.get = listCacheGet;\n ListCache.prototype.has = listCacheHas;\n ListCache.prototype.set = listCacheSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n }\n\n /**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\n function mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n }\n\n /**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n }\n\n /**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function mapCacheGet(key) {\n return getMapData(this, key).get(key);\n }\n\n /**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function mapCacheHas(key) {\n return getMapData(this, key).has(key);\n }\n\n /**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\n function mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n }\n\n // Add methods to `MapCache`.\n MapCache.prototype.clear = mapCacheClear;\n MapCache.prototype['delete'] = mapCacheDelete;\n MapCache.prototype.get = mapCacheGet;\n MapCache.prototype.has = mapCacheHas;\n MapCache.prototype.set = mapCacheSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\n function SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n }\n\n /**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\n function setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED);\n return this;\n }\n\n /**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\n function setCacheHas(value) {\n return this.__data__.has(value);\n }\n\n // Add methods to `SetCache`.\n SetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\n SetCache.prototype.has = setCacheHas;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\n function Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n }\n\n /**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\n function stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n }\n\n /**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\n function stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n }\n\n /**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\n function stackGet(key) {\n return this.__data__.get(key);\n }\n\n /**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\n function stackHas(key) {\n return this.__data__.has(key);\n }\n\n /**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\n function stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n }\n\n // Add methods to `Stack`.\n Stack.prototype.clear = stackClear;\n Stack.prototype['delete'] = stackDelete;\n Stack.prototype.get = stackGet;\n Stack.prototype.has = stackHas;\n Stack.prototype.set = stackSet;\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\n function arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * A specialized version of `_.sample` for arrays.\n *\n * @private\n * @param {Array} array The array to sample.\n * @returns {*} Returns the random element.\n */\n function arraySample(array) {\n var length = array.length;\n return length ? array[baseRandom(0, length - 1)] : undefined;\n }\n\n /**\n * A specialized version of `_.sampleSize` for arrays.\n *\n * @private\n * @param {Array} array The array to sample.\n * @param {number} n The number of elements to sample.\n * @returns {Array} Returns the random elements.\n */\n function arraySampleSize(array, n) {\n return shuffleSelf(copyArray(array), baseClamp(n, 0, array.length));\n }\n\n /**\n * A specialized version of `_.shuffle` for arrays.\n *\n * @private\n * @param {Array} array The array to shuffle.\n * @returns {Array} Returns the new shuffled array.\n */\n function arrayShuffle(array) {\n return shuffleSelf(copyArray(array));\n }\n\n /**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\n function assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n }\n\n /**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\n function assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n }\n\n /**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\n function assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n }\n\n /**\n * Aggregates elements of `collection` on `accumulator` with keys transformed\n * by `iteratee` and values set by `setter`.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform keys.\n * @param {Object} accumulator The initial aggregated object.\n * @returns {Function} Returns `accumulator`.\n */\n function baseAggregator(collection, setter, iteratee, accumulator) {\n baseEach(collection, function(value, key, collection) {\n setter(accumulator, value, iteratee(value), collection);\n });\n return accumulator;\n }\n\n /**\n * The base implementation of `_.assign` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\n function baseAssign(object, source) {\n return object && copyObject(source, keys(source), object);\n }\n\n /**\n * The base implementation of `_.assignIn` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\n function baseAssignIn(object, source) {\n return object && copyObject(source, keysIn(source), object);\n }\n\n /**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\n function baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n }\n\n /**\n * The base implementation of `_.at` without support for individual paths.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {string[]} paths The property paths to pick.\n * @returns {Array} Returns the picked elements.\n */\n function baseAt(object, paths) {\n var index = -1,\n length = paths.length,\n result = Array(length),\n skip = object == null;\n\n while (++index < length) {\n result[index] = skip ? undefined : get(object, paths[index]);\n }\n return result;\n }\n\n /**\n * The base implementation of `_.clamp` which doesn't coerce arguments.\n *\n * @private\n * @param {number} number The number to clamp.\n * @param {number} [lower] The lower bound.\n * @param {number} upper The upper bound.\n * @returns {number} Returns the clamped number.\n */\n function baseClamp(number, lower, upper) {\n if (number === number) {\n if (upper !== undefined) {\n number = number <= upper ? number : upper;\n }\n if (lower !== undefined) {\n number = number >= lower ? number : lower;\n }\n }\n return number;\n }\n\n /**\n * The base implementation of `_.clone` and `_.cloneDeep` which tracks\n * traversed objects.\n *\n * @private\n * @param {*} value The value to clone.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Deep clone\n * 2 - Flatten inherited properties\n * 4 - Clone symbols\n * @param {Function} [customizer] The function to customize cloning.\n * @param {string} [key] The key of `value`.\n * @param {Object} [object] The parent object of `value`.\n * @param {Object} [stack] Tracks traversed objects and their clone counterparts.\n * @returns {*} Returns the cloned value.\n */\n function baseClone(value, bitmask, customizer, key, object, stack) {\n var result,\n isDeep = bitmask & CLONE_DEEP_FLAG,\n isFlat = bitmask & CLONE_FLAT_FLAG,\n isFull = bitmask & CLONE_SYMBOLS_FLAG;\n\n if (customizer) {\n result = object ? customizer(value, key, object, stack) : customizer(value);\n }\n if (result !== undefined) {\n return result;\n }\n if (!isObject(value)) {\n return value;\n }\n var isArr = isArray(value);\n if (isArr) {\n result = initCloneArray(value);\n if (!isDeep) {\n return copyArray(value, result);\n }\n } else {\n var tag = getTag(value),\n isFunc = tag == funcTag || tag == genTag;\n\n if (isBuffer(value)) {\n return cloneBuffer(value, isDeep);\n }\n if (tag == objectTag || tag == argsTag || (isFunc && !object)) {\n result = (isFlat || isFunc) ? {} : initCloneObject(value);\n if (!isDeep) {\n return isFlat\n ? copySymbolsIn(value, baseAssignIn(result, value))\n : copySymbols(value, baseAssign(result, value));\n }\n } else {\n if (!cloneableTags[tag]) {\n return object ? value : {};\n }\n result = initCloneByTag(value, tag, isDeep);\n }\n }\n // Check for circular references and return its corresponding clone.\n stack || (stack = new Stack);\n var stacked = stack.get(value);\n if (stacked) {\n return stacked;\n }\n stack.set(value, result);\n\n if (isSet(value)) {\n value.forEach(function(subValue) {\n result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));\n });\n } else if (isMap(value)) {\n value.forEach(function(subValue, key) {\n result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n }\n\n var keysFunc = isFull\n ? (isFlat ? getAllKeysIn : getAllKeys)\n : (isFlat ? keysIn : keys);\n\n var props = isArr ? undefined : keysFunc(value);\n arrayEach(props || value, function(subValue, key) {\n if (props) {\n key = subValue;\n subValue = value[key];\n }\n // Recursively populate clone (susceptible to call stack limits).\n assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n return result;\n }\n\n /**\n * The base implementation of `_.conforms` which doesn't clone `source`.\n *\n * @private\n * @param {Object} source The object of property predicates to conform to.\n * @returns {Function} Returns the new spec function.\n */\n function baseConforms(source) {\n var props = keys(source);\n return function(object) {\n return baseConformsTo(object, source, props);\n };\n }\n\n /**\n * The base implementation of `_.conformsTo` which accepts `props` to check.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property predicates to conform to.\n * @returns {boolean} Returns `true` if `object` conforms, else `false`.\n */\n function baseConformsTo(object, source, props) {\n var length = props.length;\n if (object == null) {\n return !length;\n }\n object = Object(object);\n while (length--) {\n var key = props[length],\n predicate = source[key],\n value = object[key];\n\n if ((value === undefined && !(key in object)) || !predicate(value)) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * The base implementation of `_.delay` and `_.defer` which accepts `args`\n * to provide to `func`.\n *\n * @private\n * @param {Function} func The function to delay.\n * @param {number} wait The number of milliseconds to delay invocation.\n * @param {Array} args The arguments to provide to `func`.\n * @returns {number|Object} Returns the timer id or timeout object.\n */\n function baseDelay(func, wait, args) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n return setTimeout(function() { func.apply(undefined, args); }, wait);\n }\n\n /**\n * The base implementation of methods like `_.difference` without support\n * for excluding multiple arrays or iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Array} values The values to exclude.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n */\n function baseDifference(array, values, iteratee, comparator) {\n var index = -1,\n includes = arrayIncludes,\n isCommon = true,\n length = array.length,\n result = [],\n valuesLength = values.length;\n\n if (!length) {\n return result;\n }\n if (iteratee) {\n values = arrayMap(values, baseUnary(iteratee));\n }\n if (comparator) {\n includes = arrayIncludesWith;\n isCommon = false;\n }\n else if (values.length >= LARGE_ARRAY_SIZE) {\n includes = cacheHas;\n isCommon = false;\n values = new SetCache(values);\n }\n outer:\n while (++index < length) {\n var value = array[index],\n computed = iteratee == null ? value : iteratee(value);\n\n value = (comparator || value !== 0) ? value : 0;\n if (isCommon && computed === computed) {\n var valuesIndex = valuesLength;\n while (valuesIndex--) {\n if (values[valuesIndex] === computed) {\n continue outer;\n }\n }\n result.push(value);\n }\n else if (!includes(values, computed, comparator)) {\n result.push(value);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.forEach` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n */\n var baseEach = createBaseEach(baseForOwn);\n\n /**\n * The base implementation of `_.forEachRight` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n */\n var baseEachRight = createBaseEach(baseForOwnRight, true);\n\n /**\n * The base implementation of `_.every` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if all elements pass the predicate check,\n * else `false`\n */\n function baseEvery(collection, predicate) {\n var result = true;\n baseEach(collection, function(value, index, collection) {\n result = !!predicate(value, index, collection);\n return result;\n });\n return result;\n }\n\n /**\n * The base implementation of methods like `_.max` and `_.min` which accepts a\n * `comparator` to determine the extremum value.\n *\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} iteratee The iteratee invoked per iteration.\n * @param {Function} comparator The comparator used to compare values.\n * @returns {*} Returns the extremum value.\n */\n function baseExtremum(array, iteratee, comparator) {\n var index = -1,\n length = array.length;\n\n while (++index < length) {\n var value = array[index],\n current = iteratee(value);\n\n if (current != null && (computed === undefined\n ? (current === current && !isSymbol(current))\n : comparator(current, computed)\n )) {\n var computed = current,\n result = value;\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.fill` without an iteratee call guard.\n *\n * @private\n * @param {Array} array The array to fill.\n * @param {*} value The value to fill `array` with.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns `array`.\n */\n function baseFill(array, value, start, end) {\n var length = array.length;\n\n start = toInteger(start);\n if (start < 0) {\n start = -start > length ? 0 : (length + start);\n }\n end = (end === undefined || end > length) ? length : toInteger(end);\n if (end < 0) {\n end += length;\n }\n end = start > end ? 0 : toLength(end);\n while (start < end) {\n array[start++] = value;\n }\n return array;\n }\n\n /**\n * The base implementation of `_.filter` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\n function baseFilter(collection, predicate) {\n var result = [];\n baseEach(collection, function(value, index, collection) {\n if (predicate(value, index, collection)) {\n result.push(value);\n }\n });\n return result;\n }\n\n /**\n * The base implementation of `_.flatten` with support for restricting flattening.\n *\n * @private\n * @param {Array} array The array to flatten.\n * @param {number} depth The maximum recursion depth.\n * @param {boolean} [predicate=isFlattenable] The function invoked per iteration.\n * @param {boolean} [isStrict] Restrict to values that pass `predicate` checks.\n * @param {Array} [result=[]] The initial result value.\n * @returns {Array} Returns the new flattened array.\n */\n function baseFlatten(array, depth, predicate, isStrict, result) {\n var index = -1,\n length = array.length;\n\n predicate || (predicate = isFlattenable);\n result || (result = []);\n\n while (++index < length) {\n var value = array[index];\n if (depth > 0 && predicate(value)) {\n if (depth > 1) {\n // Recursively flatten arrays (susceptible to call stack limits).\n baseFlatten(value, depth - 1, predicate, isStrict, result);\n } else {\n arrayPush(result, value);\n }\n } else if (!isStrict) {\n result[result.length] = value;\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\n var baseFor = createBaseFor();\n\n /**\n * This function is like `baseFor` except that it iterates over properties\n * in the opposite order.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\n var baseForRight = createBaseFor(true);\n\n /**\n * The base implementation of `_.forOwn` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Object} Returns `object`.\n */\n function baseForOwn(object, iteratee) {\n return object && baseFor(object, iteratee, keys);\n }\n\n /**\n * The base implementation of `_.forOwnRight` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Object} Returns `object`.\n */\n function baseForOwnRight(object, iteratee) {\n return object && baseForRight(object, iteratee, keys);\n }\n\n /**\n * The base implementation of `_.functions` which creates an array of\n * `object` function property names filtered from `props`.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Array} props The property names to filter.\n * @returns {Array} Returns the function names.\n */\n function baseFunctions(object, props) {\n return arrayFilter(props, function(key) {\n return isFunction(object[key]);\n });\n }\n\n /**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\n function baseGet(object, path) {\n path = castPath(path, object);\n\n var index = 0,\n length = path.length;\n\n while (object != null && index < length) {\n object = object[toKey(path[index++])];\n }\n return (index && index == length) ? object : undefined;\n }\n\n /**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\n function baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n }\n\n /**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\n function baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n }\n\n /**\n * The base implementation of `_.gt` which doesn't coerce arguments.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is greater than `other`,\n * else `false`.\n */\n function baseGt(value, other) {\n return value > other;\n }\n\n /**\n * The base implementation of `_.has` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\n function baseHas(object, key) {\n return object != null && hasOwnProperty.call(object, key);\n }\n\n /**\n * The base implementation of `_.hasIn` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\n function baseHasIn(object, key) {\n return object != null && key in Object(object);\n }\n\n /**\n * The base implementation of `_.inRange` which doesn't coerce arguments.\n *\n * @private\n * @param {number} number The number to check.\n * @param {number} start The start of the range.\n * @param {number} end The end of the range.\n * @returns {boolean} Returns `true` if `number` is in the range, else `false`.\n */\n function baseInRange(number, start, end) {\n return number >= nativeMin(start, end) && number < nativeMax(start, end);\n }\n\n /**\n * The base implementation of methods like `_.intersection`, without support\n * for iteratee shorthands, that accepts an array of arrays to inspect.\n *\n * @private\n * @param {Array} arrays The arrays to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of shared values.\n */\n function baseIntersection(arrays, iteratee, comparator) {\n var includes = comparator ? arrayIncludesWith : arrayIncludes,\n length = arrays[0].length,\n othLength = arrays.length,\n othIndex = othLength,\n caches = Array(othLength),\n maxLength = Infinity,\n result = [];\n\n while (othIndex--) {\n var array = arrays[othIndex];\n if (othIndex && iteratee) {\n array = arrayMap(array, baseUnary(iteratee));\n }\n maxLength = nativeMin(array.length, maxLength);\n caches[othIndex] = !comparator && (iteratee || (length >= 120 && array.length >= 120))\n ? new SetCache(othIndex && array)\n : undefined;\n }\n array = arrays[0];\n\n var index = -1,\n seen = caches[0];\n\n outer:\n while (++index < length && result.length < maxLength) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n value = (comparator || value !== 0) ? value : 0;\n if (!(seen\n ? cacheHas(seen, computed)\n : includes(result, computed, comparator)\n )) {\n othIndex = othLength;\n while (--othIndex) {\n var cache = caches[othIndex];\n if (!(cache\n ? cacheHas(cache, computed)\n : includes(arrays[othIndex], computed, comparator))\n ) {\n continue outer;\n }\n }\n if (seen) {\n seen.push(computed);\n }\n result.push(value);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.invert` and `_.invertBy` which inverts\n * `object` with values transformed by `iteratee` and set by `setter`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} setter The function to set `accumulator` values.\n * @param {Function} iteratee The iteratee to transform values.\n * @param {Object} accumulator The initial inverted object.\n * @returns {Function} Returns `accumulator`.\n */\n function baseInverter(object, setter, iteratee, accumulator) {\n baseForOwn(object, function(value, key, object) {\n setter(accumulator, iteratee(value), key, object);\n });\n return accumulator;\n }\n\n /**\n * The base implementation of `_.invoke` without support for individual\n * method arguments.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the method to invoke.\n * @param {Array} args The arguments to invoke the method with.\n * @returns {*} Returns the result of the invoked method.\n */\n function baseInvoke(object, path, args) {\n path = castPath(path, object);\n object = parent(object, path);\n var func = object == null ? object : object[toKey(last(path))];\n return func == null ? undefined : apply(func, object, args);\n }\n\n /**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\n function baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n }\n\n /**\n * The base implementation of `_.isArrayBuffer` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`.\n */\n function baseIsArrayBuffer(value) {\n return isObjectLike(value) && baseGetTag(value) == arrayBufferTag;\n }\n\n /**\n * The base implementation of `_.isDate` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a date object, else `false`.\n */\n function baseIsDate(value) {\n return isObjectLike(value) && baseGetTag(value) == dateTag;\n }\n\n /**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\n function baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {\n return value !== value && other !== other;\n }\n return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n }\n\n /**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\n function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray(object),\n othIsArr = isArray(other),\n objTag = objIsArr ? arrayTag : getTag(object),\n othTag = othIsArr ? arrayTag : getTag(other);\n\n objTag = objTag == argsTag ? objectTag : objTag;\n othTag = othTag == argsTag ? objectTag : othTag;\n\n var objIsObj = objTag == objectTag,\n othIsObj = othTag == objectTag,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer(object)) {\n if (!isBuffer(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new Stack);\n return (objIsArr || isTypedArray(object))\n ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new Stack);\n return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n }\n\n /**\n * The base implementation of `_.isMap` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n */\n function baseIsMap(value) {\n return isObjectLike(value) && getTag(value) == mapTag;\n }\n\n /**\n * The base implementation of `_.isMatch` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @param {Array} matchData The property names, values, and compare flags to match.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n */\n function baseIsMatch(object, source, matchData, customizer) {\n var index = matchData.length,\n length = index,\n noCustomizer = !customizer;\n\n if (object == null) {\n return !length;\n }\n object = Object(object);\n while (index--) {\n var data = matchData[index];\n if ((noCustomizer && data[2])\n ? data[1] !== object[data[0]]\n : !(data[0] in object)\n ) {\n return false;\n }\n }\n while (++index < length) {\n data = matchData[index];\n var key = data[0],\n objValue = object[key],\n srcValue = data[1];\n\n if (noCustomizer && data[2]) {\n if (objValue === undefined && !(key in object)) {\n return false;\n }\n } else {\n var stack = new Stack;\n if (customizer) {\n var result = customizer(objValue, srcValue, key, object, source, stack);\n }\n if (!(result === undefined\n ? baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG, customizer, stack)\n : result\n )) {\n return false;\n }\n }\n }\n return true;\n }\n\n /**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\n function baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n }\n\n /**\n * The base implementation of `_.isRegExp` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a regexp, else `false`.\n */\n function baseIsRegExp(value) {\n return isObjectLike(value) && baseGetTag(value) == regexpTag;\n }\n\n /**\n * The base implementation of `_.isSet` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n */\n function baseIsSet(value) {\n return isObjectLike(value) && getTag(value) == setTag;\n }\n\n /**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\n function baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n }\n\n /**\n * The base implementation of `_.iteratee`.\n *\n * @private\n * @param {*} [value=_.identity] The value to convert to an iteratee.\n * @returns {Function} Returns the iteratee.\n */\n function baseIteratee(value) {\n // Don't store the `typeof` result in a variable to avoid a JIT bug in Safari 9.\n // See https://bugs.webkit.org/show_bug.cgi?id=156034 for more details.\n if (typeof value == 'function') {\n return value;\n }\n if (value == null) {\n return identity;\n }\n if (typeof value == 'object') {\n return isArray(value)\n ? baseMatchesProperty(value[0], value[1])\n : baseMatches(value);\n }\n return property(value);\n }\n\n /**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\n function baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\n function baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.lt` which doesn't coerce arguments.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is less than `other`,\n * else `false`.\n */\n function baseLt(value, other) {\n return value < other;\n }\n\n /**\n * The base implementation of `_.map` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\n function baseMap(collection, iteratee) {\n var index = -1,\n result = isArrayLike(collection) ? Array(collection.length) : [];\n\n baseEach(collection, function(value, key, collection) {\n result[++index] = iteratee(value, key, collection);\n });\n return result;\n }\n\n /**\n * The base implementation of `_.matches` which doesn't clone `source`.\n *\n * @private\n * @param {Object} source The object of property values to match.\n * @returns {Function} Returns the new spec function.\n */\n function baseMatches(source) {\n var matchData = getMatchData(source);\n if (matchData.length == 1 && matchData[0][2]) {\n return matchesStrictComparable(matchData[0][0], matchData[0][1]);\n }\n return function(object) {\n return object === source || baseIsMatch(object, source, matchData);\n };\n }\n\n /**\n * The base implementation of `_.matchesProperty` which doesn't clone `srcValue`.\n *\n * @private\n * @param {string} path The path of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\n function baseMatchesProperty(path, srcValue) {\n if (isKey(path) && isStrictComparable(srcValue)) {\n return matchesStrictComparable(toKey(path), srcValue);\n }\n return function(object) {\n var objValue = get(object, path);\n return (objValue === undefined && objValue === srcValue)\n ? hasIn(object, path)\n : baseIsEqual(srcValue, objValue, COMPARE_PARTIAL_FLAG | COMPARE_UNORDERED_FLAG);\n };\n }\n\n /**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\n function baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n baseFor(source, function(srcValue, key) {\n stack || (stack = new Stack);\n if (isObject(srcValue)) {\n baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n assignMergeValue(object, key, newValue);\n }\n }, keysIn);\n }\n\n /**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\n function baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = safeGet(object, key),\n srcValue = safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(objValue)) {\n newValue = copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(objValue)) {\n newValue = initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n assignMergeValue(object, key, newValue);\n }\n\n /**\n * The base implementation of `_.nth` which doesn't coerce arguments.\n *\n * @private\n * @param {Array} array The array to query.\n * @param {number} n The index of the element to return.\n * @returns {*} Returns the nth element of `array`.\n */\n function baseNth(array, n) {\n var length = array.length;\n if (!length) {\n return;\n }\n n += n < 0 ? length : 0;\n return isIndex(n, length) ? array[n] : undefined;\n }\n\n /**\n * The base implementation of `_.orderBy` without param guards.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function[]|Object[]|string[]} iteratees The iteratees to sort by.\n * @param {string[]} orders The sort orders of `iteratees`.\n * @returns {Array} Returns the new sorted array.\n */\n function baseOrderBy(collection, iteratees, orders) {\n if (iteratees.length) {\n iteratees = arrayMap(iteratees, function(iteratee) {\n if (isArray(iteratee)) {\n return function(value) {\n return baseGet(value, iteratee.length === 1 ? iteratee[0] : iteratee);\n }\n }\n return iteratee;\n });\n } else {\n iteratees = [identity];\n }\n\n var index = -1;\n iteratees = arrayMap(iteratees, baseUnary(getIteratee()));\n\n var result = baseMap(collection, function(value, key, collection) {\n var criteria = arrayMap(iteratees, function(iteratee) {\n return iteratee(value);\n });\n return { 'criteria': criteria, 'index': ++index, 'value': value };\n });\n\n return baseSortBy(result, function(object, other) {\n return compareMultiple(object, other, orders);\n });\n }\n\n /**\n * The base implementation of `_.pick` without support for individual\n * property identifiers.\n *\n * @private\n * @param {Object} object The source object.\n * @param {string[]} paths The property paths to pick.\n * @returns {Object} Returns the new object.\n */\n function basePick(object, paths) {\n return basePickBy(object, paths, function(value, path) {\n return hasIn(object, path);\n });\n }\n\n /**\n * The base implementation of `_.pickBy` without support for iteratee shorthands.\n *\n * @private\n * @param {Object} object The source object.\n * @param {string[]} paths The property paths to pick.\n * @param {Function} predicate The function invoked per property.\n * @returns {Object} Returns the new object.\n */\n function basePickBy(object, paths, predicate) {\n var index = -1,\n length = paths.length,\n result = {};\n\n while (++index < length) {\n var path = paths[index],\n value = baseGet(object, path);\n\n if (predicate(value, path)) {\n baseSet(result, castPath(path, object), value);\n }\n }\n return result;\n }\n\n /**\n * A specialized version of `baseProperty` which supports deep paths.\n *\n * @private\n * @param {Array|string} path The path of the property to get.\n * @returns {Function} Returns the new accessor function.\n */\n function basePropertyDeep(path) {\n return function(object) {\n return baseGet(object, path);\n };\n }\n\n /**\n * The base implementation of `_.pullAllBy` without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns `array`.\n */\n function basePullAll(array, values, iteratee, comparator) {\n var indexOf = comparator ? baseIndexOfWith : baseIndexOf,\n index = -1,\n length = values.length,\n seen = array;\n\n if (array === values) {\n values = copyArray(values);\n }\n if (iteratee) {\n seen = arrayMap(array, baseUnary(iteratee));\n }\n while (++index < length) {\n var fromIndex = 0,\n value = values[index],\n computed = iteratee ? iteratee(value) : value;\n\n while ((fromIndex = indexOf(seen, computed, fromIndex, comparator)) > -1) {\n if (seen !== array) {\n splice.call(seen, fromIndex, 1);\n }\n splice.call(array, fromIndex, 1);\n }\n }\n return array;\n }\n\n /**\n * The base implementation of `_.pullAt` without support for individual\n * indexes or capturing the removed elements.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {number[]} indexes The indexes of elements to remove.\n * @returns {Array} Returns `array`.\n */\n function basePullAt(array, indexes) {\n var length = array ? indexes.length : 0,\n lastIndex = length - 1;\n\n while (length--) {\n var index = indexes[length];\n if (length == lastIndex || index !== previous) {\n var previous = index;\n if (isIndex(index)) {\n splice.call(array, index, 1);\n } else {\n baseUnset(array, index);\n }\n }\n }\n return array;\n }\n\n /**\n * The base implementation of `_.random` without support for returning\n * floating-point numbers.\n *\n * @private\n * @param {number} lower The lower bound.\n * @param {number} upper The upper bound.\n * @returns {number} Returns the random number.\n */\n function baseRandom(lower, upper) {\n return lower + nativeFloor(nativeRandom() * (upper - lower + 1));\n }\n\n /**\n * The base implementation of `_.range` and `_.rangeRight` which doesn't\n * coerce arguments.\n *\n * @private\n * @param {number} start The start of the range.\n * @param {number} end The end of the range.\n * @param {number} step The value to increment or decrement by.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Array} Returns the range of numbers.\n */\n function baseRange(start, end, step, fromRight) {\n var index = -1,\n length = nativeMax(nativeCeil((end - start) / (step || 1)), 0),\n result = Array(length);\n\n while (length--) {\n result[fromRight ? length : ++index] = start;\n start += step;\n }\n return result;\n }\n\n /**\n * The base implementation of `_.repeat` which doesn't coerce arguments.\n *\n * @private\n * @param {string} string The string to repeat.\n * @param {number} n The number of times to repeat the string.\n * @returns {string} Returns the repeated string.\n */\n function baseRepeat(string, n) {\n var result = '';\n if (!string || n < 1 || n > MAX_SAFE_INTEGER) {\n return result;\n }\n // Leverage the exponentiation by squaring algorithm for a faster repeat.\n // See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details.\n do {\n if (n % 2) {\n result += string;\n }\n n = nativeFloor(n / 2);\n if (n) {\n string += string;\n }\n } while (n);\n\n return result;\n }\n\n /**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\n function baseRest(func, start) {\n return setToString(overRest(func, start, identity), func + '');\n }\n\n /**\n * The base implementation of `_.sample`.\n *\n * @private\n * @param {Array|Object} collection The collection to sample.\n * @returns {*} Returns the random element.\n */\n function baseSample(collection) {\n return arraySample(values(collection));\n }\n\n /**\n * The base implementation of `_.sampleSize` without param guards.\n *\n * @private\n * @param {Array|Object} collection The collection to sample.\n * @param {number} n The number of elements to sample.\n * @returns {Array} Returns the random elements.\n */\n function baseSampleSize(collection, n) {\n var array = values(collection);\n return shuffleSelf(array, baseClamp(n, 0, array.length));\n }\n\n /**\n * The base implementation of `_.set`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @param {Function} [customizer] The function to customize path creation.\n * @returns {Object} Returns `object`.\n */\n function baseSet(object, path, value, customizer) {\n if (!isObject(object)) {\n return object;\n }\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n lastIndex = length - 1,\n nested = object;\n\n while (nested != null && ++index < length) {\n var key = toKey(path[index]),\n newValue = value;\n\n if (key === '__proto__' || key === 'constructor' || key === 'prototype') {\n return object;\n }\n\n if (index != lastIndex) {\n var objValue = nested[key];\n newValue = customizer ? customizer(objValue, key, nested) : undefined;\n if (newValue === undefined) {\n newValue = isObject(objValue)\n ? objValue\n : (isIndex(path[index + 1]) ? [] : {});\n }\n }\n assignValue(nested, key, newValue);\n nested = nested[key];\n }\n return object;\n }\n\n /**\n * The base implementation of `setData` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to associate metadata with.\n * @param {*} data The metadata.\n * @returns {Function} Returns `func`.\n */\n var baseSetData = !metaMap ? identity : function(func, data) {\n metaMap.set(func, data);\n return func;\n };\n\n /**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\n var baseSetToString = !defineProperty ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n };\n\n /**\n * The base implementation of `_.shuffle`.\n *\n * @private\n * @param {Array|Object} collection The collection to shuffle.\n * @returns {Array} Returns the new shuffled array.\n */\n function baseShuffle(collection) {\n return shuffleSelf(values(collection));\n }\n\n /**\n * The base implementation of `_.slice` without an iteratee call guard.\n *\n * @private\n * @param {Array} array The array to slice.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the slice of `array`.\n */\n function baseSlice(array, start, end) {\n var index = -1,\n length = array.length;\n\n if (start < 0) {\n start = -start > length ? 0 : (length + start);\n }\n end = end > length ? length : end;\n if (end < 0) {\n end += length;\n }\n length = start > end ? 0 : ((end - start) >>> 0);\n start >>>= 0;\n\n var result = Array(length);\n while (++index < length) {\n result[index] = array[index + start];\n }\n return result;\n }\n\n /**\n * The base implementation of `_.some` without support for iteratee shorthands.\n *\n * @private\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\n function baseSome(collection, predicate) {\n var result;\n\n baseEach(collection, function(value, index, collection) {\n result = predicate(value, index, collection);\n return !result;\n });\n return !!result;\n }\n\n /**\n * The base implementation of `_.sortedIndex` and `_.sortedLastIndex` which\n * performs a binary search of `array` to determine the index at which `value`\n * should be inserted into `array` in order to maintain its sort order.\n *\n * @private\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {boolean} [retHighest] Specify returning the highest qualified index.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n */\n function baseSortedIndex(array, value, retHighest) {\n var low = 0,\n high = array == null ? low : array.length;\n\n if (typeof value == 'number' && value === value && high <= HALF_MAX_ARRAY_LENGTH) {\n while (low < high) {\n var mid = (low + high) >>> 1,\n computed = array[mid];\n\n if (computed !== null && !isSymbol(computed) &&\n (retHighest ? (computed <= value) : (computed < value))) {\n low = mid + 1;\n } else {\n high = mid;\n }\n }\n return high;\n }\n return baseSortedIndexBy(array, value, identity, retHighest);\n }\n\n /**\n * The base implementation of `_.sortedIndexBy` and `_.sortedLastIndexBy`\n * which invokes `iteratee` for `value` and each element of `array` to compute\n * their sort ranking. The iteratee is invoked with one argument; (value).\n *\n * @private\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {Function} iteratee The iteratee invoked per element.\n * @param {boolean} [retHighest] Specify returning the highest qualified index.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n */\n function baseSortedIndexBy(array, value, iteratee, retHighest) {\n var low = 0,\n high = array == null ? 0 : array.length;\n if (high === 0) {\n return 0;\n }\n\n value = iteratee(value);\n var valIsNaN = value !== value,\n valIsNull = value === null,\n valIsSymbol = isSymbol(value),\n valIsUndefined = value === undefined;\n\n while (low < high) {\n var mid = nativeFloor((low + high) / 2),\n computed = iteratee(array[mid]),\n othIsDefined = computed !== undefined,\n othIsNull = computed === null,\n othIsReflexive = computed === computed,\n othIsSymbol = isSymbol(computed);\n\n if (valIsNaN) {\n var setLow = retHighest || othIsReflexive;\n } else if (valIsUndefined) {\n setLow = othIsReflexive && (retHighest || othIsDefined);\n } else if (valIsNull) {\n setLow = othIsReflexive && othIsDefined && (retHighest || !othIsNull);\n } else if (valIsSymbol) {\n setLow = othIsReflexive && othIsDefined && !othIsNull && (retHighest || !othIsSymbol);\n } else if (othIsNull || othIsSymbol) {\n setLow = false;\n } else {\n setLow = retHighest ? (computed <= value) : (computed < value);\n }\n if (setLow) {\n low = mid + 1;\n } else {\n high = mid;\n }\n }\n return nativeMin(high, MAX_ARRAY_INDEX);\n }\n\n /**\n * The base implementation of `_.sortedUniq` and `_.sortedUniqBy` without\n * support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n */\n function baseSortedUniq(array, iteratee) {\n var index = -1,\n length = array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n if (!index || !eq(computed, seen)) {\n var seen = computed;\n result[resIndex++] = value === 0 ? 0 : value;\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.toNumber` which doesn't ensure correct\n * conversions of binary, hexadecimal, or octal string values.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n */\n function baseToNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n return +value;\n }\n\n /**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\n function baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isArray(value)) {\n // Recursively convert values (susceptible to call stack limits).\n return arrayMap(value, baseToString) + '';\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n }\n\n /**\n * The base implementation of `_.uniqBy` without support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n */\n function baseUniq(array, iteratee, comparator) {\n var index = -1,\n includes = arrayIncludes,\n length = array.length,\n isCommon = true,\n result = [],\n seen = result;\n\n if (comparator) {\n isCommon = false;\n includes = arrayIncludesWith;\n }\n else if (length >= LARGE_ARRAY_SIZE) {\n var set = iteratee ? null : createSet(array);\n if (set) {\n return setToArray(set);\n }\n isCommon = false;\n includes = cacheHas;\n seen = new SetCache;\n }\n else {\n seen = iteratee ? [] : result;\n }\n outer:\n while (++index < length) {\n var value = array[index],\n computed = iteratee ? iteratee(value) : value;\n\n value = (comparator || value !== 0) ? value : 0;\n if (isCommon && computed === computed) {\n var seenIndex = seen.length;\n while (seenIndex--) {\n if (seen[seenIndex] === computed) {\n continue outer;\n }\n }\n if (iteratee) {\n seen.push(computed);\n }\n result.push(value);\n }\n else if (!includes(seen, computed, comparator)) {\n if (seen !== result) {\n seen.push(computed);\n }\n result.push(value);\n }\n }\n return result;\n }\n\n /**\n * The base implementation of `_.unset`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The property path to unset.\n * @returns {boolean} Returns `true` if the property is deleted, else `false`.\n */\n function baseUnset(object, path) {\n path = castPath(path, object);\n object = parent(object, path);\n return object == null || delete object[toKey(last(path))];\n }\n\n /**\n * The base implementation of `_.update`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to update.\n * @param {Function} updater The function to produce the updated value.\n * @param {Function} [customizer] The function to customize path creation.\n * @returns {Object} Returns `object`.\n */\n function baseUpdate(object, path, updater, customizer) {\n return baseSet(object, path, updater(baseGet(object, path)), customizer);\n }\n\n /**\n * The base implementation of methods like `_.dropWhile` and `_.takeWhile`\n * without support for iteratee shorthands.\n *\n * @private\n * @param {Array} array The array to query.\n * @param {Function} predicate The function invoked per iteration.\n * @param {boolean} [isDrop] Specify dropping elements instead of taking them.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Array} Returns the slice of `array`.\n */\n function baseWhile(array, predicate, isDrop, fromRight) {\n var length = array.length,\n index = fromRight ? length : -1;\n\n while ((fromRight ? index-- : ++index < length) &&\n predicate(array[index], index, array)) {}\n\n return isDrop\n ? baseSlice(array, (fromRight ? 0 : index), (fromRight ? index + 1 : length))\n : baseSlice(array, (fromRight ? index + 1 : 0), (fromRight ? length : index));\n }\n\n /**\n * The base implementation of `wrapperValue` which returns the result of\n * performing a sequence of actions on the unwrapped `value`, where each\n * successive action is supplied the return value of the previous.\n *\n * @private\n * @param {*} value The unwrapped value.\n * @param {Array} actions Actions to perform to resolve the unwrapped value.\n * @returns {*} Returns the resolved value.\n */\n function baseWrapperValue(value, actions) {\n var result = value;\n if (result instanceof LazyWrapper) {\n result = result.value();\n }\n return arrayReduce(actions, function(result, action) {\n return action.func.apply(action.thisArg, arrayPush([result], action.args));\n }, result);\n }\n\n /**\n * The base implementation of methods like `_.xor`, without support for\n * iteratee shorthands, that accepts an array of arrays to inspect.\n *\n * @private\n * @param {Array} arrays The arrays to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of values.\n */\n function baseXor(arrays, iteratee, comparator) {\n var length = arrays.length;\n if (length < 2) {\n return length ? baseUniq(arrays[0]) : [];\n }\n var index = -1,\n result = Array(length);\n\n while (++index < length) {\n var array = arrays[index],\n othIndex = -1;\n\n while (++othIndex < length) {\n if (othIndex != index) {\n result[index] = baseDifference(result[index] || array, arrays[othIndex], iteratee, comparator);\n }\n }\n }\n return baseUniq(baseFlatten(result, 1), iteratee, comparator);\n }\n\n /**\n * This base implementation of `_.zipObject` which assigns values using `assignFunc`.\n *\n * @private\n * @param {Array} props The property identifiers.\n * @param {Array} values The property values.\n * @param {Function} assignFunc The function to assign values.\n * @returns {Object} Returns the new object.\n */\n function baseZipObject(props, values, assignFunc) {\n var index = -1,\n length = props.length,\n valsLength = values.length,\n result = {};\n\n while (++index < length) {\n var value = index < valsLength ? values[index] : undefined;\n assignFunc(result, props[index], value);\n }\n return result;\n }\n\n /**\n * Casts `value` to an empty array if it's not an array like object.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {Array|Object} Returns the cast array-like object.\n */\n function castArrayLikeObject(value) {\n return isArrayLikeObject(value) ? value : [];\n }\n\n /**\n * Casts `value` to `identity` if it's not a function.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {Function} Returns cast function.\n */\n function castFunction(value) {\n return typeof value == 'function' ? value : identity;\n }\n\n /**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {Object} [object] The object to query keys on.\n * @returns {Array} Returns the cast property path array.\n */\n function castPath(value, object) {\n if (isArray(value)) {\n return value;\n }\n return isKey(value, object) ? [value] : stringToPath(toString(value));\n }\n\n /**\n * A `baseRest` alias which can be replaced with `identity` by module\n * replacement plugins.\n *\n * @private\n * @type {Function}\n * @param {Function} func The function to apply a rest parameter to.\n * @returns {Function} Returns the new function.\n */\n var castRest = baseRest;\n\n /**\n * Casts `array` to a slice if it's needed.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {number} start The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the cast slice.\n */\n function castSlice(array, start, end) {\n var length = array.length;\n end = end === undefined ? length : end;\n return (!start && end >= length) ? array : baseSlice(array, start, end);\n }\n\n /**\n * A simple wrapper around the global [`clearTimeout`](https://mdn.io/clearTimeout).\n *\n * @private\n * @param {number|Object} id The timer id or timeout object of the timer to clear.\n */\n var clearTimeout = ctxClearTimeout || function(id) {\n return root.clearTimeout(id);\n };\n\n /**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\n function cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n }\n\n /**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\n function cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n }\n\n /**\n * Creates a clone of `dataView`.\n *\n * @private\n * @param {Object} dataView The data view to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned data view.\n */\n function cloneDataView(dataView, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;\n return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);\n }\n\n /**\n * Creates a clone of `regexp`.\n *\n * @private\n * @param {Object} regexp The regexp to clone.\n * @returns {Object} Returns the cloned regexp.\n */\n function cloneRegExp(regexp) {\n var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));\n result.lastIndex = regexp.lastIndex;\n return result;\n }\n\n /**\n * Creates a clone of the `symbol` object.\n *\n * @private\n * @param {Object} symbol The symbol object to clone.\n * @returns {Object} Returns the cloned symbol object.\n */\n function cloneSymbol(symbol) {\n return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};\n }\n\n /**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\n function cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n }\n\n /**\n * Compares values to sort them in ascending order.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {number} Returns the sort order indicator for `value`.\n */\n function compareAscending(value, other) {\n if (value !== other) {\n var valIsDefined = value !== undefined,\n valIsNull = value === null,\n valIsReflexive = value === value,\n valIsSymbol = isSymbol(value);\n\n var othIsDefined = other !== undefined,\n othIsNull = other === null,\n othIsReflexive = other === other,\n othIsSymbol = isSymbol(other);\n\n if ((!othIsNull && !othIsSymbol && !valIsSymbol && value > other) ||\n (valIsSymbol && othIsDefined && othIsReflexive && !othIsNull && !othIsSymbol) ||\n (valIsNull && othIsDefined && othIsReflexive) ||\n (!valIsDefined && othIsReflexive) ||\n !valIsReflexive) {\n return 1;\n }\n if ((!valIsNull && !valIsSymbol && !othIsSymbol && value < other) ||\n (othIsSymbol && valIsDefined && valIsReflexive && !valIsNull && !valIsSymbol) ||\n (othIsNull && valIsDefined && valIsReflexive) ||\n (!othIsDefined && valIsReflexive) ||\n !othIsReflexive) {\n return -1;\n }\n }\n return 0;\n }\n\n /**\n * Used by `_.orderBy` to compare multiple properties of a value to another\n * and stable sort them.\n *\n * If `orders` is unspecified, all values are sorted in ascending order. Otherwise,\n * specify an order of \"desc\" for descending or \"asc\" for ascending sort order\n * of corresponding values.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {boolean[]|string[]} orders The order to sort by for each property.\n * @returns {number} Returns the sort order indicator for `object`.\n */\n function compareMultiple(object, other, orders) {\n var index = -1,\n objCriteria = object.criteria,\n othCriteria = other.criteria,\n length = objCriteria.length,\n ordersLength = orders.length;\n\n while (++index < length) {\n var result = compareAscending(objCriteria[index], othCriteria[index]);\n if (result) {\n if (index >= ordersLength) {\n return result;\n }\n var order = orders[index];\n return result * (order == 'desc' ? -1 : 1);\n }\n }\n // Fixes an `Array#sort` bug in the JS engine embedded in Adobe applications\n // that causes it, under certain circumstances, to provide the same value for\n // `object` and `other`. See https://github.com/jashkenas/underscore/pull/1247\n // for more details.\n //\n // This also ensures a stable sort in V8 and other engines.\n // See https://bugs.chromium.org/p/v8/issues/detail?id=90 for more details.\n return object.index - other.index;\n }\n\n /**\n * Creates an array that is the composition of partially applied arguments,\n * placeholders, and provided arguments into a single array of arguments.\n *\n * @private\n * @param {Array} args The provided arguments.\n * @param {Array} partials The arguments to prepend to those provided.\n * @param {Array} holders The `partials` placeholder indexes.\n * @params {boolean} [isCurried] Specify composing for a curried function.\n * @returns {Array} Returns the new array of composed arguments.\n */\n function composeArgs(args, partials, holders, isCurried) {\n var argsIndex = -1,\n argsLength = args.length,\n holdersLength = holders.length,\n leftIndex = -1,\n leftLength = partials.length,\n rangeLength = nativeMax(argsLength - holdersLength, 0),\n result = Array(leftLength + rangeLength),\n isUncurried = !isCurried;\n\n while (++leftIndex < leftLength) {\n result[leftIndex] = partials[leftIndex];\n }\n while (++argsIndex < holdersLength) {\n if (isUncurried || argsIndex < argsLength) {\n result[holders[argsIndex]] = args[argsIndex];\n }\n }\n while (rangeLength--) {\n result[leftIndex++] = args[argsIndex++];\n }\n return result;\n }\n\n /**\n * This function is like `composeArgs` except that the arguments composition\n * is tailored for `_.partialRight`.\n *\n * @private\n * @param {Array} args The provided arguments.\n * @param {Array} partials The arguments to append to those provided.\n * @param {Array} holders The `partials` placeholder indexes.\n * @params {boolean} [isCurried] Specify composing for a curried function.\n * @returns {Array} Returns the new array of composed arguments.\n */\n function composeArgsRight(args, partials, holders, isCurried) {\n var argsIndex = -1,\n argsLength = args.length,\n holdersIndex = -1,\n holdersLength = holders.length,\n rightIndex = -1,\n rightLength = partials.length,\n rangeLength = nativeMax(argsLength - holdersLength, 0),\n result = Array(rangeLength + rightLength),\n isUncurried = !isCurried;\n\n while (++argsIndex < rangeLength) {\n result[argsIndex] = args[argsIndex];\n }\n var offset = argsIndex;\n while (++rightIndex < rightLength) {\n result[offset + rightIndex] = partials[rightIndex];\n }\n while (++holdersIndex < holdersLength) {\n if (isUncurried || argsIndex < argsLength) {\n result[offset + holders[holdersIndex]] = args[argsIndex++];\n }\n }\n return result;\n }\n\n /**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\n function copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n }\n\n /**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\n function copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n }\n\n /**\n * Copies own symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\n function copySymbols(source, object) {\n return copyObject(source, getSymbols(source), object);\n }\n\n /**\n * Copies own and inherited symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\n function copySymbolsIn(source, object) {\n return copyObject(source, getSymbolsIn(source), object);\n }\n\n /**\n * Creates a function like `_.groupBy`.\n *\n * @private\n * @param {Function} setter The function to set accumulator values.\n * @param {Function} [initializer] The accumulator object initializer.\n * @returns {Function} Returns the new aggregator function.\n */\n function createAggregator(setter, initializer) {\n return function(collection, iteratee) {\n var func = isArray(collection) ? arrayAggregator : baseAggregator,\n accumulator = initializer ? initializer() : {};\n\n return func(collection, setter, getIteratee(iteratee, 2), accumulator);\n };\n }\n\n /**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\n function createAssigner(assigner) {\n return baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n }\n\n /**\n * Creates a `baseEach` or `baseEachRight` function.\n *\n * @private\n * @param {Function} eachFunc The function to iterate over a collection.\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\n function createBaseEach(eachFunc, fromRight) {\n return function(collection, iteratee) {\n if (collection == null) {\n return collection;\n }\n if (!isArrayLike(collection)) {\n return eachFunc(collection, iteratee);\n }\n var length = collection.length,\n index = fromRight ? length : -1,\n iterable = Object(collection);\n\n while ((fromRight ? index-- : ++index < length)) {\n if (iteratee(iterable[index], index, iterable) === false) {\n break;\n }\n }\n return collection;\n };\n }\n\n /**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\n function createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n }\n\n /**\n * Creates a function that wraps `func` to invoke it with the optional `this`\n * binding of `thisArg`.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {*} [thisArg] The `this` binding of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createBind(func, bitmask, thisArg) {\n var isBind = bitmask & WRAP_BIND_FLAG,\n Ctor = createCtor(func);\n\n function wrapper() {\n var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n return fn.apply(isBind ? thisArg : this, arguments);\n }\n return wrapper;\n }\n\n /**\n * Creates a function like `_.lowerFirst`.\n *\n * @private\n * @param {string} methodName The name of the `String` case method to use.\n * @returns {Function} Returns the new case function.\n */\n function createCaseFirst(methodName) {\n return function(string) {\n string = toString(string);\n\n var strSymbols = hasUnicode(string)\n ? stringToArray(string)\n : undefined;\n\n var chr = strSymbols\n ? strSymbols[0]\n : string.charAt(0);\n\n var trailing = strSymbols\n ? castSlice(strSymbols, 1).join('')\n : string.slice(1);\n\n return chr[methodName]() + trailing;\n };\n }\n\n /**\n * Creates a function like `_.camelCase`.\n *\n * @private\n * @param {Function} callback The function to combine each word.\n * @returns {Function} Returns the new compounder function.\n */\n function createCompounder(callback) {\n return function(string) {\n return arrayReduce(words(deburr(string).replace(reApos, '')), callback, '');\n };\n }\n\n /**\n * Creates a function that produces an instance of `Ctor` regardless of\n * whether it was invoked as part of a `new` expression or by `call` or `apply`.\n *\n * @private\n * @param {Function} Ctor The constructor to wrap.\n * @returns {Function} Returns the new wrapped function.\n */\n function createCtor(Ctor) {\n return function() {\n // Use a `switch` statement to work with class constructors. See\n // http://ecma-international.org/ecma-262/7.0/#sec-ecmascript-function-objects-call-thisargument-argumentslist\n // for more details.\n var args = arguments;\n switch (args.length) {\n case 0: return new Ctor;\n case 1: return new Ctor(args[0]);\n case 2: return new Ctor(args[0], args[1]);\n case 3: return new Ctor(args[0], args[1], args[2]);\n case 4: return new Ctor(args[0], args[1], args[2], args[3]);\n case 5: return new Ctor(args[0], args[1], args[2], args[3], args[4]);\n case 6: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5]);\n case 7: return new Ctor(args[0], args[1], args[2], args[3], args[4], args[5], args[6]);\n }\n var thisBinding = baseCreate(Ctor.prototype),\n result = Ctor.apply(thisBinding, args);\n\n // Mimic the constructor's `return` behavior.\n // See https://es5.github.io/#x13.2.2 for more details.\n return isObject(result) ? result : thisBinding;\n };\n }\n\n /**\n * Creates a function that wraps `func` to enable currying.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {number} arity The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createCurry(func, bitmask, arity) {\n var Ctor = createCtor(func);\n\n function wrapper() {\n var length = arguments.length,\n args = Array(length),\n index = length,\n placeholder = getHolder(wrapper);\n\n while (index--) {\n args[index] = arguments[index];\n }\n var holders = (length < 3 && args[0] !== placeholder && args[length - 1] !== placeholder)\n ? []\n : replaceHolders(args, placeholder);\n\n length -= holders.length;\n if (length < arity) {\n return createRecurry(\n func, bitmask, createHybrid, wrapper.placeholder, undefined,\n args, holders, undefined, undefined, arity - length);\n }\n var fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n return apply(fn, this, args);\n }\n return wrapper;\n }\n\n /**\n * Creates a `_.find` or `_.findLast` function.\n *\n * @private\n * @param {Function} findIndexFunc The function to find the collection index.\n * @returns {Function} Returns the new find function.\n */\n function createFind(findIndexFunc) {\n return function(collection, predicate, fromIndex) {\n var iterable = Object(collection);\n if (!isArrayLike(collection)) {\n var iteratee = getIteratee(predicate, 3);\n collection = keys(collection);\n predicate = function(key) { return iteratee(iterable[key], key, iterable); };\n }\n var index = findIndexFunc(collection, predicate, fromIndex);\n return index > -1 ? iterable[iteratee ? collection[index] : index] : undefined;\n };\n }\n\n /**\n * Creates a `_.flow` or `_.flowRight` function.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new flow function.\n */\n function createFlow(fromRight) {\n return flatRest(function(funcs) {\n var length = funcs.length,\n index = length,\n prereq = LodashWrapper.prototype.thru;\n\n if (fromRight) {\n funcs.reverse();\n }\n while (index--) {\n var func = funcs[index];\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n if (prereq && !wrapper && getFuncName(func) == 'wrapper') {\n var wrapper = new LodashWrapper([], true);\n }\n }\n index = wrapper ? index : length;\n while (++index < length) {\n func = funcs[index];\n\n var funcName = getFuncName(func),\n data = funcName == 'wrapper' ? getData(func) : undefined;\n\n if (data && isLaziable(data[0]) &&\n data[1] == (WRAP_ARY_FLAG | WRAP_CURRY_FLAG | WRAP_PARTIAL_FLAG | WRAP_REARG_FLAG) &&\n !data[4].length && data[9] == 1\n ) {\n wrapper = wrapper[getFuncName(data[0])].apply(wrapper, data[3]);\n } else {\n wrapper = (func.length == 1 && isLaziable(func))\n ? wrapper[funcName]()\n : wrapper.thru(func);\n }\n }\n return function() {\n var args = arguments,\n value = args[0];\n\n if (wrapper && args.length == 1 && isArray(value)) {\n return wrapper.plant(value).value();\n }\n var index = 0,\n result = length ? funcs[index].apply(this, args) : value;\n\n while (++index < length) {\n result = funcs[index].call(this, result);\n }\n return result;\n };\n });\n }\n\n /**\n * Creates a function that wraps `func` to invoke it with optional `this`\n * binding of `thisArg`, partial application, and currying.\n *\n * @private\n * @param {Function|string} func The function or method name to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to prepend to those provided to\n * the new function.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [partialsRight] The arguments to append to those provided\n * to the new function.\n * @param {Array} [holdersRight] The `partialsRight` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createHybrid(func, bitmask, thisArg, partials, holders, partialsRight, holdersRight, argPos, ary, arity) {\n var isAry = bitmask & WRAP_ARY_FLAG,\n isBind = bitmask & WRAP_BIND_FLAG,\n isBindKey = bitmask & WRAP_BIND_KEY_FLAG,\n isCurried = bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG),\n isFlip = bitmask & WRAP_FLIP_FLAG,\n Ctor = isBindKey ? undefined : createCtor(func);\n\n function wrapper() {\n var length = arguments.length,\n args = Array(length),\n index = length;\n\n while (index--) {\n args[index] = arguments[index];\n }\n if (isCurried) {\n var placeholder = getHolder(wrapper),\n holdersCount = countHolders(args, placeholder);\n }\n if (partials) {\n args = composeArgs(args, partials, holders, isCurried);\n }\n if (partialsRight) {\n args = composeArgsRight(args, partialsRight, holdersRight, isCurried);\n }\n length -= holdersCount;\n if (isCurried && length < arity) {\n var newHolders = replaceHolders(args, placeholder);\n return createRecurry(\n func, bitmask, createHybrid, wrapper.placeholder, thisArg,\n args, newHolders, argPos, ary, arity - length\n );\n }\n var thisBinding = isBind ? thisArg : this,\n fn = isBindKey ? thisBinding[func] : func;\n\n length = args.length;\n if (argPos) {\n args = reorder(args, argPos);\n } else if (isFlip && length > 1) {\n args.reverse();\n }\n if (isAry && ary < length) {\n args.length = ary;\n }\n if (this && this !== root && this instanceof wrapper) {\n fn = Ctor || createCtor(fn);\n }\n return fn.apply(thisBinding, args);\n }\n return wrapper;\n }\n\n /**\n * Creates a function like `_.invertBy`.\n *\n * @private\n * @param {Function} setter The function to set accumulator values.\n * @param {Function} toIteratee The function to resolve iteratees.\n * @returns {Function} Returns the new inverter function.\n */\n function createInverter(setter, toIteratee) {\n return function(object, iteratee) {\n return baseInverter(object, setter, toIteratee(iteratee), {});\n };\n }\n\n /**\n * Creates a function that performs a mathematical operation on two values.\n *\n * @private\n * @param {Function} operator The function to perform the operation.\n * @param {number} [defaultValue] The value used for `undefined` arguments.\n * @returns {Function} Returns the new mathematical operation function.\n */\n function createMathOperation(operator, defaultValue) {\n return function(value, other) {\n var result;\n if (value === undefined && other === undefined) {\n return defaultValue;\n }\n if (value !== undefined) {\n result = value;\n }\n if (other !== undefined) {\n if (result === undefined) {\n return other;\n }\n if (typeof value == 'string' || typeof other == 'string') {\n value = baseToString(value);\n other = baseToString(other);\n } else {\n value = baseToNumber(value);\n other = baseToNumber(other);\n }\n result = operator(value, other);\n }\n return result;\n };\n }\n\n /**\n * Creates a function like `_.over`.\n *\n * @private\n * @param {Function} arrayFunc The function to iterate over iteratees.\n * @returns {Function} Returns the new over function.\n */\n function createOver(arrayFunc) {\n return flatRest(function(iteratees) {\n iteratees = arrayMap(iteratees, baseUnary(getIteratee()));\n return baseRest(function(args) {\n var thisArg = this;\n return arrayFunc(iteratees, function(iteratee) {\n return apply(iteratee, thisArg, args);\n });\n });\n });\n }\n\n /**\n * Creates the padding for `string` based on `length`. The `chars` string\n * is truncated if the number of characters exceeds `length`.\n *\n * @private\n * @param {number} length The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padding for `string`.\n */\n function createPadding(length, chars) {\n chars = chars === undefined ? ' ' : baseToString(chars);\n\n var charsLength = chars.length;\n if (charsLength < 2) {\n return charsLength ? baseRepeat(chars, length) : chars;\n }\n var result = baseRepeat(chars, nativeCeil(length / stringSize(chars)));\n return hasUnicode(chars)\n ? castSlice(stringToArray(result), 0, length).join('')\n : result.slice(0, length);\n }\n\n /**\n * Creates a function that wraps `func` to invoke it with the `this` binding\n * of `thisArg` and `partials` prepended to the arguments it receives.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} partials The arguments to prepend to those provided to\n * the new function.\n * @returns {Function} Returns the new wrapped function.\n */\n function createPartial(func, bitmask, thisArg, partials) {\n var isBind = bitmask & WRAP_BIND_FLAG,\n Ctor = createCtor(func);\n\n function wrapper() {\n var argsIndex = -1,\n argsLength = arguments.length,\n leftIndex = -1,\n leftLength = partials.length,\n args = Array(leftLength + argsLength),\n fn = (this && this !== root && this instanceof wrapper) ? Ctor : func;\n\n while (++leftIndex < leftLength) {\n args[leftIndex] = partials[leftIndex];\n }\n while (argsLength--) {\n args[leftIndex++] = arguments[++argsIndex];\n }\n return apply(fn, isBind ? thisArg : this, args);\n }\n return wrapper;\n }\n\n /**\n * Creates a `_.range` or `_.rangeRight` function.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new range function.\n */\n function createRange(fromRight) {\n return function(start, end, step) {\n if (step && typeof step != 'number' && isIterateeCall(start, end, step)) {\n end = step = undefined;\n }\n // Ensure the sign of `-0` is preserved.\n start = toFinite(start);\n if (end === undefined) {\n end = start;\n start = 0;\n } else {\n end = toFinite(end);\n }\n step = step === undefined ? (start < end ? 1 : -1) : toFinite(step);\n return baseRange(start, end, step, fromRight);\n };\n }\n\n /**\n * Creates a function that performs a relational operation on two values.\n *\n * @private\n * @param {Function} operator The function to perform the operation.\n * @returns {Function} Returns the new relational operation function.\n */\n function createRelationalOperation(operator) {\n return function(value, other) {\n if (!(typeof value == 'string' && typeof other == 'string')) {\n value = toNumber(value);\n other = toNumber(other);\n }\n return operator(value, other);\n };\n }\n\n /**\n * Creates a function that wraps `func` to continue currying.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @param {Function} wrapFunc The function to create the `func` wrapper.\n * @param {*} placeholder The placeholder value.\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to prepend to those provided to\n * the new function.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createRecurry(func, bitmask, wrapFunc, placeholder, thisArg, partials, holders, argPos, ary, arity) {\n var isCurry = bitmask & WRAP_CURRY_FLAG,\n newHolders = isCurry ? holders : undefined,\n newHoldersRight = isCurry ? undefined : holders,\n newPartials = isCurry ? partials : undefined,\n newPartialsRight = isCurry ? undefined : partials;\n\n bitmask |= (isCurry ? WRAP_PARTIAL_FLAG : WRAP_PARTIAL_RIGHT_FLAG);\n bitmask &= ~(isCurry ? WRAP_PARTIAL_RIGHT_FLAG : WRAP_PARTIAL_FLAG);\n\n if (!(bitmask & WRAP_CURRY_BOUND_FLAG)) {\n bitmask &= ~(WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG);\n }\n var newData = [\n func, bitmask, thisArg, newPartials, newHolders, newPartialsRight,\n newHoldersRight, argPos, ary, arity\n ];\n\n var result = wrapFunc.apply(undefined, newData);\n if (isLaziable(func)) {\n setData(result, newData);\n }\n result.placeholder = placeholder;\n return setWrapToString(result, func, bitmask);\n }\n\n /**\n * Creates a function like `_.round`.\n *\n * @private\n * @param {string} methodName The name of the `Math` method to use when rounding.\n * @returns {Function} Returns the new round function.\n */\n function createRound(methodName) {\n var func = Math[methodName];\n return function(number, precision) {\n number = toNumber(number);\n precision = precision == null ? 0 : nativeMin(toInteger(precision), 292);\n if (precision && nativeIsFinite(number)) {\n // Shift with exponential notation to avoid floating-point issues.\n // See [MDN](https://mdn.io/round#Examples) for more details.\n var pair = (toString(number) + 'e').split('e'),\n value = func(pair[0] + 'e' + (+pair[1] + precision));\n\n pair = (toString(value) + 'e').split('e');\n return +(pair[0] + 'e' + (+pair[1] - precision));\n }\n return func(number);\n };\n }\n\n /**\n * Creates a set object of `values`.\n *\n * @private\n * @param {Array} values The values to add to the set.\n * @returns {Object} Returns the new set.\n */\n var createSet = !(Set && (1 / setToArray(new Set([,-0]))[1]) == INFINITY) ? noop : function(values) {\n return new Set(values);\n };\n\n /**\n * Creates a `_.toPairs` or `_.toPairsIn` function.\n *\n * @private\n * @param {Function} keysFunc The function to get the keys of a given object.\n * @returns {Function} Returns the new pairs function.\n */\n function createToPairs(keysFunc) {\n return function(object) {\n var tag = getTag(object);\n if (tag == mapTag) {\n return mapToArray(object);\n }\n if (tag == setTag) {\n return setToPairs(object);\n }\n return baseToPairs(object, keysFunc(object));\n };\n }\n\n /**\n * Creates a function that either curries or invokes `func` with optional\n * `this` binding and partially applied arguments.\n *\n * @private\n * @param {Function|string} func The function or method name to wrap.\n * @param {number} bitmask The bitmask flags.\n * 1 - `_.bind`\n * 2 - `_.bindKey`\n * 4 - `_.curry` or `_.curryRight` of a bound function\n * 8 - `_.curry`\n * 16 - `_.curryRight`\n * 32 - `_.partial`\n * 64 - `_.partialRight`\n * 128 - `_.rearg`\n * 256 - `_.ary`\n * 512 - `_.flip`\n * @param {*} [thisArg] The `this` binding of `func`.\n * @param {Array} [partials] The arguments to be partially applied.\n * @param {Array} [holders] The `partials` placeholder indexes.\n * @param {Array} [argPos] The argument positions of the new function.\n * @param {number} [ary] The arity cap of `func`.\n * @param {number} [arity] The arity of `func`.\n * @returns {Function} Returns the new wrapped function.\n */\n function createWrap(func, bitmask, thisArg, partials, holders, argPos, ary, arity) {\n var isBindKey = bitmask & WRAP_BIND_KEY_FLAG;\n if (!isBindKey && typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var length = partials ? partials.length : 0;\n if (!length) {\n bitmask &= ~(WRAP_PARTIAL_FLAG | WRAP_PARTIAL_RIGHT_FLAG);\n partials = holders = undefined;\n }\n ary = ary === undefined ? ary : nativeMax(toInteger(ary), 0);\n arity = arity === undefined ? arity : toInteger(arity);\n length -= holders ? holders.length : 0;\n\n if (bitmask & WRAP_PARTIAL_RIGHT_FLAG) {\n var partialsRight = partials,\n holdersRight = holders;\n\n partials = holders = undefined;\n }\n var data = isBindKey ? undefined : getData(func);\n\n var newData = [\n func, bitmask, thisArg, partials, holders, partialsRight, holdersRight,\n argPos, ary, arity\n ];\n\n if (data) {\n mergeData(newData, data);\n }\n func = newData[0];\n bitmask = newData[1];\n thisArg = newData[2];\n partials = newData[3];\n holders = newData[4];\n arity = newData[9] = newData[9] === undefined\n ? (isBindKey ? 0 : func.length)\n : nativeMax(newData[9] - length, 0);\n\n if (!arity && bitmask & (WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG)) {\n bitmask &= ~(WRAP_CURRY_FLAG | WRAP_CURRY_RIGHT_FLAG);\n }\n if (!bitmask || bitmask == WRAP_BIND_FLAG) {\n var result = createBind(func, bitmask, thisArg);\n } else if (bitmask == WRAP_CURRY_FLAG || bitmask == WRAP_CURRY_RIGHT_FLAG) {\n result = createCurry(func, bitmask, arity);\n } else if ((bitmask == WRAP_PARTIAL_FLAG || bitmask == (WRAP_BIND_FLAG | WRAP_PARTIAL_FLAG)) && !holders.length) {\n result = createPartial(func, bitmask, thisArg, partials);\n } else {\n result = createHybrid.apply(undefined, newData);\n }\n var setter = data ? baseSetData : setData;\n return setWrapToString(setter(result, newData), func, bitmask);\n }\n\n /**\n * Used by `_.defaults` to customize its `_.assignIn` use to assign properties\n * of source objects to the destination object for all destination properties\n * that resolve to `undefined`.\n *\n * @private\n * @param {*} objValue The destination value.\n * @param {*} srcValue The source value.\n * @param {string} key The key of the property to assign.\n * @param {Object} object The parent object of `objValue`.\n * @returns {*} Returns the value to assign.\n */\n function customDefaultsAssignIn(objValue, srcValue, key, object) {\n if (objValue === undefined ||\n (eq(objValue, objectProto[key]) && !hasOwnProperty.call(object, key))) {\n return srcValue;\n }\n return objValue;\n }\n\n /**\n * Used by `_.defaultsDeep` to customize its `_.merge` use to merge source\n * objects into destination objects that are passed thru.\n *\n * @private\n * @param {*} objValue The destination value.\n * @param {*} srcValue The source value.\n * @param {string} key The key of the property to merge.\n * @param {Object} object The parent object of `objValue`.\n * @param {Object} source The parent object of `srcValue`.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n * @returns {*} Returns the value to assign.\n */\n function customDefaultsMerge(objValue, srcValue, key, object, source, stack) {\n if (isObject(objValue) && isObject(srcValue)) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, objValue);\n baseMerge(objValue, srcValue, undefined, customDefaultsMerge, stack);\n stack['delete'](srcValue);\n }\n return objValue;\n }\n\n /**\n * Used by `_.omit` to customize its `_.cloneDeep` use to only clone plain\n * objects.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {string} key The key of the property to inspect.\n * @returns {*} Returns the uncloned value or `undefined` to defer cloning to `_.cloneDeep`.\n */\n function customOmitClone(value) {\n return isPlainObject(value) ? undefined : value;\n }\n\n /**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\n function equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Check that cyclic values are equal.\n var arrStacked = stack.get(array);\n var othStacked = stack.get(other);\n if (arrStacked && othStacked) {\n return arrStacked == other && othStacked == array;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!arraySome(other, function(othValue, othIndex) {\n if (!cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n }\n\n /**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\n function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n }\n\n /**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\n function equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n objProps = getAllKeys(object),\n objLength = objProps.length,\n othProps = getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n return false;\n }\n }\n // Check that cyclic values are equal.\n var objStacked = stack.get(object);\n var othStacked = stack.get(other);\n if (objStacked && othStacked) {\n return objStacked == other && othStacked == object;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n }\n\n /**\n * A specialized version of `baseRest` which flattens the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @returns {Function} Returns the new function.\n */\n function flatRest(func) {\n return setToString(overRest(func, undefined, flatten), func + '');\n }\n\n /**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\n function getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n }\n\n /**\n * Creates an array of own and inherited enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\n function getAllKeysIn(object) {\n return baseGetAllKeys(object, keysIn, getSymbolsIn);\n }\n\n /**\n * Gets metadata for `func`.\n *\n * @private\n * @param {Function} func The function to query.\n * @returns {*} Returns the metadata for `func`.\n */\n var getData = !metaMap ? noop : function(func) {\n return metaMap.get(func);\n };\n\n /**\n * Gets the name of `func`.\n *\n * @private\n * @param {Function} func The function to query.\n * @returns {string} Returns the function name.\n */\n function getFuncName(func) {\n var result = (func.name + ''),\n array = realNames[result],\n length = hasOwnProperty.call(realNames, result) ? array.length : 0;\n\n while (length--) {\n var data = array[length],\n otherFunc = data.func;\n if (otherFunc == null || otherFunc == func) {\n return data.name;\n }\n }\n return result;\n }\n\n /**\n * Gets the argument placeholder value for `func`.\n *\n * @private\n * @param {Function} func The function to inspect.\n * @returns {*} Returns the placeholder value.\n */\n function getHolder(func) {\n var object = hasOwnProperty.call(lodash, 'placeholder') ? lodash : func;\n return object.placeholder;\n }\n\n /**\n * Gets the appropriate \"iteratee\" function. If `_.iteratee` is customized,\n * this function returns the custom method, otherwise it returns `baseIteratee`.\n * If arguments are provided, the chosen function is invoked with them and\n * its result is returned.\n *\n * @private\n * @param {*} [value] The value to convert to an iteratee.\n * @param {number} [arity] The arity of the created iteratee.\n * @returns {Function} Returns the chosen function or its result.\n */\n function getIteratee() {\n var result = lodash.iteratee || iteratee;\n result = result === iteratee ? baseIteratee : result;\n return arguments.length ? result(arguments[0], arguments[1]) : result;\n }\n\n /**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\n function getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n }\n\n /**\n * Gets the property names, values, and compare flags of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the match data of `object`.\n */\n function getMatchData(object) {\n var result = keys(object),\n length = result.length;\n\n while (length--) {\n var key = result[length],\n value = object[key];\n\n result[length] = [key, value, isStrictComparable(value)];\n }\n return result;\n }\n\n /**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\n function getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n }\n\n /**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\n function getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n }\n\n /**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\n var getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n };\n\n /**\n * Creates an array of the own and inherited enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\n var getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) {\n var result = [];\n while (object) {\n arrayPush(result, getSymbols(object));\n object = getPrototype(object);\n }\n return result;\n };\n\n /**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\n var getTag = baseGetTag;\n\n // Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\n if ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n }\n\n /**\n * Gets the view, applying any `transforms` to the `start` and `end` positions.\n *\n * @private\n * @param {number} start The start of the view.\n * @param {number} end The end of the view.\n * @param {Array} transforms The transformations to apply to the view.\n * @returns {Object} Returns an object containing the `start` and `end`\n * positions of the view.\n */\n function getView(start, end, transforms) {\n var index = -1,\n length = transforms.length;\n\n while (++index < length) {\n var data = transforms[index],\n size = data.size;\n\n switch (data.type) {\n case 'drop': start += size; break;\n case 'dropRight': end -= size; break;\n case 'take': end = nativeMin(end, start + size); break;\n case 'takeRight': start = nativeMax(start, end - size); break;\n }\n }\n return { 'start': start, 'end': end };\n }\n\n /**\n * Extracts wrapper details from the `source` body comment.\n *\n * @private\n * @param {string} source The source to inspect.\n * @returns {Array} Returns the wrapper details.\n */\n function getWrapDetails(source) {\n var match = source.match(reWrapDetails);\n return match ? match[1].split(reSplitDetails) : [];\n }\n\n /**\n * Checks if `path` exists on `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @param {Function} hasFunc The function to check properties.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n */\n function hasPath(object, path, hasFunc) {\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n result = false;\n\n while (++index < length) {\n var key = toKey(path[index]);\n if (!(result = object != null && hasFunc(object, key))) {\n break;\n }\n object = object[key];\n }\n if (result || ++index != length) {\n return result;\n }\n length = object == null ? 0 : object.length;\n return !!length && isLength(length) && isIndex(key, length) &&\n (isArray(object) || isArguments(object));\n }\n\n /**\n * Initializes an array clone.\n *\n * @private\n * @param {Array} array The array to clone.\n * @returns {Array} Returns the initialized clone.\n */\n function initCloneArray(array) {\n var length = array.length,\n result = new array.constructor(length);\n\n // Add properties assigned by `RegExp#exec`.\n if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {\n result.index = array.index;\n result.input = array.input;\n }\n return result;\n }\n\n /**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\n function initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n }\n\n /**\n * Initializes an object clone based on its `toStringTag`.\n *\n * **Note:** This function only supports cloning values with tags of\n * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`.\n *\n * @private\n * @param {Object} object The object to clone.\n * @param {string} tag The `toStringTag` of the object to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the initialized clone.\n */\n function initCloneByTag(object, tag, isDeep) {\n var Ctor = object.constructor;\n switch (tag) {\n case arrayBufferTag:\n return cloneArrayBuffer(object);\n\n case boolTag:\n case dateTag:\n return new Ctor(+object);\n\n case dataViewTag:\n return cloneDataView(object, isDeep);\n\n case float32Tag: case float64Tag:\n case int8Tag: case int16Tag: case int32Tag:\n case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:\n return cloneTypedArray(object, isDeep);\n\n case mapTag:\n return new Ctor;\n\n case numberTag:\n case stringTag:\n return new Ctor(object);\n\n case regexpTag:\n return cloneRegExp(object);\n\n case setTag:\n return new Ctor;\n\n case symbolTag:\n return cloneSymbol(object);\n }\n }\n\n /**\n * Inserts wrapper `details` in a comment at the top of the `source` body.\n *\n * @private\n * @param {string} source The source to modify.\n * @returns {Array} details The details to insert.\n * @returns {string} Returns the modified source.\n */\n function insertWrapDetails(source, details) {\n var length = details.length;\n if (!length) {\n return source;\n }\n var lastIndex = length - 1;\n details[lastIndex] = (length > 1 ? '& ' : '') + details[lastIndex];\n details = details.join(length > 2 ? ', ' : ' ');\n return source.replace(reWrapComment, '{\\n/* [wrapped with ' + details + '] */\\n');\n }\n\n /**\n * Checks if `value` is a flattenable `arguments` object or array.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is flattenable, else `false`.\n */\n function isFlattenable(value) {\n return isArray(value) || isArguments(value) ||\n !!(spreadableSymbol && value && value[spreadableSymbol]);\n }\n\n /**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\n function isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n }\n\n /**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\n function isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n }\n\n /**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\n function isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n }\n\n /**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\n function isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n }\n\n /**\n * Checks if `func` has a lazy counterpart.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` has a lazy counterpart,\n * else `false`.\n */\n function isLaziable(func) {\n var funcName = getFuncName(func),\n other = lodash[funcName];\n\n if (typeof other != 'function' || !(funcName in LazyWrapper.prototype)) {\n return false;\n }\n if (func === other) {\n return true;\n }\n var data = getData(other);\n return !!data && func === data[0];\n }\n\n /**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\n function isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n }\n\n /**\n * Checks if `func` is capable of being masked.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `func` is maskable, else `false`.\n */\n var isMaskable = coreJsData ? isFunction : stubFalse;\n\n /**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\n function isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n }\n\n /**\n * Checks if `value` is suitable for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` if suitable for strict\n * equality comparisons, else `false`.\n */\n function isStrictComparable(value) {\n return value === value && !isObject(value);\n }\n\n /**\n * A specialized version of `matchesProperty` for source values suitable\n * for strict equality comparisons, i.e. `===`.\n *\n * @private\n * @param {string} key The key of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n */\n function matchesStrictComparable(key, srcValue) {\n return function(object) {\n if (object == null) {\n return false;\n }\n return object[key] === srcValue &&\n (srcValue !== undefined || (key in Object(object)));\n };\n }\n\n /**\n * A specialized version of `_.memoize` which clears the memoized function's\n * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n *\n * @private\n * @param {Function} func The function to have its output memoized.\n * @returns {Function} Returns the new memoized function.\n */\n function memoizeCapped(func) {\n var result = memoize(func, function(key) {\n if (cache.size === MAX_MEMOIZE_SIZE) {\n cache.clear();\n }\n return key;\n });\n\n var cache = result.cache;\n return result;\n }\n\n /**\n * Merges the function metadata of `source` into `data`.\n *\n * Merging metadata reduces the number of wrappers used to invoke a function.\n * This is possible because methods like `_.bind`, `_.curry`, and `_.partial`\n * may be applied regardless of execution order. Methods like `_.ary` and\n * `_.rearg` modify function arguments, making the order in which they are\n * executed important, preventing the merging of metadata. However, we make\n * an exception for a safe combined case where curried functions have `_.ary`\n * and or `_.rearg` applied.\n *\n * @private\n * @param {Array} data The destination metadata.\n * @param {Array} source The source metadata.\n * @returns {Array} Returns `data`.\n */\n function mergeData(data, source) {\n var bitmask = data[1],\n srcBitmask = source[1],\n newBitmask = bitmask | srcBitmask,\n isCommon = newBitmask < (WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG | WRAP_ARY_FLAG);\n\n var isCombo =\n ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_CURRY_FLAG)) ||\n ((srcBitmask == WRAP_ARY_FLAG) && (bitmask == WRAP_REARG_FLAG) && (data[7].length <= source[8])) ||\n ((srcBitmask == (WRAP_ARY_FLAG | WRAP_REARG_FLAG)) && (source[7].length <= source[8]) && (bitmask == WRAP_CURRY_FLAG));\n\n // Exit early if metadata can't be merged.\n if (!(isCommon || isCombo)) {\n return data;\n }\n // Use source `thisArg` if available.\n if (srcBitmask & WRAP_BIND_FLAG) {\n data[2] = source[2];\n // Set when currying a bound function.\n newBitmask |= bitmask & WRAP_BIND_FLAG ? 0 : WRAP_CURRY_BOUND_FLAG;\n }\n // Compose partial arguments.\n var value = source[3];\n if (value) {\n var partials = data[3];\n data[3] = partials ? composeArgs(partials, value, source[4]) : value;\n data[4] = partials ? replaceHolders(data[3], PLACEHOLDER) : source[4];\n }\n // Compose partial right arguments.\n value = source[5];\n if (value) {\n partials = data[5];\n data[5] = partials ? composeArgsRight(partials, value, source[6]) : value;\n data[6] = partials ? replaceHolders(data[5], PLACEHOLDER) : source[6];\n }\n // Use source `argPos` if available.\n value = source[7];\n if (value) {\n data[7] = value;\n }\n // Use source `ary` if it's smaller.\n if (srcBitmask & WRAP_ARY_FLAG) {\n data[8] = data[8] == null ? source[8] : nativeMin(data[8], source[8]);\n }\n // Use source `arity` if one is not provided.\n if (data[9] == null) {\n data[9] = source[9];\n }\n // Use source `func` and merge bitmasks.\n data[0] = source[0];\n data[1] = newBitmask;\n\n return data;\n }\n\n /**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\n function nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n }\n\n /**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\n function objectToString(value) {\n return nativeObjectToString.call(value);\n }\n\n /**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\n function overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n }\n\n /**\n * Gets the parent value at `path` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array} path The path to get the parent value of.\n * @returns {*} Returns the parent value.\n */\n function parent(object, path) {\n return path.length < 2 ? object : baseGet(object, baseSlice(path, 0, -1));\n }\n\n /**\n * Reorder `array` according to the specified indexes where the element at\n * the first index is assigned as the first element, the element at\n * the second index is assigned as the second element, and so on.\n *\n * @private\n * @param {Array} array The array to reorder.\n * @param {Array} indexes The arranged array indexes.\n * @returns {Array} Returns `array`.\n */\n function reorder(array, indexes) {\n var arrLength = array.length,\n length = nativeMin(indexes.length, arrLength),\n oldArray = copyArray(array);\n\n while (length--) {\n var index = indexes[length];\n array[length] = isIndex(index, arrLength) ? oldArray[index] : undefined;\n }\n return array;\n }\n\n /**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\n function safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n }\n\n /**\n * Sets metadata for `func`.\n *\n * **Note:** If this function becomes hot, i.e. is invoked a lot in a short\n * period of time, it will trip its breaker and transition to an identity\n * function to avoid garbage collection pauses in V8. See\n * [V8 issue 2070](https://bugs.chromium.org/p/v8/issues/detail?id=2070)\n * for more details.\n *\n * @private\n * @param {Function} func The function to associate metadata with.\n * @param {*} data The metadata.\n * @returns {Function} Returns `func`.\n */\n var setData = shortOut(baseSetData);\n\n /**\n * A simple wrapper around the global [`setTimeout`](https://mdn.io/setTimeout).\n *\n * @private\n * @param {Function} func The function to delay.\n * @param {number} wait The number of milliseconds to delay invocation.\n * @returns {number|Object} Returns the timer id or timeout object.\n */\n var setTimeout = ctxSetTimeout || function(func, wait) {\n return root.setTimeout(func, wait);\n };\n\n /**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\n var setToString = shortOut(baseSetToString);\n\n /**\n * Sets the `toString` method of `wrapper` to mimic the source of `reference`\n * with wrapper details in a comment at the top of the source body.\n *\n * @private\n * @param {Function} wrapper The function to modify.\n * @param {Function} reference The reference function.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @returns {Function} Returns `wrapper`.\n */\n function setWrapToString(wrapper, reference, bitmask) {\n var source = (reference + '');\n return setToString(wrapper, insertWrapDetails(source, updateWrapDetails(getWrapDetails(source), bitmask)));\n }\n\n /**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\n function shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n }\n\n /**\n * A specialized version of `_.shuffle` which mutates and sets the size of `array`.\n *\n * @private\n * @param {Array} array The array to shuffle.\n * @param {number} [size=array.length] The size of `array`.\n * @returns {Array} Returns `array`.\n */\n function shuffleSelf(array, size) {\n var index = -1,\n length = array.length,\n lastIndex = length - 1;\n\n size = size === undefined ? length : size;\n while (++index < size) {\n var rand = baseRandom(index, lastIndex),\n value = array[rand];\n\n array[rand] = array[index];\n array[index] = value;\n }\n array.length = size;\n return array;\n }\n\n /**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\n var stringToPath = memoizeCapped(function(string) {\n var result = [];\n if (string.charCodeAt(0) === 46 /* . */) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, subString) {\n result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n });\n\n /**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\n function toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n }\n\n /**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\n function toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n }\n\n /**\n * Updates wrapper `details` based on `bitmask` flags.\n *\n * @private\n * @returns {Array} details The details to modify.\n * @param {number} bitmask The bitmask flags. See `createWrap` for more details.\n * @returns {Array} Returns `details`.\n */\n function updateWrapDetails(details, bitmask) {\n arrayEach(wrapFlags, function(pair) {\n var value = '_.' + pair[0];\n if ((bitmask & pair[1]) && !arrayIncludes(details, value)) {\n details.push(value);\n }\n });\n return details.sort();\n }\n\n /**\n * Creates a clone of `wrapper`.\n *\n * @private\n * @param {Object} wrapper The wrapper to clone.\n * @returns {Object} Returns the cloned wrapper.\n */\n function wrapperClone(wrapper) {\n if (wrapper instanceof LazyWrapper) {\n return wrapper.clone();\n }\n var result = new LodashWrapper(wrapper.__wrapped__, wrapper.__chain__);\n result.__actions__ = copyArray(wrapper.__actions__);\n result.__index__ = wrapper.__index__;\n result.__values__ = wrapper.__values__;\n return result;\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an array of elements split into groups the length of `size`.\n * If `array` can't be split evenly, the final chunk will be the remaining\n * elements.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to process.\n * @param {number} [size=1] The length of each chunk\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the new array of chunks.\n * @example\n *\n * _.chunk(['a', 'b', 'c', 'd'], 2);\n * // => [['a', 'b'], ['c', 'd']]\n *\n * _.chunk(['a', 'b', 'c', 'd'], 3);\n * // => [['a', 'b', 'c'], ['d']]\n */\n function chunk(array, size, guard) {\n if ((guard ? isIterateeCall(array, size, guard) : size === undefined)) {\n size = 1;\n } else {\n size = nativeMax(toInteger(size), 0);\n }\n var length = array == null ? 0 : array.length;\n if (!length || size < 1) {\n return [];\n }\n var index = 0,\n resIndex = 0,\n result = Array(nativeCeil(length / size));\n\n while (index < length) {\n result[resIndex++] = baseSlice(array, index, (index += size));\n }\n return result;\n }\n\n /**\n * Creates an array with all falsey values removed. The values `false`, `null`,\n * `0`, `\"\"`, `undefined`, and `NaN` are falsey.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to compact.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.compact([0, 1, false, 2, '', 3]);\n * // => [1, 2, 3]\n */\n function compact(array) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (value) {\n result[resIndex++] = value;\n }\n }\n return result;\n }\n\n /**\n * Creates a new array concatenating `array` with any additional arrays\n * and/or values.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to concatenate.\n * @param {...*} [values] The values to concatenate.\n * @returns {Array} Returns the new concatenated array.\n * @example\n *\n * var array = [1];\n * var other = _.concat(array, 2, [3], [[4]]);\n *\n * console.log(other);\n * // => [1, 2, 3, [4]]\n *\n * console.log(array);\n * // => [1]\n */\n function concat() {\n var length = arguments.length;\n if (!length) {\n return [];\n }\n var args = Array(length - 1),\n array = arguments[0],\n index = length;\n\n while (index--) {\n args[index - 1] = arguments[index];\n }\n return arrayPush(isArray(array) ? copyArray(array) : [array], baseFlatten(args, 1));\n }\n\n /**\n * Creates an array of `array` values not included in the other given arrays\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons. The order and references of result values are\n * determined by the first array.\n *\n * **Note:** Unlike `_.pullAll`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...Array} [values] The values to exclude.\n * @returns {Array} Returns the new array of filtered values.\n * @see _.without, _.xor\n * @example\n *\n * _.difference([2, 1], [2, 3]);\n * // => [1]\n */\n var difference = baseRest(function(array, values) {\n return isArrayLikeObject(array)\n ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true))\n : [];\n });\n\n /**\n * This method is like `_.difference` except that it accepts `iteratee` which\n * is invoked for each element of `array` and `values` to generate the criterion\n * by which they're compared. The order and references of result values are\n * determined by the first array. The iteratee is invoked with one argument:\n * (value).\n *\n * **Note:** Unlike `_.pullAllBy`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...Array} [values] The values to exclude.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.differenceBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n * // => [1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.differenceBy([{ 'x': 2 }, { 'x': 1 }], [{ 'x': 1 }], 'x');\n * // => [{ 'x': 2 }]\n */\n var differenceBy = baseRest(function(array, values) {\n var iteratee = last(values);\n if (isArrayLikeObject(iteratee)) {\n iteratee = undefined;\n }\n return isArrayLikeObject(array)\n ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), getIteratee(iteratee, 2))\n : [];\n });\n\n /**\n * This method is like `_.difference` except that it accepts `comparator`\n * which is invoked to compare elements of `array` to `values`. The order and\n * references of result values are determined by the first array. The comparator\n * is invoked with two arguments: (arrVal, othVal).\n *\n * **Note:** Unlike `_.pullAllWith`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...Array} [values] The values to exclude.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n *\n * _.differenceWith(objects, [{ 'x': 1, 'y': 2 }], _.isEqual);\n * // => [{ 'x': 2, 'y': 1 }]\n */\n var differenceWith = baseRest(function(array, values) {\n var comparator = last(values);\n if (isArrayLikeObject(comparator)) {\n comparator = undefined;\n }\n return isArrayLikeObject(array)\n ? baseDifference(array, baseFlatten(values, 1, isArrayLikeObject, true), undefined, comparator)\n : [];\n });\n\n /**\n * Creates a slice of `array` with `n` elements dropped from the beginning.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to drop.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.drop([1, 2, 3]);\n * // => [2, 3]\n *\n * _.drop([1, 2, 3], 2);\n * // => [3]\n *\n * _.drop([1, 2, 3], 5);\n * // => []\n *\n * _.drop([1, 2, 3], 0);\n * // => [1, 2, 3]\n */\n function drop(array, n, guard) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n return baseSlice(array, n < 0 ? 0 : n, length);\n }\n\n /**\n * Creates a slice of `array` with `n` elements dropped from the end.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to drop.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.dropRight([1, 2, 3]);\n * // => [1, 2]\n *\n * _.dropRight([1, 2, 3], 2);\n * // => [1]\n *\n * _.dropRight([1, 2, 3], 5);\n * // => []\n *\n * _.dropRight([1, 2, 3], 0);\n * // => [1, 2, 3]\n */\n function dropRight(array, n, guard) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n n = length - n;\n return baseSlice(array, 0, n < 0 ? 0 : n);\n }\n\n /**\n * Creates a slice of `array` excluding elements dropped from the end.\n * Elements are dropped until `predicate` returns falsey. The predicate is\n * invoked with three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.dropRightWhile(users, function(o) { return !o.active; });\n * // => objects for ['barney']\n *\n * // The `_.matches` iteratee shorthand.\n * _.dropRightWhile(users, { 'user': 'pebbles', 'active': false });\n * // => objects for ['barney', 'fred']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.dropRightWhile(users, ['active', false]);\n * // => objects for ['barney']\n *\n * // The `_.property` iteratee shorthand.\n * _.dropRightWhile(users, 'active');\n * // => objects for ['barney', 'fred', 'pebbles']\n */\n function dropRightWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3), true, true)\n : [];\n }\n\n /**\n * Creates a slice of `array` excluding elements dropped from the beginning.\n * Elements are dropped until `predicate` returns falsey. The predicate is\n * invoked with three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.dropWhile(users, function(o) { return !o.active; });\n * // => objects for ['pebbles']\n *\n * // The `_.matches` iteratee shorthand.\n * _.dropWhile(users, { 'user': 'barney', 'active': false });\n * // => objects for ['fred', 'pebbles']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.dropWhile(users, ['active', false]);\n * // => objects for ['pebbles']\n *\n * // The `_.property` iteratee shorthand.\n * _.dropWhile(users, 'active');\n * // => objects for ['barney', 'fred', 'pebbles']\n */\n function dropWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3), true)\n : [];\n }\n\n /**\n * Fills elements of `array` with `value` from `start` up to, but not\n * including, `end`.\n *\n * **Note:** This method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 3.2.0\n * @category Array\n * @param {Array} array The array to fill.\n * @param {*} value The value to fill `array` with.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [1, 2, 3];\n *\n * _.fill(array, 'a');\n * console.log(array);\n * // => ['a', 'a', 'a']\n *\n * _.fill(Array(3), 2);\n * // => [2, 2, 2]\n *\n * _.fill([4, 6, 8, 10], '*', 1, 3);\n * // => [4, '*', '*', 10]\n */\n function fill(array, value, start, end) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n if (start && typeof start != 'number' && isIterateeCall(array, value, start)) {\n start = 0;\n end = length;\n }\n return baseFill(array, value, start, end);\n }\n\n /**\n * This method is like `_.find` except that it returns the index of the first\n * element `predicate` returns truthy for instead of the element itself.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {number} Returns the index of the found element, else `-1`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.findIndex(users, function(o) { return o.user == 'barney'; });\n * // => 0\n *\n * // The `_.matches` iteratee shorthand.\n * _.findIndex(users, { 'user': 'fred', 'active': false });\n * // => 1\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findIndex(users, ['active', false]);\n * // => 0\n *\n * // The `_.property` iteratee shorthand.\n * _.findIndex(users, 'active');\n * // => 2\n */\n function findIndex(array, predicate, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = fromIndex == null ? 0 : toInteger(fromIndex);\n if (index < 0) {\n index = nativeMax(length + index, 0);\n }\n return baseFindIndex(array, getIteratee(predicate, 3), index);\n }\n\n /**\n * This method is like `_.findIndex` except that it iterates over elements\n * of `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=array.length-1] The index to search from.\n * @returns {number} Returns the index of the found element, else `-1`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.findLastIndex(users, function(o) { return o.user == 'pebbles'; });\n * // => 2\n *\n * // The `_.matches` iteratee shorthand.\n * _.findLastIndex(users, { 'user': 'barney', 'active': true });\n * // => 0\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findLastIndex(users, ['active', false]);\n * // => 2\n *\n * // The `_.property` iteratee shorthand.\n * _.findLastIndex(users, 'active');\n * // => 0\n */\n function findLastIndex(array, predicate, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = length - 1;\n if (fromIndex !== undefined) {\n index = toInteger(fromIndex);\n index = fromIndex < 0\n ? nativeMax(length + index, 0)\n : nativeMin(index, length - 1);\n }\n return baseFindIndex(array, getIteratee(predicate, 3), index, true);\n }\n\n /**\n * Flattens `array` a single level deep.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * _.flatten([1, [2, [3, [4]], 5]]);\n * // => [1, 2, [3, [4]], 5]\n */\n function flatten(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseFlatten(array, 1) : [];\n }\n\n /**\n * Recursively flattens `array`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * _.flattenDeep([1, [2, [3, [4]], 5]]);\n * // => [1, 2, 3, 4, 5]\n */\n function flattenDeep(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseFlatten(array, INFINITY) : [];\n }\n\n /**\n * Recursively flatten `array` up to `depth` times.\n *\n * @static\n * @memberOf _\n * @since 4.4.0\n * @category Array\n * @param {Array} array The array to flatten.\n * @param {number} [depth=1] The maximum recursion depth.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * var array = [1, [2, [3, [4]], 5]];\n *\n * _.flattenDepth(array, 1);\n * // => [1, 2, [3, [4]], 5]\n *\n * _.flattenDepth(array, 2);\n * // => [1, 2, 3, [4], 5]\n */\n function flattenDepth(array, depth) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n depth = depth === undefined ? 1 : toInteger(depth);\n return baseFlatten(array, depth);\n }\n\n /**\n * The inverse of `_.toPairs`; this method returns an object composed\n * from key-value `pairs`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} pairs The key-value pairs.\n * @returns {Object} Returns the new object.\n * @example\n *\n * _.fromPairs([['a', 1], ['b', 2]]);\n * // => { 'a': 1, 'b': 2 }\n */\n function fromPairs(pairs) {\n var index = -1,\n length = pairs == null ? 0 : pairs.length,\n result = {};\n\n while (++index < length) {\n var pair = pairs[index];\n result[pair[0]] = pair[1];\n }\n return result;\n }\n\n /**\n * Gets the first element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @alias first\n * @category Array\n * @param {Array} array The array to query.\n * @returns {*} Returns the first element of `array`.\n * @example\n *\n * _.head([1, 2, 3]);\n * // => 1\n *\n * _.head([]);\n * // => undefined\n */\n function head(array) {\n return (array && array.length) ? array[0] : undefined;\n }\n\n /**\n * Gets the index at which the first occurrence of `value` is found in `array`\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons. If `fromIndex` is negative, it's used as the\n * offset from the end of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.indexOf([1, 2, 1, 2], 2);\n * // => 1\n *\n * // Search from the `fromIndex`.\n * _.indexOf([1, 2, 1, 2], 2, 2);\n * // => 3\n */\n function indexOf(array, value, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = fromIndex == null ? 0 : toInteger(fromIndex);\n if (index < 0) {\n index = nativeMax(length + index, 0);\n }\n return baseIndexOf(array, value, index);\n }\n\n /**\n * Gets all but the last element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.initial([1, 2, 3]);\n * // => [1, 2]\n */\n function initial(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseSlice(array, 0, -1) : [];\n }\n\n /**\n * Creates an array of unique values that are included in all given arrays\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons. The order and references of result values are\n * determined by the first array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @returns {Array} Returns the new array of intersecting values.\n * @example\n *\n * _.intersection([2, 1], [2, 3]);\n * // => [2]\n */\n var intersection = baseRest(function(arrays) {\n var mapped = arrayMap(arrays, castArrayLikeObject);\n return (mapped.length && mapped[0] === arrays[0])\n ? baseIntersection(mapped)\n : [];\n });\n\n /**\n * This method is like `_.intersection` except that it accepts `iteratee`\n * which is invoked for each element of each `arrays` to generate the criterion\n * by which they're compared. The order and references of result values are\n * determined by the first array. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of intersecting values.\n * @example\n *\n * _.intersectionBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n * // => [2.1]\n *\n * // The `_.property` iteratee shorthand.\n * _.intersectionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }]\n */\n var intersectionBy = baseRest(function(arrays) {\n var iteratee = last(arrays),\n mapped = arrayMap(arrays, castArrayLikeObject);\n\n if (iteratee === last(mapped)) {\n iteratee = undefined;\n } else {\n mapped.pop();\n }\n return (mapped.length && mapped[0] === arrays[0])\n ? baseIntersection(mapped, getIteratee(iteratee, 2))\n : [];\n });\n\n /**\n * This method is like `_.intersection` except that it accepts `comparator`\n * which is invoked to compare elements of `arrays`. The order and references\n * of result values are determined by the first array. The comparator is\n * invoked with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of intersecting values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.intersectionWith(objects, others, _.isEqual);\n * // => [{ 'x': 1, 'y': 2 }]\n */\n var intersectionWith = baseRest(function(arrays) {\n var comparator = last(arrays),\n mapped = arrayMap(arrays, castArrayLikeObject);\n\n comparator = typeof comparator == 'function' ? comparator : undefined;\n if (comparator) {\n mapped.pop();\n }\n return (mapped.length && mapped[0] === arrays[0])\n ? baseIntersection(mapped, undefined, comparator)\n : [];\n });\n\n /**\n * Converts all elements in `array` into a string separated by `separator`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to convert.\n * @param {string} [separator=','] The element separator.\n * @returns {string} Returns the joined string.\n * @example\n *\n * _.join(['a', 'b', 'c'], '~');\n * // => 'a~b~c'\n */\n function join(array, separator) {\n return array == null ? '' : nativeJoin.call(array, separator);\n }\n\n /**\n * Gets the last element of `array`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {*} Returns the last element of `array`.\n * @example\n *\n * _.last([1, 2, 3]);\n * // => 3\n */\n function last(array) {\n var length = array == null ? 0 : array.length;\n return length ? array[length - 1] : undefined;\n }\n\n /**\n * This method is like `_.indexOf` except that it iterates over elements of\n * `array` from right to left.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @param {number} [fromIndex=array.length-1] The index to search from.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.lastIndexOf([1, 2, 1, 2], 2);\n * // => 3\n *\n * // Search from the `fromIndex`.\n * _.lastIndexOf([1, 2, 1, 2], 2, 2);\n * // => 1\n */\n function lastIndexOf(array, value, fromIndex) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return -1;\n }\n var index = length;\n if (fromIndex !== undefined) {\n index = toInteger(fromIndex);\n index = index < 0 ? nativeMax(length + index, 0) : nativeMin(index, length - 1);\n }\n return value === value\n ? strictLastIndexOf(array, value, index)\n : baseFindIndex(array, baseIsNaN, index, true);\n }\n\n /**\n * Gets the element at index `n` of `array`. If `n` is negative, the nth\n * element from the end is returned.\n *\n * @static\n * @memberOf _\n * @since 4.11.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=0] The index of the element to return.\n * @returns {*} Returns the nth element of `array`.\n * @example\n *\n * var array = ['a', 'b', 'c', 'd'];\n *\n * _.nth(array, 1);\n * // => 'b'\n *\n * _.nth(array, -2);\n * // => 'c';\n */\n function nth(array, n) {\n return (array && array.length) ? baseNth(array, toInteger(n)) : undefined;\n }\n\n /**\n * Removes all given values from `array` using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * **Note:** Unlike `_.without`, this method mutates `array`. Use `_.remove`\n * to remove elements from an array by predicate.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {...*} [values] The values to remove.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = ['a', 'b', 'c', 'a', 'b', 'c'];\n *\n * _.pull(array, 'a', 'c');\n * console.log(array);\n * // => ['b', 'b']\n */\n var pull = baseRest(pullAll);\n\n /**\n * This method is like `_.pull` except that it accepts an array of values to remove.\n *\n * **Note:** Unlike `_.difference`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = ['a', 'b', 'c', 'a', 'b', 'c'];\n *\n * _.pullAll(array, ['a', 'c']);\n * console.log(array);\n * // => ['b', 'b']\n */\n function pullAll(array, values) {\n return (array && array.length && values && values.length)\n ? basePullAll(array, values)\n : array;\n }\n\n /**\n * This method is like `_.pullAll` except that it accepts `iteratee` which is\n * invoked for each element of `array` and `values` to generate the criterion\n * by which they're compared. The iteratee is invoked with one argument: (value).\n *\n * **Note:** Unlike `_.differenceBy`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [{ 'x': 1 }, { 'x': 2 }, { 'x': 3 }, { 'x': 1 }];\n *\n * _.pullAllBy(array, [{ 'x': 1 }, { 'x': 3 }], 'x');\n * console.log(array);\n * // => [{ 'x': 2 }]\n */\n function pullAllBy(array, values, iteratee) {\n return (array && array.length && values && values.length)\n ? basePullAll(array, values, getIteratee(iteratee, 2))\n : array;\n }\n\n /**\n * This method is like `_.pullAll` except that it accepts `comparator` which\n * is invoked to compare elements of `array` to `values`. The comparator is\n * invoked with two arguments: (arrVal, othVal).\n *\n * **Note:** Unlike `_.differenceWith`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 4.6.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Array} values The values to remove.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [{ 'x': 1, 'y': 2 }, { 'x': 3, 'y': 4 }, { 'x': 5, 'y': 6 }];\n *\n * _.pullAllWith(array, [{ 'x': 3, 'y': 4 }], _.isEqual);\n * console.log(array);\n * // => [{ 'x': 1, 'y': 2 }, { 'x': 5, 'y': 6 }]\n */\n function pullAllWith(array, values, comparator) {\n return (array && array.length && values && values.length)\n ? basePullAll(array, values, undefined, comparator)\n : array;\n }\n\n /**\n * Removes elements from `array` corresponding to `indexes` and returns an\n * array of removed elements.\n *\n * **Note:** Unlike `_.at`, this method mutates `array`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {...(number|number[])} [indexes] The indexes of elements to remove.\n * @returns {Array} Returns the new array of removed elements.\n * @example\n *\n * var array = ['a', 'b', 'c', 'd'];\n * var pulled = _.pullAt(array, [1, 3]);\n *\n * console.log(array);\n * // => ['a', 'c']\n *\n * console.log(pulled);\n * // => ['b', 'd']\n */\n var pullAt = flatRest(function(array, indexes) {\n var length = array == null ? 0 : array.length,\n result = baseAt(array, indexes);\n\n basePullAt(array, arrayMap(indexes, function(index) {\n return isIndex(index, length) ? +index : index;\n }).sort(compareAscending));\n\n return result;\n });\n\n /**\n * Removes all elements from `array` that `predicate` returns truthy for\n * and returns an array of the removed elements. The predicate is invoked\n * with three arguments: (value, index, array).\n *\n * **Note:** Unlike `_.filter`, this method mutates `array`. Use `_.pull`\n * to pull elements from an array by value.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new array of removed elements.\n * @example\n *\n * var array = [1, 2, 3, 4];\n * var evens = _.remove(array, function(n) {\n * return n % 2 == 0;\n * });\n *\n * console.log(array);\n * // => [1, 3]\n *\n * console.log(evens);\n * // => [2, 4]\n */\n function remove(array, predicate) {\n var result = [];\n if (!(array && array.length)) {\n return result;\n }\n var index = -1,\n indexes = [],\n length = array.length;\n\n predicate = getIteratee(predicate, 3);\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result.push(value);\n indexes.push(index);\n }\n }\n basePullAt(array, indexes);\n return result;\n }\n\n /**\n * Reverses `array` so that the first element becomes the last, the second\n * element becomes the second to last, and so on.\n *\n * **Note:** This method mutates `array` and is based on\n * [`Array#reverse`](https://mdn.io/Array/reverse).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to modify.\n * @returns {Array} Returns `array`.\n * @example\n *\n * var array = [1, 2, 3];\n *\n * _.reverse(array);\n * // => [3, 2, 1]\n *\n * console.log(array);\n * // => [3, 2, 1]\n */\n function reverse(array) {\n return array == null ? array : nativeReverse.call(array);\n }\n\n /**\n * Creates a slice of `array` from `start` up to, but not including, `end`.\n *\n * **Note:** This method is used instead of\n * [`Array#slice`](https://mdn.io/Array/slice) to ensure dense arrays are\n * returned.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to slice.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the slice of `array`.\n */\n function slice(array, start, end) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n if (end && typeof end != 'number' && isIterateeCall(array, start, end)) {\n start = 0;\n end = length;\n }\n else {\n start = start == null ? 0 : toInteger(start);\n end = end === undefined ? length : toInteger(end);\n }\n return baseSlice(array, start, end);\n }\n\n /**\n * Uses a binary search to determine the lowest index at which `value`\n * should be inserted into `array` in order to maintain its sort order.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * _.sortedIndex([30, 50], 40);\n * // => 1\n */\n function sortedIndex(array, value) {\n return baseSortedIndex(array, value);\n }\n\n /**\n * This method is like `_.sortedIndex` except that it accepts `iteratee`\n * which is invoked for `value` and each element of `array` to compute their\n * sort ranking. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * var objects = [{ 'x': 4 }, { 'x': 5 }];\n *\n * _.sortedIndexBy(objects, { 'x': 4 }, function(o) { return o.x; });\n * // => 0\n *\n * // The `_.property` iteratee shorthand.\n * _.sortedIndexBy(objects, { 'x': 4 }, 'x');\n * // => 0\n */\n function sortedIndexBy(array, value, iteratee) {\n return baseSortedIndexBy(array, value, getIteratee(iteratee, 2));\n }\n\n /**\n * This method is like `_.indexOf` except that it performs a binary\n * search on a sorted `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.sortedIndexOf([4, 5, 5, 5, 6], 5);\n * // => 1\n */\n function sortedIndexOf(array, value) {\n var length = array == null ? 0 : array.length;\n if (length) {\n var index = baseSortedIndex(array, value);\n if (index < length && eq(array[index], value)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * This method is like `_.sortedIndex` except that it returns the highest\n * index at which `value` should be inserted into `array` in order to\n * maintain its sort order.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * _.sortedLastIndex([4, 5, 5, 5, 6], 5);\n * // => 4\n */\n function sortedLastIndex(array, value) {\n return baseSortedIndex(array, value, true);\n }\n\n /**\n * This method is like `_.sortedLastIndex` except that it accepts `iteratee`\n * which is invoked for `value` and each element of `array` to compute their\n * sort ranking. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The sorted array to inspect.\n * @param {*} value The value to evaluate.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {number} Returns the index at which `value` should be inserted\n * into `array`.\n * @example\n *\n * var objects = [{ 'x': 4 }, { 'x': 5 }];\n *\n * _.sortedLastIndexBy(objects, { 'x': 4 }, function(o) { return o.x; });\n * // => 1\n *\n * // The `_.property` iteratee shorthand.\n * _.sortedLastIndexBy(objects, { 'x': 4 }, 'x');\n * // => 1\n */\n function sortedLastIndexBy(array, value, iteratee) {\n return baseSortedIndexBy(array, value, getIteratee(iteratee, 2), true);\n }\n\n /**\n * This method is like `_.lastIndexOf` except that it performs a binary\n * search on a sorted `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {*} value The value to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n * @example\n *\n * _.sortedLastIndexOf([4, 5, 5, 5, 6], 5);\n * // => 3\n */\n function sortedLastIndexOf(array, value) {\n var length = array == null ? 0 : array.length;\n if (length) {\n var index = baseSortedIndex(array, value, true) - 1;\n if (eq(array[index], value)) {\n return index;\n }\n }\n return -1;\n }\n\n /**\n * This method is like `_.uniq` except that it's designed and optimized\n * for sorted arrays.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.sortedUniq([1, 1, 2]);\n * // => [1, 2]\n */\n function sortedUniq(array) {\n return (array && array.length)\n ? baseSortedUniq(array)\n : [];\n }\n\n /**\n * This method is like `_.uniqBy` except that it's designed and optimized\n * for sorted arrays.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.sortedUniqBy([1.1, 1.2, 2.3, 2.4], Math.floor);\n * // => [1.1, 2.3]\n */\n function sortedUniqBy(array, iteratee) {\n return (array && array.length)\n ? baseSortedUniq(array, getIteratee(iteratee, 2))\n : [];\n }\n\n /**\n * Gets all but the first element of `array`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.tail([1, 2, 3]);\n * // => [2, 3]\n */\n function tail(array) {\n var length = array == null ? 0 : array.length;\n return length ? baseSlice(array, 1, length) : [];\n }\n\n /**\n * Creates a slice of `array` with `n` elements taken from the beginning.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to take.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.take([1, 2, 3]);\n * // => [1]\n *\n * _.take([1, 2, 3], 2);\n * // => [1, 2]\n *\n * _.take([1, 2, 3], 5);\n * // => [1, 2, 3]\n *\n * _.take([1, 2, 3], 0);\n * // => []\n */\n function take(array, n, guard) {\n if (!(array && array.length)) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n return baseSlice(array, 0, n < 0 ? 0 : n);\n }\n\n /**\n * Creates a slice of `array` with `n` elements taken from the end.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {number} [n=1] The number of elements to take.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * _.takeRight([1, 2, 3]);\n * // => [3]\n *\n * _.takeRight([1, 2, 3], 2);\n * // => [2, 3]\n *\n * _.takeRight([1, 2, 3], 5);\n * // => [1, 2, 3]\n *\n * _.takeRight([1, 2, 3], 0);\n * // => []\n */\n function takeRight(array, n, guard) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n n = (guard || n === undefined) ? 1 : toInteger(n);\n n = length - n;\n return baseSlice(array, n < 0 ? 0 : n, length);\n }\n\n /**\n * Creates a slice of `array` with elements taken from the end. Elements are\n * taken until `predicate` returns falsey. The predicate is invoked with\n * three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': false }\n * ];\n *\n * _.takeRightWhile(users, function(o) { return !o.active; });\n * // => objects for ['fred', 'pebbles']\n *\n * // The `_.matches` iteratee shorthand.\n * _.takeRightWhile(users, { 'user': 'pebbles', 'active': false });\n * // => objects for ['pebbles']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.takeRightWhile(users, ['active', false]);\n * // => objects for ['fred', 'pebbles']\n *\n * // The `_.property` iteratee shorthand.\n * _.takeRightWhile(users, 'active');\n * // => []\n */\n function takeRightWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3), false, true)\n : [];\n }\n\n /**\n * Creates a slice of `array` with elements taken from the beginning. Elements\n * are taken until `predicate` returns falsey. The predicate is invoked with\n * three arguments: (value, index, array).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to query.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the slice of `array`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'active': false },\n * { 'user': 'fred', 'active': false },\n * { 'user': 'pebbles', 'active': true }\n * ];\n *\n * _.takeWhile(users, function(o) { return !o.active; });\n * // => objects for ['barney', 'fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.takeWhile(users, { 'user': 'barney', 'active': false });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.takeWhile(users, ['active', false]);\n * // => objects for ['barney', 'fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.takeWhile(users, 'active');\n * // => []\n */\n function takeWhile(array, predicate) {\n return (array && array.length)\n ? baseWhile(array, getIteratee(predicate, 3))\n : [];\n }\n\n /**\n * Creates an array of unique values, in order, from all given arrays using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @returns {Array} Returns the new array of combined values.\n * @example\n *\n * _.union([2], [1, 2]);\n * // => [2, 1]\n */\n var union = baseRest(function(arrays) {\n return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true));\n });\n\n /**\n * This method is like `_.union` except that it accepts `iteratee` which is\n * invoked for each element of each `arrays` to generate the criterion by\n * which uniqueness is computed. Result values are chosen from the first\n * array in which the value occurs. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of combined values.\n * @example\n *\n * _.unionBy([2.1], [1.2, 2.3], Math.floor);\n * // => [2.1, 1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.unionBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }, { 'x': 2 }]\n */\n var unionBy = baseRest(function(arrays) {\n var iteratee = last(arrays);\n if (isArrayLikeObject(iteratee)) {\n iteratee = undefined;\n }\n return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), getIteratee(iteratee, 2));\n });\n\n /**\n * This method is like `_.union` except that it accepts `comparator` which\n * is invoked to compare elements of `arrays`. Result values are chosen from\n * the first array in which the value occurs. The comparator is invoked\n * with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of combined values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.unionWith(objects, others, _.isEqual);\n * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }]\n */\n var unionWith = baseRest(function(arrays) {\n var comparator = last(arrays);\n comparator = typeof comparator == 'function' ? comparator : undefined;\n return baseUniq(baseFlatten(arrays, 1, isArrayLikeObject, true), undefined, comparator);\n });\n\n /**\n * Creates a duplicate-free version of an array, using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons, in which only the first occurrence of each element\n * is kept. The order of result values is determined by the order they occur\n * in the array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.uniq([2, 1, 2]);\n * // => [2, 1]\n */\n function uniq(array) {\n return (array && array.length) ? baseUniq(array) : [];\n }\n\n /**\n * This method is like `_.uniq` except that it accepts `iteratee` which is\n * invoked for each element in `array` to generate the criterion by which\n * uniqueness is computed. The order of result values is determined by the\n * order they occur in the array. The iteratee is invoked with one argument:\n * (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * _.uniqBy([2.1, 1.2, 2.3], Math.floor);\n * // => [2.1, 1.2]\n *\n * // The `_.property` iteratee shorthand.\n * _.uniqBy([{ 'x': 1 }, { 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 1 }, { 'x': 2 }]\n */\n function uniqBy(array, iteratee) {\n return (array && array.length) ? baseUniq(array, getIteratee(iteratee, 2)) : [];\n }\n\n /**\n * This method is like `_.uniq` except that it accepts `comparator` which\n * is invoked to compare elements of `array`. The order of result values is\n * determined by the order they occur in the array.The comparator is invoked\n * with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new duplicate free array.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.uniqWith(objects, _.isEqual);\n * // => [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }]\n */\n function uniqWith(array, comparator) {\n comparator = typeof comparator == 'function' ? comparator : undefined;\n return (array && array.length) ? baseUniq(array, undefined, comparator) : [];\n }\n\n /**\n * This method is like `_.zip` except that it accepts an array of grouped\n * elements and creates an array regrouping the elements to their pre-zip\n * configuration.\n *\n * @static\n * @memberOf _\n * @since 1.2.0\n * @category Array\n * @param {Array} array The array of grouped elements to process.\n * @returns {Array} Returns the new array of regrouped elements.\n * @example\n *\n * var zipped = _.zip(['a', 'b'], [1, 2], [true, false]);\n * // => [['a', 1, true], ['b', 2, false]]\n *\n * _.unzip(zipped);\n * // => [['a', 'b'], [1, 2], [true, false]]\n */\n function unzip(array) {\n if (!(array && array.length)) {\n return [];\n }\n var length = 0;\n array = arrayFilter(array, function(group) {\n if (isArrayLikeObject(group)) {\n length = nativeMax(group.length, length);\n return true;\n }\n });\n return baseTimes(length, function(index) {\n return arrayMap(array, baseProperty(index));\n });\n }\n\n /**\n * This method is like `_.unzip` except that it accepts `iteratee` to specify\n * how regrouped values should be combined. The iteratee is invoked with the\n * elements of each group: (...group).\n *\n * @static\n * @memberOf _\n * @since 3.8.0\n * @category Array\n * @param {Array} array The array of grouped elements to process.\n * @param {Function} [iteratee=_.identity] The function to combine\n * regrouped values.\n * @returns {Array} Returns the new array of regrouped elements.\n * @example\n *\n * var zipped = _.zip([1, 2], [10, 20], [100, 200]);\n * // => [[1, 10, 100], [2, 20, 200]]\n *\n * _.unzipWith(zipped, _.add);\n * // => [3, 30, 300]\n */\n function unzipWith(array, iteratee) {\n if (!(array && array.length)) {\n return [];\n }\n var result = unzip(array);\n if (iteratee == null) {\n return result;\n }\n return arrayMap(result, function(group) {\n return apply(iteratee, undefined, group);\n });\n }\n\n /**\n * Creates an array excluding all given values using\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * **Note:** Unlike `_.pull`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {Array} array The array to inspect.\n * @param {...*} [values] The values to exclude.\n * @returns {Array} Returns the new array of filtered values.\n * @see _.difference, _.xor\n * @example\n *\n * _.without([2, 1, 2, 3], 1, 2);\n * // => [3]\n */\n var without = baseRest(function(array, values) {\n return isArrayLikeObject(array)\n ? baseDifference(array, values)\n : [];\n });\n\n /**\n * Creates an array of unique values that is the\n * [symmetric difference](https://en.wikipedia.org/wiki/Symmetric_difference)\n * of the given arrays. The order of result values is determined by the order\n * they occur in the arrays.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @returns {Array} Returns the new array of filtered values.\n * @see _.difference, _.without\n * @example\n *\n * _.xor([2, 1], [2, 3]);\n * // => [1, 3]\n */\n var xor = baseRest(function(arrays) {\n return baseXor(arrayFilter(arrays, isArrayLikeObject));\n });\n\n /**\n * This method is like `_.xor` except that it accepts `iteratee` which is\n * invoked for each element of each `arrays` to generate the criterion by\n * which by which they're compared. The order of result values is determined\n * by the order they occur in the arrays. The iteratee is invoked with one\n * argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * _.xorBy([2.1, 1.2], [2.3, 3.4], Math.floor);\n * // => [1.2, 3.4]\n *\n * // The `_.property` iteratee shorthand.\n * _.xorBy([{ 'x': 1 }], [{ 'x': 2 }, { 'x': 1 }], 'x');\n * // => [{ 'x': 2 }]\n */\n var xorBy = baseRest(function(arrays) {\n var iteratee = last(arrays);\n if (isArrayLikeObject(iteratee)) {\n iteratee = undefined;\n }\n return baseXor(arrayFilter(arrays, isArrayLikeObject), getIteratee(iteratee, 2));\n });\n\n /**\n * This method is like `_.xor` except that it accepts `comparator` which is\n * invoked to compare elements of `arrays`. The order of result values is\n * determined by the order they occur in the arrays. The comparator is invoked\n * with two arguments: (arrVal, othVal).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Array\n * @param {...Array} [arrays] The arrays to inspect.\n * @param {Function} [comparator] The comparator invoked per element.\n * @returns {Array} Returns the new array of filtered values.\n * @example\n *\n * var objects = [{ 'x': 1, 'y': 2 }, { 'x': 2, 'y': 1 }];\n * var others = [{ 'x': 1, 'y': 1 }, { 'x': 1, 'y': 2 }];\n *\n * _.xorWith(objects, others, _.isEqual);\n * // => [{ 'x': 2, 'y': 1 }, { 'x': 1, 'y': 1 }]\n */\n var xorWith = baseRest(function(arrays) {\n var comparator = last(arrays);\n comparator = typeof comparator == 'function' ? comparator : undefined;\n return baseXor(arrayFilter(arrays, isArrayLikeObject), undefined, comparator);\n });\n\n /**\n * Creates an array of grouped elements, the first of which contains the\n * first elements of the given arrays, the second of which contains the\n * second elements of the given arrays, and so on.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Array\n * @param {...Array} [arrays] The arrays to process.\n * @returns {Array} Returns the new array of grouped elements.\n * @example\n *\n * _.zip(['a', 'b'], [1, 2], [true, false]);\n * // => [['a', 1, true], ['b', 2, false]]\n */\n var zip = baseRest(unzip);\n\n /**\n * This method is like `_.fromPairs` except that it accepts two arrays,\n * one of property identifiers and one of corresponding values.\n *\n * @static\n * @memberOf _\n * @since 0.4.0\n * @category Array\n * @param {Array} [props=[]] The property identifiers.\n * @param {Array} [values=[]] The property values.\n * @returns {Object} Returns the new object.\n * @example\n *\n * _.zipObject(['a', 'b'], [1, 2]);\n * // => { 'a': 1, 'b': 2 }\n */\n function zipObject(props, values) {\n return baseZipObject(props || [], values || [], assignValue);\n }\n\n /**\n * This method is like `_.zipObject` except that it supports property paths.\n *\n * @static\n * @memberOf _\n * @since 4.1.0\n * @category Array\n * @param {Array} [props=[]] The property identifiers.\n * @param {Array} [values=[]] The property values.\n * @returns {Object} Returns the new object.\n * @example\n *\n * _.zipObjectDeep(['a.b[0].c', 'a.b[1].d'], [1, 2]);\n * // => { 'a': { 'b': [{ 'c': 1 }, { 'd': 2 }] } }\n */\n function zipObjectDeep(props, values) {\n return baseZipObject(props || [], values || [], baseSet);\n }\n\n /**\n * This method is like `_.zip` except that it accepts `iteratee` to specify\n * how grouped values should be combined. The iteratee is invoked with the\n * elements of each group: (...group).\n *\n * @static\n * @memberOf _\n * @since 3.8.0\n * @category Array\n * @param {...Array} [arrays] The arrays to process.\n * @param {Function} [iteratee=_.identity] The function to combine\n * grouped values.\n * @returns {Array} Returns the new array of grouped elements.\n * @example\n *\n * _.zipWith([1, 2], [10, 20], [100, 200], function(a, b, c) {\n * return a + b + c;\n * });\n * // => [111, 222]\n */\n var zipWith = baseRest(function(arrays) {\n var length = arrays.length,\n iteratee = length > 1 ? arrays[length - 1] : undefined;\n\n iteratee = typeof iteratee == 'function' ? (arrays.pop(), iteratee) : undefined;\n return unzipWith(arrays, iteratee);\n });\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates a `lodash` wrapper instance that wraps `value` with explicit method\n * chain sequences enabled. The result of such sequences must be unwrapped\n * with `_#value`.\n *\n * @static\n * @memberOf _\n * @since 1.3.0\n * @category Seq\n * @param {*} value The value to wrap.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36 },\n * { 'user': 'fred', 'age': 40 },\n * { 'user': 'pebbles', 'age': 1 }\n * ];\n *\n * var youngest = _\n * .chain(users)\n * .sortBy('age')\n * .map(function(o) {\n * return o.user + ' is ' + o.age;\n * })\n * .head()\n * .value();\n * // => 'pebbles is 1'\n */\n function chain(value) {\n var result = lodash(value);\n result.__chain__ = true;\n return result;\n }\n\n /**\n * This method invokes `interceptor` and returns `value`. The interceptor\n * is invoked with one argument; (value). The purpose of this method is to\n * \"tap into\" a method chain sequence in order to modify intermediate results.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Seq\n * @param {*} value The value to provide to `interceptor`.\n * @param {Function} interceptor The function to invoke.\n * @returns {*} Returns `value`.\n * @example\n *\n * _([1, 2, 3])\n * .tap(function(array) {\n * // Mutate input array.\n * array.pop();\n * })\n * .reverse()\n * .value();\n * // => [2, 1]\n */\n function tap(value, interceptor) {\n interceptor(value);\n return value;\n }\n\n /**\n * This method is like `_.tap` except that it returns the result of `interceptor`.\n * The purpose of this method is to \"pass thru\" values replacing intermediate\n * results in a method chain sequence.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Seq\n * @param {*} value The value to provide to `interceptor`.\n * @param {Function} interceptor The function to invoke.\n * @returns {*} Returns the result of `interceptor`.\n * @example\n *\n * _(' abc ')\n * .chain()\n * .trim()\n * .thru(function(value) {\n * return [value];\n * })\n * .value();\n * // => ['abc']\n */\n function thru(value, interceptor) {\n return interceptor(value);\n }\n\n /**\n * This method is the wrapper version of `_.at`.\n *\n * @name at\n * @memberOf _\n * @since 1.0.0\n * @category Seq\n * @param {...(string|string[])} [paths] The property paths to pick.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] };\n *\n * _(object).at(['a[0].b.c', 'a[1]']).value();\n * // => [3, 4]\n */\n var wrapperAt = flatRest(function(paths) {\n var length = paths.length,\n start = length ? paths[0] : 0,\n value = this.__wrapped__,\n interceptor = function(object) { return baseAt(object, paths); };\n\n if (length > 1 || this.__actions__.length ||\n !(value instanceof LazyWrapper) || !isIndex(start)) {\n return this.thru(interceptor);\n }\n value = value.slice(start, +start + (length ? 1 : 0));\n value.__actions__.push({\n 'func': thru,\n 'args': [interceptor],\n 'thisArg': undefined\n });\n return new LodashWrapper(value, this.__chain__).thru(function(array) {\n if (length && !array.length) {\n array.push(undefined);\n }\n return array;\n });\n });\n\n /**\n * Creates a `lodash` wrapper instance with explicit method chain sequences enabled.\n *\n * @name chain\n * @memberOf _\n * @since 0.1.0\n * @category Seq\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36 },\n * { 'user': 'fred', 'age': 40 }\n * ];\n *\n * // A sequence without explicit chaining.\n * _(users).head();\n * // => { 'user': 'barney', 'age': 36 }\n *\n * // A sequence with explicit chaining.\n * _(users)\n * .chain()\n * .head()\n * .pick('user')\n * .value();\n * // => { 'user': 'barney' }\n */\n function wrapperChain() {\n return chain(this);\n }\n\n /**\n * Executes the chain sequence and returns the wrapped result.\n *\n * @name commit\n * @memberOf _\n * @since 3.2.0\n * @category Seq\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var array = [1, 2];\n * var wrapped = _(array).push(3);\n *\n * console.log(array);\n * // => [1, 2]\n *\n * wrapped = wrapped.commit();\n * console.log(array);\n * // => [1, 2, 3]\n *\n * wrapped.last();\n * // => 3\n *\n * console.log(array);\n * // => [1, 2, 3]\n */\n function wrapperCommit() {\n return new LodashWrapper(this.value(), this.__chain__);\n }\n\n /**\n * Gets the next value on a wrapped object following the\n * [iterator protocol](https://mdn.io/iteration_protocols#iterator).\n *\n * @name next\n * @memberOf _\n * @since 4.0.0\n * @category Seq\n * @returns {Object} Returns the next iterator value.\n * @example\n *\n * var wrapped = _([1, 2]);\n *\n * wrapped.next();\n * // => { 'done': false, 'value': 1 }\n *\n * wrapped.next();\n * // => { 'done': false, 'value': 2 }\n *\n * wrapped.next();\n * // => { 'done': true, 'value': undefined }\n */\n function wrapperNext() {\n if (this.__values__ === undefined) {\n this.__values__ = toArray(this.value());\n }\n var done = this.__index__ >= this.__values__.length,\n value = done ? undefined : this.__values__[this.__index__++];\n\n return { 'done': done, 'value': value };\n }\n\n /**\n * Enables the wrapper to be iterable.\n *\n * @name Symbol.iterator\n * @memberOf _\n * @since 4.0.0\n * @category Seq\n * @returns {Object} Returns the wrapper object.\n * @example\n *\n * var wrapped = _([1, 2]);\n *\n * wrapped[Symbol.iterator]() === wrapped;\n * // => true\n *\n * Array.from(wrapped);\n * // => [1, 2]\n */\n function wrapperToIterator() {\n return this;\n }\n\n /**\n * Creates a clone of the chain sequence planting `value` as the wrapped value.\n *\n * @name plant\n * @memberOf _\n * @since 3.2.0\n * @category Seq\n * @param {*} value The value to plant.\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * var wrapped = _([1, 2]).map(square);\n * var other = wrapped.plant([3, 4]);\n *\n * other.value();\n * // => [9, 16]\n *\n * wrapped.value();\n * // => [1, 4]\n */\n function wrapperPlant(value) {\n var result,\n parent = this;\n\n while (parent instanceof baseLodash) {\n var clone = wrapperClone(parent);\n clone.__index__ = 0;\n clone.__values__ = undefined;\n if (result) {\n previous.__wrapped__ = clone;\n } else {\n result = clone;\n }\n var previous = clone;\n parent = parent.__wrapped__;\n }\n previous.__wrapped__ = value;\n return result;\n }\n\n /**\n * This method is the wrapper version of `_.reverse`.\n *\n * **Note:** This method mutates the wrapped array.\n *\n * @name reverse\n * @memberOf _\n * @since 0.1.0\n * @category Seq\n * @returns {Object} Returns the new `lodash` wrapper instance.\n * @example\n *\n * var array = [1, 2, 3];\n *\n * _(array).reverse().value()\n * // => [3, 2, 1]\n *\n * console.log(array);\n * // => [3, 2, 1]\n */\n function wrapperReverse() {\n var value = this.__wrapped__;\n if (value instanceof LazyWrapper) {\n var wrapped = value;\n if (this.__actions__.length) {\n wrapped = new LazyWrapper(this);\n }\n wrapped = wrapped.reverse();\n wrapped.__actions__.push({\n 'func': thru,\n 'args': [reverse],\n 'thisArg': undefined\n });\n return new LodashWrapper(wrapped, this.__chain__);\n }\n return this.thru(reverse);\n }\n\n /**\n * Executes the chain sequence to resolve the unwrapped value.\n *\n * @name value\n * @memberOf _\n * @since 0.1.0\n * @alias toJSON, valueOf\n * @category Seq\n * @returns {*} Returns the resolved unwrapped value.\n * @example\n *\n * _([1, 2, 3]).value();\n * // => [1, 2, 3]\n */\n function wrapperValue() {\n return baseWrapperValue(this.__wrapped__, this.__actions__);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The corresponding value of\n * each key is the number of times the key was returned by `iteratee`. The\n * iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * _.countBy([6.1, 4.2, 6.3], Math.floor);\n * // => { '4': 1, '6': 2 }\n *\n * // The `_.property` iteratee shorthand.\n * _.countBy(['one', 'two', 'three'], 'length');\n * // => { '3': 2, '5': 1 }\n */\n var countBy = createAggregator(function(result, value, key) {\n if (hasOwnProperty.call(result, key)) {\n ++result[key];\n } else {\n baseAssignValue(result, key, 1);\n }\n });\n\n /**\n * Checks if `predicate` returns truthy for **all** elements of `collection`.\n * Iteration is stopped once `predicate` returns falsey. The predicate is\n * invoked with three arguments: (value, index|key, collection).\n *\n * **Note:** This method returns `true` for\n * [empty collections](https://en.wikipedia.org/wiki/Empty_set) because\n * [everything is true](https://en.wikipedia.org/wiki/Vacuous_truth) of\n * elements of empty collections.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {boolean} Returns `true` if all elements pass the predicate check,\n * else `false`.\n * @example\n *\n * _.every([true, 1, null, 'yes'], Boolean);\n * // => false\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': false },\n * { 'user': 'fred', 'age': 40, 'active': false }\n * ];\n *\n * // The `_.matches` iteratee shorthand.\n * _.every(users, { 'user': 'barney', 'active': false });\n * // => false\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.every(users, ['active', false]);\n * // => true\n *\n * // The `_.property` iteratee shorthand.\n * _.every(users, 'active');\n * // => false\n */\n function every(collection, predicate, guard) {\n var func = isArray(collection) ? arrayEvery : baseEvery;\n if (guard && isIterateeCall(collection, predicate, guard)) {\n predicate = undefined;\n }\n return func(collection, getIteratee(predicate, 3));\n }\n\n /**\n * Iterates over elements of `collection`, returning an array of all elements\n * `predicate` returns truthy for. The predicate is invoked with three\n * arguments: (value, index|key, collection).\n *\n * **Note:** Unlike `_.remove`, this method returns a new array.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n * @see _.reject\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': true },\n * { 'user': 'fred', 'age': 40, 'active': false }\n * ];\n *\n * _.filter(users, function(o) { return !o.active; });\n * // => objects for ['fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.filter(users, { 'age': 36, 'active': true });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.filter(users, ['active', false]);\n * // => objects for ['fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.filter(users, 'active');\n * // => objects for ['barney']\n *\n * // Combining several predicates using `_.overEvery` or `_.overSome`.\n * _.filter(users, _.overSome([{ 'age': 36 }, ['age', 40]]));\n * // => objects for ['fred', 'barney']\n */\n function filter(collection, predicate) {\n var func = isArray(collection) ? arrayFilter : baseFilter;\n return func(collection, getIteratee(predicate, 3));\n }\n\n /**\n * Iterates over elements of `collection`, returning the first element\n * `predicate` returns truthy for. The predicate is invoked with three\n * arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=0] The index to search from.\n * @returns {*} Returns the matched element, else `undefined`.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': true },\n * { 'user': 'fred', 'age': 40, 'active': false },\n * { 'user': 'pebbles', 'age': 1, 'active': true }\n * ];\n *\n * _.find(users, function(o) { return o.age < 40; });\n * // => object for 'barney'\n *\n * // The `_.matches` iteratee shorthand.\n * _.find(users, { 'age': 1, 'active': true });\n * // => object for 'pebbles'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.find(users, ['active', false]);\n * // => object for 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.find(users, 'active');\n * // => object for 'barney'\n */\n var find = createFind(findIndex);\n\n /**\n * This method is like `_.find` except that it iterates over elements of\n * `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param {number} [fromIndex=collection.length-1] The index to search from.\n * @returns {*} Returns the matched element, else `undefined`.\n * @example\n *\n * _.findLast([1, 2, 3, 4], function(n) {\n * return n % 2 == 1;\n * });\n * // => 3\n */\n var findLast = createFind(findLastIndex);\n\n /**\n * Creates a flattened array of values by running each element in `collection`\n * thru `iteratee` and flattening the mapped results. The iteratee is invoked\n * with three arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * function duplicate(n) {\n * return [n, n];\n * }\n *\n * _.flatMap([1, 2], duplicate);\n * // => [1, 1, 2, 2]\n */\n function flatMap(collection, iteratee) {\n return baseFlatten(map(collection, iteratee), 1);\n }\n\n /**\n * This method is like `_.flatMap` except that it recursively flattens the\n * mapped results.\n *\n * @static\n * @memberOf _\n * @since 4.7.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * function duplicate(n) {\n * return [[[n, n]]];\n * }\n *\n * _.flatMapDeep([1, 2], duplicate);\n * // => [1, 1, 2, 2]\n */\n function flatMapDeep(collection, iteratee) {\n return baseFlatten(map(collection, iteratee), INFINITY);\n }\n\n /**\n * This method is like `_.flatMap` except that it recursively flattens the\n * mapped results up to `depth` times.\n *\n * @static\n * @memberOf _\n * @since 4.7.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {number} [depth=1] The maximum recursion depth.\n * @returns {Array} Returns the new flattened array.\n * @example\n *\n * function duplicate(n) {\n * return [[[n, n]]];\n * }\n *\n * _.flatMapDepth([1, 2], duplicate, 2);\n * // => [[1, 1], [2, 2]]\n */\n function flatMapDepth(collection, iteratee, depth) {\n depth = depth === undefined ? 1 : toInteger(depth);\n return baseFlatten(map(collection, iteratee), depth);\n }\n\n /**\n * Iterates over elements of `collection` and invokes `iteratee` for each element.\n * The iteratee is invoked with three arguments: (value, index|key, collection).\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * **Note:** As with other \"Collections\" methods, objects with a \"length\"\n * property are iterated like arrays. To avoid this behavior use `_.forIn`\n * or `_.forOwn` for object iteration.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @alias each\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n * @see _.forEachRight\n * @example\n *\n * _.forEach([1, 2], function(value) {\n * console.log(value);\n * });\n * // => Logs `1` then `2`.\n *\n * _.forEach({ 'a': 1, 'b': 2 }, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'a' then 'b' (iteration order is not guaranteed).\n */\n function forEach(collection, iteratee) {\n var func = isArray(collection) ? arrayEach : baseEach;\n return func(collection, getIteratee(iteratee, 3));\n }\n\n /**\n * This method is like `_.forEach` except that it iterates over elements of\n * `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @alias eachRight\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array|Object} Returns `collection`.\n * @see _.forEach\n * @example\n *\n * _.forEachRight([1, 2], function(value) {\n * console.log(value);\n * });\n * // => Logs `2` then `1`.\n */\n function forEachRight(collection, iteratee) {\n var func = isArray(collection) ? arrayEachRight : baseEachRight;\n return func(collection, getIteratee(iteratee, 3));\n }\n\n /**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The order of grouped values\n * is determined by the order they occur in `collection`. The corresponding\n * value of each key is an array of elements responsible for generating the\n * key. The iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * _.groupBy([6.1, 4.2, 6.3], Math.floor);\n * // => { '4': [4.2], '6': [6.1, 6.3] }\n *\n * // The `_.property` iteratee shorthand.\n * _.groupBy(['one', 'two', 'three'], 'length');\n * // => { '3': ['one', 'two'], '5': ['three'] }\n */\n var groupBy = createAggregator(function(result, value, key) {\n if (hasOwnProperty.call(result, key)) {\n result[key].push(value);\n } else {\n baseAssignValue(result, key, [value]);\n }\n });\n\n /**\n * Checks if `value` is in `collection`. If `collection` is a string, it's\n * checked for a substring of `value`, otherwise\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * is used for equality comparisons. If `fromIndex` is negative, it's used as\n * the offset from the end of `collection`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object|string} collection The collection to inspect.\n * @param {*} value The value to search for.\n * @param {number} [fromIndex=0] The index to search from.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`.\n * @returns {boolean} Returns `true` if `value` is found, else `false`.\n * @example\n *\n * _.includes([1, 2, 3], 1);\n * // => true\n *\n * _.includes([1, 2, 3], 1, 2);\n * // => false\n *\n * _.includes({ 'a': 1, 'b': 2 }, 1);\n * // => true\n *\n * _.includes('abcd', 'bc');\n * // => true\n */\n function includes(collection, value, fromIndex, guard) {\n collection = isArrayLike(collection) ? collection : values(collection);\n fromIndex = (fromIndex && !guard) ? toInteger(fromIndex) : 0;\n\n var length = collection.length;\n if (fromIndex < 0) {\n fromIndex = nativeMax(length + fromIndex, 0);\n }\n return isString(collection)\n ? (fromIndex <= length && collection.indexOf(value, fromIndex) > -1)\n : (!!length && baseIndexOf(collection, value, fromIndex) > -1);\n }\n\n /**\n * Invokes the method at `path` of each element in `collection`, returning\n * an array of the results of each invoked method. Any additional arguments\n * are provided to each invoked method. If `path` is a function, it's invoked\n * for, and `this` bound to, each element in `collection`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Array|Function|string} path The path of the method to invoke or\n * the function invoked per iteration.\n * @param {...*} [args] The arguments to invoke each method with.\n * @returns {Array} Returns the array of results.\n * @example\n *\n * _.invokeMap([[5, 1, 7], [3, 2, 1]], 'sort');\n * // => [[1, 5, 7], [1, 2, 3]]\n *\n * _.invokeMap([123, 456], String.prototype.split, '');\n * // => [['1', '2', '3'], ['4', '5', '6']]\n */\n var invokeMap = baseRest(function(collection, path, args) {\n var index = -1,\n isFunc = typeof path == 'function',\n result = isArrayLike(collection) ? Array(collection.length) : [];\n\n baseEach(collection, function(value) {\n result[++index] = isFunc ? apply(path, value, args) : baseInvoke(value, path, args);\n });\n return result;\n });\n\n /**\n * Creates an object composed of keys generated from the results of running\n * each element of `collection` thru `iteratee`. The corresponding value of\n * each key is the last element responsible for generating the key. The\n * iteratee is invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The iteratee to transform keys.\n * @returns {Object} Returns the composed aggregate object.\n * @example\n *\n * var array = [\n * { 'dir': 'left', 'code': 97 },\n * { 'dir': 'right', 'code': 100 }\n * ];\n *\n * _.keyBy(array, function(o) {\n * return String.fromCharCode(o.code);\n * });\n * // => { 'a': { 'dir': 'left', 'code': 97 }, 'd': { 'dir': 'right', 'code': 100 } }\n *\n * _.keyBy(array, 'dir');\n * // => { 'left': { 'dir': 'left', 'code': 97 }, 'right': { 'dir': 'right', 'code': 100 } }\n */\n var keyBy = createAggregator(function(result, value, key) {\n baseAssignValue(result, key, value);\n });\n\n /**\n * Creates an array of values by running each element in `collection` thru\n * `iteratee`. The iteratee is invoked with three arguments:\n * (value, index|key, collection).\n *\n * Many lodash methods are guarded to work as iteratees for methods like\n * `_.every`, `_.filter`, `_.map`, `_.mapValues`, `_.reject`, and `_.some`.\n *\n * The guarded methods are:\n * `ary`, `chunk`, `curry`, `curryRight`, `drop`, `dropRight`, `every`,\n * `fill`, `invert`, `parseInt`, `random`, `range`, `rangeRight`, `repeat`,\n * `sampleSize`, `slice`, `some`, `sortBy`, `split`, `take`, `takeRight`,\n * `template`, `trim`, `trimEnd`, `trimStart`, and `words`\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n * @example\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * _.map([4, 8], square);\n * // => [16, 64]\n *\n * _.map({ 'a': 4, 'b': 8 }, square);\n * // => [16, 64] (iteration order is not guaranteed)\n *\n * var users = [\n * { 'user': 'barney' },\n * { 'user': 'fred' }\n * ];\n *\n * // The `_.property` iteratee shorthand.\n * _.map(users, 'user');\n * // => ['barney', 'fred']\n */\n function map(collection, iteratee) {\n var func = isArray(collection) ? arrayMap : baseMap;\n return func(collection, getIteratee(iteratee, 3));\n }\n\n /**\n * This method is like `_.sortBy` except that it allows specifying the sort\n * orders of the iteratees to sort by. If `orders` is unspecified, all values\n * are sorted in ascending order. Otherwise, specify an order of \"desc\" for\n * descending or \"asc\" for ascending sort order of corresponding values.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Array[]|Function[]|Object[]|string[]} [iteratees=[_.identity]]\n * The iteratees to sort by.\n * @param {string[]} [orders] The sort orders of `iteratees`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.reduce`.\n * @returns {Array} Returns the new sorted array.\n * @example\n *\n * var users = [\n * { 'user': 'fred', 'age': 48 },\n * { 'user': 'barney', 'age': 34 },\n * { 'user': 'fred', 'age': 40 },\n * { 'user': 'barney', 'age': 36 }\n * ];\n *\n * // Sort by `user` in ascending order and by `age` in descending order.\n * _.orderBy(users, ['user', 'age'], ['asc', 'desc']);\n * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 40]]\n */\n function orderBy(collection, iteratees, orders, guard) {\n if (collection == null) {\n return [];\n }\n if (!isArray(iteratees)) {\n iteratees = iteratees == null ? [] : [iteratees];\n }\n orders = guard ? undefined : orders;\n if (!isArray(orders)) {\n orders = orders == null ? [] : [orders];\n }\n return baseOrderBy(collection, iteratees, orders);\n }\n\n /**\n * Creates an array of elements split into two groups, the first of which\n * contains elements `predicate` returns truthy for, the second of which\n * contains elements `predicate` returns falsey for. The predicate is\n * invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the array of grouped elements.\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': false },\n * { 'user': 'fred', 'age': 40, 'active': true },\n * { 'user': 'pebbles', 'age': 1, 'active': false }\n * ];\n *\n * _.partition(users, function(o) { return o.active; });\n * // => objects for [['fred'], ['barney', 'pebbles']]\n *\n * // The `_.matches` iteratee shorthand.\n * _.partition(users, { 'age': 1, 'active': false });\n * // => objects for [['pebbles'], ['barney', 'fred']]\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.partition(users, ['active', false]);\n * // => objects for [['barney', 'pebbles'], ['fred']]\n *\n * // The `_.property` iteratee shorthand.\n * _.partition(users, 'active');\n * // => objects for [['fred'], ['barney', 'pebbles']]\n */\n var partition = createAggregator(function(result, value, key) {\n result[key ? 0 : 1].push(value);\n }, function() { return [[], []]; });\n\n /**\n * Reduces `collection` to a value which is the accumulated result of running\n * each element in `collection` thru `iteratee`, where each successive\n * invocation is supplied the return value of the previous. If `accumulator`\n * is not given, the first element of `collection` is used as the initial\n * value. The iteratee is invoked with four arguments:\n * (accumulator, value, index|key, collection).\n *\n * Many lodash methods are guarded to work as iteratees for methods like\n * `_.reduce`, `_.reduceRight`, and `_.transform`.\n *\n * The guarded methods are:\n * `assign`, `defaults`, `defaultsDeep`, `includes`, `merge`, `orderBy`,\n * and `sortBy`\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @returns {*} Returns the accumulated value.\n * @see _.reduceRight\n * @example\n *\n * _.reduce([1, 2], function(sum, n) {\n * return sum + n;\n * }, 0);\n * // => 3\n *\n * _.reduce({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {\n * (result[value] || (result[value] = [])).push(key);\n * return result;\n * }, {});\n * // => { '1': ['a', 'c'], '2': ['b'] } (iteration order is not guaranteed)\n */\n function reduce(collection, iteratee, accumulator) {\n var func = isArray(collection) ? arrayReduce : baseReduce,\n initAccum = arguments.length < 3;\n\n return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEach);\n }\n\n /**\n * This method is like `_.reduce` except that it iterates over elements of\n * `collection` from right to left.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @returns {*} Returns the accumulated value.\n * @see _.reduce\n * @example\n *\n * var array = [[0, 1], [2, 3], [4, 5]];\n *\n * _.reduceRight(array, function(flattened, other) {\n * return flattened.concat(other);\n * }, []);\n * // => [4, 5, 2, 3, 0, 1]\n */\n function reduceRight(collection, iteratee, accumulator) {\n var func = isArray(collection) ? arrayReduceRight : baseReduce,\n initAccum = arguments.length < 3;\n\n return func(collection, getIteratee(iteratee, 4), accumulator, initAccum, baseEachRight);\n }\n\n /**\n * The opposite of `_.filter`; this method returns the elements of `collection`\n * that `predicate` does **not** return truthy for.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n * @see _.filter\n * @example\n *\n * var users = [\n * { 'user': 'barney', 'age': 36, 'active': false },\n * { 'user': 'fred', 'age': 40, 'active': true }\n * ];\n *\n * _.reject(users, function(o) { return !o.active; });\n * // => objects for ['fred']\n *\n * // The `_.matches` iteratee shorthand.\n * _.reject(users, { 'age': 40, 'active': true });\n * // => objects for ['barney']\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.reject(users, ['active', false]);\n * // => objects for ['fred']\n *\n * // The `_.property` iteratee shorthand.\n * _.reject(users, 'active');\n * // => objects for ['barney']\n */\n function reject(collection, predicate) {\n var func = isArray(collection) ? arrayFilter : baseFilter;\n return func(collection, negate(getIteratee(predicate, 3)));\n }\n\n /**\n * Gets a random element from `collection`.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to sample.\n * @returns {*} Returns the random element.\n * @example\n *\n * _.sample([1, 2, 3, 4]);\n * // => 2\n */\n function sample(collection) {\n var func = isArray(collection) ? arraySample : baseSample;\n return func(collection);\n }\n\n /**\n * Gets `n` random elements at unique keys from `collection` up to the\n * size of `collection`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Collection\n * @param {Array|Object} collection The collection to sample.\n * @param {number} [n=1] The number of elements to sample.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the random elements.\n * @example\n *\n * _.sampleSize([1, 2, 3], 2);\n * // => [3, 1]\n *\n * _.sampleSize([1, 2, 3], 4);\n * // => [2, 3, 1]\n */\n function sampleSize(collection, n, guard) {\n if ((guard ? isIterateeCall(collection, n, guard) : n === undefined)) {\n n = 1;\n } else {\n n = toInteger(n);\n }\n var func = isArray(collection) ? arraySampleSize : baseSampleSize;\n return func(collection, n);\n }\n\n /**\n * Creates an array of shuffled values, using a version of the\n * [Fisher-Yates shuffle](https://en.wikipedia.org/wiki/Fisher-Yates_shuffle).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to shuffle.\n * @returns {Array} Returns the new shuffled array.\n * @example\n *\n * _.shuffle([1, 2, 3, 4]);\n * // => [4, 1, 3, 2]\n */\n function shuffle(collection) {\n var func = isArray(collection) ? arrayShuffle : baseShuffle;\n return func(collection);\n }\n\n /**\n * Gets the size of `collection` by returning its length for array-like\n * values or the number of own enumerable string keyed properties for objects.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object|string} collection The collection to inspect.\n * @returns {number} Returns the collection size.\n * @example\n *\n * _.size([1, 2, 3]);\n * // => 3\n *\n * _.size({ 'a': 1, 'b': 2 });\n * // => 2\n *\n * _.size('pebbles');\n * // => 7\n */\n function size(collection) {\n if (collection == null) {\n return 0;\n }\n if (isArrayLike(collection)) {\n return isString(collection) ? stringSize(collection) : collection.length;\n }\n var tag = getTag(collection);\n if (tag == mapTag || tag == setTag) {\n return collection.size;\n }\n return baseKeys(collection).length;\n }\n\n /**\n * Checks if `predicate` returns truthy for **any** element of `collection`.\n * Iteration is stopped once `predicate` returns truthy. The predicate is\n * invoked with three arguments: (value, index|key, collection).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n * @example\n *\n * _.some([null, 0, 'yes', false], Boolean);\n * // => true\n *\n * var users = [\n * { 'user': 'barney', 'active': true },\n * { 'user': 'fred', 'active': false }\n * ];\n *\n * // The `_.matches` iteratee shorthand.\n * _.some(users, { 'user': 'barney', 'active': false });\n * // => false\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.some(users, ['active', false]);\n * // => true\n *\n * // The `_.property` iteratee shorthand.\n * _.some(users, 'active');\n * // => true\n */\n function some(collection, predicate, guard) {\n var func = isArray(collection) ? arraySome : baseSome;\n if (guard && isIterateeCall(collection, predicate, guard)) {\n predicate = undefined;\n }\n return func(collection, getIteratee(predicate, 3));\n }\n\n /**\n * Creates an array of elements, sorted in ascending order by the results of\n * running each element in a collection thru each iteratee. This method\n * performs a stable sort, that is, it preserves the original sort order of\n * equal elements. The iteratees are invoked with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Collection\n * @param {Array|Object} collection The collection to iterate over.\n * @param {...(Function|Function[])} [iteratees=[_.identity]]\n * The iteratees to sort by.\n * @returns {Array} Returns the new sorted array.\n * @example\n *\n * var users = [\n * { 'user': 'fred', 'age': 48 },\n * { 'user': 'barney', 'age': 36 },\n * { 'user': 'fred', 'age': 30 },\n * { 'user': 'barney', 'age': 34 }\n * ];\n *\n * _.sortBy(users, [function(o) { return o.user; }]);\n * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 30]]\n *\n * _.sortBy(users, ['user', 'age']);\n * // => objects for [['barney', 34], ['barney', 36], ['fred', 30], ['fred', 48]]\n */\n var sortBy = baseRest(function(collection, iteratees) {\n if (collection == null) {\n return [];\n }\n var length = iteratees.length;\n if (length > 1 && isIterateeCall(collection, iteratees[0], iteratees[1])) {\n iteratees = [];\n } else if (length > 2 && isIterateeCall(iteratees[0], iteratees[1], iteratees[2])) {\n iteratees = [iteratees[0]];\n }\n return baseOrderBy(collection, baseFlatten(iteratees, 1), []);\n });\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\n var now = ctxNow || function() {\n return root.Date.now();\n };\n\n /*------------------------------------------------------------------------*/\n\n /**\n * The opposite of `_.before`; this method creates a function that invokes\n * `func` once it's called `n` or more times.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {number} n The number of calls before `func` is invoked.\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new restricted function.\n * @example\n *\n * var saves = ['profile', 'settings'];\n *\n * var done = _.after(saves.length, function() {\n * console.log('done saving!');\n * });\n *\n * _.forEach(saves, function(type) {\n * asyncSave({ 'type': type, 'complete': done });\n * });\n * // => Logs 'done saving!' after the two async saves have completed.\n */\n function after(n, func) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n n = toInteger(n);\n return function() {\n if (--n < 1) {\n return func.apply(this, arguments);\n }\n };\n }\n\n /**\n * Creates a function that invokes `func`, with up to `n` arguments,\n * ignoring any additional arguments.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} func The function to cap arguments for.\n * @param {number} [n=func.length] The arity cap.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the new capped function.\n * @example\n *\n * _.map(['6', '8', '10'], _.ary(parseInt, 1));\n * // => [6, 8, 10]\n */\n function ary(func, n, guard) {\n n = guard ? undefined : n;\n n = (func && n == null) ? func.length : n;\n return createWrap(func, WRAP_ARY_FLAG, undefined, undefined, undefined, undefined, n);\n }\n\n /**\n * Creates a function that invokes `func`, with the `this` binding and arguments\n * of the created function, while it's called less than `n` times. Subsequent\n * calls to the created function return the result of the last `func` invocation.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {number} n The number of calls at which `func` is no longer invoked.\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new restricted function.\n * @example\n *\n * jQuery(element).on('click', _.before(5, addContactToList));\n * // => Allows adding up to 4 contacts to the list.\n */\n function before(n, func) {\n var result;\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n n = toInteger(n);\n return function() {\n if (--n > 0) {\n result = func.apply(this, arguments);\n }\n if (n <= 1) {\n func = undefined;\n }\n return result;\n };\n }\n\n /**\n * Creates a function that invokes `func` with the `this` binding of `thisArg`\n * and `partials` prepended to the arguments it receives.\n *\n * The `_.bind.placeholder` value, which defaults to `_` in monolithic builds,\n * may be used as a placeholder for partially applied arguments.\n *\n * **Note:** Unlike native `Function#bind`, this method doesn't set the \"length\"\n * property of bound functions.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to bind.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new bound function.\n * @example\n *\n * function greet(greeting, punctuation) {\n * return greeting + ' ' + this.user + punctuation;\n * }\n *\n * var object = { 'user': 'fred' };\n *\n * var bound = _.bind(greet, object, 'hi');\n * bound('!');\n * // => 'hi fred!'\n *\n * // Bound with placeholders.\n * var bound = _.bind(greet, object, _, '!');\n * bound('hi');\n * // => 'hi fred!'\n */\n var bind = baseRest(function(func, thisArg, partials) {\n var bitmask = WRAP_BIND_FLAG;\n if (partials.length) {\n var holders = replaceHolders(partials, getHolder(bind));\n bitmask |= WRAP_PARTIAL_FLAG;\n }\n return createWrap(func, bitmask, thisArg, partials, holders);\n });\n\n /**\n * Creates a function that invokes the method at `object[key]` with `partials`\n * prepended to the arguments it receives.\n *\n * This method differs from `_.bind` by allowing bound functions to reference\n * methods that may be redefined or don't yet exist. See\n * [Peter Michaux's article](http://peter.michaux.ca/articles/lazy-function-definition-pattern)\n * for more details.\n *\n * The `_.bindKey.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for partially applied arguments.\n *\n * @static\n * @memberOf _\n * @since 0.10.0\n * @category Function\n * @param {Object} object The object to invoke the method on.\n * @param {string} key The key of the method.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new bound function.\n * @example\n *\n * var object = {\n * 'user': 'fred',\n * 'greet': function(greeting, punctuation) {\n * return greeting + ' ' + this.user + punctuation;\n * }\n * };\n *\n * var bound = _.bindKey(object, 'greet', 'hi');\n * bound('!');\n * // => 'hi fred!'\n *\n * object.greet = function(greeting, punctuation) {\n * return greeting + 'ya ' + this.user + punctuation;\n * };\n *\n * bound('!');\n * // => 'hiya fred!'\n *\n * // Bound with placeholders.\n * var bound = _.bindKey(object, 'greet', _, '!');\n * bound('hi');\n * // => 'hiya fred!'\n */\n var bindKey = baseRest(function(object, key, partials) {\n var bitmask = WRAP_BIND_FLAG | WRAP_BIND_KEY_FLAG;\n if (partials.length) {\n var holders = replaceHolders(partials, getHolder(bindKey));\n bitmask |= WRAP_PARTIAL_FLAG;\n }\n return createWrap(key, bitmask, object, partials, holders);\n });\n\n /**\n * Creates a function that accepts arguments of `func` and either invokes\n * `func` returning its result, if at least `arity` number of arguments have\n * been provided, or returns a function that accepts the remaining `func`\n * arguments, and so on. The arity of `func` may be specified if `func.length`\n * is not sufficient.\n *\n * The `_.curry.placeholder` value, which defaults to `_` in monolithic builds,\n * may be used as a placeholder for provided arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of curried functions.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Function\n * @param {Function} func The function to curry.\n * @param {number} [arity=func.length] The arity of `func`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the new curried function.\n * @example\n *\n * var abc = function(a, b, c) {\n * return [a, b, c];\n * };\n *\n * var curried = _.curry(abc);\n *\n * curried(1)(2)(3);\n * // => [1, 2, 3]\n *\n * curried(1, 2)(3);\n * // => [1, 2, 3]\n *\n * curried(1, 2, 3);\n * // => [1, 2, 3]\n *\n * // Curried with placeholders.\n * curried(1)(_, 3)(2);\n * // => [1, 2, 3]\n */\n function curry(func, arity, guard) {\n arity = guard ? undefined : arity;\n var result = createWrap(func, WRAP_CURRY_FLAG, undefined, undefined, undefined, undefined, undefined, arity);\n result.placeholder = curry.placeholder;\n return result;\n }\n\n /**\n * This method is like `_.curry` except that arguments are applied to `func`\n * in the manner of `_.partialRight` instead of `_.partial`.\n *\n * The `_.curryRight.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for provided arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of curried functions.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} func The function to curry.\n * @param {number} [arity=func.length] The arity of `func`.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the new curried function.\n * @example\n *\n * var abc = function(a, b, c) {\n * return [a, b, c];\n * };\n *\n * var curried = _.curryRight(abc);\n *\n * curried(3)(2)(1);\n * // => [1, 2, 3]\n *\n * curried(2, 3)(1);\n * // => [1, 2, 3]\n *\n * curried(1, 2, 3);\n * // => [1, 2, 3]\n *\n * // Curried with placeholders.\n * curried(3)(1, _)(2);\n * // => [1, 2, 3]\n */\n function curryRight(func, arity, guard) {\n arity = guard ? undefined : arity;\n var result = createWrap(func, WRAP_CURRY_RIGHT_FLAG, undefined, undefined, undefined, undefined, undefined, arity);\n result.placeholder = curryRight.placeholder;\n return result;\n }\n\n /**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\n function debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n timeWaiting = wait - timeSinceLastCall;\n\n return maxing\n ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)\n : timeWaiting;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n clearTimeout(timerId);\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n }\n\n /**\n * Defers invoking the `func` until the current call stack has cleared. Any\n * additional arguments are provided to `func` when it's invoked.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to defer.\n * @param {...*} [args] The arguments to invoke `func` with.\n * @returns {number} Returns the timer id.\n * @example\n *\n * _.defer(function(text) {\n * console.log(text);\n * }, 'deferred');\n * // => Logs 'deferred' after one millisecond.\n */\n var defer = baseRest(function(func, args) {\n return baseDelay(func, 1, args);\n });\n\n /**\n * Invokes `func` after `wait` milliseconds. Any additional arguments are\n * provided to `func` when it's invoked.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to delay.\n * @param {number} wait The number of milliseconds to delay invocation.\n * @param {...*} [args] The arguments to invoke `func` with.\n * @returns {number} Returns the timer id.\n * @example\n *\n * _.delay(function(text) {\n * console.log(text);\n * }, 1000, 'later');\n * // => Logs 'later' after one second.\n */\n var delay = baseRest(function(func, wait, args) {\n return baseDelay(func, toNumber(wait) || 0, args);\n });\n\n /**\n * Creates a function that invokes `func` with arguments reversed.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Function\n * @param {Function} func The function to flip arguments for.\n * @returns {Function} Returns the new flipped function.\n * @example\n *\n * var flipped = _.flip(function() {\n * return _.toArray(arguments);\n * });\n *\n * flipped('a', 'b', 'c', 'd');\n * // => ['d', 'c', 'b', 'a']\n */\n function flip(func) {\n return createWrap(func, WRAP_FLIP_FLAG);\n }\n\n /**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\n function memoize(func, resolver) {\n if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result) || cache;\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n }\n\n // Expose `MapCache`.\n memoize.Cache = MapCache;\n\n /**\n * Creates a function that negates the result of the predicate `func`. The\n * `func` predicate is invoked with the `this` binding and arguments of the\n * created function.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} predicate The predicate to negate.\n * @returns {Function} Returns the new negated function.\n * @example\n *\n * function isEven(n) {\n * return n % 2 == 0;\n * }\n *\n * _.filter([1, 2, 3, 4, 5, 6], _.negate(isEven));\n * // => [1, 3, 5]\n */\n function negate(predicate) {\n if (typeof predicate != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n return function() {\n var args = arguments;\n switch (args.length) {\n case 0: return !predicate.call(this);\n case 1: return !predicate.call(this, args[0]);\n case 2: return !predicate.call(this, args[0], args[1]);\n case 3: return !predicate.call(this, args[0], args[1], args[2]);\n }\n return !predicate.apply(this, args);\n };\n }\n\n /**\n * Creates a function that is restricted to invoking `func` once. Repeat calls\n * to the function return the value of the first invocation. The `func` is\n * invoked with the `this` binding and arguments of the created function.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new restricted function.\n * @example\n *\n * var initialize = _.once(createApplication);\n * initialize();\n * initialize();\n * // => `createApplication` is invoked once\n */\n function once(func) {\n return before(2, func);\n }\n\n /**\n * Creates a function that invokes `func` with its arguments transformed.\n *\n * @static\n * @since 4.0.0\n * @memberOf _\n * @category Function\n * @param {Function} func The function to wrap.\n * @param {...(Function|Function[])} [transforms=[_.identity]]\n * The argument transforms.\n * @returns {Function} Returns the new function.\n * @example\n *\n * function doubled(n) {\n * return n * 2;\n * }\n *\n * function square(n) {\n * return n * n;\n * }\n *\n * var func = _.overArgs(function(x, y) {\n * return [x, y];\n * }, [square, doubled]);\n *\n * func(9, 3);\n * // => [81, 6]\n *\n * func(10, 5);\n * // => [100, 10]\n */\n var overArgs = castRest(function(func, transforms) {\n transforms = (transforms.length == 1 && isArray(transforms[0]))\n ? arrayMap(transforms[0], baseUnary(getIteratee()))\n : arrayMap(baseFlatten(transforms, 1), baseUnary(getIteratee()));\n\n var funcsLength = transforms.length;\n return baseRest(function(args) {\n var index = -1,\n length = nativeMin(args.length, funcsLength);\n\n while (++index < length) {\n args[index] = transforms[index].call(this, args[index]);\n }\n return apply(func, this, args);\n });\n });\n\n /**\n * Creates a function that invokes `func` with `partials` prepended to the\n * arguments it receives. This method is like `_.bind` except it does **not**\n * alter the `this` binding.\n *\n * The `_.partial.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for partially applied arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of partially\n * applied functions.\n *\n * @static\n * @memberOf _\n * @since 0.2.0\n * @category Function\n * @param {Function} func The function to partially apply arguments to.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new partially applied function.\n * @example\n *\n * function greet(greeting, name) {\n * return greeting + ' ' + name;\n * }\n *\n * var sayHelloTo = _.partial(greet, 'hello');\n * sayHelloTo('fred');\n * // => 'hello fred'\n *\n * // Partially applied with placeholders.\n * var greetFred = _.partial(greet, _, 'fred');\n * greetFred('hi');\n * // => 'hi fred'\n */\n var partial = baseRest(function(func, partials) {\n var holders = replaceHolders(partials, getHolder(partial));\n return createWrap(func, WRAP_PARTIAL_FLAG, undefined, partials, holders);\n });\n\n /**\n * This method is like `_.partial` except that partially applied arguments\n * are appended to the arguments it receives.\n *\n * The `_.partialRight.placeholder` value, which defaults to `_` in monolithic\n * builds, may be used as a placeholder for partially applied arguments.\n *\n * **Note:** This method doesn't set the \"length\" property of partially\n * applied functions.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Function\n * @param {Function} func The function to partially apply arguments to.\n * @param {...*} [partials] The arguments to be partially applied.\n * @returns {Function} Returns the new partially applied function.\n * @example\n *\n * function greet(greeting, name) {\n * return greeting + ' ' + name;\n * }\n *\n * var greetFred = _.partialRight(greet, 'fred');\n * greetFred('hi');\n * // => 'hi fred'\n *\n * // Partially applied with placeholders.\n * var sayHelloTo = _.partialRight(greet, 'hello', _);\n * sayHelloTo('fred');\n * // => 'hello fred'\n */\n var partialRight = baseRest(function(func, partials) {\n var holders = replaceHolders(partials, getHolder(partialRight));\n return createWrap(func, WRAP_PARTIAL_RIGHT_FLAG, undefined, partials, holders);\n });\n\n /**\n * Creates a function that invokes `func` with arguments arranged according\n * to the specified `indexes` where the argument value at the first index is\n * provided as the first argument, the argument value at the second index is\n * provided as the second argument, and so on.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Function\n * @param {Function} func The function to rearrange arguments for.\n * @param {...(number|number[])} indexes The arranged argument indexes.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var rearged = _.rearg(function(a, b, c) {\n * return [a, b, c];\n * }, [2, 0, 1]);\n *\n * rearged('b', 'c', 'a')\n * // => ['a', 'b', 'c']\n */\n var rearg = flatRest(function(func, indexes) {\n return createWrap(func, WRAP_REARG_FLAG, undefined, undefined, undefined, indexes);\n });\n\n /**\n * Creates a function that invokes `func` with the `this` binding of the\n * created function and arguments from `start` and beyond provided as\n * an array.\n *\n * **Note:** This method is based on the\n * [rest parameter](https://mdn.io/rest_parameters).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Function\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var say = _.rest(function(what, names) {\n * return what + ' ' + _.initial(names).join(', ') +\n * (_.size(names) > 1 ? ', & ' : '') + _.last(names);\n * });\n *\n * say('hello', 'fred', 'barney', 'pebbles');\n * // => 'hello fred, barney, & pebbles'\n */\n function rest(func, start) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n start = start === undefined ? start : toInteger(start);\n return baseRest(func, start);\n }\n\n /**\n * Creates a function that invokes `func` with the `this` binding of the\n * create function and an array of arguments much like\n * [`Function#apply`](http://www.ecma-international.org/ecma-262/7.0/#sec-function.prototype.apply).\n *\n * **Note:** This method is based on the\n * [spread operator](https://mdn.io/spread_operator).\n *\n * @static\n * @memberOf _\n * @since 3.2.0\n * @category Function\n * @param {Function} func The function to spread arguments over.\n * @param {number} [start=0] The start position of the spread.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var say = _.spread(function(who, what) {\n * return who + ' says ' + what;\n * });\n *\n * say(['fred', 'hello']);\n * // => 'fred says hello'\n *\n * var numbers = Promise.all([\n * Promise.resolve(40),\n * Promise.resolve(36)\n * ]);\n *\n * numbers.then(_.spread(function(x, y) {\n * return x + y;\n * }));\n * // => a Promise of 76\n */\n function spread(func, start) {\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n start = start == null ? 0 : nativeMax(toInteger(start), 0);\n return baseRest(function(args) {\n var array = args[start],\n otherArgs = castSlice(args, 0, start);\n\n if (array) {\n arrayPush(otherArgs, array);\n }\n return apply(func, this, otherArgs);\n });\n }\n\n /**\n * Creates a throttled function that only invokes `func` at most once per\n * every `wait` milliseconds. The throttled function comes with a `cancel`\n * method to cancel delayed `func` invocations and a `flush` method to\n * immediately invoke them. Provide `options` to indicate whether `func`\n * should be invoked on the leading and/or trailing edge of the `wait`\n * timeout. The `func` is invoked with the last arguments provided to the\n * throttled function. Subsequent calls to the throttled function return the\n * result of the last `func` invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the throttled function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.throttle` and `_.debounce`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to throttle.\n * @param {number} [wait=0] The number of milliseconds to throttle invocations to.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=true]\n * Specify invoking on the leading edge of the timeout.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new throttled function.\n * @example\n *\n * // Avoid excessively updating the position while scrolling.\n * jQuery(window).on('scroll', _.throttle(updatePosition, 100));\n *\n * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes.\n * var throttled = _.throttle(renewToken, 300000, { 'trailing': false });\n * jQuery(element).on('click', throttled);\n *\n * // Cancel the trailing throttled invocation.\n * jQuery(window).on('popstate', throttled.cancel);\n */\n function throttle(func, wait, options) {\n var leading = true,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n if (isObject(options)) {\n leading = 'leading' in options ? !!options.leading : leading;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n return debounce(func, wait, {\n 'leading': leading,\n 'maxWait': wait,\n 'trailing': trailing\n });\n }\n\n /**\n * Creates a function that accepts up to one argument, ignoring any\n * additional arguments.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Function\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n * @example\n *\n * _.map(['6', '8', '10'], _.unary(parseInt));\n * // => [6, 8, 10]\n */\n function unary(func) {\n return ary(func, 1);\n }\n\n /**\n * Creates a function that provides `value` to `wrapper` as its first\n * argument. Any additional arguments provided to the function are appended\n * to those provided to the `wrapper`. The wrapper is invoked with the `this`\n * binding of the created function.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {*} value The value to wrap.\n * @param {Function} [wrapper=identity] The wrapper function.\n * @returns {Function} Returns the new function.\n * @example\n *\n * var p = _.wrap(_.escape, function(func, text) {\n * return '

' + func(text) + '

';\n * });\n *\n * p('fred, barney, & pebbles');\n * // => '

fred, barney, & pebbles

'\n */\n function wrap(value, wrapper) {\n return partial(castFunction(wrapper), value);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Casts `value` as an array if it's not one.\n *\n * @static\n * @memberOf _\n * @since 4.4.0\n * @category Lang\n * @param {*} value The value to inspect.\n * @returns {Array} Returns the cast array.\n * @example\n *\n * _.castArray(1);\n * // => [1]\n *\n * _.castArray({ 'a': 1 });\n * // => [{ 'a': 1 }]\n *\n * _.castArray('abc');\n * // => ['abc']\n *\n * _.castArray(null);\n * // => [null]\n *\n * _.castArray(undefined);\n * // => [undefined]\n *\n * _.castArray();\n * // => []\n *\n * var array = [1, 2, 3];\n * console.log(_.castArray(array) === array);\n * // => true\n */\n function castArray() {\n if (!arguments.length) {\n return [];\n }\n var value = arguments[0];\n return isArray(value) ? value : [value];\n }\n\n /**\n * Creates a shallow clone of `value`.\n *\n * **Note:** This method is loosely based on the\n * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm)\n * and supports cloning arrays, array buffers, booleans, date objects, maps,\n * numbers, `Object` objects, regexes, sets, strings, symbols, and typed\n * arrays. The own enumerable properties of `arguments` objects are cloned\n * as plain objects. An empty object is returned for uncloneable values such\n * as error objects, functions, DOM nodes, and WeakMaps.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to clone.\n * @returns {*} Returns the cloned value.\n * @see _.cloneDeep\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var shallow = _.clone(objects);\n * console.log(shallow[0] === objects[0]);\n * // => true\n */\n function clone(value) {\n return baseClone(value, CLONE_SYMBOLS_FLAG);\n }\n\n /**\n * This method is like `_.clone` except that it accepts `customizer` which\n * is invoked to produce the cloned value. If `customizer` returns `undefined`,\n * cloning is handled by the method instead. The `customizer` is invoked with\n * up to four arguments; (value [, index|key, object, stack]).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to clone.\n * @param {Function} [customizer] The function to customize cloning.\n * @returns {*} Returns the cloned value.\n * @see _.cloneDeepWith\n * @example\n *\n * function customizer(value) {\n * if (_.isElement(value)) {\n * return value.cloneNode(false);\n * }\n * }\n *\n * var el = _.cloneWith(document.body, customizer);\n *\n * console.log(el === document.body);\n * // => false\n * console.log(el.nodeName);\n * // => 'BODY'\n * console.log(el.childNodes.length);\n * // => 0\n */\n function cloneWith(value, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return baseClone(value, CLONE_SYMBOLS_FLAG, customizer);\n }\n\n /**\n * This method is like `_.clone` except that it recursively clones `value`.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Lang\n * @param {*} value The value to recursively clone.\n * @returns {*} Returns the deep cloned value.\n * @see _.clone\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var deep = _.cloneDeep(objects);\n * console.log(deep[0] === objects[0]);\n * // => false\n */\n function cloneDeep(value) {\n return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);\n }\n\n /**\n * This method is like `_.cloneWith` except that it recursively clones `value`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to recursively clone.\n * @param {Function} [customizer] The function to customize cloning.\n * @returns {*} Returns the deep cloned value.\n * @see _.cloneWith\n * @example\n *\n * function customizer(value) {\n * if (_.isElement(value)) {\n * return value.cloneNode(true);\n * }\n * }\n *\n * var el = _.cloneDeepWith(document.body, customizer);\n *\n * console.log(el === document.body);\n * // => false\n * console.log(el.nodeName);\n * // => 'BODY'\n * console.log(el.childNodes.length);\n * // => 20\n */\n function cloneDeepWith(value, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG, customizer);\n }\n\n /**\n * Checks if `object` conforms to `source` by invoking the predicate\n * properties of `source` with the corresponding property values of `object`.\n *\n * **Note:** This method is equivalent to `_.conforms` when `source` is\n * partially applied.\n *\n * @static\n * @memberOf _\n * @since 4.14.0\n * @category Lang\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property predicates to conform to.\n * @returns {boolean} Returns `true` if `object` conforms, else `false`.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n *\n * _.conformsTo(object, { 'b': function(n) { return n > 1; } });\n * // => true\n *\n * _.conformsTo(object, { 'b': function(n) { return n > 2; } });\n * // => false\n */\n function conformsTo(object, source) {\n return source == null || baseConformsTo(object, source, keys(source));\n }\n\n /**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\n function eq(value, other) {\n return value === other || (value !== value && other !== other);\n }\n\n /**\n * Checks if `value` is greater than `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is greater than `other`,\n * else `false`.\n * @see _.lt\n * @example\n *\n * _.gt(3, 1);\n * // => true\n *\n * _.gt(3, 3);\n * // => false\n *\n * _.gt(1, 3);\n * // => false\n */\n var gt = createRelationalOperation(baseGt);\n\n /**\n * Checks if `value` is greater than or equal to `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is greater than or equal to\n * `other`, else `false`.\n * @see _.lte\n * @example\n *\n * _.gte(3, 1);\n * // => true\n *\n * _.gte(3, 3);\n * // => true\n *\n * _.gte(1, 3);\n * // => false\n */\n var gte = createRelationalOperation(function(value, other) {\n return value >= other;\n });\n\n /**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\n var isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n };\n\n /**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\n var isArray = Array.isArray;\n\n /**\n * Checks if `value` is classified as an `ArrayBuffer` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array buffer, else `false`.\n * @example\n *\n * _.isArrayBuffer(new ArrayBuffer(2));\n * // => true\n *\n * _.isArrayBuffer(new Array(2));\n * // => false\n */\n var isArrayBuffer = nodeIsArrayBuffer ? baseUnary(nodeIsArrayBuffer) : baseIsArrayBuffer;\n\n /**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\n function isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n }\n\n /**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\n function isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n }\n\n /**\n * Checks if `value` is classified as a boolean primitive or object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a boolean, else `false`.\n * @example\n *\n * _.isBoolean(false);\n * // => true\n *\n * _.isBoolean(null);\n * // => false\n */\n function isBoolean(value) {\n return value === true || value === false ||\n (isObjectLike(value) && baseGetTag(value) == boolTag);\n }\n\n /**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\n var isBuffer = nativeIsBuffer || stubFalse;\n\n /**\n * Checks if `value` is classified as a `Date` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a date object, else `false`.\n * @example\n *\n * _.isDate(new Date);\n * // => true\n *\n * _.isDate('Mon April 23 2012');\n * // => false\n */\n var isDate = nodeIsDate ? baseUnary(nodeIsDate) : baseIsDate;\n\n /**\n * Checks if `value` is likely a DOM element.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a DOM element, else `false`.\n * @example\n *\n * _.isElement(document.body);\n * // => true\n *\n * _.isElement('');\n * // => false\n */\n function isElement(value) {\n return isObjectLike(value) && value.nodeType === 1 && !isPlainObject(value);\n }\n\n /**\n * Checks if `value` is an empty object, collection, map, or set.\n *\n * Objects are considered empty if they have no own enumerable string keyed\n * properties.\n *\n * Array-like values such as `arguments` objects, arrays, buffers, strings, or\n * jQuery-like collections are considered empty if they have a `length` of `0`.\n * Similarly, maps and sets are considered empty if they have a `size` of `0`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is empty, else `false`.\n * @example\n *\n * _.isEmpty(null);\n * // => true\n *\n * _.isEmpty(true);\n * // => true\n *\n * _.isEmpty(1);\n * // => true\n *\n * _.isEmpty([1, 2, 3]);\n * // => false\n *\n * _.isEmpty({ 'a': 1 });\n * // => false\n */\n function isEmpty(value) {\n if (value == null) {\n return true;\n }\n if (isArrayLike(value) &&\n (isArray(value) || typeof value == 'string' || typeof value.splice == 'function' ||\n isBuffer(value) || isTypedArray(value) || isArguments(value))) {\n return !value.length;\n }\n var tag = getTag(value);\n if (tag == mapTag || tag == setTag) {\n return !value.size;\n }\n if (isPrototype(value)) {\n return !baseKeys(value).length;\n }\n for (var key in value) {\n if (hasOwnProperty.call(value, key)) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\n function isEqual(value, other) {\n return baseIsEqual(value, other);\n }\n\n /**\n * This method is like `_.isEqual` except that it accepts `customizer` which\n * is invoked to compare values. If `customizer` returns `undefined`, comparisons\n * are handled by the method instead. The `customizer` is invoked with up to\n * six arguments: (objValue, othValue [, index|key, object, other, stack]).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * function isGreeting(value) {\n * return /^h(?:i|ello)$/.test(value);\n * }\n *\n * function customizer(objValue, othValue) {\n * if (isGreeting(objValue) && isGreeting(othValue)) {\n * return true;\n * }\n * }\n *\n * var array = ['hello', 'goodbye'];\n * var other = ['hi', 'goodbye'];\n *\n * _.isEqualWith(array, other, customizer);\n * // => true\n */\n function isEqualWith(value, other, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n var result = customizer ? customizer(value, other) : undefined;\n return result === undefined ? baseIsEqual(value, other, undefined, customizer) : !!result;\n }\n\n /**\n * Checks if `value` is an `Error`, `EvalError`, `RangeError`, `ReferenceError`,\n * `SyntaxError`, `TypeError`, or `URIError` object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an error object, else `false`.\n * @example\n *\n * _.isError(new Error);\n * // => true\n *\n * _.isError(Error);\n * // => false\n */\n function isError(value) {\n if (!isObjectLike(value)) {\n return false;\n }\n var tag = baseGetTag(value);\n return tag == errorTag || tag == domExcTag ||\n (typeof value.message == 'string' && typeof value.name == 'string' && !isPlainObject(value));\n }\n\n /**\n * Checks if `value` is a finite primitive number.\n *\n * **Note:** This method is based on\n * [`Number.isFinite`](https://mdn.io/Number/isFinite).\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a finite number, else `false`.\n * @example\n *\n * _.isFinite(3);\n * // => true\n *\n * _.isFinite(Number.MIN_VALUE);\n * // => true\n *\n * _.isFinite(Infinity);\n * // => false\n *\n * _.isFinite('3');\n * // => false\n */\n function isFinite(value) {\n return typeof value == 'number' && nativeIsFinite(value);\n }\n\n /**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\n function isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n }\n\n /**\n * Checks if `value` is an integer.\n *\n * **Note:** This method is based on\n * [`Number.isInteger`](https://mdn.io/Number/isInteger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an integer, else `false`.\n * @example\n *\n * _.isInteger(3);\n * // => true\n *\n * _.isInteger(Number.MIN_VALUE);\n * // => false\n *\n * _.isInteger(Infinity);\n * // => false\n *\n * _.isInteger('3');\n * // => false\n */\n function isInteger(value) {\n return typeof value == 'number' && value == toInteger(value);\n }\n\n /**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\n function isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n }\n\n /**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\n function isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n }\n\n /**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\n function isObjectLike(value) {\n return value != null && typeof value == 'object';\n }\n\n /**\n * Checks if `value` is classified as a `Map` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n * @example\n *\n * _.isMap(new Map);\n * // => true\n *\n * _.isMap(new WeakMap);\n * // => false\n */\n var isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap;\n\n /**\n * Performs a partial deep comparison between `object` and `source` to\n * determine if `object` contains equivalent property values.\n *\n * **Note:** This method is equivalent to `_.matches` when `source` is\n * partially applied.\n *\n * Partial comparisons will match empty array and empty object `source`\n * values against any array or object value, respectively. See `_.isEqual`\n * for a list of supported value comparisons.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n *\n * _.isMatch(object, { 'b': 2 });\n * // => true\n *\n * _.isMatch(object, { 'b': 1 });\n * // => false\n */\n function isMatch(object, source) {\n return object === source || baseIsMatch(object, source, getMatchData(source));\n }\n\n /**\n * This method is like `_.isMatch` except that it accepts `customizer` which\n * is invoked to compare values. If `customizer` returns `undefined`, comparisons\n * are handled by the method instead. The `customizer` is invoked with five\n * arguments: (objValue, srcValue, index|key, object, source).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {Object} object The object to inspect.\n * @param {Object} source The object of property values to match.\n * @param {Function} [customizer] The function to customize comparisons.\n * @returns {boolean} Returns `true` if `object` is a match, else `false`.\n * @example\n *\n * function isGreeting(value) {\n * return /^h(?:i|ello)$/.test(value);\n * }\n *\n * function customizer(objValue, srcValue) {\n * if (isGreeting(objValue) && isGreeting(srcValue)) {\n * return true;\n * }\n * }\n *\n * var object = { 'greeting': 'hello' };\n * var source = { 'greeting': 'hi' };\n *\n * _.isMatchWith(object, source, customizer);\n * // => true\n */\n function isMatchWith(object, source, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return baseIsMatch(object, source, getMatchData(source), customizer);\n }\n\n /**\n * Checks if `value` is `NaN`.\n *\n * **Note:** This method is based on\n * [`Number.isNaN`](https://mdn.io/Number/isNaN) and is not the same as\n * global [`isNaN`](https://mdn.io/isNaN) which returns `true` for\n * `undefined` and other non-number values.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.\n * @example\n *\n * _.isNaN(NaN);\n * // => true\n *\n * _.isNaN(new Number(NaN));\n * // => true\n *\n * isNaN(undefined);\n * // => true\n *\n * _.isNaN(undefined);\n * // => false\n */\n function isNaN(value) {\n // An `NaN` primitive is the only value that is not equal to itself.\n // Perform the `toStringTag` check first to avoid errors with some\n // ActiveX objects in IE.\n return isNumber(value) && value != +value;\n }\n\n /**\n * Checks if `value` is a pristine native function.\n *\n * **Note:** This method can't reliably detect native functions in the presence\n * of the core-js package because core-js circumvents this kind of detection.\n * Despite multiple requests, the core-js maintainer has made it clear: any\n * attempt to fix the detection will be obstructed. As a result, we're left\n * with little choice but to throw an error. Unfortunately, this also affects\n * packages, like [babel-polyfill](https://www.npmjs.com/package/babel-polyfill),\n * which rely on core-js.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n * @example\n *\n * _.isNative(Array.prototype.push);\n * // => true\n *\n * _.isNative(_);\n * // => false\n */\n function isNative(value) {\n if (isMaskable(value)) {\n throw new Error(CORE_ERROR_TEXT);\n }\n return baseIsNative(value);\n }\n\n /**\n * Checks if `value` is `null`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `null`, else `false`.\n * @example\n *\n * _.isNull(null);\n * // => true\n *\n * _.isNull(void 0);\n * // => false\n */\n function isNull(value) {\n return value === null;\n }\n\n /**\n * Checks if `value` is `null` or `undefined`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is nullish, else `false`.\n * @example\n *\n * _.isNil(null);\n * // => true\n *\n * _.isNil(void 0);\n * // => true\n *\n * _.isNil(NaN);\n * // => false\n */\n function isNil(value) {\n return value == null;\n }\n\n /**\n * Checks if `value` is classified as a `Number` primitive or object.\n *\n * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are\n * classified as numbers, use the `_.isFinite` method.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a number, else `false`.\n * @example\n *\n * _.isNumber(3);\n * // => true\n *\n * _.isNumber(Number.MIN_VALUE);\n * // => true\n *\n * _.isNumber(Infinity);\n * // => true\n *\n * _.isNumber('3');\n * // => false\n */\n function isNumber(value) {\n return typeof value == 'number' ||\n (isObjectLike(value) && baseGetTag(value) == numberTag);\n }\n\n /**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\n function isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n }\n\n /**\n * Checks if `value` is classified as a `RegExp` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a regexp, else `false`.\n * @example\n *\n * _.isRegExp(/abc/);\n * // => true\n *\n * _.isRegExp('/abc/');\n * // => false\n */\n var isRegExp = nodeIsRegExp ? baseUnary(nodeIsRegExp) : baseIsRegExp;\n\n /**\n * Checks if `value` is a safe integer. An integer is safe if it's an IEEE-754\n * double precision number which isn't the result of a rounded unsafe integer.\n *\n * **Note:** This method is based on\n * [`Number.isSafeInteger`](https://mdn.io/Number/isSafeInteger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a safe integer, else `false`.\n * @example\n *\n * _.isSafeInteger(3);\n * // => true\n *\n * _.isSafeInteger(Number.MIN_VALUE);\n * // => false\n *\n * _.isSafeInteger(Infinity);\n * // => false\n *\n * _.isSafeInteger('3');\n * // => false\n */\n function isSafeInteger(value) {\n return isInteger(value) && value >= -MAX_SAFE_INTEGER && value <= MAX_SAFE_INTEGER;\n }\n\n /**\n * Checks if `value` is classified as a `Set` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n * @example\n *\n * _.isSet(new Set);\n * // => true\n *\n * _.isSet(new WeakSet);\n * // => false\n */\n var isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;\n\n /**\n * Checks if `value` is classified as a `String` primitive or object.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a string, else `false`.\n * @example\n *\n * _.isString('abc');\n * // => true\n *\n * _.isString(1);\n * // => false\n */\n function isString(value) {\n return typeof value == 'string' ||\n (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag);\n }\n\n /**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\n function isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n }\n\n /**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\n var isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\n /**\n * Checks if `value` is `undefined`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `undefined`, else `false`.\n * @example\n *\n * _.isUndefined(void 0);\n * // => true\n *\n * _.isUndefined(null);\n * // => false\n */\n function isUndefined(value) {\n return value === undefined;\n }\n\n /**\n * Checks if `value` is classified as a `WeakMap` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a weak map, else `false`.\n * @example\n *\n * _.isWeakMap(new WeakMap);\n * // => true\n *\n * _.isWeakMap(new Map);\n * // => false\n */\n function isWeakMap(value) {\n return isObjectLike(value) && getTag(value) == weakMapTag;\n }\n\n /**\n * Checks if `value` is classified as a `WeakSet` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a weak set, else `false`.\n * @example\n *\n * _.isWeakSet(new WeakSet);\n * // => true\n *\n * _.isWeakSet(new Set);\n * // => false\n */\n function isWeakSet(value) {\n return isObjectLike(value) && baseGetTag(value) == weakSetTag;\n }\n\n /**\n * Checks if `value` is less than `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is less than `other`,\n * else `false`.\n * @see _.gt\n * @example\n *\n * _.lt(1, 3);\n * // => true\n *\n * _.lt(3, 3);\n * // => false\n *\n * _.lt(3, 1);\n * // => false\n */\n var lt = createRelationalOperation(baseLt);\n\n /**\n * Checks if `value` is less than or equal to `other`.\n *\n * @static\n * @memberOf _\n * @since 3.9.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if `value` is less than or equal to\n * `other`, else `false`.\n * @see _.gte\n * @example\n *\n * _.lte(1, 3);\n * // => true\n *\n * _.lte(3, 3);\n * // => true\n *\n * _.lte(3, 1);\n * // => false\n */\n var lte = createRelationalOperation(function(value, other) {\n return value <= other;\n });\n\n /**\n * Converts `value` to an array.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Array} Returns the converted array.\n * @example\n *\n * _.toArray({ 'a': 1, 'b': 2 });\n * // => [1, 2]\n *\n * _.toArray('abc');\n * // => ['a', 'b', 'c']\n *\n * _.toArray(1);\n * // => []\n *\n * _.toArray(null);\n * // => []\n */\n function toArray(value) {\n if (!value) {\n return [];\n }\n if (isArrayLike(value)) {\n return isString(value) ? stringToArray(value) : copyArray(value);\n }\n if (symIterator && value[symIterator]) {\n return iteratorToArray(value[symIterator]());\n }\n var tag = getTag(value),\n func = tag == mapTag ? mapToArray : (tag == setTag ? setToArray : values);\n\n return func(value);\n }\n\n /**\n * Converts `value` to a finite number.\n *\n * @static\n * @memberOf _\n * @since 4.12.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted number.\n * @example\n *\n * _.toFinite(3.2);\n * // => 3.2\n *\n * _.toFinite(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toFinite(Infinity);\n * // => 1.7976931348623157e+308\n *\n * _.toFinite('3.2');\n * // => 3.2\n */\n function toFinite(value) {\n if (!value) {\n return value === 0 ? value : 0;\n }\n value = toNumber(value);\n if (value === INFINITY || value === -INFINITY) {\n var sign = (value < 0 ? -1 : 1);\n return sign * MAX_INTEGER;\n }\n return value === value ? value : 0;\n }\n\n /**\n * Converts `value` to an integer.\n *\n * **Note:** This method is loosely based on\n * [`ToInteger`](http://www.ecma-international.org/ecma-262/7.0/#sec-tointeger).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toInteger(3.2);\n * // => 3\n *\n * _.toInteger(Number.MIN_VALUE);\n * // => 0\n *\n * _.toInteger(Infinity);\n * // => 1.7976931348623157e+308\n *\n * _.toInteger('3.2');\n * // => 3\n */\n function toInteger(value) {\n var result = toFinite(value),\n remainder = result % 1;\n\n return result === result ? (remainder ? result - remainder : result) : 0;\n }\n\n /**\n * Converts `value` to an integer suitable for use as the length of an\n * array-like object.\n *\n * **Note:** This method is based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toLength(3.2);\n * // => 3\n *\n * _.toLength(Number.MIN_VALUE);\n * // => 0\n *\n * _.toLength(Infinity);\n * // => 4294967295\n *\n * _.toLength('3.2');\n * // => 3\n */\n function toLength(value) {\n return value ? baseClamp(toInteger(value), 0, MAX_ARRAY_LENGTH) : 0;\n }\n\n /**\n * Converts `value` to a number.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to process.\n * @returns {number} Returns the number.\n * @example\n *\n * _.toNumber(3.2);\n * // => 3.2\n *\n * _.toNumber(Number.MIN_VALUE);\n * // => 5e-324\n *\n * _.toNumber(Infinity);\n * // => Infinity\n *\n * _.toNumber('3.2');\n * // => 3.2\n */\n function toNumber(value) {\n if (typeof value == 'number') {\n return value;\n }\n if (isSymbol(value)) {\n return NAN;\n }\n if (isObject(value)) {\n var other = typeof value.valueOf == 'function' ? value.valueOf() : value;\n value = isObject(other) ? (other + '') : other;\n }\n if (typeof value != 'string') {\n return value === 0 ? value : +value;\n }\n value = baseTrim(value);\n var isBinary = reIsBinary.test(value);\n return (isBinary || reIsOctal.test(value))\n ? freeParseInt(value.slice(2), isBinary ? 2 : 8)\n : (reIsBadHex.test(value) ? NAN : +value);\n }\n\n /**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\n function toPlainObject(value) {\n return copyObject(value, keysIn(value));\n }\n\n /**\n * Converts `value` to a safe integer. A safe integer can be compared and\n * represented correctly.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.toSafeInteger(3.2);\n * // => 3\n *\n * _.toSafeInteger(Number.MIN_VALUE);\n * // => 0\n *\n * _.toSafeInteger(Infinity);\n * // => 9007199254740991\n *\n * _.toSafeInteger('3.2');\n * // => 3\n */\n function toSafeInteger(value) {\n return value\n ? baseClamp(toInteger(value), -MAX_SAFE_INTEGER, MAX_SAFE_INTEGER)\n : (value === 0 ? value : 0);\n }\n\n /**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\n function toString(value) {\n return value == null ? '' : baseToString(value);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Assigns own enumerable string keyed properties of source objects to the\n * destination object. Source objects are applied from left to right.\n * Subsequent sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object` and is loosely based on\n * [`Object.assign`](https://mdn.io/Object/assign).\n *\n * @static\n * @memberOf _\n * @since 0.10.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.assignIn\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * function Bar() {\n * this.c = 3;\n * }\n *\n * Foo.prototype.b = 2;\n * Bar.prototype.d = 4;\n *\n * _.assign({ 'a': 0 }, new Foo, new Bar);\n * // => { 'a': 1, 'c': 3 }\n */\n var assign = createAssigner(function(object, source) {\n if (isPrototype(source) || isArrayLike(source)) {\n copyObject(source, keys(source), object);\n return;\n }\n for (var key in source) {\n if (hasOwnProperty.call(source, key)) {\n assignValue(object, key, source[key]);\n }\n }\n });\n\n /**\n * This method is like `_.assign` except that it iterates over own and\n * inherited source properties.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias extend\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.assign\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * function Bar() {\n * this.c = 3;\n * }\n *\n * Foo.prototype.b = 2;\n * Bar.prototype.d = 4;\n *\n * _.assignIn({ 'a': 0 }, new Foo, new Bar);\n * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4 }\n */\n var assignIn = createAssigner(function(object, source) {\n copyObject(source, keysIn(source), object);\n });\n\n /**\n * This method is like `_.assignIn` except that it accepts `customizer`\n * which is invoked to produce the assigned values. If `customizer` returns\n * `undefined`, assignment is handled by the method instead. The `customizer`\n * is invoked with five arguments: (objValue, srcValue, key, object, source).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias extendWith\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @see _.assignWith\n * @example\n *\n * function customizer(objValue, srcValue) {\n * return _.isUndefined(objValue) ? srcValue : objValue;\n * }\n *\n * var defaults = _.partialRight(_.assignInWith, customizer);\n *\n * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\n var assignInWith = createAssigner(function(object, source, srcIndex, customizer) {\n copyObject(source, keysIn(source), object, customizer);\n });\n\n /**\n * This method is like `_.assign` except that it accepts `customizer`\n * which is invoked to produce the assigned values. If `customizer` returns\n * `undefined`, assignment is handled by the method instead. The `customizer`\n * is invoked with five arguments: (objValue, srcValue, key, object, source).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @see _.assignInWith\n * @example\n *\n * function customizer(objValue, srcValue) {\n * return _.isUndefined(objValue) ? srcValue : objValue;\n * }\n *\n * var defaults = _.partialRight(_.assignWith, customizer);\n *\n * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\n var assignWith = createAssigner(function(object, source, srcIndex, customizer) {\n copyObject(source, keys(source), object, customizer);\n });\n\n /**\n * Creates an array of values corresponding to `paths` of `object`.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {...(string|string[])} [paths] The property paths to pick.\n * @returns {Array} Returns the picked values.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }, 4] };\n *\n * _.at(object, ['a[0].b.c', 'a[1]']);\n * // => [3, 4]\n */\n var at = flatRest(baseAt);\n\n /**\n * Creates an object that inherits from the `prototype` object. If a\n * `properties` object is given, its own enumerable string keyed properties\n * are assigned to the created object.\n *\n * @static\n * @memberOf _\n * @since 2.3.0\n * @category Object\n * @param {Object} prototype The object to inherit from.\n * @param {Object} [properties] The properties to assign to the object.\n * @returns {Object} Returns the new object.\n * @example\n *\n * function Shape() {\n * this.x = 0;\n * this.y = 0;\n * }\n *\n * function Circle() {\n * Shape.call(this);\n * }\n *\n * Circle.prototype = _.create(Shape.prototype, {\n * 'constructor': Circle\n * });\n *\n * var circle = new Circle;\n * circle instanceof Circle;\n * // => true\n *\n * circle instanceof Shape;\n * // => true\n */\n function create(prototype, properties) {\n var result = baseCreate(prototype);\n return properties == null ? result : baseAssign(result, properties);\n }\n\n /**\n * Assigns own and inherited enumerable string keyed properties of source\n * objects to the destination object for all destination properties that\n * resolve to `undefined`. Source objects are applied from left to right.\n * Once a property is set, additional values of the same property are ignored.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.defaultsDeep\n * @example\n *\n * _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });\n * // => { 'a': 1, 'b': 2 }\n */\n var defaults = baseRest(function(object, sources) {\n object = Object(object);\n\n var index = -1;\n var length = sources.length;\n var guard = length > 2 ? sources[2] : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n length = 1;\n }\n\n while (++index < length) {\n var source = sources[index];\n var props = keysIn(source);\n var propsIndex = -1;\n var propsLength = props.length;\n\n while (++propsIndex < propsLength) {\n var key = props[propsIndex];\n var value = object[key];\n\n if (value === undefined ||\n (eq(value, objectProto[key]) && !hasOwnProperty.call(object, key))) {\n object[key] = source[key];\n }\n }\n }\n\n return object;\n });\n\n /**\n * This method is like `_.defaults` except that it recursively assigns\n * default properties.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.10.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @see _.defaults\n * @example\n *\n * _.defaultsDeep({ 'a': { 'b': 2 } }, { 'a': { 'b': 1, 'c': 3 } });\n * // => { 'a': { 'b': 2, 'c': 3 } }\n */\n var defaultsDeep = baseRest(function(args) {\n args.push(undefined, customDefaultsMerge);\n return apply(mergeWith, undefined, args);\n });\n\n /**\n * This method is like `_.find` except that it returns the key of the first\n * element `predicate` returns truthy for instead of the element itself.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category Object\n * @param {Object} object The object to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {string|undefined} Returns the key of the matched element,\n * else `undefined`.\n * @example\n *\n * var users = {\n * 'barney': { 'age': 36, 'active': true },\n * 'fred': { 'age': 40, 'active': false },\n * 'pebbles': { 'age': 1, 'active': true }\n * };\n *\n * _.findKey(users, function(o) { return o.age < 40; });\n * // => 'barney' (iteration order is not guaranteed)\n *\n * // The `_.matches` iteratee shorthand.\n * _.findKey(users, { 'age': 1, 'active': true });\n * // => 'pebbles'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findKey(users, ['active', false]);\n * // => 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.findKey(users, 'active');\n * // => 'barney'\n */\n function findKey(object, predicate) {\n return baseFindKey(object, getIteratee(predicate, 3), baseForOwn);\n }\n\n /**\n * This method is like `_.findKey` except that it iterates over elements of\n * a collection in the opposite order.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Object\n * @param {Object} object The object to inspect.\n * @param {Function} [predicate=_.identity] The function invoked per iteration.\n * @returns {string|undefined} Returns the key of the matched element,\n * else `undefined`.\n * @example\n *\n * var users = {\n * 'barney': { 'age': 36, 'active': true },\n * 'fred': { 'age': 40, 'active': false },\n * 'pebbles': { 'age': 1, 'active': true }\n * };\n *\n * _.findLastKey(users, function(o) { return o.age < 40; });\n * // => returns 'pebbles' assuming `_.findKey` returns 'barney'\n *\n * // The `_.matches` iteratee shorthand.\n * _.findLastKey(users, { 'age': 36, 'active': true });\n * // => 'barney'\n *\n * // The `_.matchesProperty` iteratee shorthand.\n * _.findLastKey(users, ['active', false]);\n * // => 'fred'\n *\n * // The `_.property` iteratee shorthand.\n * _.findLastKey(users, 'active');\n * // => 'pebbles'\n */\n function findLastKey(object, predicate) {\n return baseFindKey(object, getIteratee(predicate, 3), baseForOwnRight);\n }\n\n /**\n * Iterates over own and inherited enumerable string keyed properties of an\n * object and invokes `iteratee` for each property. The iteratee is invoked\n * with three arguments: (value, key, object). Iteratee functions may exit\n * iteration early by explicitly returning `false`.\n *\n * @static\n * @memberOf _\n * @since 0.3.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forInRight\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forIn(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'a', 'b', then 'c' (iteration order is not guaranteed).\n */\n function forIn(object, iteratee) {\n return object == null\n ? object\n : baseFor(object, getIteratee(iteratee, 3), keysIn);\n }\n\n /**\n * This method is like `_.forIn` except that it iterates over properties of\n * `object` in the opposite order.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forIn\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forInRight(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'c', 'b', then 'a' assuming `_.forIn` logs 'a', 'b', then 'c'.\n */\n function forInRight(object, iteratee) {\n return object == null\n ? object\n : baseForRight(object, getIteratee(iteratee, 3), keysIn);\n }\n\n /**\n * Iterates over own enumerable string keyed properties of an object and\n * invokes `iteratee` for each property. The iteratee is invoked with three\n * arguments: (value, key, object). Iteratee functions may exit iteration\n * early by explicitly returning `false`.\n *\n * @static\n * @memberOf _\n * @since 0.3.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forOwnRight\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forOwn(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'a' then 'b' (iteration order is not guaranteed).\n */\n function forOwn(object, iteratee) {\n return object && baseForOwn(object, getIteratee(iteratee, 3));\n }\n\n /**\n * This method is like `_.forOwn` except that it iterates over properties of\n * `object` in the opposite order.\n *\n * @static\n * @memberOf _\n * @since 2.0.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns `object`.\n * @see _.forOwn\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.forOwnRight(new Foo, function(value, key) {\n * console.log(key);\n * });\n * // => Logs 'b' then 'a' assuming `_.forOwn` logs 'a' then 'b'.\n */\n function forOwnRight(object, iteratee) {\n return object && baseForOwnRight(object, getIteratee(iteratee, 3));\n }\n\n /**\n * Creates an array of function property names from own enumerable properties\n * of `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to inspect.\n * @returns {Array} Returns the function names.\n * @see _.functionsIn\n * @example\n *\n * function Foo() {\n * this.a = _.constant('a');\n * this.b = _.constant('b');\n * }\n *\n * Foo.prototype.c = _.constant('c');\n *\n * _.functions(new Foo);\n * // => ['a', 'b']\n */\n function functions(object) {\n return object == null ? [] : baseFunctions(object, keys(object));\n }\n\n /**\n * Creates an array of function property names from own and inherited\n * enumerable properties of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to inspect.\n * @returns {Array} Returns the function names.\n * @see _.functions\n * @example\n *\n * function Foo() {\n * this.a = _.constant('a');\n * this.b = _.constant('b');\n * }\n *\n * Foo.prototype.c = _.constant('c');\n *\n * _.functionsIn(new Foo);\n * // => ['a', 'b', 'c']\n */\n function functionsIn(object) {\n return object == null ? [] : baseFunctions(object, keysIn(object));\n }\n\n /**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\n function get(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n }\n\n /**\n * Checks if `path` is a direct property of `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = { 'a': { 'b': 2 } };\n * var other = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.has(object, 'a');\n * // => true\n *\n * _.has(object, 'a.b');\n * // => true\n *\n * _.has(object, ['a', 'b']);\n * // => true\n *\n * _.has(other, 'a');\n * // => false\n */\n function has(object, path) {\n return object != null && hasPath(object, path, baseHas);\n }\n\n /**\n * Checks if `path` is a direct or inherited property of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.hasIn(object, 'a');\n * // => true\n *\n * _.hasIn(object, 'a.b');\n * // => true\n *\n * _.hasIn(object, ['a', 'b']);\n * // => true\n *\n * _.hasIn(object, 'b');\n * // => false\n */\n function hasIn(object, path) {\n return object != null && hasPath(object, path, baseHasIn);\n }\n\n /**\n * Creates an object composed of the inverted keys and values of `object`.\n * If `object` contains duplicate values, subsequent values overwrite\n * property assignments of previous values.\n *\n * @static\n * @memberOf _\n * @since 0.7.0\n * @category Object\n * @param {Object} object The object to invert.\n * @returns {Object} Returns the new inverted object.\n * @example\n *\n * var object = { 'a': 1, 'b': 2, 'c': 1 };\n *\n * _.invert(object);\n * // => { '1': 'c', '2': 'b' }\n */\n var invert = createInverter(function(result, value, key) {\n if (value != null &&\n typeof value.toString != 'function') {\n value = nativeObjectToString.call(value);\n }\n\n result[value] = key;\n }, constant(identity));\n\n /**\n * This method is like `_.invert` except that the inverted object is generated\n * from the results of running each element of `object` thru `iteratee`. The\n * corresponding inverted value of each inverted key is an array of keys\n * responsible for generating the inverted value. The iteratee is invoked\n * with one argument: (value).\n *\n * @static\n * @memberOf _\n * @since 4.1.0\n * @category Object\n * @param {Object} object The object to invert.\n * @param {Function} [iteratee=_.identity] The iteratee invoked per element.\n * @returns {Object} Returns the new inverted object.\n * @example\n *\n * var object = { 'a': 1, 'b': 2, 'c': 1 };\n *\n * _.invertBy(object);\n * // => { '1': ['a', 'c'], '2': ['b'] }\n *\n * _.invertBy(object, function(value) {\n * return 'group' + value;\n * });\n * // => { 'group1': ['a', 'c'], 'group2': ['b'] }\n */\n var invertBy = createInverter(function(result, value, key) {\n if (value != null &&\n typeof value.toString != 'function') {\n value = nativeObjectToString.call(value);\n }\n\n if (hasOwnProperty.call(result, value)) {\n result[value].push(key);\n } else {\n result[value] = [key];\n }\n }, getIteratee);\n\n /**\n * Invokes the method at `path` of `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the method to invoke.\n * @param {...*} [args] The arguments to invoke the method with.\n * @returns {*} Returns the result of the invoked method.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': [1, 2, 3, 4] } }] };\n *\n * _.invoke(object, 'a[0].b.c.slice', 1, 3);\n * // => [2, 3]\n */\n var invoke = baseRest(baseInvoke);\n\n /**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\n function keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n }\n\n /**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\n function keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n }\n\n /**\n * The opposite of `_.mapValues`; this method creates an object with the\n * same values as `object` and keys generated by running each own enumerable\n * string keyed property of `object` thru `iteratee`. The iteratee is invoked\n * with three arguments: (value, key, object).\n *\n * @static\n * @memberOf _\n * @since 3.8.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns the new mapped object.\n * @see _.mapValues\n * @example\n *\n * _.mapKeys({ 'a': 1, 'b': 2 }, function(value, key) {\n * return key + value;\n * });\n * // => { 'a1': 1, 'b2': 2 }\n */\n function mapKeys(object, iteratee) {\n var result = {};\n iteratee = getIteratee(iteratee, 3);\n\n baseForOwn(object, function(value, key, object) {\n baseAssignValue(result, iteratee(value, key, object), value);\n });\n return result;\n }\n\n /**\n * Creates an object with the same keys as `object` and values generated\n * by running each own enumerable string keyed property of `object` thru\n * `iteratee`. The iteratee is invoked with three arguments:\n * (value, key, object).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @returns {Object} Returns the new mapped object.\n * @see _.mapKeys\n * @example\n *\n * var users = {\n * 'fred': { 'user': 'fred', 'age': 40 },\n * 'pebbles': { 'user': 'pebbles', 'age': 1 }\n * };\n *\n * _.mapValues(users, function(o) { return o.age; });\n * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)\n *\n * // The `_.property` iteratee shorthand.\n * _.mapValues(users, 'age');\n * // => { 'fred': 40, 'pebbles': 1 } (iteration order is not guaranteed)\n */\n function mapValues(object, iteratee) {\n var result = {};\n iteratee = getIteratee(iteratee, 3);\n\n baseForOwn(object, function(value, key, object) {\n baseAssignValue(result, key, iteratee(value, key, object));\n });\n return result;\n }\n\n /**\n * This method is like `_.assign` except that it recursively merges own and\n * inherited enumerable string keyed properties of source objects into the\n * destination object. Source properties that resolve to `undefined` are\n * skipped if a destination value exists. Array and plain object properties\n * are merged recursively. Other objects and value types are overridden by\n * assignment. Source objects are applied from left to right. Subsequent\n * sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {\n * 'a': [{ 'b': 2 }, { 'd': 4 }]\n * };\n *\n * var other = {\n * 'a': [{ 'c': 3 }, { 'e': 5 }]\n * };\n *\n * _.merge(object, other);\n * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }\n */\n var merge = createAssigner(function(object, source, srcIndex) {\n baseMerge(object, source, srcIndex);\n });\n\n /**\n * This method is like `_.merge` except that it accepts `customizer` which\n * is invoked to produce the merged values of the destination and source\n * properties. If `customizer` returns `undefined`, merging is handled by the\n * method instead. The `customizer` is invoked with six arguments:\n * (objValue, srcValue, key, object, source, stack).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} customizer The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * function customizer(objValue, srcValue) {\n * if (_.isArray(objValue)) {\n * return objValue.concat(srcValue);\n * }\n * }\n *\n * var object = { 'a': [1], 'b': [2] };\n * var other = { 'a': [3], 'b': [4] };\n *\n * _.mergeWith(object, other, customizer);\n * // => { 'a': [1, 3], 'b': [2, 4] }\n */\n var mergeWith = createAssigner(function(object, source, srcIndex, customizer) {\n baseMerge(object, source, srcIndex, customizer);\n });\n\n /**\n * The opposite of `_.pick`; this method creates an object composed of the\n * own and inherited enumerable property paths of `object` that are not omitted.\n *\n * **Note:** This method is considerably slower than `_.pick`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The source object.\n * @param {...(string|string[])} [paths] The property paths to omit.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.omit(object, ['a', 'c']);\n * // => { 'b': '2' }\n */\n var omit = flatRest(function(object, paths) {\n var result = {};\n if (object == null) {\n return result;\n }\n var isDeep = false;\n paths = arrayMap(paths, function(path) {\n path = castPath(path, object);\n isDeep || (isDeep = path.length > 1);\n return path;\n });\n copyObject(object, getAllKeysIn(object), result);\n if (isDeep) {\n result = baseClone(result, CLONE_DEEP_FLAG | CLONE_FLAT_FLAG | CLONE_SYMBOLS_FLAG, customOmitClone);\n }\n var length = paths.length;\n while (length--) {\n baseUnset(result, paths[length]);\n }\n return result;\n });\n\n /**\n * The opposite of `_.pickBy`; this method creates an object composed of\n * the own and inherited enumerable string keyed properties of `object` that\n * `predicate` doesn't return truthy for. The predicate is invoked with two\n * arguments: (value, key).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The source object.\n * @param {Function} [predicate=_.identity] The function invoked per property.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.omitBy(object, _.isNumber);\n * // => { 'b': '2' }\n */\n function omitBy(object, predicate) {\n return pickBy(object, negate(getIteratee(predicate)));\n }\n\n /**\n * Creates an object composed of the picked `object` properties.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The source object.\n * @param {...(string|string[])} [paths] The property paths to pick.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.pick(object, ['a', 'c']);\n * // => { 'a': 1, 'c': 3 }\n */\n var pick = flatRest(function(object, paths) {\n return object == null ? {} : basePick(object, paths);\n });\n\n /**\n * Creates an object composed of the `object` properties `predicate` returns\n * truthy for. The predicate is invoked with two arguments: (value, key).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The source object.\n * @param {Function} [predicate=_.identity] The function invoked per property.\n * @returns {Object} Returns the new object.\n * @example\n *\n * var object = { 'a': 1, 'b': '2', 'c': 3 };\n *\n * _.pickBy(object, _.isNumber);\n * // => { 'a': 1, 'c': 3 }\n */\n function pickBy(object, predicate) {\n if (object == null) {\n return {};\n }\n var props = arrayMap(getAllKeysIn(object), function(prop) {\n return [prop];\n });\n predicate = getIteratee(predicate);\n return basePickBy(object, props, function(value, path) {\n return predicate(value, path[0]);\n });\n }\n\n /**\n * This method is like `_.get` except that if the resolved value is a\n * function it's invoked with the `this` binding of its parent object and\n * its result is returned.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to resolve.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c1': 3, 'c2': _.constant(4) } }] };\n *\n * _.result(object, 'a[0].b.c1');\n * // => 3\n *\n * _.result(object, 'a[0].b.c2');\n * // => 4\n *\n * _.result(object, 'a[0].b.c3', 'default');\n * // => 'default'\n *\n * _.result(object, 'a[0].b.c3', _.constant('default'));\n * // => 'default'\n */\n function result(object, path, defaultValue) {\n path = castPath(path, object);\n\n var index = -1,\n length = path.length;\n\n // Ensure the loop is entered when path is empty.\n if (!length) {\n length = 1;\n object = undefined;\n }\n while (++index < length) {\n var value = object == null ? undefined : object[toKey(path[index])];\n if (value === undefined) {\n index = length;\n value = defaultValue;\n }\n object = isFunction(value) ? value.call(object) : value;\n }\n return object;\n }\n\n /**\n * Sets the value at `path` of `object`. If a portion of `path` doesn't exist,\n * it's created. Arrays are created for missing index properties while objects\n * are created for all other missing properties. Use `_.setWith` to customize\n * `path` creation.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.set(object, 'a[0].b.c', 4);\n * console.log(object.a[0].b.c);\n * // => 4\n *\n * _.set(object, ['x', '0', 'y', 'z'], 5);\n * console.log(object.x[0].y.z);\n * // => 5\n */\n function set(object, path, value) {\n return object == null ? object : baseSet(object, path, value);\n }\n\n /**\n * This method is like `_.set` except that it accepts `customizer` which is\n * invoked to produce the objects of `path`. If `customizer` returns `undefined`\n * path creation is handled by the method instead. The `customizer` is invoked\n * with three arguments: (nsValue, key, nsObject).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {};\n *\n * _.setWith(object, '[0][1]', 'a', Object);\n * // => { '0': { '1': 'a' } }\n */\n function setWith(object, path, value, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return object == null ? object : baseSet(object, path, value, customizer);\n }\n\n /**\n * Creates an array of own enumerable string keyed-value pairs for `object`\n * which can be consumed by `_.fromPairs`. If `object` is a map or set, its\n * entries are returned.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias entries\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the key-value pairs.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.toPairs(new Foo);\n * // => [['a', 1], ['b', 2]] (iteration order is not guaranteed)\n */\n var toPairs = createToPairs(keys);\n\n /**\n * Creates an array of own and inherited enumerable string keyed-value pairs\n * for `object` which can be consumed by `_.fromPairs`. If `object` is a map\n * or set, its entries are returned.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @alias entriesIn\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the key-value pairs.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.toPairsIn(new Foo);\n * // => [['a', 1], ['b', 2], ['c', 3]] (iteration order is not guaranteed)\n */\n var toPairsIn = createToPairs(keysIn);\n\n /**\n * An alternative to `_.reduce`; this method transforms `object` to a new\n * `accumulator` object which is the result of running each of its own\n * enumerable string keyed properties thru `iteratee`, with each invocation\n * potentially mutating the `accumulator` object. If `accumulator` is not\n * provided, a new object with the same `[[Prototype]]` will be used. The\n * iteratee is invoked with four arguments: (accumulator, value, key, object).\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @static\n * @memberOf _\n * @since 1.3.0\n * @category Object\n * @param {Object} object The object to iterate over.\n * @param {Function} [iteratee=_.identity] The function invoked per iteration.\n * @param {*} [accumulator] The custom accumulator value.\n * @returns {*} Returns the accumulated value.\n * @example\n *\n * _.transform([2, 3, 4], function(result, n) {\n * result.push(n *= n);\n * return n % 2 == 0;\n * }, []);\n * // => [4, 9]\n *\n * _.transform({ 'a': 1, 'b': 2, 'c': 1 }, function(result, value, key) {\n * (result[value] || (result[value] = [])).push(key);\n * }, {});\n * // => { '1': ['a', 'c'], '2': ['b'] }\n */\n function transform(object, iteratee, accumulator) {\n var isArr = isArray(object),\n isArrLike = isArr || isBuffer(object) || isTypedArray(object);\n\n iteratee = getIteratee(iteratee, 4);\n if (accumulator == null) {\n var Ctor = object && object.constructor;\n if (isArrLike) {\n accumulator = isArr ? new Ctor : [];\n }\n else if (isObject(object)) {\n accumulator = isFunction(Ctor) ? baseCreate(getPrototype(object)) : {};\n }\n else {\n accumulator = {};\n }\n }\n (isArrLike ? arrayEach : baseForOwn)(object, function(value, index, object) {\n return iteratee(accumulator, value, index, object);\n });\n return accumulator;\n }\n\n /**\n * Removes the property at `path` of `object`.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to unset.\n * @returns {boolean} Returns `true` if the property is deleted, else `false`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 7 } }] };\n * _.unset(object, 'a[0].b.c');\n * // => true\n *\n * console.log(object);\n * // => { 'a': [{ 'b': {} }] };\n *\n * _.unset(object, ['a', '0', 'b', 'c']);\n * // => true\n *\n * console.log(object);\n * // => { 'a': [{ 'b': {} }] };\n */\n function unset(object, path) {\n return object == null ? true : baseUnset(object, path);\n }\n\n /**\n * This method is like `_.set` except that accepts `updater` to produce the\n * value to set. Use `_.updateWith` to customize `path` creation. The `updater`\n * is invoked with one argument: (value).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.6.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {Function} updater The function to produce the updated value.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.update(object, 'a[0].b.c', function(n) { return n * n; });\n * console.log(object.a[0].b.c);\n * // => 9\n *\n * _.update(object, 'x[0].y.z', function(n) { return n ? n + 1 : 0; });\n * console.log(object.x[0].y.z);\n * // => 0\n */\n function update(object, path, updater) {\n return object == null ? object : baseUpdate(object, path, castFunction(updater));\n }\n\n /**\n * This method is like `_.update` except that it accepts `customizer` which is\n * invoked to produce the objects of `path`. If `customizer` returns `undefined`\n * path creation is handled by the method instead. The `customizer` is invoked\n * with three arguments: (nsValue, key, nsObject).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.6.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {Function} updater The function to produce the updated value.\n * @param {Function} [customizer] The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {};\n *\n * _.updateWith(object, '[0][1]', _.constant('a'), Object);\n * // => { '0': { '1': 'a' } }\n */\n function updateWith(object, path, updater, customizer) {\n customizer = typeof customizer == 'function' ? customizer : undefined;\n return object == null ? object : baseUpdate(object, path, castFunction(updater), customizer);\n }\n\n /**\n * Creates an array of the own enumerable string keyed property values of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property values.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.values(new Foo);\n * // => [1, 2] (iteration order is not guaranteed)\n *\n * _.values('hi');\n * // => ['h', 'i']\n */\n function values(object) {\n return object == null ? [] : baseValues(object, keys(object));\n }\n\n /**\n * Creates an array of the own and inherited enumerable string keyed property\n * values of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property values.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.valuesIn(new Foo);\n * // => [1, 2, 3] (iteration order is not guaranteed)\n */\n function valuesIn(object) {\n return object == null ? [] : baseValues(object, keysIn(object));\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Clamps `number` within the inclusive `lower` and `upper` bounds.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Number\n * @param {number} number The number to clamp.\n * @param {number} [lower] The lower bound.\n * @param {number} upper The upper bound.\n * @returns {number} Returns the clamped number.\n * @example\n *\n * _.clamp(-10, -5, 5);\n * // => -5\n *\n * _.clamp(10, -5, 5);\n * // => 5\n */\n function clamp(number, lower, upper) {\n if (upper === undefined) {\n upper = lower;\n lower = undefined;\n }\n if (upper !== undefined) {\n upper = toNumber(upper);\n upper = upper === upper ? upper : 0;\n }\n if (lower !== undefined) {\n lower = toNumber(lower);\n lower = lower === lower ? lower : 0;\n }\n return baseClamp(toNumber(number), lower, upper);\n }\n\n /**\n * Checks if `n` is between `start` and up to, but not including, `end`. If\n * `end` is not specified, it's set to `start` with `start` then set to `0`.\n * If `start` is greater than `end` the params are swapped to support\n * negative ranges.\n *\n * @static\n * @memberOf _\n * @since 3.3.0\n * @category Number\n * @param {number} number The number to check.\n * @param {number} [start=0] The start of the range.\n * @param {number} end The end of the range.\n * @returns {boolean} Returns `true` if `number` is in the range, else `false`.\n * @see _.range, _.rangeRight\n * @example\n *\n * _.inRange(3, 2, 4);\n * // => true\n *\n * _.inRange(4, 8);\n * // => true\n *\n * _.inRange(4, 2);\n * // => false\n *\n * _.inRange(2, 2);\n * // => false\n *\n * _.inRange(1.2, 2);\n * // => true\n *\n * _.inRange(5.2, 4);\n * // => false\n *\n * _.inRange(-3, -2, -6);\n * // => true\n */\n function inRange(number, start, end) {\n start = toFinite(start);\n if (end === undefined) {\n end = start;\n start = 0;\n } else {\n end = toFinite(end);\n }\n number = toNumber(number);\n return baseInRange(number, start, end);\n }\n\n /**\n * Produces a random number between the inclusive `lower` and `upper` bounds.\n * If only one argument is provided a number between `0` and the given number\n * is returned. If `floating` is `true`, or either `lower` or `upper` are\n * floats, a floating-point number is returned instead of an integer.\n *\n * **Note:** JavaScript follows the IEEE-754 standard for resolving\n * floating-point values which can produce unexpected results.\n *\n * @static\n * @memberOf _\n * @since 0.7.0\n * @category Number\n * @param {number} [lower=0] The lower bound.\n * @param {number} [upper=1] The upper bound.\n * @param {boolean} [floating] Specify returning a floating-point number.\n * @returns {number} Returns the random number.\n * @example\n *\n * _.random(0, 5);\n * // => an integer between 0 and 5\n *\n * _.random(5);\n * // => also an integer between 0 and 5\n *\n * _.random(5, true);\n * // => a floating-point number between 0 and 5\n *\n * _.random(1.2, 5.2);\n * // => a floating-point number between 1.2 and 5.2\n */\n function random(lower, upper, floating) {\n if (floating && typeof floating != 'boolean' && isIterateeCall(lower, upper, floating)) {\n upper = floating = undefined;\n }\n if (floating === undefined) {\n if (typeof upper == 'boolean') {\n floating = upper;\n upper = undefined;\n }\n else if (typeof lower == 'boolean') {\n floating = lower;\n lower = undefined;\n }\n }\n if (lower === undefined && upper === undefined) {\n lower = 0;\n upper = 1;\n }\n else {\n lower = toFinite(lower);\n if (upper === undefined) {\n upper = lower;\n lower = 0;\n } else {\n upper = toFinite(upper);\n }\n }\n if (lower > upper) {\n var temp = lower;\n lower = upper;\n upper = temp;\n }\n if (floating || lower % 1 || upper % 1) {\n var rand = nativeRandom();\n return nativeMin(lower + (rand * (upper - lower + freeParseFloat('1e-' + ((rand + '').length - 1)))), upper);\n }\n return baseRandom(lower, upper);\n }\n\n /*------------------------------------------------------------------------*/\n\n /**\n * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the camel cased string.\n * @example\n *\n * _.camelCase('Foo Bar');\n * // => 'fooBar'\n *\n * _.camelCase('--foo-bar--');\n * // => 'fooBar'\n *\n * _.camelCase('__FOO_BAR__');\n * // => 'fooBar'\n */\n var camelCase = createCompounder(function(result, word, index) {\n word = word.toLowerCase();\n return result + (index ? capitalize(word) : word);\n });\n\n /**\n * Converts the first character of `string` to upper case and the remaining\n * to lower case.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to capitalize.\n * @returns {string} Returns the capitalized string.\n * @example\n *\n * _.capitalize('FRED');\n * // => 'Fred'\n */\n function capitalize(string) {\n return upperFirst(toString(string).toLowerCase());\n }\n\n /**\n * Deburrs `string` by converting\n * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)\n * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)\n * letters to basic Latin letters and removing\n * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to deburr.\n * @returns {string} Returns the deburred string.\n * @example\n *\n * _.deburr('déjà vu');\n * // => 'deja vu'\n */\n function deburr(string) {\n string = toString(string);\n return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');\n }\n\n /**\n * Checks if `string` ends with the given target string.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to inspect.\n * @param {string} [target] The string to search for.\n * @param {number} [position=string.length] The position to search up to.\n * @returns {boolean} Returns `true` if `string` ends with `target`,\n * else `false`.\n * @example\n *\n * _.endsWith('abc', 'c');\n * // => true\n *\n * _.endsWith('abc', 'b');\n * // => false\n *\n * _.endsWith('abc', 'b', 2);\n * // => true\n */\n function endsWith(string, target, position) {\n string = toString(string);\n target = baseToString(target);\n\n var length = string.length;\n position = position === undefined\n ? length\n : baseClamp(toInteger(position), 0, length);\n\n var end = position;\n position -= target.length;\n return position >= 0 && string.slice(position, end) == target;\n }\n\n /**\n * Converts the characters \"&\", \"<\", \">\", '\"', and \"'\" in `string` to their\n * corresponding HTML entities.\n *\n * **Note:** No other characters are escaped. To escape additional\n * characters use a third-party library like [_he_](https://mths.be/he).\n *\n * Though the \">\" character is escaped for symmetry, characters like\n * \">\" and \"/\" don't need escaping in HTML and have no special meaning\n * unless they're part of a tag or unquoted attribute value. See\n * [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands)\n * (under \"semi-related fun fact\") for more details.\n *\n * When working with HTML you should always\n * [quote attribute values](http://wonko.com/post/html-escaping) to reduce\n * XSS vectors.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category String\n * @param {string} [string=''] The string to escape.\n * @returns {string} Returns the escaped string.\n * @example\n *\n * _.escape('fred, barney, & pebbles');\n * // => 'fred, barney, & pebbles'\n */\n function escape(string) {\n string = toString(string);\n return (string && reHasUnescapedHtml.test(string))\n ? string.replace(reUnescapedHtml, escapeHtmlChar)\n : string;\n }\n\n /**\n * Escapes the `RegExp` special characters \"^\", \"$\", \"\\\", \".\", \"*\", \"+\",\n * \"?\", \"(\", \")\", \"[\", \"]\", \"{\", \"}\", and \"|\" in `string`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to escape.\n * @returns {string} Returns the escaped string.\n * @example\n *\n * _.escapeRegExp('[lodash](https://lodash.com/)');\n * // => '\\[lodash\\]\\(https://lodash\\.com/\\)'\n */\n function escapeRegExp(string) {\n string = toString(string);\n return (string && reHasRegExpChar.test(string))\n ? string.replace(reRegExpChar, '\\\\$&')\n : string;\n }\n\n /**\n * Converts `string` to\n * [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the kebab cased string.\n * @example\n *\n * _.kebabCase('Foo Bar');\n * // => 'foo-bar'\n *\n * _.kebabCase('fooBar');\n * // => 'foo-bar'\n *\n * _.kebabCase('__FOO_BAR__');\n * // => 'foo-bar'\n */\n var kebabCase = createCompounder(function(result, word, index) {\n return result + (index ? '-' : '') + word.toLowerCase();\n });\n\n /**\n * Converts `string`, as space separated words, to lower case.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the lower cased string.\n * @example\n *\n * _.lowerCase('--Foo-Bar--');\n * // => 'foo bar'\n *\n * _.lowerCase('fooBar');\n * // => 'foo bar'\n *\n * _.lowerCase('__FOO_BAR__');\n * // => 'foo bar'\n */\n var lowerCase = createCompounder(function(result, word, index) {\n return result + (index ? ' ' : '') + word.toLowerCase();\n });\n\n /**\n * Converts the first character of `string` to lower case.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.lowerFirst('Fred');\n * // => 'fred'\n *\n * _.lowerFirst('FRED');\n * // => 'fRED'\n */\n var lowerFirst = createCaseFirst('toLowerCase');\n\n /**\n * Pads `string` on the left and right sides if it's shorter than `length`.\n * Padding characters are truncated if they can't be evenly divided by `length`.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to pad.\n * @param {number} [length=0] The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padded string.\n * @example\n *\n * _.pad('abc', 8);\n * // => ' abc '\n *\n * _.pad('abc', 8, '_-');\n * // => '_-abc_-_'\n *\n * _.pad('abc', 3);\n * // => 'abc'\n */\n function pad(string, length, chars) {\n string = toString(string);\n length = toInteger(length);\n\n var strLength = length ? stringSize(string) : 0;\n if (!length || strLength >= length) {\n return string;\n }\n var mid = (length - strLength) / 2;\n return (\n createPadding(nativeFloor(mid), chars) +\n string +\n createPadding(nativeCeil(mid), chars)\n );\n }\n\n /**\n * Pads `string` on the right side if it's shorter than `length`. Padding\n * characters are truncated if they exceed `length`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to pad.\n * @param {number} [length=0] The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padded string.\n * @example\n *\n * _.padEnd('abc', 6);\n * // => 'abc '\n *\n * _.padEnd('abc', 6, '_-');\n * // => 'abc_-_'\n *\n * _.padEnd('abc', 3);\n * // => 'abc'\n */\n function padEnd(string, length, chars) {\n string = toString(string);\n length = toInteger(length);\n\n var strLength = length ? stringSize(string) : 0;\n return (length && strLength < length)\n ? (string + createPadding(length - strLength, chars))\n : string;\n }\n\n /**\n * Pads `string` on the left side if it's shorter than `length`. Padding\n * characters are truncated if they exceed `length`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to pad.\n * @param {number} [length=0] The padding length.\n * @param {string} [chars=' '] The string used as padding.\n * @returns {string} Returns the padded string.\n * @example\n *\n * _.padStart('abc', 6);\n * // => ' abc'\n *\n * _.padStart('abc', 6, '_-');\n * // => '_-_abc'\n *\n * _.padStart('abc', 3);\n * // => 'abc'\n */\n function padStart(string, length, chars) {\n string = toString(string);\n length = toInteger(length);\n\n var strLength = length ? stringSize(string) : 0;\n return (length && strLength < length)\n ? (createPadding(length - strLength, chars) + string)\n : string;\n }\n\n /**\n * Converts `string` to an integer of the specified radix. If `radix` is\n * `undefined` or `0`, a `radix` of `10` is used unless `value` is a\n * hexadecimal, in which case a `radix` of `16` is used.\n *\n * **Note:** This method aligns with the\n * [ES5 implementation](https://es5.github.io/#x15.1.2.2) of `parseInt`.\n *\n * @static\n * @memberOf _\n * @since 1.1.0\n * @category String\n * @param {string} string The string to convert.\n * @param {number} [radix=10] The radix to interpret `value` by.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {number} Returns the converted integer.\n * @example\n *\n * _.parseInt('08');\n * // => 8\n *\n * _.map(['6', '08', '10'], _.parseInt);\n * // => [6, 8, 10]\n */\n function parseInt(string, radix, guard) {\n if (guard || radix == null) {\n radix = 0;\n } else if (radix) {\n radix = +radix;\n }\n return nativeParseInt(toString(string).replace(reTrimStart, ''), radix || 0);\n }\n\n /**\n * Repeats the given string `n` times.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to repeat.\n * @param {number} [n=1] The number of times to repeat the string.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {string} Returns the repeated string.\n * @example\n *\n * _.repeat('*', 3);\n * // => '***'\n *\n * _.repeat('abc', 2);\n * // => 'abcabc'\n *\n * _.repeat('abc', 0);\n * // => ''\n */\n function repeat(string, n, guard) {\n if ((guard ? isIterateeCall(string, n, guard) : n === undefined)) {\n n = 1;\n } else {\n n = toInteger(n);\n }\n return baseRepeat(toString(string), n);\n }\n\n /**\n * Replaces matches for `pattern` in `string` with `replacement`.\n *\n * **Note:** This method is based on\n * [`String#replace`](https://mdn.io/String/replace).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to modify.\n * @param {RegExp|string} pattern The pattern to replace.\n * @param {Function|string} replacement The match replacement.\n * @returns {string} Returns the modified string.\n * @example\n *\n * _.replace('Hi Fred', 'Fred', 'Barney');\n * // => 'Hi Barney'\n */\n function replace() {\n var args = arguments,\n string = toString(args[0]);\n\n return args.length < 3 ? string : string.replace(args[1], args[2]);\n }\n\n /**\n * Converts `string` to\n * [snake case](https://en.wikipedia.org/wiki/Snake_case).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the snake cased string.\n * @example\n *\n * _.snakeCase('Foo Bar');\n * // => 'foo_bar'\n *\n * _.snakeCase('fooBar');\n * // => 'foo_bar'\n *\n * _.snakeCase('--FOO-BAR--');\n * // => 'foo_bar'\n */\n var snakeCase = createCompounder(function(result, word, index) {\n return result + (index ? '_' : '') + word.toLowerCase();\n });\n\n /**\n * Splits `string` by `separator`.\n *\n * **Note:** This method is based on\n * [`String#split`](https://mdn.io/String/split).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to split.\n * @param {RegExp|string} separator The separator pattern to split by.\n * @param {number} [limit] The length to truncate results to.\n * @returns {Array} Returns the string segments.\n * @example\n *\n * _.split('a-b-c', '-', 2);\n * // => ['a', 'b']\n */\n function split(string, separator, limit) {\n if (limit && typeof limit != 'number' && isIterateeCall(string, separator, limit)) {\n separator = limit = undefined;\n }\n limit = limit === undefined ? MAX_ARRAY_LENGTH : limit >>> 0;\n if (!limit) {\n return [];\n }\n string = toString(string);\n if (string && (\n typeof separator == 'string' ||\n (separator != null && !isRegExp(separator))\n )) {\n separator = baseToString(separator);\n if (!separator && hasUnicode(string)) {\n return castSlice(stringToArray(string), 0, limit);\n }\n }\n return string.split(separator, limit);\n }\n\n /**\n * Converts `string` to\n * [start case](https://en.wikipedia.org/wiki/Letter_case#Stylistic_or_specialised_usage).\n *\n * @static\n * @memberOf _\n * @since 3.1.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the start cased string.\n * @example\n *\n * _.startCase('--foo-bar--');\n * // => 'Foo Bar'\n *\n * _.startCase('fooBar');\n * // => 'Foo Bar'\n *\n * _.startCase('__FOO_BAR__');\n * // => 'FOO BAR'\n */\n var startCase = createCompounder(function(result, word, index) {\n return result + (index ? ' ' : '') + upperFirst(word);\n });\n\n /**\n * Checks if `string` starts with the given target string.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to inspect.\n * @param {string} [target] The string to search for.\n * @param {number} [position=0] The position to search from.\n * @returns {boolean} Returns `true` if `string` starts with `target`,\n * else `false`.\n * @example\n *\n * _.startsWith('abc', 'a');\n * // => true\n *\n * _.startsWith('abc', 'b');\n * // => false\n *\n * _.startsWith('abc', 'b', 1);\n * // => true\n */\n function startsWith(string, target, position) {\n string = toString(string);\n position = position == null\n ? 0\n : baseClamp(toInteger(position), 0, string.length);\n\n target = baseToString(target);\n return string.slice(position, position + target.length) == target;\n }\n\n /**\n * Creates a compiled template function that can interpolate data properties\n * in \"interpolate\" delimiters, HTML-escape interpolated data properties in\n * \"escape\" delimiters, and execute JavaScript in \"evaluate\" delimiters. Data\n * properties may be accessed as free variables in the template. If a setting\n * object is given, it takes precedence over `_.templateSettings` values.\n *\n * **Note:** In the development build `_.template` utilizes\n * [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl)\n * for easier debugging.\n *\n * For more information on precompiling templates see\n * [lodash's custom builds documentation](https://lodash.com/custom-builds).\n *\n * For more information on Chrome extension sandboxes see\n * [Chrome's extensions documentation](https://developer.chrome.com/extensions/sandboxingEval).\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category String\n * @param {string} [string=''] The template string.\n * @param {Object} [options={}] The options object.\n * @param {RegExp} [options.escape=_.templateSettings.escape]\n * The HTML \"escape\" delimiter.\n * @param {RegExp} [options.evaluate=_.templateSettings.evaluate]\n * The \"evaluate\" delimiter.\n * @param {Object} [options.imports=_.templateSettings.imports]\n * An object to import into the template as free variables.\n * @param {RegExp} [options.interpolate=_.templateSettings.interpolate]\n * The \"interpolate\" delimiter.\n * @param {string} [options.sourceURL='lodash.templateSources[n]']\n * The sourceURL of the compiled template.\n * @param {string} [options.variable='obj']\n * The data object variable name.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Function} Returns the compiled template function.\n * @example\n *\n * // Use the \"interpolate\" delimiter to create a compiled template.\n * var compiled = _.template('hello <%= user %>!');\n * compiled({ 'user': 'fred' });\n * // => 'hello fred!'\n *\n * // Use the HTML \"escape\" delimiter to escape data property values.\n * var compiled = _.template('<%- value %>');\n * compiled({ 'value': '\r\n\r\n\r\n","import mod from \"-!../../../vue-loader/lib/index.js??vue-loader-options!./Vuetable.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../vue-loader/lib/index.js??vue-loader-options!./Vuetable.vue?vue&type=script&lang=js&\"","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent(\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier /* server only */,\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options =\n typeof scriptExports === 'function' ? scriptExports.options : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) {\n // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n )\n }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","import { render, staticRenderFns } from \"./Vuetable.vue?vue&type=template&id=5bfa05b0&scoped=true&\"\nimport script from \"./Vuetable.vue?vue&type=script&lang=js&\"\nexport * from \"./Vuetable.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Vuetable.vue?vue&type=style&index=0&id=5bfa05b0&prod&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5bfa05b0\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.isFixedHeader)?_c('div',[_c('div',{staticClass:\"vuetable-head-wrapper\"},[_c('table',{class:['vuetable', _vm.css.tableClass, _vm.css.tableHeaderClass]},[_c('thead',[_c('tr',[_vm._l((_vm.tableFields),function(field,fieldIndex){return [(field.visible)?[(_vm.isSpecialField(field.name))?[(_vm.extractName(field.name) == '__checkbox')?_c('th',{key:fieldIndex,class:['vuetable-th-checkbox-'+_vm.trackBy, field.titleClass],style:({width: field.width})},[_c('input',{attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.checkCheckboxesState(field.name)},on:{\"change\":function($event){return _vm.toggleAllCheckboxes(field.name, $event)}}})]):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__component')?_c('th',{key:fieldIndex,class:['vuetable-th-component-'+_vm.trackBy, field.titleClass, _vm.sortClass(field), {'sortable': _vm.isSortable(field)}],style:({width: field.width}),domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))},on:{\"click\":function($event){return _vm.orderBy(field, $event)}}}):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__slot')?_c('th',{key:fieldIndex,class:['vuetable-th-slot-'+_vm.extractArgs(field.name), field.titleClass, _vm.sortClass(field), {'sortable': _vm.isSortable(field)}],style:({width: field.width}),domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))},on:{\"click\":function($event){return _vm.orderBy(field, $event)}}}):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__sequence')?_c('th',{key:fieldIndex,class:['vuetable-th-sequence', field.titleClass || ''],style:({width: field.width}),domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))}}):_vm._e(),_vm._v(\" \"),(_vm.notIn(_vm.extractName(field.name), ['__sequence', '__checkbox', '__component', '__slot']))?_c('th',{key:fieldIndex,class:['vuetable-th-'+field.name, field.titleClass || ''],style:({width: field.width}),domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))}}):_vm._e()]:[_c('th',{key:fieldIndex,class:['vuetable-th-'+field.name, field.titleClass, _vm.sortClass(field), {'sortable': _vm.isSortable(field)}],style:({width: field.width}),attrs:{\"id\":'_' + field.name},domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))},on:{\"click\":function($event){return _vm.orderBy(field, $event)}}})]]:_vm._e()]}),_vm._v(\" \"),(_vm.scrollVisible)?_c('th',{staticClass:\"vuetable-gutter-col\",style:({width: _vm.scrollBarWidth})}):_vm._e()],2)])])]),_vm._v(\" \"),_c('div',{staticClass:\"vuetable-body-wrapper\",style:({height: _vm.tableHeight})},[_c('table',{class:['vuetable', _vm.css.tableClass, _vm.css.tableBodyClass]},[_c('colgroup',[_vm._l((_vm.tableFields),function(field,fieldIndex){return [(field.visible)?[_c('col',{key:fieldIndex,class:['vuetable-th-'+field.name, field.titleClass],style:({width: field.width}),attrs:{\"id\":'_col_' + field.name}})]:_vm._e()]})],2),_vm._v(\" \"),_c('tbody',{staticClass:\"vuetable-body\"},[_vm._l((_vm.tableData),function(item,itemIndex){return [_c('tr',{key:itemIndex,class:_vm.onRowClass(item, itemIndex),attrs:{\"item-index\":itemIndex,\"render\":_vm.onRowChanged(item)},on:{\"click\":function($event){return _vm.onRowClicked(item, $event)},\"dblclick\":function($event){return _vm.onRowDoubleClicked(item, $event)}}},[_vm._l((_vm.tableFields),function(field,fieldIndex){return [(field.visible)?[(_vm.isSpecialField(field.name))?[(_vm.extractName(field.name) == '__sequence')?_c('td',{key:fieldIndex,class:['vuetable-sequence', field.dataClass],domProps:{\"innerHTML\":_vm._s(_vm.renderSequence(itemIndex))}}):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__handle')?_c('td',{key:fieldIndex,class:['vuetable-handle', field.dataClass],domProps:{\"innerHTML\":_vm._s(_vm.renderIconTag(['handle-icon', _vm.css.handleIcon]))}}):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__checkbox')?_c('td',{key:fieldIndex,class:['vuetable-checkboxes', field.dataClass]},[_c('input',{attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.rowSelected(item, field.name)},on:{\"change\":function($event){return _vm.toggleCheckbox(item, field.name, $event)}}})]):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) === '__component')?_c('td',{key:fieldIndex,class:['vuetable-component', field.dataClass]},[_c(_vm.extractArgs(field.name),{tag:\"component\",attrs:{\"row-data\":item,\"row-index\":itemIndex,\"row-field\":field.sortField}})],1):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) === '__slot')?_c('td',{key:fieldIndex,class:['vuetable-slot', field.dataClass]},[_vm._t(_vm.extractArgs(field.name),null,{\"rowData\":item,\"rowIndex\":itemIndex,\"rowField\":field.sortField})],2):_vm._e()]:[_c('td',{key:fieldIndex,class:field.dataClass,domProps:{\"innerHTML\":_vm._s(_vm.renderNormalField(field, item))},on:{\"click\":function($event){return _vm.onCellClicked(item, field, $event)},\"dblclick\":function($event){return _vm.onCellDoubleClicked(item, field, $event)},\"contextmenu\":function($event){return _vm.onCellRightClicked(item, field, $event)}}})]]:_vm._e()]})],2),_vm._v(\" \"),(_vm.useDetailRow)?[_c('transition',{key:itemIndex,attrs:{\"name\":_vm.detailRowTransition}},[(_vm.isVisibleDetailRow(item[_vm.trackBy]))?_c('tr',{class:[_vm.css.detailRowClass],on:{\"click\":function($event){return _vm.onDetailRowClick(item, $event)}}},[_c('td',{attrs:{\"colspan\":_vm.countVisibleFields}},[_c(_vm.detailRowComponent,{tag:\"component\",attrs:{\"row-data\":item,\"row-index\":itemIndex}})],1)]):_vm._e()])]:_vm._e()]}),_vm._v(\" \"),(_vm.displayEmptyDataRow)?[_c('tr',[_c('td',{staticClass:\"vuetable-empty-result\",attrs:{\"colspan\":_vm.countVisibleFields},domProps:{\"innerHTML\":_vm._s(_vm.noDataTemplate)}})])]:_vm._e(),_vm._v(\" \"),(_vm.lessThanMinRows)?_vm._l((_vm.blankRows),function(i){return _c('tr',{key:i,staticClass:\"blank-row\"},[_vm._l((_vm.tableFields),function(field,fieldIndex){return [(field.visible)?_c('td',{key:fieldIndex},[_vm._v(\" \")]):_vm._e()]})],2)}):_vm._e()],2)])])]):_c('table',{class:['vuetable', _vm.css.tableClass]},[_c('thead',[_c('tr',[_vm._l((_vm.tableFields),function(field,fieldIndex){return [(field.visible)?[(_vm.isSpecialField(field.name))?[(_vm.extractName(field.name) == '__checkbox')?_c('th',{key:fieldIndex,class:['vuetable-th-checkbox-'+_vm.trackBy, field.titleClass],style:({width: field.width})},[_c('input',{attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.checkCheckboxesState(field.name)},on:{\"change\":function($event){return _vm.toggleAllCheckboxes(field.name, $event)}}})]):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__component')?_c('th',{key:fieldIndex,class:['vuetable-th-component-'+_vm.trackBy, field.titleClass, _vm.sortClass(field), {'sortable': _vm.isSortable(field)}],style:({width: field.width}),domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))},on:{\"click\":function($event){return _vm.orderBy(field, $event)}}}):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__slot')?_c('th',{key:fieldIndex,class:['vuetable-th-slot-'+_vm.extractArgs(field.name), field.titleClass, _vm.sortClass(field), {'sortable': _vm.isSortable(field)}],style:({width: field.width}),domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))},on:{\"click\":function($event){return _vm.orderBy(field, $event)}}}):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__sequence')?_c('th',{key:fieldIndex,class:['vuetable-th-sequence', field.titleClass || '', _vm.sortClass(field)],style:({width: field.width}),domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))}}):_vm._e(),_vm._v(\" \"),(_vm.notIn(_vm.extractName(field.name), ['__sequence', '__checkbox', '__component', '__slot']))?_c('th',{key:fieldIndex,class:['vuetable-th-'+field.name, field.titleClass || '', _vm.sortClass(field)],style:({width: field.width}),domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))}}):_vm._e()]:[_c('th',{key:fieldIndex,class:['vuetable-th-'+field.name, field.titleClass, _vm.sortClass(field), {'sortable': _vm.isSortable(field)}],style:({width: field.width}),attrs:{\"id\":'_' + field.name},domProps:{\"innerHTML\":_vm._s(_vm.renderTitle(field))},on:{\"click\":function($event){return _vm.orderBy(field, $event)}}})]]:_vm._e()]})],2)]),_vm._v(\" \"),_c('tbody',{staticClass:\"vuetable-body\"},[_vm._l((_vm.tableData),function(item,itemIndex){return [_c('tr',{key:itemIndex,class:_vm.onRowClass(item, itemIndex),attrs:{\"item-index\":itemIndex,\"render\":_vm.onRowChanged(item)},on:{\"dblclick\":function($event){return _vm.onRowDoubleClicked(item, $event)},\"click\":function($event){return _vm.onRowClicked(item, $event)}}},[_vm._l((_vm.tableFields),function(field,fieldIndex){return [(field.visible)?[(_vm.isSpecialField(field.name))?[(_vm.extractName(field.name) == '__sequence')?_c('td',{key:fieldIndex,class:['vuetable-sequence', field.dataClass],domProps:{\"innerHTML\":_vm._s(_vm.renderSequence(itemIndex))}}):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__handle')?_c('td',{key:fieldIndex,class:['vuetable-handle', field.dataClass],domProps:{\"innerHTML\":_vm._s(_vm.renderIconTag(['handle-icon', _vm.css.handleIcon]))}}):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) == '__checkbox')?_c('td',{key:fieldIndex,class:['vuetable-checkboxes', field.dataClass]},[_c('input',{attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":_vm.rowSelected(item, field.name)},on:{\"change\":function($event){return _vm.toggleCheckbox(item, field.name, $event)}}})]):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) === '__component')?_c('td',{key:fieldIndex,class:['vuetable-component', field.dataClass]},[_c(_vm.extractArgs(field.name),{tag:\"component\",attrs:{\"row-data\":item,\"row-index\":itemIndex,\"row-field\":field.sortField}})],1):_vm._e(),_vm._v(\" \"),(_vm.extractName(field.name) === '__slot')?_c('td',{key:fieldIndex,class:['vuetable-slot', field.dataClass]},[_vm._t(_vm.extractArgs(field.name),null,{\"rowData\":item,\"rowIndex\":itemIndex,\"rowField\":field.sortField})],2):_vm._e()]:[(_vm.hasCallback(field))?_c('td',{key:fieldIndex,class:field.dataClass,domProps:{\"innerHTML\":_vm._s(_vm.callCallback(field, item))},on:{\"click\":function($event){return _vm.onCellClicked(item, field, $event)},\"dblclick\":function($event){return _vm.onCellDoubleClicked(item, field, $event)},\"contextmenu\":function($event){return _vm.onCellRightClicked(item, field, $event)}}}):_c('td',{key:fieldIndex,class:field.dataClass,domProps:{\"innerHTML\":_vm._s(_vm.getObjectValue(item, field.name, ''))},on:{\"click\":function($event){return _vm.onCellClicked(item, field, $event)},\"dblclick\":function($event){return _vm.onCellDoubleClicked(item, field, $event)},\"contextmenu\":function($event){return _vm.onCellRightClicked(item, field, $event)}}})]]:_vm._e()]})],2),_vm._v(\" \"),(_vm.useDetailRow)?[_c('transition',{key:itemIndex,attrs:{\"name\":_vm.detailRowTransition}},[(_vm.isVisibleDetailRow(item[_vm.trackBy]))?_c('tr',{class:[_vm.css.detailRowClass],on:{\"click\":function($event){return _vm.onDetailRowClick(item, $event)}}},[_c('td',{attrs:{\"colspan\":_vm.countVisibleFields}},[_c(_vm.detailRowComponent,{tag:\"component\",attrs:{\"row-data\":item,\"row-index\":itemIndex}})],1)]):_vm._e()])]:_vm._e()]}),_vm._v(\" \"),(_vm.displayEmptyDataRow)?[_c('tr',[_c('td',{staticClass:\"vuetable-empty-result\",attrs:{\"colspan\":_vm.countVisibleFields},domProps:{\"innerHTML\":_vm._s(_vm.noDataTemplate)}})])]:_vm._e(),_vm._v(\" \"),(_vm.lessThanMinRows)?_vm._l((_vm.blankRows),function(i){return _c('tr',{key:i,staticClass:\"blank-row\"},[_vm._l((_vm.tableFields),function(field,fieldIndex){return [(field.visible)?_c('td',{key:fieldIndex},[_vm._v(\" \")]):_vm._e()]})],2)}):_vm._e()],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-2.use!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminTablePagination.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-2.use!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminTablePagination.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.tablePagination)?_c('div',{staticClass:\"vue-admin-table-pagination flex pagination\"},[_c('div',{staticClass:\"page-link prev-page\",class:[_vm.isOnFirstPage ? 'disabled' : ''],attrs:{\"title\":\"Previous Page\"},on:{\"click\":function($event){return _vm.loadPage('prev')}}}),_vm._v(\" \"),_c('div',{staticClass:\"page-link next-page\",class:[_vm.isOnLastPage ? 'disabled' : ''],attrs:{\"title\":\"Next Page\"},on:{\"click\":function($event){return _vm.loadPage('next')}}}),_vm._v(\" \"),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.tablePagination),expression:\"tablePagination\"}],staticClass:\"page-info\"},[_vm._v(_vm._s(_vm.paginationLabel))])]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render, staticRenderFns\nimport script from \"./VuetablePaginationMixin.vue?vue&type=script&lang=js&\"\nexport * from \"./VuetablePaginationMixin.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\r\n","import { render, staticRenderFns } from \"./AdminTablePagination.vue?vue&type=template&id=53f2bb54&\"\nimport script from \"./AdminTablePagination.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminTablePagination.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AdminTablePagination.vue?vue&type=style&index=0&id=53f2bb54&prod&land=scss&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./AdminTableDeleteButton.vue?vue&type=template&id=17f4cad8&scoped=true&\"\nimport script from \"./AdminTableDeleteButton.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminTableDeleteButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"17f4cad8\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('a',{staticClass:\"delete icon\",class:{disabled: _vm.disabled},attrs:{\"title\":_vm._f(\"t\")('Delete','app'),\"role\":\"button\",\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();return _vm.handleClick.apply(null, arguments)}}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-2.use!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminTableCheckbox.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-2.use!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminTableCheckbox.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"checkbox\",class:{\n checked: _vm.isChecked,\n 'table-disabled-checkbox': !_vm.status,\n },attrs:{\"title\":_vm.title},on:{\"click\":function($event){$event.preventDefault();return _vm.handleClick.apply(null, arguments)}}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./AdminTableCheckbox.vue?vue&type=template&id=1bbfb992&scoped=true&\"\nimport script from \"./AdminTableCheckbox.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminTableCheckbox.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AdminTableCheckbox.vue?vue&type=style&index=0&id=1bbfb992&prod&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1bbfb992\",\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./AdminTableActionButton.vue?vue&type=template&id=48f15ca4&scoped=true&\"\nimport script from \"./AdminTableActionButton.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminTableActionButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"48f15ca4\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('form',{ref:\"form\",attrs:{\"method\":\"post\"}},[_c('input',{attrs:{\"type\":\"hidden\",\"name\":_vm.tokenName},domProps:{\"value\":_vm.tokenValue}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"action\"},domProps:{\"value\":_vm.action}}),_vm._v(\" \"),(_vm.param)?_c('input',{attrs:{\"type\":\"hidden\",\"name\":_vm.param},domProps:{\"value\":_vm.value}}):_vm._e(),_vm._v(\" \"),_vm._l((_vm.ids),function(id,index){return _c('input',{key:index,attrs:{\"type\":\"hidden\",\"name\":\"ids[]\"},domProps:{\"value\":id}})}),_vm._v(\" \"),_c(_vm.isMenuButton ? 'div' : 'button',_vm._g({ref:\"button\",tag:\"component\",staticClass:\"btn\",class:{\n menubtn: _vm.isMenuButton,\n error: _vm.error,\n disabled: !_vm.enabled || _vm.buttonDisabled,\n },attrs:{\"data-icon\":_vm.icon,\"disabled\":_vm.buttonDisabled,\"type\":_vm.enabled && !_vm.isMenuButton && !_vm.ajax ? 'submit' : null}},\n _vm.enabled && !_vm.isMenuButton && _vm.ajax\n ? {click: _vm.handleClick(_vm.param, _vm.value, _vm.action, _vm.ajax)}\n : {}\n ),[_vm._v(_vm._s(_vm.label))]),_vm._v(\" \"),(_vm.isMenuButton)?_c('div',{staticClass:\"menu\"},[_vm._l((_vm.actionsList),function(actList,ind){return [_c('ul',{key:ind,staticClass:\"padded\"},_vm._l((actList),function(act,index){return _c('li',{key:index},[_c('a',{class:{\n error: act.error !== undefined && act.error,\n disabled:\n act.allowMultiple !== undefined &&\n !act.allowMultiple &&\n _vm.hasMultipleSelected,\n },attrs:{\"href\":\"#\",\"data-param\":act.param,\"data-value\":act.value,\"data-ajax\":act.ajax},on:{\"click\":function($event){$event.preventDefault();!(\n act.allowMultiple !== undefined &&\n !act.allowMultiple &&\n _vm.hasMultipleSelected\n )\n ? _vm.handleClick(act.param, act.value, act.action, act.ajax)\n : null}}},[(act.status)?_c('span',{class:'status ' + act.status}):_vm._e(),_vm._v(_vm._s(act.label)+\"\\n \")])])}),0),_vm._v(\" \"),(\n _vm.actionsList.length > 1 && ind != _vm.actionsList.length - 1 && ind != 0\n )?_c('hr',{key:ind}):_vm._e()]})],2):_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(\n _vm.rowData.detail.content &&\n (!_vm.rowData.detail.showAsList || _vm.rowData.detail.showAsList === undefined)\n )?_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.rowData.detail.content)}}):_vm._e(),_vm._v(\" \"),(_vm.rowData.detail.content && _vm.rowData.detail.showAsList)?_c('div',_vm._l((_vm.listKeys),function(key){return _c('div',{key:key,staticClass:\"order-flex detail-list\",class:{'detail-list-bg': _vm.index % 2}},[_c('div',{staticClass:\"detail-list-key\"},[_vm._v(_vm._s(key)+\":\")]),_vm._v(\" \"),_c('div',{staticClass:\"detail-list-value\"},[_vm._v(_vm._s(_vm.list[key]))])])}),0):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-2.use!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminTableDetailRow.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-2.use!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AdminTableDetailRow.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AdminTableDetailRow.vue?vue&type=template&id=759b1d62&\"\nimport script from \"./AdminTableDetailRow.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminTableDetailRow.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AdminTableDetailRow.vue?vue&type=style&index=0&id=759b1d62&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./AdminTableButton.vue?vue&type=template&id=0235bfad&scoped=true&\"\nimport script from \"./AdminTableButton.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminTableButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0235bfad\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('a',{ref:\"button\",staticClass:\"btn\",class:_vm.buttonClass,attrs:{\"href\":_vm.linkHref,\"data-icon\":_vm.icon},on:{\"click\":_vm.handleClick}},[_vm._v(_vm._s(_vm.label))])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./AdminTableCopyTextButton.vue?vue&type=template&id=b82d2fda&scoped=true&\"\nimport script from \"./AdminTableCopyTextButton.vue?vue&type=script&lang=js&\"\nexport * from \"./AdminTableCopyTextButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"b82d2fda\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div')\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**!\n * Sortable 1.15.0\n * @author\tRubaXa \n * @author\towenm \n * @license MIT\n */\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n\n if (enumerableOnly) {\n symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n }\n\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\n\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nvar version = \"1.15.0\";\n\nfunction userAgent(pattern) {\n if (typeof window !== 'undefined' && window.navigator) {\n return !! /*@__PURE__*/navigator.userAgent.match(pattern);\n }\n}\n\nvar IE11OrLess = userAgent(/(?:Trident.*rv[ :]?11\\.|msie|iemobile|Windows Phone)/i);\nvar Edge = userAgent(/Edge/i);\nvar FireFox = userAgent(/firefox/i);\nvar Safari = userAgent(/safari/i) && !userAgent(/chrome/i) && !userAgent(/android/i);\nvar IOS = userAgent(/iP(ad|od|hone)/i);\nvar ChromeForAndroid = userAgent(/chrome/i) && userAgent(/android/i);\n\nvar captureMode = {\n capture: false,\n passive: false\n};\n\nfunction on(el, event, fn) {\n el.addEventListener(event, fn, !IE11OrLess && captureMode);\n}\n\nfunction off(el, event, fn) {\n el.removeEventListener(event, fn, !IE11OrLess && captureMode);\n}\n\nfunction matches(\n/**HTMLElement*/\nel,\n/**String*/\nselector) {\n if (!selector) return;\n selector[0] === '>' && (selector = selector.substring(1));\n\n if (el) {\n try {\n if (el.matches) {\n return el.matches(selector);\n } else if (el.msMatchesSelector) {\n return el.msMatchesSelector(selector);\n } else if (el.webkitMatchesSelector) {\n return el.webkitMatchesSelector(selector);\n }\n } catch (_) {\n return false;\n }\n }\n\n return false;\n}\n\nfunction getParentOrHost(el) {\n return el.host && el !== document && el.host.nodeType ? el.host : el.parentNode;\n}\n\nfunction closest(\n/**HTMLElement*/\nel,\n/**String*/\nselector,\n/**HTMLElement*/\nctx, includeCTX) {\n if (el) {\n ctx = ctx || document;\n\n do {\n if (selector != null && (selector[0] === '>' ? el.parentNode === ctx && matches(el, selector) : matches(el, selector)) || includeCTX && el === ctx) {\n return el;\n }\n\n if (el === ctx) break;\n /* jshint boss:true */\n } while (el = getParentOrHost(el));\n }\n\n return null;\n}\n\nvar R_SPACE = /\\s+/g;\n\nfunction toggleClass(el, name, state) {\n if (el && name) {\n if (el.classList) {\n el.classList[state ? 'add' : 'remove'](name);\n } else {\n var className = (' ' + el.className + ' ').replace(R_SPACE, ' ').replace(' ' + name + ' ', ' ');\n el.className = (className + (state ? ' ' + name : '')).replace(R_SPACE, ' ');\n }\n }\n}\n\nfunction css(el, prop, val) {\n var style = el && el.style;\n\n if (style) {\n if (val === void 0) {\n if (document.defaultView && document.defaultView.getComputedStyle) {\n val = document.defaultView.getComputedStyle(el, '');\n } else if (el.currentStyle) {\n val = el.currentStyle;\n }\n\n return prop === void 0 ? val : val[prop];\n } else {\n if (!(prop in style) && prop.indexOf('webkit') === -1) {\n prop = '-webkit-' + prop;\n }\n\n style[prop] = val + (typeof val === 'string' ? '' : 'px');\n }\n }\n}\n\nfunction matrix(el, selfOnly) {\n var appliedTransforms = '';\n\n if (typeof el === 'string') {\n appliedTransforms = el;\n } else {\n do {\n var transform = css(el, 'transform');\n\n if (transform && transform !== 'none') {\n appliedTransforms = transform + ' ' + appliedTransforms;\n }\n /* jshint boss:true */\n\n } while (!selfOnly && (el = el.parentNode));\n }\n\n var matrixFn = window.DOMMatrix || window.WebKitCSSMatrix || window.CSSMatrix || window.MSCSSMatrix;\n /*jshint -W056 */\n\n return matrixFn && new matrixFn(appliedTransforms);\n}\n\nfunction find(ctx, tagName, iterator) {\n if (ctx) {\n var list = ctx.getElementsByTagName(tagName),\n i = 0,\n n = list.length;\n\n if (iterator) {\n for (; i < n; i++) {\n iterator(list[i], i);\n }\n }\n\n return list;\n }\n\n return [];\n}\n\nfunction getWindowScrollingElement() {\n var scrollingElement = document.scrollingElement;\n\n if (scrollingElement) {\n return scrollingElement;\n } else {\n return document.documentElement;\n }\n}\n/**\n * Returns the \"bounding client rect\" of given element\n * @param {HTMLElement} el The element whose boundingClientRect is wanted\n * @param {[Boolean]} relativeToContainingBlock Whether the rect should be relative to the containing block of (including) the container\n * @param {[Boolean]} relativeToNonStaticParent Whether the rect should be relative to the relative parent of (including) the contaienr\n * @param {[Boolean]} undoScale Whether the container's scale() should be undone\n * @param {[HTMLElement]} container The parent the element will be placed in\n * @return {Object} The boundingClientRect of el, with specified adjustments\n */\n\n\nfunction getRect(el, relativeToContainingBlock, relativeToNonStaticParent, undoScale, container) {\n if (!el.getBoundingClientRect && el !== window) return;\n var elRect, top, left, bottom, right, height, width;\n\n if (el !== window && el.parentNode && el !== getWindowScrollingElement()) {\n elRect = el.getBoundingClientRect();\n top = elRect.top;\n left = elRect.left;\n bottom = elRect.bottom;\n right = elRect.right;\n height = elRect.height;\n width = elRect.width;\n } else {\n top = 0;\n left = 0;\n bottom = window.innerHeight;\n right = window.innerWidth;\n height = window.innerHeight;\n width = window.innerWidth;\n }\n\n if ((relativeToContainingBlock || relativeToNonStaticParent) && el !== window) {\n // Adjust for translate()\n container = container || el.parentNode; // solves #1123 (see: https://stackoverflow.com/a/37953806/6088312)\n // Not needed on <= IE11\n\n if (!IE11OrLess) {\n do {\n if (container && container.getBoundingClientRect && (css(container, 'transform') !== 'none' || relativeToNonStaticParent && css(container, 'position') !== 'static')) {\n var containerRect = container.getBoundingClientRect(); // Set relative to edges of padding box of container\n\n top -= containerRect.top + parseInt(css(container, 'border-top-width'));\n left -= containerRect.left + parseInt(css(container, 'border-left-width'));\n bottom = top + elRect.height;\n right = left + elRect.width;\n break;\n }\n /* jshint boss:true */\n\n } while (container = container.parentNode);\n }\n }\n\n if (undoScale && el !== window) {\n // Adjust for scale()\n var elMatrix = matrix(container || el),\n scaleX = elMatrix && elMatrix.a,\n scaleY = elMatrix && elMatrix.d;\n\n if (elMatrix) {\n top /= scaleY;\n left /= scaleX;\n width /= scaleX;\n height /= scaleY;\n bottom = top + height;\n right = left + width;\n }\n }\n\n return {\n top: top,\n left: left,\n bottom: bottom,\n right: right,\n width: width,\n height: height\n };\n}\n/**\n * Checks if a side of an element is scrolled past a side of its parents\n * @param {HTMLElement} el The element who's side being scrolled out of view is in question\n * @param {String} elSide Side of the element in question ('top', 'left', 'right', 'bottom')\n * @param {String} parentSide Side of the parent in question ('top', 'left', 'right', 'bottom')\n * @return {HTMLElement} The parent scroll element that the el's side is scrolled past, or null if there is no such element\n */\n\n\nfunction isScrolledPast(el, elSide, parentSide) {\n var parent = getParentAutoScrollElement(el, true),\n elSideVal = getRect(el)[elSide];\n /* jshint boss:true */\n\n while (parent) {\n var parentSideVal = getRect(parent)[parentSide],\n visible = void 0;\n\n if (parentSide === 'top' || parentSide === 'left') {\n visible = elSideVal >= parentSideVal;\n } else {\n visible = elSideVal <= parentSideVal;\n }\n\n if (!visible) return parent;\n if (parent === getWindowScrollingElement()) break;\n parent = getParentAutoScrollElement(parent, false);\n }\n\n return false;\n}\n/**\n * Gets nth child of el, ignoring hidden children, sortable's elements (does not ignore clone if it's visible)\n * and non-draggable elements\n * @param {HTMLElement} el The parent element\n * @param {Number} childNum The index of the child\n * @param {Object} options Parent Sortable's options\n * @return {HTMLElement} The child at index childNum, or null if not found\n */\n\n\nfunction getChild(el, childNum, options, includeDragEl) {\n var currentChild = 0,\n i = 0,\n children = el.children;\n\n while (i < children.length) {\n if (children[i].style.display !== 'none' && children[i] !== Sortable.ghost && (includeDragEl || children[i] !== Sortable.dragged) && closest(children[i], options.draggable, el, false)) {\n if (currentChild === childNum) {\n return children[i];\n }\n\n currentChild++;\n }\n\n i++;\n }\n\n return null;\n}\n/**\n * Gets the last child in the el, ignoring ghostEl or invisible elements (clones)\n * @param {HTMLElement} el Parent element\n * @param {selector} selector Any other elements that should be ignored\n * @return {HTMLElement} The last child, ignoring ghostEl\n */\n\n\nfunction lastChild(el, selector) {\n var last = el.lastElementChild;\n\n while (last && (last === Sortable.ghost || css(last, 'display') === 'none' || selector && !matches(last, selector))) {\n last = last.previousElementSibling;\n }\n\n return last || null;\n}\n/**\n * Returns the index of an element within its parent for a selected set of\n * elements\n * @param {HTMLElement} el\n * @param {selector} selector\n * @return {number}\n */\n\n\nfunction index(el, selector) {\n var index = 0;\n\n if (!el || !el.parentNode) {\n return -1;\n }\n /* jshint boss:true */\n\n\n while (el = el.previousElementSibling) {\n if (el.nodeName.toUpperCase() !== 'TEMPLATE' && el !== Sortable.clone && (!selector || matches(el, selector))) {\n index++;\n }\n }\n\n return index;\n}\n/**\n * Returns the scroll offset of the given element, added with all the scroll offsets of parent elements.\n * The value is returned in real pixels.\n * @param {HTMLElement} el\n * @return {Array} Offsets in the format of [left, top]\n */\n\n\nfunction getRelativeScrollOffset(el) {\n var offsetLeft = 0,\n offsetTop = 0,\n winScroller = getWindowScrollingElement();\n\n if (el) {\n do {\n var elMatrix = matrix(el),\n scaleX = elMatrix.a,\n scaleY = elMatrix.d;\n offsetLeft += el.scrollLeft * scaleX;\n offsetTop += el.scrollTop * scaleY;\n } while (el !== winScroller && (el = el.parentNode));\n }\n\n return [offsetLeft, offsetTop];\n}\n/**\n * Returns the index of the object within the given array\n * @param {Array} arr Array that may or may not hold the object\n * @param {Object} obj An object that has a key-value pair unique to and identical to a key-value pair in the object you want to find\n * @return {Number} The index of the object in the array, or -1\n */\n\n\nfunction indexOfObject(arr, obj) {\n for (var i in arr) {\n if (!arr.hasOwnProperty(i)) continue;\n\n for (var key in obj) {\n if (obj.hasOwnProperty(key) && obj[key] === arr[i][key]) return Number(i);\n }\n }\n\n return -1;\n}\n\nfunction getParentAutoScrollElement(el, includeSelf) {\n // skip to window\n if (!el || !el.getBoundingClientRect) return getWindowScrollingElement();\n var elem = el;\n var gotSelf = false;\n\n do {\n // we don't need to get elem css if it isn't even overflowing in the first place (performance)\n if (elem.clientWidth < elem.scrollWidth || elem.clientHeight < elem.scrollHeight) {\n var elemCSS = css(elem);\n\n if (elem.clientWidth < elem.scrollWidth && (elemCSS.overflowX == 'auto' || elemCSS.overflowX == 'scroll') || elem.clientHeight < elem.scrollHeight && (elemCSS.overflowY == 'auto' || elemCSS.overflowY == 'scroll')) {\n if (!elem.getBoundingClientRect || elem === document.body) return getWindowScrollingElement();\n if (gotSelf || includeSelf) return elem;\n gotSelf = true;\n }\n }\n /* jshint boss:true */\n\n } while (elem = elem.parentNode);\n\n return getWindowScrollingElement();\n}\n\nfunction extend(dst, src) {\n if (dst && src) {\n for (var key in src) {\n if (src.hasOwnProperty(key)) {\n dst[key] = src[key];\n }\n }\n }\n\n return dst;\n}\n\nfunction isRectEqual(rect1, rect2) {\n return Math.round(rect1.top) === Math.round(rect2.top) && Math.round(rect1.left) === Math.round(rect2.left) && Math.round(rect1.height) === Math.round(rect2.height) && Math.round(rect1.width) === Math.round(rect2.width);\n}\n\nvar _throttleTimeout;\n\nfunction throttle(callback, ms) {\n return function () {\n if (!_throttleTimeout) {\n var args = arguments,\n _this = this;\n\n if (args.length === 1) {\n callback.call(_this, args[0]);\n } else {\n callback.apply(_this, args);\n }\n\n _throttleTimeout = setTimeout(function () {\n _throttleTimeout = void 0;\n }, ms);\n }\n };\n}\n\nfunction cancelThrottle() {\n clearTimeout(_throttleTimeout);\n _throttleTimeout = void 0;\n}\n\nfunction scrollBy(el, x, y) {\n el.scrollLeft += x;\n el.scrollTop += y;\n}\n\nfunction clone(el) {\n var Polymer = window.Polymer;\n var $ = window.jQuery || window.Zepto;\n\n if (Polymer && Polymer.dom) {\n return Polymer.dom(el).cloneNode(true);\n } else if ($) {\n return $(el).clone(true)[0];\n } else {\n return el.cloneNode(true);\n }\n}\n\nfunction setRect(el, rect) {\n css(el, 'position', 'absolute');\n css(el, 'top', rect.top);\n css(el, 'left', rect.left);\n css(el, 'width', rect.width);\n css(el, 'height', rect.height);\n}\n\nfunction unsetRect(el) {\n css(el, 'position', '');\n css(el, 'top', '');\n css(el, 'left', '');\n css(el, 'width', '');\n css(el, 'height', '');\n}\n\nvar expando = 'Sortable' + new Date().getTime();\n\nfunction AnimationStateManager() {\n var animationStates = [],\n animationCallbackId;\n return {\n captureAnimationState: function captureAnimationState() {\n animationStates = [];\n if (!this.options.animation) return;\n var children = [].slice.call(this.el.children);\n children.forEach(function (child) {\n if (css(child, 'display') === 'none' || child === Sortable.ghost) return;\n animationStates.push({\n target: child,\n rect: getRect(child)\n });\n\n var fromRect = _objectSpread2({}, animationStates[animationStates.length - 1].rect); // If animating: compensate for current animation\n\n\n if (child.thisAnimationDuration) {\n var childMatrix = matrix(child, true);\n\n if (childMatrix) {\n fromRect.top -= childMatrix.f;\n fromRect.left -= childMatrix.e;\n }\n }\n\n child.fromRect = fromRect;\n });\n },\n addAnimationState: function addAnimationState(state) {\n animationStates.push(state);\n },\n removeAnimationState: function removeAnimationState(target) {\n animationStates.splice(indexOfObject(animationStates, {\n target: target\n }), 1);\n },\n animateAll: function animateAll(callback) {\n var _this = this;\n\n if (!this.options.animation) {\n clearTimeout(animationCallbackId);\n if (typeof callback === 'function') callback();\n return;\n }\n\n var animating = false,\n animationTime = 0;\n animationStates.forEach(function (state) {\n var time = 0,\n target = state.target,\n fromRect = target.fromRect,\n toRect = getRect(target),\n prevFromRect = target.prevFromRect,\n prevToRect = target.prevToRect,\n animatingRect = state.rect,\n targetMatrix = matrix(target, true);\n\n if (targetMatrix) {\n // Compensate for current animation\n toRect.top -= targetMatrix.f;\n toRect.left -= targetMatrix.e;\n }\n\n target.toRect = toRect;\n\n if (target.thisAnimationDuration) {\n // Could also check if animatingRect is between fromRect and toRect\n if (isRectEqual(prevFromRect, toRect) && !isRectEqual(fromRect, toRect) && // Make sure animatingRect is on line between toRect & fromRect\n (animatingRect.top - toRect.top) / (animatingRect.left - toRect.left) === (fromRect.top - toRect.top) / (fromRect.left - toRect.left)) {\n // If returning to same place as started from animation and on same axis\n time = calculateRealTime(animatingRect, prevFromRect, prevToRect, _this.options);\n }\n } // if fromRect != toRect: animate\n\n\n if (!isRectEqual(toRect, fromRect)) {\n target.prevFromRect = fromRect;\n target.prevToRect = toRect;\n\n if (!time) {\n time = _this.options.animation;\n }\n\n _this.animate(target, animatingRect, toRect, time);\n }\n\n if (time) {\n animating = true;\n animationTime = Math.max(animationTime, time);\n clearTimeout(target.animationResetTimer);\n target.animationResetTimer = setTimeout(function () {\n target.animationTime = 0;\n target.prevFromRect = null;\n target.fromRect = null;\n target.prevToRect = null;\n target.thisAnimationDuration = null;\n }, time);\n target.thisAnimationDuration = time;\n }\n });\n clearTimeout(animationCallbackId);\n\n if (!animating) {\n if (typeof callback === 'function') callback();\n } else {\n animationCallbackId = setTimeout(function () {\n if (typeof callback === 'function') callback();\n }, animationTime);\n }\n\n animationStates = [];\n },\n animate: function animate(target, currentRect, toRect, duration) {\n if (duration) {\n css(target, 'transition', '');\n css(target, 'transform', '');\n var elMatrix = matrix(this.el),\n scaleX = elMatrix && elMatrix.a,\n scaleY = elMatrix && elMatrix.d,\n translateX = (currentRect.left - toRect.left) / (scaleX || 1),\n translateY = (currentRect.top - toRect.top) / (scaleY || 1);\n target.animatingX = !!translateX;\n target.animatingY = !!translateY;\n css(target, 'transform', 'translate3d(' + translateX + 'px,' + translateY + 'px,0)');\n this.forRepaintDummy = repaint(target); // repaint\n\n css(target, 'transition', 'transform ' + duration + 'ms' + (this.options.easing ? ' ' + this.options.easing : ''));\n css(target, 'transform', 'translate3d(0,0,0)');\n typeof target.animated === 'number' && clearTimeout(target.animated);\n target.animated = setTimeout(function () {\n css(target, 'transition', '');\n css(target, 'transform', '');\n target.animated = false;\n target.animatingX = false;\n target.animatingY = false;\n }, duration);\n }\n }\n };\n}\n\nfunction repaint(target) {\n return target.offsetWidth;\n}\n\nfunction calculateRealTime(animatingRect, fromRect, toRect, options) {\n return Math.sqrt(Math.pow(fromRect.top - animatingRect.top, 2) + Math.pow(fromRect.left - animatingRect.left, 2)) / Math.sqrt(Math.pow(fromRect.top - toRect.top, 2) + Math.pow(fromRect.left - toRect.left, 2)) * options.animation;\n}\n\nvar plugins = [];\nvar defaults = {\n initializeByDefault: true\n};\nvar PluginManager = {\n mount: function mount(plugin) {\n // Set default static properties\n for (var option in defaults) {\n if (defaults.hasOwnProperty(option) && !(option in plugin)) {\n plugin[option] = defaults[option];\n }\n }\n\n plugins.forEach(function (p) {\n if (p.pluginName === plugin.pluginName) {\n throw \"Sortable: Cannot mount plugin \".concat(plugin.pluginName, \" more than once\");\n }\n });\n plugins.push(plugin);\n },\n pluginEvent: function pluginEvent(eventName, sortable, evt) {\n var _this = this;\n\n this.eventCanceled = false;\n\n evt.cancel = function () {\n _this.eventCanceled = true;\n };\n\n var eventNameGlobal = eventName + 'Global';\n plugins.forEach(function (plugin) {\n if (!sortable[plugin.pluginName]) return; // Fire global events if it exists in this sortable\n\n if (sortable[plugin.pluginName][eventNameGlobal]) {\n sortable[plugin.pluginName][eventNameGlobal](_objectSpread2({\n sortable: sortable\n }, evt));\n } // Only fire plugin event if plugin is enabled in this sortable,\n // and plugin has event defined\n\n\n if (sortable.options[plugin.pluginName] && sortable[plugin.pluginName][eventName]) {\n sortable[plugin.pluginName][eventName](_objectSpread2({\n sortable: sortable\n }, evt));\n }\n });\n },\n initializePlugins: function initializePlugins(sortable, el, defaults, options) {\n plugins.forEach(function (plugin) {\n var pluginName = plugin.pluginName;\n if (!sortable.options[pluginName] && !plugin.initializeByDefault) return;\n var initialized = new plugin(sortable, el, sortable.options);\n initialized.sortable = sortable;\n initialized.options = sortable.options;\n sortable[pluginName] = initialized; // Add default options from plugin\n\n _extends(defaults, initialized.defaults);\n });\n\n for (var option in sortable.options) {\n if (!sortable.options.hasOwnProperty(option)) continue;\n var modified = this.modifyOption(sortable, option, sortable.options[option]);\n\n if (typeof modified !== 'undefined') {\n sortable.options[option] = modified;\n }\n }\n },\n getEventProperties: function getEventProperties(name, sortable) {\n var eventProperties = {};\n plugins.forEach(function (plugin) {\n if (typeof plugin.eventProperties !== 'function') return;\n\n _extends(eventProperties, plugin.eventProperties.call(sortable[plugin.pluginName], name));\n });\n return eventProperties;\n },\n modifyOption: function modifyOption(sortable, name, value) {\n var modifiedValue;\n plugins.forEach(function (plugin) {\n // Plugin must exist on the Sortable\n if (!sortable[plugin.pluginName]) return; // If static option listener exists for this option, call in the context of the Sortable's instance of this plugin\n\n if (plugin.optionListeners && typeof plugin.optionListeners[name] === 'function') {\n modifiedValue = plugin.optionListeners[name].call(sortable[plugin.pluginName], value);\n }\n });\n return modifiedValue;\n }\n};\n\nfunction dispatchEvent(_ref) {\n var sortable = _ref.sortable,\n rootEl = _ref.rootEl,\n name = _ref.name,\n targetEl = _ref.targetEl,\n cloneEl = _ref.cloneEl,\n toEl = _ref.toEl,\n fromEl = _ref.fromEl,\n oldIndex = _ref.oldIndex,\n newIndex = _ref.newIndex,\n oldDraggableIndex = _ref.oldDraggableIndex,\n newDraggableIndex = _ref.newDraggableIndex,\n originalEvent = _ref.originalEvent,\n putSortable = _ref.putSortable,\n extraEventProperties = _ref.extraEventProperties;\n sortable = sortable || rootEl && rootEl[expando];\n if (!sortable) return;\n var evt,\n options = sortable.options,\n onName = 'on' + name.charAt(0).toUpperCase() + name.substr(1); // Support for new CustomEvent feature\n\n if (window.CustomEvent && !IE11OrLess && !Edge) {\n evt = new CustomEvent(name, {\n bubbles: true,\n cancelable: true\n });\n } else {\n evt = document.createEvent('Event');\n evt.initEvent(name, true, true);\n }\n\n evt.to = toEl || rootEl;\n evt.from = fromEl || rootEl;\n evt.item = targetEl || rootEl;\n evt.clone = cloneEl;\n evt.oldIndex = oldIndex;\n evt.newIndex = newIndex;\n evt.oldDraggableIndex = oldDraggableIndex;\n evt.newDraggableIndex = newDraggableIndex;\n evt.originalEvent = originalEvent;\n evt.pullMode = putSortable ? putSortable.lastPutMode : undefined;\n\n var allEventProperties = _objectSpread2(_objectSpread2({}, extraEventProperties), PluginManager.getEventProperties(name, sortable));\n\n for (var option in allEventProperties) {\n evt[option] = allEventProperties[option];\n }\n\n if (rootEl) {\n rootEl.dispatchEvent(evt);\n }\n\n if (options[onName]) {\n options[onName].call(sortable, evt);\n }\n}\n\nvar _excluded = [\"evt\"];\n\nvar pluginEvent = function pluginEvent(eventName, sortable) {\n var _ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},\n originalEvent = _ref.evt,\n data = _objectWithoutProperties(_ref, _excluded);\n\n PluginManager.pluginEvent.bind(Sortable)(eventName, sortable, _objectSpread2({\n dragEl: dragEl,\n parentEl: parentEl,\n ghostEl: ghostEl,\n rootEl: rootEl,\n nextEl: nextEl,\n lastDownEl: lastDownEl,\n cloneEl: cloneEl,\n cloneHidden: cloneHidden,\n dragStarted: moved,\n putSortable: putSortable,\n activeSortable: Sortable.active,\n originalEvent: originalEvent,\n oldIndex: oldIndex,\n oldDraggableIndex: oldDraggableIndex,\n newIndex: newIndex,\n newDraggableIndex: newDraggableIndex,\n hideGhostForTarget: _hideGhostForTarget,\n unhideGhostForTarget: _unhideGhostForTarget,\n cloneNowHidden: function cloneNowHidden() {\n cloneHidden = true;\n },\n cloneNowShown: function cloneNowShown() {\n cloneHidden = false;\n },\n dispatchSortableEvent: function dispatchSortableEvent(name) {\n _dispatchEvent({\n sortable: sortable,\n name: name,\n originalEvent: originalEvent\n });\n }\n }, data));\n};\n\nfunction _dispatchEvent(info) {\n dispatchEvent(_objectSpread2({\n putSortable: putSortable,\n cloneEl: cloneEl,\n targetEl: dragEl,\n rootEl: rootEl,\n oldIndex: oldIndex,\n oldDraggableIndex: oldDraggableIndex,\n newIndex: newIndex,\n newDraggableIndex: newDraggableIndex\n }, info));\n}\n\nvar dragEl,\n parentEl,\n ghostEl,\n rootEl,\n nextEl,\n lastDownEl,\n cloneEl,\n cloneHidden,\n oldIndex,\n newIndex,\n oldDraggableIndex,\n newDraggableIndex,\n activeGroup,\n putSortable,\n awaitingDragStarted = false,\n ignoreNextClick = false,\n sortables = [],\n tapEvt,\n touchEvt,\n lastDx,\n lastDy,\n tapDistanceLeft,\n tapDistanceTop,\n moved,\n lastTarget,\n lastDirection,\n pastFirstInvertThresh = false,\n isCircumstantialInvert = false,\n targetMoveDistance,\n // For positioning ghost absolutely\nghostRelativeParent,\n ghostRelativeParentInitialScroll = [],\n // (left, top)\n_silent = false,\n savedInputChecked = [];\n/** @const */\n\nvar documentExists = typeof document !== 'undefined',\n PositionGhostAbsolutely = IOS,\n CSSFloatProperty = Edge || IE11OrLess ? 'cssFloat' : 'float',\n // This will not pass for IE9, because IE9 DnD only works on anchors\nsupportDraggable = documentExists && !ChromeForAndroid && !IOS && 'draggable' in document.createElement('div'),\n supportCssPointerEvents = function () {\n if (!documentExists) return; // false when <= IE11\n\n if (IE11OrLess) {\n return false;\n }\n\n var el = document.createElement('x');\n el.style.cssText = 'pointer-events:auto';\n return el.style.pointerEvents === 'auto';\n}(),\n _detectDirection = function _detectDirection(el, options) {\n var elCSS = css(el),\n elWidth = parseInt(elCSS.width) - parseInt(elCSS.paddingLeft) - parseInt(elCSS.paddingRight) - parseInt(elCSS.borderLeftWidth) - parseInt(elCSS.borderRightWidth),\n child1 = getChild(el, 0, options),\n child2 = getChild(el, 1, options),\n firstChildCSS = child1 && css(child1),\n secondChildCSS = child2 && css(child2),\n firstChildWidth = firstChildCSS && parseInt(firstChildCSS.marginLeft) + parseInt(firstChildCSS.marginRight) + getRect(child1).width,\n secondChildWidth = secondChildCSS && parseInt(secondChildCSS.marginLeft) + parseInt(secondChildCSS.marginRight) + getRect(child2).width;\n\n if (elCSS.display === 'flex') {\n return elCSS.flexDirection === 'column' || elCSS.flexDirection === 'column-reverse' ? 'vertical' : 'horizontal';\n }\n\n if (elCSS.display === 'grid') {\n return elCSS.gridTemplateColumns.split(' ').length <= 1 ? 'vertical' : 'horizontal';\n }\n\n if (child1 && firstChildCSS[\"float\"] && firstChildCSS[\"float\"] !== 'none') {\n var touchingSideChild2 = firstChildCSS[\"float\"] === 'left' ? 'left' : 'right';\n return child2 && (secondChildCSS.clear === 'both' || secondChildCSS.clear === touchingSideChild2) ? 'vertical' : 'horizontal';\n }\n\n return child1 && (firstChildCSS.display === 'block' || firstChildCSS.display === 'flex' || firstChildCSS.display === 'table' || firstChildCSS.display === 'grid' || firstChildWidth >= elWidth && elCSS[CSSFloatProperty] === 'none' || child2 && elCSS[CSSFloatProperty] === 'none' && firstChildWidth + secondChildWidth > elWidth) ? 'vertical' : 'horizontal';\n},\n _dragElInRowColumn = function _dragElInRowColumn(dragRect, targetRect, vertical) {\n var dragElS1Opp = vertical ? dragRect.left : dragRect.top,\n dragElS2Opp = vertical ? dragRect.right : dragRect.bottom,\n dragElOppLength = vertical ? dragRect.width : dragRect.height,\n targetS1Opp = vertical ? targetRect.left : targetRect.top,\n targetS2Opp = vertical ? targetRect.right : targetRect.bottom,\n targetOppLength = vertical ? targetRect.width : targetRect.height;\n return dragElS1Opp === targetS1Opp || dragElS2Opp === targetS2Opp || dragElS1Opp + dragElOppLength / 2 === targetS1Opp + targetOppLength / 2;\n},\n\n/**\r\n * Detects first nearest empty sortable to X and Y position using emptyInsertThreshold.\r\n * @param {Number} x X position\r\n * @param {Number} y Y position\r\n * @return {HTMLElement} Element of the first found nearest Sortable\r\n */\n_detectNearestEmptySortable = function _detectNearestEmptySortable(x, y) {\n var ret;\n sortables.some(function (sortable) {\n var threshold = sortable[expando].options.emptyInsertThreshold;\n if (!threshold || lastChild(sortable)) return;\n var rect = getRect(sortable),\n insideHorizontally = x >= rect.left - threshold && x <= rect.right + threshold,\n insideVertically = y >= rect.top - threshold && y <= rect.bottom + threshold;\n\n if (insideHorizontally && insideVertically) {\n return ret = sortable;\n }\n });\n return ret;\n},\n _prepareGroup = function _prepareGroup(options) {\n function toFn(value, pull) {\n return function (to, from, dragEl, evt) {\n var sameGroup = to.options.group.name && from.options.group.name && to.options.group.name === from.options.group.name;\n\n if (value == null && (pull || sameGroup)) {\n // Default pull value\n // Default pull and put value if same group\n return true;\n } else if (value == null || value === false) {\n return false;\n } else if (pull && value === 'clone') {\n return value;\n } else if (typeof value === 'function') {\n return toFn(value(to, from, dragEl, evt), pull)(to, from, dragEl, evt);\n } else {\n var otherGroup = (pull ? to : from).options.group.name;\n return value === true || typeof value === 'string' && value === otherGroup || value.join && value.indexOf(otherGroup) > -1;\n }\n };\n }\n\n var group = {};\n var originalGroup = options.group;\n\n if (!originalGroup || _typeof(originalGroup) != 'object') {\n originalGroup = {\n name: originalGroup\n };\n }\n\n group.name = originalGroup.name;\n group.checkPull = toFn(originalGroup.pull, true);\n group.checkPut = toFn(originalGroup.put);\n group.revertClone = originalGroup.revertClone;\n options.group = group;\n},\n _hideGhostForTarget = function _hideGhostForTarget() {\n if (!supportCssPointerEvents && ghostEl) {\n css(ghostEl, 'display', 'none');\n }\n},\n _unhideGhostForTarget = function _unhideGhostForTarget() {\n if (!supportCssPointerEvents && ghostEl) {\n css(ghostEl, 'display', '');\n }\n}; // #1184 fix - Prevent click event on fallback if dragged but item not changed position\n\n\nif (documentExists && !ChromeForAndroid) {\n document.addEventListener('click', function (evt) {\n if (ignoreNextClick) {\n evt.preventDefault();\n evt.stopPropagation && evt.stopPropagation();\n evt.stopImmediatePropagation && evt.stopImmediatePropagation();\n ignoreNextClick = false;\n return false;\n }\n }, true);\n}\n\nvar nearestEmptyInsertDetectEvent = function nearestEmptyInsertDetectEvent(evt) {\n if (dragEl) {\n evt = evt.touches ? evt.touches[0] : evt;\n\n var nearest = _detectNearestEmptySortable(evt.clientX, evt.clientY);\n\n if (nearest) {\n // Create imitation event\n var event = {};\n\n for (var i in evt) {\n if (evt.hasOwnProperty(i)) {\n event[i] = evt[i];\n }\n }\n\n event.target = event.rootEl = nearest;\n event.preventDefault = void 0;\n event.stopPropagation = void 0;\n\n nearest[expando]._onDragOver(event);\n }\n }\n};\n\nvar _checkOutsideTargetEl = function _checkOutsideTargetEl(evt) {\n if (dragEl) {\n dragEl.parentNode[expando]._isOutsideThisEl(evt.target);\n }\n};\n/**\r\n * @class Sortable\r\n * @param {HTMLElement} el\r\n * @param {Object} [options]\r\n */\n\n\nfunction Sortable(el, options) {\n if (!(el && el.nodeType && el.nodeType === 1)) {\n throw \"Sortable: `el` must be an HTMLElement, not \".concat({}.toString.call(el));\n }\n\n this.el = el; // root element\n\n this.options = options = _extends({}, options); // Export instance\n\n el[expando] = this;\n var defaults = {\n group: null,\n sort: true,\n disabled: false,\n store: null,\n handle: null,\n draggable: /^[uo]l$/i.test(el.nodeName) ? '>li' : '>*',\n swapThreshold: 1,\n // percentage; 0 <= x <= 1\n invertSwap: false,\n // invert always\n invertedSwapThreshold: null,\n // will be set to same as swapThreshold if default\n removeCloneOnHide: true,\n direction: function direction() {\n return _detectDirection(el, this.options);\n },\n ghostClass: 'sortable-ghost',\n chosenClass: 'sortable-chosen',\n dragClass: 'sortable-drag',\n ignore: 'a, img',\n filter: null,\n preventOnFilter: true,\n animation: 0,\n easing: null,\n setData: function setData(dataTransfer, dragEl) {\n dataTransfer.setData('Text', dragEl.textContent);\n },\n dropBubble: false,\n dragoverBubble: false,\n dataIdAttr: 'data-id',\n delay: 0,\n delayOnTouchOnly: false,\n touchStartThreshold: (Number.parseInt ? Number : window).parseInt(window.devicePixelRatio, 10) || 1,\n forceFallback: false,\n fallbackClass: 'sortable-fallback',\n fallbackOnBody: false,\n fallbackTolerance: 0,\n fallbackOffset: {\n x: 0,\n y: 0\n },\n supportPointer: Sortable.supportPointer !== false && 'PointerEvent' in window && !Safari,\n emptyInsertThreshold: 5\n };\n PluginManager.initializePlugins(this, el, defaults); // Set default options\n\n for (var name in defaults) {\n !(name in options) && (options[name] = defaults[name]);\n }\n\n _prepareGroup(options); // Bind all private methods\n\n\n for (var fn in this) {\n if (fn.charAt(0) === '_' && typeof this[fn] === 'function') {\n this[fn] = this[fn].bind(this);\n }\n } // Setup drag mode\n\n\n this.nativeDraggable = options.forceFallback ? false : supportDraggable;\n\n if (this.nativeDraggable) {\n // Touch start threshold cannot be greater than the native dragstart threshold\n this.options.touchStartThreshold = 1;\n } // Bind events\n\n\n if (options.supportPointer) {\n on(el, 'pointerdown', this._onTapStart);\n } else {\n on(el, 'mousedown', this._onTapStart);\n on(el, 'touchstart', this._onTapStart);\n }\n\n if (this.nativeDraggable) {\n on(el, 'dragover', this);\n on(el, 'dragenter', this);\n }\n\n sortables.push(this.el); // Restore sorting\n\n options.store && options.store.get && this.sort(options.store.get(this) || []); // Add animation state manager\n\n _extends(this, AnimationStateManager());\n}\n\nSortable.prototype =\n/** @lends Sortable.prototype */\n{\n constructor: Sortable,\n _isOutsideThisEl: function _isOutsideThisEl(target) {\n if (!this.el.contains(target) && target !== this.el) {\n lastTarget = null;\n }\n },\n _getDirection: function _getDirection(evt, target) {\n return typeof this.options.direction === 'function' ? this.options.direction.call(this, evt, target, dragEl) : this.options.direction;\n },\n _onTapStart: function _onTapStart(\n /** Event|TouchEvent */\n evt) {\n if (!evt.cancelable) return;\n\n var _this = this,\n el = this.el,\n options = this.options,\n preventOnFilter = options.preventOnFilter,\n type = evt.type,\n touch = evt.touches && evt.touches[0] || evt.pointerType && evt.pointerType === 'touch' && evt,\n target = (touch || evt).target,\n originalTarget = evt.target.shadowRoot && (evt.path && evt.path[0] || evt.composedPath && evt.composedPath()[0]) || target,\n filter = options.filter;\n\n _saveInputCheckedState(el); // Don't trigger start event when an element is been dragged, otherwise the evt.oldindex always wrong when set option.group.\n\n\n if (dragEl) {\n return;\n }\n\n if (/mousedown|pointerdown/.test(type) && evt.button !== 0 || options.disabled) {\n return; // only left button and enabled\n } // cancel dnd if original target is content editable\n\n\n if (originalTarget.isContentEditable) {\n return;\n } // Safari ignores further event handling after mousedown\n\n\n if (!this.nativeDraggable && Safari && target && target.tagName.toUpperCase() === 'SELECT') {\n return;\n }\n\n target = closest(target, options.draggable, el, false);\n\n if (target && target.animated) {\n return;\n }\n\n if (lastDownEl === target) {\n // Ignoring duplicate `down`\n return;\n } // Get the index of the dragged element within its parent\n\n\n oldIndex = index(target);\n oldDraggableIndex = index(target, options.draggable); // Check filter\n\n if (typeof filter === 'function') {\n if (filter.call(this, evt, target, this)) {\n _dispatchEvent({\n sortable: _this,\n rootEl: originalTarget,\n name: 'filter',\n targetEl: target,\n toEl: el,\n fromEl: el\n });\n\n pluginEvent('filter', _this, {\n evt: evt\n });\n preventOnFilter && evt.cancelable && evt.preventDefault();\n return; // cancel dnd\n }\n } else if (filter) {\n filter = filter.split(',').some(function (criteria) {\n criteria = closest(originalTarget, criteria.trim(), el, false);\n\n if (criteria) {\n _dispatchEvent({\n sortable: _this,\n rootEl: criteria,\n name: 'filter',\n targetEl: target,\n fromEl: el,\n toEl: el\n });\n\n pluginEvent('filter', _this, {\n evt: evt\n });\n return true;\n }\n });\n\n if (filter) {\n preventOnFilter && evt.cancelable && evt.preventDefault();\n return; // cancel dnd\n }\n }\n\n if (options.handle && !closest(originalTarget, options.handle, el, false)) {\n return;\n } // Prepare `dragstart`\n\n\n this._prepareDragStart(evt, touch, target);\n },\n _prepareDragStart: function _prepareDragStart(\n /** Event */\n evt,\n /** Touch */\n touch,\n /** HTMLElement */\n target) {\n var _this = this,\n el = _this.el,\n options = _this.options,\n ownerDocument = el.ownerDocument,\n dragStartFn;\n\n if (target && !dragEl && target.parentNode === el) {\n var dragRect = getRect(target);\n rootEl = el;\n dragEl = target;\n parentEl = dragEl.parentNode;\n nextEl = dragEl.nextSibling;\n lastDownEl = target;\n activeGroup = options.group;\n Sortable.dragged = dragEl;\n tapEvt = {\n target: dragEl,\n clientX: (touch || evt).clientX,\n clientY: (touch || evt).clientY\n };\n tapDistanceLeft = tapEvt.clientX - dragRect.left;\n tapDistanceTop = tapEvt.clientY - dragRect.top;\n this._lastX = (touch || evt).clientX;\n this._lastY = (touch || evt).clientY;\n dragEl.style['will-change'] = 'all';\n\n dragStartFn = function dragStartFn() {\n pluginEvent('delayEnded', _this, {\n evt: evt\n });\n\n if (Sortable.eventCanceled) {\n _this._onDrop();\n\n return;\n } // Delayed drag has been triggered\n // we can re-enable the events: touchmove/mousemove\n\n\n _this._disableDelayedDragEvents();\n\n if (!FireFox && _this.nativeDraggable) {\n dragEl.draggable = true;\n } // Bind the events: dragstart/dragend\n\n\n _this._triggerDragStart(evt, touch); // Drag start event\n\n\n _dispatchEvent({\n sortable: _this,\n name: 'choose',\n originalEvent: evt\n }); // Chosen item\n\n\n toggleClass(dragEl, options.chosenClass, true);\n }; // Disable \"draggable\"\n\n\n options.ignore.split(',').forEach(function (criteria) {\n find(dragEl, criteria.trim(), _disableDraggable);\n });\n on(ownerDocument, 'dragover', nearestEmptyInsertDetectEvent);\n on(ownerDocument, 'mousemove', nearestEmptyInsertDetectEvent);\n on(ownerDocument, 'touchmove', nearestEmptyInsertDetectEvent);\n on(ownerDocument, 'mouseup', _this._onDrop);\n on(ownerDocument, 'touchend', _this._onDrop);\n on(ownerDocument, 'touchcancel', _this._onDrop); // Make dragEl draggable (must be before delay for FireFox)\n\n if (FireFox && this.nativeDraggable) {\n this.options.touchStartThreshold = 4;\n dragEl.draggable = true;\n }\n\n pluginEvent('delayStart', this, {\n evt: evt\n }); // Delay is impossible for native DnD in Edge or IE\n\n if (options.delay && (!options.delayOnTouchOnly || touch) && (!this.nativeDraggable || !(Edge || IE11OrLess))) {\n if (Sortable.eventCanceled) {\n this._onDrop();\n\n return;\n } // If the user moves the pointer or let go the click or touch\n // before the delay has been reached:\n // disable the delayed drag\n\n\n on(ownerDocument, 'mouseup', _this._disableDelayedDrag);\n on(ownerDocument, 'touchend', _this._disableDelayedDrag);\n on(ownerDocument, 'touchcancel', _this._disableDelayedDrag);\n on(ownerDocument, 'mousemove', _this._delayedDragTouchMoveHandler);\n on(ownerDocument, 'touchmove', _this._delayedDragTouchMoveHandler);\n options.supportPointer && on(ownerDocument, 'pointermove', _this._delayedDragTouchMoveHandler);\n _this._dragStartTimer = setTimeout(dragStartFn, options.delay);\n } else {\n dragStartFn();\n }\n }\n },\n _delayedDragTouchMoveHandler: function _delayedDragTouchMoveHandler(\n /** TouchEvent|PointerEvent **/\n e) {\n var touch = e.touches ? e.touches[0] : e;\n\n if (Math.max(Math.abs(touch.clientX - this._lastX), Math.abs(touch.clientY - this._lastY)) >= Math.floor(this.options.touchStartThreshold / (this.nativeDraggable && window.devicePixelRatio || 1))) {\n this._disableDelayedDrag();\n }\n },\n _disableDelayedDrag: function _disableDelayedDrag() {\n dragEl && _disableDraggable(dragEl);\n clearTimeout(this._dragStartTimer);\n\n this._disableDelayedDragEvents();\n },\n _disableDelayedDragEvents: function _disableDelayedDragEvents() {\n var ownerDocument = this.el.ownerDocument;\n off(ownerDocument, 'mouseup', this._disableDelayedDrag);\n off(ownerDocument, 'touchend', this._disableDelayedDrag);\n off(ownerDocument, 'touchcancel', this._disableDelayedDrag);\n off(ownerDocument, 'mousemove', this._delayedDragTouchMoveHandler);\n off(ownerDocument, 'touchmove', this._delayedDragTouchMoveHandler);\n off(ownerDocument, 'pointermove', this._delayedDragTouchMoveHandler);\n },\n _triggerDragStart: function _triggerDragStart(\n /** Event */\n evt,\n /** Touch */\n touch) {\n touch = touch || evt.pointerType == 'touch' && evt;\n\n if (!this.nativeDraggable || touch) {\n if (this.options.supportPointer) {\n on(document, 'pointermove', this._onTouchMove);\n } else if (touch) {\n on(document, 'touchmove', this._onTouchMove);\n } else {\n on(document, 'mousemove', this._onTouchMove);\n }\n } else {\n on(dragEl, 'dragend', this);\n on(rootEl, 'dragstart', this._onDragStart);\n }\n\n try {\n if (document.selection) {\n // Timeout neccessary for IE9\n _nextTick(function () {\n document.selection.empty();\n });\n } else {\n window.getSelection().removeAllRanges();\n }\n } catch (err) {}\n },\n _dragStarted: function _dragStarted(fallback, evt) {\n\n awaitingDragStarted = false;\n\n if (rootEl && dragEl) {\n pluginEvent('dragStarted', this, {\n evt: evt\n });\n\n if (this.nativeDraggable) {\n on(document, 'dragover', _checkOutsideTargetEl);\n }\n\n var options = this.options; // Apply effect\n\n !fallback && toggleClass(dragEl, options.dragClass, false);\n toggleClass(dragEl, options.ghostClass, true);\n Sortable.active = this;\n fallback && this._appendGhost(); // Drag start event\n\n _dispatchEvent({\n sortable: this,\n name: 'start',\n originalEvent: evt\n });\n } else {\n this._nulling();\n }\n },\n _emulateDragOver: function _emulateDragOver() {\n if (touchEvt) {\n this._lastX = touchEvt.clientX;\n this._lastY = touchEvt.clientY;\n\n _hideGhostForTarget();\n\n var target = document.elementFromPoint(touchEvt.clientX, touchEvt.clientY);\n var parent = target;\n\n while (target && target.shadowRoot) {\n target = target.shadowRoot.elementFromPoint(touchEvt.clientX, touchEvt.clientY);\n if (target === parent) break;\n parent = target;\n }\n\n dragEl.parentNode[expando]._isOutsideThisEl(target);\n\n if (parent) {\n do {\n if (parent[expando]) {\n var inserted = void 0;\n inserted = parent[expando]._onDragOver({\n clientX: touchEvt.clientX,\n clientY: touchEvt.clientY,\n target: target,\n rootEl: parent\n });\n\n if (inserted && !this.options.dragoverBubble) {\n break;\n }\n }\n\n target = parent; // store last element\n }\n /* jshint boss:true */\n while (parent = parent.parentNode);\n }\n\n _unhideGhostForTarget();\n }\n },\n _onTouchMove: function _onTouchMove(\n /**TouchEvent*/\n evt) {\n if (tapEvt) {\n var options = this.options,\n fallbackTolerance = options.fallbackTolerance,\n fallbackOffset = options.fallbackOffset,\n touch = evt.touches ? evt.touches[0] : evt,\n ghostMatrix = ghostEl && matrix(ghostEl, true),\n scaleX = ghostEl && ghostMatrix && ghostMatrix.a,\n scaleY = ghostEl && ghostMatrix && ghostMatrix.d,\n relativeScrollOffset = PositionGhostAbsolutely && ghostRelativeParent && getRelativeScrollOffset(ghostRelativeParent),\n dx = (touch.clientX - tapEvt.clientX + fallbackOffset.x) / (scaleX || 1) + (relativeScrollOffset ? relativeScrollOffset[0] - ghostRelativeParentInitialScroll[0] : 0) / (scaleX || 1),\n dy = (touch.clientY - tapEvt.clientY + fallbackOffset.y) / (scaleY || 1) + (relativeScrollOffset ? relativeScrollOffset[1] - ghostRelativeParentInitialScroll[1] : 0) / (scaleY || 1); // only set the status to dragging, when we are actually dragging\n\n if (!Sortable.active && !awaitingDragStarted) {\n if (fallbackTolerance && Math.max(Math.abs(touch.clientX - this._lastX), Math.abs(touch.clientY - this._lastY)) < fallbackTolerance) {\n return;\n }\n\n this._onDragStart(evt, true);\n }\n\n if (ghostEl) {\n if (ghostMatrix) {\n ghostMatrix.e += dx - (lastDx || 0);\n ghostMatrix.f += dy - (lastDy || 0);\n } else {\n ghostMatrix = {\n a: 1,\n b: 0,\n c: 0,\n d: 1,\n e: dx,\n f: dy\n };\n }\n\n var cssMatrix = \"matrix(\".concat(ghostMatrix.a, \",\").concat(ghostMatrix.b, \",\").concat(ghostMatrix.c, \",\").concat(ghostMatrix.d, \",\").concat(ghostMatrix.e, \",\").concat(ghostMatrix.f, \")\");\n css(ghostEl, 'webkitTransform', cssMatrix);\n css(ghostEl, 'mozTransform', cssMatrix);\n css(ghostEl, 'msTransform', cssMatrix);\n css(ghostEl, 'transform', cssMatrix);\n lastDx = dx;\n lastDy = dy;\n touchEvt = touch;\n }\n\n evt.cancelable && evt.preventDefault();\n }\n },\n _appendGhost: function _appendGhost() {\n // Bug if using scale(): https://stackoverflow.com/questions/2637058\n // Not being adjusted for\n if (!ghostEl) {\n var container = this.options.fallbackOnBody ? document.body : rootEl,\n rect = getRect(dragEl, true, PositionGhostAbsolutely, true, container),\n options = this.options; // Position absolutely\n\n if (PositionGhostAbsolutely) {\n // Get relatively positioned parent\n ghostRelativeParent = container;\n\n while (css(ghostRelativeParent, 'position') === 'static' && css(ghostRelativeParent, 'transform') === 'none' && ghostRelativeParent !== document) {\n ghostRelativeParent = ghostRelativeParent.parentNode;\n }\n\n if (ghostRelativeParent !== document.body && ghostRelativeParent !== document.documentElement) {\n if (ghostRelativeParent === document) ghostRelativeParent = getWindowScrollingElement();\n rect.top += ghostRelativeParent.scrollTop;\n rect.left += ghostRelativeParent.scrollLeft;\n } else {\n ghostRelativeParent = getWindowScrollingElement();\n }\n\n ghostRelativeParentInitialScroll = getRelativeScrollOffset(ghostRelativeParent);\n }\n\n ghostEl = dragEl.cloneNode(true);\n toggleClass(ghostEl, options.ghostClass, false);\n toggleClass(ghostEl, options.fallbackClass, true);\n toggleClass(ghostEl, options.dragClass, true);\n css(ghostEl, 'transition', '');\n css(ghostEl, 'transform', '');\n css(ghostEl, 'box-sizing', 'border-box');\n css(ghostEl, 'margin', 0);\n css(ghostEl, 'top', rect.top);\n css(ghostEl, 'left', rect.left);\n css(ghostEl, 'width', rect.width);\n css(ghostEl, 'height', rect.height);\n css(ghostEl, 'opacity', '0.8');\n css(ghostEl, 'position', PositionGhostAbsolutely ? 'absolute' : 'fixed');\n css(ghostEl, 'zIndex', '100000');\n css(ghostEl, 'pointerEvents', 'none');\n Sortable.ghost = ghostEl;\n container.appendChild(ghostEl); // Set transform-origin\n\n css(ghostEl, 'transform-origin', tapDistanceLeft / parseInt(ghostEl.style.width) * 100 + '% ' + tapDistanceTop / parseInt(ghostEl.style.height) * 100 + '%');\n }\n },\n _onDragStart: function _onDragStart(\n /**Event*/\n evt,\n /**boolean*/\n fallback) {\n var _this = this;\n\n var dataTransfer = evt.dataTransfer;\n var options = _this.options;\n pluginEvent('dragStart', this, {\n evt: evt\n });\n\n if (Sortable.eventCanceled) {\n this._onDrop();\n\n return;\n }\n\n pluginEvent('setupClone', this);\n\n if (!Sortable.eventCanceled) {\n cloneEl = clone(dragEl);\n cloneEl.removeAttribute(\"id\");\n cloneEl.draggable = false;\n cloneEl.style['will-change'] = '';\n\n this._hideClone();\n\n toggleClass(cloneEl, this.options.chosenClass, false);\n Sortable.clone = cloneEl;\n } // #1143: IFrame support workaround\n\n\n _this.cloneId = _nextTick(function () {\n pluginEvent('clone', _this);\n if (Sortable.eventCanceled) return;\n\n if (!_this.options.removeCloneOnHide) {\n rootEl.insertBefore(cloneEl, dragEl);\n }\n\n _this._hideClone();\n\n _dispatchEvent({\n sortable: _this,\n name: 'clone'\n });\n });\n !fallback && toggleClass(dragEl, options.dragClass, true); // Set proper drop events\n\n if (fallback) {\n ignoreNextClick = true;\n _this._loopId = setInterval(_this._emulateDragOver, 50);\n } else {\n // Undo what was set in _prepareDragStart before drag started\n off(document, 'mouseup', _this._onDrop);\n off(document, 'touchend', _this._onDrop);\n off(document, 'touchcancel', _this._onDrop);\n\n if (dataTransfer) {\n dataTransfer.effectAllowed = 'move';\n options.setData && options.setData.call(_this, dataTransfer, dragEl);\n }\n\n on(document, 'drop', _this); // #1276 fix:\n\n css(dragEl, 'transform', 'translateZ(0)');\n }\n\n awaitingDragStarted = true;\n _this._dragStartId = _nextTick(_this._dragStarted.bind(_this, fallback, evt));\n on(document, 'selectstart', _this);\n moved = true;\n\n if (Safari) {\n css(document.body, 'user-select', 'none');\n }\n },\n // Returns true - if no further action is needed (either inserted or another condition)\n _onDragOver: function _onDragOver(\n /**Event*/\n evt) {\n var el = this.el,\n target = evt.target,\n dragRect,\n targetRect,\n revert,\n options = this.options,\n group = options.group,\n activeSortable = Sortable.active,\n isOwner = activeGroup === group,\n canSort = options.sort,\n fromSortable = putSortable || activeSortable,\n vertical,\n _this = this,\n completedFired = false;\n\n if (_silent) return;\n\n function dragOverEvent(name, extra) {\n pluginEvent(name, _this, _objectSpread2({\n evt: evt,\n isOwner: isOwner,\n axis: vertical ? 'vertical' : 'horizontal',\n revert: revert,\n dragRect: dragRect,\n targetRect: targetRect,\n canSort: canSort,\n fromSortable: fromSortable,\n target: target,\n completed: completed,\n onMove: function onMove(target, after) {\n return _onMove(rootEl, el, dragEl, dragRect, target, getRect(target), evt, after);\n },\n changed: changed\n }, extra));\n } // Capture animation state\n\n\n function capture() {\n dragOverEvent('dragOverAnimationCapture');\n\n _this.captureAnimationState();\n\n if (_this !== fromSortable) {\n fromSortable.captureAnimationState();\n }\n } // Return invocation when dragEl is inserted (or completed)\n\n\n function completed(insertion) {\n dragOverEvent('dragOverCompleted', {\n insertion: insertion\n });\n\n if (insertion) {\n // Clones must be hidden before folding animation to capture dragRectAbsolute properly\n if (isOwner) {\n activeSortable._hideClone();\n } else {\n activeSortable._showClone(_this);\n }\n\n if (_this !== fromSortable) {\n // Set ghost class to new sortable's ghost class\n toggleClass(dragEl, putSortable ? putSortable.options.ghostClass : activeSortable.options.ghostClass, false);\n toggleClass(dragEl, options.ghostClass, true);\n }\n\n if (putSortable !== _this && _this !== Sortable.active) {\n putSortable = _this;\n } else if (_this === Sortable.active && putSortable) {\n putSortable = null;\n } // Animation\n\n\n if (fromSortable === _this) {\n _this._ignoreWhileAnimating = target;\n }\n\n _this.animateAll(function () {\n dragOverEvent('dragOverAnimationComplete');\n _this._ignoreWhileAnimating = null;\n });\n\n if (_this !== fromSortable) {\n fromSortable.animateAll();\n fromSortable._ignoreWhileAnimating = null;\n }\n } // Null lastTarget if it is not inside a previously swapped element\n\n\n if (target === dragEl && !dragEl.animated || target === el && !target.animated) {\n lastTarget = null;\n } // no bubbling and not fallback\n\n\n if (!options.dragoverBubble && !evt.rootEl && target !== document) {\n dragEl.parentNode[expando]._isOutsideThisEl(evt.target); // Do not detect for empty insert if already inserted\n\n\n !insertion && nearestEmptyInsertDetectEvent(evt);\n }\n\n !options.dragoverBubble && evt.stopPropagation && evt.stopPropagation();\n return completedFired = true;\n } // Call when dragEl has been inserted\n\n\n function changed() {\n newIndex = index(dragEl);\n newDraggableIndex = index(dragEl, options.draggable);\n\n _dispatchEvent({\n sortable: _this,\n name: 'change',\n toEl: el,\n newIndex: newIndex,\n newDraggableIndex: newDraggableIndex,\n originalEvent: evt\n });\n }\n\n if (evt.preventDefault !== void 0) {\n evt.cancelable && evt.preventDefault();\n }\n\n target = closest(target, options.draggable, el, true);\n dragOverEvent('dragOver');\n if (Sortable.eventCanceled) return completedFired;\n\n if (dragEl.contains(evt.target) || target.animated && target.animatingX && target.animatingY || _this._ignoreWhileAnimating === target) {\n return completed(false);\n }\n\n ignoreNextClick = false;\n\n if (activeSortable && !options.disabled && (isOwner ? canSort || (revert = parentEl !== rootEl) // Reverting item into the original list\n : putSortable === this || (this.lastPutMode = activeGroup.checkPull(this, activeSortable, dragEl, evt)) && group.checkPut(this, activeSortable, dragEl, evt))) {\n vertical = this._getDirection(evt, target) === 'vertical';\n dragRect = getRect(dragEl);\n dragOverEvent('dragOverValid');\n if (Sortable.eventCanceled) return completedFired;\n\n if (revert) {\n parentEl = rootEl; // actualization\n\n capture();\n\n this._hideClone();\n\n dragOverEvent('revert');\n\n if (!Sortable.eventCanceled) {\n if (nextEl) {\n rootEl.insertBefore(dragEl, nextEl);\n } else {\n rootEl.appendChild(dragEl);\n }\n }\n\n return completed(true);\n }\n\n var elLastChild = lastChild(el, options.draggable);\n\n if (!elLastChild || _ghostIsLast(evt, vertical, this) && !elLastChild.animated) {\n // Insert to end of list\n // If already at end of list: Do not insert\n if (elLastChild === dragEl) {\n return completed(false);\n } // if there is a last element, it is the target\n\n\n if (elLastChild && el === evt.target) {\n target = elLastChild;\n }\n\n if (target) {\n targetRect = getRect(target);\n }\n\n if (_onMove(rootEl, el, dragEl, dragRect, target, targetRect, evt, !!target) !== false) {\n capture();\n\n if (elLastChild && elLastChild.nextSibling) {\n // the last draggable element is not the last node\n el.insertBefore(dragEl, elLastChild.nextSibling);\n } else {\n el.appendChild(dragEl);\n }\n\n parentEl = el; // actualization\n\n changed();\n return completed(true);\n }\n } else if (elLastChild && _ghostIsFirst(evt, vertical, this)) {\n // Insert to start of list\n var firstChild = getChild(el, 0, options, true);\n\n if (firstChild === dragEl) {\n return completed(false);\n }\n\n target = firstChild;\n targetRect = getRect(target);\n\n if (_onMove(rootEl, el, dragEl, dragRect, target, targetRect, evt, false) !== false) {\n capture();\n el.insertBefore(dragEl, firstChild);\n parentEl = el; // actualization\n\n changed();\n return completed(true);\n }\n } else if (target.parentNode === el) {\n targetRect = getRect(target);\n var direction = 0,\n targetBeforeFirstSwap,\n differentLevel = dragEl.parentNode !== el,\n differentRowCol = !_dragElInRowColumn(dragEl.animated && dragEl.toRect || dragRect, target.animated && target.toRect || targetRect, vertical),\n side1 = vertical ? 'top' : 'left',\n scrolledPastTop = isScrolledPast(target, 'top', 'top') || isScrolledPast(dragEl, 'top', 'top'),\n scrollBefore = scrolledPastTop ? scrolledPastTop.scrollTop : void 0;\n\n if (lastTarget !== target) {\n targetBeforeFirstSwap = targetRect[side1];\n pastFirstInvertThresh = false;\n isCircumstantialInvert = !differentRowCol && options.invertSwap || differentLevel;\n }\n\n direction = _getSwapDirection(evt, target, targetRect, vertical, differentRowCol ? 1 : options.swapThreshold, options.invertedSwapThreshold == null ? options.swapThreshold : options.invertedSwapThreshold, isCircumstantialInvert, lastTarget === target);\n var sibling;\n\n if (direction !== 0) {\n // Check if target is beside dragEl in respective direction (ignoring hidden elements)\n var dragIndex = index(dragEl);\n\n do {\n dragIndex -= direction;\n sibling = parentEl.children[dragIndex];\n } while (sibling && (css(sibling, 'display') === 'none' || sibling === ghostEl));\n } // If dragEl is already beside target: Do not insert\n\n\n if (direction === 0 || sibling === target) {\n return completed(false);\n }\n\n lastTarget = target;\n lastDirection = direction;\n var nextSibling = target.nextElementSibling,\n after = false;\n after = direction === 1;\n\n var moveVector = _onMove(rootEl, el, dragEl, dragRect, target, targetRect, evt, after);\n\n if (moveVector !== false) {\n if (moveVector === 1 || moveVector === -1) {\n after = moveVector === 1;\n }\n\n _silent = true;\n setTimeout(_unsilent, 30);\n capture();\n\n if (after && !nextSibling) {\n el.appendChild(dragEl);\n } else {\n target.parentNode.insertBefore(dragEl, after ? nextSibling : target);\n } // Undo chrome's scroll adjustment (has no effect on other browsers)\n\n\n if (scrolledPastTop) {\n scrollBy(scrolledPastTop, 0, scrollBefore - scrolledPastTop.scrollTop);\n }\n\n parentEl = dragEl.parentNode; // actualization\n // must be done before animation\n\n if (targetBeforeFirstSwap !== undefined && !isCircumstantialInvert) {\n targetMoveDistance = Math.abs(targetBeforeFirstSwap - getRect(target)[side1]);\n }\n\n changed();\n return completed(true);\n }\n }\n\n if (el.contains(dragEl)) {\n return completed(false);\n }\n }\n\n return false;\n },\n _ignoreWhileAnimating: null,\n _offMoveEvents: function _offMoveEvents() {\n off(document, 'mousemove', this._onTouchMove);\n off(document, 'touchmove', this._onTouchMove);\n off(document, 'pointermove', this._onTouchMove);\n off(document, 'dragover', nearestEmptyInsertDetectEvent);\n off(document, 'mousemove', nearestEmptyInsertDetectEvent);\n off(document, 'touchmove', nearestEmptyInsertDetectEvent);\n },\n _offUpEvents: function _offUpEvents() {\n var ownerDocument = this.el.ownerDocument;\n off(ownerDocument, 'mouseup', this._onDrop);\n off(ownerDocument, 'touchend', this._onDrop);\n off(ownerDocument, 'pointerup', this._onDrop);\n off(ownerDocument, 'touchcancel', this._onDrop);\n off(document, 'selectstart', this);\n },\n _onDrop: function _onDrop(\n /**Event*/\n evt) {\n var el = this.el,\n options = this.options; // Get the index of the dragged element within its parent\n\n newIndex = index(dragEl);\n newDraggableIndex = index(dragEl, options.draggable);\n pluginEvent('drop', this, {\n evt: evt\n });\n parentEl = dragEl && dragEl.parentNode; // Get again after plugin event\n\n newIndex = index(dragEl);\n newDraggableIndex = index(dragEl, options.draggable);\n\n if (Sortable.eventCanceled) {\n this._nulling();\n\n return;\n }\n\n awaitingDragStarted = false;\n isCircumstantialInvert = false;\n pastFirstInvertThresh = false;\n clearInterval(this._loopId);\n clearTimeout(this._dragStartTimer);\n\n _cancelNextTick(this.cloneId);\n\n _cancelNextTick(this._dragStartId); // Unbind events\n\n\n if (this.nativeDraggable) {\n off(document, 'drop', this);\n off(el, 'dragstart', this._onDragStart);\n }\n\n this._offMoveEvents();\n\n this._offUpEvents();\n\n if (Safari) {\n css(document.body, 'user-select', '');\n }\n\n css(dragEl, 'transform', '');\n\n if (evt) {\n if (moved) {\n evt.cancelable && evt.preventDefault();\n !options.dropBubble && evt.stopPropagation();\n }\n\n ghostEl && ghostEl.parentNode && ghostEl.parentNode.removeChild(ghostEl);\n\n if (rootEl === parentEl || putSortable && putSortable.lastPutMode !== 'clone') {\n // Remove clone(s)\n cloneEl && cloneEl.parentNode && cloneEl.parentNode.removeChild(cloneEl);\n }\n\n if (dragEl) {\n if (this.nativeDraggable) {\n off(dragEl, 'dragend', this);\n }\n\n _disableDraggable(dragEl);\n\n dragEl.style['will-change'] = ''; // Remove classes\n // ghostClass is added in dragStarted\n\n if (moved && !awaitingDragStarted) {\n toggleClass(dragEl, putSortable ? putSortable.options.ghostClass : this.options.ghostClass, false);\n }\n\n toggleClass(dragEl, this.options.chosenClass, false); // Drag stop event\n\n _dispatchEvent({\n sortable: this,\n name: 'unchoose',\n toEl: parentEl,\n newIndex: null,\n newDraggableIndex: null,\n originalEvent: evt\n });\n\n if (rootEl !== parentEl) {\n if (newIndex >= 0) {\n // Add event\n _dispatchEvent({\n rootEl: parentEl,\n name: 'add',\n toEl: parentEl,\n fromEl: rootEl,\n originalEvent: evt\n }); // Remove event\n\n\n _dispatchEvent({\n sortable: this,\n name: 'remove',\n toEl: parentEl,\n originalEvent: evt\n }); // drag from one list and drop into another\n\n\n _dispatchEvent({\n rootEl: parentEl,\n name: 'sort',\n toEl: parentEl,\n fromEl: rootEl,\n originalEvent: evt\n });\n\n _dispatchEvent({\n sortable: this,\n name: 'sort',\n toEl: parentEl,\n originalEvent: evt\n });\n }\n\n putSortable && putSortable.save();\n } else {\n if (newIndex !== oldIndex) {\n if (newIndex >= 0) {\n // drag & drop within the same list\n _dispatchEvent({\n sortable: this,\n name: 'update',\n toEl: parentEl,\n originalEvent: evt\n });\n\n _dispatchEvent({\n sortable: this,\n name: 'sort',\n toEl: parentEl,\n originalEvent: evt\n });\n }\n }\n }\n\n if (Sortable.active) {\n /* jshint eqnull:true */\n if (newIndex == null || newIndex === -1) {\n newIndex = oldIndex;\n newDraggableIndex = oldDraggableIndex;\n }\n\n _dispatchEvent({\n sortable: this,\n name: 'end',\n toEl: parentEl,\n originalEvent: evt\n }); // Save sorting\n\n\n this.save();\n }\n }\n }\n\n this._nulling();\n },\n _nulling: function _nulling() {\n pluginEvent('nulling', this);\n rootEl = dragEl = parentEl = ghostEl = nextEl = cloneEl = lastDownEl = cloneHidden = tapEvt = touchEvt = moved = newIndex = newDraggableIndex = oldIndex = oldDraggableIndex = lastTarget = lastDirection = putSortable = activeGroup = Sortable.dragged = Sortable.ghost = Sortable.clone = Sortable.active = null;\n savedInputChecked.forEach(function (el) {\n el.checked = true;\n });\n savedInputChecked.length = lastDx = lastDy = 0;\n },\n handleEvent: function handleEvent(\n /**Event*/\n evt) {\n switch (evt.type) {\n case 'drop':\n case 'dragend':\n this._onDrop(evt);\n\n break;\n\n case 'dragenter':\n case 'dragover':\n if (dragEl) {\n this._onDragOver(evt);\n\n _globalDragOver(evt);\n }\n\n break;\n\n case 'selectstart':\n evt.preventDefault();\n break;\n }\n },\n\n /**\r\n * Serializes the item into an array of string.\r\n * @returns {String[]}\r\n */\n toArray: function toArray() {\n var order = [],\n el,\n children = this.el.children,\n i = 0,\n n = children.length,\n options = this.options;\n\n for (; i < n; i++) {\n el = children[i];\n\n if (closest(el, options.draggable, this.el, false)) {\n order.push(el.getAttribute(options.dataIdAttr) || _generateId(el));\n }\n }\n\n return order;\n },\n\n /**\r\n * Sorts the elements according to the array.\r\n * @param {String[]} order order of the items\r\n */\n sort: function sort(order, useAnimation) {\n var items = {},\n rootEl = this.el;\n this.toArray().forEach(function (id, i) {\n var el = rootEl.children[i];\n\n if (closest(el, this.options.draggable, rootEl, false)) {\n items[id] = el;\n }\n }, this);\n useAnimation && this.captureAnimationState();\n order.forEach(function (id) {\n if (items[id]) {\n rootEl.removeChild(items[id]);\n rootEl.appendChild(items[id]);\n }\n });\n useAnimation && this.animateAll();\n },\n\n /**\r\n * Save the current sorting\r\n */\n save: function save() {\n var store = this.options.store;\n store && store.set && store.set(this);\n },\n\n /**\r\n * For each element in the set, get the first element that matches the selector by testing the element itself and traversing up through its ancestors in the DOM tree.\r\n * @param {HTMLElement} el\r\n * @param {String} [selector] default: `options.draggable`\r\n * @returns {HTMLElement|null}\r\n */\n closest: function closest$1(el, selector) {\n return closest(el, selector || this.options.draggable, this.el, false);\n },\n\n /**\r\n * Set/get option\r\n * @param {string} name\r\n * @param {*} [value]\r\n * @returns {*}\r\n */\n option: function option(name, value) {\n var options = this.options;\n\n if (value === void 0) {\n return options[name];\n } else {\n var modifiedValue = PluginManager.modifyOption(this, name, value);\n\n if (typeof modifiedValue !== 'undefined') {\n options[name] = modifiedValue;\n } else {\n options[name] = value;\n }\n\n if (name === 'group') {\n _prepareGroup(options);\n }\n }\n },\n\n /**\r\n * Destroy\r\n */\n destroy: function destroy() {\n pluginEvent('destroy', this);\n var el = this.el;\n el[expando] = null;\n off(el, 'mousedown', this._onTapStart);\n off(el, 'touchstart', this._onTapStart);\n off(el, 'pointerdown', this._onTapStart);\n\n if (this.nativeDraggable) {\n off(el, 'dragover', this);\n off(el, 'dragenter', this);\n } // Remove draggable attributes\n\n\n Array.prototype.forEach.call(el.querySelectorAll('[draggable]'), function (el) {\n el.removeAttribute('draggable');\n });\n\n this._onDrop();\n\n this._disableDelayedDragEvents();\n\n sortables.splice(sortables.indexOf(this.el), 1);\n this.el = el = null;\n },\n _hideClone: function _hideClone() {\n if (!cloneHidden) {\n pluginEvent('hideClone', this);\n if (Sortable.eventCanceled) return;\n css(cloneEl, 'display', 'none');\n\n if (this.options.removeCloneOnHide && cloneEl.parentNode) {\n cloneEl.parentNode.removeChild(cloneEl);\n }\n\n cloneHidden = true;\n }\n },\n _showClone: function _showClone(putSortable) {\n if (putSortable.lastPutMode !== 'clone') {\n this._hideClone();\n\n return;\n }\n\n if (cloneHidden) {\n pluginEvent('showClone', this);\n if (Sortable.eventCanceled) return; // show clone at dragEl or original position\n\n if (dragEl.parentNode == rootEl && !this.options.group.revertClone) {\n rootEl.insertBefore(cloneEl, dragEl);\n } else if (nextEl) {\n rootEl.insertBefore(cloneEl, nextEl);\n } else {\n rootEl.appendChild(cloneEl);\n }\n\n if (this.options.group.revertClone) {\n this.animate(dragEl, cloneEl);\n }\n\n css(cloneEl, 'display', '');\n cloneHidden = false;\n }\n }\n};\n\nfunction _globalDragOver(\n/**Event*/\nevt) {\n if (evt.dataTransfer) {\n evt.dataTransfer.dropEffect = 'move';\n }\n\n evt.cancelable && evt.preventDefault();\n}\n\nfunction _onMove(fromEl, toEl, dragEl, dragRect, targetEl, targetRect, originalEvent, willInsertAfter) {\n var evt,\n sortable = fromEl[expando],\n onMoveFn = sortable.options.onMove,\n retVal; // Support for new CustomEvent feature\n\n if (window.CustomEvent && !IE11OrLess && !Edge) {\n evt = new CustomEvent('move', {\n bubbles: true,\n cancelable: true\n });\n } else {\n evt = document.createEvent('Event');\n evt.initEvent('move', true, true);\n }\n\n evt.to = toEl;\n evt.from = fromEl;\n evt.dragged = dragEl;\n evt.draggedRect = dragRect;\n evt.related = targetEl || toEl;\n evt.relatedRect = targetRect || getRect(toEl);\n evt.willInsertAfter = willInsertAfter;\n evt.originalEvent = originalEvent;\n fromEl.dispatchEvent(evt);\n\n if (onMoveFn) {\n retVal = onMoveFn.call(sortable, evt, originalEvent);\n }\n\n return retVal;\n}\n\nfunction _disableDraggable(el) {\n el.draggable = false;\n}\n\nfunction _unsilent() {\n _silent = false;\n}\n\nfunction _ghostIsFirst(evt, vertical, sortable) {\n var rect = getRect(getChild(sortable.el, 0, sortable.options, true));\n var spacer = 10;\n return vertical ? evt.clientX < rect.left - spacer || evt.clientY < rect.top && evt.clientX < rect.right : evt.clientY < rect.top - spacer || evt.clientY < rect.bottom && evt.clientX < rect.left;\n}\n\nfunction _ghostIsLast(evt, vertical, sortable) {\n var rect = getRect(lastChild(sortable.el, sortable.options.draggable));\n var spacer = 10;\n return vertical ? evt.clientX > rect.right + spacer || evt.clientX <= rect.right && evt.clientY > rect.bottom && evt.clientX >= rect.left : evt.clientX > rect.right && evt.clientY > rect.top || evt.clientX <= rect.right && evt.clientY > rect.bottom + spacer;\n}\n\nfunction _getSwapDirection(evt, target, targetRect, vertical, swapThreshold, invertedSwapThreshold, invertSwap, isLastTarget) {\n var mouseOnAxis = vertical ? evt.clientY : evt.clientX,\n targetLength = vertical ? targetRect.height : targetRect.width,\n targetS1 = vertical ? targetRect.top : targetRect.left,\n targetS2 = vertical ? targetRect.bottom : targetRect.right,\n invert = false;\n\n if (!invertSwap) {\n // Never invert or create dragEl shadow when target movemenet causes mouse to move past the end of regular swapThreshold\n if (isLastTarget && targetMoveDistance < targetLength * swapThreshold) {\n // multiplied only by swapThreshold because mouse will already be inside target by (1 - threshold) * targetLength / 2\n // check if past first invert threshold on side opposite of lastDirection\n if (!pastFirstInvertThresh && (lastDirection === 1 ? mouseOnAxis > targetS1 + targetLength * invertedSwapThreshold / 2 : mouseOnAxis < targetS2 - targetLength * invertedSwapThreshold / 2)) {\n // past first invert threshold, do not restrict inverted threshold to dragEl shadow\n pastFirstInvertThresh = true;\n }\n\n if (!pastFirstInvertThresh) {\n // dragEl shadow (target move distance shadow)\n if (lastDirection === 1 ? mouseOnAxis < targetS1 + targetMoveDistance // over dragEl shadow\n : mouseOnAxis > targetS2 - targetMoveDistance) {\n return -lastDirection;\n }\n } else {\n invert = true;\n }\n } else {\n // Regular\n if (mouseOnAxis > targetS1 + targetLength * (1 - swapThreshold) / 2 && mouseOnAxis < targetS2 - targetLength * (1 - swapThreshold) / 2) {\n return _getInsertDirection(target);\n }\n }\n }\n\n invert = invert || invertSwap;\n\n if (invert) {\n // Invert of regular\n if (mouseOnAxis < targetS1 + targetLength * invertedSwapThreshold / 2 || mouseOnAxis > targetS2 - targetLength * invertedSwapThreshold / 2) {\n return mouseOnAxis > targetS1 + targetLength / 2 ? 1 : -1;\n }\n }\n\n return 0;\n}\n/**\r\n * Gets the direction dragEl must be swapped relative to target in order to make it\r\n * seem that dragEl has been \"inserted\" into that element's position\r\n * @param {HTMLElement} target The target whose position dragEl is being inserted at\r\n * @return {Number} Direction dragEl must be swapped\r\n */\n\n\nfunction _getInsertDirection(target) {\n if (index(dragEl) < index(target)) {\n return 1;\n } else {\n return -1;\n }\n}\n/**\r\n * Generate id\r\n * @param {HTMLElement} el\r\n * @returns {String}\r\n * @private\r\n */\n\n\nfunction _generateId(el) {\n var str = el.tagName + el.className + el.src + el.href + el.textContent,\n i = str.length,\n sum = 0;\n\n while (i--) {\n sum += str.charCodeAt(i);\n }\n\n return sum.toString(36);\n}\n\nfunction _saveInputCheckedState(root) {\n savedInputChecked.length = 0;\n var inputs = root.getElementsByTagName('input');\n var idx = inputs.length;\n\n while (idx--) {\n var el = inputs[idx];\n el.checked && savedInputChecked.push(el);\n }\n}\n\nfunction _nextTick(fn) {\n return setTimeout(fn, 0);\n}\n\nfunction _cancelNextTick(id) {\n return clearTimeout(id);\n} // Fixed #973:\n\n\nif (documentExists) {\n on(document, 'touchmove', function (evt) {\n if ((Sortable.active || awaitingDragStarted) && evt.cancelable) {\n evt.preventDefault();\n }\n });\n} // Export utils\n\n\nSortable.utils = {\n on: on,\n off: off,\n css: css,\n find: find,\n is: function is(el, selector) {\n return !!closest(el, selector, el, false);\n },\n extend: extend,\n throttle: throttle,\n closest: closest,\n toggleClass: toggleClass,\n clone: clone,\n index: index,\n nextTick: _nextTick,\n cancelNextTick: _cancelNextTick,\n detectDirection: _detectDirection,\n getChild: getChild\n};\n/**\r\n * Get the Sortable instance of an element\r\n * @param {HTMLElement} element The element\r\n * @return {Sortable|undefined} The instance of Sortable\r\n */\n\nSortable.get = function (element) {\n return element[expando];\n};\n/**\r\n * Mount a plugin to Sortable\r\n * @param {...SortablePlugin|SortablePlugin[]} plugins Plugins being mounted\r\n */\n\n\nSortable.mount = function () {\n for (var _len = arguments.length, plugins = new Array(_len), _key = 0; _key < _len; _key++) {\n plugins[_key] = arguments[_key];\n }\n\n if (plugins[0].constructor === Array) plugins = plugins[0];\n plugins.forEach(function (plugin) {\n if (!plugin.prototype || !plugin.prototype.constructor) {\n throw \"Sortable: Mounted plugin must be a constructor function, not \".concat({}.toString.call(plugin));\n }\n\n if (plugin.utils) Sortable.utils = _objectSpread2(_objectSpread2({}, Sortable.utils), plugin.utils);\n PluginManager.mount(plugin);\n });\n};\n/**\r\n * Create sortable instance\r\n * @param {HTMLElement} el\r\n * @param {Object} [options]\r\n */\n\n\nSortable.create = function (el, options) {\n return new Sortable(el, options);\n}; // Export\n\n\nSortable.version = version;\n\nvar autoScrolls = [],\n scrollEl,\n scrollRootEl,\n scrolling = false,\n lastAutoScrollX,\n lastAutoScrollY,\n touchEvt$1,\n pointerElemChangedInterval;\n\nfunction AutoScrollPlugin() {\n function AutoScroll() {\n this.defaults = {\n scroll: true,\n forceAutoScrollFallback: false,\n scrollSensitivity: 30,\n scrollSpeed: 10,\n bubbleScroll: true\n }; // Bind all private methods\n\n for (var fn in this) {\n if (fn.charAt(0) === '_' && typeof this[fn] === 'function') {\n this[fn] = this[fn].bind(this);\n }\n }\n }\n\n AutoScroll.prototype = {\n dragStarted: function dragStarted(_ref) {\n var originalEvent = _ref.originalEvent;\n\n if (this.sortable.nativeDraggable) {\n on(document, 'dragover', this._handleAutoScroll);\n } else {\n if (this.options.supportPointer) {\n on(document, 'pointermove', this._handleFallbackAutoScroll);\n } else if (originalEvent.touches) {\n on(document, 'touchmove', this._handleFallbackAutoScroll);\n } else {\n on(document, 'mousemove', this._handleFallbackAutoScroll);\n }\n }\n },\n dragOverCompleted: function dragOverCompleted(_ref2) {\n var originalEvent = _ref2.originalEvent;\n\n // For when bubbling is canceled and using fallback (fallback 'touchmove' always reached)\n if (!this.options.dragOverBubble && !originalEvent.rootEl) {\n this._handleAutoScroll(originalEvent);\n }\n },\n drop: function drop() {\n if (this.sortable.nativeDraggable) {\n off(document, 'dragover', this._handleAutoScroll);\n } else {\n off(document, 'pointermove', this._handleFallbackAutoScroll);\n off(document, 'touchmove', this._handleFallbackAutoScroll);\n off(document, 'mousemove', this._handleFallbackAutoScroll);\n }\n\n clearPointerElemChangedInterval();\n clearAutoScrolls();\n cancelThrottle();\n },\n nulling: function nulling() {\n touchEvt$1 = scrollRootEl = scrollEl = scrolling = pointerElemChangedInterval = lastAutoScrollX = lastAutoScrollY = null;\n autoScrolls.length = 0;\n },\n _handleFallbackAutoScroll: function _handleFallbackAutoScroll(evt) {\n this._handleAutoScroll(evt, true);\n },\n _handleAutoScroll: function _handleAutoScroll(evt, fallback) {\n var _this = this;\n\n var x = (evt.touches ? evt.touches[0] : evt).clientX,\n y = (evt.touches ? evt.touches[0] : evt).clientY,\n elem = document.elementFromPoint(x, y);\n touchEvt$1 = evt; // IE does not seem to have native autoscroll,\n // Edge's autoscroll seems too conditional,\n // MACOS Safari does not have autoscroll,\n // Firefox and Chrome are good\n\n if (fallback || this.options.forceAutoScrollFallback || Edge || IE11OrLess || Safari) {\n autoScroll(evt, this.options, elem, fallback); // Listener for pointer element change\n\n var ogElemScroller = getParentAutoScrollElement(elem, true);\n\n if (scrolling && (!pointerElemChangedInterval || x !== lastAutoScrollX || y !== lastAutoScrollY)) {\n pointerElemChangedInterval && clearPointerElemChangedInterval(); // Detect for pointer elem change, emulating native DnD behaviour\n\n pointerElemChangedInterval = setInterval(function () {\n var newElem = getParentAutoScrollElement(document.elementFromPoint(x, y), true);\n\n if (newElem !== ogElemScroller) {\n ogElemScroller = newElem;\n clearAutoScrolls();\n }\n\n autoScroll(evt, _this.options, newElem, fallback);\n }, 10);\n lastAutoScrollX = x;\n lastAutoScrollY = y;\n }\n } else {\n // if DnD is enabled (and browser has good autoscrolling), first autoscroll will already scroll, so get parent autoscroll of first autoscroll\n if (!this.options.bubbleScroll || getParentAutoScrollElement(elem, true) === getWindowScrollingElement()) {\n clearAutoScrolls();\n return;\n }\n\n autoScroll(evt, this.options, getParentAutoScrollElement(elem, false), false);\n }\n }\n };\n return _extends(AutoScroll, {\n pluginName: 'scroll',\n initializeByDefault: true\n });\n}\n\nfunction clearAutoScrolls() {\n autoScrolls.forEach(function (autoScroll) {\n clearInterval(autoScroll.pid);\n });\n autoScrolls = [];\n}\n\nfunction clearPointerElemChangedInterval() {\n clearInterval(pointerElemChangedInterval);\n}\n\nvar autoScroll = throttle(function (evt, options, rootEl, isFallback) {\n // Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=505521\n if (!options.scroll) return;\n var x = (evt.touches ? evt.touches[0] : evt).clientX,\n y = (evt.touches ? evt.touches[0] : evt).clientY,\n sens = options.scrollSensitivity,\n speed = options.scrollSpeed,\n winScroller = getWindowScrollingElement();\n var scrollThisInstance = false,\n scrollCustomFn; // New scroll root, set scrollEl\n\n if (scrollRootEl !== rootEl) {\n scrollRootEl = rootEl;\n clearAutoScrolls();\n scrollEl = options.scroll;\n scrollCustomFn = options.scrollFn;\n\n if (scrollEl === true) {\n scrollEl = getParentAutoScrollElement(rootEl, true);\n }\n }\n\n var layersOut = 0;\n var currentParent = scrollEl;\n\n do {\n var el = currentParent,\n rect = getRect(el),\n top = rect.top,\n bottom = rect.bottom,\n left = rect.left,\n right = rect.right,\n width = rect.width,\n height = rect.height,\n canScrollX = void 0,\n canScrollY = void 0,\n scrollWidth = el.scrollWidth,\n scrollHeight = el.scrollHeight,\n elCSS = css(el),\n scrollPosX = el.scrollLeft,\n scrollPosY = el.scrollTop;\n\n if (el === winScroller) {\n canScrollX = width < scrollWidth && (elCSS.overflowX === 'auto' || elCSS.overflowX === 'scroll' || elCSS.overflowX === 'visible');\n canScrollY = height < scrollHeight && (elCSS.overflowY === 'auto' || elCSS.overflowY === 'scroll' || elCSS.overflowY === 'visible');\n } else {\n canScrollX = width < scrollWidth && (elCSS.overflowX === 'auto' || elCSS.overflowX === 'scroll');\n canScrollY = height < scrollHeight && (elCSS.overflowY === 'auto' || elCSS.overflowY === 'scroll');\n }\n\n var vx = canScrollX && (Math.abs(right - x) <= sens && scrollPosX + width < scrollWidth) - (Math.abs(left - x) <= sens && !!scrollPosX);\n var vy = canScrollY && (Math.abs(bottom - y) <= sens && scrollPosY + height < scrollHeight) - (Math.abs(top - y) <= sens && !!scrollPosY);\n\n if (!autoScrolls[layersOut]) {\n for (var i = 0; i <= layersOut; i++) {\n if (!autoScrolls[i]) {\n autoScrolls[i] = {};\n }\n }\n }\n\n if (autoScrolls[layersOut].vx != vx || autoScrolls[layersOut].vy != vy || autoScrolls[layersOut].el !== el) {\n autoScrolls[layersOut].el = el;\n autoScrolls[layersOut].vx = vx;\n autoScrolls[layersOut].vy = vy;\n clearInterval(autoScrolls[layersOut].pid);\n\n if (vx != 0 || vy != 0) {\n scrollThisInstance = true;\n /* jshint loopfunc:true */\n\n autoScrolls[layersOut].pid = setInterval(function () {\n // emulate drag over during autoscroll (fallback), emulating native DnD behaviour\n if (isFallback && this.layer === 0) {\n Sortable.active._onTouchMove(touchEvt$1); // To move ghost if it is positioned absolutely\n\n }\n\n var scrollOffsetY = autoScrolls[this.layer].vy ? autoScrolls[this.layer].vy * speed : 0;\n var scrollOffsetX = autoScrolls[this.layer].vx ? autoScrolls[this.layer].vx * speed : 0;\n\n if (typeof scrollCustomFn === 'function') {\n if (scrollCustomFn.call(Sortable.dragged.parentNode[expando], scrollOffsetX, scrollOffsetY, evt, touchEvt$1, autoScrolls[this.layer].el) !== 'continue') {\n return;\n }\n }\n\n scrollBy(autoScrolls[this.layer].el, scrollOffsetX, scrollOffsetY);\n }.bind({\n layer: layersOut\n }), 24);\n }\n }\n\n layersOut++;\n } while (options.bubbleScroll && currentParent !== winScroller && (currentParent = getParentAutoScrollElement(currentParent, false)));\n\n scrolling = scrollThisInstance; // in case another function catches scrolling as false in between when it is not\n}, 30);\n\nvar drop = function drop(_ref) {\n var originalEvent = _ref.originalEvent,\n putSortable = _ref.putSortable,\n dragEl = _ref.dragEl,\n activeSortable = _ref.activeSortable,\n dispatchSortableEvent = _ref.dispatchSortableEvent,\n hideGhostForTarget = _ref.hideGhostForTarget,\n unhideGhostForTarget = _ref.unhideGhostForTarget;\n if (!originalEvent) return;\n var toSortable = putSortable || activeSortable;\n hideGhostForTarget();\n var touch = originalEvent.changedTouches && originalEvent.changedTouches.length ? originalEvent.changedTouches[0] : originalEvent;\n var target = document.elementFromPoint(touch.clientX, touch.clientY);\n unhideGhostForTarget();\n\n if (toSortable && !toSortable.el.contains(target)) {\n dispatchSortableEvent('spill');\n this.onSpill({\n dragEl: dragEl,\n putSortable: putSortable\n });\n }\n};\n\nfunction Revert() {}\n\nRevert.prototype = {\n startIndex: null,\n dragStart: function dragStart(_ref2) {\n var oldDraggableIndex = _ref2.oldDraggableIndex;\n this.startIndex = oldDraggableIndex;\n },\n onSpill: function onSpill(_ref3) {\n var dragEl = _ref3.dragEl,\n putSortable = _ref3.putSortable;\n this.sortable.captureAnimationState();\n\n if (putSortable) {\n putSortable.captureAnimationState();\n }\n\n var nextSibling = getChild(this.sortable.el, this.startIndex, this.options);\n\n if (nextSibling) {\n this.sortable.el.insertBefore(dragEl, nextSibling);\n } else {\n this.sortable.el.appendChild(dragEl);\n }\n\n this.sortable.animateAll();\n\n if (putSortable) {\n putSortable.animateAll();\n }\n },\n drop: drop\n};\n\n_extends(Revert, {\n pluginName: 'revertOnSpill'\n});\n\nfunction Remove() {}\n\nRemove.prototype = {\n onSpill: function onSpill(_ref4) {\n var dragEl = _ref4.dragEl,\n putSortable = _ref4.putSortable;\n var parentSortable = putSortable || this.sortable;\n parentSortable.captureAnimationState();\n dragEl.parentNode && dragEl.parentNode.removeChild(dragEl);\n parentSortable.animateAll();\n },\n drop: drop\n};\n\n_extends(Remove, {\n pluginName: 'removeOnSpill'\n});\n\nvar lastSwapEl;\n\nfunction SwapPlugin() {\n function Swap() {\n this.defaults = {\n swapClass: 'sortable-swap-highlight'\n };\n }\n\n Swap.prototype = {\n dragStart: function dragStart(_ref) {\n var dragEl = _ref.dragEl;\n lastSwapEl = dragEl;\n },\n dragOverValid: function dragOverValid(_ref2) {\n var completed = _ref2.completed,\n target = _ref2.target,\n onMove = _ref2.onMove,\n activeSortable = _ref2.activeSortable,\n changed = _ref2.changed,\n cancel = _ref2.cancel;\n if (!activeSortable.options.swap) return;\n var el = this.sortable.el,\n options = this.options;\n\n if (target && target !== el) {\n var prevSwapEl = lastSwapEl;\n\n if (onMove(target) !== false) {\n toggleClass(target, options.swapClass, true);\n lastSwapEl = target;\n } else {\n lastSwapEl = null;\n }\n\n if (prevSwapEl && prevSwapEl !== lastSwapEl) {\n toggleClass(prevSwapEl, options.swapClass, false);\n }\n }\n\n changed();\n completed(true);\n cancel();\n },\n drop: function drop(_ref3) {\n var activeSortable = _ref3.activeSortable,\n putSortable = _ref3.putSortable,\n dragEl = _ref3.dragEl;\n var toSortable = putSortable || this.sortable;\n var options = this.options;\n lastSwapEl && toggleClass(lastSwapEl, options.swapClass, false);\n\n if (lastSwapEl && (options.swap || putSortable && putSortable.options.swap)) {\n if (dragEl !== lastSwapEl) {\n toSortable.captureAnimationState();\n if (toSortable !== activeSortable) activeSortable.captureAnimationState();\n swapNodes(dragEl, lastSwapEl);\n toSortable.animateAll();\n if (toSortable !== activeSortable) activeSortable.animateAll();\n }\n }\n },\n nulling: function nulling() {\n lastSwapEl = null;\n }\n };\n return _extends(Swap, {\n pluginName: 'swap',\n eventProperties: function eventProperties() {\n return {\n swapItem: lastSwapEl\n };\n }\n });\n}\n\nfunction swapNodes(n1, n2) {\n var p1 = n1.parentNode,\n p2 = n2.parentNode,\n i1,\n i2;\n if (!p1 || !p2 || p1.isEqualNode(n2) || p2.isEqualNode(n1)) return;\n i1 = index(n1);\n i2 = index(n2);\n\n if (p1.isEqualNode(p2) && i1 < i2) {\n i2++;\n }\n\n p1.insertBefore(n2, p1.children[i1]);\n p2.insertBefore(n1, p2.children[i2]);\n}\n\nvar multiDragElements = [],\n multiDragClones = [],\n lastMultiDragSelect,\n // for selection with modifier key down (SHIFT)\nmultiDragSortable,\n initialFolding = false,\n // Initial multi-drag fold when drag started\nfolding = false,\n // Folding any other time\ndragStarted = false,\n dragEl$1,\n clonesFromRect,\n clonesHidden;\n\nfunction MultiDragPlugin() {\n function MultiDrag(sortable) {\n // Bind all private methods\n for (var fn in this) {\n if (fn.charAt(0) === '_' && typeof this[fn] === 'function') {\n this[fn] = this[fn].bind(this);\n }\n }\n\n if (!sortable.options.avoidImplicitDeselect) {\n if (sortable.options.supportPointer) {\n on(document, 'pointerup', this._deselectMultiDrag);\n } else {\n on(document, 'mouseup', this._deselectMultiDrag);\n on(document, 'touchend', this._deselectMultiDrag);\n }\n }\n\n on(document, 'keydown', this._checkKeyDown);\n on(document, 'keyup', this._checkKeyUp);\n this.defaults = {\n selectedClass: 'sortable-selected',\n multiDragKey: null,\n avoidImplicitDeselect: false,\n setData: function setData(dataTransfer, dragEl) {\n var data = '';\n\n if (multiDragElements.length && multiDragSortable === sortable) {\n multiDragElements.forEach(function (multiDragElement, i) {\n data += (!i ? '' : ', ') + multiDragElement.textContent;\n });\n } else {\n data = dragEl.textContent;\n }\n\n dataTransfer.setData('Text', data);\n }\n };\n }\n\n MultiDrag.prototype = {\n multiDragKeyDown: false,\n isMultiDrag: false,\n delayStartGlobal: function delayStartGlobal(_ref) {\n var dragged = _ref.dragEl;\n dragEl$1 = dragged;\n },\n delayEnded: function delayEnded() {\n this.isMultiDrag = ~multiDragElements.indexOf(dragEl$1);\n },\n setupClone: function setupClone(_ref2) {\n var sortable = _ref2.sortable,\n cancel = _ref2.cancel;\n if (!this.isMultiDrag) return;\n\n for (var i = 0; i < multiDragElements.length; i++) {\n multiDragClones.push(clone(multiDragElements[i]));\n multiDragClones[i].sortableIndex = multiDragElements[i].sortableIndex;\n multiDragClones[i].draggable = false;\n multiDragClones[i].style['will-change'] = '';\n toggleClass(multiDragClones[i], this.options.selectedClass, false);\n multiDragElements[i] === dragEl$1 && toggleClass(multiDragClones[i], this.options.chosenClass, false);\n }\n\n sortable._hideClone();\n\n cancel();\n },\n clone: function clone(_ref3) {\n var sortable = _ref3.sortable,\n rootEl = _ref3.rootEl,\n dispatchSortableEvent = _ref3.dispatchSortableEvent,\n cancel = _ref3.cancel;\n if (!this.isMultiDrag) return;\n\n if (!this.options.removeCloneOnHide) {\n if (multiDragElements.length && multiDragSortable === sortable) {\n insertMultiDragClones(true, rootEl);\n dispatchSortableEvent('clone');\n cancel();\n }\n }\n },\n showClone: function showClone(_ref4) {\n var cloneNowShown = _ref4.cloneNowShown,\n rootEl = _ref4.rootEl,\n cancel = _ref4.cancel;\n if (!this.isMultiDrag) return;\n insertMultiDragClones(false, rootEl);\n multiDragClones.forEach(function (clone) {\n css(clone, 'display', '');\n });\n cloneNowShown();\n clonesHidden = false;\n cancel();\n },\n hideClone: function hideClone(_ref5) {\n var _this = this;\n\n var sortable = _ref5.sortable,\n cloneNowHidden = _ref5.cloneNowHidden,\n cancel = _ref5.cancel;\n if (!this.isMultiDrag) return;\n multiDragClones.forEach(function (clone) {\n css(clone, 'display', 'none');\n\n if (_this.options.removeCloneOnHide && clone.parentNode) {\n clone.parentNode.removeChild(clone);\n }\n });\n cloneNowHidden();\n clonesHidden = true;\n cancel();\n },\n dragStartGlobal: function dragStartGlobal(_ref6) {\n var sortable = _ref6.sortable;\n\n if (!this.isMultiDrag && multiDragSortable) {\n multiDragSortable.multiDrag._deselectMultiDrag();\n }\n\n multiDragElements.forEach(function (multiDragElement) {\n multiDragElement.sortableIndex = index(multiDragElement);\n }); // Sort multi-drag elements\n\n multiDragElements = multiDragElements.sort(function (a, b) {\n return a.sortableIndex - b.sortableIndex;\n });\n dragStarted = true;\n },\n dragStarted: function dragStarted(_ref7) {\n var _this2 = this;\n\n var sortable = _ref7.sortable;\n if (!this.isMultiDrag) return;\n\n if (this.options.sort) {\n // Capture rects,\n // hide multi drag elements (by positioning them absolute),\n // set multi drag elements rects to dragRect,\n // show multi drag elements,\n // animate to rects,\n // unset rects & remove from DOM\n sortable.captureAnimationState();\n\n if (this.options.animation) {\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement === dragEl$1) return;\n css(multiDragElement, 'position', 'absolute');\n });\n var dragRect = getRect(dragEl$1, false, true, true);\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement === dragEl$1) return;\n setRect(multiDragElement, dragRect);\n });\n folding = true;\n initialFolding = true;\n }\n }\n\n sortable.animateAll(function () {\n folding = false;\n initialFolding = false;\n\n if (_this2.options.animation) {\n multiDragElements.forEach(function (multiDragElement) {\n unsetRect(multiDragElement);\n });\n } // Remove all auxiliary multidrag items from el, if sorting enabled\n\n\n if (_this2.options.sort) {\n removeMultiDragElements();\n }\n });\n },\n dragOver: function dragOver(_ref8) {\n var target = _ref8.target,\n completed = _ref8.completed,\n cancel = _ref8.cancel;\n\n if (folding && ~multiDragElements.indexOf(target)) {\n completed(false);\n cancel();\n }\n },\n revert: function revert(_ref9) {\n var fromSortable = _ref9.fromSortable,\n rootEl = _ref9.rootEl,\n sortable = _ref9.sortable,\n dragRect = _ref9.dragRect;\n\n if (multiDragElements.length > 1) {\n // Setup unfold animation\n multiDragElements.forEach(function (multiDragElement) {\n sortable.addAnimationState({\n target: multiDragElement,\n rect: folding ? getRect(multiDragElement) : dragRect\n });\n unsetRect(multiDragElement);\n multiDragElement.fromRect = dragRect;\n fromSortable.removeAnimationState(multiDragElement);\n });\n folding = false;\n insertMultiDragElements(!this.options.removeCloneOnHide, rootEl);\n }\n },\n dragOverCompleted: function dragOverCompleted(_ref10) {\n var sortable = _ref10.sortable,\n isOwner = _ref10.isOwner,\n insertion = _ref10.insertion,\n activeSortable = _ref10.activeSortable,\n parentEl = _ref10.parentEl,\n putSortable = _ref10.putSortable;\n var options = this.options;\n\n if (insertion) {\n // Clones must be hidden before folding animation to capture dragRectAbsolute properly\n if (isOwner) {\n activeSortable._hideClone();\n }\n\n initialFolding = false; // If leaving sort:false root, or already folding - Fold to new location\n\n if (options.animation && multiDragElements.length > 1 && (folding || !isOwner && !activeSortable.options.sort && !putSortable)) {\n // Fold: Set all multi drag elements's rects to dragEl's rect when multi-drag elements are invisible\n var dragRectAbsolute = getRect(dragEl$1, false, true, true);\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement === dragEl$1) return;\n setRect(multiDragElement, dragRectAbsolute); // Move element(s) to end of parentEl so that it does not interfere with multi-drag clones insertion if they are inserted\n // while folding, and so that we can capture them again because old sortable will no longer be fromSortable\n\n parentEl.appendChild(multiDragElement);\n });\n folding = true;\n } // Clones must be shown (and check to remove multi drags) after folding when interfering multiDragElements are moved out\n\n\n if (!isOwner) {\n // Only remove if not folding (folding will remove them anyways)\n if (!folding) {\n removeMultiDragElements();\n }\n\n if (multiDragElements.length > 1) {\n var clonesHiddenBefore = clonesHidden;\n\n activeSortable._showClone(sortable); // Unfold animation for clones if showing from hidden\n\n\n if (activeSortable.options.animation && !clonesHidden && clonesHiddenBefore) {\n multiDragClones.forEach(function (clone) {\n activeSortable.addAnimationState({\n target: clone,\n rect: clonesFromRect\n });\n clone.fromRect = clonesFromRect;\n clone.thisAnimationDuration = null;\n });\n }\n } else {\n activeSortable._showClone(sortable);\n }\n }\n }\n },\n dragOverAnimationCapture: function dragOverAnimationCapture(_ref11) {\n var dragRect = _ref11.dragRect,\n isOwner = _ref11.isOwner,\n activeSortable = _ref11.activeSortable;\n multiDragElements.forEach(function (multiDragElement) {\n multiDragElement.thisAnimationDuration = null;\n });\n\n if (activeSortable.options.animation && !isOwner && activeSortable.multiDrag.isMultiDrag) {\n clonesFromRect = _extends({}, dragRect);\n var dragMatrix = matrix(dragEl$1, true);\n clonesFromRect.top -= dragMatrix.f;\n clonesFromRect.left -= dragMatrix.e;\n }\n },\n dragOverAnimationComplete: function dragOverAnimationComplete() {\n if (folding) {\n folding = false;\n removeMultiDragElements();\n }\n },\n drop: function drop(_ref12) {\n var evt = _ref12.originalEvent,\n rootEl = _ref12.rootEl,\n parentEl = _ref12.parentEl,\n sortable = _ref12.sortable,\n dispatchSortableEvent = _ref12.dispatchSortableEvent,\n oldIndex = _ref12.oldIndex,\n putSortable = _ref12.putSortable;\n var toSortable = putSortable || this.sortable;\n if (!evt) return;\n var options = this.options,\n children = parentEl.children; // Multi-drag selection\n\n if (!dragStarted) {\n if (options.multiDragKey && !this.multiDragKeyDown) {\n this._deselectMultiDrag();\n }\n\n toggleClass(dragEl$1, options.selectedClass, !~multiDragElements.indexOf(dragEl$1));\n\n if (!~multiDragElements.indexOf(dragEl$1)) {\n multiDragElements.push(dragEl$1);\n dispatchEvent({\n sortable: sortable,\n rootEl: rootEl,\n name: 'select',\n targetEl: dragEl$1,\n originalEvent: evt\n }); // Modifier activated, select from last to dragEl\n\n if (evt.shiftKey && lastMultiDragSelect && sortable.el.contains(lastMultiDragSelect)) {\n var lastIndex = index(lastMultiDragSelect),\n currentIndex = index(dragEl$1);\n\n if (~lastIndex && ~currentIndex && lastIndex !== currentIndex) {\n // Must include lastMultiDragSelect (select it), in case modified selection from no selection\n // (but previous selection existed)\n var n, i;\n\n if (currentIndex > lastIndex) {\n i = lastIndex;\n n = currentIndex;\n } else {\n i = currentIndex;\n n = lastIndex + 1;\n }\n\n for (; i < n; i++) {\n if (~multiDragElements.indexOf(children[i])) continue;\n toggleClass(children[i], options.selectedClass, true);\n multiDragElements.push(children[i]);\n dispatchEvent({\n sortable: sortable,\n rootEl: rootEl,\n name: 'select',\n targetEl: children[i],\n originalEvent: evt\n });\n }\n }\n } else {\n lastMultiDragSelect = dragEl$1;\n }\n\n multiDragSortable = toSortable;\n } else {\n multiDragElements.splice(multiDragElements.indexOf(dragEl$1), 1);\n lastMultiDragSelect = null;\n dispatchEvent({\n sortable: sortable,\n rootEl: rootEl,\n name: 'deselect',\n targetEl: dragEl$1,\n originalEvent: evt\n });\n }\n } // Multi-drag drop\n\n\n if (dragStarted && this.isMultiDrag) {\n folding = false; // Do not \"unfold\" after around dragEl if reverted\n\n if ((parentEl[expando].options.sort || parentEl !== rootEl) && multiDragElements.length > 1) {\n var dragRect = getRect(dragEl$1),\n multiDragIndex = index(dragEl$1, ':not(.' + this.options.selectedClass + ')');\n if (!initialFolding && options.animation) dragEl$1.thisAnimationDuration = null;\n toSortable.captureAnimationState();\n\n if (!initialFolding) {\n if (options.animation) {\n dragEl$1.fromRect = dragRect;\n multiDragElements.forEach(function (multiDragElement) {\n multiDragElement.thisAnimationDuration = null;\n\n if (multiDragElement !== dragEl$1) {\n var rect = folding ? getRect(multiDragElement) : dragRect;\n multiDragElement.fromRect = rect; // Prepare unfold animation\n\n toSortable.addAnimationState({\n target: multiDragElement,\n rect: rect\n });\n }\n });\n } // Multi drag elements are not necessarily removed from the DOM on drop, so to reinsert\n // properly they must all be removed\n\n\n removeMultiDragElements();\n multiDragElements.forEach(function (multiDragElement) {\n if (children[multiDragIndex]) {\n parentEl.insertBefore(multiDragElement, children[multiDragIndex]);\n } else {\n parentEl.appendChild(multiDragElement);\n }\n\n multiDragIndex++;\n }); // If initial folding is done, the elements may have changed position because they are now\n // unfolding around dragEl, even though dragEl may not have his index changed, so update event\n // must be fired here as Sortable will not.\n\n if (oldIndex === index(dragEl$1)) {\n var update = false;\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement.sortableIndex !== index(multiDragElement)) {\n update = true;\n return;\n }\n });\n\n if (update) {\n dispatchSortableEvent('update');\n }\n }\n } // Must be done after capturing individual rects (scroll bar)\n\n\n multiDragElements.forEach(function (multiDragElement) {\n unsetRect(multiDragElement);\n });\n toSortable.animateAll();\n }\n\n multiDragSortable = toSortable;\n } // Remove clones if necessary\n\n\n if (rootEl === parentEl || putSortable && putSortable.lastPutMode !== 'clone') {\n multiDragClones.forEach(function (clone) {\n clone.parentNode && clone.parentNode.removeChild(clone);\n });\n }\n },\n nullingGlobal: function nullingGlobal() {\n this.isMultiDrag = dragStarted = false;\n multiDragClones.length = 0;\n },\n destroyGlobal: function destroyGlobal() {\n this._deselectMultiDrag();\n\n off(document, 'pointerup', this._deselectMultiDrag);\n off(document, 'mouseup', this._deselectMultiDrag);\n off(document, 'touchend', this._deselectMultiDrag);\n off(document, 'keydown', this._checkKeyDown);\n off(document, 'keyup', this._checkKeyUp);\n },\n _deselectMultiDrag: function _deselectMultiDrag(evt) {\n if (typeof dragStarted !== \"undefined\" && dragStarted) return; // Only deselect if selection is in this sortable\n\n if (multiDragSortable !== this.sortable) return; // Only deselect if target is not item in this sortable\n\n if (evt && closest(evt.target, this.options.draggable, this.sortable.el, false)) return; // Only deselect if left click\n\n if (evt && evt.button !== 0) return;\n\n while (multiDragElements.length) {\n var el = multiDragElements[0];\n toggleClass(el, this.options.selectedClass, false);\n multiDragElements.shift();\n dispatchEvent({\n sortable: this.sortable,\n rootEl: this.sortable.el,\n name: 'deselect',\n targetEl: el,\n originalEvent: evt\n });\n }\n },\n _checkKeyDown: function _checkKeyDown(evt) {\n if (evt.key === this.options.multiDragKey) {\n this.multiDragKeyDown = true;\n }\n },\n _checkKeyUp: function _checkKeyUp(evt) {\n if (evt.key === this.options.multiDragKey) {\n this.multiDragKeyDown = false;\n }\n }\n };\n return _extends(MultiDrag, {\n // Static methods & properties\n pluginName: 'multiDrag',\n utils: {\n /**\r\n * Selects the provided multi-drag item\r\n * @param {HTMLElement} el The element to be selected\r\n */\n select: function select(el) {\n var sortable = el.parentNode[expando];\n if (!sortable || !sortable.options.multiDrag || ~multiDragElements.indexOf(el)) return;\n\n if (multiDragSortable && multiDragSortable !== sortable) {\n multiDragSortable.multiDrag._deselectMultiDrag();\n\n multiDragSortable = sortable;\n }\n\n toggleClass(el, sortable.options.selectedClass, true);\n multiDragElements.push(el);\n },\n\n /**\r\n * Deselects the provided multi-drag item\r\n * @param {HTMLElement} el The element to be deselected\r\n */\n deselect: function deselect(el) {\n var sortable = el.parentNode[expando],\n index = multiDragElements.indexOf(el);\n if (!sortable || !sortable.options.multiDrag || !~index) return;\n toggleClass(el, sortable.options.selectedClass, false);\n multiDragElements.splice(index, 1);\n }\n },\n eventProperties: function eventProperties() {\n var _this3 = this;\n\n var oldIndicies = [],\n newIndicies = [];\n multiDragElements.forEach(function (multiDragElement) {\n oldIndicies.push({\n multiDragElement: multiDragElement,\n index: multiDragElement.sortableIndex\n }); // multiDragElements will already be sorted if folding\n\n var newIndex;\n\n if (folding && multiDragElement !== dragEl$1) {\n newIndex = -1;\n } else if (folding) {\n newIndex = index(multiDragElement, ':not(.' + _this3.options.selectedClass + ')');\n } else {\n newIndex = index(multiDragElement);\n }\n\n newIndicies.push({\n multiDragElement: multiDragElement,\n index: newIndex\n });\n });\n return {\n items: _toConsumableArray(multiDragElements),\n clones: [].concat(multiDragClones),\n oldIndicies: oldIndicies,\n newIndicies: newIndicies\n };\n },\n optionListeners: {\n multiDragKey: function multiDragKey(key) {\n key = key.toLowerCase();\n\n if (key === 'ctrl') {\n key = 'Control';\n } else if (key.length > 1) {\n key = key.charAt(0).toUpperCase() + key.substr(1);\n }\n\n return key;\n }\n }\n });\n}\n\nfunction insertMultiDragElements(clonesInserted, rootEl) {\n multiDragElements.forEach(function (multiDragElement, i) {\n var target = rootEl.children[multiDragElement.sortableIndex + (clonesInserted ? Number(i) : 0)];\n\n if (target) {\n rootEl.insertBefore(multiDragElement, target);\n } else {\n rootEl.appendChild(multiDragElement);\n }\n });\n}\n/**\r\n * Insert multi-drag clones\r\n * @param {[Boolean]} elementsInserted Whether the multi-drag elements are inserted\r\n * @param {HTMLElement} rootEl\r\n */\n\n\nfunction insertMultiDragClones(elementsInserted, rootEl) {\n multiDragClones.forEach(function (clone, i) {\n var target = rootEl.children[clone.sortableIndex + (elementsInserted ? Number(i) : 0)];\n\n if (target) {\n rootEl.insertBefore(clone, target);\n } else {\n rootEl.appendChild(clone);\n }\n });\n}\n\nfunction removeMultiDragElements() {\n multiDragElements.forEach(function (multiDragElement) {\n if (multiDragElement === dragEl$1) return;\n multiDragElement.parentNode && multiDragElement.parentNode.removeChild(multiDragElement);\n });\n}\n\nSortable.mount(new AutoScrollPlugin());\nSortable.mount(Remove, Revert);\n\nexport default Sortable;\nexport { MultiDragPlugin as MultiDrag, Sortable, SwapPlugin as Swap };\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"vue-admin-table\",class:{'vue-admin-table-padded': _vm.padded},attrs:{\"id\":_vm.tableId}},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.showToolbar),expression:\"showToolbar\"}],staticClass:\"toolbar\"},[_c('div',{staticClass:\"flex flex-nowrap\"},[_vm._l((_vm.actions),function(action,index){return _c('div',{key:index},[_c('admin-table-action-button',{attrs:{\"label\":action.label,\"icon\":action.icon,\"action\":action.action,\"actions\":action.actions,\"allow-multiple\":action.allowMultiple,\"ids\":_vm.checks,\"enabled\":_vm.checks.length ? true : false,\"error\":action.error,\"ajax\":action.ajax},on:{\"reload\":_vm.reload}})],1)}),_vm._v(\" \"),(_vm.search && !_vm.tableData.length)?_c('div',{staticClass:\"flex-grow texticon search icon clearable\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.searchTerm),expression:\"searchTerm\"}],staticClass:\"text fullwidth\",attrs:{\"type\":\"text\",\"autocomplete\":\"off\",\"placeholder\":_vm.searchPlaceholderText},domProps:{\"value\":(_vm.searchTerm)},on:{\"input\":[function($event){if($event.target.composing)return;_vm.searchTerm=$event.target.value},_vm.handleSearch]}}),_vm._v(\" \"),_c('div',{staticClass:\"clear hidden\",attrs:{\"title\":_vm.searchClearTitle}})]):_vm._e(),_vm._v(\" \"),(_vm.buttons && _vm.buttons.length)?_c('div',{staticClass:\"vue-admin-table-buttons\"},[_c('div',{staticClass:\"flex flex-nowrap\"},_vm._l((_vm.buttons),function(button,index){return _c('div',{key:index},[_c('admin-table-button',{attrs:{\"label\":button.label,\"icon\":button.icon,\"href\":button.href,\"btn-class\":button.class,\"enabled\":_vm.isLoading\n ? false\n : button.enabled != undefined\n ? button.enabled\n : true}})],1)}),0)]):_vm._e()],2)]),_vm._v(\" \"),_c('div',{class:{'content-pane': _vm.fullPage}},[(this.isEmpty)?_c('div',{staticClass:\"zilch\"},[_c('p',[_vm._v(_vm._s(_vm.emptyMessage))])]):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"tableview\",class:{loading: _vm.isLoading, hidden: this.isEmpty}},[_c('div',{class:{'vue-admin-tablepane': true, tablepane: _vm.fullPane}},[_c('vuetable',{ref:\"vuetable\",attrs:{\"append-params\":_vm.appendParams,\"api-mode\":_vm.apiUrl ? true : false,\"api-url\":_vm.apiUrl,\"css\":_vm.tableCss,\"data\":_vm.tableData,\"detail-row-component\":_vm.detailRowComponent,\"fields\":_vm.fields,\"per-page\":_vm.perPage,\"pagination-path\":\"pagination\"},on:{\"vuetable:loaded\":_vm.init,\"vuetable:loading\":_vm.loading,\"vuetable:pagination-data\":_vm.onPaginationData,\"vuetable:load-success\":_vm.onLoadSuccess},scopedSlots:_vm._u([{key:\"checkbox\",fn:function(props){return [_c('admin-table-checkbox',{attrs:{\"id\":props.rowData.id,\"checks\":_vm.checks,\"status\":_vm.checkboxStatus(props.rowData)},on:{\"addCheck\":_vm.addCheck,\"removeCheck\":_vm.removeCheck}})]}},{key:\"title\",fn:function(props){return [(props.rowData.status !== undefined)?_c('span',{staticClass:\"status\",class:{enabled: props.rowData.status}}):_vm._e(),_vm._v(\" \"),(props.rowData.url)?_c('a',{class:{'cell-bold': props.rowData.status === undefined},attrs:{\"href\":props.rowData.url}},[_vm._v(_vm._s(props.rowData.title))]):_c('span',{class:{'cell-bold': props.rowData.status === undefined}},[_vm._v(_vm._s(props.rowData.title))])]}},{key:\"handle\",fn:function(props){return [_c('admin-table-copy-text-button',{key:props.rowData.id,attrs:{\"value\":props.rowData.handle}})]}},{key:\"menu\",fn:function(props){return [(props.rowData.menu.showItems)?[_c('a',{attrs:{\"href\":props.rowData.menu.url}},[_vm._v(_vm._s(props.rowData.menu.label)+\" (\"+_vm._s(props.rowData.menu.items.length)+\")\")]),_vm._v(\" \"),_c('a',{staticClass:\"menubtn\",attrs:{\"title\":props.rowData.menu.label}}),_vm._v(\" \"),_c('div',{staticClass:\"menu\"},[_c('ul',_vm._l((props.rowData.menu.items),function(item,index){return _c('li',{key:index},[_c('a',{attrs:{\"href\":item.url}},[_vm._v(_vm._s(item.label))])])}),0)])]:[_c('a',{attrs:{\"href\":props.rowData.menu.url}},[_vm._v(_vm._s(props.rowData.menu.label))])]]}},{key:\"detail\",fn:function(props){return [(\n props.rowData.detail.content && props.rowData.detail.handle\n )?_c('div',{staticClass:\"detail-cursor-pointer\",domProps:{\"innerHTML\":_vm._s(props.rowData.detail.handle)},on:{\"click\":function($event){return _vm.handleDetailRow(props.rowData.id)}}}):_vm._e(),_vm._v(\" \"),(\n props.rowData.detail.content &&\n (!props.rowData.detail.handle ||\n props.rowData.detail.handle == undefined) &&\n (Object.keys(props.rowData.detail.content).length ||\n props.rowData.detail.content.length)\n )?_c('div',{staticClass:\"detail-cursor-pointer\",attrs:{\"data-icon\":\"info\",\"title\":props.rowData.detail.title},on:{\"click\":function($event){return _vm.handleDetailRow(props.rowData.id)}}}):_vm._e()]}},{key:\"reorder\",fn:function(props){return [_c('i',{staticClass:\"move icon vue-table-move-handle\",class:{disabled: !_vm.canReorder},attrs:{\"data-id\":props.rowData.id}})]}},{key:\"delete\",fn:function(props){return [(\n props.rowData._showDelete == undefined ||\n props.rowData._showDelete == true\n )?_c('admin-table-delete-button',{attrs:{\"id\":props.rowData.id,\"name\":props.rowData.title,\"before\":_vm.beforeDelete,\"success-message\":_vm.deleteSuccessMessage,\"confirmation-message\":_vm.deleteConfirmationMessage,\"fail-message\":_vm.deleteFailMessage,\"action-url\":_vm.deleteAction,\"disabled\":!_vm.canDelete},on:{\"loading\":function($event){return _vm.loading()},\"finishloading\":function($event){return _vm.loading(false)},\"reload\":function($event){return _vm.remove(props.rowIndex, props.rowData.id)}}}):_vm._e()]}}])})],1),_vm._v(\" \"),_c('admin-table-pagination',{ref:\"pagination\",attrs:{\"itemLabels\":_vm.itemLabels},on:{\"vuetable-pagination:change-page\":_vm.onChangePage}})],1)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-2.use!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-2.use!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=65861e68&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=65861e68&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","/* jshint esversion: 6, strict: false */\n/* global Craft */\n/* global Garnish */\n/* global $ */\n\nimport Vue from 'vue';\nimport AdminTable from '@craftcms/vue/admintable/App';\n\nCraft.VueAdminTable = Garnish.Base.extend(\n {\n init: function (settings) {\n this.setSettings(settings, Craft.VueAdminTable.defaults);\n\n const props = this.settings;\n\n return new Vue({\n components: {\n AdminTable,\n },\n data() {\n return {};\n },\n render: (h) => {\n return h(AdminTable, {\n props: props,\n });\n },\n }).$mount(this.settings.container);\n },\n },\n {\n defaults: {\n actions: [],\n checkboxes: false,\n checkboxStatus: function () {\n return true;\n },\n columns: [],\n container: null,\n deleteAction: null,\n reorderAction: null,\n reorderSuccessMessage: Craft.t('app', 'Items reordered.'),\n reorderFailMessage: Craft.t('app', 'Couldn’t reorder items.'),\n search: false,\n searchPlaceholder: Craft.t('app', 'Search'),\n buttons: [],\n tableData: [],\n tableDataEndpoint: null,\n onLoaded: $.noop,\n onLoading: $.noop,\n onData: $.noop,\n onPagination: $.noop,\n onSelect: $.noop,\n },\n }\n);\n"],"names":["undefined","FUNC_ERROR_TEXT","HASH_UNDEFINED","PLACEHOLDER","WRAP_PARTIAL_FLAG","WRAP_ARY_FLAG","INFINITY","MAX_SAFE_INTEGER","NAN","MAX_ARRAY_LENGTH","wrapFlags","argsTag","arrayTag","boolTag","dateTag","errorTag","funcTag","genTag","mapTag","numberTag","objectTag","promiseTag","regexpTag","setTag","stringTag","symbolTag","weakMapTag","arrayBufferTag","dataViewTag","float32Tag","float64Tag","int8Tag","int16Tag","int32Tag","uint8Tag","uint8ClampedTag","uint16Tag","uint32Tag","reEmptyStringLeading","reEmptyStringMiddle","reEmptyStringTrailing","reEscapedHtml","reUnescapedHtml","reHasEscapedHtml","RegExp","source","reHasUnescapedHtml","reEscape","reEvaluate","reInterpolate","reIsDeepProp","reIsPlainProp","rePropName","reRegExpChar","reHasRegExpChar","reTrimStart","reWhitespace","reWrapComment","reWrapDetails","reSplitDetails","reAsciiWord","reForbiddenIdentifierChars","reEscapeChar","reEsTemplate","reFlags","reIsBadHex","reIsBinary","reIsHostCtor","reIsOctal","reIsUint","reLatin","reNoMatch","reUnescapedString","rsComboRange","rsComboMarksRange","rsLowerRange","rsUpperRange","rsBreakRange","rsMathOpRange","rsBreak","rsCombo","rsDigits","rsLower","rsMisc","rsFitz","rsNonAstral","rsRegional","rsSurrPair","rsUpper","rsMiscLower","rsMiscUpper","rsOptContrLower","rsOptContrUpper","reOptMod","rsModifier","rsOptVar","rsSeq","join","rsEmoji","rsSymbol","reApos","reComboMark","reUnicode","reUnicodeWord","reHasUnicode","reHasUnicodeWord","contextProps","templateCounter","typedArrayTags","cloneableTags","stringEscapes","freeParseFloat","parseFloat","freeParseInt","parseInt","freeGlobal","g","Object","freeSelf","self","root","Function","freeExports","exports","nodeType","freeModule","module","moduleExports","freeProcess","process","nodeUtil","require","types","binding","e","nodeIsArrayBuffer","isArrayBuffer","nodeIsDate","isDate","nodeIsMap","isMap","nodeIsRegExp","isRegExp","nodeIsSet","isSet","nodeIsTypedArray","isTypedArray","apply","func","thisArg","args","length","call","arrayAggregator","array","setter","iteratee","accumulator","index","value","arrayEach","arrayEachRight","arrayEvery","predicate","arrayFilter","resIndex","result","arrayIncludes","baseIndexOf","arrayIncludesWith","comparator","arrayMap","Array","arrayPush","values","offset","arrayReduce","initAccum","arrayReduceRight","arraySome","asciiSize","baseProperty","baseFindKey","collection","eachFunc","key","baseFindIndex","fromIndex","fromRight","strictIndexOf","baseIsNaN","baseIndexOfWith","baseMean","baseSum","object","basePropertyOf","baseReduce","current","baseTimes","n","baseTrim","string","slice","trimmedEndIndex","replace","baseUnary","baseValues","props","cacheHas","cache","has","charsStartIndex","strSymbols","chrSymbols","charsEndIndex","countHolders","placeholder","deburrLetter","escapeHtmlChar","escapeStringChar","chr","hasUnicode","test","mapToArray","map","size","forEach","overArg","transform","arg","replaceHolders","setToArray","set","setToPairs","stringSize","lastIndex","unicodeSize","stringToArray","match","unicodeToArray","split","asciiToArray","charAt","unescapeHtmlChar","_","runInContext","context","uid","defaults","pick","Date","Error","Math","String","TypeError","arrayProto","prototype","funcProto","objectProto","coreJsData","funcToString","toString","hasOwnProperty","idCounter","maskSrcKey","exec","keys","IE_PROTO","nativeObjectToString","objectCtorString","oldDash","reIsNative","Buffer","Symbol","Uint8Array","allocUnsafe","getPrototype","getPrototypeOf","objectCreate","create","propertyIsEnumerable","splice","spreadableSymbol","isConcatSpreadable","symIterator","iterator","symToStringTag","toStringTag","defineProperty","getNative","ctxClearTimeout","clearTimeout","ctxNow","now","ctxSetTimeout","setTimeout","nativeCeil","ceil","nativeFloor","floor","nativeGetSymbols","getOwnPropertySymbols","nativeIsBuffer","isBuffer","nativeIsFinite","isFinite","nativeJoin","nativeKeys","nativeMax","max","nativeMin","min","nativeNow","nativeParseInt","nativeRandom","random","nativeReverse","reverse","DataView","Map","Promise","Set","WeakMap","nativeCreate","metaMap","realNames","dataViewCtorString","toSource","mapCtorString","promiseCtorString","setCtorString","weakMapCtorString","symbolProto","symbolValueOf","valueOf","symbolToString","lodash","isObjectLike","isArray","LazyWrapper","LodashWrapper","wrapperClone","baseCreate","proto","isObject","baseLodash","chainAll","this","__wrapped__","__actions__","__chain__","__index__","__values__","__dir__","__filtered__","__iteratees__","__takeCount__","__views__","Hash","entries","clear","entry","ListCache","MapCache","SetCache","__data__","add","Stack","data","arrayLikeKeys","inherited","isArr","isArg","isArguments","isBuff","isType","skipIndexes","isIndex","push","arraySample","baseRandom","arraySampleSize","shuffleSelf","copyArray","baseClamp","arrayShuffle","assignMergeValue","eq","baseAssignValue","assignValue","objValue","assocIndexOf","baseAggregator","baseEach","baseAssign","copyObject","baseAt","paths","skip","get","number","lower","upper","baseClone","bitmask","customizer","stack","isDeep","isFlat","isFull","constructor","input","initCloneArray","tag","getTag","isFunc","cloneBuffer","initCloneObject","getSymbolsIn","copySymbolsIn","keysIn","baseAssignIn","getSymbols","copySymbols","symbol","Ctor","cloneArrayBuffer","dataView","buffer","byteOffset","byteLength","cloneDataView","cloneTypedArray","regexp","cloneRegExp","initCloneByTag","stacked","subValue","getAllKeysIn","getAllKeys","baseConformsTo","baseDelay","wait","baseDifference","includes","isCommon","valuesLength","outer","computed","valuesIndex","templateSettings","pop","getMapData","pairs","LARGE_ARRAY_SIZE","createBaseEach","baseForOwn","baseEachRight","baseForOwnRight","baseEvery","baseExtremum","isSymbol","baseFilter","baseFlatten","depth","isStrict","isFlattenable","baseFor","createBaseFor","baseForRight","baseFunctions","isFunction","baseGet","path","castPath","toKey","baseGetAllKeys","keysFunc","symbolsFunc","baseGetTag","isOwn","unmasked","getRawTag","objectToString","baseGt","other","baseHas","baseHasIn","baseIntersection","arrays","othLength","othIndex","caches","maxLength","Infinity","seen","baseInvoke","parent","last","baseIsArguments","baseIsEqual","equalFunc","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","equalArrays","name","message","convert","isPartial","equalByTag","objIsWrapped","othIsWrapped","objUnwrapped","othUnwrapped","objProps","objLength","objStacked","othStacked","skipCtor","othValue","compared","objCtor","othCtor","equalObjects","baseIsEqualDeep","baseIsMatch","matchData","noCustomizer","srcValue","COMPARE_PARTIAL_FLAG","baseIsNative","baseIteratee","identity","baseMatchesProperty","baseMatches","property","baseKeys","isPrototype","baseLt","baseMap","isArrayLike","getMatchData","matchesStrictComparable","isKey","isStrictComparable","hasIn","baseMerge","srcIndex","mergeFunc","safeGet","newValue","isTyped","isArrayLikeObject","isPlainObject","toPlainObject","baseMergeDeep","baseNth","baseOrderBy","iteratees","orders","getIteratee","criteria","comparer","sort","objCriteria","othCriteria","ordersLength","compareAscending","compareMultiple","baseSortBy","basePickBy","baseSet","basePullAll","indexOf","basePullAt","indexes","previous","baseUnset","baseRepeat","baseRest","start","setToString","overRest","baseSample","baseSampleSize","nested","baseSetData","baseSetToString","constant","baseShuffle","baseSlice","end","baseSome","baseSortedIndex","retHighest","low","high","mid","baseSortedIndexBy","valIsNaN","valIsNull","valIsSymbol","valIsUndefined","othIsDefined","othIsNull","othIsReflexive","othIsSymbol","setLow","baseSortedUniq","baseToNumber","baseToString","baseUniq","createSet","seenIndex","baseUpdate","updater","baseWhile","isDrop","baseWrapperValue","actions","action","baseXor","baseZipObject","assignFunc","valsLength","castArrayLikeObject","castFunction","stringToPath","castRest","castSlice","id","copy","arrayBuffer","typedArray","valIsDefined","valIsReflexive","composeArgs","partials","holders","isCurried","argsIndex","argsLength","holdersLength","leftIndex","leftLength","rangeLength","isUncurried","composeArgsRight","holdersIndex","rightIndex","rightLength","isNew","createAggregator","initializer","createAssigner","assigner","sources","guard","isIterateeCall","iterable","createCaseFirst","methodName","trailing","createCompounder","callback","words","deburr","createCtor","arguments","thisBinding","createFind","findIndexFunc","createFlow","flatRest","funcs","prereq","thru","wrapper","getFuncName","funcName","getData","isLaziable","plant","createHybrid","partialsRight","holdersRight","argPos","ary","arity","isAry","isBind","isBindKey","isFlip","getHolder","holdersCount","newHolders","createRecurry","fn","reorder","createInverter","toIteratee","baseInverter","createMathOperation","operator","defaultValue","createOver","arrayFunc","createPadding","chars","charsLength","createRange","step","toFinite","baseRange","createRelationalOperation","toNumber","wrapFunc","isCurry","newData","setData","setWrapToString","createRound","precision","toInteger","pair","noop","createToPairs","baseToPairs","createWrap","srcBitmask","newBitmask","isCombo","mergeData","createCurry","createPartial","createBind","customDefaultsAssignIn","customDefaultsMerge","customOmitClone","arrLength","arrStacked","arrValue","flatten","otherFunc","type","getValue","stubArray","hasPath","hasFunc","isLength","ArrayBuffer","resolve","ctorString","isMaskable","stubFalse","otherArgs","oldArray","shortOut","reference","details","insertWrapDetails","updateWrapDetails","getWrapDetails","count","lastCalled","stamp","remaining","rand","memoize","charCodeAt","quote","subString","clone","difference","differenceBy","differenceWith","findIndex","findLastIndex","head","intersection","mapped","intersectionBy","intersectionWith","pull","pullAll","pullAt","union","unionBy","unionWith","unzip","group","unzipWith","without","xor","xorBy","xorWith","zip","zipWith","chain","interceptor","wrapperAt","countBy","find","findLast","forEachRight","groupBy","invokeMap","keyBy","partition","sortBy","before","bind","bindKey","WRAP_BIND_FLAG","debounce","options","lastArgs","lastThis","maxWait","timerId","lastCallTime","lastInvokeTime","leading","maxing","invokeFunc","time","leadingEdge","timerExpired","shouldInvoke","timeSinceLastCall","trailingEdge","timeWaiting","remainingWait","debounced","isInvoking","cancel","flush","defer","delay","resolver","memoized","Cache","negate","overArgs","transforms","funcsLength","partial","partialRight","rearg","gt","gte","isError","isInteger","isNumber","isString","lt","lte","toArray","next","done","iteratorToArray","remainder","toLength","isBinary","assign","assignIn","assignInWith","assignWith","at","propsIndex","propsLength","defaultsDeep","mergeWith","invert","invertBy","invoke","nativeKeysIn","isProto","baseKeysIn","merge","omit","CLONE_DEEP_FLAG","basePick","pickBy","prop","toPairs","toPairsIn","camelCase","word","toLowerCase","capitalize","upperFirst","kebabCase","lowerCase","lowerFirst","snakeCase","startCase","upperCase","toUpperCase","pattern","hasUnicodeWord","unicodeWords","asciiWords","attempt","bindAll","methodNames","flow","flowRight","method","methodOf","mixin","over","overEvery","overSome","basePropertyDeep","range","rangeRight","augend","addend","divide","dividend","divisor","multiply","multiplier","multiplicand","round","subtract","minuend","subtrahend","after","castArray","chunk","compact","concat","cond","conforms","baseConforms","properties","curry","curryRight","drop","dropRight","dropRightWhile","dropWhile","fill","baseFill","filter","flatMap","flatMapDeep","flatMapDepth","flattenDeep","flattenDepth","flip","fromPairs","functions","functionsIn","initial","mapKeys","mapValues","matches","matchesProperty","nthArg","omitBy","once","orderBy","propertyOf","pullAllBy","pullAllWith","reject","remove","rest","sampleSize","setWith","shuffle","sortedUniq","sortedUniqBy","separator","limit","spread","tail","take","takeRight","takeRightWhile","takeWhile","tap","throttle","toPath","isArrLike","unary","uniq","uniqBy","uniqWith","unset","update","updateWith","valuesIn","wrap","zipObject","zipObjectDeep","entriesIn","extend","extendWith","clamp","cloneDeep","cloneDeepWith","cloneWith","conformsTo","defaultTo","endsWith","target","position","escape","escapeRegExp","every","findKey","findLastKey","forIn","forInRight","forOwn","forOwnRight","inRange","baseInRange","isBoolean","isElement","isEmpty","isEqual","isEqualWith","isMatch","isMatchWith","isNaN","isNative","isNil","isNull","isSafeInteger","isUndefined","isWeakMap","isWeakSet","lastIndexOf","strictLastIndexOf","maxBy","mean","meanBy","minBy","stubObject","stubString","stubTrue","nth","noConflict","pad","strLength","padEnd","padStart","radix","floating","temp","reduce","reduceRight","repeat","sample","some","sortedIndex","sortedIndexBy","sortedIndexOf","sortedLastIndex","sortedLastIndexBy","sortedLastIndexOf","startsWith","sum","sumBy","template","settings","isEscaping","isEvaluating","imports","importsKeys","importsValues","interpolate","reDelimiters","evaluate","sourceURL","escapeValue","interpolateValue","esTemplateValue","evaluateValue","variable","times","toLower","toSafeInteger","toUpper","trim","trimEnd","trimStart","truncate","omission","search","substring","global","newEnd","unescape","uniqueId","prefix","each","eachRight","first","VERSION","isFilter","takeName","dropName","checkIteratee","isTaker","lodashFunc","retUnwrapped","isLazy","useLazy","isHybrid","isUnwrapped","onlyLazy","chainName","dir","isRight","view","getView","iterLength","takeCount","iterIndex","commit","wrapped","toJSON","content","__esModule","default","locals","listToStyles","parentId","list","styles","newStyles","i","item","part","css","media","sourceMap","parts","hasDocument","document","DEBUG","stylesInDom","getElementsByTagName","singletonElement","singletonCounter","isProduction","ssrIdKey","isOldIE","navigator","userAgent","addStylesClient","_isProduction","_options","addStylesToDom","newList","mayRemove","domStyle","refs","j","addStyle","createStyleElement","styleElement","createElement","appendChild","obj","querySelector","parentNode","removeChild","styleIndex","applyToSingletonTag","applyToTag","newObj","textStore","replaceText","replacement","Boolean","styleSheet","cssText","cssNode","createTextNode","childNodes","insertBefore","setAttribute","ssrId","btoa","encodeURIComponent","JSON","stringify","firstChild","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","getter","d","a","definition","o","enumerable","globalThis","window","nmd","children","Vue","axios","fields","required","loadOnStart","apiUrl","httpMethod","validator","reactiveApiUrl","apiMode","dataTotal","Number","dataManager","dataPath","paginationPath","queryParams","page","perPage","appendParams","httpOptions","httpFetch","initialPage","sortOrder","multiSort","tableHeight","multiSortKey","rowClassCallback","rowClass","detailRowComponent","detailRowTransition","trackBy","tableClass","loadingClass","ascendingIcon","descendingIcon","ascendingClass","descendingClass","sortableIcon","detailRowClass","handleIcon","tableBodyClass","tableHeaderClass","minRows","silent","noDataTemplate","showSortIcons","eventPrefix","tableFields","tableData","tablePagination","currentPage","selectedTo","visibleDetailRows","lastScrollPosition","scrollBarWidth","scrollVisible","mounted","normalizeFields","normalizeSortOrder","isFixedHeader","getScrollBarWidth","$nextTick","fireEvent","loadData","elem","$el","getElementsByClassName","addEventListener","handleScroll","destroyed","removeEventListener","version","useDetailRow","warn","countVisibleFields","field","visible","countTableData","displayEmptyDataRow","lessThanMinRows","blankRows","isApiMode","isDataMode","methods","inner","style","visibility","width","body","widthWithoutScrollbar","offsetWidth","overflow","widthWithScrollbar","horizontal","currentTarget","scrollLeft","header","title","setTitle","titleClass","dataClass","sortField","getObjectValue","fixHeader","str","isSpecialField","titleCase","getTitle","renderTitle","isInCurrentSortGroup","hasSortableIcon","sortIconOpacity","renderIconTag","sortIcon","renderSequence","from","renderNormalField","hasCallback","callCallback","fieldName","txt","substr","delimiter","notIn","arr","success","loadSuccess","failed","loadFailed","getAppendParams","getAllQueryParams","fetch","then","catch","callDataManager","response","scrollHeight","clientHeight","console","error","parentFunctionExists","$parent","callParentFunction","eventName","$emit","msg","params","getSortParam","getDefaultSortParam","direction","x","extractName","extractArgs","isSortable","currentSortOrderPosition","fieldIsInSortOrderPosition","event","multiColumnSort","singleColumnSort","clearSortOrder","sortClass","cls","shift","toggleCheckbox","dataItem","isChecked","checked","idColumn","selectId","unselectId","isSelectedRow","rowSelected","checkCheckboxesState","selector","els","querySelectorAll","cb","selected","el","indeterminate","toggleAllCheckboxes","gotoPreviousPage","gotoNextPage","last_page","gotoPage","isVisibleDetailRow","rowId","showDetailRow","hideDetailRow","toggleDetailRow","showField","hideField","toggleField","classes","renderIcon","makePagination","total","onRowClass","onRowChanged","onRowClicked","onRowDoubleClicked","onDetailRowClick","onCellClicked","onCellDoubleClicked","onCellRightClicked","changePage","reload","refresh","resetData","watch","newVal","oldVal","normalizeComponent","scriptExports","render","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","hook","_compiled","functional","_scopeId","$vnode","ssrContext","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","$root","$options","shadowRoot","_injectStyles","originalRender","h","existing","beforeCreate","_vm","_c","_self","staticClass","class","_l","fieldIndex","attrs","domProps","on","$event","_e","_v","_s","height","itemIndex","_t","mixins","wrapperClass","activeClass","disabledClass","pageClass","linkClass","paginationClass","paginationInfoClass","dropdownClass","icons","prev","onEachSide","totalPage","isOnFirstPage","current_page","isOnLastPage","notEnoughPages","windowSize","windowStart","loadPage","isCurrentPage","setPaginationData","itemLabels","singular","plural","paginationLabel","items","directives","rawName","expression","actionUrl","confirmationMessage","disabled","failMessage","successMessage","Craft","confirm","confirmDelete","handleClick","_this","_f","preventDefault","selectAll","checks","status","ajax","allowMultiple","enabled","ids","label","icon","button","buttonDisabled","tokenName","tokenValue","param","enableButton","disableButton","actionsList","_tmpActionsList","hasMultipleSelected","isMenuButtonInitialised","isMenuButton","ref","_g","menubtn","click","actList","ind","act","rowData","rowIndex","addDelimiter","listKeys","created","detail","showAsList","btnClass","href","buttonClass","isEnabled","linkHref","$","ownKeys","enumerableOnly","symbols","sym","getOwnPropertyDescriptor","_objectSpread2","_defineProperty","getOwnPropertyDescriptors","defineProperties","configurable","writable","_extends","_objectWithoutProperties","excluded","sourceKeys","_objectWithoutPropertiesLoose","sourceSymbolKeys","IE11OrLess","Edge","FireFox","Safari","IOS","ChromeForAndroid","captureMode","capture","passive","off","msMatchesSelector","webkitMatchesSelector","getParentOrHost","host","closest","ctx","includeCTX","_throttleTimeout","R_SPACE","toggleClass","state","classList","className","val","defaultView","getComputedStyle","currentStyle","matrix","selfOnly","appliedTransforms","matrixFn","DOMMatrix","WebKitCSSMatrix","CSSMatrix","MSCSSMatrix","tagName","getWindowScrollingElement","scrollingElement","documentElement","getRect","relativeToContainingBlock","relativeToNonStaticParent","undoScale","container","getBoundingClientRect","elRect","top","left","bottom","right","innerHeight","innerWidth","containerRect","elMatrix","scaleX","scaleY","isScrolledPast","elSide","parentSide","getParentAutoScrollElement","elSideVal","parentSideVal","getChild","childNum","includeDragEl","currentChild","display","Sortable","ghost","dragged","draggable","lastChild","lastElementChild","previousElementSibling","nodeName","getRelativeScrollOffset","offsetLeft","offsetTop","winScroller","scrollTop","includeSelf","gotSelf","clientWidth","scrollWidth","elemCSS","overflowX","overflowY","isRectEqual","rect1","rect2","ms","scrollBy","y","Polymer","jQuery","Zepto","dom","cloneNode","expando","getTime","plugins","initializeByDefault","PluginManager","mount","plugin","option","p","pluginName","pluginEvent","sortable","evt","eventCanceled","eventNameGlobal","initializePlugins","initialized","modified","modifyOption","getEventProperties","eventProperties","modifiedValue","optionListeners","_excluded","_ref","originalEvent","dragEl","parentEl","ghostEl","rootEl","nextEl","lastDownEl","cloneEl","cloneHidden","dragStarted","moved","putSortable","activeSortable","active","oldIndex","oldDraggableIndex","newIndex","newDraggableIndex","hideGhostForTarget","_hideGhostForTarget","unhideGhostForTarget","_unhideGhostForTarget","cloneNowHidden","cloneNowShown","dispatchSortableEvent","_dispatchEvent","info","targetEl","toEl","fromEl","extraEventProperties","onName","CustomEvent","createEvent","initEvent","bubbles","cancelable","to","pullMode","lastPutMode","allEventProperties","dispatchEvent","activeGroup","tapEvt","touchEvt","lastDx","lastDy","tapDistanceLeft","tapDistanceTop","lastTarget","lastDirection","targetMoveDistance","ghostRelativeParent","awaitingDragStarted","ignoreNextClick","sortables","pastFirstInvertThresh","isCircumstantialInvert","ghostRelativeParentInitialScroll","_silent","savedInputChecked","documentExists","PositionGhostAbsolutely","CSSFloatProperty","supportDraggable","supportCssPointerEvents","pointerEvents","_detectDirection","elCSS","elWidth","paddingLeft","paddingRight","borderLeftWidth","borderRightWidth","child1","child2","firstChildCSS","secondChildCSS","firstChildWidth","marginLeft","marginRight","secondChildWidth","flexDirection","gridTemplateColumns","touchingSideChild2","_prepareGroup","toFn","sameGroup","otherGroup","originalGroup","checkPull","checkPut","put","revertClone","stopPropagation","stopImmediatePropagation","nearestEmptyInsertDetectEvent","touches","nearest","clientX","clientY","threshold","emptyInsertThreshold","rect","insideHorizontally","insideVertically","ret","_onDragOver","_checkOutsideTargetEl","_isOutsideThisEl","animationCallbackId","animationStates","store","handle","swapThreshold","invertSwap","invertedSwapThreshold","removeCloneOnHide","ghostClass","chosenClass","dragClass","ignore","preventOnFilter","animation","easing","dataTransfer","textContent","dropBubble","dragoverBubble","dataIdAttr","delayOnTouchOnly","touchStartThreshold","devicePixelRatio","forceFallback","fallbackClass","fallbackOnBody","fallbackTolerance","fallbackOffset","supportPointer","nativeDraggable","_onTapStart","captureAnimationState","child","fromRect","thisAnimationDuration","childMatrix","f","addAnimationState","removeAnimationState","indexOfObject","animateAll","animating","animationTime","toRect","prevFromRect","prevToRect","animatingRect","targetMatrix","sqrt","pow","calculateRealTime","animate","animationResetTimer","currentRect","duration","translateX","translateY","animatingX","animatingY","forRepaintDummy","repaint","animated","_onMove","dragRect","targetRect","willInsertAfter","retVal","onMoveFn","onMove","draggedRect","related","relatedRect","_disableDraggable","_unsilent","_generateId","src","_nextTick","_cancelNextTick","contains","_getDirection","touch","pointerType","originalTarget","composedPath","inputs","idx","_saveInputCheckedState","isContentEditable","_prepareDragStart","dragStartFn","ownerDocument","nextSibling","_lastX","_lastY","_onDrop","_disableDelayedDragEvents","_triggerDragStart","_disableDelayedDrag","_delayedDragTouchMoveHandler","_dragStartTimer","abs","_onTouchMove","_onDragStart","selection","empty","getSelection","removeAllRanges","err","_dragStarted","fallback","_appendGhost","_nulling","_emulateDragOver","elementFromPoint","ghostMatrix","relativeScrollOffset","dx","dy","b","c","cssMatrix","removeAttribute","_hideClone","cloneId","_loopId","setInterval","effectAllowed","_dragStartId","revert","vertical","isOwner","canSort","fromSortable","completedFired","dragOverEvent","_ignoreWhileAnimating","completed","elLastChild","_ghostIsLast","changed","_ghostIsFirst","targetBeforeFirstSwap","sibling","differentLevel","differentRowCol","dragElS1Opp","dragElS2Opp","dragElOppLength","targetS1Opp","targetS2Opp","targetOppLength","_dragElInRowColumn","side1","scrolledPastTop","scrollBefore","isLastTarget","mouseOnAxis","targetLength","targetS1","targetS2","_getInsertDirection","_getSwapDirection","dragIndex","nextElementSibling","moveVector","extra","axis","insertion","_showClone","_offMoveEvents","_offUpEvents","clearInterval","save","handleEvent","dropEffect","_globalDragOver","order","getAttribute","useAnimation","destroy","utils","is","dst","nextTick","cancelNextTick","detectDirection","element","_len","_key","scrollEl","scrollRootEl","lastAutoScrollX","lastAutoScrollY","touchEvt$1","pointerElemChangedInterval","autoScrolls","scrolling","clearAutoScrolls","autoScroll","pid","clearPointerElemChangedInterval","isFallback","scroll","scrollCustomFn","sens","scrollSensitivity","speed","scrollSpeed","scrollThisInstance","scrollFn","layersOut","currentParent","canScrollX","canScrollY","scrollPosX","scrollPosY","vx","vy","layer","scrollOffsetY","scrollOffsetX","bubbleScroll","toSortable","changedTouches","onSpill","Revert","Remove","startIndex","dragStart","_ref2","_ref3","_ref4","parentSortable","AutoScroll","forceAutoScrollFallback","_handleAutoScroll","_handleFallbackAutoScroll","dragOverCompleted","dragOverBubble","nulling","ogElemScroller","newElem","components","AdminTableCopyTextButton","AdminTableActionButton","AdminTableCheckbox","AdminTableDeleteButton","AdminTablePagination","AdminTableButton","Vuetable","allowMultipleSelections","beforeDelete","buttons","checkboxes","checkboxStatus","columns","deleteAction","deleteCallback","deleteConfirmationMessage","deleteFailMessage","deleteSuccessMessage","emptyMessage","fullPage","fullPane","minItems","padded","reorderAction","reorderSuccessMessage","reorderFailMessage","searchPlaceholder","tableDataEndpoint","onLoaded","onLoading","onData","onPagination","onSelect","detailRow","dragging","isLoading","searchClearTitle","searchTerm","tableBodySelector","init","onSort","onStart","onEnd","loading","startReorder","endReorder","handleReorder","ev","startPosition","addCheck","removeCheck","handleSearch","handleSelectAll","handleDetailRow","deselectAll","onLoadSuccess","onPaginationData","onChangePage","handleOnSelectCallback","tableId","canDelete","canReorder","disabledCheckboxesCount","checkboxCount","searchPlaceholderText","showToolbar","tableCss","checkbox","$contentHeader","composing","hidden","tablepane","scopedSlots","_u","url","menu","showItems","_showDelete","VueAdminTable","Garnish","Base","setSettings","AdminTable","$mount","t"],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/admintable/dist/manifest.json b/src/web/assets/admintable/dist/manifest.json index c8682b87b29..376b8245b53 100644 --- a/src/web/assets/admintable/dist/manifest.json +++ b/src/web/assets/admintable/dist/manifest.json @@ -1 +1 @@ -{"app.css":"/css/app.css","app.js":"/js/app.js","app.js.map":"/js/app.js.map"} \ No newline at end of file +{"app.css":"/css/app.css","app.js":"/js/app.js","app.css.map":"/css/app.css.map","app.js.map":"/js/app.js.map"} \ No newline at end of file diff --git a/src/web/assets/cp/dist/css/cp.css b/src/web/assets/cp/dist/css/cp.css index 9a946435138..23e94ca4cef 100644 --- a/src/web/assets/cp/dist/css/cp.css +++ b/src/web/assets/cp/dist/css/cp.css @@ -1,2 +1,2 @@ -:root{--white:#fff;--black:#000;--gray-050:#f3f7fc;--gray-100:#e4edf6;--gray-200:#cdd8e4;--gray-300:#9aa5b1;--gray-350:#8b96a2;--gray-400:#7b8793;--gray-500:#606d7b;--gray-550:#596673;--gray-600:#515f6c;--gray-700:#3f4d5a;--gray-800:#33404d;--gray-900:#1f2933;--gray-1000:#131920;--blue-050:#e3f8ff;--blue-100:#b3ecff;--blue-200:#81defd;--blue-300:#5ed0fa;--blue-400:#40c3f7;--blue-500:#2bb0ed;--blue-600:#1992d4;--blue-700:#127fbf;--blue-800:#0b69a3;--blue-900:#035388;--cyan-050:#e0fcff;--cyan-100:#bef8fd;--cyan-200:#87eaf2;--cyan-300:#54d1db;--cyan-400:#38bec9;--cyan-500:#2cb1bc;--cyan-600:#14919b;--cyan-700:#0e7c86;--cyan-800:#0a6c74;--cyan-900:#044e54;--pink-050:#ffe3ec;--pink-100:#ffb8d2;--pink-200:#ff8cba;--pink-300:#f364a2;--pink-400:#e8368f;--pink-500:#da127d;--pink-600:#bc0a6f;--pink-700:#a30664;--pink-800:#870557;--pink-900:#620042;--red-050:#ffe3e3;--red-100:#ffbdbd;--red-200:#ff9b9b;--red-300:#f86a6a;--red-400:#ef4e4e;--red-500:#e12d39;--red-600:#cf1124;--red-700:#ab091e;--red-800:#8a041a;--red-900:#610316;--yellow-050:#fffbea;--yellow-100:#fff3c4;--yellow-200:#fce588;--yellow-300:#fadb5f;--yellow-400:#f7c948;--yellow-500:#f0b429;--yellow-600:#de911d;--yellow-700:#cb6e17;--yellow-750:#bd5a14;--yellow-800:#b44d12;--yellow-900:#8d2b0b;--teal-050:#effcf6;--teal-100:#c6f7e2;--teal-200:#8eedc7;--teal-300:#65d6ad;--teal-400:#3ebd93;--teal-500:#27ab83;--teal-550:#20a07b;--teal-600:#199473;--teal-700:#147d64;--teal-800:#0c6b58;--teal-900:#014d40}:root{--bg-color:$grey100;--bg-color-hsl:212deg,50%,93%;--primary-color:var(--red-500);--secondary-color:var(--gray-500);--input-color:#607d9f;--text-color:var(--gray-700);--medium-dark-text-color:var(--gray-550);--medium-text-color:var(--gray-550);--light-text-color:var(--gray-500);--link-color:#2563eb;--font-weight-bold:700;--menu-option-color:var(--text-color);--menu-option-active-color:var(--white);--menu-option-active-background-color:var(--gray-350);--hairline-color:rgba(51,64,77,.1);--medium-hairline-color:rgba(81,95,108,.25);--dark-hairline-color:rgba(123,135,147,.5);--light-focus-color:var(--blue-300);--medium-focus-color:var(--blue-500);--dark-focus-color:#0f74b1;--light-focus-ring:0 0 0 1px #5ed0fa,0 0 0 3px rgba(94,208,250,.7);--medium-focus-ring:0 0 0 1px #2bb0ed,0 0 0 3px rgba(43,176,237,.7);--dark-focus-ring:0 0 0 1px #0f74b1,0 0 0 3px rgba(15,116,177,.7);--light-sel-color:var(--gray-200);--dark-sel-color:var(--gray-600);--error-color:var(--red-600);--warning-color:var(--yellow-800);--success-color:var(--teal-700);--notice-color:var(--blue-800);--enabled-color:var(--teal-550);--pending-color:var(--yellow-700);--disabled-color:var(--red-600);--indicator-border-color:var(--yellow-700);--indicator-icon-color:var(--yellow-750);--small-border-radius:3px;--medium-border-radius:4px;--large-border-radius:5px;--menu-border-radius:var(--medium-border-radius);--checkbox-size:16px;--radio-size:16px}@font-face{font-family:Craft;font-style:normal;font-weight:400;src:url(../fonts/Craft.woff) format("woff"),url(../fonts/Craft.ttf) format("truetype"),url(../fonts/Craft.svg#Craft) format("svg")}:root{--ui-control-color:var(--gray-550);--ui-control-hover-color:var(--gray-600);--ui-control-active-color:var(--gray-700);--icon-opacity:0.8;--light-focus-hsl:196.1538461538deg,93.9759036145%,67.4509803922%;--medium-focus-hsl:198.8659793814deg,84.347826087%,54.9019607843%;--dark-focus-hsl:202.5925925926deg,84.375%,37.6470588235%;--focus-ring:0 0 0 1px hsl(var(--dark-focus-hsl)),0 0 0 3px hsla(var(--dark-focus-hsl),0.8);--inner-focus-ring:inset 0 0 0 1px hsl(var(--dark-focus-hsl)),inset 0 0 0 3px hsla(var(--dark-focus-hsl),0.7);--touch-target-size:24px}body,html{background-color:var(--gray-100);box-shadow:var(--light-focus-ring)}body{-webkit-font-smoothing:subpixel-antialiased;color:var(--text-color);font-size:.875rem;line-height:1.42;overflow-x:hidden;width:100vw}body.rtl{direction:rtl}body,input,select,textarea{font-family:system-ui,BlinkMacSystemFont,-apple-system,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.buttons:first-child,.condition-container:first-child,.field:first-child,.first,.grid:first-child,.pane:first-child,.toolbar:first-child,blockquote:first-child,fieldset:first-child,h1:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child,h6:first-child,hr:first-child,p:first-child{margin-top:0!important}.buttons:last-child,.condition-container:last-child,.field:last-child,.grid:last-child,.last,.meta:last-child,.pane:last-child,.toolbar:last-child,blockquote:last-child,fieldset:last-child,h1:last-child,h2:last-child,h3:last-child,h4:last-child,h5:last-child,h6:last-child,p:last-child{margin-bottom:0!important}.no-scroll{overflow:hidden!important}.draghelper{box-sizing:border-box}img{max-width:100%}body.rtl .ltr .text,body.rtl .ltr table.editable textarea{direction:ltr!important;text-align:left!important}body.ltr .rtl .text,body.ltr .rtl table.editable textarea{direction:rtl!important;text-align:right!important}#help:before,.element:before,.go:after,.icon:before,.insecure:before,.menu .flex.padded.sel:before,.menu ul.padded li a.sel:before,.preview-btn:before,.required:after,.secure:before,.texticon:before,.view-btn:before,[data-icon-after]:after,[data-icon]:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}.badge-icon{-webkit-align-items:center;align-items:center;border:1px solid var(--indicator-border-color);border-radius:var(--small-border-radius);box-sizing:border-box;color:var(--indicator-icon-color);display:-webkit-inline-flex;display:inline-flex;font-size:9px;height:17px;-webkit-justify-content:center;justify-content:center;width:17px}.insecure:before,.secure:before{font-size:14px;margin-top:-3px}[data-icon]:before{content:attr(data-icon)}[data-icon-after]:after{content:attr(data-icon-after)}body.rtl [data-icon-after=list]:after,body.rtl [data-icon=list]:before{content:"listrtl"}body.rtl [data-icon-after=structure]:after,body.rtl [data-icon=structure]:before{content:"structurertl"}.icon.secure:before{content:"secure"}.icon.insecure:before{content:"insecure"}.icon.add:before{content:"plus"}.icon.edit:before{content:"edit"}.icon.settings:before{content:"settings"}.icon.search:before{content:"search"}.icon.expand:before{content:"expand"}.icon.collapse:before{content:"collapse"}.help:before{color:var(--pink-400);content:"help"}body.ltr .preview-btn:before,body.ltr .view-btn:before{margin-right:var(--xs)}body.rtl .preview-btn:before,body.rtl .view-btn:before{margin-left:var(--xs)}.preview-btn:before{content:"view";margin-top:-2px}body.ltr .view-btn:before{content:"share"}body.rtl .view-btn:before{content:"shareleft"}.h1,h1{font-size:18px;font-weight:700;line-height:1.2;margin-bottom:24px}.h2,h2{font-size:16px}.h2,.h3,.h4,h2,h3,h4{font-weight:700;line-height:1.2;margin:14px 0}.h4,h4{color:var(--medium-text-color)}.h5,h5{color:var(--medium-text-color)}.h5,.h6,h5,h6{line-height:1.2;margin:14px 0 3px}.h6,h6{color:#606d7b;font-size:11px;text-transform:uppercase}body.ltr h1[data-icon]:before{margin:-8px 10px 0 0}body.rtl h1[data-icon]:before{margin:-8px 0 0 10px}h2[data-icon]:before{font-size:19px}body.ltr h2[data-icon]:before{margin:-4px 6px 0 0}body.rtl h2[data-icon]:before{margin:-4px 0 0 6px}hr{border:none;border-top:1px solid var(--hairline-color);color:transparent;height:0;margin:24px 0}.pane hr{margin:24px -24px}p{margin:1em 0}h5+p{margin-top:0}sup{vertical-align:super}sub,sup{font-size:smaller}sub{vertical-align:sub}body.ltr .indent{margin-left:14px}body.rtl .indent{margin-right:14px}.bullets{list-style-type:square}body.ltr .bullets{padding-left:40px}body.rtl .bullets{padding-right:40px}ol{list-style-type:decimal}body.ltr ol{padding-left:40px}body.rtl ol{padding-right:40px}.code,.code input,.code textarea,code{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:.9em!important}.code input.smalltext,.code textarea.smalltext,.code.smalltext,code.smalltext{font-size:.8em!important}pre code{display:block;overflow-x:auto}a{color:var(--link-color);cursor:pointer}a:hover,body.underline-links a{text-decoration:underline}a.sel,li.sel a{cursor:default!important;text-decoration:none}.go:after{color:var(--link-color);font-size:11px;margin-top:-1px;opacity:.9}body.ltr .go:after{padding-left:4px}body.rtl .go:after{padding-right:4px}body.ltr .go:after{content:"circlerarr"}body.rtl .go:after{content:"circlelarr"}button{cursor:pointer}.context-btn.disabled{background-color:rgba(205,216,228,.5)!important;color:var(--medium-dark-text-color);opacity:1}.alert-icon,.checkmark-icon{border-radius:20px;cursor:pointer;line-height:10px;margin-bottom:0!important;padding:5px}.alert-icon:before,.checkmark-icon:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}.checkmark-icon{background-color:var(--gray-200)}p .checkmark-icon{display:inline-block}.checkmark-icon:before{color:var(--success-color);content:"check"}.alert-icon{background-color:var(--gray-200)}.alert-icon:before{color:var(--error-color);content:"alert"}.menu.revision-menu{padding:10px 24px}.menu.revision-menu hr{margin:10px -24px}.menu.revision-menu ul li.sel{background:var(--gray-050);border-radius:var(--large-border-radius);margin:0 -14px;padding:0 14px}.menu.revision-menu ul li.sel .edited-desc{-webkit-align-items:center;align-items:center;border-top:1px solid var(--hairline-color);color:var(--light-text-color);display:-webkit-flex;display:flex;padding:10px 0;white-space:normal}body.ltr .menu.revision-menu ul li.sel .edited-desc{margin-left:10px}body.rtl .menu.revision-menu ul li.sel .edited-desc{margin-right:10px}.menu.revision-menu ul li.sel .edited-desc p{margin:0}body.ltr .menu.revision-menu ul li.sel .edited-desc .btn{margin-left:14px}body.rtl .menu.revision-menu ul li.sel .edited-desc .btn{margin-right:14px}.menu.revision-menu ul li a{border-radius:var(--large-border-radius);padding-top:7px}.menu.revision-menu .extralight{margin-top:2px}.revision-status-hud{max-width:400px}.revision-status-hud .http-error{background-color:var(--gray-050);border:1px solid var(--hairline-color);border-radius:var(--medium-border-radius);color:var(--light-text-color);padding:7px 14px}.draft-notice{-webkit-align-content:stretch;align-content:stretch;-webkit-align-items:center;align-items:center;color:var(--blue-800);display:-webkit-flex;display:flex;gap:var(--s);-webkit-justify-content:center;justify-content:center}#content-notice .draft-notice{display:-webkit-inline-flex;display:inline-flex;-webkit-justify-content:flex-start;justify-content:flex-start}body.ltr .so-notice>.draft-notice{margin:calc(var(--s)*-1) 0 calc(var(--s)*-1) calc(var(--xl)*-1)}body.rtl .so-notice>.draft-notice{margin:calc(var(--s)*-1) calc(var(--xl)*-1) calc(var(--s)*-1) 0}body.ltr .so-notice>.draft-notice{padding:var(--s) 0 var(--s) var(--xl)}body.rtl .so-notice>.draft-notice{padding:var(--s) var(--xl) var(--s) 0}body.ltr .so-notice>.draft-notice{border-bottom-left-radius:var(--large-border-radius)}body.rtl .so-notice>.draft-notice{border-bottom-right-radius:var(--large-border-radius)}body.ltr .so-notice>.draft-notice{background-image:-o-linear-gradient(top left,rgba(25,146,212,.2),rgba(25,146,212,0) 50%);background-image:linear-gradient(to bottom right,rgba(25,146,212,.2),rgba(25,146,212,0) 50%)}body.rtl .so-notice>.draft-notice{background-image:-o-linear-gradient(right,rgba(25,146,212,.2),rgba(25,146,212,0));background-image:linear-gradient(270deg,rgba(25,146,212,.2),rgba(25,146,212,0))}.draft-notice p{-webkit-flex:1;flex:1;margin:0}.draft-notice .draft-icon{-webkit-align-items:center;align-items:center;border:2px solid rgba(11,105,163,.2);border-radius:100%;box-shadow:0 1px 1px 1px var(--white);box-sizing:border-box;display:-webkit-flex;display:flex;-webkit-flex-shrink:0;flex-shrink:0;height:34px;-webkit-justify-content:center;justify-content:center;position:relative;width:34px}.draft-notice .draft-icon:before{color:var(--blue-800)!important;font-size:18px;left:1px;position:relative}.draft-notice .draft-icon:after{border-radius:100%;bottom:-2px;box-shadow:inset 0 2px 0 rgba(3,83,136,.2);content:"";font-size:0;left:-2px;position:absolute;right:-2px;top:-2px}.draft-notice .discard-changes-btn{background-color:transparent!important;border:2px solid var(--blue-600);color:var(--blue-800)!important}body.ltr .draft-notice .discard-changes-btn{margin-left:var(--xs)}body.rtl .draft-notice .discard-changes-btn{margin-right:var(--xs)}.draft-notice .discard-changes-btn:focus,.draft-notice .discard-changes-btn:hover{border-color:#1682bd}.draft-notice .discard-changes-btn:active{border-color:#1473a6}button.toggle{-webkit-appearance:none;appearance:none;background:none;border:none;color:inherit;padding:0}.toggle:before,a.fieldtoggle:before{border:solid;border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;transition:-webkit-transform .1s linear;-o-transition:-o-transform .1s linear;transition:transform .1s linear;transition:transform .1s linear,-webkit-transform .1s linear,-o-transform .1s linear;width:7px}body.ltr .toggle:before,body.ltr a.fieldtoggle:before{-webkit-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}body.rtl .toggle:before,body.rtl a.fieldtoggle:before{-webkit-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg)}.sidebar nav li.expanded>.toggle:before,.structure li:not(.collapsed)>.row>.toggle:before,.toggle.expanded:before,a.fieldtoggle.expanded:before{-webkit-transform:rotate(45deg)!important;-o-transform:rotate(45deg)!important;transform:rotate(45deg)!important}a.fieldtoggle{color:var(--text-color);display:block;margin:14px 0;position:relative;text-decoration:none}body.ltr a.fieldtoggle{padding-left:12px}body.rtl a.fieldtoggle{padding-right:12px}a.fieldtoggle:before{display:block;position:absolute;top:7px}body.ltr a.fieldtoggle:before{left:-1px}body.rtl a.fieldtoggle:before{right:-1px}em,i{font-style:italic}b,i em,strong{font-weight:700}.readable{font-size:16px;line-height:22px}.readable .h1,.readable .h2,.readable .h3,.readable .h4,.readable .h5,.readable .h6,.readable h1,.readable h2,.readable h3,.readable h4,.readable h5,.readable h6{font-weight:600;margin:24px 0 16px}.readable .h1,.readable h1{color:#000;font-size:32px;line-height:40px}.readable .h2,.readable h2{font-size:24px;line-height:30px}.readable .h3,.readable h3{font-size:20px;line-height:24px}.readable .h4,.readable h4{font-size:16px;line-height:20px}.readable .h5,.readable h5{font-size:14px;line-height:18px}.readable .h6,.readable h6{color:#596673;font-size:13.6px;line-height:17px}.readable ol,.readable ul{margin:1em 0}body.ltr .readable ol,body.ltr .readable ul{padding-left:2em}body.rtl .readable ol,body.rtl .readable ul{padding-right:2em}.readable ul li{list-style-type:disc}.readable li+li{margin-top:.25em}.readable .tip-dismiss-btn{position:absolute;top:12px}body.ltr .readable .tip-dismiss-btn{right:12px}body.rtl .readable .tip-dismiss-btn{left:12px}.readable .tip-dismiss-btn+p{margin-top:0}.readable blockquote{margin:16px 0}.readable blockquote:not(.note){color:#596673;padding:0 16px}body.ltr .readable blockquote:not(.note){border-left:4px solid rgba(51,64,77,.1)}body.rtl .readable blockquote:not(.note){border-right:4px solid rgba(51,64,77,.1)}.readable blockquote.note{border:1px solid;border-radius:4px;padding:1em;position:relative}body.ltr .readable blockquote.note{padding-left:50px}body.rtl .readable blockquote.note{padding-right:50px}body.ltr .readable blockquote.note.dismissible{padding-right:36px}body.rtl .readable blockquote.note.dismissible{padding-left:36px}.readable blockquote.note:not(.tip):not(.warning){border-color:#cf1124;color:#bf503f}.readable blockquote.note:not(.tip):not(.warning):before{color:#cf1124;content:"alert"}.readable blockquote.note.tip{border-color:#2563eb;color:#2563eb}.readable blockquote.note.tip:before{color:#2563eb;content:"lightbulb"}.readable blockquote.note.warning{border-color:#b44d12;color:#cf783a}.readable blockquote.note.warning:before{color:#b44d12;content:"alert"}.readable blockquote.note:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;direction:ltr;display:inline-block;font-family:Craft;font-size:24px;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);opacity:1;position:absolute;text-align:center;text-rendering:optimizeLegibility;text-transform:none;top:15px;-webkit-user-select:none;user-select:none;vertical-align:middle;width:24px}body.ltr .readable blockquote.note:before{left:16px}body.rtl .readable blockquote.note:before{right:16px}.readable blockquote.note a[href]{color:currentColor;text-decoration:underline}body.ltr .leftalign{text-align:left}body.rtl .leftalign{text-align:right}.topalign{vertical-align:top}body.ltr .rightalign{text-align:right}body.rtl .rightalign{text-align:left}.centeralign{text-align:center!important}.nowrap{white-space:nowrap}.break-word{word-wrap:break-word}.light{color:var(--medium-text-color)!important;font-weight:400}.extralight{color:var(--light-text-color)!important}.smalltext{font-size:12px;line-height:1.2}.largetext{font-size:16px;line-height:1.2}.zilch{color:var(--light-text-color);font-size:20px;line-height:24px;padding:100px 0;text-align:center}.zilch.small{font-size:16px;padding:24px 0}input.checkbox+label.smalltext{padding-top:2px}.required:after{color:var(--error-color);content:"asterisk";font-size:7px}body.ltr .required:after{margin:-2px 0 0 5px}body.rtl .required:after{margin:-2px 5px 0 0}.scrollpane{overflow:auto}body.ltr .left{float:left}body.ltr .right,body.rtl .left{float:right}body.rtl .right{float:left}td,th{vertical-align:middle}body.ltr td,body.ltr th{text-align:left}body.ltr table[dir=rtl] td,body.ltr table[dir=rtl] th,body.rtl td,body.rtl th{text-align:right}body.rtl table[dir=ltr] td,body.rtl table[dir=ltr] th{text-align:left}td.right,th.right{float:none}body.ltr td.right,body.ltr th.right{text-align:right}body.rtl td.right,body.rtl th.right{text-align:left}.clear{clear:both;display:block;height:0}.fullwidth{width:100%}.token{background-color:#e4edf6;border-radius:3px;color:#3f4d5a;display:inline-block;font-size:12px;line-height:14px;padding:3px 7px}.token[data-name="*"]{position:relative;width:10px}.token[data-name="*"] span{opacity:0}.token[data-name="*"]:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;content:"asterisk";direction:ltr;display:inline-block;display:block;font-family:Craft;font-size:9px;font-style:normal;font-variant:normal;font-weight:400;left:0;line-height:1;line-height:17px;opacity:var(--icon-opacity);position:absolute;text-align:center;text-indent:0;text-rendering:optimizeLegibility;text-transform:none;top:0;-webkit-user-select:none;user-select:none;vertical-align:middle;width:100%}.token:focus{background-color:#cdd8e4}.highlight .token{background:transparent;border:none;border-radius:0;box-shadow:none;display:inline;font-size:inherit;line-height:inherit;padding:0;text-shadow:none}.pane.highlight pre[class*=language-]{overflow:visible}.pane.highlight pre[class*=language-]>code.diff-highlight .token:not(.prefix){margin:0 -24px;padding:0 24px}.success{color:var(--success-color)!important}.notice .icon:before,.notice.with-icon:before,.warning .icon:before,.warning.with-icon:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle;width:1em}body.ltr .notice .icon:before,body.ltr .notice.with-icon:before,body.ltr .warning .icon:before,body.ltr .warning.with-icon:before{margin:-2px 2px 0 0}body.rtl .notice .icon:before,body.rtl .notice.with-icon:before,body.rtl .warning .icon:before,body.rtl .warning.with-icon:before{margin:-2px 0 0 2px}.notice.has-icon,.warning.has-icon{-webkit-align-items:flex-start;align-items:flex-start;display:-webkit-flex;display:flex;-webkit-flex-wrap:nowrap;flex-wrap:nowrap}.notice.has-icon .icon,.warning.has-icon .icon{-webkit-flex-shrink:1;flex-shrink:1}.notice{color:var(--notice-color)!important}.notice a{text-decoration:underline}.notice .icon:before,.notice.with-icon:before{content:"lightbulb"}.warning{color:var(--warning-color)!important}.warning .icon:before,.warning.with-icon:before{content:"alert"}.error{color:var(--error-color)!important}.icon.move{display:inline-block}.icon.move:not(.disabled){cursor:move}.icon.move:before{color:var(--ui-control-color);content:"move"}.icon.move:not(.disabled):hover:before{color:var(--link-color)}.icon.delete{display:inline-block;line-height:inherit}.icon.delete:before{color:var(--ui-control-color);content:"remove"}.icon.delete:not(.disabled){cursor:pointer}.icon.delete:not(.disabled):hover:before{color:var(--disabled-color)}.icon.delete:not(.disabled):active:before{color:var(--red-800)}.hidden{display:none!important}.visually-hidden{clip:rect(0,0,0,0);border:0;height:1px;margin:0;overflow:hidden;padding:0;position:absolute;width:1px}.invisible{visibility:hidden}.clearafter:after{clear:both;content:"";display:block;height:0;visibility:hidden}.info{cursor:pointer;height:1.375em;overflow:hidden;vertical-align:bottom;width:1em}.info,.info:before{display:inline-block;text-align:center}.info:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;color:var(--ui-control-color);direction:ltr;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;line-height:1.375;opacity:var(--icon-opacity);text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle;vertical-align:baseline;width:100%}.info:not(.warning):before{content:"info"}.info:not(.warning):hover:before{color:var(--link-color)}.info.warning:before{content:"alert"}.info.warning:hover:before{color:var(--warning-color)}.info-hud table{max-width:280px;table-layout:auto}.info-hud td{word-wrap:break-word;width:100%}@media(max-width:450px){.info-hud table{table-layout:fixed;width:100%}}.content{position:relative}.content:after{clear:both;content:"";display:block;height:0;visibility:hidden}.customize-sources-modal{overflow:visible!important}body.ltr .customize-sources-modal{padding-left:200px}body.rtl .customize-sources-modal{padding-right:200px}.customize-sources-modal>.cs-sidebar{background-color:var(--gray-050);border:none;box-shadow:inset -1px 0 0 var(--hairline-color);box-sizing:border-box;height:calc(100% - 50px);margin:0;overflow:auto;padding:10px 0;position:absolute;top:0;width:200px}body.ltr .customize-sources-modal>.cs-sidebar{left:0}body.rtl .customize-sources-modal>.cs-sidebar{right:0}body.ltr .customize-sources-modal>.cs-sidebar{border-top-left-radius:var(--large-border-radius)}body.rtl .customize-sources-modal>.cs-sidebar{border-top-right-radius:var(--large-border-radius)}.customize-sources-modal>.cs-sidebar>.btn{display:block;width:calc(100% - 28px)}body.ltr .customize-sources-modal>.cs-sidebar>.btn{margin:10px 0 0 14px}body.rtl .customize-sources-modal>.cs-sidebar>.btn{margin:10px 14px 0 0}body.ltr .customize-sources-modal.sidebar-hidden{padding-left:0}body.rtl .customize-sources-modal.sidebar-hidden{padding-right:0}.customize-sources-modal.sidebar-hidden>.cs-sidebar{display:none}.customize-sources-modal>.source-settings{box-sizing:border-box;height:calc(100% - 50px);overflow:auto;padding:24px;position:relative}.customize-sources-modal>.footer{bottom:0;left:0;position:absolute;width:100%}.customize-sources-item{--selected-item-color:var(--white);-webkit-align-items:center;align-items:center;background-color:var(--gray-100);border:solid var(--hairline-color);border-width:1px 0;box-sizing:border-box;cursor:default;display:-webkit-flex;display:flex;margin-top:-1px;position:relative;-webkit-user-select:none;user-select:none;width:calc(100% - 1px)}.customize-sources-item+.customize-sources-item.heading{margin-top:10px}.customize-sources-item+.customize-sources-item:not(.heading){border-top:1px solid var(--hairline-color)}.customize-sources-item.sel{--focus-ring:0 0 0 1px hsl(var(--light-focus-hsl)),0 0 0 3px hsla(var(--light-focus-hsl),0.7);--ui-control-color:var(--selected-item-color);background-color:var(--dark-sel-color);color:var(--selected-item-color);z-index:1}.customize-sources-item .label{-webkit-flex:1;flex:1}.customize-sources-item.heading .label{color:var(--light-text-color);font-size:12px;font-weight:700;text-transform:uppercase}.customize-sources-item.heading.sel .label{color:var(--selected-item-color)}.customize-sources-item__move{-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;position:absolute;top:50%;-webkit-transform:translate(-50%,-50%);-o-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}body.ltr .customize-sources-item__move{right:0}body.rtl .customize-sources-item__move{left:0}.customize-sources-item__move.icon{display:-webkit-flex;display:flex;text-decoration:none}.customize-sources-item__btn{margin:3px;padding:8px 14px}body.ltr .customize-sources-item__btn{padding-right:30px}body.rtl .customize-sources-item__btn{padding-left:30px}body.ltr .customize-sources-table-column .move{margin-right:10px}body.rtl .customize-sources-table-column .move{margin-left:10px}ul.path{-webkit-align-items:stretch;align-items:stretch;display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;-webkit-flex-wrap:wrap;flex-wrap:wrap}ul.path li{-webkit-align-items:center;align-items:center;display:-webkit-inline-flex;display:inline-flex}ul.path li:not(:last-child):after{border:solid var(--light-text-color);border-width:0 1px 1px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;width:7px}body.ltr ul.path li:not(:last-child):after{margin:0 5px 0 2px}body.rtl ul.path li:not(:last-child):after{margin:0 2px 0 5px}body.ltr ul.path li:not(:last-child):after{-webkit-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}body.rtl ul.path li:not(:last-child):after{-webkit-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg)}ul.icons{display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;margin-top:20px}ul.icons li{margin:0 4px 10px 0}ul.icons li a{border:1px solid var(--white);border-radius:4px;color:var(--text-color);display:block;padding:60px 5px 10px;position:relative;text-align:center;width:110px}ul.icons li a:before{display:block;font-size:40px;left:0;line-height:60px;position:absolute;top:0;width:100%}ul.icons li a .icon img,ul.icons li a .icon svg{height:40px;left:calc(50% - 20px);position:absolute;top:12px;width:40px}ul.icons li a .icon.icon-mask svg circle,ul.icons li a .icon.icon-mask svg ellipse,ul.icons li a .icon.icon-mask svg line,ul.icons li a .icon.icon-mask svg path,ul.icons li a .icon.icon-mask svg polygon,ul.icons li a .icon.icon-mask svg polyline,ul.icons li a .icon.icon-mask svg rect,ul.icons li a .icon.icon-mask svg text{fill:var(--text-color);stroke-width:0}ul.icons li a:hover{background-color:var(--gray-050);border-color:var(--gray-100);text-decoration:none}ul.icons li a:hover .icon.icon-mask svg circle,ul.icons li a:hover .icon.icon-mask svg ellipse,ul.icons li a:hover .icon.icon-mask svg line,ul.icons li a:hover .icon.icon-mask svg path,ul.icons li a:hover .icon.icon-mask svg polygon,ul.icons li a:hover .icon.icon-mask svg polyline,ul.icons li a:hover .icon.icon-mask svg rect,ul.icons li a:hover .icon.icon-mask svg text{fill:var(--link-color);stroke-width:0}@media only screen and (max-width:380px){ul.icons li a{width:96px}}@media only screen and (max-width:320px){ul.icons li a{width:75px}}.toolbar{margin-bottom:14px;min-height:34px;position:relative}.toolbar .flex,.toolbar.flex{-webkit-align-items:flex-start;align-items:flex-start}.toolbar .text{border-radius:var(--large-border-radius)!important;box-shadow:none!important}.flex{-webkit-align-content:stretch;align-content:stretch;-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;gap:var(--s)}.flex:not(.flex-nowrap){-webkit-flex-wrap:wrap;flex-wrap:wrap}.flex>.label{white-space:nowrap}.centeralign .flex{-webkit-justify-content:center;justify-content:center}.inline-flex{-webkit-align-content:stretch;align-content:stretch;-webkit-align-items:center;align-items:center;display:-webkit-inline-flex;display:inline-flex;gap:var(--s)}.gap-xs{gap:var(--xs)}.gap-s{gap:var(--s)}.gap-m{gap:var(--m)}.gap-l{gap:var(--l)}.gap-xl{gap:var(--xl)}.flex-grow{-webkit-flex:1;flex:1}.flex-justify{-webkit-justify-content:space-between;justify-content:space-between}.flex-justify-start{-webkit-justify-content:flex-start;justify-content:flex-start}.flex-justify-end{-webkit-justify-content:flex-end;justify-content:flex-end}.flex-justify-center{-webkit-justify-content:center;justify-content:center}.flex-start{-webkit-align-items:flex-start;align-items:flex-start}.flex-end{-webkit-align-items:flex-end;align-items:flex-end}.flex-center{-webkit-align-items:center;align-items:center}.flex-stretch{-webkit-align-items:stretch;align-items:stretch}.spacer{width:14px}.buttons{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;gap:7px;margin:24px 0;position:relative}.footer>.buttons,.hud-footer>.buttons{margin:0}.btn{-webkit-align-items:center;align-items:center;-webkit-appearance:none;appearance:none;background-color:rgba(96,125,159,.25);border:none;border-radius:var(--large-border-radius);box-sizing:border-box;color:currentColor;cursor:pointer;display:-webkit-inline-flex;display:inline-flex;font-size:inherit;-webkit-justify-content:center;justify-content:center;padding:7px 14px;position:relative;text-align:center;-webkit-user-select:none;user-select:none;white-space:nowrap}.btn.chromeless{height:auto;padding:0}.btn.chromeless,.btn.chromeless:active,.btn.chromeless:focus,.btn.chromeless:hover{background-color:transparent}.btn.chromeless:active,.btn.chromeless:hover{text-decoration:underline}.btn.wrap{height:auto;min-height:34px;text-align:left;white-space:normal}.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]).focus,.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]):focus,.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]):hover{background-color:rgba(96,125,159,.3)}.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]).active,.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]):active{background-color:rgba(96,125,159,.4)}.btn[type=color]{padding:6px!important;width:36px}.btn.active,.btn.loading{cursor:default}.btn:hover{text-decoration:none}body.ltr .btn.icon:not(:empty):not(.btn-empty):before,body.ltr .btn.menubtn.icon.btn-empty:before,body.ltr .btn.menubtn.icon:empty:before,body.ltr .btn.menubtn[data-icon].btn-empty:before,body.ltr .btn.menubtn[data-icon]:empty:before,body.ltr .btn[data-icon]:not(:empty):not(.btn-empty):before{margin-right:5px}body.rtl .btn.icon:not(:empty):not(.btn-empty):before,body.rtl .btn.menubtn.icon.btn-empty:before,body.rtl .btn.menubtn.icon:empty:before,body.rtl .btn.menubtn[data-icon].btn-empty:before,body.rtl .btn.menubtn[data-icon]:empty:before,body.rtl .btn[data-icon]:not(:empty):not(.btn-empty):before{margin-left:5px}.btn:not(.loading) .spinner{display:none}.btn.loading .label,.btn.loading:after,.btn.loading:before{visibility:hidden}.btn div.checkbox{margin-top:2px}.disabled{opacity:.25}.disabled,.disabled .btn{cursor:default}.btn,.spinner{height:34px}body.ltr .btn[data-icon-after]:not(:empty):not(.btn-empty):after,body.ltr .menu-toggle:not(:empty):not(.btn-empty):after,body.ltr .menubtn.icon:after,body.ltr .menubtn:not(:empty):not(.btn-empty):after{margin-left:6px}body.rtl .btn[data-icon-after]:not(:empty):not(.btn-empty):after,body.rtl .menu-toggle:not(:empty):not(.btn-empty):after,body.rtl .menubtn.icon:after,body.rtl .menubtn:not(:empty):not(.btn-empty):after{margin-right:6px}.btn.icon:before,.btn[data-icon-after]:after,.btn[data-icon]:before{position:relative}.btn.icon.small:before,.btn.small[data-icon-after]:after,.btn.small[data-icon]:before{font-size:10px}.btngroup{-webkit-align-items:center;align-items:center;border-radius:var(--large-border-radius);display:-webkit-flex;display:flex;position:relative;white-space:nowrap;z-index:1}.btngroup.fullwidth .btn{-webkit-flex:1;flex:1}.btngroup.disabled .btn{cursor:default}.btngroup .btn:focus{z-index:1}body.ltr .btngroup .btn:not(.dashed):not(:last-child):not(.btngroup-btn-last){margin-right:1px}body.rtl .btngroup .btn:not(.dashed):not(:last-child):not(.btngroup-btn-last){margin-left:1px}body.ltr .btngroup .btn:not(:first-child):not(.btngroup-btn-first){border-bottom-left-radius:0;border-top-left-radius:0}body.ltr .btngroup .btn:not(:last-child):not(.btngroup-btn-last){border-bottom-right-radius:0;border-top-right-radius:0}body.rtl .btngroup .btn:not(:first-child):not(.btngroup-btn-first){border-bottom-right-radius:0;border-top-right-radius:0}body.rtl .btngroup .btn:not(:last-child):not(.btngroup-btn-last){border-bottom-left-radius:0;border-top-left-radius:0}.btngroup--exclusive .btn[aria-pressed=true]:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]){background-color:var(--gray-500);color:var(--white)}.copytext{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;position:relative;white-space:nowrap;z-index:1}body.ltr .copytext .text{border-bottom-right-radius:0;border-top-right-radius:0;min-width:0}body.ltr .copytext .btn,body.rtl .copytext .text{border-bottom-left-radius:0;border-top-left-radius:0}body.rtl .copytext .btn{border-bottom-right-radius:0;border-top-right-radius:0}.copytextbtn{-webkit-align-items:center;align-items:center;border:1px solid var(--hairline-color);border-radius:var(--small-border-radius);display:-webkit-inline-flex;display:inline-flex;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;padding:0 9px}.copytextbtn,.copytextbtn input{color:var(--medium-text-color);cursor:pointer}.copytextbtn input{background-color:transparent;border:none;box-shadow:none;height:32px;padding:0;text-align:center}.copytextbtn span{background:none;color:var(--light-text-color);margin-top:-3px;padding:0;width:13px}body.ltr .copytextbtn span{margin-left:5px}body.rtl .copytextbtn span{margin-right:5px}.copytextbtn:focus,.copytextbtn:hover{border-color:var(--medium-hairline-color);color:var(--text-color)}.copytextbtn:focus input,.copytextbtn:hover input{color:var(--text-color)}.copytextbtn.small{padding:0 5px}.copytextbtn.small input{font-size:11px!important;height:20px}.menu-toggle,.menubtn{-webkit-align-items:center;align-items:center;display:-webkit-inline-flex;display:inline-flex;-webkit-user-select:none;user-select:none}.menu-toggle:after,.menubtn:after{border:solid;border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;position:relative;-webkit-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg);width:7px}.menu-toggle.btn:after,.menubtn.btn:after{top:-1px}.menu-toggle.btn:not(.disabled):not(.inactive).active:after,.menu-toggle.btn:not(.disabled):not(.inactive):active:after,.menubtn.btn:not(.disabled):not(.inactive).active:after,.menubtn.btn:not(.disabled):not(.inactive):active:after{border-color:var(--ui-control-active-color)}.menu-toggle.btn.submit:after,.menubtn.btn.submit:after{border-color:var(--white)!important;opacity:.8}.menu-toggle.btn.submit:not(.disabled):not(.inactive).active:after,.menu-toggle.btn.submit:not(.disabled):not(.inactive).hover:after,.menu-toggle.btn.submit:not(.disabled):not(.inactive):active:after,.menu-toggle.btn.submit:not(.disabled):not(.inactive):hover:after,.menubtn.btn.submit:not(.disabled):not(.inactive).active:after,.menubtn.btn.submit:not(.disabled):not(.inactive).hover:after,.menubtn.btn.submit:not(.disabled):not(.inactive):active:after,.menubtn.btn.submit:not(.disabled):not(.inactive):hover:after{opacity:1}.menu-toggle:not(.btn):not(.icon),.menubtn:not(.btn):not(.icon){height:17px}.menu-toggle:not(.btn):not(.icon):after,.menubtn:not(.btn):not(.icon):after{border-color:var(--link-color);top:-2px}body.ltr .menu-toggle.btn-empty,body.ltr .menu-toggle:empty,body.ltr .menubtn.btn-empty,body.ltr .menubtn:empty{padding-left:8px}body.rtl .menu-toggle.btn-empty,body.rtl .menu-toggle:empty,body.rtl .menubtn.btn-empty,body.rtl .menubtn:empty{padding-right:8px}body.ltr .menu-toggle.btn-empty,body.ltr .menu-toggle:empty,body.ltr .menubtn.btn-empty,body.ltr .menubtn:empty{padding-right:8px}body.rtl .menu-toggle.btn-empty,body.rtl .menu-toggle:empty,body.rtl .menubtn.btn-empty,body.rtl .menubtn:empty{padding-left:8px}@-webkit-keyframes rotator{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-o-keyframes rotator{0%{-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);-o-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes rotator{0%{-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);-o-transform:rotate(1turn);transform:rotate(1turn)}}.spinner{-webkit-align-items:center;align-items:center;display:-webkit-inline-flex;display:inline-flex;height:var(--size,34px);-webkit-justify-content:center;justify-content:center;width:var(--size,24px)}.spinner:before{-webkit-animation:rotator .7s linear infinite;-o-animation:rotator .7s linear infinite;animation:rotator .7s linear infinite;border-color:transparent currentcolor currentcolor transparent;border-radius:50%;border-style:solid;border-width:2px;box-sizing:border-box;content:"";display:block;font-size:0;height:var(--size,20px);-o-object-fit:scale-down;object-fit:scale-down;opacity:.8;width:var(--size,20px)}.spinner.small{--size:12px}.spinner.big{--size:48px}.spinner.spinner-absolute{height:var(--size,20px);left:calc(50% - var(--size, 20px)/2);position:absolute;top:calc(50% - var(--size, 20px)/2);width:var(--size,20px)}body.ltr .btn+.spinner{margin-left:7px}body.rtl .btn+.spinner{margin-right:7px}body.ltr .buttons .btn+.spinner,body.ltr .buttons .btngroup+.spinner{margin-left:0}body.rtl .buttons .btn+.spinner,body.rtl .buttons .btngroup+.spinner{margin-right:0}body.ltr .buttons.right .btn+.spinner{margin-right:var(--neg-padding)}body.rtl .buttons.right .btn+.spinner{margin-left:var(--neg-padding)}.btn.small,.btngroup.small .btn{font-size:12px;line-height:22px;padding:0 7px!important}.btn.small,.btn.small+.spinner,.btngroup.small,.btngroup.small input.btn{height:22px}.btn.big,.btngroup.big .btn{font-size:14px;line-height:36px;padding:0 14px}body.ltr .btn.big[data-icon]:before,body.ltr .preview-btn:before,body.ltr .view-btn:before{margin-left:-2px}body.rtl .btn.big[data-icon]:before,body.rtl .preview-btn:before,body.rtl .view-btn:before{margin-right:-2px}.btn.big,.btn.big+.spinner,.btngroup.big,.btngroup.big input.btn{height:36px}.btn.secondary,.btn.submit{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:var(--white)!important;font-weight:500}.btn.submit{background-color:var(--primary-color)!important}.btn.submit:not(.disabled):not(.inactive):not(.loading).hover,.btn.submit:not(.disabled):not(.inactive):not(.loading):focus,.btn.submit:not(.disabled):not(.inactive):not(.loading):hover{background-color:#d61f2b!important}.btn.submit:not(.disabled):not(.inactive):not(.loading).active,.btn.submit:not(.disabled):not(.inactive):not(.loading):active{background-color:#c01b26!important}.btn.caution{background-color:var(--red-050)!important;color:var(--error-color)}.btn.caution.hover,.btn.caution:focus,.btn.caution:hover{background-color:#ffcaca!important}.btn.caution.active,.btn.caution:active{background-color:var(--red-100)!important}.btn.secondary,.secondary-buttons .btn.submit{background-color:var(--secondary-color)!important}.btn.secondary:not(.disabled):not(.inactive):not(.loading).hover,.btn.secondary:not(.disabled):not(.inactive):not(.loading):focus,.btn.secondary:not(.disabled):not(.inactive):not(.loading):hover,.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading).hover,.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading):focus,.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading):hover{background-color:#55616d!important}.btn.secondary:not(.disabled):not(.inactive):not(.loading).active,.btn.secondary:not(.disabled):not(.inactive):not(.loading):active,.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading).active,.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading):active{background-color:#4a545e!important}div.btn.submit{overflow:hidden;position:relative}div.btn.submit input{left:100%;position:absolute}.btn.dashed{background-color:transparent;border:1px dashed var(--medium-hairline-color)}body.ltr .btngroup .btn.dashed:not(:last-child):not(.btngroup-btn-last){border-right:1px solid transparent}body.rtl .btngroup .btn.dashed:not(:last-child):not(.btngroup-btn-last){border-left:1px solid transparent}body.ltr .btngroup .btn.dashed:not(:last-child):not(.btngroup-btn-last){margin-right:-1px}body.rtl .btngroup .btn.dashed:not(:last-child):not(.btngroup-btn-last){margin-left:-1px}.btn.dashed:focus{background-color:rgba(205,216,228,.1);border-color:transparent}.reduce-focus-visibility .btn.dashed:focus:not(:focus-visible){border:1px dashed var(--medium-hairline-color)}.btn.dashed:not(.disabled).active,.btn.dashed:not(.disabled):active{background-color:rgba(205,216,228,.25)}.color-input-container{position:relative}.color-input-container .color-hex-indicator{line-height:34px;position:absolute;text-align:center;top:0;-webkit-user-select:none;user-select:none;width:1em}body.ltr .color-input-container .color-hex-indicator{left:7px}body.rtl .color-input-container .color-hex-indicator{right:7px}.color-input{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:.9em!important}body.ltr .color-input{padding-left:calc(7px + 1em)}body.rtl .color-input{padding-right:calc(7px + 1em)}.color{border-radius:17px;display:inline-block;height:34px;padding:0;position:relative;vertical-align:middle;width:34px}.color:not(.static){cursor:pointer}.color:not(.small){background-image:-o-linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(315deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),-o-linear-gradient(315deg,transparent 75%,var(--gray-100) 75%);background-image:linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),linear-gradient(135deg,var(--gray-100) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),linear-gradient(135deg,transparent 75%,var(--gray-100) 75%);background-position:0 0,8.5px 0,8.5px -8.5px,0 8.5px;-o-background-size:17px 17px;background-size:17px 17px}.color.small{background-image:-o-linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(315deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),-o-linear-gradient(315deg,transparent 75%,var(--gray-100) 75%);background-image:linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),linear-gradient(135deg,var(--gray-100) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),linear-gradient(135deg,transparent 75%,var(--gray-100) 75%);background-position:0 0,4px 0,4px -4px,0 4px;-o-background-size:8px 8px;background-size:8px 8px;height:16px;width:16px}.color .color-preview{border-radius:17px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15);height:100%;position:absolute;top:0;width:100%}body.ltr .color .color-preview{left:0}body.rtl .color .color-preview{right:0}.color .color-preview:focus-within{box-shadow:var(--focus-ring)}.color .color-preview>.color-preview-input{border:none;height:100%;margin:0;opacity:0;padding:0;position:absolute;width:100%}body.ltr .color .color-preview>.color-preview-input{left:0}body.rtl .color .color-preview>.color-preview-input{right:0}.colorhex{color:var(--medium-text-color);display:inline-block;margin-left:5px;vertical-align:middle}.lightswitch-outer-container{display:-webkit-flex;display:flex}.lightswitch-outer-container .lightswitch-inner-container{-webkit-align-items:center;align-items:center;border:1px solid var(--hairline-color);border-radius:var(--small-border-radius);display:-webkit-flex;display:flex}.lightswitch-outer-container .lightswitch-inner-container span{color:var(--medium-text-color);cursor:default;padding:7px 0}body.ltr .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=on]{padding-right:10px}body.rtl .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=on]{padding-left:10px}body.ltr .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=on]{margin-left:7px}body.rtl .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=on]{margin-right:7px}body.ltr .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=off]{padding-left:10px}body.rtl .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=off]{padding-right:10px}body.ltr .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=off]{margin-right:7px}body.rtl .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=off]{margin-left:7px}.lightswitch{background-image:-o-linear-gradient(left,var(--gray-400),var(--gray-400));background-image:linear-gradient(to right,var(--gray-400),var(--gray-400));border:none!important;cursor:pointer;display:block;overflow:hidden;position:relative;-o-transition:background-image .1s linear;transition:background-image .1s linear;-webkit-user-select:none;user-select:none}.lightswitch.on{background-image:-o-linear-gradient(left,var(--enabled-color),var(--enabled-color));background-image:linear-gradient(to right,var(--enabled-color),var(--enabled-color))}.lightswitch.indeterminate{background-image:-o-linear-gradient(left,var(--enabled-color),var(--gray-300));background-image:linear-gradient(to right,var(--enabled-color),var(--gray-300))}.lightswitch .lightswitch-container{height:100%;position:relative}.lightswitch .lightswitch-container .handle{background-color:var(--white);position:absolute;top:1px}.lightswitch:not(.small){border-radius:11px;height:22px;width:34px}.lightswitch:not(.small) .lightswitch-container{width:46px}body.ltr .lightswitch:not(.small) .lightswitch-container{margin-left:-12px}body.rtl .lightswitch:not(.small) .lightswitch-container{margin-right:-12px}.lightswitch:not(.small) .lightswitch-container .handle{border-radius:10px;height:20px;left:calc(50% - 10px);width:20px}.lightswitch.small{border-radius:9px;height:18px;width:28px}.lightswitch.small .lightswitch-container{width:38px}body.ltr .lightswitch.small .lightswitch-container{margin-left:-10px}body.rtl .lightswitch.small .lightswitch-container{margin-right:-10px}.lightswitch.small .lightswitch-container .handle{border-radius:8px;height:16px;left:calc(50% - 8px);width:16px}table .lightswitch{display:inline-block;margin-bottom:-5px}body.ltr .lightswitch.on .lightswitch-container{margin-left:0}body.rtl .lightswitch.on .lightswitch-container{margin-right:0}body.ltr .lightswitch.indeterminate:not(.small) .lightswitch-container{margin-left:-6px}body.rtl .lightswitch.indeterminate:not(.small) .lightswitch-container{margin-right:-6px}body.ltr .lightswitch.indeterminate.small .lightswitch-container{margin-left:-5px}body.rtl .lightswitch.indeterminate.small .lightswitch-container{margin-right:-5px}table.data+.pagination{margin-top:24px}.pagination .page-link{-webkit-align-items:center;align-items:center;border-radius:var(--medium-border-radius);display:-webkit-flex;display:flex;height:32px;-webkit-justify-content:center;justify-content:center;width:32px}.pagination .page-link:after{position:relative;-o-transition:border-color .1s linear;transition:border-color .1s linear}.pagination .page-link.prev-page:after{border:solid var(--light-text-color);border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;width:7px}body.ltr .pagination .page-link.prev-page:after{-webkit-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg)}body.rtl .pagination .page-link.prev-page:after{-webkit-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}body.ltr .pagination .page-link.prev-page:after{right:-1px}body.rtl .pagination .page-link.prev-page:after{left:-1px}.pagination .page-link.next-page:after{border:solid var(--light-text-color);border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;width:7px}body.ltr .pagination .page-link.next-page:after{-webkit-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}body.rtl .pagination .page-link.next-page:after{-webkit-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg)}body.ltr .pagination .page-link.next-page:after{left:-1px}body.rtl .pagination .page-link.next-page:after{right:-1px}.pagination .page-link:not(.disabled){box-shadow:inset 0 0 0 1px var(--hairline-color);cursor:pointer;-o-transition:box-shadow .1s linear;transition:box-shadow .1s linear}.pagination .page-link:not(.disabled):hover{box-shadow:inset 0 0 0 1px var(--link-color);text-decoration:none}.pagination .page-link:not(.disabled):hover:after{border-color:var(--link-color)}body.reduce-focus-visibility .pagination .page-link:not(.disabled):focus-visible,body:not(.reduce-focus-visibility) .pagination .page-link:not(.disabled):focus{box-shadow:inset 0 0 0 1px var(--hairline-color),var(--focus-ring)}.pagination .page-link.disabled{opacity:1}.pagination .page-link.disabled:after{border-color:var(--hairline-color)}body.ltr .actions{float:right}body.ltr .actions>li,body.rtl .actions{float:left}body.rtl .actions>li{float:right}body.ltr .actions>li+li{margin-left:10px}body.rtl .actions>li+li{margin-right:10px}h1+.actions{margin-top:-100px}h2+.actions{margin-top:-54px}.tablepane{margin:-24px -24px -12px;overflow-x:auto}body.ltr .tablepane table.data td:first-child,body.ltr .tablepane table.data th:first-child{padding-left:24px}body.rtl .tablepane table.data td:first-child,body.rtl .tablepane table.data th:first-child{padding-right:24px}body.ltr .tablepane table.data td:last-child,body.ltr .tablepane table.data th:last-child{padding-right:24px}body.rtl .tablepane table.data td:last-child,body.rtl .tablepane table.data th:last-child{padding-left:24px}table.fixed-layout{table-layout:fixed}table td.thin,table th.thin{white-space:nowrap;width:.01%!important}table thead th{font-weight:700;vertical-align:top}body.ltr table thead th{text-align:left}body.rtl table thead th{text-align:right}table:not(.data) td,table:not(.data) th{padding-bottom:7px;padding-top:7px}table:not(.data) td:not(:first-child),table:not(.data) th:not(:first-child){padding-left:12px}table:not(.data) td:not(:last-child),table:not(.data) th:not(:last-child){padding-right:12px}table.data td,table.data th{box-sizing:border-box;padding-left:12px;padding-right:12px;position:relative}table.data td.checkbox-cell,table.data th.checkbox-cell{box-sizing:content-box;min-width:var(--checkbox-size);position:relative;width:var(--checkbox-size)!important}table.data td.checkbox-cell div.checkbox,table.data td.checkbox-cell input.checkbox+label,table.data th.checkbox-cell div.checkbox,table.data th.checkbox-cell input.checkbox+label{position:absolute;top:calc(50% - 8px)}table.data th{font-weight:700}body.ltr table.data caption+tbody tr:first-child td:first-child,body.ltr table.data caption+tbody tr:first-child th:first-child,body.ltr table.data caption+tfoot tr:first-child td:first-child,body.ltr table.data caption+tfoot tr:first-child th:first-child,body.ltr table.data caption+thead tr:first-child td:first-child,body.ltr table.data caption+thead tr:first-child th:first-child,body.ltr table.data tbody:first-child tr:first-child td:first-child,body.ltr table.data tbody:first-child tr:first-child th:first-child,body.ltr table.data tfoot:first-child tr:first-child td:first-child,body.ltr table.data tfoot:first-child tr:first-child th:first-child,body.ltr table.data thead:first-child tr:first-child td:first-child,body.ltr table.data thead:first-child tr:first-child th:first-child{border-top-left-radius:var(--large-border-radius)}body.rtl table.data caption+tbody tr:first-child td:first-child,body.rtl table.data caption+tbody tr:first-child th:first-child,body.rtl table.data caption+tfoot tr:first-child td:first-child,body.rtl table.data caption+tfoot tr:first-child th:first-child,body.rtl table.data caption+thead tr:first-child td:first-child,body.rtl table.data caption+thead tr:first-child th:first-child,body.rtl table.data tbody:first-child tr:first-child td:first-child,body.rtl table.data tbody:first-child tr:first-child th:first-child,body.rtl table.data tfoot:first-child tr:first-child td:first-child,body.rtl table.data tfoot:first-child tr:first-child th:first-child,body.rtl table.data thead:first-child tr:first-child td:first-child,body.rtl table.data thead:first-child tr:first-child th:first-child{border-top-right-radius:var(--large-border-radius)}body.ltr table.data caption+tbody tr:first-child td:last-child,body.ltr table.data caption+tbody tr:first-child th:last-child,body.ltr table.data caption+tfoot tr:first-child td:last-child,body.ltr table.data caption+tfoot tr:first-child th:last-child,body.ltr table.data caption+thead tr:first-child td:last-child,body.ltr table.data caption+thead tr:first-child th:last-child,body.ltr table.data tbody:first-child tr:first-child td:last-child,body.ltr table.data tbody:first-child tr:first-child th:last-child,body.ltr table.data tfoot:first-child tr:first-child td:last-child,body.ltr table.data tfoot:first-child tr:first-child th:last-child,body.ltr table.data thead:first-child tr:first-child td:last-child,body.ltr table.data thead:first-child tr:first-child th:last-child{border-top-right-radius:var(--large-border-radius)}body.rtl table.data caption+tbody tr:first-child td:last-child,body.rtl table.data caption+tbody tr:first-child th:last-child,body.rtl table.data caption+tfoot tr:first-child td:last-child,body.rtl table.data caption+tfoot tr:first-child th:last-child,body.rtl table.data caption+thead tr:first-child td:last-child,body.rtl table.data caption+thead tr:first-child th:last-child,body.rtl table.data tbody:first-child tr:first-child td:last-child,body.rtl table.data tbody:first-child tr:first-child th:last-child,body.rtl table.data tfoot:first-child tr:first-child td:last-child,body.rtl table.data tfoot:first-child tr:first-child th:last-child,body.rtl table.data thead:first-child tr:first-child td:last-child,body.rtl table.data thead:first-child tr:first-child th:last-child{border-top-left-radius:var(--large-border-radius)}table.data thead td,table.data thead th{background-color:var(--gray-050);cursor:default;width:auto}table.data thead td,table.data thead th:not(.orderable){padding-bottom:15px;padding-top:15px}table.data thead th{vertical-align:middle;white-space:nowrap}table.data thead th.orderable{padding-left:0;padding-right:0;position:relative}table.data thead th.orderable:not(.ordered):hover{background-color:var(--gray-100)}table.data thead th.orderable.ordered{background-color:var(--light-sel-color)}table.data thead th.orderable.ordered:not(.loading) button:after{border:solid;border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;position:absolute;top:calc(50% - 3px);-webkit-transform:rotate(225deg);-o-transform:rotate(225deg);transform:rotate(225deg);width:7px}body.ltr table.data thead th.orderable.ordered:not(.loading) button:after{right:10px}body.rtl table.data thead th.orderable.ordered:not(.loading) button:after{left:10px}table.data thead th.orderable.ordered:not(.loading).desc button:after{-webkit-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}table.data thead th.orderable button{font:inherit;padding:14px;position:relative;width:100%}body.ltr table.data thead th.orderable button{padding-right:26px}body.rtl table.data thead th.orderable button{padding-left:26px}body.ltr table.data thead th.orderable button{text-align:left}body.rtl table.data thead th.orderable button{text-align:right}table.data thead th.orderable button:focus{z-index:1}table.data thead th:not(.loading) .spinner{display:none}table.data thead th .spinner{--size:12px;position:absolute;top:calc(50% - 6px)}body.ltr table.data thead th .spinner{right:8px}body.rtl table.data thead th .spinner{left:8px}table.data tbody tr:not(.disabled):hover td,table.data tbody tr:not(.disabled):hover th{background-color:var(--gray-050)}table.data tbody tr:not(.disabled):focus{position:relative;z-index:1}table.data tbody tr:not(.disabled).sel td,table.data tbody tr:not(.disabled).sel th{background-color:var(--light-sel-color)}table.data tbody td,table.data tbody th{background-clip:padding-box;padding-bottom:7px;padding-top:7px}table.data tbody td.timestamp{color:var(--light-text-color);vertical-align:bottom;white-space:nowrap}body.ltr table.data tbody td.timestamp{text-align:right}body.rtl table.data tbody td.timestamp{text-align:left}table.data thead+tbody tr td,table.data thead+tbody tr th,table.data tr+tr td,table.data tr+tr th{border-top:1px solid transparent}table.collapsed{width:auto}table.collapsed,table.collapsed tbody,table.collapsed tbody td,table.collapsed tbody th,table.collapsed tbody tr{border:none;display:block;padding:0;white-space:normal;width:auto!important}body.ltr table.collapsed,body.ltr table.collapsed tbody,body.ltr table.collapsed tbody td,body.ltr table.collapsed tbody th,body.ltr table.collapsed tbody tr{text-align:left}body.rtl table.collapsed,body.rtl table.collapsed tbody,body.rtl table.collapsed tbody td,body.rtl table.collapsed tbody th,body.rtl table.collapsed tbody tr{text-align:right}table.collapsed thead{display:none}table.collapsed tbody tr{border-bottom:1px dotted var(--hairline-color);padding:6px 0}table.collapsed tbody tr:after{clear:both;content:"";display:block;height:0;visibility:hidden}table.collapsed tbody td,table.collapsed tbody th{padding:2px 0!important}table.collapsed tbody td:empty{display:none}body.ltr table.collapsed tbody [data-title]{margin-right:0}body.rtl table.collapsed tbody [data-title]{margin-left:0}table.collapsed tbody [data-title]:before{content:attr(data-title) ":";font-weight:700;margin-right:5px}table.collapsed tbody [data-title] form{display:inline-block}.datatablesorthelper,.editabletablesorthelper,.thumbviewhelper{background-color:var(--white);box-shadow:0 1px 5px -1px rgba(31,41,51,.2)}.datatablesorthelper,.datatablesorthelper .element,.datatablesorthelper a{cursor:move!important}.datatablesorthelper tr:first-child td,.datatablesorthelper tr:first-child th{border-top:none!important}.datatablesorthelper tr:last-child td,.datatablesorthelper tr:last-child th{border-bottom:none!important}.element{border-radius:var(--small-border-radius);cursor:default;font-weight:400;position:relative;-webkit-user-select:none;user-select:none}.element:focus,li:focus .element{background-color:var(--gray-050)}.element.sel,li.sel .element{background-color:var(--light-sel-color)!important;cursor:default}.element.sel:focus,li.sel .element:focus{background-color:#bdcbdb!important}.element.sel.hasthumb .elementthumb img,li.sel .element.hasthumb .elementthumb img{box-shadow:0 0 0 1px rgba(81,95,108,.1),0 6px 4px -4px rgba(81,95,108,.2)}.element.hasthumb .elementthumb:not(:empty){-ms-flex-pack:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center;position:absolute}.element.hasthumb .elementthumb:not(:empty) img{border-radius:var(--small-border-radius);display:block;-webkit-flex-shrink:0;flex-shrink:0;max-height:100%;max-width:100%;pointer-events:none}.element.hasthumb .elementthumb:not(:empty).rounded img{border-radius:50%}.element.hasthumb .elementthumb.open-preview{cursor:pointer}.element.error [data-icon=alert]{margin-left:var(--xs)}.element .label{display:inline-block}.element .label .draft-label{background:var(--gray-100);border-radius:var(--large-border-radius);color:var(--medium-text-color);display:inline-block;font-weight:400;padding:1px 5px;text-decoration:none!important}body.ltr .element .label .draft-label{margin:-1px 0 -1px 7px}body.rtl .element .label .draft-label{margin:-1px 7px -1px 0}.element.large:not(.hasthumb),.element.small{box-sizing:border-box;display:inline-block;padding:7px}body.ltr .element.large:not(.hasthumb).hasstatus,body.ltr .element.small.hasstatus{padding-left:22px}body.rtl .element.large:not(.hasthumb).hasstatus,body.rtl .element.small.hasstatus{padding-right:22px}.element.large:not(.hasthumb).hasstatus .status,.element.small.hasstatus .status{position:absolute;top:calc(50% - 5px)}body.ltr .element.large:not(.hasthumb).hasstatus .status,body.ltr .element.small.hasstatus .status{left:7px}body.rtl .element.large:not(.hasthumb).hasstatus .status,body.rtl .element.small.hasstatus .status{right:7px}.element.large:not(.hasthumb).hasstatus .icon:not(.delete),.element.small.hasstatus .icon:not(.delete){position:absolute;top:calc(50% - 11px)}body.ltr .element.large:not(.hasthumb).hasstatus .icon:not(.delete),body.ltr .element.small.hasstatus .icon:not(.delete){left:6px}body.rtl .element.large:not(.hasthumb).hasstatus .icon:not(.delete),body.rtl .element.small.hasstatus .icon:not(.delete){right:6px}body.ltr .element.large:not(.hasthumb).hasthumb,body.ltr .element.small.hasthumb{padding-left:39px}body.rtl .element.large:not(.hasthumb).hasthumb,body.rtl .element.small.hasthumb{padding-right:39px}.element.large:not(.hasthumb).hasthumb .elementthumb:not(:empty),.element.small.hasthumb .elementthumb:not(:empty){height:34px;top:calc(50% - 17px);width:34px}body.ltr .element.large:not(.hasthumb).hasthumb .elementthumb:not(:empty),body.ltr .element.small.hasthumb .elementthumb:not(:empty){left:0}body.rtl .element.large:not(.hasthumb).hasthumb .elementthumb:not(:empty),body.rtl .element.small.hasthumb .elementthumb:not(:empty){right:0}.element.large:not(.hasthumb).hasthumb .elementthumb:not(:empty).checkered img,.element.small.hasthumb .elementthumb:not(:empty).checkered img{background-image:-o-linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(315deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),-o-linear-gradient(315deg,transparent 75%,var(--gray-100) 75%);background-image:linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),linear-gradient(135deg,var(--gray-100) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),linear-gradient(135deg,transparent 75%,var(--gray-100) 75%);background-position:0 0,4px 0,4px -4px,0 4px;-o-background-size:8px 8px;background-size:8px 8px}body.ltr .element.large:not(.hasthumb).hasthumb.hasstatus,body.ltr .element.small.hasthumb.hasstatus{padding-left:54px}body.rtl .element.large:not(.hasthumb).hasthumb.hasstatus,body.rtl .element.small.hasthumb.hasstatus{padding-right:54px}body.ltr .element.large:not(.hasthumb).hasthumb.hasstatus .status,body.ltr .element.small.hasthumb.hasstatus .status{left:39px}body.rtl .element.large:not(.hasthumb).hasthumb.hasstatus .status,body.rtl .element.small.hasthumb.hasstatus .status{right:39px}.element.large.hasthumb{box-sizing:border-box;display:block;padding:132px 7px 7px;width:134px}body.ltr .element.large.hasthumb.hasstatus{padding-left:22px}body.rtl .element.large.hasthumb.hasstatus{padding-right:22px}.element.large.hasthumb.hasstatus .status{position:absolute;top:138px}body.ltr .element.large.hasthumb.hasstatus .status{left:7px}body.rtl .element.large.hasthumb.hasstatus .status{right:7px}.element.large.hasthumb .elementthumb:not(:empty){height:120px;top:7px;width:120px}body.ltr .element.large.hasthumb .elementthumb:not(:empty){left:0}body.rtl .element.large.hasthumb .elementthumb:not(:empty){right:0}.element.large.hasthumb .elementthumb:not(:empty).checkered img{background-image:-o-linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(315deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),-o-linear-gradient(315deg,transparent 75%,var(--gray-100) 75%);background-image:linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),linear-gradient(135deg,var(--gray-100) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),linear-gradient(135deg,transparent 75%,var(--gray-100) 75%);background-position:0 0,7.5px 0,7.5px -7.5px,0 7.5px;-o-background-size:15px 15px;background-size:15px 15px}.element.large.hasthumb .label{word-wrap:normal;display:block;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}body.ltr .element.removable .label{padding-right:20px}body.rtl .element.removable .label{padding-left:20px}.element.removable .delete:before{color:var(--ui-control-color)}.element.removable.large:not(.hasthumb) .delete,.element.removable.small .delete{position:absolute;top:calc(50% - 11px)}body.ltr .element.removable.large:not(.hasthumb) .delete,body.ltr .element.removable.small .delete{right:7px}body.rtl .element.removable.large:not(.hasthumb) .delete,body.rtl .element.removable.small .delete{left:7px}.element.removable.large.hasthumb .delete{position:absolute}body.ltr .element.removable.large.hasthumb .delete{right:7px}body.rtl .element.removable.large.hasthumb .delete{left:7px}.element:not(.removable) .delete{display:none}.elements{position:relative}.elements:not(.busy) .update-spinner{display:none}.elements.busy{min-height:200px}.elements.busy:after{background:hsla(0,0%,100%,.75);border-radius:var(--large-border-radius);content:"";display:block;font-size:0;height:100%;left:-24px;position:absolute;top:0;width:calc(100% + 48px)}.elements.busy .update-spinner{z-index:1}.elements .header{background-color:var(--gray-050);box-shadow:none;margin:-24px -24px 24px;padding:14px 24px}.elements .header:after{content:""}.elements .header .selectallcontainer{cursor:default}body.ltr .elements .header .selectallcontainer .checkbox{margin-right:5px}body.rtl .elements .header .selectallcontainer .checkbox{margin-left:5px}.elements .tableview .move,.elements .tableview .toggle{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;height:var(--touch-target-size);-webkit-justify-content:center;justify-content:center;position:absolute;top:50%;-webkit-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);width:var(--touch-target-size)}body.ltr .elements .tableview .move,body.ltr .elements .tableview .toggle{margin-left:calc(var(--touch-target-size)*-1)}body.rtl .elements .tableview .move,body.rtl .elements .tableview .toggle{margin-right:calc(var(--touch-target-size)*-1)}.elements .tableview .move{font-size:11px;text-decoration:none}.elements .tableview .toggle{border-radius:50%;padding:4px;text-align:center}body.ltr .elements .tableview .move+.toggle{margin-left:calc(var(--touch-target-size)*-2)}body.rtl .elements .tableview .move+.toggle{margin-right:calc(var(--touch-target-size)*-2)}.elements .thumbsview{display:grid;gap:5px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));width:calc(100% + 15px)}body.ltr .elements .thumbsview{margin:-7px -8px -8px -7px}body.rtl .elements .thumbsview{margin:-7px -7px -8px -8px}.elements .thumbsview li{max-width:226px;position:relative}body.ltr .elements .thumbsview li{margin:0 1px 1px 0}body.rtl .elements .thumbsview li{margin:0 0 1px 1px}.elements .thumbsview li:hover .element{background-color:var(--gray-050)}.elements .thumbsview li .element.large.hasthumb{width:unset}.elements .thumbsview li .element.large.hasthumb .elementthumb:not(:empty){width:100%}body.ltr .elements .thumbsview li.has-checkbox .element.hasthumb:not(.hasstatus){padding-left:28px}body.rtl .elements .thumbsview li.has-checkbox .element.hasthumb:not(.hasstatus){padding-right:28px}body.ltr .elements .thumbsview li.has-checkbox .element.hasthumb.hasstatus{padding-left:43px}body.rtl .elements .thumbsview li.has-checkbox .element.hasthumb.hasstatus{padding-right:43px}body.ltr .elements .thumbsview li.has-checkbox .element.hasthumb.hasstatus .status{left:28px}body.rtl .elements .thumbsview li.has-checkbox .element.hasthumb.hasstatus .status{right:28px}.elements .thumbsview li.has-checkbox .checkbox{position:absolute;top:134px}body.ltr .elements .thumbsview li.has-checkbox .checkbox{left:7px}body.rtl .elements .thumbsview li.has-checkbox .checkbox{right:7px}.export-form{position:relative}.export-form .spinner{bottom:0;position:absolute}body.ltr .export-form .spinner{right:-24px}body.rtl .export-form .spinner{left:-24px}.thumbviewhelper{margin:-7px;padding:7px}.thumbviewhelper .thumbsview,.thumbviewhelper .thumbsview li{margin:0!important}.structure{position:relative;z-index:1}body.ltr .structure li{padding-left:8px}body.rtl .structure li{padding-right:8px}.structure li.collapsed>ul{display:none}.structure li .add.active,.structure li .row:hover>.icon,.structure li.draghelper>.row .move{opacity:1}.structure li.draghelper>.row .add{opacity:0}.structure li.draghelper>.row .move:before{color:var(--link-color)}.structure li.draginsertion{background-color:var(--link-color)!important;border-radius:1px;height:2px;position:relative}body.ltr .structure li.draginsertion{margin:-1px 0 -1px 8px}body.rtl .structure li.draginsertion{margin:-1px 8px -1px 0}body.ltr .structure li.draginsertion{padding-left:0}body.rtl .structure li.draginsertion{padding-right:0}body.ltr .structure li.draginsertion{border-left:none}body.rtl .structure li.draginsertion{border-right:none}.structure li .toggle{padding:4px;position:relative;z-index:1}body.ltr .structure li .toggle{float:left}body.rtl .structure li .toggle{float:right}body.ltr .structure li .toggle{margin:10px -8px 0 -12px}body.rtl .structure li .toggle{margin:10px -12px 0 -8px}.structure li .row:after{clear:both;content:"";display:block;height:0;visibility:hidden}.structure li .add,.structure li .move{opacity:0;-o-transition:opacity .1s linear;transition:opacity .1s linear}body.ltr .structure li .add,body.ltr .structure li .move{margin:5px 5px 0 0}body.rtl .structure li .add,body.rtl .structure li .move{margin:5px 0 0 5px}.structure li .add{padding:0 5px}.structure li .add:before{color:var(--dark-hairline-color);content:"downangle"}.structure li .add.active:before,.structure li .add:not(.disabled):hover:before{color:var(--link-color)}body.ltr .structure li .checkbox{float:left}body.rtl .structure li .checkbox{float:right}body.ltr .structure li .checkbox{margin:7px 0 0 7px}body.rtl .structure li .checkbox{margin:7px 7px 0 0}body.ltr .structure ul{margin-left:-3px}body.rtl .structure ul{margin-right:-3px}.structure ul li{background-repeat:no-repeat}body.ltr .structure ul li{padding-left:38px}body.rtl .structure ul li{padding-right:38px}body.ltr .structure ul li{background-image:url(../images/branch.png);background-position:0 0}body.rtl .structure ul li{background-image:url(../images/branch_rtl.png);background-position:100% 0}body.ltr .structure ul li:not(:last-child):not(.last){padding-left:37px}body.rtl .structure ul li:not(:last-child):not(.last){padding-right:37px}body.ltr .structure ul li:not(:last-child):not(.last){border-left:1px solid var(--gray-200)}body.rtl .structure ul li:not(:last-child):not(.last){border-right:1px solid var(--gray-200)}body.ltr .structure ul li:not(:last-child):not(.last){background-position:-1px 0}body.rtl .structure ul li:not(:last-child):not(.last){background-position:calc(100% + 1px) 0}body.ltr .structure ul li.draginsertion{margin-left:38px}body.rtl .structure ul li.draginsertion{margin-right:38px}.structure .row.draghover .element{border-radius:15px;box-shadow:inset 0 0 0 2px var(--link-color);z-index:2}.structure .row.droptarget{border-radius:5px;box-shadow:inset 0 0 0 2px var(--link-color)}.elementselect{margin-top:-7px;min-height:34px;position:relative}.elementselect .elements{-webkit-align-items:flex-start;align-items:flex-start;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column}.elementselect .elements.flex-row{-webkit-flex-direction:row;flex-direction:row}.elementselect .elements.flex-wrap{-webkit-flex-wrap:wrap;flex-wrap:wrap}.elementselect .elements:after{clear:both;content:"";display:block;height:0;visibility:hidden}body.ltr .elementselect .element{margin:7px 7px 0 0}body.rtl .elementselect .element{margin:7px 0 0 7px}.elementselect .btn,.elementselect .flex{clear:both}.elementselect .element{z-index:1}.elementselect .element.small{max-width:100%}.elementselect .element.small .label{box-sizing:border-box;display:block;max-width:100%;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}.elementselect .flex{padding-top:7px}table.editable{border:1px solid var(--gray-200);border-radius:var(--large-border-radius)}table.editable td.action,table.editable th{background-color:var(--gray-050);color:var(--medium-text-color);font-weight:400}table.editable tbody tr th,table.editable thead tr th{padding:6px 10px}table.editable thead tr th{border-bottom:1px solid var(--hairline-color)}body.ltr table.editable thead tr th.has-info{padding-right:calc(15px + 1em)}body.rtl table.editable thead tr th.has-info{padding-left:calc(15px + 1em)}table.editable thead tr th span.info{margin-left:5px;position:absolute}table.editable tbody tr:not(:first-child) td,table.editable tbody tr:not(:first-child) th{border-top:1px solid var(--hairline-color)}body.ltr table.editable tbody tr:last-child td:first-child{border-bottom-left-radius:var(--large-border-radius)}body.rtl table.editable tbody tr:last-child td:first-child{border-bottom-right-radius:var(--large-border-radius)}body.ltr table.editable tbody tr:last-child td:first-child input.text,body.ltr table.editable tbody tr:last-child td:first-child textarea{border-bottom-left-radius:calc(var(--large-border-radius) - 1px)}body.rtl table.editable tbody tr:last-child td:first-child input.text,body.rtl table.editable tbody tr:last-child td:first-child textarea{border-bottom-right-radius:calc(var(--large-border-radius) - 1px)}body.ltr table.editable tbody tr td:not(:first-child),body.ltr table.editable tbody tr th~td:not(.hidden)~td{border-left:1px solid var(--hairline-color)}body.rtl table.editable tbody tr td:not(:first-child),body.rtl table.editable tbody tr th~td:not(.hidden)~td{border-right:1px solid var(--hairline-color)}body.ltr table.editable tbody tr th~td:not(:first-child){border-left:1px solid #dbdddf}body.rtl table.editable tbody tr th~td:not(:first-child){border-right:1px solid #dbdddf}table.editable tbody tr td{background-color:var(--white);padding:4px 10px;text-align:center;vertical-align:top}table.editable tbody tr td.focus{box-shadow:inset 0 0 0 1px var(--hairline-color);position:relative}table.editable tbody tr td.textual{padding:0}table.editable tbody tr td.textual textarea{resize:none}table.editable tbody tr td.textual pre{white-space:pre-wrap}body.ltr table.editable tbody tr td.textual pre{text-align:left}body.rtl table.editable tbody tr td.textual pre{text-align:right}table.editable tbody tr td.lightswitch-cell{padding-bottom:9px;padding-top:9px}table.editable tbody tr td.lightswitch-cell .lightswitch{display:block;margin:0 auto}table.editable tbody tr td.checkbox-cell{padding-bottom:10px;padding-top:10px}table.editable tbody tr td.checkbox-cell .checkbox-wrapper{display:block;height:16px;margin:-2px auto 0;width:16px}table.editable tbody tr td.error{box-shadow:inset 0 0 0 1px var(--error-color)}table.editable tbody tr td.disabled{opacity:1;position:relative}table.editable tbody tr td.disabled:after{background-color:rgba(243,247,252,.75);content:"";font-size:0;height:100%;left:0;position:absolute;top:0;-webkit-user-select:none;user-select:none;width:100%}table.editable tbody tr td.action{padding:4px 7px}body.ltr table.editable tbody tr td.action+td.action{border-left:none}body.rtl table.editable tbody tr td.action+td.action{border-right:none}body.ltr table.editable tbody tr td.action+td.action{padding-left:0}body.rtl table.editable tbody tr td.action+td.action{padding-right:0}table.editable tbody tr td .flex>*{margin-bottom:0}table.editable tbody input.text,table.editable tbody pre,table.editable tbody textarea,table.editable tbody textarea.text{background-color:transparent;border:none;border-radius:0;box-shadow:none;box-sizing:border-box;display:block;overflow:hidden;padding:7px 10px;-o-transition:none;transition:none;width:100%}table.editable tbody .color-container{display:block;position:relative}table.editable tbody .color-container .color-input,table.editable tbody .color-container>.color{margin-bottom:0}table.editable tbody .color-container>.color{position:absolute;top:10px;z-index:1}body.ltr table.editable tbody .color-container>.color{left:10px}body.rtl table.editable tbody .color-container>.color{right:10px}body.ltr table.editable tbody .color-container .color-hex-indicator{left:32px}body.rtl table.editable tbody .color-container .color-hex-indicator{right:32px}body.ltr table.editable tbody .color-container .color-input{padding-left:calc(32px + 1em)}body.rtl table.editable tbody .color-container .color-input{padding-right:calc(32px + 1em)}table.editable tbody .datewrapper,table.editable tbody .timewrapper{display:block;width:100%}table.editable tbody .datewrapper .text+div[data-icon],table.editable tbody .timewrapper .text+div[data-icon]{top:6px}body.ltr table.editable tbody .datewrapper .text+div[data-icon],body.ltr table.editable tbody .timewrapper .text+div[data-icon]{left:10px}body.rtl table.editable tbody .datewrapper .text+div[data-icon],body.rtl table.editable tbody .timewrapper .text+div[data-icon]{right:10px}table.editable:not(.static) td.textual{cursor:text}table.editable+.btn.add{display:block;width:100%}table.editable:not(.hidden)+.btn.add{border-radius:0 0 var(--medium-border-radius) var(--medium-border-radius);border-top-width:0}.border-box+.buttons,.shadow-box+.buttons{margin-top:7px}body.ltr .tree ul,body.ltr ul.tree{margin-left:20px}body.rtl .tree ul,body.rtl ul.tree{margin-right:20px}body.ltr .tree li .toggle{margin:7px 0 0 -15px}body.rtl .tree li .toggle{margin:7px -15px 0 0}.status{background-clip:border-box;border:1px solid transparent;border-radius:100%;box-sizing:border-box;display:inline-block;height:10px;position:relative;width:10px}body.ltr .status{margin-right:10px}body.rtl .status{margin-left:10px}body.use-shapes .status.all{background-image:-o-linear-gradient(60deg,#184cef,#e5422b);background-image:linear-gradient(30deg,#184cef,#e5422b);rotate:45deg}body.use-shapes .status.pending{background-color:transparent;border-color:transparent transparent var(--pending-color) transparent;border-radius:1px;border-style:solid;border-width:0 5px 10px}body.use-shapes .status.all,body.use-shapes .status.expired,body.use-shapes .status.off,body.use-shapes .status.suspended{border-radius:2px;-webkit-transform:scale(90%);-o-transform:scale(90%);transform:scale(90%)}.status:not(.on):not(.live):not(.active):not(.enabled):not(.all):not(.pending):not(.off):not(.suspended):not(.expired):not(.yellow):not(.orange):not(.red):not(.pink):not(.purple):not(.blue):not(.green):not(.turquoise):not(.light):not(.grey):not(.black){border-color:var(--ui-control-color)}.green,.status.active,.status.enabled,.status.live,.status.on{background-color:var(--enabled-color)}.status.all{background-image:-o-linear-gradient(30deg,#184cef,#e5422b);background-image:linear-gradient(60deg,#184cef,#e5422b);-o-background-origin:border-box;background-origin:border-box}.orange,.status.pending{background-color:var(--pending-color)}.red,.status.expired,.status.off,.status.suspended{background-color:var(--disabled-color)}.yellow{background-color:var(--yellow-300)}.pink{background-color:var(--pink-400)}.purple{background-color:#9b59b6}.blue{background-color:var(--blue-600)}.turquoise{background-color:var(--teal-300)}.status.light{background-color:var(--gray-100)}.grey{background-color:var(--gray-300)}.black{background-color:var(--gray-800)}.status.disabled,.status.white{opacity:1}.condition-container{margin:24px 0}.condition-footer,.condition-rule{padding:7px}.condition-footer{border:1px dashed var(--medium-hairline-color);border-radius:var(--large-border-radius)}.condition:not(:empty)+.condition-footer{border-top-left-radius:0;border-top-right-radius:0;border-top-width:0}.condition-footer .spinner:not(.loading){display:none}.condition-rule{background-color:var(--gray-050);border:1px solid var(--hairline-color);margin:0}.condition-rule:first-child{border-top-left-radius:var(--large-border-radius);border-top-right-radius:var(--large-border-radius)}.condition-rule+.condition-rule{border-top-width:0}.condition-rule>.rule-actions,.condition-rule>.rule-move{margin-top:5px}.condition-rule>.rule-body .lightswitch{display:block;margin-top:6px}.condition-rule>.rule-body .selectize{min-width:100px}.condition-rule>.rule-body .text.fullwidth{max-width:100%;min-width:100px}.progressbar{border:2px solid var(--gray-700);border-radius:6px;left:20%;padding:2px;position:absolute;width:60%;z-index:1000}.progressbar-inner{background-color:var(--gray-700);border-radius:2px;height:4px}.progressbar:not(.pending) .progressbar-inner{-o-transition:width .1s linear;transition:width .1s linear;width:0}.progressbar.pending .progressbar-inner{-webkit-animation-duration:.25s;-o-animation-duration:.25s;animation-duration:.25s;-webkit-animation-iteration-count:infinite;-o-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-timing-function:linear;-o-animation-timing-function:linear;animation-timing-function:linear}body.ltr .progressbar.pending .progressbar-inner{background:-o-repeating-linear-gradient(315deg,var(--white),var(--white) 8.8388347649px,var(--gray-700) 8.8388347649px,var(--gray-700) 17.6776695297px);background:repeating-linear-gradient(135deg,var(--white),var(--white) 8.8388347649px,var(--gray-700) 8.8388347649px,var(--gray-700) 17.6776695297px)}body.rtl .progressbar.pending .progressbar-inner{background:-o-repeating-linear-gradient(45deg,var(--white),var(--white) 8.8388347649px,var(--gray-700) 8.8388347649px,var(--gray-700) 17.6776695297px);background:repeating-linear-gradient(45deg,var(--white),var(--white) 8.8388347649px,var(--gray-700) 8.8388347649px,var(--gray-700) 17.6776695297px)}body.ltr .progressbar.pending .progressbar-inner{-webkit-animation-name:pendingprogress-ltr;-o-animation-name:pendingprogress-ltr;animation-name:pendingprogress-ltr}body.rtl .progressbar.pending .progressbar-inner{-webkit-animation-name:pendingprogress-rtl;-o-animation-name:pendingprogress-rtl;animation-name:pendingprogress-rtl}@-webkit-keyframes pendingprogress-ltr{0%{background-position:0}to{background-position:25px}}@-o-keyframes pendingprogress-ltr{0%{background-position:0}to{background-position:25px}}@keyframes pendingprogress-ltr{0%{background-position:0}to{background-position:25px}}@-webkit-keyframes pendingprogress-rtl{0%{background-position:0}to{background-position:-25px}}@-o-keyframes pendingprogress-rtl{0%{background-position:0}to{background-position:-25px}}@keyframes pendingprogress-rtl{0%{background-position:0}to{background-position:-25px}}.elementselect .progress-shade{background-color:hsla(0,0%,100%,.8);display:none;height:100%;position:absolute;top:0;width:100%}body.ltr .elementselect .progress-shade{left:0}body.rtl .elementselect .progress-shade{right:0}.elementselect.uploading{position:relative}.elementselect.uploading .progress-shade{display:block;z-index:2}.missing-component{background-color:var(--gray-050)!important;max-width:400px;padding:7px 10px!important}.missing-component .error{margin:0}.missing-component .install-plugin{border-top:1px solid var(--hairline-color);margin:7px 0 -7px;position:relative}body.ltr .missing-component .install-plugin{padding:10px 0 10px 40px}body.rtl .missing-component .install-plugin{padding:10px 40px 10px 0}.missing-component .install-plugin .icon{height:32px;position:absolute;top:calc(50% - 16px);width:32px}body.ltr .missing-component .install-plugin .icon{left:0}body.rtl .missing-component .install-plugin .icon{right:0}.missing-component .install-plugin .icon img,.missing-component .install-plugin .icon svg{height:100%;width:100%}.missing-component .install-plugin h3{-webkit-flex:1;flex:1;margin:8px 0!important}.missing-component .install-plugin .btn{margin:0}.pane{word-wrap:break-word;background:#fff;border-radius:var(--large-border-radius);box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);box-sizing:border-box;margin:14px 0;padding:24px;position:relative}.pane:focus{box-shadow:var(--focus-ring)}#content .pane,.pane .pane{background-color:var(--gray-050);border:1px solid var(--hairline-color);box-shadow:none}.pane.loading{min-height:200px}.pane.loading:after{content:"";display:block;font-size:0;height:100%;left:-24px;position:absolute;top:0;width:calc(100% + 48px)}.pane-header{background-color:var(--gray-050);border-radius:var(--large-border-radius) var(--large-border-radius) 0 0;box-shadow:inset 0 -1px 0 0 rgba(154,165,177,.25);box-sizing:border-box;margin:calc(var(--xl)*-1) var(--neg-padding) var(--xl);min-height:50px;padding:var(--s) var(--xl)}.pane-header .header-btn{height:30px;margin:2px 0;padding-left:0;padding-right:0;width:30px}.pane-header .header-btn:not(:hover):not(:active):not(.active){background-color:transparent}.pane-header .header-btn:not(:active):not(.active):hover{background-color:rgba(154,165,177,.15)}.pane-header .spinner{margin:0!important}.pane-tabs{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;margin:calc(var(--s)*-1) calc(var(--xl)*-1)}.pane-tabs:first-child{border-radius:var(--large-border-radius) var(--large-border-radius) 0 0;overflow:hidden}.pane-tabs [role=tablist]{display:-webkit-flex;display:flex;-webkit-flex:1;flex:1;-webkit-flex-direction:row;flex-direction:row;overflow-x:auto;scrollbar-width:none}.pane-tabs [role=tablist]::-webkit-scrollbar{display:none}body.ltr .pane-tabs [role=tablist].scrollable{-webkit-mask-image:linear-gradient(270deg,transparent,#000 24px);mask-image:linear-gradient(270deg,transparent,#000 24px)}body.rtl .pane-tabs [role=tablist].scrollable{-webkit-mask-image:linear-gradient(90deg,transparent,#000 24px);mask-image:linear-gradient(90deg,transparent,#000 24px)}.pane-tabs [role=tablist] [role=tab]{--tab-label-color:var(--light-text-color)}.pane-tabs [role=tablist] [role=tab].error{--highlight-color:var(--error-color)!important;--tab-label-color:var(--error-color)!important}.pane-tabs [role=tablist] [role=tab],.pane-tabs [role=tablist] [role=tab] .tab-label{border-radius:2px 2px 0 0}.pane-tabs [role=tablist] [role=tab] .tab-label{-webkit-align-items:center;align-items:center;color:var(--tab-label-color);display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;height:50px;padding:0 24px;position:relative;white-space:nowrap}.pane-tabs [role=tablist] [role=tab]:hover{text-decoration:none}body.reduce-focus-visibility .pane-tabs [role=tablist] [role=tab]:focus-visible,body:not(.reduce-focus-visibility) .pane-tabs [role=tablist] [role=tab]:focus{box-shadow:none}body.reduce-focus-visibility .pane-tabs [role=tablist] [role=tab]:focus-visible .tab-label,body:not(.reduce-focus-visibility) .pane-tabs [role=tablist] [role=tab]:focus .tab-label{box-shadow:var(--inner-focus-ring)}.pane-tabs [role=tablist] [role=tab]:not(.sel):hover{background-color:rgba(154,165,177,.15)}.pane-tabs [role=tablist] [role=tab].sel{--highlight-color:var(--gray-500);--tab-label-color:var(--text-color);background-color:var(--white);box-shadow:inset 0 2px 0 var(--highlight-color),0 0 0 1px rgba(51,64,77,.1),0 2px 12px rgba(205,216,228,.5);cursor:default;position:relative;z-index:1}body.ltr .pane-tabs [role=tablist] [role=tab] span[data-icon]{margin-left:4px}body.rtl .pane-tabs [role=tablist] [role=tab] span[data-icon]{margin-right:4px}body.ltr .pane-tabs:first-child [role=tablist] [role=tab]:first-child,body.ltr .pane-tabs:first-child [role=tablist] [role=tab]:first-child .tab-label{border-top-left-radius:var(--large-border-radius)}body.rtl .pane-tabs:first-child [role=tablist] [role=tab]:first-child,body.rtl .pane-tabs:first-child [role=tablist] [role=tab]:first-child .tab-label{border-top-right-radius:var(--large-border-radius)}.pane-tabs .menubtn{margin:0 var(--xl)}.details{--spacing:var(--l);padding:0 var(--padding) var(--spacing)}.details .field,.details .meta,.details hr{margin-left:var(--neg-padding);margin-right:var(--neg-padding)}.details .meta{margin-bottom:var(--spacing)}.details .meta:not(.read-only){background-color:var(--gray-050)!important}.details .meta.read-only{color:var(--medium-text-color)}.details .meta.read-only>.data{-webkit-align-items:baseline;align-items:baseline;min-height:auto}.details .meta.read-only>.data>.heading,.details .meta.read-only>.data>.value{padding:6px 0}.details .meta.read-only>.data:first-child>.heading,.details .meta.read-only>.data:first-child>.value{padding-top:0}.details .meta.read-only>.data:last-child>.heading,.details .meta.read-only>.data:last-child>.value{padding-bottom:0}.details .meta.warning{background-color:var(--yellow-050)!important;box-shadow:0 0 0 1px var(--yellow-300),0 2px 12px rgba(205,216,228,.5);color:var(--text-color)!important;padding-bottom:var(--m);padding-top:var(--m)}.details .meta.warning p{margin-bottom:5px}.details .meta.warning .btn{background-color:var(--yellow-300)}.details .meta.warning .btn:focus,.details .meta.warning .btn:hover{background-color:#f8d02e}.details .meta.warning .btn:active{background-color:#f8ca15}.details .meta>.data,.details .meta>.field{margin:0 var(--neg-padding)!important}.details .meta>.data>.heading,.details .meta>.data>.heading>label,.details .meta>.field>.heading,.details .meta>.field>.heading>label{color:var(--gray-600)}body.ltr .details .meta>.field>.status-badge{left:0}body.rtl .details .meta>.field>.status-badge{right:0}.details .meta .text::-webkit-input-placeholder{color:var(--gray-500)}.details .meta .datewrapper .text+div[data-icon],.details .meta .text::placeholder,.details .meta .timewrapper .text+div[data-icon]{color:var(--gray-500)}body.ltr .details .meta .ui-datepicker{margin:0 0 0 -8px}body.rtl .details .meta .ui-datepicker{margin:0 -8px 0 0}.details hr{border-top-color:var(--hairline-color);margin:var(--spacing) 0}.details input::-webkit-input-placeholder,.details textarea::-webkit-input-placeholder{color:var(--gray-500)}.details input::placeholder,.details textarea::placeholder{color:var(--gray-500)}.details .text{background-color:transparent!important;resize:none}.details>.field>.heading>label,.details>fieldset>legend{color:var(--gray-600);font-weight:400;margin-top:0}.details>fieldset{margin:0 0 var(--spacing)}.details>fieldset>legend{margin-bottom:5px}.details>.field{margin:0 0 var(--spacing)}.details>.field>.heading{margin-top:0}.details>.field>.input>.text.fullwidth{background-color:var(--gray-050)!important;border:none;margin:0 var(--neg-padding);padding-left:var(--padding);padding-right:var(--padding);width:calc(100% + var(--padding) + var(--padding))}.details>.text{border-radius:var(--large-border-radius);margin-bottom:var(--spacing)}.details>.text:not(:focus){border-color:rgba(96,125,159,.4)}.meta{overflow:visible;padding:0 var(--padding)}.meta>.data,.meta>.field,.meta>.flex-fields>.data,.meta>.flex-fields>.field{-webkit-align-items:center;align-items:center;box-sizing:border-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-webkit-justify-content:space-between;justify-content:space-between;margin:0 var(--neg-padding)!important;min-height:50px;padding:0 var(--padding);-o-transition:padding-left .1s linear,padding-right .1s linear;transition:padding-left .1s linear,padding-right .1s linear}body.ltr .meta>.data.nested,body.ltr .meta>.field.nested,body.ltr .meta>.flex-fields>.data.nested,body.ltr .meta>.flex-fields>.field.nested{padding-left:38px}body.rtl .meta>.data.nested,body.rtl .meta>.field.nested,body.rtl .meta>.flex-fields>.data.nested,body.rtl .meta>.flex-fields>.field.nested{padding-right:38px}.meta>.data.add,.meta>.field.add,.meta>.flex-fields>.data.add,.meta>.flex-fields>.field.add{background-color:#ebf2fa}.meta>.data.add:before,.meta>.field.add:before,.meta>.flex-fields>.data.add:before,.meta>.flex-fields>.field.add:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;color:var(--light-text-color);content:"plus";direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);position:absolute;text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle;width:31px}body.ltr .meta>.data.add:before,body.ltr .meta>.field.add:before,body.ltr .meta>.flex-fields>.data.add:before,body.ltr .meta>.flex-fields>.field.add:before{left:0}body.rtl .meta>.data.add:before,body.rtl .meta>.field.add:before,body.rtl .meta>.flex-fields>.data.add:before,body.rtl .meta>.flex-fields>.field.add:before{right:0}body.ltr .meta>.data.add:before,body.ltr .meta>.field.add:before,body.ltr .meta>.flex-fields>.data.add:before,body.ltr .meta>.flex-fields>.field.add:before{text-align:right}body.rtl .meta>.data.add:before,body.rtl .meta>.field.add:before,body.rtl .meta>.flex-fields>.data.add:before,body.rtl .meta>.flex-fields>.field.add:before{text-align:left}.meta>.data.add .input,.meta>.field.add .input,.meta>.flex-fields>.data.add .input,.meta>.flex-fields>.field.add .input{width:100%}.meta>.data>.heading,.meta>.field>.heading,.meta>.flex-fields>.data>.heading,.meta>.flex-fields>.field>.heading{margin:0}@media screen and (min-width:400px){.meta>.data>.heading,.meta>.field>.heading,.meta>.flex-fields>.data>.heading,.meta>.flex-fields>.field>.heading{-webkit-flex:0 0 104px;flex:0 0 104px;line-height:18px}body.ltr .meta>.data>.heading,body.ltr .meta>.field>.heading,body.ltr .meta>.flex-fields>.data>.heading,body.ltr .meta>.flex-fields>.field>.heading{margin-right:var(--s)}body.rtl .meta>.data>.heading,body.rtl .meta>.field>.heading,body.rtl .meta>.flex-fields>.data>.heading,body.rtl .meta>.flex-fields>.field>.heading{margin-left:var(--s)}}.meta>.data.lightswitch-field>.heading,.meta>.field.lightswitch-field>.heading,.meta>.flex-fields>.data.lightswitch-field>.heading,.meta>.flex-fields>.field.lightswitch-field>.heading{-webkit-flex:1;flex:1}.meta>.data>.input .flex,.meta>.field>.input .flex,.meta>.flex-fields>.data>.input .flex,.meta>.flex-fields>.field>.input .flex{-webkit-flex-wrap:nowrap;flex-wrap:nowrap}.meta>.data>.input .flex>*,.meta>.field>.input .flex>*,.meta>.flex-fields>.data>.input .flex>*,.meta>.flex-fields>.field>.input .flex>*{margin-bottom:0}.meta>.field>.heading,.meta>.flex-fields>.field>.heading{padding-top:var(--s)}@media screen and (min-width:400px){.meta>.field>.heading,.meta>.flex-fields>.field>.heading{padding:14px 0}}.meta>.field>.heading>.copytextbtn,.meta>.flex-fields>.field>.heading>.copytextbtn{display:none}.meta>.data>.heading,.meta>.flex-fields>.data>.heading{padding:var(--s) 0}.meta>.data>.heading,.meta>.field>.heading>label,.meta>.flex-fields>.data>.heading,.meta>.flex-fields>.field>.heading>label{color:var(--medium-text-color)}.meta>.data>.value,.meta>.field>.input,.meta>.flex-fields>.data>.value,.meta>.flex-fields>.field>.input{padding:var(--s) 0;width:100%}@media screen and (min-width:400px){.meta>.data>.value,.meta>.field>.input,.meta>.flex-fields>.data>.value,.meta>.flex-fields>.field>.input{width:calc(100% - 112px)}}.meta>.data>.value,.meta>.flex-fields>.data>.value{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex}.meta>.data>.value>[data-icon=draft],.meta>.flex-fields>.data>.value>[data-icon=draft]{margin-top:-2px}body.ltr .meta>.data>.value>[data-icon=draft],body.ltr .meta>.flex-fields>.data>.value>[data-icon=draft]{margin-right:8px}body.rtl .meta>.data>.value>[data-icon=draft],body.rtl .meta>.flex-fields>.data>.value>[data-icon=draft]{margin-left:8px}.meta>.field.lightswitch-field>.input,.meta>.flex-fields>.field.lightswitch-field>.input{-webkit-flex:0;flex:0;width:auto}.meta>.field.has-errors,.meta>.flex-fields>.field.has-errors{border:1px solid var(--error-color)!important}.meta>.field.has-errors:first-child,.meta>.flex-fields>.field.has-errors:first-child{border-top-left-radius:var(--large-border-radius);border-top-right-radius:var(--large-border-radius)}.meta>.field.has-errors:last-child,.meta>.flex-fields>.field.has-errors:last-child{border-bottom-left-radius:var(--large-border-radius);border-bottom-right-radius:var(--large-border-radius)}.meta>.field.has-errors+.field,.meta>.flex-fields>.field.has-errors+.field{border-top:none!important}.meta>.field>.heading>label,.meta>.field>.heading>legend,.meta>.flex-fields>.field>.heading>label,.meta>.flex-fields>.field>.heading>legend{font-weight:400}.meta>.field>.input>.datetimewrapper>.datewrapper>.text,.meta>.field>.input>.datetimewrapper>.timewrapper>.text,.meta>.field>.input>.datewrapper>.text,.meta>.field>.input>.flex>.text,.meta>.field>.input>.flex>.textwrapper>.text,.meta>.field>.input>.text,.meta>.field>.input>.timewrapper>.text,.meta>.flex-fields>.field>.input>.datetimewrapper>.datewrapper>.text,.meta>.flex-fields>.field>.input>.datetimewrapper>.timewrapper>.text,.meta>.flex-fields>.field>.input>.datewrapper>.text,.meta>.flex-fields>.field>.input>.flex>.text,.meta>.flex-fields>.field>.input>.flex>.textwrapper>.text,.meta>.flex-fields>.field>.input>.text,.meta>.flex-fields>.field>.input>.timewrapper>.text{background-color:transparent;border:none!important;border-radius:0;display:block;margin:calc(var(--s)*-1) 0;padding:14px 0}.meta>.field>.input>.datetimewrapper>.datewrapper,.meta>.field>.input>.datetimewrapper>.timewrapper,.meta>.field>.input>.datewrapper,.meta>.field>.input>.timewrapper,.meta>.flex-fields>.field>.input>.datetimewrapper>.datewrapper,.meta>.flex-fields>.field>.input>.datetimewrapper>.timewrapper,.meta>.flex-fields>.field>.input>.datewrapper,.meta>.flex-fields>.field>.input>.timewrapper{background-color:transparent}body.ltr .meta>.field>.input>.datetimewrapper>.datewrapper .text+div[data-icon],body.ltr .meta>.field>.input>.datetimewrapper>.timewrapper .text+div[data-icon],body.ltr .meta>.field>.input>.datewrapper .text+div[data-icon],body.ltr .meta>.field>.input>.timewrapper .text+div[data-icon],body.ltr .meta>.flex-fields>.field>.input>.datetimewrapper>.datewrapper .text+div[data-icon],body.ltr .meta>.flex-fields>.field>.input>.datetimewrapper>.timewrapper .text+div[data-icon],body.ltr .meta>.flex-fields>.field>.input>.datewrapper .text+div[data-icon],body.ltr .meta>.flex-fields>.field>.input>.timewrapper .text+div[data-icon]{left:0}body.rtl .meta>.field>.input>.datetimewrapper>.datewrapper .text+div[data-icon],body.rtl .meta>.field>.input>.datetimewrapper>.timewrapper .text+div[data-icon],body.rtl .meta>.field>.input>.datewrapper .text+div[data-icon],body.rtl .meta>.field>.input>.timewrapper .text+div[data-icon],body.rtl .meta>.flex-fields>.field>.input>.datetimewrapper>.datewrapper .text+div[data-icon],body.rtl .meta>.flex-fields>.field>.input>.datetimewrapper>.timewrapper .text+div[data-icon],body.rtl .meta>.flex-fields>.field>.input>.datewrapper .text+div[data-icon],body.rtl .meta>.flex-fields>.field>.input>.timewrapper .text+div[data-icon]{right:0}.meta>.field>.input>.datetimewrapper>.datewrapper,.meta>.flex-fields>.field>.input>.datetimewrapper>.datewrapper{width:55%}.meta>.field>.input>.datetimewrapper>.timewrapper,.meta>.flex-fields>.field>.input>.datetimewrapper>.timewrapper{width:45%}body.ltr .meta>.field>.input>.datetimewrapper>.clear-btn,body.ltr .meta>.flex-fields>.field>.input>.datetimewrapper>.clear-btn{margin-right:-24px}body.rtl .meta>.field>.input>.datetimewrapper>.clear-btn,body.rtl .meta>.flex-fields>.field>.input>.datetimewrapper>.clear-btn{margin-left:-24px}.meta>.field>.input>.datewrapper,.meta>.field>.input>.timewrapper,.meta>.flex-fields>.field>.input>.datewrapper,.meta>.flex-fields>.field>.input>.timewrapper{display:block;width:100%}.meta>.field>ul.errors,.meta>.flex-fields>.field>ul.errors{list-style-type:none;margin:0;padding:0 0 6px;width:100%}body.ltr .meta>.field>.clear-btn,body.ltr .meta>.flex-fields>.field>.clear-btn{margin-right:var(--neg-padding)}body.rtl .meta>.field>.clear-btn,body.rtl .meta>.flex-fields>.field>.clear-btn{margin-left:var(--neg-padding)}.meta>.field:not(:first-child),.meta>.flex-fields+.field{border-top:1px solid var(--hairline-color)}.meta>.flex-fields blockquote.note,.meta>.flex-fields h2{background-color:#ebf2fa;margin:0 -24px!important;padding:14px 24px}.meta>.flex-fields blockquote.note{border:none;border-radius:0}.meta>.flex-fields hr{margin:0 -24px}.meta>.field>.input>.select{background-color:transparent;border-radius:0;box-shadow:none;display:block;margin:calc(var(--s)*-1) 0;width:100%}body.ltr .meta>.field>.input>.select:after{right:0}body.rtl .meta>.field>.input>.select:after{left:0}.meta>.field>.input>.select+.spinner{position:absolute;top:calc(50% - 17px)}body.ltr .meta>.field>.input>.select+.spinner{right:-24px}body.rtl .meta>.field>.input>.select+.spinner{left:-24px}.meta>.field>.input>.select select{background-color:transparent;width:100%}body.ltr .meta>.field>.input>.select select{padding:var(--s) 12px var(--s) 0}body.rtl .meta>.field>.input>.select select{padding:var(--s) 0 var(--s) 12px}.body{position:relative}.hud,.modal,.slideout,.slideout-container{box-sizing:border-box;z-index:100}.hud .body,.modal{background-color:#fff;border-radius:5px;box-shadow:0 25px 100px rgba(31,41,51,.5)}.slideout-shade{opacity:0;-o-transition:opacity .25s linear;transition:opacity .25s linear}.slideout-shade.so-visible{opacity:1}.slideout-container{height:100vh;height:-webkit-fill-available;left:0;pointer-events:none;position:fixed;top:0;width:100vw}body.has-debug-toolbar .slideout-container{height:calc(100vh - 42px)}.slideout{background-color:var(--white);box-shadow:0 0 0 1px rgba(123,135,147,.25),0 25px 100px rgba(31,41,51,.5)!important;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;overflow:hidden;padding:24px var(--padding);pointer-events:all;position:absolute}.slideout.so-mobile{--padding:14px;--neg-padding:-14px;height:100%;left:0;-o-transition:top .25s linear;transition:top .25s linear;width:100%;will-change:top}.slideout:not(.so-mobile){border-radius:var(--large-border-radius);height:calc(100% - 16px);top:8px;width:calc(50% - 8px)}@media screen and (prefers-reduced-motion:no-preference){body.ltr .slideout:not(.so-mobile){-o-transition:left .25s linear;transition:left .25s linear;will-change:left}body.rtl .slideout:not(.so-mobile){-o-transition:right .25s linear;transition:right .25s linear;will-change:right}}.slideout>.pane-header{z-index:2}.slideout>.pane-header>.so-toolbar{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;gap:var(--s);min-height:34px}.slideout>.pane-header>.so-toolbar>.pane-tabs{-webkit-flex:1;flex:1;width:1px}body.ltr .slideout>.pane-header>.so-toolbar>.pane-tabs{margin-right:0}body.rtl .slideout>.pane-header>.so-toolbar>.pane-tabs{margin-left:0}.slideout.so-mobile>.pane-header{padding-left:10px;padding-right:10px}.slideout>.so-body{-webkit-flex:1;flex:1;margin:-24px var(--neg-padding) 0;overflow:hidden auto;padding:24px var(--padding);position:relative}.slideout>.so-body>.so-sidebar{background:#fff;background-color:var(--gray-100);box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);box-sizing:border-box;height:100%;max-width:100%;overflow:hidden auto;padding:0 var(--padding) var(--spacing);position:absolute;top:0;width:350px;z-index:1}.slideout>.so-body>.so-sidebar:focus{box-shadow:var(--focus-ring)}body.ltr .slideout>.so-body>.so-sidebar{-o-transition:right .25s linear;transition:right .25s linear}body.rtl .slideout>.so-body>.so-sidebar{-o-transition:left .25s linear;transition:left .25s linear}.slideout>.so-body>.so-sidebar>.preview-thumb-container{height:auto;margin:0 var(--neg-padding);min-height:54px}.slideout>.so-body>.so-sidebar>.preview-thumb-container+.pane-header{border-radius:0}.slideout>.so-body>.so-sidebar .image-actions.is-mobile{margin:calc(var(--spacing)/2) 0 var(--spacing)}.slideout>.so-body>.so-sidebar>.meta.read-only:first-child{margin-top:var(--padding)}.slideout>.so-body>.so-sidebar>.meta.warning{border-bottom:1px solid var(--yellow-300);box-shadow:none}.slideout>.so-body>.so-sidebar>.field>.input>.text.fullwidth{border-radius:0}.slideout>.so-body>.so-sidebar .notes{padding-bottom:var(--m);padding-top:var(--m)}.slideout>.so-footer{background:#fff;background-color:var(--gray-050);box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;gap:8px;-webkit-justify-content:space-between;justify-content:space-between;margin:0 var(--neg-padding) -24px;padding:8px var(--padding);position:relative;z-index:3}.slideout>.so-footer:focus{box-shadow:var(--focus-ring)}.slideout>.so-footer>.so-extra{border-bottom:1px solid var(--hairline-color);-webkit-flex:0 0 100%;flex:0 0 100%;margin:0 var(--neg-padding);padding:0 var(--padding) 8px}@media(min-width:1536px){.slideout.has-sidebar .pane-header:not(.so-visible){display:none}.slideout.has-sidebar .sidebar-btn{display:none}.slideout.has-sidebar .so-body{display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;overflow:hidden;padding:0}.slideout.has-sidebar .so-body>.so-content{box-sizing:border-box;height:100%;overflow:hidden auto;padding:24px;position:relative;width:calc(100% - 350px);z-index:2}body.ltr .slideout.has-sidebar .so-body>.so-content{border-right:1px solid var(--gray-200)}body.rtl .slideout.has-sidebar .so-body>.so-content{border-left:1px solid var(--gray-200)}.slideout.has-sidebar .so-body>.so-sidebar{box-shadow:none;display:block!important;height:100%;left:auto!important;position:relative;right:auto!important;top:auto}.slideout>.so-footer>.so-extra{border:none;-webkit-flex:auto 0 1;flex:auto 0 1;margin:0;padding:0}}.body:after,.footer:after,.header:after,.hud-footer:after,.hud-header:after{clear:both;content:"";display:block;height:0;visibility:hidden}.footer,.header,.hud-footer,.hud-header{background-color:var(--gray-100);box-sizing:border-box;position:relative;z-index:1}.header,.hud-header{border-radius:var(--large-border-radius) var(--large-border-radius) 0 0;box-shadow:inset 0 -1px 0 var(--hairline-color);padding:24px}.header h1,.hud-header h1{margin:0}.footer,.hud-footer{border-radius:0 0 var(--large-border-radius) var(--large-border-radius);box-shadow:inset 0 1px 0 var(--hairline-color);padding:var(--s) var(--xl)}.footer.flex>*,.hud-footer.flex>*{margin-bottom:0}.hud .main,.modal .body{box-sizing:border-box;overflow:hidden;padding:24px}.modal .body .header,.pane .header{margin:-24px -24px 24px}.modal .body .footer,.pane .footer{margin:24px -24px -24px}.hud-shade,.modal-shade,.slideout-shade{display:none;height:100%;left:0;position:fixed;top:0;width:100%;z-index:100}.modal-shade:not(.dark),.slideout-shade:not(.dark){background-color:rgba(123,135,147,.35)!important}.modal-shade.dark,.slideout-shade.dark{background-color:rgba(31,41,51,.5)!important}.modal{overflow:hidden;position:fixed}.modal:not(.fitted):not(.fullscreen){height:66%;min-height:400px;min-width:600px;width:66%}.modal.fitted{height:auto;min-height:0;min-width:0;width:auto}.modal.fullscreen{border-radius:0;height:100%;width:100%}body.ltr .modal.alert .body{padding-left:76px}body.rtl .modal.alert .body{padding-right:76px}.modal.alert .body:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;color:var(--light-text-color);content:"alert";direction:ltr;display:inline-block;font-family:Craft;font-size:40px;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}body.ltr .modal.alert .body:before{margin:-6px 0 0 -58px}body.rtl .modal.alert .body:before{margin:-6px -58px 0 0}body.ltr .modal.alert .body:before{float:left}body.rtl .modal.alert .body:before{float:right}body.ltr .modal.secure .body{padding-left:76px}body.rtl .modal.secure .body{padding-right:76px}.modal.secure .body:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;color:var(--light-text-color);content:"secure";direction:ltr;display:inline-block;font-family:Craft;font-size:58px;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}body.ltr .modal.secure .body:before{margin:-14px 0 0 -56px}body.rtl .modal.secure .body:before{margin:-14px -56px 0 0}body.ltr .modal.secure .body:before{float:left}body.rtl .modal.secure .body:before{float:right}.modal .resizehandle{bottom:0;cursor:nwse-resize;height:24px;padding:var(--xs);position:absolute;width:24px;z-index:1}body.ltr .modal .resizehandle{right:0}body.rtl .modal .resizehandle{left:0}.modal .resizehandle path{fill:var(--ui-control-color)}.hud,body.ltr .modal .resizehandle .rtl,body.rtl .modal .resizehandle .ltr{display:none}.hud{position:absolute;top:0}.hud.has-footer .tip-bottom{background-image:url(../images/hudtip_bottom_gray.png)}.hud .tip{background:no-repeat 0 0;position:absolute;z-index:101}.hud .tip-left{background-image:url(../images/hudtip_left.png);height:30px;left:-15px;width:15px}.hud .tip-top{background-image:url(../images/hudtip_top.png);height:15px;top:-15px;width:30px}.hud .tip-right{background-image:url(../images/hudtip_right.png);height:30px;right:-15px;width:15px}.hud .tip-bottom{background-image:url(../images/hudtip_bottom.png);bottom:-15px;height:15px;width:30px}.hud .hud-footer,.hud .hud-header{padding:var(--s) var(--xl)}.hud .body{overflow:hidden}.hud .body ::-webkit-scrollbar{-webkit-appearance:none;appearance:none}.hud .body ::-webkit-scrollbar:vertical{width:11px}.hud .body ::-webkit-scrollbar:horizontal{height:11px}.hud .body ::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.5);border:2px solid transparent;border-radius:8px}.hud .body ::-webkit-scrollbar-track{background-color:var(--gray-050)}.preview-thumb-container{-webkit-align-items:center;align-items:center;background-color:var(--gray-900);display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;height:190px;margin:0 var(--neg-padding) var(--spacing);position:relative}.preview-thumb-container.checkered img{background-color:var(--white);background-image:-o-linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(315deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),-o-linear-gradient(315deg,transparent 75%,var(--gray-100) 75%);background-image:linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),linear-gradient(135deg,var(--gray-100) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),linear-gradient(135deg,transparent 75%,var(--gray-100) 75%);background-position:0 0,8.5px 0,8.5px -8.5px,0 8.5px;-o-background-size:17px 17px;background-size:17px 17px}.preview-thumb-container.editable{cursor:pointer}.preview-thumb-container.loading:after{background-color:rgba(31,41,51,.8);content:"";display:block;font-size:0;height:100%;left:0;position:absolute;top:0;width:100%}.preview-thumb-container.loading .spinner{color:var(--white);z-index:1}#details .preview-thumb-container{border-radius:var(--large-border-radius);overflow:hidden}.preview-thumb-container .preview-thumb{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;height:100%;width:100%}.preview-thumb-container .preview-thumb img{display:block;max-height:190px;max-width:100%}.image-actions.is-mobile{display:grid;grid-template-columns:1fr 1fr;margin:calc(var(--spacing)/2*-1) var(--neg-padding) var(--spacing)}.button-fade .buttons{margin:0;opacity:0;position:absolute;top:10px;-o-transition:opacity .1s linear;transition:opacity .1s linear}body.ltr .button-fade .buttons{right:10px}body.rtl .button-fade .buttons{left:10px}.button-fade .buttons .btn{--ui-control-color:var(--white);--ui-control-hover-color:var(--white);--ui-control-active-color:var(--white);--interaction-background-color:var(--gray-700);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;--light-color:var(--white);--dark-color:var(--gray-800);--focus-ring:0 0 0 3px var(--light-color),0 0 0 6px var(--dark-color);background-color:var(--gray-600);color:var(--white);font-weight:500}.button-fade .buttons .btn:hover{background-color:var(--interaction-background-color)!important}.button-fade .buttons .btn:not(.disabled):not(.loading):not(.dashed).focus,.button-fade .buttons .btn:not(.disabled):not(.loading):not(.dashed):focus,.button-fade .buttons .btn:not(.disabled):not(.loading):not(.dashed):hover{background-color:var(--interaction-background-color)}.button-fade:focus-within .buttons,.button-fade:hover .buttons{opacity:1}.elementselectormodal{--content-padding:24px;padding-bottom:50px;-webkit-user-select:none;user-select:none}.elementselectormodal .body{height:100%;position:relative}.elementselectormodal .body .spinner.big{left:50%;margin:-24px 0 0 -24px;position:absolute;top:50%}.elementselectormodal .body .content{height:calc(100% + 48px)}.elementselectormodal .body .content .sidebar{height:100%;overflow:auto;padding:var(--content-padding) 0;position:absolute;top:0}body.ltr .elementselectormodal .body .content .sidebar{margin-left:-249px}body.rtl .elementselectormodal .body .content .sidebar{margin-right:-249px}.elementselectormodal .body .content .main{box-sizing:border-box;height:100%;margin:-24px;overflow:auto;padding:var(--content-padding);position:relative}.elementselectormodal .body .content .main .elements.busy{min-height:calc(100% - 48px)}.elementselectormodal .body .content .main .elements .tableview table .element{display:inline-block}.elementselectormodal .body .content .main .elements .tableview table tr.disabled{color:var(--gray-200);opacity:1}.elementselectormodal .body .content .main .elements .tableview table tr.disabled .element{opacity:.25}.elementselectormodal .body .content .main .elements .tableview table tr td,.elementselectormodal .body .content .main .elements .tableview table tr th{cursor:default}body.ltr .elementselectormodal .body .content .main .elements .tableview table tr td:first-child{padding-left:7px}body.rtl .elementselectormodal .body .content .main .elements .tableview table tr td:first-child{padding-right:7px}.elementselectormodal .body .content .main .elements .structure .row{margin-top:1px}.elementselectormodal .footer{bottom:0;box-sizing:border-box;left:0;margin:0;position:absolute;width:100%}body.ltr .elementselectormodal .footer .spinner{float:right}body.rtl .elementselectormodal .footer .spinner{float:left}body.ltr .elementselectormodal .footer .spinner{margin-right:-24px}body.rtl .elementselectormodal .footer .spinner{margin-left:-24px}.customize-sources-modal .main-header,.elementselectormodal .main-header{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;margin-bottom:var(--s)}.customize-sources-modal .main-heading,.elementselectormodal .main-heading{margin-bottom:0}.customize-sources-modal .nav-toggle,.elementselectormodal .nav-toggle{color:var(--ui-control-color);height:var(--touch-target-size);width:var(--touch-target-size)}body.ltr .customize-sources-modal .nav-toggle,body.ltr .elementselectormodal .nav-toggle{margin-left:4px}body.rtl .customize-sources-modal .nav-toggle,body.rtl .elementselectormodal .nav-toggle{margin-right:4px}.customize-sources-modal .nav-toggle:hover,.elementselectormodal .nav-toggle:hover{color:var(--gray-500)}.customize-sources-modal .sidebar-header,.elementselectormodal .sidebar-header{display:-webkit-flex;display:flex;-webkit-justify-content:flex-end;justify-content:flex-end;margin-bottom:var(--s);padding:0 var(--s)}.customize-sources-modal .nav-close,.elementselectormodal .nav-close{height:var(--touch-target-size);width:var(--touch-target-size)}.element-hud-form .buttons{position:relative}.element-hud-form .buttons .spinner{position:absolute;top:0}body.ltr .element-hud-form .buttons .spinner{right:-24px}body.rtl .element-hud-form .buttons .spinner{left:-24px}.element-index-view-menu{max-width:calc(100% - 20px);padding:0!important;width:400px}.element-index-view-menu .meta{padding-bottom:var(--s);padding-top:var(--s)}.element-index-view-menu .table-columns-field{-webkit-align-items:flex-start;align-items:flex-start}.element-index-view-menu .table-columns-field .input{padding:13px 0}.element-index-view-menu .menu-footer{background-color:var(--gray-050);margin:0!important;padding:var(--s) var(--xl)!important}body.ltr .element-index-view-menu-table-column .icon.move{margin-right:10px}body.rtl .element-index-view-menu-table-column .icon.move{margin-left:10px}.sort-field .input .flex .btngroup .btn{width:42px}.sort-field .input .flex .flex-grow{max-width:calc(100% - 85px - var(--s))}@media screen and (max-width:350px){.sort-field .input .flex{-webkit-flex-direction:column;flex-direction:column}.sort-field .input .flex>*{width:100%}.sort-field .input .flex .flex-grow{max-width:none}}.element-filter-hud.loading .body{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center;padding:50px}.element-filter-hud .body,.element-filter-hud .main{overflow:visible}.address-cards{display:grid;gap:var(--m) var(--m);grid-auto-rows:minmax(0,1fr);grid-template-columns:repeat(1,minmax(0,1fr))}.so-content .address-cards{grid-template-columns:repeat(1,minmax(0,1fr))!important}.address-cards__add-btn{height:auto;min-height:8rem;padding:1rem;width:100%}.address-card.error{border:1px solid #cf1124}.address-card.error:hover{border-color:#cf1124}@media(min-width:1024px){.address-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1280px){.address-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.so-content .address-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(min-width:1536px){.address-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}.address-card{border:1px solid #eee;border-radius:.375rem;min-height:4rem;padding:1rem}.address-card:hover{background-color:#fafafa;border-color:#ddd;cursor:pointer}.address-card .address-card-header{display:-webkit-flex;display:flex;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-justify-content:space-between;justify-content:space-between}.address-card .address-card-header-actions{display:-webkit-flex;display:flex;-webkit-justify-content:flex-end;justify-content:flex-end}.address-card .address-card-label{background:#e6f1fe;border-radius:.25rem;color:#2563eb;font-size:.75rem;font-weight:500;margin-bottom:.75rem;padding:.125rem .5rem;text-transform:uppercase}.ltr .address-card .address-card-label{margin-right:.5rem}.rtl .address-card .address-card-label{margin-left:.5rem}.loginmodalshade,.logoutwarningmodalshade{z-index:101}#elevatedsessionmodal,#loginmodal,#logoutwarningmodal,.prompt{width:500px}#loginmodal,#logoutwarningmodal{z-index:101}.prompt{height:auto;min-height:auto}.deleteusermodal .content-summary{background-color:var(--gray-050);margin:-24px -24px 24px;padding:24px}.deleteusermodal .options label{display:inline-block;line-height:30px}.deleteusermodal .elementselect{display:inline-block;vertical-align:middle}body.ltr .deleteusermodal .elementselect{margin-left:10px}body.rtl .deleteusermodal .elementselect{margin-right:10px}body.ltr .deleteusermodal .buttons .spinner{margin-right:-20px}body.rtl .deleteusermodal .buttons .spinner{margin-left:-20px}.dropdownsettingsmodal{height:auto;max-width:400px;min-height:0;min-width:0;width:auto}.dropdownsettingsmodal .body{max-height:100%;overflow-y:auto}.previewmodal.zilch{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center;padding:100px 0}.menu,.ui-datepicker,.ui-timepicker-list{background:#fff;border-radius:4px;box-shadow:0 0 0 1px rgba(31,41,51,.1),0 5px 20px rgba(31,41,51,.25);overflow:auto;padding:0 14px;-webkit-user-select:none;user-select:none;z-index:100}.ui-datepicker,.ui-timepicker-list{padding:0}.menu{display:none;position:absolute}.menu h6:first-child{margin-top:14px!important}body.ltr .menu ul.padded li .menu-option,body.ltr .menu ul.padded li a{padding-left:24px}body.rtl .menu ul.padded li .menu-option,body.rtl .menu ul.padded li a{padding-right:24px}.menu ul.padded li .menu-option.icon:before,.menu ul.padded li .menu-option.sel:before,.menu ul.padded li .menu-option[data-icon]:before,.menu ul.padded li a.icon:before,.menu ul.padded li a.sel:before,.menu ul.padded li a[data-icon]:before{color:var(--ui-control-color);font-size:14px}body.ltr .menu ul.padded li .menu-option.icon:before,body.ltr .menu ul.padded li .menu-option.sel:before,body.ltr .menu ul.padded li .menu-option[data-icon]:before,body.ltr .menu ul.padded li a.icon:before,body.ltr .menu ul.padded li a.sel:before,body.ltr .menu ul.padded li a[data-icon]:before{float:left}body.rtl .menu ul.padded li .menu-option.icon:before,body.rtl .menu ul.padded li .menu-option.sel:before,body.rtl .menu ul.padded li .menu-option[data-icon]:before,body.rtl .menu ul.padded li a.icon:before,body.rtl .menu ul.padded li a.sel:before,body.rtl .menu ul.padded li a[data-icon]:before{float:right}body.ltr .menu ul.padded li .menu-option.icon:before,body.ltr .menu ul.padded li .menu-option.sel:before,body.ltr .menu ul.padded li .menu-option[data-icon]:before,body.ltr .menu ul.padded li a.icon:before,body.ltr .menu ul.padded li a.sel:before,body.ltr .menu ul.padded li a[data-icon]:before{margin:3px 0 0 -17px}body.rtl .menu ul.padded li .menu-option.icon:before,body.rtl .menu ul.padded li .menu-option.sel:before,body.rtl .menu ul.padded li .menu-option[data-icon]:before,body.rtl .menu ul.padded li a.icon:before,body.rtl .menu ul.padded li a.sel:before,body.rtl .menu ul.padded li a[data-icon]:before{margin:3px -17px 0 0}.menu ul.padded li .menu-option.icon.error:before,.menu ul.padded li .menu-option.sel.error:before,.menu ul.padded li .menu-option[data-icon].error:before,.menu ul.padded li a.icon.error:before,.menu ul.padded li a.sel.error:before,.menu ul.padded li a[data-icon].error:before{color:var(--error-color)}.menu ul.padded li .menu-option.sel:not([data-icon]):before,.menu ul.padded li a.sel:not([data-icon]):before{content:"check"}.menu ul li .menu-option,.menu ul li a{-webkit-appearance:none;color:#3f4d5a;cursor:default;font-size:14px;margin:0 -14px;padding:10px 14px;text-decoration:none;white-space:nowrap}.menu ul li .menu-option:not(.flex),.menu ul li a:not(.flex){box-sizing:border-box;display:table!important;width:calc(100% + 28px)}body.ltr .menu ul li .menu-option:not(.flex),body.ltr .menu ul li a:not(.flex){text-align:left}body.rtl .menu ul li .menu-option:not(.flex),body.rtl .menu ul li a:not(.flex){text-align:right}.menu ul li .menu-option.sel,.menu ul li a.sel{cursor:default}.menu ul li .menu-option .shortcut,.menu ul li a .shortcut{border-radius:var(--medium-border-radius);box-shadow:0 0 0 1px rgba(81,95,108,.25),0 1px 3px -1px rgba(81,95,108,.5);padding:0 4px}body.ltr .menu ul li .menu-option .shortcut,body.ltr .menu ul li a .shortcut{float:right}body.rtl .menu ul li .menu-option .shortcut,body.rtl .menu ul li a .shortcut{float:left}body.ltr .menu ul li .menu-option .shortcut,body.ltr .menu ul li a .shortcut{margin-left:14px}body.rtl .menu ul li .menu-option .shortcut,body.rtl .menu ul li a .shortcut{margin-right:14px}.menu>.flex{margin-bottom:10px;margin-top:10px;position:relative}body.ltr .menu>.flex.padded{margin-left:-14px}body.rtl .menu>.flex.padded{margin-right:-14px}body.ltr .menu>.flex.padded{padding-left:24px}body.rtl .menu>.flex.padded{padding-right:24px}.menu>.flex.padded.sel:before{color:var(--light-text-color);content:"check";font-size:14px;position:absolute;top:36px}body.ltr .menu>.flex.padded.sel:before{left:7px}body.rtl .menu>.flex.padded.sel:before{right:7px}.menu hr{margin:5px -14px}.menu .go:after{color:inherit}.menu span.icon,.menubtn span.icon{color:var(--ui-control-color);display:inline-block;font-size:14px;margin-top:-1px;text-align:center;width:10px}body.ltr .menu span.icon,body.ltr .menubtn span.icon{margin-right:10px}body.rtl .menu span.icon,body.rtl .menubtn span.icon{margin-left:10px}.menu:not(.menu--disclosure) ul li a:not(.sel):not(.disabled):hover,.menu:not(.menu--disclosure):not(:hover) ul li a:not(.disabled).hover{--text-color:var(--white);--light-text-color:var(--gray-100);--ui-control-color:var(--gray-050);--ui-control-hover-color:var(--gray-100);--ui-control-active-color:var(--gray-100);background-color:#606d7b;color:#fff}.menu:not(.menu--disclosure) ul li a:not(.sel):not(.disabled):hover span.icon,.menu:not(.menu--disclosure) ul li a:not(.sel):not(.disabled):hover:before,.menu:not(.menu--disclosure):not(:hover) ul li a:not(.disabled).hover span.icon,.menu:not(.menu--disclosure):not(:hover) ul li a:not(.disabled).hover:before{color:var(--menu-option-active-color)}.menu:not(.menu--disclosure) ul li a:not(.sel):not(.disabled):hover.error,.menu:not(.menu--disclosure):not(:hover) ul li a:not(.disabled).hover.error{color:var(--menu-option-active-color)!important}body.ltr .menu h6.padded,body.ltr .menu hr.padded{margin-left:10px}body.rtl .menu h6.padded,body.rtl .menu hr.padded{margin-right:10px}.menu--disclosure ul li>.menu-option:hover,.menu--disclosure ul li>a:hover{background-color:#f3f7fc;color:#3f4d5a}body.reduce-focus-visibility .menu--disclosure ul li>.menu-option:focus-visible,body.reduce-focus-visibility .menu--disclosure ul li>a:focus-visible,body:not(.reduce-focus-visibility) .menu--disclosure ul li>.menu-option:focus,body:not(.reduce-focus-visibility) .menu--disclosure ul li>a:focus{box-shadow:inset 0 0 0 3px hsla(var(--dark-focus-hsl),.7)}.tagselect .elements{display:inline}.tagselect .element.small{clear:none}.tagselect .add{display:inline-block;position:relative;width:12em;z-index:1}body.ltr .tagselect .add{margin:7px 7px 0 0}body.rtl .tagselect .add{margin:7px 0 0 7px}body.ltr .tagselect .add .text{padding-right:30px}body.rtl .tagselect .add .text{padding-left:30px}.tagselect .add .spinner{position:absolute;top:0}body.ltr .tagselect .add .spinner{right:5px}body.rtl .tagselect .add .spinner{left:5px}body.ltr .tagselect.elementselect .element,body.rtl .tagselect.elementselect .element{display:inline-block;float:none!important}body.ltr .tagmenu ul li a{padding-left:26px}body.rtl .tagmenu ul li a{padding-right:26px}body.ltr .tagmenu ul li a:before{float:left}body.rtl .tagmenu ul li a:before{float:right}body.ltr .tagmenu ul li a:before{margin:3px 0 0 -18px}body.rtl .tagmenu ul li a:before{margin:3px -18px 0 0}.shadow-box{border:1px solid var(--gray-200);border-radius:var(--large-border-radius);box-shadow:0 1px 5px -1px rgba(31,41,51,.2)}table.editable,table.shadow-box{border-collapse:separate;border-spacing:0}table.editable caption+tbody tr:first-child td:first-child,table.editable caption+tbody tr:first-child td:first-child.disabled:after,table.editable caption+tbody tr:first-child th:first-child,table.editable caption+tbody tr:first-child th:first-child.disabled:after,table.editable tbody:first-child tr:first-child td:first-child,table.editable tbody:first-child tr:first-child td:first-child.disabled:after,table.editable tbody:first-child tr:first-child th:first-child,table.editable tbody:first-child tr:first-child th:first-child.disabled:after,table.editable thead tr:first-child td:first-child,table.editable thead tr:first-child td:first-child.disabled:after,table.editable thead tr:first-child th:first-child,table.editable thead tr:first-child th:first-child.disabled:after,table.shadow-box caption+tbody tr:first-child td:first-child,table.shadow-box caption+tbody tr:first-child td:first-child.disabled:after,table.shadow-box caption+tbody tr:first-child th:first-child,table.shadow-box caption+tbody tr:first-child th:first-child.disabled:after,table.shadow-box tbody:first-child tr:first-child td:first-child,table.shadow-box tbody:first-child tr:first-child td:first-child.disabled:after,table.shadow-box tbody:first-child tr:first-child th:first-child,table.shadow-box tbody:first-child tr:first-child th:first-child.disabled:after,table.shadow-box thead tr:first-child td:first-child,table.shadow-box thead tr:first-child td:first-child.disabled:after,table.shadow-box thead tr:first-child th:first-child,table.shadow-box thead tr:first-child th:first-child.disabled:after{border-top-left-radius:var(--medium-border-radius)}table.editable caption+tbody tr:first-child td:last-child,table.editable caption+tbody tr:first-child td:last-child.disabled:after,table.editable caption+tbody tr:first-child th:last-child,table.editable caption+tbody tr:first-child th:last-child.disabled:after,table.editable tbody:first-child tr:first-child td:last-child,table.editable tbody:first-child tr:first-child td:last-child.disabled:after,table.editable tbody:first-child tr:first-child th:last-child,table.editable tbody:first-child tr:first-child th:last-child.disabled:after,table.editable thead tr:first-child td:last-child,table.editable thead tr:first-child td:last-child.disabled:after,table.editable thead tr:first-child th:last-child,table.editable thead tr:first-child th:last-child.disabled:after,table.shadow-box caption+tbody tr:first-child td:last-child,table.shadow-box caption+tbody tr:first-child td:last-child.disabled:after,table.shadow-box caption+tbody tr:first-child th:last-child,table.shadow-box caption+tbody tr:first-child th:last-child.disabled:after,table.shadow-box tbody:first-child tr:first-child td:last-child,table.shadow-box tbody:first-child tr:first-child td:last-child.disabled:after,table.shadow-box tbody:first-child tr:first-child th:last-child,table.shadow-box tbody:first-child tr:first-child th:last-child.disabled:after,table.shadow-box thead tr:first-child td:last-child,table.shadow-box thead tr:first-child td:last-child.disabled:after,table.shadow-box thead tr:first-child th:last-child,table.shadow-box thead tr:first-child th:last-child.disabled:after{border-top-right-radius:var(--medium-border-radius)}table.editable tbody:last-child tr:last-child td:first-child,table.editable tbody:last-child tr:last-child td:first-child.disabled:after,table.editable tbody:last-child tr:last-child th:first-child,table.editable tbody:last-child tr:last-child th:first-child.disabled:after,table.editable thead:last-child tr:last-child td:first-child,table.editable thead:last-child tr:last-child td:first-child.disabled:after,table.editable thead:last-child tr:last-child th:first-child,table.editable thead:last-child tr:last-child th:first-child.disabled:after,table.shadow-box tbody:last-child tr:last-child td:first-child,table.shadow-box tbody:last-child tr:last-child td:first-child.disabled:after,table.shadow-box tbody:last-child tr:last-child th:first-child,table.shadow-box tbody:last-child tr:last-child th:first-child.disabled:after,table.shadow-box thead:last-child tr:last-child td:first-child,table.shadow-box thead:last-child tr:last-child td:first-child.disabled:after,table.shadow-box thead:last-child tr:last-child th:first-child,table.shadow-box thead:last-child tr:last-child th:first-child.disabled:after{border-bottom-left-radius:calc(var(--large-border-radius) - 1px)}table.editable tbody:last-child tr:last-child td:last-child,table.editable tbody:last-child tr:last-child td:last-child.disabled:after,table.editable tbody:last-child tr:last-child th:last-child,table.editable tbody:last-child tr:last-child th:last-child.disabled:after,table.editable thead:last-child tr:last-child td:last-child,table.editable thead:last-child tr:last-child td:last-child.disabled:after,table.editable thead:last-child tr:last-child th:last-child,table.editable thead:last-child tr:last-child th:last-child.disabled:after,table.shadow-box tbody:last-child tr:last-child td:last-child,table.shadow-box tbody:last-child tr:last-child td:last-child.disabled:after,table.shadow-box tbody:last-child tr:last-child th:last-child,table.shadow-box tbody:last-child tr:last-child th:last-child.disabled:after,table.shadow-box thead:last-child tr:last-child td:last-child,table.shadow-box thead:last-child tr:last-child td:last-child.disabled:after,table.shadow-box thead:last-child tr:last-child th:last-child,table.shadow-box thead:last-child tr:last-child th:last-child.disabled:after{border-bottom-right-radius:calc(var(--large-border-radius) - 1px)}.border-box,.matrix-configurator>.field>.input,.multiselect>select,.passwordwrapper,.selectize.multiselect .selectize-input,.text{background-clip:padding-box;background-color:#fbfcfe;border:1px solid rgba(96,125,159,.25);border-radius:3px}.border-box.focus,.passwordwrapper.focus,.selectize.multiselect .selectize-input.focus,.text.focus{box-shadow:var(--focus-ring)}body.reduce-focus-visibility .border-box:focus-visible,body.reduce-focus-visibility .passwordwrapper:focus-visible,body.reduce-focus-visibility .selectize.multiselect .selectize-input:focus-visible,body.reduce-focus-visibility .text:focus-visible,body:not(.reduce-focus-visibility) .border-box:focus,body:not(.reduce-focus-visibility) .passwordwrapper:focus,body:not(.reduce-focus-visibility) .selectize.multiselect .selectize-input:focus,body:not(.reduce-focus-visibility) .text:focus{box-shadow:var(--focus-ring)}.selectize.multiselect .selectize-input,.text>input,.text>textarea,input.text,table.editable textarea,textarea.text{-webkit-appearance:none;appearance:none;box-sizing:border-box;color:var(--text-color);font-size:14px;line-height:20px;min-height:3px}.selectize.multiselect .selectize-input{line-height:18px}textarea.text.fullwidth{display:block}.multitext .multitextrow:after{clear:both;content:"";display:block;height:0;visibility:hidden}body.ltr .multitext .multitextrow:first-child .text:first-child{border-top-left-radius:var(--medium-border-radius)}body.rtl .multitext .multitextrow:first-child .text:first-child{border-top-right-radius:var(--medium-border-radius)}body.ltr .multitext .multitextrow:first-child .text:last-child{border-top-right-radius:var(--medium-border-radius)}body.rtl .multitext .multitextrow:first-child .text:last-child{border-top-left-radius:var(--medium-border-radius)}body.ltr .multitext .multitextrow:last-child .text:first-child{border-bottom-left-radius:var(--medium-border-radius)}body.rtl .multitext .multitextrow:last-child .text:first-child{border-bottom-right-radius:var(--medium-border-radius)}body.ltr .multitext .multitextrow:last-child .text:last-child{border-bottom-right-radius:var(--medium-border-radius)}body.rtl .multitext .multitextrow:last-child .text:last-child{border-bottom-left-radius:var(--medium-border-radius)}.multitext .multitextrow:not(:first-child) .text{margin-top:-1px}.multitext .multitextrow .text{border-radius:0;box-sizing:border-box;float:left}body.ltr .multitext .multitextrow .text:not(:first-child){margin-left:-1px}body.rtl .multitext .multitextrow .text:not(:first-child){margin-right:-1px}.multitext .multitextrow .text:first-child:last-child{width:100%}.multitext .multitextrow .text:first-child:nth-last-child(2){width:50%}.multitext .multitextrow .text:first-child:nth-last-child(2)~.text{width:calc(50% + 1px)}.multitext .multitextrow .text.error{position:relative;z-index:1}.multitext .multitextrow .selectize.multiselect .selectize-input.focus,.multitext .multitextrow .text:focus{position:relative;z-index:2}.chars-left{color:var(--light-text-color);position:relative}body.ltr .chars-left{float:right}body.rtl .chars-left{float:left}body.ltr .chars-left{margin:-27px 7px 0 0}body.rtl .chars-left{margin:-27px 0 0 7px}.input.ltr>.chars-left{float:right!important;margin-right:7px!important}.input.rtl>.chars-left{float:left!important;margin-left:7px!important}.chars-left.negative-chars-left{color:var(--error-color)}.field,fieldset{margin:24px 0;position:relative}.flex>.field,.flex>fieldset{margin-bottom:0;margin-top:0}.field{min-inline-size:0}.field>.status-badge{content:"";cursor:help;height:100%;position:absolute;top:0;width:2px}body.ltr .field>.status-badge{left:0}body.rtl .field>.status-badge{right:0}.field>.status-badge.modified{background-color:var(--blue-600)}.field>.status-badge.outdated{background-color:var(--pending-color)}.field>.heading{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;margin-bottom:5px;margin-top:-5px;position:relative}.field>.heading>label,.field>.heading>legend{color:var(--medium-dark-text-color);font-weight:700}.field>.heading>label code,.field>.heading>legend code{font-size:1em!important}body.ltr .field>.heading>label .info,body.ltr .field>.heading>legend .info{margin-left:5px}body.rtl .field>.heading>label .info,body.rtl .field>.heading>legend .info{margin-right:5px}.field>.heading .t9n-indicator{color:var(--light-text-color)}body.ltr .field>.heading .t9n-indicator{margin-left:7px}body.rtl .field>.heading .t9n-indicator{margin-right:7px}.field>.heading+.instructions{margin-top:-3px}.field>.heading>.instructions{width:100%}.field>.instructions{margin-bottom:5px}.field>.input{position:relative}.field>.input:after{clear:both;content:"";display:block;height:0;visibility:hidden}.field>.input+.instructions,.field>.notice,.field>.warning{margin:5px 0 0}.checkboxfield .instructions,.field>.heading>.instructions,.field>.instructions{color:var(--medium-text-color)}.checkboxfield .instructions embed,.checkboxfield .instructions iframe,.checkboxfield .instructions img,.checkboxfield .instructions video,.field>.heading>.instructions embed,.field>.heading>.instructions iframe,.field>.heading>.instructions img,.field>.heading>.instructions video,.field>.instructions embed,.field>.instructions iframe,.field>.instructions img,.field>.instructions video{max-width:100%!important}.checkboxfield .instructions ol,.checkboxfield .instructions ul,.field>.heading>.instructions ol,.field>.heading>.instructions ul,.field>.instructions ol,.field>.instructions ul{margin:1em 0}body.ltr .checkboxfield .instructions ol,body.ltr .checkboxfield .instructions ul,body.ltr .field>.heading>.instructions ol,body.ltr .field>.heading>.instructions ul,body.ltr .field>.instructions ol,body.ltr .field>.instructions ul{padding-left:2em}body.rtl .checkboxfield .instructions ol,body.rtl .checkboxfield .instructions ul,body.rtl .field>.heading>.instructions ol,body.rtl .field>.heading>.instructions ul,body.rtl .field>.instructions ol,body.rtl .field>.instructions ul{padding-right:2em}.checkboxfield .instructions ul li,.field>.heading>.instructions ul li,.field>.instructions ul li{list-style-type:disc}.checkboxfield .instructions li+li,.field>.heading>.instructions li+li,.field>.instructions li+li{margin-top:.25em}.expand-status-btn{border-radius:var(--small-border-radius);color:var(--text-color);height:17px;line-height:16px;padding:0;width:30px}body.ltr .expand-status-btn{margin-left:5px}body.rtl .expand-status-btn{margin-right:5px}.expand-status-btn:before{margin:0}.nested-fields{margin:-24px;padding:24px 24px 0}.nested-fields.hidden{display:block;height:0}.nested-fields>.field:last-child{padding-bottom:24px}input.checkbox{height:var(--checkbox-size);opacity:0;position:absolute;width:var(--checkbox-size)}div.checkbox,input.checkbox+label{clear:none;cursor:pointer;display:inline-block;height:16px;line-height:16px;position:relative}body.ltr div.checkbox,body.ltr input.checkbox+label{padding-left:21px}body.rtl div.checkbox,body.rtl input.checkbox+label{padding-right:21px}div.checkbox .info,input.checkbox+label .info{height:16px}.disabled div.checkbox,input.checkbox:disabled+label{cursor:default}body.ltr div.checkbox:empty,body.ltr input.checkbox+label:empty{padding-left:var(--checkbox-size)}body.rtl div.checkbox:empty,body.rtl input.checkbox+label:empty{padding-right:var(--checkbox-size)}div.checkbox:empty:after,input.checkbox+label:empty:after{content:"";font-size:0}div.checkbox:before,input.checkbox+label:before{background-clip:padding-box;background-color:#fbfcfe;border:1px solid rgba(96,125,159,.4);border-radius:var(--small-border-radius);box-sizing:border-box;content:"";display:block;font-size:0;height:var(--checkbox-size);position:absolute;top:0;width:var(--checkbox-size)!important}body.ltr div.checkbox:before,body.ltr input.checkbox+label:before{left:0}body.rtl div.checkbox:before,body.rtl input.checkbox+label:before{right:0}div.checkbox.disabled+label,div.checkbox.disabled:before,input.checkbox:disabled+label{opacity:.25}.sel div.checkbox:before,div.checkbox.checked:before,div.checkbox.indeterminate:before,input.checkbox:checked+label:before,input.checkbox:indeterminate+label:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;color:var(--gray-900);direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;line-height:var(--checkbox-size);opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}.sel div.checkbox:not(.indeterminate):before,div.checkbox.checked:not(.indeterminate):before,input.checkbox:checked:not(:indeterminate)+label:before{content:"check";font-size:15px}div.checkbox.indeterminate:before,input.checkbox:indeterminate+label:before{content:"minus";font-size:7px;text-align:center}body:not(.reduce-focus-visibility) :focus div.checkbox:before,body:not(.reduce-focus-visibility) input.checkbox:focus+label:before{box-shadow:var(--focus-ring)}body.reduce-focus-visibility :focus-visible div.checkbox:before,body.reduce-focus-visibility input.checkbox:focus-visible+label:before{box-shadow:var(--focus-ring)}.checkbox-icon:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;color:var(--enabled-color);content:"check";direction:ltr;display:inline-block;font-family:Craft;font-size:15px;font-style:normal;font-variant:normal;font-weight:400;line-height:1;line-height:var(--checkbox-size);opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}body.reduce-focus-visibility .monaco-mouse-cursor-text:focus-visible,body:not(.reduce-focus-visibility) .monaco-mouse-cursor-text:focus{box-shadow:none!important}fieldset .checkboxfield{margin:5px 0}.checkboxfield .instructions,.checkboxfield .notice,.checkboxfield .warning{margin-top:2px}body.ltr .checkboxfield .instructions,body.ltr .checkboxfield .notice,body.ltr .checkboxfield .warning{padding-left:21px}body.rtl .checkboxfield .instructions,body.rtl .checkboxfield .notice,body.rtl .checkboxfield .warning{padding-right:21px}input.radio{height:var(--radio-size);opacity:0;position:absolute;width:var(--radio-size)}div.radio,input.radio+label{clear:none;cursor:pointer;display:inline-block;line-height:1.7142857143;position:relative}body.ltr div.radio,body.ltr input.radio+label{padding-left:21px}body.rtl div.radio,body.rtl input.radio+label{padding-right:21px}.disabled div.radio,input.radio:disabled+label{cursor:default}body.ltr div.radio:empty,body.ltr input.radio+label:empty{padding-left:var(--radio-size)}body.rtl div.radio:empty,body.rtl input.radio+label:empty{padding-right:var(--radio-size)}div.radio:after,div.radio:before,input.radio+label:after,input.radio+label:before{background-clip:padding-box;border-radius:100%;box-sizing:border-box;content:"";display:block;position:absolute}div.radio:before,input.radio+label:before{background-color:#fbfcfe;border:1px solid rgba(96,125,159,.4);height:var(--radio-size);left:0;width:var(--radio-size)}div.radio:after,div.radio:before,input.radio+label:after,input.radio+label:before{top:50%;-webkit-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%)}div.radio:after,input.radio+label:after{height:calc(var(--radio-size) - 8px);left:4px;width:calc(var(--radio-size) - 8px)}div.radio.disabled+label,div.radio.disabled:before,input.radio:disabled+label{opacity:.25}.sel div.radio:after,div.radio.checked:after,input.radio:checked+label:after{background:var(--gray-900)}body:not(.reduce-focus-visibility) :focus div.radio:before,body:not(.reduce-focus-visibility) input.radio:focus+label:before{box-shadow:var(--focus-ring)}body.reduce-focus-visibility :focus-visible div.radio:before,body.reduce-focus-visibility input.radio:focus-visible+label:before{box-shadow:var(--focus-ring)}.multiselect>select{-webkit-appearance:none;appearance:none;color:var(--text-color);font-size:14px}body.reduce-focus-visibility .multiselect>select:focus-visible,body:not(.reduce-focus-visibility) .multiselect>select:focus{box-shadow:var(--focus-ring)}.multiselect>select option{padding:1px 8px}.selectize.multiselect .selectize-input,.text{padding:6px 9px}.text{background-color:var(--white)}.text:not(.small){box-sizing:border-box;min-height:34px}.text.small{padding:3px}.text.readable{font-size:16px;line-height:22px;padding:16px 18px}.text.readable+.chars-left{margin-top:-23px}body.ltr .text.clearable{padding-right:var(--touch-target-size)}body.rtl .text.clearable{padding-left:var(--touch-target-size)}.text input{background-color:transparent;border:none;margin:0;padding:0}.input.errors>.autosuggest-container .text,.input.errors>.border-box,.input.errors>.passwordwrapper,.input.errors>.text,.text.error{border:1px solid var(--error-color)!important}.texticon{cursor:text;min-width:130px;position:relative}.texticon.icon:before{color:var(--ui-control-color);position:absolute;top:9px}body.ltr .texticon.icon:before{left:9px}body.rtl .texticon.icon:before{right:9px}body.ltr .texticon.icon .text{padding-left:26px}body.rtl .texticon.icon .text{padding-right:26px}.texticon .clear-btn{height:var(--touch-target-size);position:absolute;top:calc((var(--touch-target-size) - 34px)/-2);width:var(--touch-target-size)}body.ltr .texticon .clear-btn{right:0}body.rtl .texticon .clear-btn{left:0}body.ltr .texticon.has-filter-btn .text{padding-right:26px}body.rtl .texticon.has-filter-btn .text{padding-left:26px}.texticon.has-filter-btn .filter-btn{border-radius:13px;cursor:pointer;font-size:14px;line-height:22px;padding:0 7px 4px;position:absolute;top:4px}body.ltr .texticon.has-filter-btn .filter-btn{right:4px}body.rtl .texticon.has-filter-btn .filter-btn{left:4px}.texticon.has-filter-btn .filter-btn:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;color:var(--medium-text-color);content:"filter";direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}.texticon.has-filter-btn .filter-btn:hover{background-color:var(--gray-100)}.texticon.has-filter-btn .filter-btn.active,.texticon.has-filter-btn .filter-btn:active{background-color:var(--gray-350)}.texticon.has-filter-btn .filter-btn.active:before,.texticon.has-filter-btn .filter-btn:active:before{color:var(--white)}body.ltr .texticon.has-filter-btn .text{padding-left:26px}body.rtl .texticon.has-filter-btn .text{padding-right:26px}body.ltr .texticon.has-filter-btn .text.clearable{padding-right:calc(30px + var(--touch-target-size))}body.rtl .texticon.has-filter-btn .text.clearable{padding-left:calc(30px + var(--touch-target-size))}body.ltr .texticon.has-filter-btn .clear-btn{right:30px}body.rtl .texticon.has-filter-btn .clear-btn{left:30px}.texthint-container{height:0;position:relative}.texthint{color:var(--light-text-color);cursor:text;position:absolute;top:-1px;width:100%}.passwordwrapper{position:relative}.passwordwrapper .password{background:transparent;border:none;box-shadow:none;padding-right:4rem}.passwordwrapper .password-toggle{bottom:0;color:var(--link-color);cursor:pointer;position:absolute;top:0}body.ltr .passwordwrapper .password-toggle{right:9px}body.rtl .passwordwrapper .password-toggle{left:9px}.passwordwrapper .password-toggle:hover{text-decoration:underline}.datetimewrapper{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row}body.ltr .datetimewrapper>.datewrapper+.timewrapper,body.ltr .datetimewrapper>.select,body.ltr .datetimewrapper>.timewrapper+.timezone{margin-left:5px}body.rtl .datetimewrapper>.datewrapper+.timewrapper,body.rtl .datetimewrapper>.select,body.rtl .datetimewrapper>.timewrapper+.timezone{margin-right:5px}.clear-btn{-webkit-align-items:center;align-items:center;background:transparent;border:none;color:var(--ui-control-color);cursor:pointer;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center;padding:0;width:24px}.clear-btn:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;content:"remove";direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}.clear-btn:hover{color:var(--ui-control-hover-color)}.clear-btn:active{color:var(--ui-control-active-color)}.close-btn{position:relative}.close-btn:after,.close-btn:before{background-color:var(--ui-control-color);content:"";height:15px;left:50%;opacity:var(--icon-opacity);position:absolute;top:50%;width:2px}.close-btn:before{-webkit-transform:translate(-50%,-50%) rotate(-45deg);-o-transform:translate(-50%,-50%) rotate(-45deg);transform:translate(-50%,-50%) rotate(-45deg)}.close-btn:after{-webkit-transform:translate(-50%,-50%) rotate(45deg);-o-transform:translate(-50%,-50%) rotate(45deg);transform:translate(-50%,-50%) rotate(45deg)}.close-btn:hover:after,.close-btn:hover:before{background-color:var(--ui-control-hover-color)}.close-btn:active:after,.close-btn:active:before{background-color:var(--ui-control-active-color)}.datewrapper,.timewrapper{display:inline-block;position:relative}.datewrapper .text,.timewrapper .text{position:relative;width:100%;z-index:1}.datewrapper .text+div[data-icon],.timewrapper .text+div[data-icon]{display:none}.datewrapper .text.empty-value+div[data-icon],.datewrapper .text:placeholder-shown+div[data-icon],.timewrapper .text.empty-value+div[data-icon],.timewrapper .text:placeholder-shown+div[data-icon]{color:var(--light-text-color);display:block;position:absolute;top:calc(50% - 12px);z-index:0}body.ltr .datewrapper .text.empty-value+div[data-icon],body.ltr .datewrapper .text:placeholder-shown+div[data-icon],body.ltr .timewrapper .text.empty-value+div[data-icon],body.ltr .timewrapper .text:placeholder-shown+div[data-icon]{left:14px}body.rtl .datewrapper .text.empty-value+div[data-icon],body.rtl .datewrapper .text:placeholder-shown+div[data-icon],body.rtl .timewrapper .text.empty-value+div[data-icon],body.rtl .timewrapper .text:placeholder-shown+div[data-icon]{right:14px}.datewrapper .text.empty-value+div[data-icon],.datewrapper .text.empty-value+div[data-icon]:before,.datewrapper .text:placeholder-shown+div[data-icon],.datewrapper .text:placeholder-shown+div[data-icon]:before,.timewrapper .text.empty-value+div[data-icon],.timewrapper .text.empty-value+div[data-icon]:before,.timewrapper .text:placeholder-shown+div[data-icon],.timewrapper .text:placeholder-shown+div[data-icon]:before{pointer-events:none;-webkit-user-select:none;user-select:none;z-index:1}.datewrapper{width:8em}.timewrapper{width:7em}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:var(--gray-400)}input::placeholder,textarea::placeholder{color:var(--gray-400)}::-ms-clear,::-ms-reveal{display:none}tr.indexingSession td{height:34px;padding:1px 10px}tr.indexingSession td.progress div.progressContainer{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-justify-content:space-between;justify-content:space-between;width:100%}tr.indexingSession td.progress div.progressContainer .progressbar{height:12px;left:0;position:relative;width:70%;z-index:1}tr.indexingSession td.progress div.progressContainer div.progressInfo{width:20%}.select:not(.selectize),.select:not(.selectize) select{border-radius:5px;position:relative;white-space:nowrap}.select:not(.selectize){max-width:100%;position:relative}:not(.flex)>.select:not(.selectize){display:inline-block}.select:not(.selectize):after{border:solid;border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;pointer-events:none;position:absolute;top:calc(50% - 5px);-webkit-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg);-webkit-user-select:none;user-select:none;width:7px;z-index:1}body.ltr .select:not(.selectize):after{right:9px}body.rtl .select:not(.selectize):after{left:9px}.select:not(.selectize) select{-webkit-appearance:none;appearance:none;background-color:#dfe5ec;border:none;color:#3f4d5a;display:block;font-size:14px;line-height:20px;max-width:100%;position:relative;white-space:pre}body.ltr .select:not(.selectize) select{padding:7px 22px 7px 10px}body.rtl .select:not(.selectize) select{padding:7px 10px 7px 22px}.select:not(.selectize) select::-ms-expand{display:none}.select:not(.selectize).fullwidth select{min-width:100%}.select:not(.selectize) select:hover{background-color:#cfd8e2;box-shadow:var(--focus-ring);outline-color:transparent}body.reduce-focus-visibility .select:not(.selectize) select:focus-visible,body:not(.reduce-focus-visibility) .select:not(.selectize) select:focus{background-color:#cfd8e2;box-shadow:var(--focus-ring);outline-color:transparent}.select:not(.selectize).small:after{top:9px}.select:not(.selectize).small select{font-size:11px;padding-bottom:4px!important;padding-top:4px!important}.selectize .selectize-input{background-color:transparent;border-color:inherit;box-shadow:none;display:block}.selectize.select .selectize-input:after{display:none}body .selectize-dropdown{border:none;z-index:100}.selectize.select{height:34px}.selectize.select input::-webkit-input-placeholder,.selectize.select textarea::-webkit-input-placeholder{color:var(--gray-700)}.selectize.select input::placeholder,.selectize.select textarea::placeholder{color:var(--gray-700)}.selectize.select:not(.fullwidth){width:25em}.selectize.select .selectize-control{max-width:100%;position:relative}:not(.flex)>.selectize.select .selectize-control{display:inline-block}.selectize.select .selectize-control:after{border:solid;border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;pointer-events:none;position:absolute;top:calc(50% - 5px);-webkit-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg);-webkit-user-select:none;user-select:none;width:7px;z-index:1}body.ltr .selectize.select .selectize-control:after{right:9px}body.rtl .selectize.select .selectize-control:after{left:9px}.selectize.select .selectize-input{border-radius:5px;white-space:nowrap}.selectize.select .selectize-input.focus{box-shadow:var(--focus-ring)}.selectize.select .selectize-input{-webkit-appearance:none;appearance:none;background-color:#dfe5ec;border:none;color:#3f4d5a;display:block;font-size:14px;line-height:20px;max-width:100%;position:relative}body.ltr .selectize.select .selectize-input{padding:7px 22px 7px 10px}body.rtl .selectize.select .selectize-input{padding:7px 10px 7px 22px}.selectize.select .selectize-input::-ms-expand{display:none}.selectize.select .selectize-control,.selectize.select .selectize-input{width:100%}.selectize.multiselect .selectize-input{min-height:34px;padding-bottom:3px}.selectize.multiselect .selectize-input.focus{box-shadow:var(--focus-ring)}.selectize.multiselect .selectize-input>.item{background-color:#e4edf6;border-radius:3px;color:#3f4d5a;display:inline-block;display:-webkit-inline-flex;display:inline-flex;-webkit-flex-direction:row;flex-direction:row;font-size:12px;line-height:14px;padding:3px 7px;padding:3px 7px!important}.selectize.multiselect .selectize-input>.item.active{background-color:#cdd8e4}.selectize.multiselect .selectize-input>.item>.remove{border-left:none;color:var(--ui-control-color);font-size:0;padding:0;position:static}body.ltr .selectize.multiselect .selectize-input>.item>.remove{margin:-1px -3px 0 3px}body.rtl .selectize.multiselect .selectize-input>.item>.remove{margin:-1px 3px 0 -3px}.selectize.multiselect .selectize-input>.item>.remove:hover{background-color:transparent;color:var(--ui-control-hover-color)}.selectize.multiselect .selectize-input>.item>.remove:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;content:"remove";direction:ltr;display:inline-block;font-family:Craft;font-size:14px;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}body .selectize-dropdown{margin-top:1px}body .selectize-dropdown-content{background:#fff;border-radius:4px;box-shadow:0 0 0 1px rgba(31,41,51,.1),0 5px 20px rgba(31,41,51,.25);overflow:auto;padding:0 14px;-webkit-user-select:none;user-select:none;z-index:100}body .selectize-dropdown-content .option{min-height:18px}body .selectize-dropdown-content>div[data-value=new]:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;content:"plus";direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;margin-right:5px;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}body .selectize-dropdown-content>div[data-value=new]:after{content:"…"}body .selectize-dropdown .optgroup-header,body .selectize-dropdown [data-selectable]{color:#3f4d5a;margin:0 -14px;padding:10px 14px;text-decoration:none;white-space:nowrap}body .selectize-dropdown .optgroup-header{color:#606d7b;font-size:11px;line-height:1.2;margin:0;padding:4px 0;text-transform:uppercase}body .selectize-dropdown .active{background-color:#606d7b;color:#fff}body .selectize-dropdown .active .light{color:inherit!important}.ui-datepicker{-padding:10px;height:242px;position:fixed;top:-300px;width:210px;z-index:101!important}body.ltr .ui-datepicker{margin-left:1px}body.rtl .ui-datepicker{margin-right:1px}.ui-datepicker-header{padding:8px 8px 4px}body.ltr .ui-datepicker-prev{float:left}body.ltr .ui-datepicker-next,body.rtl .ui-datepicker-prev{float:right}body.rtl .ui-datepicker-next{float:left}.ui-datepicker-next span,.ui-datepicker-prev span{display:none}.ui-datepicker-next,.ui-datepicker-prev{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;height:20px;-webkit-justify-content:center;justify-content:center;width:20px}.ui-datepicker-next:hover:after,.ui-datepicker-prev:hover:after{border-color:var(--link-color)}.ui-datepicker-prev:after{border:solid;border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;width:7px}body.ltr .ui-datepicker-prev:after{-webkit-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg)}body.rtl .ui-datepicker-prev:after{-webkit-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}.ui-datepicker-next:after{border:solid;border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;width:7px}body.ltr .ui-datepicker-next:after{-webkit-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}body.rtl .ui-datepicker-next:after{-webkit-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg)}.ui-datepicker-title{text-align:center}.ui-datepicker-calendar td,.ui-datepicker-calendar th{padding:2px!important}.ui-datepicker-calendar td a,.ui-datepicker-calendar th span{color:var(--text-color);display:block;line-height:26px;text-align:center;width:1.625rem}.ui-datepicker-calendar th span{color:var(--medium-text-color);font-weight:400}.ui-datepicker-calendar td a{border-radius:2px}.ui-datepicker-calendar td a:hover{background-color:var(--light-sel-color);text-decoration:none}.ui-datepicker-calendar td a.ui-state-active{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;background-color:var(--dark-sel-color);color:var(--white);cursor:default;font-weight:500}.ui-datepicker-calendar td.ui-datepicker-today a{border-radius:13px;box-shadow:inset 0 0 0 2px var(--light-sel-color)}.ui-timepicker-wrapper{z-index:101}.ui-timepicker-list{height:210px;overflow-y:auto;width:calc(14px + 6em);z-index:100}body.ltr .ui-timepicker-list{margin-left:1px}body.rtl .ui-timepicker-list{margin-right:1px}.ui-timepicker-list li{cursor:pointer;white-space:nowrap}body.ltr .ui-timepicker-list li{padding:2px 0 2px 14px}body.rtl .ui-timepicker-list li{padding:2px 14px 2px 0}.ui-timepicker-list li:hover{background-color:var(--light-sel-color)}.ui-timepicker-list li.ui-timepicker-selected{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;background-color:var(--dark-sel-color);color:var(--white);cursor:default;font-weight:500}.slide-picker{display:-webkit-flex;display:flex;height:15px;white-space:nowrap}.slide-picker a{background-image:none;border:1px solid var(--hairline-color);box-sizing:border-box;display:inline-block;height:13px;margin-bottom:1px;margin-left:0;margin-top:1px;width:7px}body.ltr .slide-picker a{border-left:none}body.rtl .slide-picker a{border-right:none}.slide-picker a:first-child{width:8px}body.ltr .slide-picker a:first-child{border-left:1px solid var(--gray-400)!important}body.rtl .slide-picker a:first-child{border-right:1px solid var(--gray-400)!important}.slide-picker:hover a.active-hover,.slide-picker:not(:hover) a.active{border-bottom-color:var(--gray-400);border-top-color:var(--gray-400);height:15px;margin-bottom:0;margin-top:0}body.ltr .slide-picker:hover a.active-hover:first-child,body.ltr .slide-picker:not(:hover) a.active:first-child{border-left:1px solid var(--gray-400)}body.rtl .slide-picker:hover a.active-hover:first-child,body.rtl .slide-picker:not(:hover) a.active:first-child{border-right:1px solid var(--gray-400)}body.ltr .slide-picker:hover a.active-hover:first-child,body.ltr .slide-picker:not(:hover) a.active:first-child{border-top-left-radius:var(--small-border-radius)}body.rtl .slide-picker:hover a.active-hover:first-child,body.rtl .slide-picker:not(:hover) a.active:first-child{border-top-right-radius:var(--small-border-radius)}body.ltr .slide-picker:hover a.active-hover:first-child,body.ltr .slide-picker:not(:hover) a.active:first-child{border-bottom-left-radius:var(--small-border-radius)}body.rtl .slide-picker:hover a.active-hover:first-child,body.rtl .slide-picker:not(:hover) a.active:first-child{border-bottom-right-radius:var(--small-border-radius)}body.ltr .slide-picker:hover a.last-active-hover,body.ltr .slide-picker:not(:hover) a.last-active{border-right:1px solid var(--gray-400)}body.rtl .slide-picker:hover a.last-active-hover,body.rtl .slide-picker:not(:hover) a.last-active{border-left:1px solid var(--gray-400)}body.ltr .slide-picker:hover a.last-active-hover,body.ltr .slide-picker:not(:hover) a.last-active{border-top-right-radius:var(--small-border-radius)}body.rtl .slide-picker:hover a.last-active-hover,body.rtl .slide-picker:not(:hover) a.last-active{border-top-left-radius:var(--small-border-radius)}body.ltr .slide-picker:hover a.last-active-hover,body.ltr .slide-picker:not(:hover) a.last-active{border-bottom-right-radius:var(--small-border-radius)}body.rtl .slide-picker:hover a.last-active-hover,body.rtl .slide-picker:not(:hover) a.last-active{border-bottom-left-radius:var(--small-border-radius)}.slide-picker:focus a.active{background-color:var(--light-sel-color)}ul.errors{list-style-type:square;margin-top:5px}body.ltr ul.errors{padding-left:20px}body.rtl ul.errors{padding-right:20px}ul.errors li{color:var(--error-color)}.message-container{height:100%;position:absolute;top:0;width:100%;z-index:100}body.ltr .message-container{left:0}body.rtl .message-container{right:0}.message-container.no-access{background-color:rgba(31,41,51,.5)}.message-container .pane{box-shadow:0 25px 100px rgba(31,41,51,.5);margin-left:auto;margin-right:auto;margin-top:-33px!important;top:50%;width:320px}.autosuggest-container{position:relative}.autosuggest__results-container{background-color:var(--white);border-radius:var(--large-border-radius);box-shadow:0 1px 5px -1px rgba(31,41,51,.2);box-sizing:border-box;font-family:system-ui,BlinkMacSystemFont,-apple-system,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1em!important;padding:0 14px;position:absolute;text-align:left;width:100%;z-index:2}.autosuggest__results-container .autosuggest__results-before{color:#606d7b;font-size:11px;line-height:1.2;margin:14px 0 3px;margin-top:14px!important;text-transform:uppercase}.autosuggest__results-container .autosuggest__results-item{color:#3f4d5a;margin:0 -14px;overflow:hidden;padding:10px 14px;text-decoration:none;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}.autosuggest__results-container .autosuggest__results-item.autosuggest__results-item--highlighted,.autosuggest__results-container .autosuggest__results-item:hover{background-color:#606d7b;color:#fff;cursor:pointer}.matrix-configurator>.field{max-width:none}.matrix-configurator>.field>.input{-webkit-align-items:stretch;align-items:stretch;background-color:var(--gray-050);box-shadow:none;display:-webkit-flex;display:flex}.matrix-configurator .mc-sidebar{box-sizing:border-box}.matrix-configurator .mc-sidebar .mc-col-items{margin-top:-1px;padding-top:1px}.matrix-configurator .mc-sidebar.block-types{width:200px}body.ltr .matrix-configurator .mc-sidebar.block-types{border-top-left-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-sidebar.block-types{border-top-right-radius:var(--small-border-radius)}body.ltr .matrix-configurator .mc-sidebar.block-types{border-bottom-left-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-sidebar.block-types{border-bottom-right-radius:var(--small-border-radius)}body.ltr .matrix-configurator .mc-sidebar.block-types>.mc-col-inner-container>.mc-col-heading{border-top-left-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-sidebar.block-types>.mc-col-inner-container>.mc-col-heading{border-top-right-radius:var(--small-border-radius)}.matrix-configurator .mc-sidebar.block-types>.mc-col-inner-container>.mc-col-items .btn{margin:14px}.matrix-configurator .mc-sidebar.mc-fields{background:#fff;box-shadow:-1px 0 0 0 rgba(31,41,51,.1),1px 0 0 0 rgba(31,41,51,.1);width:240px;z-index:1}.matrix-configurator .mc-sidebar.mc-fields .mc-col-items{padding:14px}.matrix-configurator .mc-sidebar.mc-fields .mc-col-items .btn{margin-top:14px}.matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-heading,.matrix-configurator .mc-sidebar>.mc-col-inner-container>.mc-col-heading{background-color:var(--gray-050);background-image:-o-linear-gradient(rgba(51,64,77,0),rgba(51,64,77,.05));background-image:linear-gradient(rgba(51,64,77,0),rgba(51,64,77,.05));border-bottom:1px solid var(--hairline-color);margin:0;padding:7px 14px 6px}.matrix-configurator .mc-field-settings{-webkit-flex:1;flex:1;position:relative}body.ltr .matrix-configurator .mc-field-settings{border-top-right-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-field-settings{border-top-left-radius:var(--small-border-radius)}body.ltr .matrix-configurator .mc-field-settings{border-bottom-right-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-field-settings{border-bottom-left-radius:var(--small-border-radius)}.matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-heading{padding-left:24px;padding-right:24px}body.ltr .matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-heading{border-top-right-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-heading{border-top-left-radius:var(--small-border-radius)}.matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-items{padding:24px}.matrixconfigitem{-webkit-align-items:center;align-items:center;box-sizing:border-box;cursor:default;display:-webkit-flex;display:flex;min-height:48px;position:relative;-webkit-user-select:none;user-select:none}.matrixconfigitem.mci-blocktype{background-color:var(--gray-100);border:solid var(--hairline-color);border-width:1px 0;margin-top:-1px;padding:8px 14px}.matrixconfigitem.mci-blocktype.sel{background-color:var(--gray-200);z-index:1}.matrixconfigitem.mci-field{background-color:var(--gray-100);border-radius:var(--medium-border-radius);padding:7px 10px}.matrixconfigitem.mci-field.sel{background-color:var(--gray-200)}.matrixconfigitem.mci-field.sel .slide-picker:focus a.active{background-color:#5f6c79}.matrixconfigitem.mci-field+.mci-field{margin-top:7px}.matrixconfigitem .mci-name{-webkit-flex:1;flex:1;overflow:hidden}.matrixconfigitem .mci-name .smalltext,.matrixconfigitem .mci-name h4{overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}.matrixconfigitem .mci-name h4{color:var(--text-color);font-weight:400;margin-bottom:2px}.matrixconfigitem .mci-name h4.mci-required:after{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;content:"asterisk";direction:ltr;display:inline-block;font-family:Craft;font-size:8px;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}body.ltr .matrixconfigitem .mci-name h4.mci-required:after{margin:-2px 0 0 4px}body.rtl .matrixconfigitem .mci-name h4.mci-required:after{margin:-2px 4px 0 0}.matrixconfigitem.error .mci-name h4{color:var(--error-color)}body.ltr .matrixconfigitem .icon,body.ltr .matrixconfigitem .slide-picker{margin-left:7px}body.rtl .matrixconfigitem .icon,body.rtl .matrixconfigitem .slide-picker{margin-right:7px}.matrixconfigitem .icon{display:block}.matrixconfigitem .icon:not(.error):before{color:var(--ui-control-color)}.matrixconfigitem .icon:not(.error):hover:before{color:var(--ui-control-hover-color)}.matrixconfigitem .icon:not(.error):active:before{color:var(--ui-control-active-color)}.matrixconfigitem .icon.error:before{color:var(--error-color)}.matrix>.buttons{margin-top:10px}.matrixblock{background-color:var(--gray-050);border:1px solid var(--hairline-color);border-radius:var(--large-border-radius);margin-bottom:10px;padding:0 var(--m) var(--m);position:relative}.matrixblock.static{padding-top:14px}.matrixblock .flex-fields{--row-gap:var(--m)!important}.matrixblock>.titlebar{word-wrap:normal;background-color:#ebf2fa;border-radius:calc(var(--large-border-radius) - 1px) calc(var(--large-border-radius) - 1px) 0 0;box-sizing:border-box;color:var(--light-text-color);cursor:default;margin:0 -14px;overflow:hidden;position:relative;-o-text-overflow:ellipsis;text-overflow:ellipsis;-webkit-user-select:none;user-select:none;white-space:nowrap;width:calc(100% + 28px)}body.ltr .matrixblock>.titlebar{padding:5px 70px 5px 35px}body.rtl .matrixblock>.titlebar{padding:5px 35px 5px 70px}.matrixblock>.titlebar:after{background-color:var(--hairline-color);bottom:-1px;content:"";display:block;height:1px;left:14px;position:absolute;width:calc(100% - 28px)}.matrixblock>.titlebar>.blocktype{color:var(--medium-text-color);display:inline}.matrixblock>.titlebar>.preview{display:inline;opacity:0;-o-transition:opacity .1s linear;transition:opacity .1s linear}body.ltr .matrixblock>.titlebar>.preview{margin-left:7px}body.rtl .matrixblock>.titlebar>.preview{margin-right:7px}.matrixblock>.titlebar>.preview span{opacity:.5}.matrixblock.disabled{opacity:1}body.ltr .matrixblock.disabled>.titlebar{padding-right:90px}body.rtl .matrixblock.disabled>.titlebar{padding-left:90px}.matrixblock.disabled>.actions>.status.off{display:block}.matrixblock.collapsed>.titlebar{border-bottom:none;border-radius:var(--titlebar-border-radius)}.matrixblock.collapsed>.titlebar>.preview{opacity:1}.matrixblock>.checkbox{position:absolute;top:7px}body.ltr .matrixblock>.checkbox{left:14px}body.rtl .matrixblock>.checkbox{right:14px}.matrixblock>.actions{-webkit-align-items:center;align-items:center;cursor:default;display:-webkit-flex;display:flex;position:absolute;top:5px}body.ltr .matrixblock>.actions{right:14px}body.rtl .matrixblock>.actions{left:14px}body.ltr .matrixblock>.actions>*{margin:0 0 0 5px}body.rtl .matrixblock>.actions>*{margin:0 5px 0 0}.matrixblock>.actions .settings{color:var(--ui-control-color);height:20px;padding:0 8px}body.ltr .matrixblock>.actions .settings:before{margin-right:0!important}body.rtl .matrixblock>.actions .settings:before{margin-left:0!important}.matrixblock>.actions .settings:not(:hover):not(:active){background-color:transparent}.matrixblock>.actions>.move{margin-top:-3px!important}.matrixblock>.actions>.status.off{display:none}.matrixblock>.actions a:not([data-action]){color:var(--dark-hairline-color);height:20px;padding:0;text-align:center;-webkit-transform:color linear .1s;-o-transform:color linear .1s;transform:color linear .1s}.matrixblock>.actions a:not([data-action]).settings:after{border-color:var(--dark-hairline-color);-webkit-transform:border-color linear .1s;-o-transform:border-color linear .1s;transform:border-color linear .1s}body.ltr .matrixblock>.actions a:not([data-action]).settings:after{margin-left:3px}body.rtl .matrixblock>.actions a:not([data-action]).settings:after{margin-right:3px}.matrixblock>.actions a:not([data-action]):hover{color:var(--link-color)}.matrixblock>.actions a:not([data-action]):hover.settings:after{border-color:var(--link-color)}.matrixblock:not(.static)>.fields{padding-top:14px}.matrixblock>.fields>.flex-fields>.field:before{display:none}.matrixblock>.buttons{height:30px;margin-top:0}.add-category-form{margin-top:24px}.add-category-form .texticon{width:200px}body.ltr .add-category-form .texticon{float:left}body.rtl .add-category-form .texticon{float:right}body.ltr .add-category-form .texticon{margin-right:5px}body.rtl .add-category-form .texticon{margin-left:5px}body.ltr .add-category-form .texticon .text{padding-right:30px}body.rtl .add-category-form .texticon .text{padding-left:30px}.add-category-form .texticon .spinner{position:absolute;top:0}body.ltr .add-category-form .texticon .spinner{right:5px}body.rtl .add-category-form .texticon .spinner{left:5px}.categoriesfield{min-height:30px;position:relative}body.ltr .categoriesfield .structure ul{margin-left:12px}body.rtl .categoriesfield .structure ul{margin-right:12px}body.sitepicker #main-content{-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;padding:30px;text-align:center}body.sitepicker #content-container{max-width:400px}.sitepicker-group li:not(:first-child) a{border-top-left-radius:0;border-top-right-radius:0;margin-top:-1px}.sitepicker-group li:not(:first-child) a:not(:hover){border-top-color:transparent}.sitepicker-group li:not(:last-child) a{border-bottom-left-radius:0;border-bottom-right-radius:0}.sitepicker-group li a{border:1px solid var(--hairline-color);border-radius:var(--medium-border-radius);box-sizing:border-box;display:block;font-size:16px;line-height:1.4;position:relative;text-align:left;width:100%}body.ltr .sitepicker-group li a{padding:9px 42px 9px 15px}body.rtl .sitepicker-group li a{padding:9px 15px 9px 42px}.sitepicker-group li a:after{font-size:14px;margin:0;padding:0;position:absolute;top:calc(50% - 7px)}body.ltr .sitepicker-group li a:after{right:12px}body.rtl .sitepicker-group li a:after{left:12px}.sitepicker-group li a:hover{border-color:var(--link-color);text-decoration:none;z-index:1}.elementselectormodal .body .main{float:left\9;width:445px\9}@media only screen and (-moz-min-device-pixel-ratio:1.5),only screen and (-o-min-device-pixel-ratio:3/2),only screen and (-webkit-min-device-pixel-ratio:1.5),only screen and (min-device-pixel-ratio:1.5),only screen and (min-resolution:1.5dppx){.structure ul li{-o-background-size:40px;background-size:40px}body.ltr .structure ul li{background-image:url(../images/branch_2x.png)}body.rtl .structure ul li{background-image:url(../images/branch_rtl_2x.png)}.hud .tip-left{background-image:url(../images/hudtip_left_2x.png);-o-background-size:15px 30px;background-size:15px 30px}.hud .tip-top{background-image:url(../images/hudtip_top_2x.png);-o-background-size:30px 15px;background-size:30px 15px}.hud .tip-right{background-image:url(../images/hudtip_right_2x.png);-o-background-size:15px 30px;background-size:15px 30px}.hud .tip-bottom{background-image:url(../images/hudtip_bottom_2x.png);-o-background-size:30px 15px;background-size:30px 15px}.hud.has-footer .tip-bottom{background-image:url(../images/hudtip_bottom_gray_2x.png)}}:root{--xs:4px;--s:8px;--m:14px;--l:18px;--xl:24px;--padding:var(--xl);--neg-padding:calc(var(--padding)*-1)}html{-webkit-text-size-adjust:100%}body,html{min-height:100vh}body :focus{box-shadow:var(--focus-ring);outline-color:transparent;outline-style:solid}.reduce-focus-visibility :focus:not(:focus-visible){box-shadow:none}.reduce-focus-visibility :focus-visible{box-shadow:var(--focus-ring)}.skip-link{height:1px;left:-10000px;margin:5px;overflow:hidden;position:absolute;top:0;width:1px;z-index:101}.skip-link:focus{background-color:var(--gray-100)!important;height:auto;left:unset;width:auto}body.ltr .skip-link:focus{left:0}body.rtl .skip-link:focus{right:0}@media only screen and (min-width:1200px){#global-skip-link{--light-color:var(--white);--dark-color:var(--gray-800);--focus-ring:0 0 0 3px var(--dark-color),0 0 0 6px var(--light-color)}}#global-container{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;min-height:100vh;position:relative}body.ltr #global-container{left:0}body.rtl #global-container{right:0}@media screen and (prefers-reduced-motion:no-preference){body.ltr #global-container{-o-transition:left .25s ease-out;transition:left .25s ease-out}body.rtl #global-container{-o-transition:right .25s ease-out;transition:right .25s ease-out}}#global-sidebar{--is-always-visible:true;-webkit-overflow-scrolling:touch;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;--focus-ring:0 0 0 1px hsl(var(--light-focus-hsl)),0 0 0 3px hsla(var(--light-focus-hsl),0.7);background-color:var(--gray-800);display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;font-weight:500;height:100vh;overflow-x:hidden;overflow-y:auto;padding:0;position:fixed;z-index:100}#global-sidebar a{color:var(--gray-100);text-decoration:none}#global-sidebar :not(.has-subnav)>a[href]:not(.sel):hover,#global-sidebar>a[href]:not(.sel):hover{background-color:#29333d}#global-sidebar :not(.has-subnav)>a:not([href]),#global-sidebar>a:not([href]){background-color:transparent;cursor:default}#global-sidebar .light{color:var(--gray-400)}@media only screen and (max-width:1199px){#global-sidebar{--is-always-visible:false}}#system-info{grid-gap:10px;-webkit-align-items:center;align-items:center;background-color:#29333d;display:grid;-webkit-flex:0 0 50px;flex:0 0 50px;-webkit-flex-direction:row;flex-direction:row;grid-template-columns:30px auto;height:50px;padding:0 10px;position:relative}#system-info:after{display:none}#system-info:focus,#system-info:hover{background-color:#1f272e!important}#site-icon{height:30px}#site-icon img,#site-icon svg{border-radius:4px;display:block;height:30px;width:30px}#site-icon svg circle,#site-icon svg ellipse,#site-icon svg line,#site-icon svg path,#site-icon svg polygon,#site-icon svg polyline,#site-icon svg rect,#site-icon svg text{fill:var(--medium-text-color);stroke-width:0}#system-name .h2,#system-name h2{-webkit-box-orient:vertical;-webkit-line-clamp:2;display:-webkit-box;margin:0;max-height:40px;overflow:hidden;position:relative;width:100%}#system-name .h2:after,#system-name h2:after{background-image:-o-linear-gradient(left,rgba(41,51,61,0),#29333d);background-image:linear-gradient(90deg,rgba(41,51,61,0),#29333d);content:"";display:block;font-size:0;position:absolute;top:0;width:var(--m)}body.ltr #system-name .h2:after,body.ltr #system-name h2:after{right:0}body.rtl #system-name .h2:after,body.rtl #system-name h2:after{left:0}#system-info:hover #system-name .h2:after,#system-info:hover #system-name h2:after{background-image:-o-linear-gradient(left,rgba(31,39,46,0),#1f272e);background-image:linear-gradient(90deg,rgba(31,39,46,0),#1f272e)}#job-icon{-webkit-align-items:flex-start;align-items:flex-start}#job-icon>span.icon{display:block;height:16px;margin-top:2px!important;position:relative;width:16px}#job-icon>span.icon>canvas{display:block;height:16px;position:absolute;width:16px}#job-icon>span.icon>canvas#job-icon-hover{opacity:0}#job-icon[href]:hover .icon>span.icon>canvas#job-icon-hover{opacity:1}#job-icon .progress-label{color:var(--gray-300);display:block;font-size:11px;line-height:1.5}#nav{-webkit-flex:1;flex:1;margin:22px 0 0;overflow:visible;padding-bottom:var(--xl)}#nav li:not(.has-subnav)>a.sel{background-color:var(--gray-100);color:var(--gray-800);opacity:1}#nav li:not(.has-subnav)>a.sel .icon{opacity:1}#nav li a{padding-left:var(--m);padding-right:var(--m);position:relative}#nav li a:focus{z-index:1}#nav li a.menubtn{line-height:26px}#nav li a.external:after{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;content:"external";direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}body.ltr #nav li a.external:after{margin-left:5px}body.rtl #nav li a.external:after{margin-right:5px}#nav li a .label,#nav li a .label span{overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}#nav li a .badge{background-color:var(--gray-200);color:var(--gray-800)}body.ltr #nav li a .badge{margin-right:0}body.rtl #nav li a .badge{margin-left:0}#nav li ul{display:block;margin-bottom:10px}#nav li ul li a{font-size:12px}body.ltr #nav li ul li a{padding:3px var(--m) 3px 42px!important}body.rtl #nav li ul li a{padding:3px 42px 3px var(--m)!important}#nav li ul li a:not(.active){color:var(--gray-200)}#global-footer{-webkit-flex-direction:column;flex-direction:column;padding:var(--m) var(--m) var(--xl)}#app-info,#global-footer{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex}#app-info{color:var(--gray-600);font-size:12px;gap:var(--s);-webkit-justify-content:center;justify-content:center;margin-top:var(--xs);text-align:center}#app-info a{text-decoration:underline}#app-info a,#app-info a.go:hover:after{color:var(--gray-600)}#edition-logo{border:1px solid var(--gray-600);border-radius:3px;box-sizing:content-box;display:-webkit-inline-flex;display:inline-flex;font-size:11px;height:1.25rem;-webkit-user-select:none;user-select:none}#edition-logo>.edition-name,#edition-logo>.edition-trial{line-height:var(--s);padding:.375rem .4375rem .3125rem}#edition-logo>.edition-name{font-weight:600;letter-spacing:1.7px;padding-right:.3125rem;text-transform:uppercase}#edition-logo>.edition-trial{background-color:var(--gray-600);border-radius:0 1px 1px 0;color:var(--gray-200);display:inline-block;letter-spacing:1px;position:relative;text-transform:lowercase}body.ltr #edition-logo>.edition-trial{margin-left:5px}body.rtl #edition-logo>.edition-trial{margin-right:5px}body.ltr #edition-logo>.edition-trial{padding-left:5px}body.rtl #edition-logo>.edition-trial{padding-right:5px}body.ltr #edition-logo>.edition-trial{padding-right:7px}body.rtl #edition-logo>.edition-trial{padding-left:7px}#edition-logo>.edition-trial:before{border-style:solid;content:"";display:block;font-size:0;height:0;position:absolute;top:0;width:0}body.ltr #edition-logo>.edition-trial:before{border-color:transparent var(--gray-600) transparent transparent;border-width:0 10px 20px 0;left:-10px}body.rtl #edition-logo>.edition-trial:before{border-color:transparent transparent transparent var(--gray-600);border-width:0 0 20px 10px;right:-10px}#devmode{background:url(../images/dev-mode.svg) repeat-x 21px 0;cursor:help;-webkit-flex:0 0 4px;flex:0 0 4px;min-height:4px;width:100%}#page-container{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-flex-grow:1;flex-grow:1}body.ltr #page-container{padding-left:226px}body.rtl #page-container{padding-right:226px}#alerts{background-color:var(--red-050);border-left:5px solid var(--error-color);color:var(--error-color);padding:11px 0;position:relative;text-align:center}#alerts li{padding:4px var(--xl)}#alerts li a{color:var(--error-color);text-decoration:underline}#alerts li a.go{border:1px solid rgba(207,17,36,.5);border-radius:var(--medium-border-radius);margin:0 2px;padding:3px 5px;text-decoration:none;white-space:nowrap}#alerts li a.go:after{color:var(--error-color)}#alerts li a.go:hover{border-color:var(--error-color)}#global-header{background:#fff;background:var(--gray-050);box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);margin-bottom:var(--m);width:100%}#global-header:focus{box-shadow:var(--focus-ring)}#global-header .flex{-webkit-align-items:center;align-items:center}#global-header .btn{--ui-control-color:var(--gray-400);--ui-control-hover-color:var(--gray-500);--ui-control-active-color:var(--gray-600)}.nav-toggle{-webkit-align-items:center;align-items:center;color:currentColor;display:-webkit-flex;display:flex;height:50px;-webkit-justify-content:center;justify-content:center;line-height:26px;text-align:center;width:36px}body.ltr .nav-toggle{margin-left:-10px}body.rtl .nav-toggle{margin-right:-10px}.nav-toggle:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;content:"menu";direction:ltr;display:inline-block;font-family:Craft;font-size:16px;font-style:normal;font-variant:normal;font-weight:400;line-height:1;line-height:0;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}.nav-toggle:hover{color:var(--gray-400)}#crumbs{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;font-size:13px;margin:0!important}#crumbs.empty{display:none}#crumbs a,#crumbs button{color:var(--light-text-color);-o-transition:color .1s linear;transition:color .1s linear}#crumbs a:hover,#crumbs button:hover{color:var(--link-color);text-decoration:none}#crumbs nav{margin:0}.breadcrumb-list{-webkit-align-items:stretch;align-items:stretch;display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;-webkit-flex-wrap:wrap;flex-wrap:wrap}.breadcrumb-list li{-webkit-align-items:center;align-items:center;display:-webkit-inline-flex;display:inline-flex}.breadcrumb-list li a,.breadcrumb-list li button{padding:15px 0}.breadcrumb-list li button{cursor:pointer}.breadcrumb-list li:after{border:solid var(--medium-hairline-color);border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;width:7px}body.ltr .breadcrumb-list li:after{margin:0 8px 0 7px}body.rtl .breadcrumb-list li:after{margin:0 7px 0 8px}body.ltr .breadcrumb-list li:after{-webkit-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}body.rtl .breadcrumb-list li:after{-webkit-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg)}.breadcrumb-list .menu--disclosure li{display:block}.breadcrumb-list .menu--disclosure li:after,li.breadcrumb-toggle-wrapper:after{content:none}#account-menu ul li a{max-width:calc(100% + 28px)!important}#announcements-btn{height:30px;padding-left:0;padding-right:0;position:relative;width:30px;width:40px}#announcements-btn:not(:hover):not(:active):not(.active){background-color:transparent}#announcements-btn:not(:active):not(.active):hover{background-color:rgba(154,165,177,.15)}#announcements-btn.unread:after{background-color:var(--blue-600);border-radius:4px;content:"";display:block;height:7px;position:absolute;top:3px;width:7px}body.ltr #announcements-btn.unread:after{right:7px}body.rtl #announcements-btn.unread:after{left:7px}#announcements-btn svg{height:22px;width:22px}#announcements-btn svg circle,#announcements-btn svg ellipse,#announcements-btn svg line,#announcements-btn svg path,#announcements-btn svg polygon,#announcements-btn svg polyline,#announcements-btn svg rect,#announcements-btn svg text{fill:var(--ui-control-color);stroke-width:0}#announcements-btn.active svg circle,#announcements-btn.active svg ellipse,#announcements-btn.active svg line,#announcements-btn.active svg path,#announcements-btn.active svg polygon,#announcements-btn.active svg polyline,#announcements-btn.active svg rect,#announcements-btn.active svg text,#announcements-btn:active svg circle,#announcements-btn:active svg ellipse,#announcements-btn:active svg line,#announcements-btn:active svg path,#announcements-btn:active svg polygon,#announcements-btn:active svg polyline,#announcements-btn:active svg rect,#announcements-btn:active svg text,#announcements-btn:hover svg circle,#announcements-btn:hover svg ellipse,#announcements-btn:hover svg line,#announcements-btn:hover svg path,#announcements-btn:hover svg polygon,#announcements-btn:hover svg polyline,#announcements-btn:hover svg rect,#announcements-btn:hover svg text{fill:var(--ui-control-active-color);stroke-width:0}#announcements{max-width:350px}#announcements .announcement:not(:first-child){margin-top:20px}#announcements .announcement .announcement-label-container{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;margin-bottom:3px;margin-top:-3px}#announcements .announcement .announcement-label-container .announcement-icon svg{display:block;height:15px;width:15px}#announcements .announcement .announcement-label-container .announcement-label{color:var(--light-text-color);font-size:12px;margin-left:5px}#announcements .announcement.unread .announcement__heading:after{background-color:var(--blue-600);border-radius:4px;content:"";display:block;height:7px;position:absolute;top:7px;width:7px}body.ltr #announcements .announcement.unread .announcement__heading:after{left:-13px}body.rtl #announcements .announcement.unread .announcement__heading:after{right:-13px}#announcements .announcement p{margin:0}#announcements .announcement__header{display:grid}#announcements .announcement__heading{margin:0 0 3px;-webkit-order:1;order:1;position:relative}#user-info{-webkit-align-items:center;align-items:center;background-color:transparent;border-radius:0;display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;height:100%;padding-bottom:5px;padding-top:5px}body.ltr #user-info{padding-right:25px}body.rtl #user-info{padding-left:25px}#user-info:after{border-color:var(--ui-control-color);-o-transition:border-color .1s linear;transition:border-color .1s linear}#user-info:hover:after{border-color:var(--ui-control-hover-color)}#user-info[aria-expanded=true]:after{border-color:var(--ui-control-active-color)}.header-photo{padding:5px 0}.header-photo img{border-radius:50%;box-shadow:0 0 0 1px rgba(31,41,51,.05),0 0 0 rgba(31,41,51,0);display:block;height:30px;max-width:none;-o-transition:box-shadow .15s linear;transition:box-shadow .15s linear;width:30px}#user-info:hover .header-photo img{box-shadow:0 0 0 1px rgba(31,41,51,.05),0 2px 10px -2px rgba(31,41,51,.3)}#main-container{-webkit-flex-grow:1;flex-grow:1;position:relative}#notifications{bottom:8px;position:fixed;width:calc(100% - 16px);z-index:101}body.ltr #notifications{left:8px}body.rtl #notifications{right:8px}@media only screen and (min-width:974px){#notifications{width:350px}}#notifications .notification{--color:var(--notice-color);background:#fff;border-radius:var(--large-border-radius);box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);box-shadow:0 0 0 1px rgba(19,26,32,.15),0 2px 12px rgba(19,26,32,.15);display:-webkit-flex;display:flex;padding:10px 14px;position:relative}#notifications .notification:focus{box-shadow:var(--focus-ring)}#notifications .notification[data-type=success]{--color:var(--success-color)}#notifications .notification[data-type=error]{--color:var(--error-color)}#notifications .notification+.notification{margin-top:12px}#notifications .notification .notification-icon{color:var(--color);font-size:18px;margin-top:-2px;width:18px}body.ltr #notifications .notification .notification-icon{margin-right:10px}body.rtl #notifications .notification .notification-icon{margin-left:10px}#notifications .notification .notification-body{display:-webkit-flex;display:flex;-webkit-flex:1;flex:1}#notifications .notification .notification-body .notification-message{font-weight:700}#notifications .notification .notification-body .notification-details{margin-top:var(--xs)}#notifications .notification .notification-body .notification-details .element{border:1px solid rgba(51,64,77,.1)}#notifications .notification .notification-close-btn{position:relative;top:-2px}body.ltr #notifications .notification .notification-close-btn{margin-left:10px}body.rtl #notifications .notification .notification-close-btn{margin-right:10px}#header-container{margin-bottom:var(--m)}#crumbs,#header{padding-left:var(--xl);padding-right:var(--xl)}@media only screen and (min-width:1200px){#primary-nav-toggle{display:none}}#global-header .flex,#header .flex{max-width:100%}#global-header .flex.flex-nowrap,#header .flex.flex-nowrap{min-width:0}#header{-webkit-align-content:stretch;align-content:stretch;-webkit-align-items:flex-start;align-items:flex-start;background-color:rgba(154,165,177,0);box-shadow:0 1px 0 rgba(51,64,77,0);box-sizing:border-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;gap:var(--s);-webkit-justify-content:space-between;justify-content:space-between;padding-bottom:var(--s);padding-top:var(--s);position:relative;-o-transition:background-color .1s linear,box-shadow .1s linear;transition:background-color .1s linear,box-shadow .1s linear;width:calc(100vw - 226px);z-index:2}body.fixed-header #header{background-color:var(--gray-100);box-shadow:inset 0 -1px 0 rgba(63,77,90,.1);position:fixed;top:0;z-index:12}@supports((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){#header{transition:background-color .1s linear,box-shadow .1s linear,-webkit-backdrop-filter .1s linear;-o-transition:background-color .1s linear,box-shadow .1s linear,backdrop-filter .1s linear;transition:background-color .1s linear,box-shadow .1s linear,backdrop-filter .1s linear;transition:background-color .1s linear,box-shadow .1s linear,backdrop-filter .1s linear,-webkit-backdrop-filter .1s linear}body.fixed-header #header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:rgba(228,237,246,.75)}}#header h1{line-height:34px;margin-bottom:0;min-width:0}#header .btngroup,#header .buttons,#header h1{margin-top:0}@media only screen and (min-width:974px){#page-title.has-toolbar{min-width:calc(226px - var(--xl) - var(--s))!important}}#toolbar{-webkit-align-items:flex-start;align-items:flex-start;-webkit-flex:1;flex:1;-webkit-justify-content:space-between;justify-content:space-between}#toolbar .icon:before,#toolbar .menubtn:after,#toolbar .texticon:before,#toolbar [data-icon-after]:after,#toolbar [data-icon]:before{color:currentColor;opacity:.8}#toolbar .text{border-radius:var(--large-border-radius)}#toolbar .text::-webkit-input-placeholder{color:var(--light-text-color)}#toolbar .text::placeholder{color:var(--light-text-color)}#toolbar .text:not(:focus){background-clip:border-box}@media only screen and (max-width:400px){#action-buttons .btngroup .btn:first-child{-webkit-flex-basis:100%;flex-basis:100%}}@media only screen and (max-width:973px){#action-buttons{margin-top:10px}}#main-content{-webkit-align-items:flex-start;align-items:flex-start;box-sizing:border-box;display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;padding:0 var(--xl) 48px;width:calc(100vw - 226px)}#main-content>.grid:only-child{-webkit-flex:1;flex:1}#sidebar-toggle-container{display:none}#sidebar-container{box-sizing:border-box;-webkit-flex:0 0 226px;flex:0 0 226px;width:226px}@media only screen and (min-width:1200px){body.ltr #sidebar-container{margin-left:calc(var(--xl)*-1)}body.rtl #sidebar-container{margin-right:calc(var(--xl)*-1)}}#sidebar{background-color:transparent;box-sizing:border-box;padding:0 31px;width:226px}#sidebar.fixed{overflow-y:auto;padding-bottom:var(--m);padding-top:var(--m);position:fixed}#sidebar nav{margin-left:-31px;margin-right:-31px}#sidebar nav li a{position:relative}#sidebar nav li a:focus{z-index:1}#sidebar nav li a:not(.sel):hover{background-color:var(--gray-200)}#content-container{-webkit-flex:1;flex:1}#main-content:not(.has-sidebar):not(.has-details) #content-container{max-width:100%;width:100%}#main-content.has-sidebar #content-container{max-width:calc(100% - 202px);width:calc(100% - 202px)}#main-content.has-details #content-container{max-width:calc(100% - 350px - var(--m));width:calc(100% - 350px - var(--m))}#content-container #main-content.has-sidebar.has-details{max-width:calc(100% - 614px);width:calc(100% - 614px)}#content-heading{margin-top:var(--xl)!important}@media only screen and (min-width:974px){#content-heading{clip:rect(0,0,0,0);border:0;height:1px;margin:0;overflow:hidden;padding:0;position:absolute;width:1px}}.content-pane{word-wrap:break-word;background:#fff;background-clip:padding-box;border-radius:var(--large-border-radius);box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);padding:var(--xl);position:relative}.content-pane:focus{box-shadow:var(--focus-ring)}.content-pane>hr{margin-left:calc(var(--xl)*-1);margin-right:calc(var(--xl)*-1)}#footer{background-color:var(--gray-050);border-radius:0 0 var(--large-border-radius) var(--large-border-radius);bottom:0;box-sizing:border-box;margin:25px calc(var(--xl)*-1) calc(var(--xl)*-1);min-height:50px;padding:var(--s) var(--xl);position:-webkit-sticky;position:sticky;z-index:1}#footer:empty{display:none}#footer.stuck{border-radius:0}@supports((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){#footer.stuck{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:rgba(228,237,246,.75)}}.has-debug-toolbar #footer{-o-transition:padding .1s linear;transition:padding .1s linear}.has-debug-toolbar #footer.stuck{padding-bottom:52px}#footer .flex>*,#footer>*{margin-bottom:0}#details-container{box-sizing:border-box;-webkit-flex:0 0 388px;flex:0 0 388px;width:388px}body.ltr #details-container{margin-right:calc(var(--xl)*-1)}body.rtl #details-container{margin-left:calc(var(--xl)*-1)}#details{box-sizing:border-box;width:388px}body.ltr #details{padding-right:var(--xl)}body.rtl #details{padding-left:var(--xl)}body.ltr #details{padding-left:var(--m)}body.rtl #details{padding-right:var(--m)}#details.fixed{overflow-y:auto;padding-top:var(--m);position:fixed}#details .details .meta{border-radius:var(--large-border-radius)}#details .details .meta:not(.read-only):not(.warning){background:#fff;box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5)}#details .details .meta:not(.read-only):not(.warning):focus{box-shadow:var(--focus-ring)}#details .details .meta.read-only{background-color:transparent!important;color:var(--medium-text-color)}#details .details .meta>.data:first-child,#details .details .meta>.field:first-child{border-top-right-radius:var(--large-border-radius)}#details .details .meta>.data:first-child,#details .details .meta>.data:first-child>.status-badge,#details .details .meta>.field:first-child,#details .details .meta>.field:first-child>.status-badge{border-top-left-radius:var(--large-border-radius)}#details .details .meta>.data:last-child,#details .details .meta>.field:last-child{border-bottom-right-radius:var(--large-border-radius)}#details .details .meta>.data:last-child,#details .details .meta>.data:last-child>.status-badge,#details .details .meta>.field:last-child,#details .details .meta>.field:last-child>.status-badge{border-bottom-left-radius:var(--large-border-radius)}#details .details>.field>.input>.text.fullwidth{background:#fff;box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5)}#details .details>.field>.input>.text.fullwidth:focus{box-shadow:var(--focus-ring)}#details .details .notes{border-radius:var(--large-border-radius);padding-bottom:var(--m);padding-top:var(--m)}@media only screen and (max-width:1199px){#global-container{width:calc(100vw + 226px)}body.ltr #global-container{left:-226px}body.rtl #global-container{right:-226px}body.ltr.showing-nav #global-container{left:0}body.rtl.showing-nav #global-container{right:0}#crumbs{display:-webkit-flex!important;display:flex!important}#header,#main-content{width:100vw}}@media only screen and (max-width:973px){#header{display:block}#header .flex:not(#toolbar){margin-top:10px}#toolbar{-webkit-flex-wrap:wrap!important;flex-wrap:wrap!important}#toolbar>*{margin-top:10px!important}body.fixed-header #header .flex:first-child{margin-top:0}#main-content{display:block}#sidebar-toggle-container{display:block;margin-bottom:var(--m)}#sidebar-toggle:after{top:0;-webkit-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}body.rtl #sidebar-toggle:after{-webkit-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg)}body.showing-sidebar #sidebar-toggle{background-color:#acbed2!important}body.showing-sidebar #sidebar-toggle:after{-webkit-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}#content-container{min-height:0!important}#details-container,#sidebar-container{width:auto!important}#details,#sidebar{max-height:none!important;overflow-y:visible!important;position:static!important;width:auto}#sidebar{margin-bottom:var(--m)}body:not(.showing-sidebar) #sidebar{display:none}body.ltr #details-container{margin-right:0}body.rtl #details-container{margin-left:0}#content-container{max-width:none!important;width:auto!important}#details{margin-top:var(--m);padding:0!important}}@media only screen and (max-width:767px){#crumbs,#header,#main-content{padding-left:10px!important;padding-right:10px!important}#tabs ul li a{padding-left:var(--m);padding-right:var(--m)}body.ltr #tabs ul li+li{margin-left:-7px}body.rtl #tabs ul li+li{margin-right:-7px}}body.ltr #settingsmenu ul li a{padding-left:46px}body.rtl #settingsmenu ul li a{padding-right:46px}#settingsmenu ul li a:before{font-size:15px}body.ltr #settingsmenu ul li a:before{margin:1px 0 0 -22px}body.rtl #settingsmenu ul li a:before{margin:1px -22px 0 0}#settingsmenu ul li a img{height:16px;margin-left:-23px;margin-top:1px;position:absolute;width:16px}.grid{min-height:1px;position:relative}.grid:after{clear:both;content:"";display:block;height:0;visibility:hidden}.grid>.item{display:none}.grid>.item,.sidebar{box-sizing:border-box}.sidebar{font-size:13px;width:226px}.sidebar:not(.drag-helper){background-color:var(--gray-050);padding:var(--m) 0}.sidebar .heading{margin:0 var(--xl);position:relative}.sidebar .heading:not(:first-child){margin-top:var(--m)}.sidebar .heading>span{color:var(--medium-text-color);display:inline-block;font-size:11px;font-weight:700;margin:0 -5px;padding:0 5px;position:relative;text-transform:uppercase;z-index:1}.sidebar .heading>ul{margin:2px calc(var(--xl)*-1)}.sidebar nav{padding:0 var(--s)}body.ltr .sidebar nav>ul>li.heading>ul>li>a,body.ltr .sidebar nav>ul>li:not(.heading)>a{padding-left:24px}body.rtl .sidebar nav>ul>li.heading>ul>li>a,body.rtl .sidebar nav>ul>li:not(.heading)>a{padding-right:24px}body.ltr .sidebar nav>ul>li.heading>ul>li>.toggle,body.ltr .sidebar nav>ul>li:not(.heading)>.toggle{left:calc(var(--m)*0)}body.rtl .sidebar nav>ul>li.heading>ul>li>.toggle,body.rtl .sidebar nav>ul>li:not(.heading)>.toggle{right:calc(var(--m)*0)}body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>a,body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>a{padding-left:38px}body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>a,body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>a{padding-right:38px}body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>.toggle,body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>.toggle{left:calc(var(--m)*1)}body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>.toggle,body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>.toggle{right:calc(var(--m)*1)}body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>a,body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>a{padding-left:52px}body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>a,body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>a{padding-right:52px}body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>.toggle,body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>.toggle{left:calc(var(--m)*2)}body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>.toggle,body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>.toggle{right:calc(var(--m)*2)}body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>a,body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>a{padding-left:66px}body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>a,body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>a{padding-right:66px}body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle,body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>.toggle{left:calc(var(--m)*3)}body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle,body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>.toggle{right:calc(var(--m)*3)}body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>a,body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>a{padding-left:80px}body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>a,body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>a{padding-right:80px}body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle,body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle{left:calc(var(--m)*4)}body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle,body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle{right:calc(var(--m)*4)}.sidebar nav li{position:relative}.sidebar nav li:not(.has-subnav)>a:not(.sel):hover{background-color:var(--gray-100);text-decoration:none}.sidebar nav li:not(.has-subnav)>a.sel{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;background-color:var(--gray-500);cursor:default;font-weight:500}.sidebar nav li:not(.has-subnav)>a.sel,.sidebar nav li:not(.has-subnav)>a.sel+.toggle{color:var(--white)}.sidebar nav li a{-webkit-align-items:center;align-items:center;border-radius:var(--large-border-radius);box-sizing:border-box;color:var(--text-color);display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;margin-bottom:1px;min-height:var(--xl);padding:7px var(--xl);position:relative;-webkit-user-select:none;user-select:none;word-break:break-word}.sidebar nav li a .icon,.sidebar nav li a .status{-webkit-flex-shrink:1;flex-shrink:1}.sidebar nav li a .icon{height:1.125rem;opacity:.85;-o-transition:margin-left .15s linear,margin-right .15s linear;transition:margin-left .15s linear,margin-right .15s linear;width:1.125rem;word-break:normal}body.ltr .sidebar nav li a .icon{margin-right:10px}body.rtl .sidebar nav li a .icon{margin-left:10px}.sidebar nav li a .icon.icon-mask svg circle,.sidebar nav li a .icon.icon-mask svg ellipse,.sidebar nav li a .icon.icon-mask svg line,.sidebar nav li a .icon.icon-mask svg path,.sidebar nav li a .icon.icon-mask svg polygon,.sidebar nav li a .icon.icon-mask svg polyline,.sidebar nav li a .icon.icon-mask svg rect,.sidebar nav li a .icon.icon-mask svg text{fill:currentColor;stroke-width:0}.sidebar nav li a .icon.icon-mask span[data-icon]{color:currentColor}.sidebar nav li a .icon svg{height:16px;width:16px}.sidebar nav li a .icon span[data-icon]{font-size:16px}.sidebar nav li a .icon span[data-icon]:before{display:block}.sidebar nav li a .label{-webkit-flex:1;flex:1}.sidebar nav li a .badge{background-color:var(--medium-text-color);border-radius:var(--s);color:var(--white);-webkit-flex-shrink:1;flex-shrink:1;font-size:11px;line-height:16px;padding:0 6px}body.ltr .sidebar nav li a .badge{margin:0 -4px 0 10px}body.rtl .sidebar nav li a .badge{margin:0 10px 0 -4px}.sidebar nav li .toggle{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;height:34px;-webkit-justify-content:center;justify-content:center;position:absolute;top:0;width:var(--xl);z-index:1}.sidebar nav li ul{display:none}.sidebar nav li.expanded>ul,.sidebar nav li.heading>ul{display:block}body.ltr .content.has-sidebar:not(.hiding-sidebar){margin-left:226px}body.rtl .content.has-sidebar:not(.hiding-sidebar){margin-right:226px}#content-notice{margin:0 calc(var(--xl)*-1);padding:0 var(--xl)}#content-notice:not(:last-child){border-bottom:1px solid var(--hairline-color);margin-bottom:var(--s);padding-bottom:var(--s)}#content :not(.meta)>.flex-fields,#content>.flex-fields,.so-content .flex-fields{--row-gap:var(--xl);-webkit-align-content:flex-start;align-content:flex-start;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;margin:0 calc(var(--row-gap)*-1) calc(var(--row-gap)*-1);width:calc(100% + var(--row-gap)*2)}#content :not(.meta)>.flex-fields>*,#content>.flex-fields>*,.so-content .flex-fields>*{box-sizing:border-box;margin:0 0 var(--row-gap)!important;padding:0 var(--row-gap)}#content :not(.meta)>.flex-fields>h2,#content>.flex-fields>h2,.so-content .flex-fields>h2{-webkit-flex:4 0 100%;flex:4 0 100%}#content :not(.meta)>.flex-fields>h2:not(:first-child),#content>.flex-fields>h2:not(:first-child),.so-content .flex-fields>h2:not(:first-child){border-top:1px solid var(--hairline-color);padding-top:var(--xl)}#content :not(.meta)>.flex-fields>.line-break,#content :not(.meta)>.flex-fields>hr,#content>.flex-fields>.line-break,#content>.flex-fields>hr,.so-content .flex-fields>.line-break,.so-content .flex-fields>hr{-webkit-flex:4 0 100%;flex:4 0 100%}#content :not(.meta)>.flex-fields>.line-break:not(:first-child),#content>.flex-fields>.line-break:not(:first-child),.so-content .flex-fields>.line-break:not(:first-child){margin-bottom:0!important}#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break),#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child,#content>.flex-fields>:not(h2):not(hr):not(.line-break),#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child,.so-content .flex-fields>:not(h2):not(hr):not(.line-break),.so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child{position:relative;width:100%}#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):before,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,#content>.flex-fields>:not(h2):not(hr):not(.line-break):before,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,.so-content .flex-fields>:not(h2):not(hr):not(.line-break):before,.so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child:before{background-color:rgba(205,216,228,.5);content:"";height:100%;position:absolute;top:0;width:1px}body.ltr #content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):before,body.ltr #content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,body.ltr #content>.flex-fields>:not(h2):not(hr):not(.line-break):before,body.ltr #content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,body.ltr .so-content .flex-fields>:not(h2):not(hr):not(.line-break):before,body.ltr .so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child:before{left:-1px}body.rtl #content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):before,body.rtl #content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,body.rtl #content>.flex-fields>:not(h2):not(hr):not(.line-break):before,body.rtl #content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,body.rtl .so-content .flex-fields>:not(h2):not(hr):not(.line-break):before,body.rtl .so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child:before{right:-1px}@media only screen and (min-width:1536px){#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-25,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-25,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25{width:25%}#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-50,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-50,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50{width:50%}#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-75,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-75,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-75,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-75{width:75%}}@media only screen and (min-width:600px)and (max-width:1535px){#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-25,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-50,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-25,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-50,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50{width:50%}}@media only screen and (min-width:1200px){.so-content .flex-fields>:not(h2):not(hr):not(.line-break).width-25,.so-content .flex-fields>:not(h2):not(hr):not(.line-break).width-50,.so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25,.so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50{width:50%}}.lp-editor-container,.lp-preview-container{background-color:var(--white);height:100%;position:fixed;top:0;z-index:100}.lp-editor-container header,.lp-preview-container header{background-color:var(--gray-100);box-shadow:0 1px 0 rgba(63,77,90,.2);box-sizing:border-box;padding:8px 24px;position:relative;z-index:1}@supports((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){.lp-editor-container header,.lp-preview-container header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:rgba(228,237,246,.75);left:0;position:absolute;top:0;width:100%;z-index:2}.lp-editor-container header+.lp-editor,.lp-preview-container header+.lp-editor{padding-top:78px}}.lp-editor-container header .btn,.lp-editor-container header .checkmark-icon,.lp-editor-container header .spinner,.lp-preview-container header .btn,.lp-preview-container header .checkmark-icon,.lp-preview-container header .spinner{margin-bottom:0}.lp-editor-container{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column}.lp-editor-container .lp-editor{box-sizing:border-box;-webkit-flex:1;flex:1;overflow:auto;padding:24px}.lp-editor-container .lp-editor>.field:last-child{margin-bottom:24px!important}body.ltr .lp-editor-container .lp-editor>.field>.status-badge{left:-24px}body.rtl .lp-editor-container .lp-editor>.field>.status-badge{right:-24px}body.ltr .lp-editor-container .lp-editor .matrixblock>.fields>.flex-fields>.field>.status-badge{left:calc(var(--m)*-1)}body.rtl .lp-editor-container .lp-editor .matrixblock>.fields>.flex-fields>.field>.status-badge{right:calc(var(--m)*-1)}.lp-editor-container .lp-draghandle{cursor:col-resize;height:100%;position:absolute;top:0;width:4px;z-index:6}body.ltr .lp-editor-container .lp-draghandle{right:-2px}body.rtl .lp-editor-container .lp-draghandle{left:-2px}.lp-preview-container{box-shadow:-1px 0 0 rgba(63,77,90,.2);display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column}.lp-preview-container.dragging:after{content:"";font-size:0;height:100%;left:0;position:absolute;top:0;width:100%}.lp-preview-container .lp-preview-header{display:-webkit-flex;display:flex}@supports not ((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){.lp-preview-container .lp-preview-header{background-color:rgba(228,237,246,.75)}}.lp-preview-container .lp-preview-header .buttons{margin:0}body.ltr .lp-preview-container .lp-preview-header .buttons .btn+.btn{margin-left:7px}body.rtl .lp-preview-container .lp-preview-header .buttons .btn+.btn{margin-right:7px}.lp-preview-container .lp-preview-header+.lp-iframe-container{padding-top:0}@supports((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){.lp-preview-container .lp-preview-header+.lp-iframe-container{padding-top:50px}}.lp-preview-container .lp-preview-header .lp-device-type .btn:before{background-position:50%;background-repeat:no-repeat;-o-background-size:contain;background-size:contain;content:"";display:block;height:22px;-o-transition-duration:.3s;transition-duration:.3s;width:27px}.lp-preview-container .lp-preview-header .lp-device-type .btn.lp-device-type-btn--phone:before{background-image:url(../images/preview/icon-phone.svg)}.lp-preview-container .lp-preview-header .lp-device-type .btn.lp-device-type-btn--tablet:before{background-image:url(../images/preview/icon-tablet.svg)}.lp-preview-container .lp-preview-header .lp-device-type .btn.lp-device-type-btn--desktop:before{background-image:url(../images/preview/icon-desktop.svg)}.lp-preview-container .lp-device-type__label:before{background-position:50%;background-repeat:no-repeat;-o-background-size:contain;background-size:contain;content:"";display:block;height:22px;-o-transition-duration:.3s;transition-duration:.3s;width:27px}.lp-preview-container .lp-device-type__label.lp-device-type__label--phone:before{background-image:url(../images/preview/icon-phone.svg)}.lp-preview-container .lp-device-type__label.lp-device-type__label--tablet:before{background-image:url(../images/preview/icon-tablet.svg)}.lp-preview-container .lp-device-type__label.lp-device-type__label--desktop:before{background-image:url(../images/preview/icon-desktop.svg)}.lp-preview-container .lp-preview-container__bumper-link{bottom:0;top:unset}.lp-preview-container .lp-device-mask{display:none}.lp-preview-container .lp-iframe-container{-webkit-flex:1;flex:1;overflow:auto}.lp-preview-container .lp-iframe-container .lp-preview{display:block;min-height:100%;width:100%}.lp-preview-container .lp-iframe-container:not(.lp-iframe-container--has-device-preview) .lp-device-preview-container{height:100%!important;margin:0!important;-webkit-transform:none!important;-o-transform:none!important;transform:none!important;width:auto!important}.lp-preview-container .lp-iframe-container--has-device-preview{background-color:var(--gray-100);-webkit-flex:none;flex:none;height:calc(100% - 50px);padding-top:0!important;position:relative;top:0;width:100%}@supports((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){.lp-preview-container .lp-iframe-container--has-device-preview{top:50px}}.lp-preview-container .lp-iframe-container--has-device-preview .lp-device-preview-container{left:50%;opacity:1;overflow:auto;position:absolute;top:50%;-o-transition:opacity .3s;transition:opacity .3s;z-index:2}.lp-preview-container .lp-iframe-container--has-device-preview .lp-device-mask{background-color:#fff;background-image:url(../images/preview/chrome-phone-top.svg),url(../images/preview/chrome-phone-bottom.svg);background-position:top,bottom;background-repeat:no-repeat;-o-background-size:contain;background-size:contain;border-radius:18px;box-shadow:0 0 58px rgba(6,67,117,.3);display:block;left:50%;position:absolute;top:50%;z-index:1}.lp-preview-container .lp-iframe-container--has-device-preview.lp-iframe-container--tablet .lp-device-mask{background-image:url(../images/preview/chrome-tablet-top.svg),url(../images/preview/chrome-tablet-bottom.svg)}@media screen and (prefers-reduced-motion:no-preference){.lp-preview-container .lp-iframe-container--rotating .lp-device-mask{-o-transition-duration:.3s;transition-duration:.3s;transition-property:-webkit-transform;-o-transition-property:-o-transform;transition-property:transform;transition-property:transform,-webkit-transform,-o-transform}.lp-preview-container .lp-iframe-container--rotating .lp-device-preview-container{opacity:0;-o-transition:opacity 0s;transition:opacity 0s}}.layoutdesigner{-webkit-align-items:stretch;align-items:stretch;background-clip:padding-box;background-color:#fbfcfe;border:1px solid rgba(96,125,159,.25);border-radius:3px;box-shadow:none;display:-webkit-flex;display:flex;min-height:500px;overflow:hidden;position:relative}body.ltr .layoutdesigner{padding-right:241px}body.rtl .layoutdesigner{padding-left:241px}.errors>.layoutdesigner{border:1px solid var(--error-color)!important}.layoutdesigner .fld-workspace{background-color:var(--gray-050);background-image:-o-linear-gradient(left,#ecf2f9 1px,transparent 0),-o-linear-gradient(top,#ecf2f9 1px,transparent 1px);background-image:linear-gradient(90deg,#ecf2f9 1px,transparent 0),linear-gradient(180deg,#ecf2f9 1px,transparent 0);background-position:-1px -1px;-o-background-size:24px 24px;background-size:24px 24px;box-shadow:inset 0 1px 3px -1px #acbed2;-webkit-flex:1;flex:1}body.ltr .layoutdesigner .fld-workspace{border-radius:var(--small-border-radius) 0 0 var(--small-border-radius)}body.rtl .layoutdesigner .fld-workspace{border-radius:0 var(--small-border-radius) var(--small-border-radius) 0}body.ltr .layoutdesigner .fld-workspace{padding:24px 0 24px 24px}body.rtl .layoutdesigner .fld-workspace{padding:24px 24px 24px 0}.layoutdesigner .fld-workspace .fld-tabs{-webkit-align-items:flex-start;align-items:flex-start;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}.layoutdesigner .fld-sidebar{box-sizing:border-box;height:100%;overflow:auto;padding:14px;position:absolute;top:0;width:241px}body.ltr .layoutdesigner .fld-sidebar{right:0}body.rtl .layoutdesigner .fld-sidebar{left:0}.layoutdesigner .fld-sidebar .btngroup{margin-bottom:14px}.layoutdesigner .fld-sidebar .fld-field-library .fld-field-group{margin-top:14px}.layoutdesigner .fld-sidebar .fld-field-library .fld-field-group h6{margin-bottom:7px}.layoutdesigner .fld-sidebar .filtered{display:none}.layoutdesigner .fld-new-tab-btn:active{background-color:var(--gray-050)}.fld-new-tab-btn,.fld-new-tab-btn:hover,.fld-sidebar,.fld-tab .fld-tabcontent,.fld-tab .tabs .tab{background-color:var(--white);box-shadow:0 0 0 1px rgba(31,41,51,.1),0 2px 5px -2px rgba(31,41,51,.2)}body.ltr .fld-element .settings,body.ltr .fld-element .slide-picker,body.ltr .fld-tab .settings{margin-left:7px}body.rtl .fld-element .settings,body.rtl .fld-element .slide-picker,body.rtl .fld-tab .settings{margin-right:7px}.fld-element .settings:before,.fld-tab .settings:before{font-size:16px;margin-top:-2px;opacity:.5}.fld-element .settings.active:before,.fld-element .settings:hover:before,.fld-tab .settings.active:before,.fld-tab .settings:hover:before{opacity:1}.fld-tab{box-sizing:border-box;width:264px}body.ltr .fld-tab{padding:0 25px 24px 0}body.rtl .fld-tab{padding:0 0 24px 25px}.fld-tab .tabs{display:-webkit-flex;display:flex;margin:-10px -12px 0;overflow:hidden;padding:10px 12px 0}.fld-tab .tabs .tab{border-radius:var(--medium-border-radius) var(--medium-border-radius) 0 0;box-sizing:border-box;display:-webkit-flex;display:flex;max-width:calc(100% - 10px);padding:8px 14px}body:not(.dragging) .fld-tab .tabs .tab.draggable{cursor:move;cursor:-webkit-grab;cursor:grab}.fld-tab .tabs .tab span{overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}.fld-tab .fld-tabcontent{padding:14px}body.ltr .fld-tab .fld-tabcontent{border-radius:0 var(--medium-border-radius) var(--medium-border-radius) var(--medium-border-radius)}body.rtl .fld-tab .fld-tabcontent{border-radius:var(--medium-border-radius) 0 var(--medium-border-radius) var(--medium-border-radius)}.fld-tab.fld-insertion .fld-tabcontent,.fld-tab.fld-insertion .tabs .tab{background-color:var(--gray-050);background-image:-o-linear-gradient(left,#ecf2f9 1px,transparent 0),-o-linear-gradient(top,#ecf2f9 1px,transparent 1px);background-image:linear-gradient(90deg,#ecf2f9 1px,transparent 0),linear-gradient(180deg,#ecf2f9 1px,transparent 0);-o-background-size:24px 24px;background-size:24px 24px;border:2px dashed var(--hairline-color);box-shadow:none;margin:-2px}.fld-tab.fld-insertion .tabs .tab{background-position:-1px -1px}.fld-tab.fld-insertion .fld-tabcontent{background-position:-1px -13px}.fld-tab-caboose{min-height:24px}.fld-indicator{color:var(--uicontrol-color);display:-webkit-inline-flex;display:inline-flex;font-size:11px}body.ltr .fld-indicator{margin-left:4px}body.rtl .fld-indicator{margin-right:4px}body.ltr .fld-indicator+.fld-indicator{margin-left:2px}body.rtl .fld-indicator+.fld-indicator{margin-right:2px}.fld-element{-webkit-align-items:center;align-items:center;background-color:var(--white);border-radius:var(--medium-border-radius);box-shadow:inset 0 0 0 1px var(--hairline-color);display:-webkit-flex;display:flex;padding:7px 10px;position:relative}body:not(.dragging) .fld-element{cursor:move;cursor:-webkit-grab;cursor:grab}.fld-element+.fld-element{margin-top:7px}.fld-element.fld-insertion{background:none;border:2px dashed var(--hairline-color);border-radius:var(--medium-border-radius);box-shadow:none;box-sizing:border-box}.fld-element.draghelper{box-shadow:0 1px 5px -1px rgba(31,41,51,.2)}.fld-element.fld-field{background-color:var(--gray-100);color:var(--medium-text-color)}.fld-element.fld-field:not(.draghelper){box-shadow:none}.fld-element.fld-field .fld-field-hidden:not(.hidden){margin-top:-3px}body.ltr .fld-element.fld-field .fld-field-hidden:not(.hidden){margin-right:5px}body.rtl .fld-element.fld-field .fld-field-hidden:not(.hidden){margin-left:5px}.fld-element.fld-field .fld-field-hidden:not(.hidden):before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;content:"shuteye";direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}.fld-element.fld-field .field-name .fld-element-label{margin-bottom:2px}.fld-element .fld-element-icon{text-align:center}body.ltr .fld-element .fld-element-icon{margin-right:5px}body.rtl .fld-element .fld-element-icon{margin-left:5px}.fld-element .fld-element-icon,.fld-element .fld-element-icon svg{height:16px;width:16px}.fld-element .fld-element-icon svg circle,.fld-element .fld-element-icon svg ellipse,.fld-element .fld-element-icon svg line,.fld-element .fld-element-icon svg path,.fld-element .fld-element-icon svg polygon,.fld-element .fld-element-icon svg polyline,.fld-element .fld-element-icon svg rect,.fld-element .fld-element-icon svg text{fill:var(--ui-control-color);stroke-width:0}.fld-element .field-name{-webkit-flex:1;flex:1;overflow:hidden}.fld-element .field-name .fld-attribute,.fld-element .field-name .fld-element-label{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-flex:1;flex:1}.fld-element .field-name .fld-attribute .smalltext,.fld-element .field-name .fld-element-label h4{overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}.fld-element .field-name .fld-element-label h4{color:var(--text-color);font-weight:400;margin:0}body.dragging{cursor:move!important;cursor:-webkit-grabbing!important;cursor:grabbing!important}.fld-br,.fld-hr{display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center;padding:9px 10px}.fld-br:before,.fld-hr:before{border-radius:2px;content:"";display:block;font-size:0;height:4px;left:10px;position:absolute;top:calc(50% - 2px);width:calc(100% - 20px)}.fld-br .smalltext,.fld-hr .smalltext{background-color:var(--gray-100);border-radius:8px;padding:1px 7px;position:relative}.fld-hr:before{background-color:var(--gray-100)}.fld-br:before{background-image:-o-repeating-linear-gradient(left,var(--gray-100),var(--gray-100) 5.2631578947%,transparent 5.2631578947%,transparent 10.5263157895%,var(--gray-100) 10.5263157895%);background-image:repeating-linear-gradient(to right,var(--gray-100),var(--gray-100) 5.2631578947%,transparent 5.2631578947%,transparent 10.5263157895%,var(--gray-100) 10.5263157895%)}.fld-element-settings-body{-webkit-flex:1;flex:1;margin:-24px var(--neg-padding) 0;overflow:hidden auto;padding:24px var(--padding);position:relative}.fld-element-settings-footer{background:#fff;background-color:var(--gray-050);box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;margin:0 var(--neg-padding) -24px;padding:var(--padding);position:relative;z-index:3}.fld-element-settings-footer:focus{box-shadow:var(--focus-ring)}.fld-element-settings-footer>.ee-site-select{-webkit-flex:1;flex:1}body.ltr .fld-element-settings-footer>.btn{margin-left:5px}body.rtl .fld-element-settings-footer>.btn{margin-right:5px}body.ltr .fld-element-settings-footer>.spinner{margin:0 var(--neg-padding) 0 0}body.rtl .fld-element-settings-footer>.spinner{margin:0 0 0 var(--neg-padding)}html.noscroll,html.noscroll body{height:100%;overflow:hidden}.modal.imageeditor{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;--focus-ring:0 0 0 1px hsl(var(--light-focus-hsl)),0 0 0 3px hsla(var(--light-focus-hsl),0.7);background-color:var(--gray-900);color:var(--white);font-weight:500;opacity:0;-webkit-user-select:none;user-select:none}.modal.imageeditor.modal{border-radius:0}.modal.imageeditor.modal .body:after{display:none}.modal.imageeditor .btn:not(.submit):not(.noborder){background-color:var(--gray-600);color:var(--white)}.modal.imageeditor .btn:not(.submit):not(.noborder):hover{background-color:var(--gray-700)}.modal.imageeditor .btn:not(.submit):not(.noborder).active{background-color:var(--gray-800)}.modal.imageeditor .icon:before{content:"";display:inline-block;height:24px;margin-left:-3px;margin-top:-4px;width:24px}.modal.imageeditor .icon.rotate-left:before{background-image:url(../images/image-editor/rotate-left.svg)}.modal.imageeditor .icon.rotate-right:before{background-image:url(../images/image-editor/rotate-right.svg)}.modal.imageeditor .icon.flip-vertical:before{background-image:url(../images/image-editor/flip-vertical.svg)}.modal.imageeditor .icon.flip-horizontal:before{background-image:url(../images/image-editor/flip-horizontal.svg)}.modal.imageeditor .icon.constraint:before{background-image:url(../images/image-editor/unconstrained.svg)}.modal.imageeditor .icon.focal-point:before{background-image:url(../images/image-editor/focal-point.svg)}.modal.imageeditor .body{display:-webkit-flex;display:flex;padding:0}.modal.imageeditor input{color:var(--text-color)}.modal.imageeditor .body .tabs{border-right:1px solid var(--gray-1000)}.modal.imageeditor .body .tabs ul{-webkit-align-items:stretch;align-items:stretch;-webkit-flex-direction:column;flex-direction:column;width:100px}.modal.imageeditor .body .tabs ul li{border-bottom:1px solid var(--gray-1000);cursor:pointer;padding:14px;position:relative;text-align:center}.modal.imageeditor .body .tabs ul li:before{background-color:currentColor;content:"";height:100%;position:absolute;top:0;width:0}body.ltr .modal.imageeditor .body .tabs ul li:before{left:0}body.rtl .modal.imageeditor .body .tabs ul li:before{right:0}.modal.imageeditor .body .tabs ul li.selected{background-color:#151c23}.modal.imageeditor .body .tabs ul li.selected:before{width:2px}.modal.imageeditor .body .tabs ul li i{background-position:top;background-repeat:no-repeat;display:block;height:24px}.modal.imageeditor .body .tabs ul li[data-view=rotate] i{background-image:url(../images/image-editor/rotate-left.svg)}.modal.imageeditor .body .tabs ul li[data-view=crop] i{background-image:url(../images/image-editor/crop.svg)}.modal.imageeditor .body .tabs ul li[data-view=filters] i{background-image:url(../images/image-editor/filters.svg)}.modal.imageeditor .body .tabs ul li:hover{background-color:#1b242c;cursor:pointer}.modal.imageeditor .body .views{overflow:auto;padding:24px}.modal.imageeditor .body .views .btngroup{margin-bottom:24px}.modal.imageeditor .body .views .filters ul{width:100px}.modal.imageeditor .body .views .filters ul li{margin-bottom:14px;margin-right:14px;text-align:center}.modal.imageeditor .body .views .filters ul li:last-child{margin-right:0}.modal.imageeditor .body .views .filters ul li img{border:3px solid transparent;border-radius:4px}.modal.imageeditor .body .views .filters ul li span{display:block}.modal.imageeditor .body .views .filters ul li:hover{cursor:pointer}.modal.imageeditor .body .views .filters ul li.selected img{border-color:var(--white)}.modal.imageeditor .body .image-container{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-flex-grow:1;flex-grow:1;overflow:hidden;position:relative}.modal.imageeditor .body .image-container .image{-webkit-flex-grow:1;flex-grow:1;margin:14px;position:relative;text-align:center}.modal.imageeditor .body .image-container .image canvas{left:0;position:absolute;top:0}.modal.imageeditor .body .image-container .image-tools{text-align:center}.modal.imageeditor .body .image-container .image-tools .straightening{display:block;margin:0 auto;max-width:400px;min-height:3.75rem;overflow:hidden}.modal.imageeditor .footer{background-color:transparent;border-top:1px solid #000;bottom:0;left:0;position:absolute;width:100%}body.has-debug-toolbar .modal.imageeditor .footer{padding-bottom:50px}.modal.imageeditor .body .views .crop fieldset .heading{display:none}.modal.imageeditor .body .views .crop .custom-constraint-spacer{padding:0 var(--xs)}.modal.imageeditor .body .views .crop .constraint-group{grid-gap:var(--xs);display:grid}body.ltr .modal.imageeditor .body .views .crop .custom{padding-left:21px}body.rtl .modal.imageeditor .body .views .crop .custom{padding-right:21px}.modal.imageeditor .body .views .crop .orientation{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center}.modal.imageeditor .body .views .crop .orientation input{-webkit-appearance:none;appearance:none;background-position:50%;background-repeat:no-repeat;cursor:pointer;margin:0 4px}.modal.imageeditor .body .views .crop .orientation input[value=landscape]{background-image:url(../images/image-editor/orientation-landscape-unchecked.svg);height:20px;width:30px}.modal.imageeditor .body .views .crop .orientation input[value=landscape]:checked{background-image:url(../images/image-editor/orientation-landscape-checked.svg)}.modal.imageeditor .body .views .crop .orientation input[value=portrait]{background-image:url(../images/image-editor/orientation-portrait-unchecked.svg);height:30px;width:20px}.modal.imageeditor .body .views .crop .orientation input[value=portrait]:checked{background-image:url(../images/image-editor/orientation-portrait-checked.svg)}.modal.imageeditor.vertical .body .views .crop>.btngroup:first-child{-webkit-justify-content:center;justify-content:center}.modal.imageeditor:not(.vertical) .body .views .crop .constraint.custom{margin-top:var(--xs)}.vertical.imageeditor .body{-webkit-flex-direction:column;flex-direction:column}.vertical.imageeditor .body .image-container{-webkit-flex-basis:30vh;flex-basis:30vh;-webkit-flex-shrink:0;flex-shrink:0}.vertical.imageeditor .body .constraint-group{grid-template-columns:1fr 1fr}.vertical.imageeditor .body .tabs ul{border-bottom:1px solid #000;border-top:1px solid #000;display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;width:100%}.vertical.imageeditor .body .tabs ul li{border:0;border-right:1px solid #000;-webkit-flex-grow:1;flex-grow:1;padding:10px 7px}.vertical.imageeditor .body .tabs ul li:before{height:0;top:unset;top:0;width:100%}.vertical.imageeditor .body .tabs ul li.selected:before{height:2px;width:100%}.vertical.imageeditor .body .views{width:auto}.vertical.imageeditor .body .views .rotate{display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-webkit-justify-content:center;justify-content:center;margin-bottom:-14px}.vertical.imageeditor .body .views .rotate .btngroup{margin:0 7px 14px}.vertical.imageeditor .body .views .filters ul{height:109px;margin:0 -24px -24px;overflow:auto;padding:24px;text-align:center;white-space:nowrap;width:auto}.vertical.imageeditor .body .views .filters ul li{display:inline-block;margin-bottom:0}.slide-rule{padding:10px 0;position:relative}.slide-rule:focus{box-shadow:none}body.reduce-focus-visibility .slide-rule:focus-visible .cursor:after,body:not(.reduce-focus-visibility) .slide-rule:focus .cursor:after{box-shadow:var(--focus-ring)}.slide-rule .cursor:after{content:"";height:3.125rem;left:50%;position:absolute;top:-15px;-webkit-transform:translateX(-50%);-o-transform:translateX(-50%);transform:translateX(-50%);width:1.25rem}.slide-rule .cursor{border-left:.3125rem solid transparent;border-right:.3125rem solid transparent;border-top:.3125rem solid #63a6e1;height:0;left:50%;margin-left:-.25rem;margin-top:4px;position:absolute;width:0;z-index:1}.slide-rule .graduations{height:40px;position:relative;white-space:nowrap}.slide-rule .graduations ul{float:left;position:relative}.slide-rule .graduations ul li{display:inline-block;font-size:8px;position:relative;width:10px}.slide-rule .graduations ul li:not(.main-graduation){left:1px}.slide-rule .graduations ul li.main-graduation:before{border-left-width:3px}.slide-rule .graduations ul li.main-graduation .label{cursor:default;display:block}.slide-rule .graduations ul li.selected:before{border-left-color:#63a6e1}.slide-rule .graduations ul li:before{border-left:1px solid var(--white);content:"";height:10px;left:0;position:absolute;top:0}.slide-rule .graduations ul li .label{display:none;left:-9px;position:absolute;text-align:center;top:10px;width:20px}.slide-rule .value{background:var(--gray-600);bottom:0;box-sizing:border-box;display:none;left:50%;margin-left:-25px;padding:5px;position:absolute;width:50px;z-index:1}.slide-rule .overlay{background-image:-o-linear-gradient(left,var(--gray-900) 0,rgba(31,41,51,0) 15%,rgba(31,41,51,0) 85%,var(--gray-900) 100%);background-image:linear-gradient(to right,var(--gray-900) 0,rgba(31,41,51,0) 15%,rgba(31,41,51,0) 85%,var(--gray-900) 100%);bottom:1px;left:0;position:absolute;right:0;top:0;z-index:2}.menu.dark{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;background-color:var(--gray-600);font-weight:500}.menu.dark ul li a{color:var(--white)!important}.menu.dark ul li a:not(.sel):not(.disabled):hover{background-color:var(--gray-700)}.elements .tableview td.checkbox-cell div.checkbox,.elements .tableview td.checkbox-cell input.checkbox+label,_:-ms-lang(x){top:16px}_:-ms-lang(x),div:empty.checkbox,input.checkbox+label:empty{display:block}.yii-debug-toolbar__title a{display:block!important}.cp-chart{height:100%;margin:0;position:relative}.cp-chart svg{height:100%;width:100%}.cp-chart .axis line,.cp-chart .axis path{fill:none;stroke:var(--hairline-color);shape-rendering:crispEdges}.cp-chart .ticks-axis line,.cp-chart .ticks-axis path{fill:none;stroke:none;shape-rendering:crispEdges}.cp-chart .ticks-axis g.tick text{fill:var(--black);font-size:11px}.cp-chart .axis text{fill:rgba(0,0,0,.6)}.cp-chart .grid-line .tick,.cp-chart .grid-line .tick line{stroke:rgba(0,0,0,.08);stroke-opacity:.7;shape-rendering:crispEdges}.cp-chart .grid-line path{stroke-width:0}.tooltip{background:hsla(0,0%,100%,.9);border-radius:3px;box-shadow:0 1px 5px -1px rgba(31,41,51,.2);padding:7px 10px;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;z-index:1000000} +:root{--white:#fff;--black:#000;--gray-050:#f3f7fc;--gray-100:#e4edf6;--gray-200:#cdd8e4;--gray-300:#9aa5b1;--gray-350:#8b96a2;--gray-400:#7b8793;--gray-500:#606d7b;--gray-550:#596673;--gray-600:#515f6c;--gray-700:#3f4d5a;--gray-800:#33404d;--gray-900:#1f2933;--gray-1000:#131920;--blue-050:#e3f8ff;--blue-100:#b3ecff;--blue-200:#81defd;--blue-300:#5ed0fa;--blue-400:#40c3f7;--blue-500:#2bb0ed;--blue-600:#1992d4;--blue-700:#127fbf;--blue-800:#0b69a3;--blue-900:#035388;--cyan-050:#e0fcff;--cyan-100:#bef8fd;--cyan-200:#87eaf2;--cyan-300:#54d1db;--cyan-400:#38bec9;--cyan-500:#2cb1bc;--cyan-600:#14919b;--cyan-700:#0e7c86;--cyan-800:#0a6c74;--cyan-900:#044e54;--pink-050:#ffe3ec;--pink-100:#ffb8d2;--pink-200:#ff8cba;--pink-300:#f364a2;--pink-400:#e8368f;--pink-500:#da127d;--pink-600:#bc0a6f;--pink-700:#a30664;--pink-800:#870557;--pink-900:#620042;--red-050:#ffe3e3;--red-100:#ffbdbd;--red-200:#ff9b9b;--red-300:#f86a6a;--red-400:#ef4e4e;--red-500:#e12d39;--red-600:#cf1124;--red-700:#ab091e;--red-800:#8a041a;--red-900:#610316;--yellow-050:#fffbea;--yellow-100:#fff3c4;--yellow-200:#fce588;--yellow-300:#fadb5f;--yellow-400:#f7c948;--yellow-500:#f0b429;--yellow-600:#de911d;--yellow-700:#cb6e17;--yellow-750:#bd5a14;--yellow-800:#b44d12;--yellow-900:#8d2b0b;--teal-050:#effcf6;--teal-100:#c6f7e2;--teal-200:#8eedc7;--teal-300:#65d6ad;--teal-400:#3ebd93;--teal-500:#27ab83;--teal-550:#20a07b;--teal-600:#199473;--teal-700:#147d64;--teal-800:#0c6b58;--teal-900:#014d40}:root{--bg-color:$grey100;--bg-color-hsl:212deg,50%,93%;--primary-color:var(--red-500);--secondary-color:var(--gray-500);--input-color:#607d9f;--text-color:var(--gray-700);--medium-dark-text-color:var(--gray-550);--medium-text-color:var(--gray-550);--light-text-color:var(--gray-500);--link-color:#2563eb;--font-weight-bold:700;--menu-option-color:var(--text-color);--menu-option-active-color:var(--white);--menu-option-active-background-color:var(--gray-350);--hairline-color:rgba(51,64,77,.1);--medium-hairline-color:rgba(81,95,108,.25);--dark-hairline-color:rgba(123,135,147,.5);--light-focus-color:var(--blue-300);--medium-focus-color:var(--blue-500);--dark-focus-color:#0f74b1;--light-focus-ring:0 0 0 1px #5ed0fa,0 0 0 3px rgba(94,208,250,.7);--medium-focus-ring:0 0 0 1px #2bb0ed,0 0 0 3px rgba(43,176,237,.7);--dark-focus-ring:0 0 0 1px #0f74b1,0 0 0 3px rgba(15,116,177,.7);--light-sel-color:var(--gray-200);--dark-sel-color:var(--gray-600);--error-color:var(--red-600);--warning-color:var(--yellow-800);--success-color:var(--teal-700);--notice-color:var(--blue-800);--enabled-color:var(--teal-550);--pending-color:var(--yellow-700);--disabled-color:var(--red-600);--indicator-border-color:var(--yellow-700);--indicator-icon-color:var(--yellow-750);--small-border-radius:3px;--medium-border-radius:4px;--large-border-radius:5px;--input-border-color:rgba(96,125,159,.25);--menu-border-radius:var(--medium-border-radius);--checkbox-size:16px;--radio-size:16px}@font-face{font-family:Craft;font-style:normal;font-weight:400;src:url(../fonts/Craft.woff) format("woff"),url(../fonts/Craft.ttf) format("truetype"),url(../fonts/Craft.svg#Craft) format("svg")}:root{--ui-control-color:var(--gray-550);--ui-control-hover-color:var(--gray-600);--ui-control-active-color:var(--gray-700);--icon-opacity:0.8;--light-focus-hsl:196.1538461538deg,93.9759036145%,67.4509803922%;--medium-focus-hsl:198.8659793814deg,84.347826087%,54.9019607843%;--dark-focus-hsl:202.5925925926deg,84.375%,37.6470588235%;--focus-ring:0 0 0 1px hsl(var(--dark-focus-hsl)),0 0 0 3px hsla(var(--dark-focus-hsl),0.8);--inner-focus-ring:inset 0 0 0 1px hsl(var(--dark-focus-hsl)),inset 0 0 0 3px hsla(var(--dark-focus-hsl),0.7);--touch-target-size:24px}body,html{background-color:var(--gray-100);box-shadow:var(--light-focus-ring)}body{-webkit-font-smoothing:subpixel-antialiased;color:var(--text-color);font-size:.875rem;line-height:1.42;overflow-x:hidden;width:100vw}body.rtl{direction:rtl}body,input,select,textarea{font-family:system-ui,BlinkMacSystemFont,-apple-system,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.buttons:first-child,.condition-container:first-child,.field:first-child,.first,.grid:first-child,.pane:first-child,.toolbar:first-child,blockquote:first-child,fieldset:first-child,h1:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child,h6:first-child,hr:first-child,p:first-child{margin-top:0!important}.buttons:last-child,.condition-container:last-child,.field:last-child,.grid:last-child,.last,.meta:last-child,.pane:last-child,.toolbar:last-child,blockquote:last-child,fieldset:last-child,h1:last-child,h2:last-child,h3:last-child,h4:last-child,h5:last-child,h6:last-child,p:last-child{margin-bottom:0!important}.no-scroll{overflow:hidden!important}.draghelper{box-sizing:border-box}img{max-width:100%}body.rtl .ltr .text,body.rtl .ltr table.editable textarea{direction:ltr!important;text-align:left!important}body.ltr .rtl .text,body.ltr .rtl table.editable textarea{direction:rtl!important;text-align:right!important}#help:before,.element:before,.go:after,.icon:before,.insecure:before,.menu .flex.padded.sel:before,.menu ul.padded li a.sel:before,.preview-btn:before,.required:after,.secure:before,.texticon:before,.view-btn:before,[data-icon-after]:after,[data-icon]:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}.badge-icon{-webkit-align-items:center;align-items:center;border:1px solid var(--indicator-border-color);border-radius:var(--small-border-radius);box-sizing:border-box;color:var(--indicator-icon-color);display:-webkit-inline-flex;display:inline-flex;font-size:9px;height:17px;-webkit-justify-content:center;justify-content:center;width:17px}.insecure:before,.secure:before{font-size:14px;margin-top:-3px}[data-icon]:before{content:attr(data-icon)}[data-icon-after]:after{content:attr(data-icon-after)}body.rtl [data-icon-after=list]:after,body.rtl [data-icon=list]:before{content:"listrtl"}body.rtl [data-icon-after=structure]:after,body.rtl [data-icon=structure]:before{content:"structurertl"}.icon.secure:before{content:"secure"}.icon.insecure:before{content:"insecure"}.icon.add:before{content:"plus"}.icon.edit:before{content:"edit"}.icon.settings:before{content:"settings"}.icon.search:before{content:"search"}.icon.expand:before{content:"expand"}.icon.collapse:before{content:"collapse"}.help:before{color:var(--pink-400);content:"help"}body.ltr .preview-btn:before,body.ltr .view-btn:before{margin-right:var(--xs)}body.rtl .preview-btn:before,body.rtl .view-btn:before{margin-left:var(--xs)}.preview-btn:before{content:"view";margin-top:-2px}body.ltr .view-btn:before{content:"share"}body.rtl .view-btn:before{content:"shareleft"}.h1,h1{font-size:18px;font-weight:700;line-height:1.2;margin-bottom:24px}.h2,h2{font-size:16px}.h2,.h3,.h4,h2,h3,h4{font-weight:700;line-height:1.2;margin:14px 0}.h4,h4{color:var(--medium-text-color)}.h5,h5{color:var(--medium-text-color)}.h5,.h6,h5,h6{line-height:1.2;margin:14px 0 3px}.h6,h6{color:#606d7b;font-size:11px;text-transform:uppercase}body.ltr h1[data-icon]:before{margin:-8px 10px 0 0}body.rtl h1[data-icon]:before{margin:-8px 0 0 10px}h2[data-icon]:before{font-size:19px}body.ltr h2[data-icon]:before{margin:-4px 6px 0 0}body.rtl h2[data-icon]:before{margin:-4px 0 0 6px}hr{border:none;border-top:1px solid var(--hairline-color);color:transparent;height:0;margin:24px 0}.pane hr{margin:24px -24px}p{margin:1em 0}h5+p{margin-top:0}sup{vertical-align:super}sub,sup{font-size:smaller}sub{vertical-align:sub}body.ltr .indent{margin-left:14px}body.rtl .indent{margin-right:14px}.bullets{list-style-type:square}body.ltr .bullets{padding-left:40px}body.rtl .bullets{padding-right:40px}ol{list-style-type:decimal}body.ltr ol{padding-left:40px}body.rtl ol{padding-right:40px}.code,.code input,.code textarea,code{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:.9em!important}.code input.smalltext,.code textarea.smalltext,.code.smalltext,code.smalltext{font-size:.8em!important}pre code{display:block;overflow-x:auto}a{color:var(--link-color);cursor:pointer}a:hover,body.underline-links a{text-decoration:underline}a.sel,li.sel a{cursor:default!important;text-decoration:none}.go:after{color:var(--link-color);font-size:11px;margin-top:-1px;opacity:.9}body.ltr .go:after{padding-left:4px}body.rtl .go:after{padding-right:4px}body.ltr .go:after{content:"circlerarr"}body.rtl .go:after{content:"circlelarr"}button{cursor:pointer}.context-btn.disabled{background-color:rgba(205,216,228,.5)!important;color:var(--medium-dark-text-color);opacity:1}.alert-icon,.checkmark-icon{border-radius:20px;cursor:pointer;line-height:10px;margin-bottom:0!important;padding:5px}.alert-icon:before,.checkmark-icon:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}.checkmark-icon{background-color:var(--gray-200)}p .checkmark-icon{display:inline-block}.checkmark-icon:before{color:var(--success-color);content:"check"}.alert-icon{background-color:var(--gray-200)}.alert-icon:before{color:var(--error-color);content:"alert"}.menu.revision-menu{padding:10px 24px}.menu.revision-menu hr{margin:10px -24px}.menu.revision-menu ul li.sel{background:var(--gray-050);border-radius:var(--large-border-radius);margin:0 -14px;padding:0 14px}.menu.revision-menu ul li.sel .edited-desc{-webkit-align-items:center;align-items:center;border-top:1px solid var(--hairline-color);color:var(--light-text-color);display:-webkit-flex;display:flex;padding:10px 0;white-space:normal}body.ltr .menu.revision-menu ul li.sel .edited-desc{margin-left:10px}body.rtl .menu.revision-menu ul li.sel .edited-desc{margin-right:10px}.menu.revision-menu ul li.sel .edited-desc p{margin:0}body.ltr .menu.revision-menu ul li.sel .edited-desc .btn{margin-left:14px}body.rtl .menu.revision-menu ul li.sel .edited-desc .btn{margin-right:14px}.menu.revision-menu ul li a{border-radius:var(--large-border-radius);padding-top:7px}.menu.revision-menu .extralight{margin-top:2px}.revision-status-hud{max-width:400px}.revision-status-hud .http-error{background-color:var(--gray-050);border:1px solid var(--hairline-color);border-radius:var(--medium-border-radius);color:var(--light-text-color);padding:7px 14px}.draft-notice{-webkit-align-content:stretch;align-content:stretch;-webkit-align-items:center;align-items:center;color:var(--blue-800);display:-webkit-flex;display:flex;gap:var(--s);-webkit-justify-content:center;justify-content:center}#content-notice .draft-notice{display:-webkit-inline-flex;display:inline-flex;-webkit-justify-content:flex-start;justify-content:flex-start}body.ltr .so-notice>.draft-notice{margin:calc(var(--s)*-1) 0 calc(var(--s)*-1) calc(var(--xl)*-1)}body.rtl .so-notice>.draft-notice{margin:calc(var(--s)*-1) calc(var(--xl)*-1) calc(var(--s)*-1) 0}body.ltr .so-notice>.draft-notice{padding:var(--s) 0 var(--s) var(--xl)}body.rtl .so-notice>.draft-notice{padding:var(--s) var(--xl) var(--s) 0}body.ltr .so-notice>.draft-notice{border-bottom-left-radius:var(--large-border-radius)}body.rtl .so-notice>.draft-notice{border-bottom-right-radius:var(--large-border-radius)}body.ltr .so-notice>.draft-notice{background-image:-o-linear-gradient(top left,rgba(25,146,212,.2),rgba(25,146,212,0) 50%);background-image:linear-gradient(to bottom right,rgba(25,146,212,.2),rgba(25,146,212,0) 50%)}body.rtl .so-notice>.draft-notice{background-image:-o-linear-gradient(right,rgba(25,146,212,.2),rgba(25,146,212,0));background-image:linear-gradient(270deg,rgba(25,146,212,.2),rgba(25,146,212,0))}.draft-notice p{-webkit-flex:1;flex:1;margin:0}.draft-notice .draft-icon{-webkit-align-items:center;align-items:center;border:2px solid rgba(11,105,163,.2);border-radius:100%;box-shadow:0 1px 1px 1px var(--white);box-sizing:border-box;display:-webkit-flex;display:flex;-webkit-flex-shrink:0;flex-shrink:0;height:34px;-webkit-justify-content:center;justify-content:center;position:relative;width:34px}.draft-notice .draft-icon:before{color:var(--blue-800)!important;font-size:18px;left:1px;position:relative}.draft-notice .draft-icon:after{border-radius:100%;bottom:-2px;box-shadow:inset 0 2px 0 rgba(3,83,136,.2);content:"";font-size:0;left:-2px;position:absolute;right:-2px;top:-2px}.draft-notice .discard-changes-btn{background-color:transparent!important;border:2px solid var(--blue-600);color:var(--blue-800)!important}body.ltr .draft-notice .discard-changes-btn{margin-left:var(--xs)}body.rtl .draft-notice .discard-changes-btn{margin-right:var(--xs)}.draft-notice .discard-changes-btn:focus,.draft-notice .discard-changes-btn:hover{border-color:#1682bd}.draft-notice .discard-changes-btn:active{border-color:#1473a6}button.toggle{-webkit-appearance:none;appearance:none;background:none;border:none;color:inherit;padding:0}.toggle:before,a.fieldtoggle:before{border:solid;border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;transition:-webkit-transform .1s linear;-o-transition:-o-transform .1s linear;transition:transform .1s linear;transition:transform .1s linear,-webkit-transform .1s linear,-o-transform .1s linear;width:7px}body.ltr .toggle:before,body.ltr a.fieldtoggle:before{-webkit-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}body.rtl .toggle:before,body.rtl a.fieldtoggle:before{-webkit-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg)}.sidebar nav li.expanded>.toggle:before,.structure li:not(.collapsed)>.row>.toggle:before,.toggle.expanded:before,a.fieldtoggle.expanded:before{-webkit-transform:rotate(45deg)!important;-o-transform:rotate(45deg)!important;transform:rotate(45deg)!important}a.fieldtoggle{color:var(--text-color);display:block;margin:14px 0;position:relative;text-decoration:none}body.ltr a.fieldtoggle{padding-left:12px}body.rtl a.fieldtoggle{padding-right:12px}a.fieldtoggle:before{display:block;position:absolute;top:7px}body.ltr a.fieldtoggle:before{left:-1px}body.rtl a.fieldtoggle:before{right:-1px}em,i{font-style:italic}b,i em,strong{font-weight:700}.readable{font-size:16px;line-height:22px}.readable .h1,.readable .h2,.readable .h3,.readable .h4,.readable .h5,.readable .h6,.readable h1,.readable h2,.readable h3,.readable h4,.readable h5,.readable h6{font-weight:600;margin:24px 0 16px}.readable .h1,.readable h1{color:#000;font-size:32px;line-height:40px}.readable .h2,.readable h2{font-size:24px;line-height:30px}.readable .h3,.readable h3{font-size:20px;line-height:24px}.readable .h4,.readable h4{font-size:16px;line-height:20px}.readable .h5,.readable h5{font-size:14px;line-height:18px}.readable .h6,.readable h6{color:#596673;font-size:13.6px;line-height:17px}.readable ol,.readable ul{margin:1em 0}body.ltr .readable ol,body.ltr .readable ul{padding-left:2em}body.rtl .readable ol,body.rtl .readable ul{padding-right:2em}.readable ul li{list-style-type:disc}.readable li+li{margin-top:.25em}.readable .tip-dismiss-btn{position:absolute;top:12px}body.ltr .readable .tip-dismiss-btn{right:12px}body.rtl .readable .tip-dismiss-btn{left:12px}.readable .tip-dismiss-btn+p{margin-top:0}.readable blockquote{margin:16px 0}.readable blockquote:not(.note){color:#596673;padding:0 16px}body.ltr .readable blockquote:not(.note){border-left:4px solid rgba(51,64,77,.1)}body.rtl .readable blockquote:not(.note){border-right:4px solid rgba(51,64,77,.1)}.readable blockquote.note{border:1px solid;border-radius:4px;padding:1em;position:relative}body.ltr .readable blockquote.note{padding-left:50px}body.rtl .readable blockquote.note{padding-right:50px}body.ltr .readable blockquote.note.dismissible{padding-right:36px}body.rtl .readable blockquote.note.dismissible{padding-left:36px}.readable blockquote.note:not(.tip):not(.warning){border-color:#cf1124;color:#bf503f}.readable blockquote.note:not(.tip):not(.warning):before{color:#cf1124;content:"alert"}.readable blockquote.note.tip{border-color:#2563eb;color:#2563eb}.readable blockquote.note.tip:before{color:#2563eb;content:"lightbulb"}.readable blockquote.note.warning{border-color:#b44d12;color:#cf783a}.readable blockquote.note.warning:before{color:#b44d12;content:"alert"}.readable blockquote.note:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;direction:ltr;display:inline-block;font-family:Craft;font-size:24px;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);opacity:1;position:absolute;text-align:center;text-rendering:optimizeLegibility;text-transform:none;top:15px;-webkit-user-select:none;user-select:none;vertical-align:middle;width:24px}body.ltr .readable blockquote.note:before{left:16px}body.rtl .readable blockquote.note:before{right:16px}.readable blockquote.note a[href]{color:currentColor;text-decoration:underline}body.ltr .leftalign{text-align:left}body.rtl .leftalign{text-align:right}.topalign{vertical-align:top}body.ltr .rightalign{text-align:right}body.rtl .rightalign{text-align:left}.centeralign{text-align:center!important}.nowrap{white-space:nowrap}.break-word{word-wrap:break-word}.light{color:var(--medium-text-color)!important;font-weight:400}.extralight{color:var(--light-text-color)!important}.smalltext{font-size:12px;line-height:1.2}.largetext{font-size:16px;line-height:1.2}.zilch{color:var(--light-text-color);font-size:20px;line-height:24px;padding:100px 0;text-align:center}.zilch.small{font-size:16px;padding:24px 0}input.checkbox+label.smalltext{padding-top:2px}.required:after{color:var(--error-color);content:"asterisk";font-size:7px}body.ltr .required:after{margin:-2px 0 0 5px}body.rtl .required:after{margin:-2px 5px 0 0}.scrollpane{overflow:auto}body.ltr .left{float:left}body.ltr .right,body.rtl .left{float:right}body.rtl .right{float:left}td,th{vertical-align:middle}body.ltr td,body.ltr th{text-align:left}body.ltr table[dir=rtl] td,body.ltr table[dir=rtl] th,body.rtl td,body.rtl th{text-align:right}body.rtl table[dir=ltr] td,body.rtl table[dir=ltr] th{text-align:left}td.right,th.right{float:none}body.ltr td.right,body.ltr th.right{text-align:right}body.rtl td.right,body.rtl th.right{text-align:left}.clear{clear:both;display:block;height:0}.fullwidth{width:100%}.token{background-color:#e4edf6;border-radius:3px;color:#3f4d5a;display:inline-block;font-size:12px;line-height:14px;padding:3px 7px}.token[data-name="*"]{position:relative;width:10px}.token[data-name="*"] span{opacity:0}.token[data-name="*"]:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;content:"asterisk";direction:ltr;display:inline-block;display:block;font-family:Craft;font-size:9px;font-style:normal;font-variant:normal;font-weight:400;left:0;line-height:1;line-height:17px;opacity:var(--icon-opacity);position:absolute;text-align:center;text-indent:0;text-rendering:optimizeLegibility;text-transform:none;top:0;-webkit-user-select:none;user-select:none;vertical-align:middle;width:100%}.token:focus{background-color:#cdd8e4}.highlight .token{background:transparent;border:none;border-radius:0;box-shadow:none;display:inline;font-size:inherit;line-height:inherit;padding:0;text-shadow:none}.pane.highlight pre[class*=language-]{overflow:visible}.pane.highlight pre[class*=language-]>code.diff-highlight .token:not(.prefix){margin:0 -24px;padding:0 24px}.success{color:var(--success-color)!important}.notice .icon:before,.notice.with-icon:before,.warning .icon:before,.warning.with-icon:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle;width:1em}body.ltr .notice .icon:before,body.ltr .notice.with-icon:before,body.ltr .warning .icon:before,body.ltr .warning.with-icon:before{margin:-2px 2px 0 0}body.rtl .notice .icon:before,body.rtl .notice.with-icon:before,body.rtl .warning .icon:before,body.rtl .warning.with-icon:before{margin:-2px 0 0 2px}.notice.has-icon,.warning.has-icon{-webkit-align-items:flex-start;align-items:flex-start;display:-webkit-flex;display:flex;-webkit-flex-wrap:nowrap;flex-wrap:nowrap}.notice.has-icon .icon,.warning.has-icon .icon{-webkit-flex-shrink:1;flex-shrink:1}.notice{color:var(--notice-color)!important}.notice a{text-decoration:underline}.notice .icon:before,.notice.with-icon:before{content:"lightbulb"}.warning{color:var(--warning-color)!important}.warning .icon:before,.warning.with-icon:before{content:"alert"}.error{color:var(--error-color)!important}.icon.move{display:inline-block}.icon.move:not(.disabled){cursor:move}.icon.move:before{color:var(--ui-control-color);content:"move"}.icon.move:not(.disabled):hover:before{color:var(--link-color)}.icon.delete{display:inline-block;line-height:inherit}.icon.delete:before{color:var(--ui-control-color);content:"remove"}.icon.delete:not(.disabled){cursor:pointer}.icon.delete:not(.disabled):hover:before{color:var(--disabled-color)}.icon.delete:not(.disabled):active:before{color:var(--red-800)}.hidden{display:none!important}.visually-hidden{clip:rect(0,0,0,0);border:0;height:1px;margin:0;overflow:hidden;padding:0;position:absolute;width:1px}.invisible{visibility:hidden}.clearafter:after{clear:both;content:"";display:block;height:0;visibility:hidden}.info{cursor:pointer;height:1.375em;overflow:hidden;vertical-align:bottom;width:1em}.info,.info:before{display:inline-block;text-align:center}.info:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;color:var(--ui-control-color);direction:ltr;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;line-height:1.375;opacity:var(--icon-opacity);text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle;vertical-align:baseline;width:100%}.info:not(.warning):before{content:"info"}.info:not(.warning):hover:before{color:var(--link-color)}.info.warning:before{content:"alert"}.info.warning:hover:before{color:var(--warning-color)}.info-hud table{max-width:280px;table-layout:auto}.info-hud td{word-wrap:break-word;width:100%}@media(max-width:450px){.info-hud table{table-layout:fixed;width:100%}}.content{position:relative}.content:after{clear:both;content:"";display:block;height:0;visibility:hidden}.customize-sources-modal{overflow:visible!important}body.ltr .customize-sources-modal{padding-left:200px}body.rtl .customize-sources-modal{padding-right:200px}.customize-sources-modal>.cs-sidebar{background-color:var(--gray-050);border:none;box-shadow:inset -1px 0 0 var(--hairline-color);box-sizing:border-box;height:calc(100% - 50px);margin:0;overflow:auto;padding:10px 0;position:absolute;top:0;width:200px}body.ltr .customize-sources-modal>.cs-sidebar{left:0}body.rtl .customize-sources-modal>.cs-sidebar{right:0}body.ltr .customize-sources-modal>.cs-sidebar{border-top-left-radius:var(--large-border-radius)}body.rtl .customize-sources-modal>.cs-sidebar{border-top-right-radius:var(--large-border-radius)}.customize-sources-modal>.cs-sidebar>.btn{display:block;width:calc(100% - 28px)}body.ltr .customize-sources-modal>.cs-sidebar>.btn{margin:10px 0 0 14px}body.rtl .customize-sources-modal>.cs-sidebar>.btn{margin:10px 14px 0 0}body.ltr .customize-sources-modal.sidebar-hidden{padding-left:0}body.rtl .customize-sources-modal.sidebar-hidden{padding-right:0}.customize-sources-modal.sidebar-hidden>.cs-sidebar{display:none}.customize-sources-modal>.source-settings{box-sizing:border-box;height:calc(100% - 50px);overflow:auto;padding:24px;position:relative}.customize-sources-modal>.footer{bottom:0;left:0;position:absolute;width:100%}.customize-sources-item{--selected-item-color:var(--white);-webkit-align-items:center;align-items:center;background-color:var(--gray-100);border:solid var(--hairline-color);border-width:1px 0;box-sizing:border-box;cursor:default;display:-webkit-flex;display:flex;margin-top:-1px;position:relative;-webkit-user-select:none;user-select:none;width:calc(100% - 1px)}.customize-sources-item+.customize-sources-item.heading{margin-top:10px}.customize-sources-item+.customize-sources-item:not(.heading){border-top:1px solid var(--hairline-color)}.customize-sources-item.sel{--focus-ring:0 0 0 1px hsl(var(--light-focus-hsl)),0 0 0 3px hsla(var(--light-focus-hsl),0.7);--ui-control-color:var(--selected-item-color);background-color:var(--dark-sel-color);color:var(--selected-item-color);z-index:1}.customize-sources-item .label{-webkit-flex:1;flex:1}.customize-sources-item.heading .label{color:var(--light-text-color);font-size:12px;font-weight:700;text-transform:uppercase}.customize-sources-item.heading.sel .label{color:var(--selected-item-color)}.customize-sources-item__move{-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;position:absolute;top:50%;-webkit-transform:translate(-50%,-50%);-o-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}body.ltr .customize-sources-item__move{right:0}body.rtl .customize-sources-item__move{left:0}.customize-sources-item__move.icon{display:-webkit-flex;display:flex;text-decoration:none}.customize-sources-item__btn{margin:3px;padding:8px 14px}body.ltr .customize-sources-item__btn{padding-right:30px}body.rtl .customize-sources-item__btn{padding-left:30px}body.ltr .customize-sources-table-column .move{margin-right:10px}body.rtl .customize-sources-table-column .move{margin-left:10px}ul.path{-webkit-align-items:stretch;align-items:stretch;display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;-webkit-flex-wrap:wrap;flex-wrap:wrap}ul.path li{-webkit-align-items:center;align-items:center;display:-webkit-inline-flex;display:inline-flex}ul.path li:not(:last-child):after{border:solid var(--light-text-color);border-width:0 1px 1px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;width:7px}body.ltr ul.path li:not(:last-child):after{margin:0 5px 0 2px}body.rtl ul.path li:not(:last-child):after{margin:0 2px 0 5px}body.ltr ul.path li:not(:last-child):after{-webkit-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}body.rtl ul.path li:not(:last-child):after{-webkit-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg)}ul.icons{display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;margin-top:20px}ul.icons li{margin:0 4px 10px 0}ul.icons li a{border:1px solid var(--white);border-radius:4px;color:var(--text-color);display:block;padding:60px 5px 10px;position:relative;text-align:center;width:110px}ul.icons li a:before{display:block;font-size:40px;left:0;line-height:60px;position:absolute;top:0;width:100%}ul.icons li a .icon img,ul.icons li a .icon svg{height:40px;left:calc(50% - 20px);position:absolute;top:12px;width:40px}ul.icons li a .icon.icon-mask svg circle,ul.icons li a .icon.icon-mask svg ellipse,ul.icons li a .icon.icon-mask svg line,ul.icons li a .icon.icon-mask svg path,ul.icons li a .icon.icon-mask svg polygon,ul.icons li a .icon.icon-mask svg polyline,ul.icons li a .icon.icon-mask svg rect,ul.icons li a .icon.icon-mask svg text{fill:var(--text-color);stroke-width:0}ul.icons li a:hover{background-color:var(--gray-050);border-color:var(--gray-100);text-decoration:none}ul.icons li a:hover .icon.icon-mask svg circle,ul.icons li a:hover .icon.icon-mask svg ellipse,ul.icons li a:hover .icon.icon-mask svg line,ul.icons li a:hover .icon.icon-mask svg path,ul.icons li a:hover .icon.icon-mask svg polygon,ul.icons li a:hover .icon.icon-mask svg polyline,ul.icons li a:hover .icon.icon-mask svg rect,ul.icons li a:hover .icon.icon-mask svg text{fill:var(--link-color);stroke-width:0}@media only screen and (max-width:380px){ul.icons li a{width:96px}}@media only screen and (max-width:320px){ul.icons li a{width:75px}}.toolbar{margin-bottom:14px;min-height:34px;position:relative}.toolbar .flex,.toolbar.flex{-webkit-align-items:flex-start;align-items:flex-start}.toolbar .text{border-radius:var(--large-border-radius)!important;box-shadow:none!important}.flex{-webkit-align-content:stretch;align-content:stretch;-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;gap:var(--s)}.flex:not(.flex-nowrap){-webkit-flex-wrap:wrap;flex-wrap:wrap}.flex>.label{white-space:nowrap}.centeralign .flex{-webkit-justify-content:center;justify-content:center}.inline-flex{-webkit-align-content:stretch;align-content:stretch;-webkit-align-items:center;align-items:center;display:-webkit-inline-flex;display:inline-flex;gap:var(--s)}.gap-xs{gap:var(--xs)}.gap-s{gap:var(--s)}.gap-m{gap:var(--m)}.gap-l{gap:var(--l)}.gap-xl{gap:var(--xl)}.flex-grow{-webkit-flex:1;flex:1}.flex-justify{-webkit-justify-content:space-between;justify-content:space-between}.flex-justify-start{-webkit-justify-content:flex-start;justify-content:flex-start}.flex-justify-end{-webkit-justify-content:flex-end;justify-content:flex-end}.flex-justify-center{-webkit-justify-content:center;justify-content:center}.flex-start{-webkit-align-items:flex-start;align-items:flex-start}.flex-end{-webkit-align-items:flex-end;align-items:flex-end}.flex-center{-webkit-align-items:center;align-items:center}.flex-stretch{-webkit-align-items:stretch;align-items:stretch}.spacer{width:14px}.buttons{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;gap:7px;margin:24px 0;position:relative}.footer>.buttons,.hud-footer>.buttons{margin:0}.btn{-webkit-align-items:center;align-items:center;-webkit-appearance:none;appearance:none;background-color:rgba(96,125,159,.25);border:none;border-radius:var(--large-border-radius);box-sizing:border-box;color:currentColor;cursor:pointer;display:-webkit-inline-flex;display:inline-flex;font-size:inherit;-webkit-justify-content:center;justify-content:center;padding:7px 14px;position:relative;text-align:center;-webkit-user-select:none;user-select:none;white-space:nowrap}.btn.chromeless{height:auto;padding:0}.btn.chromeless,.btn.chromeless:active,.btn.chromeless:focus,.btn.chromeless:hover{background-color:transparent}.btn.chromeless:active,.btn.chromeless:hover{text-decoration:underline}.btn.wrap{height:auto;min-height:34px;text-align:left;white-space:normal}.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]).focus,.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]):focus,.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]):hover{background-color:rgba(96,125,159,.3)}.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]).active,.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]):active{background-color:rgba(96,125,159,.4)}.btn[type=color]{padding:6px!important;width:36px}.btn.active,.btn.loading{cursor:default}.btn:hover{text-decoration:none}body.ltr .btn.icon:not(:empty):not(.btn-empty):before,body.ltr .btn.menubtn.icon.btn-empty:before,body.ltr .btn.menubtn.icon:empty:before,body.ltr .btn.menubtn[data-icon].btn-empty:before,body.ltr .btn.menubtn[data-icon]:empty:before,body.ltr .btn[data-icon]:not(:empty):not(.btn-empty):before{margin-right:5px}body.rtl .btn.icon:not(:empty):not(.btn-empty):before,body.rtl .btn.menubtn.icon.btn-empty:before,body.rtl .btn.menubtn.icon:empty:before,body.rtl .btn.menubtn[data-icon].btn-empty:before,body.rtl .btn.menubtn[data-icon]:empty:before,body.rtl .btn[data-icon]:not(:empty):not(.btn-empty):before{margin-left:5px}.btn:not(.loading) .spinner{display:none}.btn.loading .label,.btn.loading:after,.btn.loading:before{visibility:hidden}.btn div.checkbox{margin-top:2px}.disabled{opacity:.25}.disabled,.disabled .btn{cursor:default}.btn,.spinner{height:34px}body.ltr .btn[data-icon-after]:not(:empty):not(.btn-empty):after,body.ltr .menu-toggle:not(:empty):not(.btn-empty):after,body.ltr .menubtn.icon:after,body.ltr .menubtn:not(:empty):not(.btn-empty):after{margin-left:6px}body.rtl .btn[data-icon-after]:not(:empty):not(.btn-empty):after,body.rtl .menu-toggle:not(:empty):not(.btn-empty):after,body.rtl .menubtn.icon:after,body.rtl .menubtn:not(:empty):not(.btn-empty):after{margin-right:6px}.btn.icon:before,.btn[data-icon-after]:after,.btn[data-icon]:before{position:relative}.btn.icon.small:before,.btn.small[data-icon-after]:after,.btn.small[data-icon]:before{font-size:10px}.btngroup{-webkit-align-items:center;align-items:center;border-radius:var(--large-border-radius);display:-webkit-flex;display:flex;position:relative;white-space:nowrap;z-index:1}.btngroup.fullwidth .btn{-webkit-flex:1;flex:1}.btngroup.disabled .btn{cursor:default}.btngroup .btn:focus{z-index:1}body.ltr .btngroup .btn:not(.dashed):not(:last-child):not(.btngroup-btn-last){margin-right:1px}body.rtl .btngroup .btn:not(.dashed):not(:last-child):not(.btngroup-btn-last){margin-left:1px}body.ltr .btngroup .btn:not(:first-child):not(.btngroup-btn-first){border-bottom-left-radius:0;border-top-left-radius:0}body.ltr .btngroup .btn:not(:last-child):not(.btngroup-btn-last){border-bottom-right-radius:0;border-top-right-radius:0}body.rtl .btngroup .btn:not(:first-child):not(.btngroup-btn-first){border-bottom-right-radius:0;border-top-right-radius:0}body.rtl .btngroup .btn:not(:last-child):not(.btngroup-btn-last){border-bottom-left-radius:0;border-top-left-radius:0}.btngroup--exclusive .btn[aria-pressed=true]:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]){background-color:var(--gray-500);color:var(--white)}.copytext{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;position:relative;white-space:nowrap;z-index:1}body.ltr .copytext .text{border-bottom-right-radius:0;border-top-right-radius:0;min-width:0}body.ltr .copytext .btn,body.rtl .copytext .text{border-bottom-left-radius:0;border-top-left-radius:0}body.rtl .copytext .btn{border-bottom-right-radius:0;border-top-right-radius:0}.copytextbtn{-webkit-align-items:center;align-items:center;border:1px solid var(--hairline-color);border-radius:var(--small-border-radius);display:-webkit-inline-flex;display:inline-flex;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;padding:0 9px}.copytextbtn,.copytextbtn input{color:var(--medium-text-color);cursor:pointer}.copytextbtn input{background-color:transparent;border:none;box-shadow:none;height:32px;padding:0;text-align:center}.copytextbtn span{background:none;color:var(--light-text-color);margin-top:-3px;padding:0;width:13px}body.ltr .copytextbtn span{margin-left:5px}body.rtl .copytextbtn span{margin-right:5px}.copytextbtn:focus,.copytextbtn:hover{border-color:var(--medium-hairline-color);color:var(--text-color)}.copytextbtn:focus input,.copytextbtn:hover input{color:var(--text-color)}.copytextbtn.small{padding:0 5px}.copytextbtn.small input{font-size:11px!important;height:20px}.menu-toggle,.menubtn{-webkit-align-items:center;align-items:center;display:-webkit-inline-flex;display:inline-flex;-webkit-user-select:none;user-select:none}.menu-toggle:after,.menubtn:after{border:solid;border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;position:relative;-webkit-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg);width:7px}.menu-toggle.btn:after,.menubtn.btn:after{top:-1px}.menu-toggle.btn:not(.disabled):not(.inactive).active:after,.menu-toggle.btn:not(.disabled):not(.inactive):active:after,.menubtn.btn:not(.disabled):not(.inactive).active:after,.menubtn.btn:not(.disabled):not(.inactive):active:after{border-color:var(--ui-control-active-color)}.menu-toggle.btn.submit:after,.menubtn.btn.submit:after{border-color:var(--white)!important;opacity:.8}.menu-toggle.btn.submit:not(.disabled):not(.inactive).active:after,.menu-toggle.btn.submit:not(.disabled):not(.inactive).hover:after,.menu-toggle.btn.submit:not(.disabled):not(.inactive):active:after,.menu-toggle.btn.submit:not(.disabled):not(.inactive):hover:after,.menubtn.btn.submit:not(.disabled):not(.inactive).active:after,.menubtn.btn.submit:not(.disabled):not(.inactive).hover:after,.menubtn.btn.submit:not(.disabled):not(.inactive):active:after,.menubtn.btn.submit:not(.disabled):not(.inactive):hover:after{opacity:1}.menu-toggle:not(.btn):not(.icon),.menubtn:not(.btn):not(.icon){height:17px}.menu-toggle:not(.btn):not(.icon):after,.menubtn:not(.btn):not(.icon):after{border-color:var(--link-color);top:-2px}body.ltr .menu-toggle.btn-empty,body.ltr .menu-toggle:empty,body.ltr .menubtn.btn-empty,body.ltr .menubtn:empty{padding-left:8px}body.rtl .menu-toggle.btn-empty,body.rtl .menu-toggle:empty,body.rtl .menubtn.btn-empty,body.rtl .menubtn:empty{padding-right:8px}body.ltr .menu-toggle.btn-empty,body.ltr .menu-toggle:empty,body.ltr .menubtn.btn-empty,body.ltr .menubtn:empty{padding-right:8px}body.rtl .menu-toggle.btn-empty,body.rtl .menu-toggle:empty,body.rtl .menubtn.btn-empty,body.rtl .menubtn:empty{padding-left:8px}@-webkit-keyframes rotator{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-o-keyframes rotator{0%{-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);-o-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes rotator{0%{-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);-o-transform:rotate(1turn);transform:rotate(1turn)}}.spinner{-webkit-align-items:center;align-items:center;display:-webkit-inline-flex;display:inline-flex;height:var(--size,34px);-webkit-justify-content:center;justify-content:center;width:var(--size,24px)}.spinner:before{-webkit-animation:rotator .7s linear infinite;-o-animation:rotator .7s linear infinite;animation:rotator .7s linear infinite;border-color:transparent currentcolor currentcolor transparent;border-radius:50%;border-style:solid;border-width:2px;box-sizing:border-box;content:"";display:block;font-size:0;height:var(--size,20px);-o-object-fit:scale-down;object-fit:scale-down;opacity:.8;width:var(--size,20px)}.spinner.small{--size:12px}.spinner.big{--size:48px}.spinner.spinner-absolute{height:var(--size,20px);left:calc(50% - var(--size, 20px)/2);position:absolute;top:calc(50% - var(--size, 20px)/2);width:var(--size,20px)}body.ltr .btn+.spinner{margin-left:7px}body.rtl .btn+.spinner{margin-right:7px}body.ltr .buttons .btn+.spinner,body.ltr .buttons .btngroup+.spinner{margin-left:0}body.rtl .buttons .btn+.spinner,body.rtl .buttons .btngroup+.spinner{margin-right:0}body.ltr .buttons.right .btn+.spinner{margin-right:var(--neg-padding)}body.rtl .buttons.right .btn+.spinner{margin-left:var(--neg-padding)}.btn.small,.btngroup.small .btn{font-size:12px;line-height:22px;padding:0 7px!important}.btn.small,.btn.small+.spinner,.btngroup.small,.btngroup.small input.btn{height:22px}.btn.big,.btngroup.big .btn{font-size:14px;line-height:36px;padding:0 14px}body.ltr .btn.big[data-icon]:before,body.ltr .preview-btn:before,body.ltr .view-btn:before{margin-left:-2px}body.rtl .btn.big[data-icon]:before,body.rtl .preview-btn:before,body.rtl .view-btn:before{margin-right:-2px}.btn.big,.btn.big+.spinner,.btngroup.big,.btngroup.big input.btn{height:36px}.btn.secondary,.btn.submit{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;color:var(--white)!important;font-weight:500}.btn.submit{background-color:var(--primary-color)!important}.btn.submit:not(.disabled):not(.inactive):not(.loading).hover,.btn.submit:not(.disabled):not(.inactive):not(.loading):focus,.btn.submit:not(.disabled):not(.inactive):not(.loading):hover{background-color:#d61f2b!important}.btn.submit:not(.disabled):not(.inactive):not(.loading).active,.btn.submit:not(.disabled):not(.inactive):not(.loading):active{background-color:#c01b26!important}.btn.caution{background-color:var(--red-050)!important;color:var(--error-color)}.btn.caution.hover,.btn.caution:focus,.btn.caution:hover{background-color:#ffcaca!important}.btn.caution.active,.btn.caution:active{background-color:var(--red-100)!important}.btn.secondary,.secondary-buttons .btn.submit{background-color:var(--secondary-color)!important}.btn.secondary:not(.disabled):not(.inactive):not(.loading).hover,.btn.secondary:not(.disabled):not(.inactive):not(.loading):focus,.btn.secondary:not(.disabled):not(.inactive):not(.loading):hover,.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading).hover,.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading):focus,.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading):hover{background-color:#55616d!important}.btn.secondary:not(.disabled):not(.inactive):not(.loading).active,.btn.secondary:not(.disabled):not(.inactive):not(.loading):active,.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading).active,.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading):active{background-color:#4a545e!important}div.btn.submit{overflow:hidden;position:relative}div.btn.submit input{left:100%;position:absolute}.btn.dashed{background-color:transparent;border:1px dashed var(--input-border-color)}body.ltr .btngroup .btn.dashed:not(:last-child):not(.btngroup-btn-last){border-right:1px solid transparent}body.rtl .btngroup .btn.dashed:not(:last-child):not(.btngroup-btn-last){border-left:1px solid transparent}body.ltr .btngroup .btn.dashed:not(:last-child):not(.btngroup-btn-last){margin-right:-1px}body.rtl .btngroup .btn.dashed:not(:last-child):not(.btngroup-btn-last){margin-left:-1px}.btn.dashed:focus{background-color:rgba(205,216,228,.1);border-color:transparent}.reduce-focus-visibility .btn.dashed:focus:not(:focus-visible){border:1px dashed var(--medium-hairline-color)}.btn.dashed:not(.disabled).active,.btn.dashed:not(.disabled):active{background-color:rgba(205,216,228,.25)}.color-input-container{position:relative}.color-input-container .color-hex-indicator{line-height:34px;position:absolute;text-align:center;top:0;-webkit-user-select:none;user-select:none;width:1em}body.ltr .color-input-container .color-hex-indicator{left:7px}body.rtl .color-input-container .color-hex-indicator{right:7px}.color-input{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:.9em!important}body.ltr .color-input{padding-left:calc(7px + 1em)}body.rtl .color-input{padding-right:calc(7px + 1em)}.color{border-radius:17px;display:inline-block;height:34px;padding:0;position:relative;vertical-align:middle;width:34px}.color:not(.static){cursor:pointer}.color:not(.small){background-image:-o-linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(315deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),-o-linear-gradient(315deg,transparent 75%,var(--gray-100) 75%);background-image:linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),linear-gradient(135deg,var(--gray-100) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),linear-gradient(135deg,transparent 75%,var(--gray-100) 75%);background-position:0 0,8.5px 0,8.5px -8.5px,0 8.5px;-o-background-size:17px 17px;background-size:17px 17px}.color.small{background-image:-o-linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(315deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),-o-linear-gradient(315deg,transparent 75%,var(--gray-100) 75%);background-image:linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),linear-gradient(135deg,var(--gray-100) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),linear-gradient(135deg,transparent 75%,var(--gray-100) 75%);background-position:0 0,4px 0,4px -4px,0 4px;-o-background-size:8px 8px;background-size:8px 8px;height:16px;width:16px}.color .color-preview{border-radius:17px;box-shadow:inset 0 0 0 1px var(--input-border-color);height:100%;position:absolute;top:0;width:100%}body.ltr .color .color-preview{left:0}body.rtl .color .color-preview{right:0}.color .color-preview:focus-within{box-shadow:var(--focus-ring)}.color .color-preview>.color-preview-input{border:none;height:100%;margin:0;opacity:0;padding:0;position:absolute;width:100%}body.ltr .color .color-preview>.color-preview-input{left:0}body.rtl .color .color-preview>.color-preview-input{right:0}.colorhex{color:var(--medium-text-color);display:inline-block;margin-left:5px;vertical-align:middle}.lightswitch-outer-container{display:-webkit-flex;display:flex}.lightswitch-outer-container .lightswitch-inner-container{-webkit-align-items:center;align-items:center;border:1px solid var(--hairline-color);border-radius:var(--small-border-radius);display:-webkit-flex;display:flex}.lightswitch-outer-container .lightswitch-inner-container span{color:var(--medium-text-color);cursor:default;padding:7px 0}body.ltr .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=on]{padding-right:10px}body.rtl .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=on]{padding-left:10px}body.ltr .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=on]{margin-left:7px}body.rtl .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=on]{margin-right:7px}body.ltr .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=off]{padding-left:10px}body.rtl .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=off]{padding-right:10px}body.ltr .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=off]{margin-right:7px}body.rtl .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=off]{margin-left:7px}.lightswitch{background-image:-o-linear-gradient(left,var(--gray-400),var(--gray-400));background-image:linear-gradient(to right,var(--gray-400),var(--gray-400));border:none!important;cursor:pointer;display:block;overflow:hidden;position:relative;-o-transition:background-image .1s linear;transition:background-image .1s linear;-webkit-user-select:none;user-select:none}.lightswitch.on{background-image:-o-linear-gradient(left,var(--enabled-color),var(--enabled-color));background-image:linear-gradient(to right,var(--enabled-color),var(--enabled-color))}.lightswitch.indeterminate{background-image:-o-linear-gradient(left,var(--enabled-color),var(--gray-300));background-image:linear-gradient(to right,var(--enabled-color),var(--gray-300))}.lightswitch .lightswitch-container{height:100%;position:relative}.lightswitch .lightswitch-container .handle{background-color:var(--white);position:absolute;top:1px}.lightswitch:not(.small){border-radius:11px;height:22px;width:34px}.lightswitch:not(.small) .lightswitch-container{width:46px}body.ltr .lightswitch:not(.small) .lightswitch-container{margin-left:-12px}body.rtl .lightswitch:not(.small) .lightswitch-container{margin-right:-12px}.lightswitch:not(.small) .lightswitch-container .handle{border-radius:10px;height:20px;left:calc(50% - 10px);width:20px}.lightswitch.small{border-radius:9px;height:18px;width:28px}.lightswitch.small .lightswitch-container{width:38px}body.ltr .lightswitch.small .lightswitch-container{margin-left:-10px}body.rtl .lightswitch.small .lightswitch-container{margin-right:-10px}.lightswitch.small .lightswitch-container .handle{border-radius:8px;height:16px;left:calc(50% - 8px);width:16px}table .lightswitch{display:inline-block;margin-bottom:-5px}body.ltr .lightswitch.on .lightswitch-container{margin-left:0}body.rtl .lightswitch.on .lightswitch-container{margin-right:0}body.ltr .lightswitch.indeterminate:not(.small) .lightswitch-container{margin-left:-6px}body.rtl .lightswitch.indeterminate:not(.small) .lightswitch-container{margin-right:-6px}body.ltr .lightswitch.indeterminate.small .lightswitch-container{margin-left:-5px}body.rtl .lightswitch.indeterminate.small .lightswitch-container{margin-right:-5px}table.data+.pagination{margin-top:24px}.pagination .page-link{-webkit-align-items:center;align-items:center;border-radius:var(--medium-border-radius);display:-webkit-flex;display:flex;height:32px;-webkit-justify-content:center;justify-content:center;width:32px}.pagination .page-link:after{position:relative;-o-transition:border-color .1s linear;transition:border-color .1s linear}.pagination .page-link.prev-page:after{border:solid var(--light-text-color);border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;width:7px}body.ltr .pagination .page-link.prev-page:after{-webkit-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg)}body.rtl .pagination .page-link.prev-page:after{-webkit-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}body.ltr .pagination .page-link.prev-page:after{right:-1px}body.rtl .pagination .page-link.prev-page:after{left:-1px}.pagination .page-link.next-page:after{border:solid var(--light-text-color);border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;width:7px}body.ltr .pagination .page-link.next-page:after{-webkit-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}body.rtl .pagination .page-link.next-page:after{-webkit-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg)}body.ltr .pagination .page-link.next-page:after{left:-1px}body.rtl .pagination .page-link.next-page:after{right:-1px}.pagination .page-link:not(.disabled){box-shadow:inset 0 0 0 1px var(--hairline-color);cursor:pointer;-o-transition:box-shadow .1s linear;transition:box-shadow .1s linear}.pagination .page-link:not(.disabled):hover{box-shadow:inset 0 0 0 1px var(--link-color);text-decoration:none}.pagination .page-link:not(.disabled):hover:after{border-color:var(--link-color)}body.reduce-focus-visibility .pagination .page-link:not(.disabled):focus-visible,body:not(.reduce-focus-visibility) .pagination .page-link:not(.disabled):focus{box-shadow:inset 0 0 0 1px var(--hairline-color),var(--focus-ring)}.pagination .page-link.disabled{opacity:1}.pagination .page-link.disabled:after{border-color:var(--hairline-color)}body.ltr .actions{float:right}body.ltr .actions>li,body.rtl .actions{float:left}body.rtl .actions>li{float:right}body.ltr .actions>li+li{margin-left:10px}body.rtl .actions>li+li{margin-right:10px}h1+.actions{margin-top:-100px}h2+.actions{margin-top:-54px}.tablepane{margin:-24px -24px -12px;overflow-x:auto}body.ltr .tablepane table.data td:first-child,body.ltr .tablepane table.data th:first-child{padding-left:24px}body.rtl .tablepane table.data td:first-child,body.rtl .tablepane table.data th:first-child{padding-right:24px}body.ltr .tablepane table.data td:last-child,body.ltr .tablepane table.data th:last-child{padding-right:24px}body.rtl .tablepane table.data td:last-child,body.rtl .tablepane table.data th:last-child{padding-left:24px}table.fixed-layout{table-layout:fixed}table td.thin,table th.thin{white-space:nowrap;width:.01%!important}table thead th{font-weight:700;vertical-align:top}body.ltr table thead th{text-align:left}body.rtl table thead th{text-align:right}table:not(.data) td,table:not(.data) th{padding-bottom:7px;padding-top:7px}table:not(.data) td:not(:first-child),table:not(.data) th:not(:first-child){padding-left:12px}table:not(.data) td:not(:last-child),table:not(.data) th:not(:last-child){padding-right:12px}table.data td,table.data th{box-sizing:border-box;padding-left:12px;padding-right:12px;position:relative}table.data td.checkbox-cell,table.data th.checkbox-cell{box-sizing:content-box;min-width:var(--checkbox-size);position:relative;width:var(--checkbox-size)!important}table.data td.checkbox-cell div.checkbox,table.data td.checkbox-cell input.checkbox+label,table.data th.checkbox-cell div.checkbox,table.data th.checkbox-cell input.checkbox+label{position:absolute;top:calc(50% - 8px)}table.data th{font-weight:700}body.ltr table.data caption+tbody tr:first-child td:first-child,body.ltr table.data caption+tbody tr:first-child th:first-child,body.ltr table.data caption+tfoot tr:first-child td:first-child,body.ltr table.data caption+tfoot tr:first-child th:first-child,body.ltr table.data caption+thead tr:first-child td:first-child,body.ltr table.data caption+thead tr:first-child th:first-child,body.ltr table.data tbody:first-child tr:first-child td:first-child,body.ltr table.data tbody:first-child tr:first-child th:first-child,body.ltr table.data tfoot:first-child tr:first-child td:first-child,body.ltr table.data tfoot:first-child tr:first-child th:first-child,body.ltr table.data thead:first-child tr:first-child td:first-child,body.ltr table.data thead:first-child tr:first-child th:first-child{border-top-left-radius:var(--large-border-radius)}body.rtl table.data caption+tbody tr:first-child td:first-child,body.rtl table.data caption+tbody tr:first-child th:first-child,body.rtl table.data caption+tfoot tr:first-child td:first-child,body.rtl table.data caption+tfoot tr:first-child th:first-child,body.rtl table.data caption+thead tr:first-child td:first-child,body.rtl table.data caption+thead tr:first-child th:first-child,body.rtl table.data tbody:first-child tr:first-child td:first-child,body.rtl table.data tbody:first-child tr:first-child th:first-child,body.rtl table.data tfoot:first-child tr:first-child td:first-child,body.rtl table.data tfoot:first-child tr:first-child th:first-child,body.rtl table.data thead:first-child tr:first-child td:first-child,body.rtl table.data thead:first-child tr:first-child th:first-child{border-top-right-radius:var(--large-border-radius)}body.ltr table.data caption+tbody tr:first-child td:last-child,body.ltr table.data caption+tbody tr:first-child th:last-child,body.ltr table.data caption+tfoot tr:first-child td:last-child,body.ltr table.data caption+tfoot tr:first-child th:last-child,body.ltr table.data caption+thead tr:first-child td:last-child,body.ltr table.data caption+thead tr:first-child th:last-child,body.ltr table.data tbody:first-child tr:first-child td:last-child,body.ltr table.data tbody:first-child tr:first-child th:last-child,body.ltr table.data tfoot:first-child tr:first-child td:last-child,body.ltr table.data tfoot:first-child tr:first-child th:last-child,body.ltr table.data thead:first-child tr:first-child td:last-child,body.ltr table.data thead:first-child tr:first-child th:last-child{border-top-right-radius:var(--large-border-radius)}body.rtl table.data caption+tbody tr:first-child td:last-child,body.rtl table.data caption+tbody tr:first-child th:last-child,body.rtl table.data caption+tfoot tr:first-child td:last-child,body.rtl table.data caption+tfoot tr:first-child th:last-child,body.rtl table.data caption+thead tr:first-child td:last-child,body.rtl table.data caption+thead tr:first-child th:last-child,body.rtl table.data tbody:first-child tr:first-child td:last-child,body.rtl table.data tbody:first-child tr:first-child th:last-child,body.rtl table.data tfoot:first-child tr:first-child td:last-child,body.rtl table.data tfoot:first-child tr:first-child th:last-child,body.rtl table.data thead:first-child tr:first-child td:last-child,body.rtl table.data thead:first-child tr:first-child th:last-child{border-top-left-radius:var(--large-border-radius)}table.data thead td,table.data thead th{background-color:var(--gray-050);cursor:default;width:auto}table.data thead td,table.data thead th:not(.orderable){padding-bottom:15px;padding-top:15px}table.data thead th{vertical-align:middle;white-space:nowrap}table.data thead th.orderable{padding-left:0;padding-right:0;position:relative}table.data thead th.orderable:not(.ordered):hover{background-color:var(--gray-100)}table.data thead th.orderable.ordered{background-color:var(--light-sel-color)}table.data thead th.orderable.ordered:not(.loading) button:after{border:solid;border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;position:absolute;top:calc(50% - 3px);-webkit-transform:rotate(225deg);-o-transform:rotate(225deg);transform:rotate(225deg);width:7px}body.ltr table.data thead th.orderable.ordered:not(.loading) button:after{right:10px}body.rtl table.data thead th.orderable.ordered:not(.loading) button:after{left:10px}table.data thead th.orderable.ordered:not(.loading).desc button:after{-webkit-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}table.data thead th.orderable button{font:inherit;padding:14px;position:relative;width:100%}body.ltr table.data thead th.orderable button{padding-right:26px}body.rtl table.data thead th.orderable button{padding-left:26px}body.ltr table.data thead th.orderable button{text-align:left}body.rtl table.data thead th.orderable button{text-align:right}table.data thead th.orderable button:focus{z-index:1}table.data thead th:not(.loading) .spinner{display:none}table.data thead th .spinner{--size:12px;position:absolute;top:calc(50% - 6px)}body.ltr table.data thead th .spinner{right:8px}body.rtl table.data thead th .spinner{left:8px}table.data tbody tr:not(.disabled):hover td,table.data tbody tr:not(.disabled):hover th{background-color:var(--gray-050)}table.data tbody tr:not(.disabled):focus{position:relative;z-index:1}table.data tbody tr:not(.disabled).sel td,table.data tbody tr:not(.disabled).sel th{background-color:var(--light-sel-color)}table.data tbody td,table.data tbody th{background-clip:padding-box;padding-bottom:7px;padding-top:7px}table.data tbody td.timestamp{color:var(--light-text-color);vertical-align:bottom;white-space:nowrap}body.ltr table.data tbody td.timestamp{text-align:right}body.rtl table.data tbody td.timestamp{text-align:left}table.data thead+tbody tr td,table.data thead+tbody tr th,table.data tr+tr td,table.data tr+tr th{border-top:1px solid transparent}table.collapsed{width:auto}table.collapsed,table.collapsed tbody,table.collapsed tbody td,table.collapsed tbody th,table.collapsed tbody tr{border:none;display:block;padding:0;white-space:normal;width:auto!important}body.ltr table.collapsed,body.ltr table.collapsed tbody,body.ltr table.collapsed tbody td,body.ltr table.collapsed tbody th,body.ltr table.collapsed tbody tr{text-align:left}body.rtl table.collapsed,body.rtl table.collapsed tbody,body.rtl table.collapsed tbody td,body.rtl table.collapsed tbody th,body.rtl table.collapsed tbody tr{text-align:right}table.collapsed thead{display:none}table.collapsed tbody tr{border-bottom:1px dotted var(--hairline-color);padding:6px 0}table.collapsed tbody tr:after{clear:both;content:"";display:block;height:0;visibility:hidden}table.collapsed tbody td,table.collapsed tbody th{padding:2px 0!important}table.collapsed tbody td:empty{display:none}body.ltr table.collapsed tbody [data-title]{margin-right:0}body.rtl table.collapsed tbody [data-title]{margin-left:0}table.collapsed tbody [data-title]:before{content:attr(data-title) ":";font-weight:700;margin-right:5px}table.collapsed tbody [data-title] form{display:inline-block}.datatablesorthelper,.editabletablesorthelper,.thumbviewhelper{background-color:var(--white);box-shadow:0 1px 5px -1px rgba(31,41,51,.2)}.datatablesorthelper,.datatablesorthelper .element,.datatablesorthelper a{cursor:move!important}.datatablesorthelper tr:first-child td,.datatablesorthelper tr:first-child th{border-top:none!important}.datatablesorthelper tr:last-child td,.datatablesorthelper tr:last-child th{border-bottom:none!important}.element{border-radius:var(--small-border-radius);cursor:default;font-weight:400;position:relative;-webkit-user-select:none;user-select:none}.element:focus,li:focus .element{background-color:var(--gray-050)}.element.sel,li.sel .element{background-color:var(--light-sel-color)!important;cursor:default}.element.sel:focus,li.sel .element:focus{background-color:#bdcbdb!important}.element.sel.hasthumb .elementthumb img,li.sel .element.hasthumb .elementthumb img{box-shadow:0 0 0 1px rgba(81,95,108,.1),0 6px 4px -4px rgba(81,95,108,.2)}.element.hasthumb .elementthumb:not(:empty){-ms-flex-pack:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center;position:absolute}.element.hasthumb .elementthumb:not(:empty) img{border-radius:var(--small-border-radius);display:block;-webkit-flex-shrink:0;flex-shrink:0;max-height:100%;max-width:100%;pointer-events:none}.element.hasthumb .elementthumb:not(:empty).rounded img{border-radius:50%}.element.hasthumb .elementthumb.open-preview{cursor:pointer}.element.error [data-icon=alert]{margin-left:var(--xs)}.element .label{display:inline-block}.element .label .draft-label{background:var(--gray-100);border-radius:var(--large-border-radius);color:var(--medium-text-color);display:inline-block;font-weight:400;padding:1px 5px;text-decoration:none!important}body.ltr .element .label .draft-label{margin:-1px 0 -1px 7px}body.rtl .element .label .draft-label{margin:-1px 7px -1px 0}.element.large:not(.hasthumb),.element.small{box-sizing:border-box;display:inline-block;padding:7px}body.ltr .element.large:not(.hasthumb).hasstatus,body.ltr .element.small.hasstatus{padding-left:22px}body.rtl .element.large:not(.hasthumb).hasstatus,body.rtl .element.small.hasstatus{padding-right:22px}.element.large:not(.hasthumb).hasstatus .status,.element.small.hasstatus .status{position:absolute;top:calc(50% - 5px)}body.ltr .element.large:not(.hasthumb).hasstatus .status,body.ltr .element.small.hasstatus .status{left:7px}body.rtl .element.large:not(.hasthumb).hasstatus .status,body.rtl .element.small.hasstatus .status{right:7px}.element.large:not(.hasthumb).hasstatus .icon:not(.delete),.element.small.hasstatus .icon:not(.delete){position:absolute;top:calc(50% - 11px)}body.ltr .element.large:not(.hasthumb).hasstatus .icon:not(.delete),body.ltr .element.small.hasstatus .icon:not(.delete){left:6px}body.rtl .element.large:not(.hasthumb).hasstatus .icon:not(.delete),body.rtl .element.small.hasstatus .icon:not(.delete){right:6px}body.ltr .element.large:not(.hasthumb).hasthumb,body.ltr .element.small.hasthumb{padding-left:39px}body.rtl .element.large:not(.hasthumb).hasthumb,body.rtl .element.small.hasthumb{padding-right:39px}.element.large:not(.hasthumb).hasthumb .elementthumb:not(:empty),.element.small.hasthumb .elementthumb:not(:empty){height:34px;top:calc(50% - 17px);width:34px}body.ltr .element.large:not(.hasthumb).hasthumb .elementthumb:not(:empty),body.ltr .element.small.hasthumb .elementthumb:not(:empty){left:0}body.rtl .element.large:not(.hasthumb).hasthumb .elementthumb:not(:empty),body.rtl .element.small.hasthumb .elementthumb:not(:empty){right:0}.element.large:not(.hasthumb).hasthumb .elementthumb:not(:empty).checkered img,.element.small.hasthumb .elementthumb:not(:empty).checkered img{background-image:-o-linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(315deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),-o-linear-gradient(315deg,transparent 75%,var(--gray-100) 75%);background-image:linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),linear-gradient(135deg,var(--gray-100) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),linear-gradient(135deg,transparent 75%,var(--gray-100) 75%);background-position:0 0,4px 0,4px -4px,0 4px;-o-background-size:8px 8px;background-size:8px 8px}body.ltr .element.large:not(.hasthumb).hasthumb.hasstatus,body.ltr .element.small.hasthumb.hasstatus{padding-left:54px}body.rtl .element.large:not(.hasthumb).hasthumb.hasstatus,body.rtl .element.small.hasthumb.hasstatus{padding-right:54px}body.ltr .element.large:not(.hasthumb).hasthumb.hasstatus .status,body.ltr .element.small.hasthumb.hasstatus .status{left:39px}body.rtl .element.large:not(.hasthumb).hasthumb.hasstatus .status,body.rtl .element.small.hasthumb.hasstatus .status{right:39px}.element.large.hasthumb{box-sizing:border-box;display:block;padding:132px 7px 7px;width:134px}body.ltr .element.large.hasthumb.hasstatus{padding-left:22px}body.rtl .element.large.hasthumb.hasstatus{padding-right:22px}.element.large.hasthumb.hasstatus .status{position:absolute;top:138px}body.ltr .element.large.hasthumb.hasstatus .status{left:7px}body.rtl .element.large.hasthumb.hasstatus .status{right:7px}.element.large.hasthumb .elementthumb:not(:empty){height:120px;top:7px;width:120px}body.ltr .element.large.hasthumb .elementthumb:not(:empty){left:0}body.rtl .element.large.hasthumb .elementthumb:not(:empty){right:0}.element.large.hasthumb .elementthumb:not(:empty).checkered img{background-image:-o-linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(315deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),-o-linear-gradient(315deg,transparent 75%,var(--gray-100) 75%);background-image:linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),linear-gradient(135deg,var(--gray-100) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),linear-gradient(135deg,transparent 75%,var(--gray-100) 75%);background-position:0 0,7.5px 0,7.5px -7.5px,0 7.5px;-o-background-size:15px 15px;background-size:15px 15px}.element.large.hasthumb .label{word-wrap:normal;display:block;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}body.ltr .element.removable .label{padding-right:20px}body.rtl .element.removable .label{padding-left:20px}.element.removable .delete:before{color:var(--ui-control-color)}.element.removable.large:not(.hasthumb) .delete,.element.removable.small .delete{position:absolute;top:calc(50% - 11px)}body.ltr .element.removable.large:not(.hasthumb) .delete,body.ltr .element.removable.small .delete{right:7px}body.rtl .element.removable.large:not(.hasthumb) .delete,body.rtl .element.removable.small .delete{left:7px}.element.removable.large.hasthumb .delete{position:absolute}body.ltr .element.removable.large.hasthumb .delete{right:7px}body.rtl .element.removable.large.hasthumb .delete{left:7px}.element:not(.removable) .delete{display:none}.elements{position:relative}.elements:not(.busy) .update-spinner{display:none}.elements.busy{min-height:200px}.elements.busy:after{background:hsla(0,0%,100%,.75);border-radius:var(--large-border-radius);content:"";display:block;font-size:0;height:100%;left:-24px;position:absolute;top:0;width:calc(100% + 48px)}.elements.busy .update-spinner{z-index:1}.elements .header{background-color:var(--gray-050);box-shadow:none;margin:-24px -24px 24px;padding:14px 24px}.elements .header:after{content:""}.elements .header .selectallcontainer{cursor:default}body.ltr .elements .header .selectallcontainer .checkbox{margin-right:5px}body.rtl .elements .header .selectallcontainer .checkbox{margin-left:5px}.elements .tableview .move,.elements .tableview .toggle{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;height:var(--touch-target-size);-webkit-justify-content:center;justify-content:center;position:absolute;top:50%;-webkit-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);width:var(--touch-target-size)}body.ltr .elements .tableview .move,body.ltr .elements .tableview .toggle{margin-left:calc(var(--touch-target-size)*-1)}body.rtl .elements .tableview .move,body.rtl .elements .tableview .toggle{margin-right:calc(var(--touch-target-size)*-1)}.elements .tableview .move{font-size:11px;text-decoration:none}.elements .tableview .toggle{border-radius:50%;padding:4px;text-align:center}body.ltr .elements .tableview .move+.toggle{margin-left:calc(var(--touch-target-size)*-2)}body.rtl .elements .tableview .move+.toggle{margin-right:calc(var(--touch-target-size)*-2)}.elements .thumbsview{display:grid;gap:5px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));width:calc(100% + 15px)}body.ltr .elements .thumbsview{margin:-7px -8px -8px -7px}body.rtl .elements .thumbsview{margin:-7px -7px -8px -8px}.elements .thumbsview li{max-width:226px;position:relative}body.ltr .elements .thumbsview li{margin:0 1px 1px 0}body.rtl .elements .thumbsview li{margin:0 0 1px 1px}.elements .thumbsview li:hover .element{background-color:var(--gray-050)}.elements .thumbsview li .element.large.hasthumb{width:unset}.elements .thumbsview li .element.large.hasthumb .elementthumb:not(:empty){width:100%}body.ltr .elements .thumbsview li.has-checkbox .element.hasthumb:not(.hasstatus){padding-left:28px}body.rtl .elements .thumbsview li.has-checkbox .element.hasthumb:not(.hasstatus){padding-right:28px}body.ltr .elements .thumbsview li.has-checkbox .element.hasthumb.hasstatus{padding-left:43px}body.rtl .elements .thumbsview li.has-checkbox .element.hasthumb.hasstatus{padding-right:43px}body.ltr .elements .thumbsview li.has-checkbox .element.hasthumb.hasstatus .status{left:28px}body.rtl .elements .thumbsview li.has-checkbox .element.hasthumb.hasstatus .status{right:28px}.elements .thumbsview li.has-checkbox .checkbox{position:absolute;top:134px}body.ltr .elements .thumbsview li.has-checkbox .checkbox{left:7px}body.rtl .elements .thumbsview li.has-checkbox .checkbox{right:7px}.export-form{position:relative}.export-form .spinner{bottom:0;position:absolute}body.ltr .export-form .spinner{right:-24px}body.rtl .export-form .spinner{left:-24px}.thumbviewhelper{margin:-7px;padding:7px}.thumbviewhelper .thumbsview,.thumbviewhelper .thumbsview li{margin:0!important}.structure{position:relative;z-index:1}body.ltr .structure li{padding-left:8px}body.rtl .structure li{padding-right:8px}.structure li.collapsed>ul{display:none}.structure li .add.active,.structure li .row:hover>.icon,.structure li.draghelper>.row .move{opacity:1}.structure li.draghelper>.row .add{opacity:0}.structure li.draghelper>.row .move:before{color:var(--link-color)}.structure li.draginsertion{background-color:var(--link-color)!important;border-radius:1px;height:2px;position:relative}body.ltr .structure li.draginsertion{margin:-1px 0 -1px 8px}body.rtl .structure li.draginsertion{margin:-1px 8px -1px 0}body.ltr .structure li.draginsertion{padding-left:0}body.rtl .structure li.draginsertion{padding-right:0}body.ltr .structure li.draginsertion{border-left:none}body.rtl .structure li.draginsertion{border-right:none}.structure li .toggle{padding:4px;position:relative;z-index:1}body.ltr .structure li .toggle{float:left}body.rtl .structure li .toggle{float:right}body.ltr .structure li .toggle{margin:10px -8px 0 -12px}body.rtl .structure li .toggle{margin:10px -12px 0 -8px}.structure li .row:after{clear:both;content:"";display:block;height:0;visibility:hidden}.structure li .add,.structure li .move{opacity:0;-o-transition:opacity .1s linear;transition:opacity .1s linear}body.ltr .structure li .add,body.ltr .structure li .move{margin:5px 5px 0 0}body.rtl .structure li .add,body.rtl .structure li .move{margin:5px 0 0 5px}.structure li .add{padding:0 5px}.structure li .add:before{color:var(--dark-hairline-color);content:"downangle"}.structure li .add.active:before,.structure li .add:not(.disabled):hover:before{color:var(--link-color)}body.ltr .structure li .checkbox{float:left}body.rtl .structure li .checkbox{float:right}body.ltr .structure li .checkbox{margin:7px 0 0 7px}body.rtl .structure li .checkbox{margin:7px 7px 0 0}body.ltr .structure ul{margin-left:-3px}body.rtl .structure ul{margin-right:-3px}.structure ul li{background-repeat:no-repeat}body.ltr .structure ul li{padding-left:38px}body.rtl .structure ul li{padding-right:38px}body.ltr .structure ul li{background-image:url(../images/branch.png);background-position:0 0}body.rtl .structure ul li{background-image:url(../images/branch_rtl.png);background-position:100% 0}body.ltr .structure ul li:not(:last-child):not(.last){padding-left:37px}body.rtl .structure ul li:not(:last-child):not(.last){padding-right:37px}body.ltr .structure ul li:not(:last-child):not(.last){border-left:1px solid var(--gray-200)}body.rtl .structure ul li:not(:last-child):not(.last){border-right:1px solid var(--gray-200)}body.ltr .structure ul li:not(:last-child):not(.last){background-position:-1px 0}body.rtl .structure ul li:not(:last-child):not(.last){background-position:calc(100% + 1px) 0}body.ltr .structure ul li.draginsertion{margin-left:38px}body.rtl .structure ul li.draginsertion{margin-right:38px}.structure .row.draghover .element{border-radius:15px;box-shadow:inset 0 0 0 2px var(--link-color);z-index:2}.structure .row.droptarget{border-radius:5px;box-shadow:inset 0 0 0 2px var(--link-color)}.elementselect{margin-top:-7px;min-height:34px;position:relative}.elementselect .elements{-webkit-align-items:flex-start;align-items:flex-start;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column}.elementselect .elements.flex-row{-webkit-flex-direction:row;flex-direction:row}.elementselect .elements.flex-wrap{-webkit-flex-wrap:wrap;flex-wrap:wrap}.elementselect .elements:after{clear:both;content:"";display:block;height:0;visibility:hidden}body.ltr .elementselect .element{margin:7px 7px 0 0}body.rtl .elementselect .element{margin:7px 0 0 7px}.elementselect .btn,.elementselect .flex{clear:both}.elementselect .element{z-index:1}.elementselect .element.small{max-width:100%}.elementselect .element.small .label{box-sizing:border-box;display:block;max-width:100%;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}.elementselect .flex{padding-top:7px}table.editable{border:1px solid var(--input-border-color);border-radius:var(--large-border-radius)}table.editable td.action,table.editable th{background-color:var(--gray-050);color:var(--medium-text-color);font-weight:400}table.editable tbody tr th,table.editable thead tr th{padding:6px 10px}table.editable thead tr th{border-bottom:1px solid var(--input-border-color)}body.ltr table.editable thead tr th.has-info{padding-right:calc(15px + 1em)}body.rtl table.editable thead tr th.has-info{padding-left:calc(15px + 1em)}table.editable thead tr th span.info{margin-left:5px;position:absolute}table.editable tbody tr:not(:first-child) td,table.editable tbody tr:not(:first-child) th{border-top:1px solid var(--input-border-color)}body.ltr table.editable tbody tr:last-child td:first-child{border-bottom-left-radius:var(--large-border-radius)}body.rtl table.editable tbody tr:last-child td:first-child{border-bottom-right-radius:var(--large-border-radius)}body.ltr table.editable tbody tr:last-child td:first-child input.text,body.ltr table.editable tbody tr:last-child td:first-child textarea{border-bottom-left-radius:calc(var(--large-border-radius) - 1px)}body.rtl table.editable tbody tr:last-child td:first-child input.text,body.rtl table.editable tbody tr:last-child td:first-child textarea{border-bottom-right-radius:calc(var(--large-border-radius) - 1px)}body.ltr table.editable tbody tr td:not(:first-child),body.ltr table.editable tbody tr th~td:not(.hidden)~td{border-left:1px solid var(--input-border-color)}body.rtl table.editable tbody tr td:not(:first-child),body.rtl table.editable tbody tr th~td:not(.hidden)~td{border-right:1px solid var(--input-border-color)}body.ltr table.editable tbody tr th~td:not(:first-child){border-left:1px solid #dbdddf}body.rtl table.editable tbody tr th~td:not(:first-child){border-right:1px solid #dbdddf}table.editable tbody tr td{background-color:var(--white);padding:4px 10px;text-align:center;vertical-align:top}table.editable tbody tr td.focus{box-shadow:inset 0 0 0 1px var(--hairline-color);position:relative}table.editable tbody tr td.textual{padding:0}table.editable tbody tr td.textual textarea{resize:none}table.editable tbody tr td.textual pre{white-space:pre-wrap}body.ltr table.editable tbody tr td.textual pre{text-align:left}body.rtl table.editable tbody tr td.textual pre{text-align:right}table.editable tbody tr td.lightswitch-cell{padding-bottom:9px;padding-top:9px}table.editable tbody tr td.lightswitch-cell .lightswitch{display:block;margin:0 auto}table.editable tbody tr td.checkbox-cell{padding-bottom:10px;padding-top:10px}table.editable tbody tr td.checkbox-cell .checkbox-wrapper{display:block;height:16px;margin:-2px auto 0;width:16px}table.editable tbody tr td.error{box-shadow:inset 0 0 0 1px var(--error-color)}table.editable tbody tr td.disabled{opacity:1;position:relative}table.editable tbody tr td.disabled:after{background-color:rgba(243,247,252,.75);content:"";font-size:0;height:100%;left:0;position:absolute;top:0;-webkit-user-select:none;user-select:none;width:100%}table.editable tbody tr td.action{padding:4px 7px}body.ltr table.editable tbody tr td.action+td.action{border-left:none}body.rtl table.editable tbody tr td.action+td.action{border-right:none}body.ltr table.editable tbody tr td.action+td.action{padding-left:0}body.rtl table.editable tbody tr td.action+td.action{padding-right:0}table.editable tbody tr td .flex>*{margin-bottom:0}table.editable tbody input.text,table.editable tbody pre,table.editable tbody textarea,table.editable tbody textarea.text{background-color:transparent;border:none;border-radius:0;box-shadow:none;box-sizing:border-box;display:block;overflow:hidden;padding:7px 10px;-o-transition:none;transition:none;width:100%}table.editable tbody .color-container{display:block;position:relative}table.editable tbody .color-container .color-input,table.editable tbody .color-container>.color{margin-bottom:0}table.editable tbody .color-container>.color{position:absolute;top:10px;z-index:1}body.ltr table.editable tbody .color-container>.color{left:10px}body.rtl table.editable tbody .color-container>.color{right:10px}body.ltr table.editable tbody .color-container .color-hex-indicator{left:32px}body.rtl table.editable tbody .color-container .color-hex-indicator{right:32px}body.ltr table.editable tbody .color-container .color-input{padding-left:calc(32px + 1em)}body.rtl table.editable tbody .color-container .color-input{padding-right:calc(32px + 1em)}table.editable tbody .datewrapper,table.editable tbody .timewrapper{display:block;width:100%}table.editable tbody .datewrapper .text+div[data-icon],table.editable tbody .timewrapper .text+div[data-icon]{top:6px}body.ltr table.editable tbody .datewrapper .text+div[data-icon],body.ltr table.editable tbody .timewrapper .text+div[data-icon]{left:10px}body.rtl table.editable tbody .datewrapper .text+div[data-icon],body.rtl table.editable tbody .timewrapper .text+div[data-icon]{right:10px}table.editable:not(.static) td.textual{cursor:text}table.editable+.btn.add{display:block;width:100%}table.editable:not(.hidden)+.btn.add{border-radius:0 0 var(--medium-border-radius) var(--medium-border-radius);border-top-width:0}.border-box+.buttons,.shadow-box+.buttons{margin-top:7px}body.ltr .tree ul,body.ltr ul.tree{margin-left:20px}body.rtl .tree ul,body.rtl ul.tree{margin-right:20px}body.ltr .tree li .toggle{margin:7px 0 0 -15px}body.rtl .tree li .toggle{margin:7px -15px 0 0}.status{background-clip:border-box;border:1px solid transparent;border-radius:100%;box-sizing:border-box;display:inline-block;height:10px;position:relative;width:10px}body.ltr .status{margin-right:10px}body.rtl .status{margin-left:10px}body.use-shapes .status.all{background-image:-o-linear-gradient(60deg,#184cef,#e5422b);background-image:linear-gradient(30deg,#184cef,#e5422b);rotate:45deg}body.use-shapes .status.pending{background-color:transparent;border-color:transparent transparent var(--pending-color) transparent;border-radius:1px;border-style:solid;border-width:0 5px 10px}body.use-shapes .status.all,body.use-shapes .status.expired,body.use-shapes .status.off,body.use-shapes .status.suspended{border-radius:2px;-webkit-transform:scale(90%);-o-transform:scale(90%);transform:scale(90%)}.status:not(.on):not(.live):not(.active):not(.enabled):not(.all):not(.pending):not(.off):not(.suspended):not(.expired):not(.yellow):not(.orange):not(.red):not(.pink):not(.purple):not(.blue):not(.green):not(.turquoise):not(.light):not(.grey):not(.black){border-color:var(--ui-control-color)}.green,.status.active,.status.enabled,.status.live,.status.on{background-color:var(--enabled-color)}.status.all{background-image:-o-linear-gradient(30deg,#184cef,#e5422b);background-image:linear-gradient(60deg,#184cef,#e5422b);-o-background-origin:border-box;background-origin:border-box}.orange,.status.pending{background-color:var(--pending-color)}.red,.status.expired,.status.off,.status.suspended{background-color:var(--disabled-color)}.yellow{background-color:var(--yellow-300)}.pink{background-color:var(--pink-400)}.purple{background-color:#9b59b6}.blue{background-color:var(--blue-600)}.turquoise{background-color:var(--teal-300)}.status.light{background-color:var(--gray-100)}.grey{background-color:var(--gray-300)}.black{background-color:var(--gray-800)}.status.disabled,.status.white{opacity:1}.condition-container{margin:24px 0}.condition-footer,.condition-rule{padding:7px}.condition-footer{border:1px dashed var(--medium-hairline-color);border-radius:var(--large-border-radius)}.condition:not(:empty)+.condition-footer{border-top-left-radius:0;border-top-right-radius:0;border-top-width:0}.condition-footer .spinner:not(.loading){display:none}.condition-rule{background-color:var(--gray-050);border:1px solid var(--hairline-color);margin:0}.condition-rule:first-child{border-top-left-radius:var(--large-border-radius);border-top-right-radius:var(--large-border-radius)}.condition-rule+.condition-rule{border-top-width:0}.condition-rule>.rule-actions,.condition-rule>.rule-move{margin-top:5px}.condition-rule>.rule-body .lightswitch{display:block;margin-top:6px}.condition-rule>.rule-body .selectize{min-width:100px}.condition-rule>.rule-body .text.fullwidth{max-width:100%;min-width:100px}.progressbar{border:2px solid var(--gray-700);border-radius:6px;left:20%;padding:2px;position:absolute;width:60%;z-index:1000}.progressbar-inner{background-color:var(--gray-700);border-radius:2px;height:4px}.progressbar:not(.pending) .progressbar-inner{-o-transition:width .1s linear;transition:width .1s linear;width:0}.progressbar.pending .progressbar-inner{-webkit-animation-duration:.25s;-o-animation-duration:.25s;animation-duration:.25s;-webkit-animation-iteration-count:infinite;-o-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-timing-function:linear;-o-animation-timing-function:linear;animation-timing-function:linear}body.ltr .progressbar.pending .progressbar-inner{background:-o-repeating-linear-gradient(315deg,var(--white),var(--white) 8.8388347649px,var(--gray-700) 8.8388347649px,var(--gray-700) 17.6776695297px);background:repeating-linear-gradient(135deg,var(--white),var(--white) 8.8388347649px,var(--gray-700) 8.8388347649px,var(--gray-700) 17.6776695297px)}body.rtl .progressbar.pending .progressbar-inner{background:-o-repeating-linear-gradient(45deg,var(--white),var(--white) 8.8388347649px,var(--gray-700) 8.8388347649px,var(--gray-700) 17.6776695297px);background:repeating-linear-gradient(45deg,var(--white),var(--white) 8.8388347649px,var(--gray-700) 8.8388347649px,var(--gray-700) 17.6776695297px)}body.ltr .progressbar.pending .progressbar-inner{-webkit-animation-name:pendingprogress-ltr;-o-animation-name:pendingprogress-ltr;animation-name:pendingprogress-ltr}body.rtl .progressbar.pending .progressbar-inner{-webkit-animation-name:pendingprogress-rtl;-o-animation-name:pendingprogress-rtl;animation-name:pendingprogress-rtl}@-webkit-keyframes pendingprogress-ltr{0%{background-position:0}to{background-position:25px}}@-o-keyframes pendingprogress-ltr{0%{background-position:0}to{background-position:25px}}@keyframes pendingprogress-ltr{0%{background-position:0}to{background-position:25px}}@-webkit-keyframes pendingprogress-rtl{0%{background-position:0}to{background-position:-25px}}@-o-keyframes pendingprogress-rtl{0%{background-position:0}to{background-position:-25px}}@keyframes pendingprogress-rtl{0%{background-position:0}to{background-position:-25px}}.elementselect .progress-shade{background-color:hsla(0,0%,100%,.8);display:none;height:100%;position:absolute;top:0;width:100%}body.ltr .elementselect .progress-shade{left:0}body.rtl .elementselect .progress-shade{right:0}.elementselect.uploading{position:relative}.elementselect.uploading .progress-shade{display:block;z-index:2}.missing-component{background-color:var(--gray-050)!important;max-width:400px;padding:7px 10px!important}.missing-component .error{margin:0}.missing-component .install-plugin{border-top:1px solid var(--hairline-color);margin:7px 0 -7px;position:relative}body.ltr .missing-component .install-plugin{padding:10px 0 10px 40px}body.rtl .missing-component .install-plugin{padding:10px 40px 10px 0}.missing-component .install-plugin .icon{height:32px;position:absolute;top:calc(50% - 16px);width:32px}body.ltr .missing-component .install-plugin .icon{left:0}body.rtl .missing-component .install-plugin .icon{right:0}.missing-component .install-plugin .icon img,.missing-component .install-plugin .icon svg{height:100%;width:100%}.missing-component .install-plugin h3{-webkit-flex:1;flex:1;margin:8px 0!important}.missing-component .install-plugin .btn{margin:0}.pane{word-wrap:break-word;background:#fff;border-radius:var(--large-border-radius);box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);box-sizing:border-box;margin:14px 0;padding:24px;position:relative}.pane:focus{box-shadow:var(--focus-ring)}#content .pane,.pane .pane{background-color:var(--gray-050);border:1px solid var(--hairline-color);box-shadow:none}.pane.loading{min-height:200px}.pane.loading:after{content:"";display:block;font-size:0;height:100%;left:-24px;position:absolute;top:0;width:calc(100% + 48px)}.pane-header{background-color:var(--gray-050);border-radius:var(--large-border-radius) var(--large-border-radius) 0 0;box-shadow:inset 0 -1px 0 0 rgba(154,165,177,.25);box-sizing:border-box;margin:calc(var(--xl)*-1) var(--neg-padding) var(--xl);min-height:50px;padding:var(--s) var(--xl)}.pane-header .header-btn{height:30px;margin:2px 0;padding-left:0;padding-right:0;width:30px}.pane-header .header-btn:not(:hover):not(:active):not(.active){background-color:transparent}.pane-header .header-btn:not(:active):not(.active):hover{background-color:rgba(154,165,177,.15)}.pane-header .spinner{margin:0!important}.pane-tabs{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;margin:calc(var(--s)*-1) calc(var(--xl)*-1)}.pane-tabs:first-child{border-radius:var(--large-border-radius) var(--large-border-radius) 0 0;overflow:hidden}.pane-tabs [role=tablist]{display:-webkit-flex;display:flex;-webkit-flex:1;flex:1;-webkit-flex-direction:row;flex-direction:row;overflow-x:auto;scrollbar-width:none}.pane-tabs [role=tablist]::-webkit-scrollbar{display:none}body.ltr .pane-tabs [role=tablist].scrollable{-webkit-mask-image:linear-gradient(270deg,transparent,#000 24px);mask-image:linear-gradient(270deg,transparent,#000 24px)}body.rtl .pane-tabs [role=tablist].scrollable{-webkit-mask-image:linear-gradient(90deg,transparent,#000 24px);mask-image:linear-gradient(90deg,transparent,#000 24px)}.pane-tabs [role=tablist] [role=tab]{--tab-label-color:var(--light-text-color)}.pane-tabs [role=tablist] [role=tab].error{--highlight-color:var(--error-color)!important;--tab-label-color:var(--error-color)!important}.pane-tabs [role=tablist] [role=tab],.pane-tabs [role=tablist] [role=tab] .tab-label{border-radius:2px 2px 0 0}.pane-tabs [role=tablist] [role=tab] .tab-label{-webkit-align-items:center;align-items:center;color:var(--tab-label-color);display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;height:50px;padding:0 24px;position:relative;white-space:nowrap}.pane-tabs [role=tablist] [role=tab]:hover{text-decoration:none}body.reduce-focus-visibility .pane-tabs [role=tablist] [role=tab]:focus-visible,body:not(.reduce-focus-visibility) .pane-tabs [role=tablist] [role=tab]:focus{box-shadow:none}body.reduce-focus-visibility .pane-tabs [role=tablist] [role=tab]:focus-visible .tab-label,body:not(.reduce-focus-visibility) .pane-tabs [role=tablist] [role=tab]:focus .tab-label{box-shadow:var(--inner-focus-ring)}.pane-tabs [role=tablist] [role=tab]:not(.sel):hover{background-color:rgba(154,165,177,.15)}.pane-tabs [role=tablist] [role=tab].sel{--highlight-color:var(--gray-500);--tab-label-color:var(--text-color);background-color:var(--white);box-shadow:inset 0 2px 0 var(--highlight-color),0 0 0 1px rgba(51,64,77,.1),0 2px 12px rgba(205,216,228,.5);cursor:default;position:relative;z-index:1}body.ltr .pane-tabs [role=tablist] [role=tab] span[data-icon]{margin-left:4px}body.rtl .pane-tabs [role=tablist] [role=tab] span[data-icon]{margin-right:4px}body.ltr .pane-tabs:first-child [role=tablist] [role=tab]:first-child,body.ltr .pane-tabs:first-child [role=tablist] [role=tab]:first-child .tab-label{border-top-left-radius:var(--large-border-radius)}body.rtl .pane-tabs:first-child [role=tablist] [role=tab]:first-child,body.rtl .pane-tabs:first-child [role=tablist] [role=tab]:first-child .tab-label{border-top-right-radius:var(--large-border-radius)}.pane-tabs .menubtn{margin:0 var(--xl)}.details{--background-color:var(--gray-050);--spacing:var(--l);padding:0 var(--padding) var(--spacing)}.details .field,.details .meta,.details hr{margin-left:var(--neg-padding);margin-right:var(--neg-padding)}.details .meta{margin-bottom:var(--spacing)}.details .meta:not(.read-only){background-color:var(--background-color)!important}.details .meta.read-only{color:var(--medium-text-color)}.details .meta.read-only>.data{-webkit-align-items:baseline;align-items:baseline;min-height:auto}.details .meta.read-only>.data>.heading,.details .meta.read-only>.data>.value{padding:6px 0}.details .meta.read-only>.data:first-child>.heading,.details .meta.read-only>.data:first-child>.value{padding-top:0}.details .meta.read-only>.data:last-child>.heading,.details .meta.read-only>.data:last-child>.value{padding-bottom:0}.details .meta.warning{background-color:var(--yellow-050)!important;box-shadow:0 0 0 1px var(--yellow-300),0 2px 12px rgba(205,216,228,.5);color:var(--text-color)!important;padding-bottom:var(--m);padding-top:var(--m)}.details .meta.warning p{margin-bottom:5px}.details .meta.warning .btn{background-color:var(--yellow-300)}.details .meta.warning .btn:focus,.details .meta.warning .btn:hover{background-color:#f8d02e}.details .meta.warning .btn:active{background-color:#f8ca15}.details .meta>.data,.details .meta>.field{margin:0 var(--neg-padding)!important}.details .meta>.data>.heading,.details .meta>.data>.heading>label,.details .meta>.field>.heading,.details .meta>.field>.heading>label{color:var(--gray-600)}body.ltr .details .meta>.field>.status-badge{left:0}body.rtl .details .meta>.field>.status-badge{right:0}.details .meta .text::-webkit-input-placeholder{color:var(--gray-500)}.details .meta .datewrapper .text+div[data-icon],.details .meta .text::placeholder,.details .meta .timewrapper .text+div[data-icon]{color:var(--gray-500)}body.ltr .details .meta .ui-datepicker{margin:0 0 0 -8px}body.rtl .details .meta .ui-datepicker{margin:0 -8px 0 0}.details hr{border-top-color:var(--hairline-color);margin:var(--spacing) 0}.details input::-webkit-input-placeholder,.details textarea::-webkit-input-placeholder{color:var(--gray-500)}.details input::placeholder,.details textarea::placeholder{color:var(--gray-500)}.details .text{background-color:transparent!important;resize:none}.details>.field>.heading>label,.details>fieldset>legend{color:var(--gray-600);font-weight:400;margin-top:0}.details>fieldset{margin:0 0 var(--spacing)}.details>fieldset>legend{margin-bottom:5px}.details>.field{margin:0 0 var(--spacing)}.details>.field>.heading{margin-top:0}.details>.field>.input>.text.fullwidth{background-color:var(--background-color)!important;margin:0 var(--neg-padding);padding-left:var(--padding);padding-right:var(--padding);width:calc(100% + var(--padding) + var(--padding))}.details>.text{border-radius:var(--large-border-radius);margin-bottom:var(--spacing)}.details>.text:not(:focus){border-color:rgba(96,125,159,.4)}.meta{grid-gap:var(--m);display:grid;overflow:visible;padding:calc(var(--padding)/2) var(--padding)}.meta>.data,.meta>.field,.meta>.flex-fields>.data,.meta>.flex-fields>.field{-webkit-align-items:center;align-items:center;box-sizing:border-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-webkit-justify-content:space-between;justify-content:space-between;margin:0 var(--neg-padding)!important;padding:0 var(--padding);-o-transition:padding-left .1s linear,padding-right .1s linear;transition:padding-left .1s linear,padding-right .1s linear}body.ltr .meta>.data.nested,body.ltr .meta>.field.nested,body.ltr .meta>.flex-fields>.data.nested,body.ltr .meta>.flex-fields>.field.nested{padding-left:38px}body.rtl .meta>.data.nested,body.rtl .meta>.field.nested,body.rtl .meta>.flex-fields>.data.nested,body.rtl .meta>.flex-fields>.field.nested{padding-right:38px}.meta>.data.add:before,.meta>.field.add:before,.meta>.flex-fields>.data.add:before,.meta>.flex-fields>.field.add:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;color:var(--light-text-color);content:"plus";direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);position:absolute;text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle;width:31px}body.ltr .meta>.data.add:before,body.ltr .meta>.field.add:before,body.ltr .meta>.flex-fields>.data.add:before,body.ltr .meta>.flex-fields>.field.add:before{left:0}body.rtl .meta>.data.add:before,body.rtl .meta>.field.add:before,body.rtl .meta>.flex-fields>.data.add:before,body.rtl .meta>.flex-fields>.field.add:before{right:0}body.ltr .meta>.data.add:before,body.ltr .meta>.field.add:before,body.ltr .meta>.flex-fields>.data.add:before,body.ltr .meta>.flex-fields>.field.add:before{text-align:right}body.rtl .meta>.data.add:before,body.rtl .meta>.field.add:before,body.rtl .meta>.flex-fields>.data.add:before,body.rtl .meta>.flex-fields>.field.add:before{text-align:left}.meta>.data.add .input,.meta>.field.add .input,.meta>.flex-fields>.data.add .input,.meta>.flex-fields>.field.add .input{width:100%}.meta>.data>.heading,.meta>.field>.heading,.meta>.flex-fields>.data>.heading,.meta>.flex-fields>.field>.heading{margin:0}@media screen and (min-width:400px){.meta>.data>.heading,.meta>.field>.heading,.meta>.flex-fields>.data>.heading,.meta>.flex-fields>.field>.heading{-webkit-flex:0 0 104px;flex:0 0 104px;line-height:18px}body.ltr .meta>.data>.heading,body.ltr .meta>.field>.heading,body.ltr .meta>.flex-fields>.data>.heading,body.ltr .meta>.flex-fields>.field>.heading{margin-right:var(--s)}body.rtl .meta>.data>.heading,body.rtl .meta>.field>.heading,body.rtl .meta>.flex-fields>.data>.heading,body.rtl .meta>.flex-fields>.field>.heading{margin-left:var(--s)}}.meta>.data.lightswitch-field>.heading,.meta>.field.lightswitch-field>.heading,.meta>.flex-fields>.data.lightswitch-field>.heading,.meta>.flex-fields>.field.lightswitch-field>.heading{-webkit-flex:1;flex:1}.meta>.data>.input .flex,.meta>.field>.input .flex,.meta>.flex-fields>.data>.input .flex,.meta>.flex-fields>.field>.input .flex{-webkit-flex-wrap:nowrap;flex-wrap:nowrap}.meta>.data>.input .flex>*,.meta>.field>.input .flex>*,.meta>.flex-fields>.data>.input .flex>*,.meta>.flex-fields>.field>.input .flex>*{margin-bottom:0}.meta>.field>.heading,.meta>.flex-fields>.field>.heading{margin:var(--xs) 0}@media screen and (min-width:400px){.meta>.field>.heading,.meta>.flex-fields>.field>.heading{margin:0}}.meta>.field>.heading>.copytextbtn,.meta>.flex-fields>.field>.heading>.copytextbtn{display:none}.meta>.data>.heading,.meta>.flex-fields>.data>.heading{padding:var(--s) 0}.meta>.data>.heading,.meta>.field>.heading>label,.meta>.flex-fields>.data>.heading,.meta>.flex-fields>.field>.heading>label{color:var(--medium-text-color)}.meta>.data>.value,.meta>.field>.input,.meta>.flex-fields>.data>.value,.meta>.flex-fields>.field>.input{padding:var(--s) 0;width:100%}@media screen and (min-width:400px){.meta>.data>.value,.meta>.field>.input,.meta>.flex-fields>.data>.value,.meta>.flex-fields>.field>.input{width:calc(100% - 112px)}}.meta>.data>.value,.meta>.flex-fields>.data>.value{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex}.meta>.data>.value>[data-icon=draft],.meta>.flex-fields>.data>.value>[data-icon=draft]{margin-top:-2px}body.ltr .meta>.data>.value>[data-icon=draft],body.ltr .meta>.flex-fields>.data>.value>[data-icon=draft]{margin-right:8px}body.rtl .meta>.data>.value>[data-icon=draft],body.rtl .meta>.flex-fields>.data>.value>[data-icon=draft]{margin-left:8px}.meta>.field.lightswitch-field>.input,.meta>.flex-fields>.field.lightswitch-field>.input{-webkit-flex:0;flex:0;width:auto}.meta>.field.has-errors,.meta>.flex-fields>.field.has-errors{border:1px solid var(--error-color)!important}.meta>.field.has-errors:first-child,.meta>.flex-fields>.field.has-errors:first-child{border-top-left-radius:var(--large-border-radius);border-top-right-radius:var(--large-border-radius)}.meta>.field.has-errors:last-child,.meta>.flex-fields>.field.has-errors:last-child{border-bottom-left-radius:var(--large-border-radius);border-bottom-right-radius:var(--large-border-radius)}.meta>.field.has-errors+.field,.meta>.flex-fields>.field.has-errors+.field{border-top:none!important}.meta>.field>.heading>label,.meta>.field>.heading>legend,.meta>.flex-fields>.field>.heading>label,.meta>.flex-fields>.field>.heading>legend{font-weight:400}.meta>.field>.input>.datetimewrapper>.datewrapper>.text,.meta>.field>.input>.datetimewrapper>.timewrapper>.text,.meta>.field>.input>.datewrapper>.text,.meta>.field>.input>.flex>.text,.meta>.field>.input>.flex>.textwrapper>.text,.meta>.field>.input>.text,.meta>.field>.input>.timewrapper>.text,.meta>.flex-fields>.field>.input>.datetimewrapper>.datewrapper>.text,.meta>.flex-fields>.field>.input>.datetimewrapper>.timewrapper>.text,.meta>.flex-fields>.field>.input>.datewrapper>.text,.meta>.flex-fields>.field>.input>.flex>.text,.meta>.flex-fields>.field>.input>.flex>.textwrapper>.text,.meta>.flex-fields>.field>.input>.text,.meta>.flex-fields>.field>.input>.timewrapper>.text{background-color:transparent;display:block;margin:calc(var(--s)*-1) 0}.meta>.field>.input>.datetimewrapper>.datewrapper,.meta>.field>.input>.datetimewrapper>.timewrapper,.meta>.field>.input>.datewrapper,.meta>.field>.input>.timewrapper,.meta>.flex-fields>.field>.input>.datetimewrapper>.datewrapper,.meta>.flex-fields>.field>.input>.datetimewrapper>.timewrapper,.meta>.flex-fields>.field>.input>.datewrapper,.meta>.flex-fields>.field>.input>.timewrapper{background-color:transparent}.meta>.field>.input>.datetimewrapper>.datewrapper,.meta>.flex-fields>.field>.input>.datetimewrapper>.datewrapper{width:55%}.meta>.field>.input>.datetimewrapper>.timewrapper,.meta>.flex-fields>.field>.input>.datetimewrapper>.timewrapper{width:45%}body.ltr .meta>.field>.input>.datetimewrapper>.clear-btn,body.ltr .meta>.flex-fields>.field>.input>.datetimewrapper>.clear-btn{margin-right:-24px}body.rtl .meta>.field>.input>.datetimewrapper>.clear-btn,body.rtl .meta>.flex-fields>.field>.input>.datetimewrapper>.clear-btn{margin-left:-24px}.meta>.field>.input>.datewrapper,.meta>.field>.input>.timewrapper,.meta>.flex-fields>.field>.input>.datewrapper,.meta>.flex-fields>.field>.input>.timewrapper{display:block;width:100%}.meta>.field>ul.errors,.meta>.flex-fields>.field>ul.errors{list-style-type:none;margin:0;padding:0 0 6px;width:100%}body.ltr .meta>.field>.clear-btn,body.ltr .meta>.flex-fields>.field>.clear-btn{margin-right:var(--neg-padding)}body.rtl .meta>.field>.clear-btn,body.rtl .meta>.flex-fields>.field>.clear-btn{margin-left:var(--neg-padding)}.meta>.flex-fields blockquote.note,.meta>.flex-fields h2{background-color:#ebf2fa;margin:0 -24px!important;padding:14px 24px}.meta>.flex-fields blockquote.note{border:none;border-radius:0}.meta>.flex-fields hr{margin:0 -24px}.meta>.field>.input>.select{background-color:transparent;border-radius:0;box-shadow:none;display:block;margin:calc(var(--s)*-1) 0;width:100%}.meta>.field>.input>.select+.spinner{position:absolute;top:calc(50% - 17px)}body.ltr .meta>.field>.input>.select+.spinner{right:-24px}body.rtl .meta>.field>.input>.select+.spinner{left:-24px}.meta>.field>.input>.select select{background-color:transparent;border:1px solid var(--input-border-color);width:100%}body.ltr .meta>.field>.input>.select select{padding-left:6px}body.rtl .meta>.field>.input>.select select{padding-right:6px}.body{position:relative}.hud,.modal,.slideout,.slideout-container{box-sizing:border-box;z-index:100}.hud .body,.modal{background-color:#fff;border-radius:5px;box-shadow:0 25px 100px rgba(31,41,51,.5)}.slideout-shade{opacity:0;-o-transition:opacity .25s linear;transition:opacity .25s linear}.slideout-shade.so-visible{opacity:1}.slideout-container{height:100vh;height:-webkit-fill-available;left:0;pointer-events:none;position:fixed;top:0;width:100vw}body.has-debug-toolbar .slideout-container{height:calc(100vh - 42px)}.slideout{background-color:var(--white);box-shadow:0 0 0 1px rgba(123,135,147,.25),0 25px 100px rgba(31,41,51,.5)!important;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;overflow:hidden;padding:24px var(--padding);pointer-events:all;position:absolute}.slideout.so-mobile{--padding:14px;--neg-padding:-14px;height:100%;left:0;-o-transition:top .25s linear;transition:top .25s linear;width:100%;will-change:top}.slideout:not(.so-mobile){border-radius:var(--large-border-radius);height:calc(100% - 16px);top:8px;width:calc(50% - 8px)}@media screen and (prefers-reduced-motion:no-preference){body.ltr .slideout:not(.so-mobile){-o-transition:left .25s linear;transition:left .25s linear;will-change:left}body.rtl .slideout:not(.so-mobile){-o-transition:right .25s linear;transition:right .25s linear;will-change:right}}.slideout>.pane-header{z-index:2}.slideout>.pane-header>.so-toolbar{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;gap:var(--s);min-height:34px}.slideout>.pane-header>.so-toolbar>.pane-tabs{-webkit-flex:1;flex:1;width:1px}body.ltr .slideout>.pane-header>.so-toolbar>.pane-tabs{margin-right:0}body.rtl .slideout>.pane-header>.so-toolbar>.pane-tabs{margin-left:0}.slideout.so-mobile>.pane-header{padding-left:10px;padding-right:10px}.slideout>.so-body{-webkit-flex:1;flex:1;margin:-24px var(--neg-padding) 0;overflow:hidden auto;padding:24px var(--padding);position:relative}.slideout>.so-body>.so-sidebar{background:#fff;background-color:var(--gray-100);box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);box-sizing:border-box;height:100%;max-width:100%;overflow:hidden auto;padding:0 var(--padding) var(--spacing);position:absolute;top:0;width:350px;z-index:1}.slideout>.so-body>.so-sidebar:focus{box-shadow:var(--focus-ring)}body.ltr .slideout>.so-body>.so-sidebar{-o-transition:right .25s linear;transition:right .25s linear}body.rtl .slideout>.so-body>.so-sidebar{-o-transition:left .25s linear;transition:left .25s linear}.slideout>.so-body>.so-sidebar>.preview-thumb-container{height:auto;margin:0 var(--neg-padding);min-height:54px}.slideout>.so-body>.so-sidebar>.preview-thumb-container+.pane-header{border-radius:0}.slideout>.so-body>.so-sidebar .image-actions.is-mobile{margin:calc(var(--spacing)/2) 0 var(--spacing)}.slideout>.so-body>.so-sidebar>.meta.read-only:first-child{margin-top:var(--padding)}.slideout>.so-body>.so-sidebar>.meta.warning{border-bottom:1px solid var(--yellow-300);box-shadow:none}.slideout>.so-body>.so-sidebar>.field>.input>.text.fullwidth{border-radius:0}.slideout>.so-body>.so-sidebar .notes{padding-bottom:var(--m);padding-top:var(--m)}.slideout>.so-footer{background:#fff;background-color:var(--gray-050);box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;gap:8px;-webkit-justify-content:space-between;justify-content:space-between;margin:0 var(--neg-padding) -24px;padding:8px var(--padding);position:relative;z-index:3}.slideout>.so-footer:focus{box-shadow:var(--focus-ring)}.slideout>.so-footer>.so-extra{border-bottom:1px solid var(--hairline-color);-webkit-flex:0 0 100%;flex:0 0 100%;margin:0 var(--neg-padding);padding:0 var(--padding) 8px}@media(min-width:1536px){.slideout.has-sidebar .pane-header:not(.so-visible){display:none}.slideout.has-sidebar .sidebar-btn{display:none}.slideout.has-sidebar .so-body{display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;overflow:hidden;padding:0}.slideout.has-sidebar .so-body>.so-content{box-sizing:border-box;height:100%;overflow:hidden auto;padding:24px;position:relative;width:calc(100% - 350px);z-index:2}body.ltr .slideout.has-sidebar .so-body>.so-content{border-right:1px solid var(--gray-200)}body.rtl .slideout.has-sidebar .so-body>.so-content{border-left:1px solid var(--gray-200)}.slideout.has-sidebar .so-body>.so-sidebar{box-shadow:none;display:block!important;height:100%;left:auto!important;position:relative;right:auto!important;top:auto}.slideout>.so-footer>.so-extra{border:none;-webkit-flex:auto 0 1;flex:auto 0 1;margin:0;padding:0}}.body:after,.footer:after,.header:after,.hud-footer:after,.hud-header:after{clear:both;content:"";display:block;height:0;visibility:hidden}.footer,.header,.hud-footer,.hud-header{background-color:var(--gray-100);box-sizing:border-box;position:relative;z-index:1}.header,.hud-header{border-radius:var(--large-border-radius) var(--large-border-radius) 0 0;box-shadow:inset 0 -1px 0 var(--hairline-color);padding:24px}.header h1,.hud-header h1{margin:0}.footer,.hud-footer{border-radius:0 0 var(--large-border-radius) var(--large-border-radius);box-shadow:inset 0 1px 0 var(--hairline-color);padding:var(--s) var(--xl)}.footer.flex>*,.hud-footer.flex>*{margin-bottom:0}.hud .main,.modal .body{box-sizing:border-box;overflow:hidden;padding:24px}.modal .body .header,.pane .header{margin:-24px -24px 24px}.modal .body .footer,.pane .footer{margin:24px -24px -24px}.hud-shade,.modal-shade,.slideout-shade{display:none;height:100%;left:0;position:fixed;top:0;width:100%;z-index:100}.modal-shade:not(.dark),.slideout-shade:not(.dark){background-color:rgba(123,135,147,.35)!important}.modal-shade.dark,.slideout-shade.dark{background-color:rgba(31,41,51,.5)!important}.modal{overflow:hidden;position:fixed}.modal:not(.fitted):not(.fullscreen){height:66%;min-height:400px;min-width:600px;width:66%}.modal.fitted{height:auto;min-height:0;min-width:0;width:auto}.modal.fullscreen{border-radius:0;height:100%;width:100%}body.ltr .modal.alert .body{padding-left:76px}body.rtl .modal.alert .body{padding-right:76px}.modal.alert .body:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;color:var(--light-text-color);content:"alert";direction:ltr;display:inline-block;font-family:Craft;font-size:40px;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}body.ltr .modal.alert .body:before{margin:-6px 0 0 -58px}body.rtl .modal.alert .body:before{margin:-6px -58px 0 0}body.ltr .modal.alert .body:before{float:left}body.rtl .modal.alert .body:before{float:right}body.ltr .modal.secure .body{padding-left:76px}body.rtl .modal.secure .body{padding-right:76px}.modal.secure .body:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;color:var(--light-text-color);content:"secure";direction:ltr;display:inline-block;font-family:Craft;font-size:58px;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}body.ltr .modal.secure .body:before{margin:-14px 0 0 -56px}body.rtl .modal.secure .body:before{margin:-14px -56px 0 0}body.ltr .modal.secure .body:before{float:left}body.rtl .modal.secure .body:before{float:right}.modal .resizehandle{bottom:0;cursor:nwse-resize;height:24px;padding:var(--xs);position:absolute;width:24px;z-index:1}body.ltr .modal .resizehandle{right:0}body.rtl .modal .resizehandle{left:0}.modal .resizehandle path{fill:var(--ui-control-color)}.hud,body.ltr .modal .resizehandle .rtl,body.rtl .modal .resizehandle .ltr{display:none}.hud{position:absolute;top:0}.hud.has-footer .tip-bottom{background-image:url(../images/hudtip_bottom_gray.png)}.hud .tip{background:no-repeat 0 0;position:absolute;z-index:101}.hud .tip-left{background-image:url(../images/hudtip_left.png);height:30px;left:-15px;width:15px}.hud .tip-top{background-image:url(../images/hudtip_top.png);height:15px;top:-15px;width:30px}.hud .tip-right{background-image:url(../images/hudtip_right.png);height:30px;right:-15px;width:15px}.hud .tip-bottom{background-image:url(../images/hudtip_bottom.png);bottom:-15px;height:15px;width:30px}.hud .hud-footer,.hud .hud-header{padding:var(--s) var(--xl)}.hud .body{overflow:hidden}.hud .body ::-webkit-scrollbar{-webkit-appearance:none;appearance:none}.hud .body ::-webkit-scrollbar:vertical{width:11px}.hud .body ::-webkit-scrollbar:horizontal{height:11px}.hud .body ::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.5);border:2px solid transparent;border-radius:8px}.hud .body ::-webkit-scrollbar-track{background-color:var(--gray-050)}.preview-thumb-container{-webkit-align-items:center;align-items:center;background-color:var(--gray-900);display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;height:190px;margin:0 var(--neg-padding) var(--spacing);position:relative}.preview-thumb-container.checkered img{background-color:var(--white);background-image:-o-linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(315deg,var(--gray-100) 25%,transparent 25%),-o-linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),-o-linear-gradient(315deg,transparent 75%,var(--gray-100) 75%);background-image:linear-gradient(45deg,var(--gray-100) 25%,transparent 25%),linear-gradient(135deg,var(--gray-100) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--gray-100) 75%),linear-gradient(135deg,transparent 75%,var(--gray-100) 75%);background-position:0 0,8.5px 0,8.5px -8.5px,0 8.5px;-o-background-size:17px 17px;background-size:17px 17px}.preview-thumb-container.editable{cursor:pointer}.preview-thumb-container.loading:after{background-color:rgba(31,41,51,.8);content:"";display:block;font-size:0;height:100%;left:0;position:absolute;top:0;width:100%}.preview-thumb-container.loading .spinner{color:var(--white);z-index:1}#details .preview-thumb-container{border-radius:var(--large-border-radius);overflow:hidden}.preview-thumb-container .preview-thumb{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;height:100%;width:100%}.preview-thumb-container .preview-thumb img{display:block;max-height:190px;max-width:100%}.image-actions.is-mobile{display:grid;grid-template-columns:1fr 1fr;margin:calc(var(--spacing)/2*-1) var(--neg-padding) var(--spacing)}.button-fade .buttons{margin:0;opacity:0;position:absolute;top:10px;-o-transition:opacity .1s linear;transition:opacity .1s linear}body.ltr .button-fade .buttons{right:10px}body.rtl .button-fade .buttons{left:10px}.button-fade .buttons .btn{--ui-control-color:var(--white);--ui-control-hover-color:var(--white);--ui-control-active-color:var(--white);--interaction-background-color:var(--gray-700);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;--light-color:var(--white);--dark-color:var(--gray-800);--focus-ring:0 0 0 3px var(--light-color),0 0 0 6px var(--dark-color);background-color:var(--gray-600);color:var(--white);font-weight:500}.button-fade .buttons .btn:hover{background-color:var(--interaction-background-color)!important}.button-fade .buttons .btn:not(.disabled):not(.loading):not(.dashed).focus,.button-fade .buttons .btn:not(.disabled):not(.loading):not(.dashed):focus,.button-fade .buttons .btn:not(.disabled):not(.loading):not(.dashed):hover{background-color:var(--interaction-background-color)}.button-fade:focus-within .buttons,.button-fade:hover .buttons{opacity:1}.elementselectormodal{--content-padding:24px;padding-bottom:50px;-webkit-user-select:none;user-select:none}.elementselectormodal .body{height:100%;position:relative}.elementselectormodal .body .spinner.big{left:50%;margin:-24px 0 0 -24px;position:absolute;top:50%}.elementselectormodal .body .content{height:calc(100% + 48px)}.elementselectormodal .body .content .sidebar{height:100%;overflow:auto;padding:var(--content-padding) 0;position:absolute;top:0}body.ltr .elementselectormodal .body .content .sidebar{margin-left:-249px}body.rtl .elementselectormodal .body .content .sidebar{margin-right:-249px}.elementselectormodal .body .content .main{box-sizing:border-box;height:100%;margin:-24px;overflow:auto;padding:var(--content-padding);position:relative}.elementselectormodal .body .content .main .elements.busy{min-height:calc(100% - 48px)}.elementselectormodal .body .content .main .elements .tableview table .element{display:inline-block}.elementselectormodal .body .content .main .elements .tableview table tr.disabled{color:var(--gray-200);opacity:1}.elementselectormodal .body .content .main .elements .tableview table tr.disabled .element{opacity:.25}.elementselectormodal .body .content .main .elements .tableview table tr td,.elementselectormodal .body .content .main .elements .tableview table tr th{cursor:default}body.ltr .elementselectormodal .body .content .main .elements .tableview table tr td:first-child{padding-left:7px}body.rtl .elementselectormodal .body .content .main .elements .tableview table tr td:first-child{padding-right:7px}.elementselectormodal .body .content .main .elements .structure .row{margin-top:1px}.elementselectormodal .footer{bottom:0;box-sizing:border-box;left:0;margin:0;position:absolute;width:100%}body.ltr .elementselectormodal .footer .spinner{float:right}body.rtl .elementselectormodal .footer .spinner{float:left}body.ltr .elementselectormodal .footer .spinner{margin-right:-24px}body.rtl .elementselectormodal .footer .spinner{margin-left:-24px}.customize-sources-modal .main-header,.elementselectormodal .main-header{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;margin-bottom:var(--s)}.customize-sources-modal .main-heading,.elementselectormodal .main-heading{margin-bottom:0}.customize-sources-modal .nav-toggle,.elementselectormodal .nav-toggle{color:var(--ui-control-color);height:var(--touch-target-size);width:var(--touch-target-size)}body.ltr .customize-sources-modal .nav-toggle,body.ltr .elementselectormodal .nav-toggle{margin-left:4px}body.rtl .customize-sources-modal .nav-toggle,body.rtl .elementselectormodal .nav-toggle{margin-right:4px}.customize-sources-modal .nav-toggle:hover,.elementselectormodal .nav-toggle:hover{color:var(--gray-500)}.customize-sources-modal .sidebar-header,.elementselectormodal .sidebar-header{display:-webkit-flex;display:flex;-webkit-justify-content:flex-end;justify-content:flex-end;margin-bottom:var(--s);padding:0 var(--s)}.customize-sources-modal .nav-close,.elementselectormodal .nav-close{height:var(--touch-target-size);width:var(--touch-target-size)}.element-hud-form .buttons{position:relative}.element-hud-form .buttons .spinner{position:absolute;top:0}body.ltr .element-hud-form .buttons .spinner{right:-24px}body.rtl .element-hud-form .buttons .spinner{left:-24px}.element-index-view-menu{max-width:calc(100% - 20px);padding:0!important;width:400px}.element-index-view-menu .meta{padding-bottom:var(--s);padding-top:var(--s)}.element-index-view-menu .table-columns-field{-webkit-align-items:flex-start;align-items:flex-start}.element-index-view-menu .table-columns-field .input{padding:13px 0}.element-index-view-menu .menu-footer{background-color:var(--gray-050);margin:0!important;padding:var(--s) var(--xl)!important}body.ltr .element-index-view-menu-table-column .icon.move{margin-right:10px}body.rtl .element-index-view-menu-table-column .icon.move{margin-left:10px}.sort-field .input .flex .btngroup .btn{width:42px}.sort-field .input .flex .flex-grow{max-width:calc(100% - 85px - var(--s))}@media screen and (max-width:350px){.sort-field .input .flex{-webkit-flex-direction:column;flex-direction:column}.sort-field .input .flex>*{width:100%}.sort-field .input .flex .flex-grow{max-width:none}}.element-filter-hud.loading .body{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center;padding:50px}.element-filter-hud .body,.element-filter-hud .main{overflow:visible}.address-cards{display:grid;gap:var(--m) var(--m);grid-auto-rows:minmax(0,1fr);grid-template-columns:repeat(1,minmax(0,1fr))}.so-content .address-cards{grid-template-columns:repeat(1,minmax(0,1fr))!important}.address-cards__add-btn{height:auto;min-height:8rem;padding:1rem;width:100%}.address-card.error{border:1px solid #cf1124}.address-card.error:hover{border-color:#cf1124}@media(min-width:1024px){.address-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1280px){.address-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.so-content .address-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(min-width:1536px){.address-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}.address-card{border:1px solid #eee;border-radius:.375rem;min-height:4rem;padding:1rem}.address-card:hover{background-color:#fafafa;border-color:#ddd;cursor:pointer}.address-card .address-card-header{display:-webkit-flex;display:flex;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-justify-content:space-between;justify-content:space-between}.address-card .address-card-header-actions{display:-webkit-flex;display:flex;-webkit-justify-content:flex-end;justify-content:flex-end}.address-card .address-card-label{background:#e6f1fe;border-radius:.25rem;color:#2563eb;font-size:.75rem;font-weight:500;margin-bottom:.75rem;padding:.125rem .5rem;text-transform:uppercase}.ltr .address-card .address-card-label{margin-right:.5rem}.rtl .address-card .address-card-label{margin-left:.5rem}.loginmodalshade,.logoutwarningmodalshade{z-index:101}#elevatedsessionmodal,#loginmodal,#logoutwarningmodal,.prompt{width:500px}#loginmodal,#logoutwarningmodal{z-index:101}.prompt{height:auto;min-height:auto}.deleteusermodal .content-summary{background-color:var(--gray-050);margin:-24px -24px 24px;padding:24px}.deleteusermodal .options label{display:inline-block;line-height:30px}.deleteusermodal .elementselect{display:inline-block;vertical-align:middle}body.ltr .deleteusermodal .elementselect{margin-left:10px}body.rtl .deleteusermodal .elementselect{margin-right:10px}body.ltr .deleteusermodal .buttons .spinner{margin-right:-20px}body.rtl .deleteusermodal .buttons .spinner{margin-left:-20px}.dropdownsettingsmodal{height:auto;max-width:400px;min-height:0;min-width:0;width:auto}.dropdownsettingsmodal .body{max-height:100%;overflow-y:auto}.previewmodal.zilch{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center;padding:100px 0}.menu,.ui-datepicker,.ui-timepicker-list{background:#fff;border-radius:4px;box-shadow:0 0 0 1px rgba(31,41,51,.1),0 5px 20px rgba(31,41,51,.25);overflow:auto;padding:0 14px;-webkit-user-select:none;user-select:none;z-index:100}.ui-datepicker,.ui-timepicker-list{padding:0}.menu{display:none;position:absolute}.menu h6:first-child{margin-top:14px!important}body.ltr .menu ul.padded li .menu-option,body.ltr .menu ul.padded li a{padding-left:24px}body.rtl .menu ul.padded li .menu-option,body.rtl .menu ul.padded li a{padding-right:24px}.menu ul.padded li .menu-option.icon:before,.menu ul.padded li .menu-option.sel:before,.menu ul.padded li .menu-option[data-icon]:before,.menu ul.padded li a.icon:before,.menu ul.padded li a.sel:before,.menu ul.padded li a[data-icon]:before{color:var(--ui-control-color);font-size:14px}body.ltr .menu ul.padded li .menu-option.icon:before,body.ltr .menu ul.padded li .menu-option.sel:before,body.ltr .menu ul.padded li .menu-option[data-icon]:before,body.ltr .menu ul.padded li a.icon:before,body.ltr .menu ul.padded li a.sel:before,body.ltr .menu ul.padded li a[data-icon]:before{float:left}body.rtl .menu ul.padded li .menu-option.icon:before,body.rtl .menu ul.padded li .menu-option.sel:before,body.rtl .menu ul.padded li .menu-option[data-icon]:before,body.rtl .menu ul.padded li a.icon:before,body.rtl .menu ul.padded li a.sel:before,body.rtl .menu ul.padded li a[data-icon]:before{float:right}body.ltr .menu ul.padded li .menu-option.icon:before,body.ltr .menu ul.padded li .menu-option.sel:before,body.ltr .menu ul.padded li .menu-option[data-icon]:before,body.ltr .menu ul.padded li a.icon:before,body.ltr .menu ul.padded li a.sel:before,body.ltr .menu ul.padded li a[data-icon]:before{margin:3px 0 0 -17px}body.rtl .menu ul.padded li .menu-option.icon:before,body.rtl .menu ul.padded li .menu-option.sel:before,body.rtl .menu ul.padded li .menu-option[data-icon]:before,body.rtl .menu ul.padded li a.icon:before,body.rtl .menu ul.padded li a.sel:before,body.rtl .menu ul.padded li a[data-icon]:before{margin:3px -17px 0 0}.menu ul.padded li .menu-option.icon.error:before,.menu ul.padded li .menu-option.sel.error:before,.menu ul.padded li .menu-option[data-icon].error:before,.menu ul.padded li a.icon.error:before,.menu ul.padded li a.sel.error:before,.menu ul.padded li a[data-icon].error:before{color:var(--error-color)}.menu ul.padded li .menu-option.sel:not([data-icon]):before,.menu ul.padded li a.sel:not([data-icon]):before{content:"check"}.menu ul li .menu-option,.menu ul li a{-webkit-appearance:none;color:#3f4d5a;cursor:default;font-size:14px;margin:0 -14px;padding:10px 14px;text-decoration:none;white-space:nowrap}.menu ul li .menu-option:not(.flex),.menu ul li a:not(.flex){box-sizing:border-box;display:table!important;width:calc(100% + 28px)}body.ltr .menu ul li .menu-option:not(.flex),body.ltr .menu ul li a:not(.flex){text-align:left}body.rtl .menu ul li .menu-option:not(.flex),body.rtl .menu ul li a:not(.flex){text-align:right}.menu ul li .menu-option.sel,.menu ul li a.sel{cursor:default}.menu ul li .menu-option .shortcut,.menu ul li a .shortcut{border-radius:var(--medium-border-radius);box-shadow:0 0 0 1px rgba(81,95,108,.25),0 1px 3px -1px rgba(81,95,108,.5);padding:0 4px}body.ltr .menu ul li .menu-option .shortcut,body.ltr .menu ul li a .shortcut{float:right}body.rtl .menu ul li .menu-option .shortcut,body.rtl .menu ul li a .shortcut{float:left}body.ltr .menu ul li .menu-option .shortcut,body.ltr .menu ul li a .shortcut{margin-left:14px}body.rtl .menu ul li .menu-option .shortcut,body.rtl .menu ul li a .shortcut{margin-right:14px}.menu>.flex{margin-bottom:10px;margin-top:10px;position:relative}body.ltr .menu>.flex.padded{margin-left:-14px}body.rtl .menu>.flex.padded{margin-right:-14px}body.ltr .menu>.flex.padded{padding-left:24px}body.rtl .menu>.flex.padded{padding-right:24px}.menu>.flex.padded.sel:before{color:var(--light-text-color);content:"check";font-size:14px;position:absolute;top:36px}body.ltr .menu>.flex.padded.sel:before{left:7px}body.rtl .menu>.flex.padded.sel:before{right:7px}.menu hr{margin:5px -14px}.menu .go:after{color:inherit}.menu span.icon,.menubtn span.icon{color:var(--ui-control-color);display:inline-block;font-size:14px;margin-top:-1px;text-align:center;width:10px}body.ltr .menu span.icon,body.ltr .menubtn span.icon{margin-right:10px}body.rtl .menu span.icon,body.rtl .menubtn span.icon{margin-left:10px}.menu:not(.menu--disclosure) ul li a:not(.sel):not(.disabled):hover,.menu:not(.menu--disclosure):not(:hover) ul li a:not(.disabled).hover{--text-color:var(--white);--light-text-color:var(--gray-100);--ui-control-color:var(--gray-050);--ui-control-hover-color:var(--gray-100);--ui-control-active-color:var(--gray-100);background-color:#606d7b;color:#fff}.menu:not(.menu--disclosure) ul li a:not(.sel):not(.disabled):hover span.icon,.menu:not(.menu--disclosure) ul li a:not(.sel):not(.disabled):hover:before,.menu:not(.menu--disclosure):not(:hover) ul li a:not(.disabled).hover span.icon,.menu:not(.menu--disclosure):not(:hover) ul li a:not(.disabled).hover:before{color:var(--menu-option-active-color)}.menu:not(.menu--disclosure) ul li a:not(.sel):not(.disabled):hover.error,.menu:not(.menu--disclosure):not(:hover) ul li a:not(.disabled).hover.error{color:var(--menu-option-active-color)!important}body.ltr .menu h6.padded,body.ltr .menu hr.padded{margin-left:10px}body.rtl .menu h6.padded,body.rtl .menu hr.padded{margin-right:10px}.menu--disclosure ul li>.menu-option:hover,.menu--disclosure ul li>a:hover{background-color:#f3f7fc;color:#3f4d5a}body.reduce-focus-visibility .menu--disclosure ul li>.menu-option:focus-visible,body.reduce-focus-visibility .menu--disclosure ul li>a:focus-visible,body:not(.reduce-focus-visibility) .menu--disclosure ul li>.menu-option:focus,body:not(.reduce-focus-visibility) .menu--disclosure ul li>a:focus{box-shadow:inset 0 0 0 3px hsla(var(--dark-focus-hsl),.7)}.tagselect .elements{display:inline}.tagselect .element.small{clear:none}.tagselect .add{display:inline-block;position:relative;width:12em;z-index:1}body.ltr .tagselect .add{margin:7px 7px 0 0}body.rtl .tagselect .add{margin:7px 0 0 7px}body.ltr .tagselect .add .text{padding-right:30px}body.rtl .tagselect .add .text{padding-left:30px}.tagselect .add .spinner{position:absolute;top:0}body.ltr .tagselect .add .spinner{right:5px}body.rtl .tagselect .add .spinner{left:5px}body.ltr .tagselect.elementselect .element,body.rtl .tagselect.elementselect .element{display:inline-block;float:none!important}body.ltr .tagmenu ul li a{padding-left:26px}body.rtl .tagmenu ul li a{padding-right:26px}body.ltr .tagmenu ul li a:before{float:left}body.rtl .tagmenu ul li a:before{float:right}body.ltr .tagmenu ul li a:before{margin:3px 0 0 -18px}body.rtl .tagmenu ul li a:before{margin:3px -18px 0 0}.shadow-box{border:1px solid var(--gray-200);border-radius:var(--large-border-radius);box-shadow:0 1px 5px -1px rgba(31,41,51,.2)}table.editable,table.shadow-box{border-collapse:separate;border-spacing:0}table.editable caption+tbody tr:first-child td:first-child,table.editable caption+tbody tr:first-child td:first-child.disabled:after,table.editable caption+tbody tr:first-child th:first-child,table.editable caption+tbody tr:first-child th:first-child.disabled:after,table.editable tbody:first-child tr:first-child td:first-child,table.editable tbody:first-child tr:first-child td:first-child.disabled:after,table.editable tbody:first-child tr:first-child th:first-child,table.editable tbody:first-child tr:first-child th:first-child.disabled:after,table.editable thead tr:first-child td:first-child,table.editable thead tr:first-child td:first-child.disabled:after,table.editable thead tr:first-child th:first-child,table.editable thead tr:first-child th:first-child.disabled:after,table.shadow-box caption+tbody tr:first-child td:first-child,table.shadow-box caption+tbody tr:first-child td:first-child.disabled:after,table.shadow-box caption+tbody tr:first-child th:first-child,table.shadow-box caption+tbody tr:first-child th:first-child.disabled:after,table.shadow-box tbody:first-child tr:first-child td:first-child,table.shadow-box tbody:first-child tr:first-child td:first-child.disabled:after,table.shadow-box tbody:first-child tr:first-child th:first-child,table.shadow-box tbody:first-child tr:first-child th:first-child.disabled:after,table.shadow-box thead tr:first-child td:first-child,table.shadow-box thead tr:first-child td:first-child.disabled:after,table.shadow-box thead tr:first-child th:first-child,table.shadow-box thead tr:first-child th:first-child.disabled:after{border-top-left-radius:var(--medium-border-radius)}table.editable caption+tbody tr:first-child td:last-child,table.editable caption+tbody tr:first-child td:last-child.disabled:after,table.editable caption+tbody tr:first-child th:last-child,table.editable caption+tbody tr:first-child th:last-child.disabled:after,table.editable tbody:first-child tr:first-child td:last-child,table.editable tbody:first-child tr:first-child td:last-child.disabled:after,table.editable tbody:first-child tr:first-child th:last-child,table.editable tbody:first-child tr:first-child th:last-child.disabled:after,table.editable thead tr:first-child td:last-child,table.editable thead tr:first-child td:last-child.disabled:after,table.editable thead tr:first-child th:last-child,table.editable thead tr:first-child th:last-child.disabled:after,table.shadow-box caption+tbody tr:first-child td:last-child,table.shadow-box caption+tbody tr:first-child td:last-child.disabled:after,table.shadow-box caption+tbody tr:first-child th:last-child,table.shadow-box caption+tbody tr:first-child th:last-child.disabled:after,table.shadow-box tbody:first-child tr:first-child td:last-child,table.shadow-box tbody:first-child tr:first-child td:last-child.disabled:after,table.shadow-box tbody:first-child tr:first-child th:last-child,table.shadow-box tbody:first-child tr:first-child th:last-child.disabled:after,table.shadow-box thead tr:first-child td:last-child,table.shadow-box thead tr:first-child td:last-child.disabled:after,table.shadow-box thead tr:first-child th:last-child,table.shadow-box thead tr:first-child th:last-child.disabled:after{border-top-right-radius:var(--medium-border-radius)}table.editable tbody:last-child tr:last-child td:first-child,table.editable tbody:last-child tr:last-child td:first-child.disabled:after,table.editable tbody:last-child tr:last-child th:first-child,table.editable tbody:last-child tr:last-child th:first-child.disabled:after,table.editable thead:last-child tr:last-child td:first-child,table.editable thead:last-child tr:last-child td:first-child.disabled:after,table.editable thead:last-child tr:last-child th:first-child,table.editable thead:last-child tr:last-child th:first-child.disabled:after,table.shadow-box tbody:last-child tr:last-child td:first-child,table.shadow-box tbody:last-child tr:last-child td:first-child.disabled:after,table.shadow-box tbody:last-child tr:last-child th:first-child,table.shadow-box tbody:last-child tr:last-child th:first-child.disabled:after,table.shadow-box thead:last-child tr:last-child td:first-child,table.shadow-box thead:last-child tr:last-child td:first-child.disabled:after,table.shadow-box thead:last-child tr:last-child th:first-child,table.shadow-box thead:last-child tr:last-child th:first-child.disabled:after{border-bottom-left-radius:calc(var(--large-border-radius) - 1px)}table.editable tbody:last-child tr:last-child td:last-child,table.editable tbody:last-child tr:last-child td:last-child.disabled:after,table.editable tbody:last-child tr:last-child th:last-child,table.editable tbody:last-child tr:last-child th:last-child.disabled:after,table.editable thead:last-child tr:last-child td:last-child,table.editable thead:last-child tr:last-child td:last-child.disabled:after,table.editable thead:last-child tr:last-child th:last-child,table.editable thead:last-child tr:last-child th:last-child.disabled:after,table.shadow-box tbody:last-child tr:last-child td:last-child,table.shadow-box tbody:last-child tr:last-child td:last-child.disabled:after,table.shadow-box tbody:last-child tr:last-child th:last-child,table.shadow-box tbody:last-child tr:last-child th:last-child.disabled:after,table.shadow-box thead:last-child tr:last-child td:last-child,table.shadow-box thead:last-child tr:last-child td:last-child.disabled:after,table.shadow-box thead:last-child tr:last-child th:last-child,table.shadow-box thead:last-child tr:last-child th:last-child.disabled:after{border-bottom-right-radius:calc(var(--large-border-radius) - 1px)}.border-box,.matrix-configurator>.field>.input,.multiselect>select,.passwordwrapper,.selectize.multiselect .selectize-input,.text{background-clip:padding-box;background-color:#fbfcfe;border:1px solid var(--input-border-color);border-radius:3px}.border-box.focus,.passwordwrapper.focus,.selectize.multiselect .selectize-input.focus,.text.focus{box-shadow:var(--focus-ring)}body.reduce-focus-visibility .border-box:focus-visible,body.reduce-focus-visibility .passwordwrapper:focus-visible,body.reduce-focus-visibility .selectize.multiselect .selectize-input:focus-visible,body.reduce-focus-visibility .text:focus-visible,body:not(.reduce-focus-visibility) .border-box:focus,body:not(.reduce-focus-visibility) .passwordwrapper:focus,body:not(.reduce-focus-visibility) .selectize.multiselect .selectize-input:focus,body:not(.reduce-focus-visibility) .text:focus{box-shadow:var(--focus-ring)}.selectize.multiselect .selectize-input,.text>input,.text>textarea,input.text,table.editable textarea,textarea.text{-webkit-appearance:none;appearance:none;box-sizing:border-box;color:var(--text-color);font-size:14px;line-height:20px;min-height:3px}.selectize.multiselect .selectize-input{line-height:18px}textarea.text.fullwidth{display:block}.multitext .multitextrow:after{clear:both;content:"";display:block;height:0;visibility:hidden}body.ltr .multitext .multitextrow:first-child .text:first-child{border-top-left-radius:var(--medium-border-radius)}body.rtl .multitext .multitextrow:first-child .text:first-child{border-top-right-radius:var(--medium-border-radius)}body.ltr .multitext .multitextrow:first-child .text:last-child{border-top-right-radius:var(--medium-border-radius)}body.rtl .multitext .multitextrow:first-child .text:last-child{border-top-left-radius:var(--medium-border-radius)}body.ltr .multitext .multitextrow:last-child .text:first-child{border-bottom-left-radius:var(--medium-border-radius)}body.rtl .multitext .multitextrow:last-child .text:first-child{border-bottom-right-radius:var(--medium-border-radius)}body.ltr .multitext .multitextrow:last-child .text:last-child{border-bottom-right-radius:var(--medium-border-radius)}body.rtl .multitext .multitextrow:last-child .text:last-child{border-bottom-left-radius:var(--medium-border-radius)}.multitext .multitextrow:not(:first-child) .text{margin-top:-1px}.multitext .multitextrow .text{border-radius:0;box-sizing:border-box;float:left}body.ltr .multitext .multitextrow .text:not(:first-child){margin-left:-1px}body.rtl .multitext .multitextrow .text:not(:first-child){margin-right:-1px}.multitext .multitextrow .text:first-child:last-child{width:100%}.multitext .multitextrow .text:first-child:nth-last-child(2){width:50%}.multitext .multitextrow .text:first-child:nth-last-child(2)~.text{width:calc(50% + 1px)}.multitext .multitextrow .text.error{position:relative;z-index:1}.multitext .multitextrow .selectize.multiselect .selectize-input.focus,.multitext .multitextrow .text:focus{position:relative;z-index:2}.chars-left{color:var(--light-text-color);position:relative}body.ltr .chars-left{float:right}body.rtl .chars-left{float:left}body.ltr .chars-left{margin:-27px 7px 0 0}body.rtl .chars-left{margin:-27px 0 0 7px}.input.ltr>.chars-left{float:right!important;margin-right:7px!important}.input.rtl>.chars-left{float:left!important;margin-left:7px!important}.chars-left.negative-chars-left{color:var(--error-color)}.field,fieldset{margin:24px 0;position:relative}.flex>.field,.flex>fieldset{margin-bottom:0;margin-top:0}.field{min-inline-size:0}.field>.status-badge{content:"";cursor:help;height:100%;position:absolute;top:0;width:2px}body.ltr .field>.status-badge{left:0}body.rtl .field>.status-badge{right:0}.field>.status-badge.modified{background-color:var(--blue-600)}.field>.status-badge.outdated{background-color:var(--pending-color)}.field>.heading{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;margin-bottom:5px;margin-top:-5px;position:relative}.field>.heading>label,.field>.heading>legend{color:var(--medium-dark-text-color);font-weight:700}.field>.heading>label code,.field>.heading>legend code{font-size:1em!important}body.ltr .field>.heading>label .info,body.ltr .field>.heading>legend .info{margin-left:5px}body.rtl .field>.heading>label .info,body.rtl .field>.heading>legend .info{margin-right:5px}.field>.heading .t9n-indicator{color:var(--light-text-color)}body.ltr .field>.heading .t9n-indicator{margin-left:7px}body.rtl .field>.heading .t9n-indicator{margin-right:7px}.field>.heading+.instructions{margin-top:-3px}.field>.heading>.instructions{width:100%}.field>.instructions{margin-bottom:5px}.field>.input{position:relative}.field>.input:after{clear:both;content:"";display:block;height:0;visibility:hidden}.field>.input+.instructions,.field>.notice,.field>.warning{margin:5px 0 0}.checkboxfield .instructions,.field>.heading>.instructions,.field>.instructions{color:var(--medium-text-color)}.checkboxfield .instructions embed,.checkboxfield .instructions iframe,.checkboxfield .instructions img,.checkboxfield .instructions video,.field>.heading>.instructions embed,.field>.heading>.instructions iframe,.field>.heading>.instructions img,.field>.heading>.instructions video,.field>.instructions embed,.field>.instructions iframe,.field>.instructions img,.field>.instructions video{max-width:100%!important}.checkboxfield .instructions ol,.checkboxfield .instructions ul,.field>.heading>.instructions ol,.field>.heading>.instructions ul,.field>.instructions ol,.field>.instructions ul{margin:1em 0}body.ltr .checkboxfield .instructions ol,body.ltr .checkboxfield .instructions ul,body.ltr .field>.heading>.instructions ol,body.ltr .field>.heading>.instructions ul,body.ltr .field>.instructions ol,body.ltr .field>.instructions ul{padding-left:2em}body.rtl .checkboxfield .instructions ol,body.rtl .checkboxfield .instructions ul,body.rtl .field>.heading>.instructions ol,body.rtl .field>.heading>.instructions ul,body.rtl .field>.instructions ol,body.rtl .field>.instructions ul{padding-right:2em}.checkboxfield .instructions ul li,.field>.heading>.instructions ul li,.field>.instructions ul li{list-style-type:disc}.checkboxfield .instructions li+li,.field>.heading>.instructions li+li,.field>.instructions li+li{margin-top:.25em}.expand-status-btn{border-radius:var(--small-border-radius);color:var(--text-color);height:17px;line-height:16px;padding:0;width:30px}body.ltr .expand-status-btn{margin-left:5px}body.rtl .expand-status-btn{margin-right:5px}.expand-status-btn:before{margin:0}.nested-fields{margin:-24px;padding:24px 24px 0}.nested-fields.hidden{display:block;height:0}.nested-fields>.field:last-child{padding-bottom:24px}input.checkbox{height:var(--checkbox-size);opacity:0;position:absolute;width:var(--checkbox-size)}div.checkbox,input.checkbox+label{clear:none;cursor:pointer;display:inline-block;height:16px;line-height:16px;position:relative}body.ltr div.checkbox,body.ltr input.checkbox+label{padding-left:21px}body.rtl div.checkbox,body.rtl input.checkbox+label{padding-right:21px}div.checkbox .info,input.checkbox+label .info{height:16px}.disabled div.checkbox,input.checkbox:disabled+label{cursor:default}body.ltr div.checkbox:empty,body.ltr input.checkbox+label:empty{padding-left:var(--checkbox-size)}body.rtl div.checkbox:empty,body.rtl input.checkbox+label:empty{padding-right:var(--checkbox-size)}div.checkbox:empty:after,input.checkbox+label:empty:after{content:"";font-size:0}div.checkbox:before,input.checkbox+label:before{background-clip:padding-box;background-color:#fbfcfe;border:1px solid var(--input-border-color);border-radius:var(--small-border-radius);box-sizing:border-box;content:"";display:block;font-size:0;height:var(--checkbox-size);position:absolute;top:0;width:var(--checkbox-size)!important}body.ltr div.checkbox:before,body.ltr input.checkbox+label:before{left:0}body.rtl div.checkbox:before,body.rtl input.checkbox+label:before{right:0}div.checkbox.disabled+label,div.checkbox.disabled:before,input.checkbox:disabled+label{opacity:.25}.sel div.checkbox:before,div.checkbox.checked:before,div.checkbox.indeterminate:before,input.checkbox:checked+label:before,input.checkbox:indeterminate+label:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;color:var(--gray-900);direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;line-height:var(--checkbox-size);opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}.sel div.checkbox:not(.indeterminate):before,div.checkbox.checked:not(.indeterminate):before,input.checkbox:checked:not(:indeterminate)+label:before{content:"check";font-size:15px}div.checkbox.indeterminate:before,input.checkbox:indeterminate+label:before{content:"minus";font-size:7px;text-align:center}body:not(.reduce-focus-visibility) :focus div.checkbox:before,body:not(.reduce-focus-visibility) input.checkbox:focus+label:before{box-shadow:var(--focus-ring)}body.reduce-focus-visibility :focus-visible div.checkbox:before,body.reduce-focus-visibility input.checkbox:focus-visible+label:before{box-shadow:var(--focus-ring)}.checkbox-icon:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;color:var(--enabled-color);content:"check";direction:ltr;display:inline-block;font-family:Craft;font-size:15px;font-style:normal;font-variant:normal;font-weight:400;line-height:1;line-height:var(--checkbox-size);opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}body.reduce-focus-visibility .monaco-mouse-cursor-text:focus-visible,body:not(.reduce-focus-visibility) .monaco-mouse-cursor-text:focus{box-shadow:none!important}fieldset .checkboxfield{margin:5px 0}.checkboxfield .instructions,.checkboxfield .notice,.checkboxfield .warning{margin-top:2px}body.ltr .checkboxfield .instructions,body.ltr .checkboxfield .notice,body.ltr .checkboxfield .warning{padding-left:21px}body.rtl .checkboxfield .instructions,body.rtl .checkboxfield .notice,body.rtl .checkboxfield .warning{padding-right:21px}input.radio{height:var(--radio-size);opacity:0;position:absolute;width:var(--radio-size)}div.radio,input.radio+label{clear:none;cursor:pointer;display:inline-block;line-height:1.7142857143;position:relative}body.ltr div.radio,body.ltr input.radio+label{padding-left:21px}body.rtl div.radio,body.rtl input.radio+label{padding-right:21px}.disabled div.radio,input.radio:disabled+label{cursor:default}body.ltr div.radio:empty,body.ltr input.radio+label:empty{padding-left:var(--radio-size)}body.rtl div.radio:empty,body.rtl input.radio+label:empty{padding-right:var(--radio-size)}div.radio:after,div.radio:before,input.radio+label:after,input.radio+label:before{background-clip:padding-box;border-radius:100%;box-sizing:border-box;content:"";display:block;position:absolute}div.radio:before,input.radio+label:before{background-color:#fbfcfe;border:1px solid var(--input-border-color);height:var(--radio-size);left:0;width:var(--radio-size)}div.radio:after,div.radio:before,input.radio+label:after,input.radio+label:before{top:50%;-webkit-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%)}div.radio:after,input.radio+label:after{height:calc(var(--radio-size) - 8px);left:4px;width:calc(var(--radio-size) - 8px)}div.radio.disabled+label,div.radio.disabled:before,input.radio:disabled+label{opacity:.25}.sel div.radio:after,div.radio.checked:after,input.radio:checked+label:after{background:var(--gray-900)}body:not(.reduce-focus-visibility) :focus div.radio:before,body:not(.reduce-focus-visibility) input.radio:focus+label:before{box-shadow:var(--focus-ring)}body.reduce-focus-visibility :focus-visible div.radio:before,body.reduce-focus-visibility input.radio:focus-visible+label:before{box-shadow:var(--focus-ring)}.multiselect>select{-webkit-appearance:none;appearance:none;color:var(--text-color);font-size:14px}body.reduce-focus-visibility .multiselect>select:focus-visible,body:not(.reduce-focus-visibility) .multiselect>select:focus{box-shadow:var(--focus-ring)}.multiselect>select option{padding:1px 8px}.selectize.multiselect .selectize-input,.text{padding:6px 9px}.text{background-color:var(--white)}.text:not(.small){box-sizing:border-box;min-height:34px}.text.small{padding:3px}.text.readable{font-size:16px;line-height:22px;padding:16px 18px}.text.readable+.chars-left{margin-top:-23px}body.ltr .text.clearable{padding-right:var(--touch-target-size)}body.rtl .text.clearable{padding-left:var(--touch-target-size)}.text input{background-color:transparent;border:none;margin:0;padding:0}.input.errors>.autosuggest-container .text,.input.errors>.border-box,.input.errors>.passwordwrapper,.input.errors>.text,.text.error{border:1px solid var(--error-color)!important}.texticon{cursor:text;min-width:130px;position:relative}.texticon.icon:before{color:var(--ui-control-color);position:absolute;top:9px}body.ltr .texticon.icon:before{left:9px}body.rtl .texticon.icon:before{right:9px}body.ltr .texticon.icon .text{padding-left:26px}body.rtl .texticon.icon .text{padding-right:26px}.texticon .clear-btn{height:var(--touch-target-size);position:absolute;top:calc((var(--touch-target-size) - 34px)/-2);width:var(--touch-target-size)}body.ltr .texticon .clear-btn{right:0}body.rtl .texticon .clear-btn{left:0}body.ltr .texticon.has-filter-btn .text{padding-right:26px}body.rtl .texticon.has-filter-btn .text{padding-left:26px}.texticon.has-filter-btn .filter-btn{border-radius:13px;cursor:pointer;font-size:14px;line-height:22px;padding:0 7px 4px;position:absolute;top:4px}body.ltr .texticon.has-filter-btn .filter-btn{right:4px}body.rtl .texticon.has-filter-btn .filter-btn{left:4px}.texticon.has-filter-btn .filter-btn:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;color:var(--medium-text-color);content:"filter";direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}.texticon.has-filter-btn .filter-btn:hover{background-color:var(--gray-100)}.texticon.has-filter-btn .filter-btn.active,.texticon.has-filter-btn .filter-btn:active{background-color:var(--gray-350)}.texticon.has-filter-btn .filter-btn.active:before,.texticon.has-filter-btn .filter-btn:active:before{color:var(--white)}body.ltr .texticon.has-filter-btn .text{padding-left:26px}body.rtl .texticon.has-filter-btn .text{padding-right:26px}body.ltr .texticon.has-filter-btn .text.clearable{padding-right:calc(30px + var(--touch-target-size))}body.rtl .texticon.has-filter-btn .text.clearable{padding-left:calc(30px + var(--touch-target-size))}body.ltr .texticon.has-filter-btn .clear-btn{right:30px}body.rtl .texticon.has-filter-btn .clear-btn{left:30px}.texthint-container{height:0;position:relative}.texthint{color:var(--light-text-color);cursor:text;position:absolute;top:-1px;width:100%}.passwordwrapper{position:relative}.passwordwrapper .password{background:transparent;border:none;box-shadow:none;padding-right:4rem}.passwordwrapper .password-toggle{bottom:0;color:var(--link-color);cursor:pointer;position:absolute;top:0}body.ltr .passwordwrapper .password-toggle{right:9px}body.rtl .passwordwrapper .password-toggle{left:9px}.passwordwrapper .password-toggle:hover{text-decoration:underline}.datetimewrapper{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row}body.ltr .datetimewrapper>.datewrapper+.timewrapper,body.ltr .datetimewrapper>.select,body.ltr .datetimewrapper>.timewrapper+.timezone{margin-left:5px}body.rtl .datetimewrapper>.datewrapper+.timewrapper,body.rtl .datetimewrapper>.select,body.rtl .datetimewrapper>.timewrapper+.timezone{margin-right:5px}.clear-btn{-webkit-align-items:center;align-items:center;background:transparent;border:none;color:var(--ui-control-color);cursor:pointer;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center;padding:0;width:24px}.clear-btn:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;content:"remove";direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}.clear-btn:hover{color:var(--ui-control-hover-color)}.clear-btn:active{color:var(--ui-control-active-color)}.close-btn{position:relative}.close-btn:after,.close-btn:before{background-color:var(--ui-control-color);content:"";height:15px;left:50%;opacity:var(--icon-opacity);position:absolute;top:50%;width:2px}.close-btn:before{-webkit-transform:translate(-50%,-50%) rotate(-45deg);-o-transform:translate(-50%,-50%) rotate(-45deg);transform:translate(-50%,-50%) rotate(-45deg)}.close-btn:after{-webkit-transform:translate(-50%,-50%) rotate(45deg);-o-transform:translate(-50%,-50%) rotate(45deg);transform:translate(-50%,-50%) rotate(45deg)}.close-btn:hover:after,.close-btn:hover:before{background-color:var(--ui-control-hover-color)}.close-btn:active:after,.close-btn:active:before{background-color:var(--ui-control-active-color)}.datewrapper,.timewrapper{display:inline-block;position:relative}.datewrapper .text,.timewrapper .text{position:relative;width:100%;z-index:1}.datewrapper .text+div[data-icon],.timewrapper .text+div[data-icon]{display:none}.datewrapper .text.empty-value+div[data-icon],.datewrapper .text:placeholder-shown+div[data-icon],.timewrapper .text.empty-value+div[data-icon],.timewrapper .text:placeholder-shown+div[data-icon]{color:var(--light-text-color);display:block;position:absolute;top:calc(50% - 12px);z-index:0}body.ltr .datewrapper .text.empty-value+div[data-icon],body.ltr .datewrapper .text:placeholder-shown+div[data-icon],body.ltr .timewrapper .text.empty-value+div[data-icon],body.ltr .timewrapper .text:placeholder-shown+div[data-icon]{left:14px}body.rtl .datewrapper .text.empty-value+div[data-icon],body.rtl .datewrapper .text:placeholder-shown+div[data-icon],body.rtl .timewrapper .text.empty-value+div[data-icon],body.rtl .timewrapper .text:placeholder-shown+div[data-icon]{right:14px}.datewrapper .text.empty-value+div[data-icon],.datewrapper .text.empty-value+div[data-icon]:before,.datewrapper .text:placeholder-shown+div[data-icon],.datewrapper .text:placeholder-shown+div[data-icon]:before,.timewrapper .text.empty-value+div[data-icon],.timewrapper .text.empty-value+div[data-icon]:before,.timewrapper .text:placeholder-shown+div[data-icon],.timewrapper .text:placeholder-shown+div[data-icon]:before{pointer-events:none;-webkit-user-select:none;user-select:none;z-index:1}.datewrapper{width:8em}.timewrapper{width:7em}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:var(--gray-400)}input::placeholder,textarea::placeholder{color:var(--gray-400)}::-ms-clear,::-ms-reveal{display:none}tr.indexingSession td{height:34px;padding:1px 10px}tr.indexingSession td.progress div.progressContainer{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-justify-content:space-between;justify-content:space-between;width:100%}tr.indexingSession td.progress div.progressContainer .progressbar{height:12px;left:0;position:relative;width:70%;z-index:1}tr.indexingSession td.progress div.progressContainer div.progressInfo{width:20%}.select:not(.selectize),.select:not(.selectize) select{border-radius:5px;position:relative;white-space:nowrap}.select:not(.selectize){max-width:100%;position:relative}:not(.flex)>.select:not(.selectize){display:inline-block}.select:not(.selectize):after{border:solid;border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;pointer-events:none;position:absolute;top:calc(50% - 5px);-webkit-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg);-webkit-user-select:none;user-select:none;width:7px;z-index:1}body.ltr .select:not(.selectize):after{right:9px}body.rtl .select:not(.selectize):after{left:9px}.select:not(.selectize) select{-webkit-appearance:none;appearance:none;background-color:#dfe5ec;border:none;color:#3f4d5a;display:block;font-size:14px;line-height:20px;max-width:100%;position:relative;white-space:pre}body.ltr .select:not(.selectize) select{padding:7px 22px 7px 10px}body.rtl .select:not(.selectize) select{padding:7px 10px 7px 22px}.select:not(.selectize) select::-ms-expand{display:none}.select:not(.selectize).fullwidth select{min-width:100%}body.reduce-focus-visibility .select:not(.selectize) select:focus-visible,body:not(.reduce-focus-visibility) .select:not(.selectize) select:focus{background-color:#cfd8e2;box-shadow:var(--focus-ring);outline-color:transparent}.select:not(.selectize).small:after{top:9px}.select:not(.selectize).small select{font-size:11px;padding-bottom:4px!important;padding-top:4px!important}.selectize .selectize-input{background-color:transparent;border-color:inherit;box-shadow:none;display:block}.selectize.select .selectize-input:after{display:none}body .selectize-dropdown{border:none;z-index:100}.selectize.select{height:34px}.selectize.select input::-webkit-input-placeholder,.selectize.select textarea::-webkit-input-placeholder{color:var(--gray-700)}.selectize.select input::placeholder,.selectize.select textarea::placeholder{color:var(--gray-700)}.selectize.select:not(.fullwidth){width:25em}.selectize.select .selectize-control{max-width:100%;position:relative}:not(.flex)>.selectize.select .selectize-control{display:inline-block}.selectize.select .selectize-control:after{border:solid;border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;pointer-events:none;position:absolute;top:calc(50% - 5px);-webkit-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg);-webkit-user-select:none;user-select:none;width:7px;z-index:1}body.ltr .selectize.select .selectize-control:after{right:9px}body.rtl .selectize.select .selectize-control:after{left:9px}.selectize.select .selectize-input{border-radius:5px;white-space:nowrap}.selectize.select .selectize-input.focus{box-shadow:var(--focus-ring)}.selectize.select .selectize-input{-webkit-appearance:none;appearance:none;background-color:#dfe5ec;border:none;color:#3f4d5a;display:block;font-size:14px;line-height:20px;max-width:100%;position:relative}body.ltr .selectize.select .selectize-input{padding:7px 22px 7px 10px}body.rtl .selectize.select .selectize-input{padding:7px 10px 7px 22px}.selectize.select .selectize-input::-ms-expand{display:none}.selectize.select .selectize-control,.selectize.select .selectize-input{width:100%}.selectize.multiselect .selectize-input{min-height:34px;padding-bottom:3px}.selectize.multiselect .selectize-input.focus{box-shadow:var(--focus-ring)}.selectize.multiselect .selectize-input>.item{background-color:#e4edf6;border-radius:3px;color:#3f4d5a;display:inline-block;display:-webkit-inline-flex;display:inline-flex;-webkit-flex-direction:row;flex-direction:row;font-size:12px;line-height:14px;padding:3px 7px;padding:3px 7px!important}.selectize.multiselect .selectize-input>.item.active{background-color:#cdd8e4}.selectize.multiselect .selectize-input>.item>.remove{border-left:none;color:var(--ui-control-color);font-size:0;padding:0;position:static}body.ltr .selectize.multiselect .selectize-input>.item>.remove{margin:-1px -3px 0 3px}body.rtl .selectize.multiselect .selectize-input>.item>.remove{margin:-1px 3px 0 -3px}.selectize.multiselect .selectize-input>.item>.remove:hover{background-color:transparent;color:var(--ui-control-hover-color)}.selectize.multiselect .selectize-input>.item>.remove:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;content:"remove";direction:ltr;display:inline-block;font-family:Craft;font-size:14px;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}body .selectize-dropdown{margin-top:1px}body .selectize-dropdown-content{background:#fff;border-radius:4px;box-shadow:0 0 0 1px rgba(31,41,51,.1),0 5px 20px rgba(31,41,51,.25);overflow:auto;padding:0 14px;-webkit-user-select:none;user-select:none;z-index:100}body .selectize-dropdown-content .option{min-height:18px}body .selectize-dropdown-content>div[data-value=new]:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;content:"plus";direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;margin-right:5px;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}body .selectize-dropdown-content>div[data-value=new]:after{content:"…"}body .selectize-dropdown .optgroup-header,body .selectize-dropdown [data-selectable]{color:#3f4d5a;margin:0 -14px;padding:10px 14px;text-decoration:none;white-space:nowrap}body .selectize-dropdown .optgroup-header{color:#606d7b;font-size:11px;line-height:1.2;margin:0;padding:4px 0;text-transform:uppercase}body .selectize-dropdown .active{background-color:#606d7b;color:#fff}body .selectize-dropdown .active .light{color:inherit!important}.ui-datepicker{-padding:10px;height:242px;position:fixed;top:-300px;width:210px;z-index:101!important}body.ltr .ui-datepicker{margin-left:1px}body.rtl .ui-datepicker{margin-right:1px}.ui-datepicker-header{padding:8px 8px 4px}body.ltr .ui-datepicker-prev{float:left}body.ltr .ui-datepicker-next,body.rtl .ui-datepicker-prev{float:right}body.rtl .ui-datepicker-next{float:left}.ui-datepicker-next span,.ui-datepicker-prev span{display:none}.ui-datepicker-next,.ui-datepicker-prev{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;height:20px;-webkit-justify-content:center;justify-content:center;width:20px}.ui-datepicker-next:hover:after,.ui-datepicker-prev:hover:after{border-color:var(--link-color)}.ui-datepicker-prev:after{border:solid;border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;width:7px}body.ltr .ui-datepicker-prev:after{-webkit-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg)}body.rtl .ui-datepicker-prev:after{-webkit-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}.ui-datepicker-next:after{border:solid;border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;width:7px}body.ltr .ui-datepicker-next:after{-webkit-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}body.rtl .ui-datepicker-next:after{-webkit-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg)}.ui-datepicker-title{text-align:center}.ui-datepicker-calendar td,.ui-datepicker-calendar th{padding:2px!important}.ui-datepicker-calendar td a,.ui-datepicker-calendar th span{color:var(--text-color);display:block;line-height:26px;text-align:center;width:1.625rem}.ui-datepicker-calendar th span{color:var(--medium-text-color);font-weight:400}.ui-datepicker-calendar td a{border-radius:2px}.ui-datepicker-calendar td a:hover{background-color:var(--light-sel-color);text-decoration:none}.ui-datepicker-calendar td a.ui-state-active{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;background-color:var(--dark-sel-color);color:var(--white);cursor:default;font-weight:500}.ui-datepicker-calendar td.ui-datepicker-today a{border-radius:13px;box-shadow:inset 0 0 0 2px var(--light-sel-color)}.ui-timepicker-wrapper{z-index:101}.ui-timepicker-list{height:210px;overflow-y:auto;width:calc(14px + 6em);z-index:100}body.ltr .ui-timepicker-list{margin-left:1px}body.rtl .ui-timepicker-list{margin-right:1px}.ui-timepicker-list li{cursor:pointer;white-space:nowrap}body.ltr .ui-timepicker-list li{padding:2px 0 2px 14px}body.rtl .ui-timepicker-list li{padding:2px 14px 2px 0}.ui-timepicker-list li:hover{background-color:var(--light-sel-color)}.ui-timepicker-list li.ui-timepicker-selected{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;background-color:var(--dark-sel-color);color:var(--white);cursor:default;font-weight:500}.slide-picker{display:-webkit-flex;display:flex;height:15px;white-space:nowrap}.slide-picker a{background-image:none;border:1px solid var(--hairline-color);box-sizing:border-box;display:inline-block;height:13px;margin-bottom:1px;margin-left:0;margin-top:1px;width:7px}body.ltr .slide-picker a{border-left:none}body.rtl .slide-picker a{border-right:none}.slide-picker a:first-child{width:8px}body.ltr .slide-picker a:first-child{border-left:1px solid var(--gray-400)!important}body.rtl .slide-picker a:first-child{border-right:1px solid var(--gray-400)!important}.slide-picker:hover a.active-hover,.slide-picker:not(:hover) a.active{border-bottom-color:var(--gray-400);border-top-color:var(--gray-400);height:15px;margin-bottom:0;margin-top:0}body.ltr .slide-picker:hover a.active-hover:first-child,body.ltr .slide-picker:not(:hover) a.active:first-child{border-left:1px solid var(--gray-400)}body.rtl .slide-picker:hover a.active-hover:first-child,body.rtl .slide-picker:not(:hover) a.active:first-child{border-right:1px solid var(--gray-400)}body.ltr .slide-picker:hover a.active-hover:first-child,body.ltr .slide-picker:not(:hover) a.active:first-child{border-top-left-radius:var(--small-border-radius)}body.rtl .slide-picker:hover a.active-hover:first-child,body.rtl .slide-picker:not(:hover) a.active:first-child{border-top-right-radius:var(--small-border-radius)}body.ltr .slide-picker:hover a.active-hover:first-child,body.ltr .slide-picker:not(:hover) a.active:first-child{border-bottom-left-radius:var(--small-border-radius)}body.rtl .slide-picker:hover a.active-hover:first-child,body.rtl .slide-picker:not(:hover) a.active:first-child{border-bottom-right-radius:var(--small-border-radius)}body.ltr .slide-picker:hover a.last-active-hover,body.ltr .slide-picker:not(:hover) a.last-active{border-right:1px solid var(--gray-400)}body.rtl .slide-picker:hover a.last-active-hover,body.rtl .slide-picker:not(:hover) a.last-active{border-left:1px solid var(--gray-400)}body.ltr .slide-picker:hover a.last-active-hover,body.ltr .slide-picker:not(:hover) a.last-active{border-top-right-radius:var(--small-border-radius)}body.rtl .slide-picker:hover a.last-active-hover,body.rtl .slide-picker:not(:hover) a.last-active{border-top-left-radius:var(--small-border-radius)}body.ltr .slide-picker:hover a.last-active-hover,body.ltr .slide-picker:not(:hover) a.last-active{border-bottom-right-radius:var(--small-border-radius)}body.rtl .slide-picker:hover a.last-active-hover,body.rtl .slide-picker:not(:hover) a.last-active{border-bottom-left-radius:var(--small-border-radius)}.slide-picker:focus a.active{background-color:var(--light-sel-color)}ul.errors{list-style-type:square;margin-top:5px}body.ltr ul.errors{padding-left:20px}body.rtl ul.errors{padding-right:20px}ul.errors li{color:var(--error-color)}.message-container{height:100%;position:absolute;top:0;width:100%;z-index:100}body.ltr .message-container{left:0}body.rtl .message-container{right:0}.message-container.no-access{background-color:rgba(31,41,51,.5)}.message-container .pane{box-shadow:0 25px 100px rgba(31,41,51,.5);margin-left:auto;margin-right:auto;margin-top:-33px!important;top:50%;width:320px}.autosuggest-container{position:relative}.autosuggest__results-container{background-color:var(--white);border-radius:var(--large-border-radius);box-shadow:0 1px 5px -1px rgba(31,41,51,.2);box-sizing:border-box;font-family:system-ui,BlinkMacSystemFont,-apple-system,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1em!important;padding:0 14px;position:absolute;text-align:left;width:100%;z-index:2}.autosuggest__results-container .autosuggest__results-before{color:#606d7b;font-size:11px;line-height:1.2;margin:14px 0 3px;margin-top:14px!important;text-transform:uppercase}.autosuggest__results-container .autosuggest__results-item{color:#3f4d5a;margin:0 -14px;overflow:hidden;padding:10px 14px;text-decoration:none;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}.autosuggest__results-container .autosuggest__results-item.autosuggest__results-item--highlighted,.autosuggest__results-container .autosuggest__results-item:hover{background-color:#606d7b;color:#fff;cursor:pointer}.matrix-configurator>.field{max-width:none}.matrix-configurator>.field>.input{-webkit-align-items:stretch;align-items:stretch;background-color:var(--gray-050);box-shadow:none;display:-webkit-flex;display:flex}.matrix-configurator .mc-sidebar{box-sizing:border-box}.matrix-configurator .mc-sidebar .mc-col-items{margin-top:-1px;padding-top:1px}.matrix-configurator .mc-sidebar.block-types{width:200px}body.ltr .matrix-configurator .mc-sidebar.block-types{border-top-left-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-sidebar.block-types{border-top-right-radius:var(--small-border-radius)}body.ltr .matrix-configurator .mc-sidebar.block-types{border-bottom-left-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-sidebar.block-types{border-bottom-right-radius:var(--small-border-radius)}body.ltr .matrix-configurator .mc-sidebar.block-types>.mc-col-inner-container>.mc-col-heading{border-top-left-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-sidebar.block-types>.mc-col-inner-container>.mc-col-heading{border-top-right-radius:var(--small-border-radius)}.matrix-configurator .mc-sidebar.block-types>.mc-col-inner-container>.mc-col-items .btn{margin:14px}.matrix-configurator .mc-sidebar.mc-fields{background:#fff;box-shadow:-1px 0 0 0 rgba(31,41,51,.1),1px 0 0 0 rgba(31,41,51,.1);width:240px;z-index:1}.matrix-configurator .mc-sidebar.mc-fields .mc-col-items{padding:14px}.matrix-configurator .mc-sidebar.mc-fields .mc-col-items .btn{margin-top:14px}.matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-heading,.matrix-configurator .mc-sidebar>.mc-col-inner-container>.mc-col-heading{background-color:var(--gray-050);background-image:-o-linear-gradient(rgba(51,64,77,0),rgba(51,64,77,.05));background-image:linear-gradient(rgba(51,64,77,0),rgba(51,64,77,.05));border-bottom:1px solid var(--hairline-color);margin:0;padding:7px 14px 6px}.matrix-configurator .mc-field-settings{-webkit-flex:1;flex:1;position:relative}body.ltr .matrix-configurator .mc-field-settings{border-top-right-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-field-settings{border-top-left-radius:var(--small-border-radius)}body.ltr .matrix-configurator .mc-field-settings{border-bottom-right-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-field-settings{border-bottom-left-radius:var(--small-border-radius)}.matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-heading{padding-left:24px;padding-right:24px}body.ltr .matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-heading{border-top-right-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-heading{border-top-left-radius:var(--small-border-radius)}.matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-items{padding:24px}.matrixconfigitem{-webkit-align-items:center;align-items:center;box-sizing:border-box;cursor:default;display:-webkit-flex;display:flex;min-height:48px;position:relative;-webkit-user-select:none;user-select:none}.matrixconfigitem.mci-blocktype{background-color:var(--gray-100);border:solid var(--hairline-color);border-width:1px 0;margin-top:-1px;padding:8px 14px}.matrixconfigitem.mci-blocktype.sel{background-color:var(--gray-200);z-index:1}.matrixconfigitem.mci-field{background-color:var(--gray-100);border-radius:var(--medium-border-radius);padding:7px 10px}.matrixconfigitem.mci-field.sel{background-color:var(--gray-200)}.matrixconfigitem.mci-field.sel .slide-picker:focus a.active{background-color:#5f6c79}.matrixconfigitem.mci-field+.mci-field{margin-top:7px}.matrixconfigitem .mci-name{-webkit-flex:1;flex:1;overflow:hidden}.matrixconfigitem .mci-name .smalltext,.matrixconfigitem .mci-name h4{overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}.matrixconfigitem .mci-name h4{color:var(--text-color);font-weight:400;margin-bottom:2px}.matrixconfigitem .mci-name h4.mci-required:after{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;content:"asterisk";direction:ltr;display:inline-block;font-family:Craft;font-size:8px;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}body.ltr .matrixconfigitem .mci-name h4.mci-required:after{margin:-2px 0 0 4px}body.rtl .matrixconfigitem .mci-name h4.mci-required:after{margin:-2px 4px 0 0}.matrixconfigitem.error .mci-name h4{color:var(--error-color)}body.ltr .matrixconfigitem .icon,body.ltr .matrixconfigitem .slide-picker{margin-left:7px}body.rtl .matrixconfigitem .icon,body.rtl .matrixconfigitem .slide-picker{margin-right:7px}.matrixconfigitem .icon{display:block}.matrixconfigitem .icon:not(.error):before{color:var(--ui-control-color)}.matrixconfigitem .icon:not(.error):hover:before{color:var(--ui-control-hover-color)}.matrixconfigitem .icon:not(.error):active:before{color:var(--ui-control-active-color)}.matrixconfigitem .icon.error:before{color:var(--error-color)}.matrix>.buttons{margin-top:10px}.matrixblock{background-color:var(--gray-050);border:1px solid var(--hairline-color);border-radius:var(--large-border-radius);margin-bottom:10px;padding:0 var(--m) var(--m);position:relative}.matrixblock.static{padding-top:14px}.matrixblock .flex-fields{--row-gap:var(--m)!important}.matrixblock>.titlebar{word-wrap:normal;background-color:#ebf2fa;border-radius:calc(var(--large-border-radius) - 1px) calc(var(--large-border-radius) - 1px) 0 0;box-sizing:border-box;color:var(--light-text-color);cursor:default;margin:0 -14px;overflow:hidden;position:relative;-o-text-overflow:ellipsis;text-overflow:ellipsis;-webkit-user-select:none;user-select:none;white-space:nowrap;width:calc(100% + 28px)}body.ltr .matrixblock>.titlebar{padding:5px 70px 5px 35px}body.rtl .matrixblock>.titlebar{padding:5px 35px 5px 70px}.matrixblock>.titlebar:after{background-color:var(--hairline-color);bottom:-1px;content:"";display:block;height:1px;left:14px;position:absolute;width:calc(100% - 28px)}.matrixblock>.titlebar>.blocktype{color:var(--medium-text-color);display:inline}.matrixblock>.titlebar>.preview{display:inline;opacity:0;-o-transition:opacity .1s linear;transition:opacity .1s linear}body.ltr .matrixblock>.titlebar>.preview{margin-left:7px}body.rtl .matrixblock>.titlebar>.preview{margin-right:7px}.matrixblock>.titlebar>.preview span{opacity:.5}.matrixblock.disabled{opacity:1}body.ltr .matrixblock.disabled>.titlebar{padding-right:90px}body.rtl .matrixblock.disabled>.titlebar{padding-left:90px}.matrixblock.disabled>.actions>.status.off{display:block}.matrixblock.collapsed>.titlebar{border-bottom:none;border-radius:var(--titlebar-border-radius)}.matrixblock.collapsed>.titlebar>.preview{opacity:1}.matrixblock>.checkbox{position:absolute;top:7px}body.ltr .matrixblock>.checkbox{left:14px}body.rtl .matrixblock>.checkbox{right:14px}.matrixblock>.actions{-webkit-align-items:center;align-items:center;cursor:default;display:-webkit-flex;display:flex;position:absolute;top:5px}body.ltr .matrixblock>.actions{right:14px}body.rtl .matrixblock>.actions{left:14px}body.ltr .matrixblock>.actions>*{margin:0 0 0 5px}body.rtl .matrixblock>.actions>*{margin:0 5px 0 0}.matrixblock>.actions .settings{color:var(--ui-control-color);height:20px;padding:0 8px}body.ltr .matrixblock>.actions .settings:before{margin-right:0!important}body.rtl .matrixblock>.actions .settings:before{margin-left:0!important}.matrixblock>.actions .settings:not(:hover):not(:active){background-color:transparent}.matrixblock>.actions>.move{margin-top:-3px!important}.matrixblock>.actions>.status.off{display:none}.matrixblock>.actions a:not([data-action]){color:var(--dark-hairline-color);height:20px;padding:0;text-align:center;-webkit-transform:color linear .1s;-o-transform:color linear .1s;transform:color linear .1s}.matrixblock>.actions a:not([data-action]).settings:after{border-color:var(--dark-hairline-color);-webkit-transform:border-color linear .1s;-o-transform:border-color linear .1s;transform:border-color linear .1s}body.ltr .matrixblock>.actions a:not([data-action]).settings:after{margin-left:3px}body.rtl .matrixblock>.actions a:not([data-action]).settings:after{margin-right:3px}.matrixblock>.actions a:not([data-action]):hover{color:var(--link-color)}.matrixblock>.actions a:not([data-action]):hover.settings:after{border-color:var(--link-color)}.matrixblock:not(.static)>.fields{padding-top:14px}.matrixblock>.fields>.flex-fields>.field:before{display:none}.matrixblock>.buttons{height:30px;margin-top:0}.add-category-form{margin-top:24px}.add-category-form .texticon{width:200px}body.ltr .add-category-form .texticon{float:left}body.rtl .add-category-form .texticon{float:right}body.ltr .add-category-form .texticon{margin-right:5px}body.rtl .add-category-form .texticon{margin-left:5px}body.ltr .add-category-form .texticon .text{padding-right:30px}body.rtl .add-category-form .texticon .text{padding-left:30px}.add-category-form .texticon .spinner{position:absolute;top:0}body.ltr .add-category-form .texticon .spinner{right:5px}body.rtl .add-category-form .texticon .spinner{left:5px}.categoriesfield{min-height:30px;position:relative}body.ltr .categoriesfield .structure ul{margin-left:12px}body.rtl .categoriesfield .structure ul{margin-right:12px}body.sitepicker #main-content{-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;padding:30px;text-align:center}body.sitepicker #content-container{max-width:400px}.sitepicker-group li:not(:first-child) a{border-top-left-radius:0;border-top-right-radius:0;margin-top:-1px}.sitepicker-group li:not(:first-child) a:not(:hover){border-top-color:transparent}.sitepicker-group li:not(:last-child) a{border-bottom-left-radius:0;border-bottom-right-radius:0}.sitepicker-group li a{border:1px solid var(--hairline-color);border-radius:var(--medium-border-radius);box-sizing:border-box;display:block;font-size:16px;line-height:1.4;position:relative;text-align:left;width:100%}body.ltr .sitepicker-group li a{padding:9px 42px 9px 15px}body.rtl .sitepicker-group li a{padding:9px 15px 9px 42px}.sitepicker-group li a:after{font-size:14px;margin:0;padding:0;position:absolute;top:calc(50% - 7px)}body.ltr .sitepicker-group li a:after{right:12px}body.rtl .sitepicker-group li a:after{left:12px}.sitepicker-group li a:hover{border-color:var(--link-color);text-decoration:none;z-index:1}.elementselectormodal .body .main{float:left\9;width:445px\9}@media only screen and (-moz-min-device-pixel-ratio:1.5),only screen and (-o-min-device-pixel-ratio:3/2),only screen and (-webkit-min-device-pixel-ratio:1.5),only screen and (min-device-pixel-ratio:1.5),only screen and (min-resolution:1.5dppx){.structure ul li{-o-background-size:40px;background-size:40px}body.ltr .structure ul li{background-image:url(../images/branch_2x.png)}body.rtl .structure ul li{background-image:url(../images/branch_rtl_2x.png)}.hud .tip-left{background-image:url(../images/hudtip_left_2x.png);-o-background-size:15px 30px;background-size:15px 30px}.hud .tip-top{background-image:url(../images/hudtip_top_2x.png);-o-background-size:30px 15px;background-size:30px 15px}.hud .tip-right{background-image:url(../images/hudtip_right_2x.png);-o-background-size:15px 30px;background-size:15px 30px}.hud .tip-bottom{background-image:url(../images/hudtip_bottom_2x.png);-o-background-size:30px 15px;background-size:30px 15px}.hud.has-footer .tip-bottom{background-image:url(../images/hudtip_bottom_gray_2x.png)}}:root{--xs:4px;--s:8px;--m:14px;--l:18px;--xl:24px;--padding:var(--xl);--neg-padding:calc(var(--padding)*-1)}html{-webkit-text-size-adjust:100%}body,html{min-height:100vh}body.increase-contrast{--input-border-color:var(--gray-400)}body :focus{box-shadow:var(--focus-ring);outline-color:transparent;outline-style:solid}.reduce-focus-visibility :focus:not(:focus-visible){box-shadow:none}.reduce-focus-visibility :focus-visible{box-shadow:var(--focus-ring)}.skip-link{height:1px;left:-10000px;margin:5px;overflow:hidden;position:absolute;top:0;width:1px;z-index:101}.skip-link:focus{background-color:var(--gray-100)!important;height:auto;left:unset;width:auto}body.ltr .skip-link:focus{left:0}body.rtl .skip-link:focus{right:0}@media only screen and (min-width:1200px){#global-skip-link{--light-color:var(--white);--dark-color:var(--gray-800);--focus-ring:0 0 0 3px var(--dark-color),0 0 0 6px var(--light-color)}}#global-container{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;min-height:100vh;position:relative}body.ltr #global-container{left:0}body.rtl #global-container{right:0}@media screen and (prefers-reduced-motion:no-preference){body.ltr #global-container{-o-transition:left .25s ease-out;transition:left .25s ease-out}body.rtl #global-container{-o-transition:right .25s ease-out;transition:right .25s ease-out}}#global-sidebar{--is-always-visible:true;-webkit-overflow-scrolling:touch;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;--focus-ring:0 0 0 1px hsl(var(--light-focus-hsl)),0 0 0 3px hsla(var(--light-focus-hsl),0.7);background-color:var(--gray-800);display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;font-weight:500;height:100vh;overflow-x:hidden;overflow-y:auto;padding:0;position:fixed;z-index:100}#global-sidebar a{color:var(--gray-100);text-decoration:none}#global-sidebar :not(.has-subnav)>a[href]:not(.sel):hover,#global-sidebar>a[href]:not(.sel):hover{background-color:#29333d}#global-sidebar :not(.has-subnav)>a:not([href]),#global-sidebar>a:not([href]){background-color:transparent;cursor:default}#global-sidebar .light{color:var(--gray-400)}@media only screen and (max-width:1199px){#global-sidebar{--is-always-visible:false}}#system-info{grid-gap:10px;-webkit-align-items:center;align-items:center;background-color:#29333d;display:grid;-webkit-flex:0 0 50px;flex:0 0 50px;-webkit-flex-direction:row;flex-direction:row;grid-template-columns:30px auto;height:50px;padding:0 10px;position:relative}#system-info:after{display:none}#system-info:focus,#system-info:hover{background-color:#1f272e!important}#site-icon{height:30px}#site-icon img,#site-icon svg{border-radius:4px;display:block;height:30px;width:30px}#site-icon svg circle,#site-icon svg ellipse,#site-icon svg line,#site-icon svg path,#site-icon svg polygon,#site-icon svg polyline,#site-icon svg rect,#site-icon svg text{fill:var(--medium-text-color);stroke-width:0}#system-name .h2,#system-name h2{-webkit-box-orient:vertical;-webkit-line-clamp:2;display:-webkit-box;margin:0;max-height:40px;overflow:hidden;position:relative;width:100%}#system-name .h2:after,#system-name h2:after{background-image:-o-linear-gradient(left,rgba(41,51,61,0),#29333d);background-image:linear-gradient(90deg,rgba(41,51,61,0),#29333d);content:"";display:block;font-size:0;position:absolute;top:0;width:var(--m)}body.ltr #system-name .h2:after,body.ltr #system-name h2:after{right:0}body.rtl #system-name .h2:after,body.rtl #system-name h2:after{left:0}#system-info:hover #system-name .h2:after,#system-info:hover #system-name h2:after{background-image:-o-linear-gradient(left,rgba(31,39,46,0),#1f272e);background-image:linear-gradient(90deg,rgba(31,39,46,0),#1f272e)}#job-icon{-webkit-align-items:flex-start;align-items:flex-start}#job-icon>span.icon{display:block;height:16px;margin-top:2px!important;position:relative;width:16px}#job-icon>span.icon>canvas{display:block;height:16px;position:absolute;width:16px}#job-icon>span.icon>canvas#job-icon-hover{opacity:0}#job-icon[href]:hover .icon>span.icon>canvas#job-icon-hover{opacity:1}#job-icon .progress-label{color:var(--gray-300);display:block;font-size:11px;line-height:1.5}#nav{-webkit-flex:1;flex:1;margin:22px 0 0;overflow:visible;padding-bottom:var(--xl)}#nav li:not(.has-subnav)>a.sel{background-color:var(--gray-100);color:var(--gray-800);opacity:1}#nav li:not(.has-subnav)>a.sel .icon{opacity:1}#nav li a{padding-left:var(--m);padding-right:var(--m);position:relative}#nav li a:focus{z-index:1}#nav li a.menubtn{line-height:26px}#nav li a.external:after{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;content:"external";direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}body.ltr #nav li a.external:after{margin-left:5px}body.rtl #nav li a.external:after{margin-right:5px}#nav li a .label,#nav li a .label span{overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}#nav li a .badge{background-color:var(--gray-200);color:var(--gray-800)}body.ltr #nav li a .badge{margin-right:0}body.rtl #nav li a .badge{margin-left:0}#nav li ul{display:block;margin-bottom:10px}#nav li ul li a{font-size:12px}body.ltr #nav li ul li a{padding:3px var(--m) 3px 42px!important}body.rtl #nav li ul li a{padding:3px 42px 3px var(--m)!important}#nav li ul li a:not(.active){color:var(--gray-200)}#global-footer{-webkit-flex-direction:column;flex-direction:column;padding:var(--m) var(--m) var(--xl)}#app-info,#global-footer{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex}#app-info{color:var(--gray-600);font-size:12px;gap:var(--s);-webkit-justify-content:center;justify-content:center;margin-top:var(--xs);text-align:center}#app-info a{text-decoration:underline}#app-info a,#app-info a.go:hover:after{color:var(--gray-600)}#edition-logo{border:1px solid var(--gray-600);border-radius:3px;box-sizing:content-box;display:-webkit-inline-flex;display:inline-flex;font-size:11px;height:1.25rem;-webkit-user-select:none;user-select:none}#edition-logo>.edition-name,#edition-logo>.edition-trial{line-height:var(--s);padding:.375rem .4375rem .3125rem}#edition-logo>.edition-name{font-weight:600;letter-spacing:1.7px;padding-right:.3125rem;text-transform:uppercase}#edition-logo>.edition-trial{background-color:var(--gray-600);border-radius:0 1px 1px 0;color:var(--gray-200);display:inline-block;letter-spacing:1px;position:relative;text-transform:lowercase}body.ltr #edition-logo>.edition-trial{margin-left:5px}body.rtl #edition-logo>.edition-trial{margin-right:5px}body.ltr #edition-logo>.edition-trial{padding-left:5px}body.rtl #edition-logo>.edition-trial{padding-right:5px}body.ltr #edition-logo>.edition-trial{padding-right:7px}body.rtl #edition-logo>.edition-trial{padding-left:7px}#edition-logo>.edition-trial:before{border-style:solid;content:"";display:block;font-size:0;height:0;position:absolute;top:0;width:0}body.ltr #edition-logo>.edition-trial:before{border-color:transparent var(--gray-600) transparent transparent;border-width:0 10px 20px 0;left:-10px}body.rtl #edition-logo>.edition-trial:before{border-color:transparent transparent transparent var(--gray-600);border-width:0 0 20px 10px;right:-10px}#devmode{background:url(../images/dev-mode.svg) repeat-x 21px 0;cursor:help;-webkit-flex:0 0 4px;flex:0 0 4px;min-height:4px;width:100%}#page-container{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-flex-grow:1;flex-grow:1}body.ltr #page-container{padding-left:226px}body.rtl #page-container{padding-right:226px}#alerts{background-color:var(--red-050);border-left:5px solid var(--error-color);color:var(--error-color);padding:11px 0;position:relative;text-align:center}#alerts li{padding:4px var(--xl)}#alerts li a{color:var(--error-color);text-decoration:underline}#alerts li a.go{border:1px solid rgba(207,17,36,.5);border-radius:var(--medium-border-radius);margin:0 2px;padding:3px 5px;text-decoration:none;white-space:nowrap}#alerts li a.go:after{color:var(--error-color)}#alerts li a.go:hover{border-color:var(--error-color)}#global-header{background:#fff;background:var(--gray-050);box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);margin-bottom:var(--m);width:100%}#global-header:focus{box-shadow:var(--focus-ring)}#global-header .flex{-webkit-align-items:center;align-items:center}#global-header .btn{--ui-control-color:var(--gray-400);--ui-control-hover-color:var(--gray-500);--ui-control-active-color:var(--gray-600)}.nav-toggle{-webkit-align-items:center;align-items:center;color:currentColor;display:-webkit-flex;display:flex;height:50px;-webkit-justify-content:center;justify-content:center;line-height:26px;text-align:center;width:36px}body.ltr .nav-toggle{margin-left:-10px}body.rtl .nav-toggle{margin-right:-10px}.nav-toggle:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;content:"menu";direction:ltr;display:inline-block;font-family:Craft;font-size:16px;font-style:normal;font-variant:normal;font-weight:400;line-height:1;line-height:0;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}.nav-toggle:hover{color:var(--gray-400)}#crumbs{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;font-size:13px;margin:0!important}#crumbs.empty{display:none}#crumbs a,#crumbs button{color:var(--light-text-color);-o-transition:color .1s linear;transition:color .1s linear}#crumbs a:hover,#crumbs button:hover{color:var(--link-color);text-decoration:none}#crumbs nav{margin:0}.breadcrumb-list{-webkit-align-items:stretch;align-items:stretch;display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;-webkit-flex-wrap:wrap;flex-wrap:wrap}.breadcrumb-list li{-webkit-align-items:center;align-items:center;display:-webkit-inline-flex;display:inline-flex}.breadcrumb-list li a,.breadcrumb-list li button{padding:15px 0}.breadcrumb-list li button{cursor:pointer}.breadcrumb-list li:after{border:solid var(--medium-hairline-color);border-width:0 2px 2px 0;content:"";display:block;font-size:0;height:7px;opacity:.8;width:7px}body.ltr .breadcrumb-list li:after{margin:0 8px 0 7px}body.rtl .breadcrumb-list li:after{margin:0 7px 0 8px}body.ltr .breadcrumb-list li:after{-webkit-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}body.rtl .breadcrumb-list li:after{-webkit-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg)}.breadcrumb-list .menu--disclosure li{display:block}.breadcrumb-list .menu--disclosure li:after,li.breadcrumb-toggle-wrapper:after{content:none}#account-menu ul li a{max-width:calc(100% + 28px)!important}#announcements-btn{height:30px;padding-left:0;padding-right:0;position:relative;width:30px;width:40px}#announcements-btn:not(:hover):not(:active):not(.active){background-color:transparent}#announcements-btn:not(:active):not(.active):hover{background-color:rgba(154,165,177,.15)}#announcements-btn.unread:after{background-color:var(--blue-600);border-radius:4px;content:"";display:block;height:7px;position:absolute;top:3px;width:7px}body.ltr #announcements-btn.unread:after{right:7px}body.rtl #announcements-btn.unread:after{left:7px}#announcements-btn svg{height:22px;width:22px}#announcements-btn svg circle,#announcements-btn svg ellipse,#announcements-btn svg line,#announcements-btn svg path,#announcements-btn svg polygon,#announcements-btn svg polyline,#announcements-btn svg rect,#announcements-btn svg text{fill:var(--ui-control-color);stroke-width:0}#announcements-btn.active svg circle,#announcements-btn.active svg ellipse,#announcements-btn.active svg line,#announcements-btn.active svg path,#announcements-btn.active svg polygon,#announcements-btn.active svg polyline,#announcements-btn.active svg rect,#announcements-btn.active svg text,#announcements-btn:active svg circle,#announcements-btn:active svg ellipse,#announcements-btn:active svg line,#announcements-btn:active svg path,#announcements-btn:active svg polygon,#announcements-btn:active svg polyline,#announcements-btn:active svg rect,#announcements-btn:active svg text,#announcements-btn:hover svg circle,#announcements-btn:hover svg ellipse,#announcements-btn:hover svg line,#announcements-btn:hover svg path,#announcements-btn:hover svg polygon,#announcements-btn:hover svg polyline,#announcements-btn:hover svg rect,#announcements-btn:hover svg text{fill:var(--ui-control-active-color);stroke-width:0}#announcements{max-width:350px}#announcements .announcement:not(:first-child){margin-top:20px}#announcements .announcement .announcement-label-container{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;margin-bottom:3px;margin-top:-3px}#announcements .announcement .announcement-label-container .announcement-icon svg{display:block;height:15px;width:15px}#announcements .announcement .announcement-label-container .announcement-label{color:var(--light-text-color);font-size:12px;margin-left:5px}#announcements .announcement.unread .announcement__heading:after{background-color:var(--blue-600);border-radius:4px;content:"";display:block;height:7px;position:absolute;top:7px;width:7px}body.ltr #announcements .announcement.unread .announcement__heading:after{left:-13px}body.rtl #announcements .announcement.unread .announcement__heading:after{right:-13px}#announcements .announcement p{margin:0}#announcements .announcement__header{display:grid}#announcements .announcement__heading{margin:0 0 3px;-webkit-order:1;order:1;position:relative}#user-info{-webkit-align-items:center;align-items:center;background-color:transparent;border-radius:0;display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;height:100%;padding-bottom:5px;padding-top:5px}body.ltr #user-info{padding-right:25px}body.rtl #user-info{padding-left:25px}#user-info:after{border-color:var(--ui-control-color);-o-transition:border-color .1s linear;transition:border-color .1s linear}#user-info:hover:after{border-color:var(--ui-control-hover-color)}#user-info[aria-expanded=true]:after{border-color:var(--ui-control-active-color)}.header-photo{padding:5px 0}.header-photo img{border-radius:50%;box-shadow:0 0 0 1px rgba(31,41,51,.05),0 0 0 rgba(31,41,51,0);display:block;height:30px;max-width:none;-o-transition:box-shadow .15s linear;transition:box-shadow .15s linear;width:30px}#user-info:hover .header-photo img{box-shadow:0 0 0 1px rgba(31,41,51,.05),0 2px 10px -2px rgba(31,41,51,.3)}#main-container{-webkit-flex-grow:1;flex-grow:1;position:relative}#notifications{bottom:8px;position:fixed;width:calc(100% - 16px);z-index:101}body.ltr #notifications{left:8px}body.rtl #notifications{right:8px}@media only screen and (min-width:974px){#notifications{width:350px}}#notifications .notification{--color:var(--notice-color);background:#fff;border-radius:var(--large-border-radius);box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);box-shadow:0 0 0 1px rgba(19,26,32,.15),0 2px 12px rgba(19,26,32,.15);display:-webkit-flex;display:flex;padding:10px 14px;position:relative}#notifications .notification:focus{box-shadow:var(--focus-ring)}#notifications .notification[data-type=success]{--color:var(--success-color)}#notifications .notification[data-type=error]{--color:var(--error-color)}#notifications .notification+.notification{margin-top:12px}#notifications .notification .notification-icon{color:var(--color);font-size:18px;margin-top:-2px;width:18px}body.ltr #notifications .notification .notification-icon{margin-right:10px}body.rtl #notifications .notification .notification-icon{margin-left:10px}#notifications .notification .notification-body{display:-webkit-flex;display:flex;-webkit-flex:1;flex:1}#notifications .notification .notification-body .notification-message{font-weight:700}#notifications .notification .notification-body .notification-details{margin-top:var(--xs)}#notifications .notification .notification-body .notification-details .element{border:1px solid rgba(51,64,77,.1)}#notifications .notification .notification-close-btn{position:relative;top:-2px}body.ltr #notifications .notification .notification-close-btn{margin-left:10px}body.rtl #notifications .notification .notification-close-btn{margin-right:10px}#header-container{margin-bottom:var(--m)}#crumbs,#header{padding-left:var(--xl);padding-right:var(--xl)}@media only screen and (min-width:1200px){#primary-nav-toggle{display:none}}#global-header .flex,#header .flex{max-width:100%}#global-header .flex.flex-nowrap,#header .flex.flex-nowrap{min-width:0}#header{-webkit-align-content:stretch;align-content:stretch;-webkit-align-items:flex-start;align-items:flex-start;background-color:rgba(154,165,177,0);box-shadow:0 1px 0 rgba(51,64,77,0);box-sizing:border-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;gap:var(--s);-webkit-justify-content:space-between;justify-content:space-between;padding-bottom:var(--s);padding-top:var(--s);position:relative;-o-transition:background-color .1s linear,box-shadow .1s linear;transition:background-color .1s linear,box-shadow .1s linear;width:calc(100vw - 226px);z-index:2}body.fixed-header #header{background-color:var(--gray-100);box-shadow:inset 0 -1px 0 rgba(63,77,90,.1);position:fixed;top:0;z-index:12}@supports((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){#header{transition:background-color .1s linear,box-shadow .1s linear,-webkit-backdrop-filter .1s linear;-o-transition:background-color .1s linear,box-shadow .1s linear,backdrop-filter .1s linear;transition:background-color .1s linear,box-shadow .1s linear,backdrop-filter .1s linear;transition:background-color .1s linear,box-shadow .1s linear,backdrop-filter .1s linear,-webkit-backdrop-filter .1s linear}body.fixed-header #header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:rgba(228,237,246,.75)}}#header h1{line-height:34px;margin-bottom:0;min-width:0}#header .btngroup,#header .buttons,#header h1{margin-top:0}@media only screen and (min-width:974px){#page-title.has-toolbar{min-width:calc(226px - var(--xl) - var(--s))!important}}#toolbar{-webkit-align-items:flex-start;align-items:flex-start;-webkit-flex:1;flex:1;-webkit-justify-content:space-between;justify-content:space-between}#toolbar .icon:before,#toolbar .menubtn:after,#toolbar .texticon:before,#toolbar [data-icon-after]:after,#toolbar [data-icon]:before{color:currentColor;opacity:.8}#toolbar .text{border-radius:var(--large-border-radius)}#toolbar .text::-webkit-input-placeholder{color:var(--light-text-color)}#toolbar .text::placeholder{color:var(--light-text-color)}#toolbar .text:not(:focus){background-clip:border-box}@media only screen and (max-width:400px){#action-buttons .btngroup .btn:first-child{-webkit-flex-basis:100%;flex-basis:100%}}@media only screen and (max-width:973px){#action-buttons{margin-top:10px}}#main-content{-webkit-align-items:flex-start;align-items:flex-start;box-sizing:border-box;display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;padding:0 var(--xl) 48px;width:calc(100vw - 226px)}#main-content>.grid:only-child{-webkit-flex:1;flex:1}#sidebar-toggle-container{display:none}#sidebar-container{box-sizing:border-box;-webkit-flex:0 0 226px;flex:0 0 226px;width:226px}@media only screen and (min-width:1200px){body.ltr #sidebar-container{margin-left:calc(var(--xl)*-1)}body.rtl #sidebar-container{margin-right:calc(var(--xl)*-1)}}#sidebar{background-color:transparent;box-sizing:border-box;padding:0 31px;width:226px}#sidebar.fixed{overflow-y:auto;padding-bottom:var(--m);padding-top:var(--m);position:fixed}#sidebar nav{margin-left:-31px;margin-right:-31px}#sidebar nav li a{position:relative}#sidebar nav li a:focus{z-index:1}#sidebar nav li a:not(.sel):hover{background-color:var(--gray-200)}#content-container{-webkit-flex:1;flex:1}#main-content:not(.has-sidebar):not(.has-details) #content-container{max-width:100%;width:100%}#main-content.has-sidebar #content-container{max-width:calc(100% - 202px);width:calc(100% - 202px)}#main-content.has-details #content-container{max-width:calc(100% - 350px - var(--m));width:calc(100% - 350px - var(--m))}#content-container #main-content.has-sidebar.has-details{max-width:calc(100% - 614px);width:calc(100% - 614px)}#content-heading{margin-top:var(--xl)!important}@media only screen and (min-width:974px){#content-heading{clip:rect(0,0,0,0);border:0;height:1px;margin:0;overflow:hidden;padding:0;position:absolute;width:1px}}.content-pane{word-wrap:break-word;background:#fff;background-clip:padding-box;border-radius:var(--large-border-radius);box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);padding:var(--xl);position:relative}.content-pane:focus{box-shadow:var(--focus-ring)}.content-pane>hr{margin-left:calc(var(--xl)*-1);margin-right:calc(var(--xl)*-1)}#footer{background-color:var(--gray-050);border-radius:0 0 var(--large-border-radius) var(--large-border-radius);bottom:0;box-sizing:border-box;margin:25px calc(var(--xl)*-1) calc(var(--xl)*-1);min-height:50px;padding:var(--s) var(--xl);position:-webkit-sticky;position:sticky;z-index:1}#footer:empty{display:none}#footer.stuck{border-radius:0}@supports((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){#footer.stuck{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:rgba(228,237,246,.75)}}.has-debug-toolbar #footer{-o-transition:padding .1s linear;transition:padding .1s linear}.has-debug-toolbar #footer.stuck{padding-bottom:52px}#footer .flex>*,#footer>*{margin-bottom:0}#details-container{box-sizing:border-box;-webkit-flex:0 0 388px;flex:0 0 388px;width:388px}body.ltr #details-container{margin-right:calc(var(--xl)*-1)}body.rtl #details-container{margin-left:calc(var(--xl)*-1)}#details{box-sizing:border-box;width:388px}body.ltr #details{padding-right:var(--xl)}body.rtl #details{padding-left:var(--xl)}body.ltr #details{padding-left:var(--m)}body.rtl #details{padding-right:var(--m)}#details.fixed{overflow-y:auto;padding-top:var(--m);position:fixed}#details .details .meta{border-radius:var(--large-border-radius)}#details .details .meta.read-only{background-color:transparent!important;color:var(--medium-text-color)}#details .details .meta>.data:first-child,#details .details .meta>.field:first-child{border-top-right-radius:var(--large-border-radius)}#details .details .meta>.data:first-child,#details .details .meta>.data:first-child>.status-badge,#details .details .meta>.field:first-child,#details .details .meta>.field:first-child>.status-badge{border-top-left-radius:var(--large-border-radius)}#details .details .meta>.data:last-child,#details .details .meta>.field:last-child{border-bottom-right-radius:var(--large-border-radius)}#details .details .meta>.data:last-child,#details .details .meta>.data:last-child>.status-badge,#details .details .meta>.field:last-child,#details .details .meta>.field:last-child>.status-badge{border-bottom-left-radius:var(--large-border-radius)}#details .details .notes{border-radius:var(--large-border-radius);padding-bottom:var(--m);padding-top:var(--m)}@media only screen and (max-width:1199px){#global-container{width:calc(100vw + 226px)}body.ltr #global-container{left:-226px}body.rtl #global-container{right:-226px}body.ltr.showing-nav #global-container{left:0}body.rtl.showing-nav #global-container{right:0}#crumbs{display:-webkit-flex!important;display:flex!important}#header,#main-content{width:100vw}}@media only screen and (max-width:973px){#header{display:block}#header .flex:not(#toolbar){margin-top:10px}#toolbar{-webkit-flex-wrap:wrap!important;flex-wrap:wrap!important}#toolbar>*{margin-top:10px!important}body.fixed-header #header .flex:first-child{margin-top:0}#main-content{display:block}#sidebar-toggle-container{display:block;margin-bottom:var(--m)}#sidebar-toggle:after{top:0;-webkit-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}body.rtl #sidebar-toggle:after{-webkit-transform:rotate(135deg);-o-transform:rotate(135deg);transform:rotate(135deg)}body.showing-sidebar #sidebar-toggle{background-color:#acbed2!important}body.showing-sidebar #sidebar-toggle:after{-webkit-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}#content-container{min-height:0!important}#details-container,#sidebar-container{width:auto!important}#details,#sidebar{max-height:none!important;overflow-y:visible!important;position:static!important;width:auto}#sidebar{margin-bottom:var(--m)}body:not(.showing-sidebar) #sidebar{display:none}body.ltr #details-container{margin-right:0}body.rtl #details-container{margin-left:0}#content-container{max-width:none!important;width:auto!important}#details{margin-top:var(--m);padding:0!important}}@media only screen and (max-width:767px){#crumbs,#header,#main-content{padding-left:10px!important;padding-right:10px!important}#tabs ul li a{padding-left:var(--m);padding-right:var(--m)}body.ltr #tabs ul li+li{margin-left:-7px}body.rtl #tabs ul li+li{margin-right:-7px}}body.ltr #settingsmenu ul li a{padding-left:46px}body.rtl #settingsmenu ul li a{padding-right:46px}#settingsmenu ul li a:before{font-size:15px}body.ltr #settingsmenu ul li a:before{margin:1px 0 0 -22px}body.rtl #settingsmenu ul li a:before{margin:1px -22px 0 0}#settingsmenu ul li a img{height:16px;margin-left:-23px;margin-top:1px;position:absolute;width:16px}.grid{min-height:1px;position:relative}.grid:after{clear:both;content:"";display:block;height:0;visibility:hidden}.grid>.item{display:none}.grid>.item,.sidebar{box-sizing:border-box}.sidebar{font-size:13px;width:226px}.sidebar:not(.drag-helper){background-color:var(--gray-050);padding:var(--m) 0}.sidebar .heading{margin:0 var(--xl);position:relative}.sidebar .heading:not(:first-child){margin-top:var(--m)}.sidebar .heading>span{color:var(--medium-text-color);display:inline-block;font-size:11px;font-weight:700;margin:0 -5px;padding:0 5px;position:relative;text-transform:uppercase;z-index:1}.sidebar .heading>ul{margin:2px calc(var(--xl)*-1)}.sidebar nav{padding:0 var(--s)}body.ltr .sidebar nav>ul>li.heading>ul>li>a,body.ltr .sidebar nav>ul>li:not(.heading)>a{padding-left:24px}body.rtl .sidebar nav>ul>li.heading>ul>li>a,body.rtl .sidebar nav>ul>li:not(.heading)>a{padding-right:24px}body.ltr .sidebar nav>ul>li.heading>ul>li>.toggle,body.ltr .sidebar nav>ul>li:not(.heading)>.toggle{left:calc(var(--m)*0)}body.rtl .sidebar nav>ul>li.heading>ul>li>.toggle,body.rtl .sidebar nav>ul>li:not(.heading)>.toggle{right:calc(var(--m)*0)}body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>a,body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>a{padding-left:38px}body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>a,body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>a{padding-right:38px}body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>.toggle,body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>.toggle{left:calc(var(--m)*1)}body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>.toggle,body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>.toggle{right:calc(var(--m)*1)}body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>a,body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>a{padding-left:52px}body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>a,body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>a{padding-right:52px}body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>.toggle,body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>.toggle{left:calc(var(--m)*2)}body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>.toggle,body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>.toggle{right:calc(var(--m)*2)}body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>a,body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>a{padding-left:66px}body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>a,body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>a{padding-right:66px}body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle,body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>.toggle{left:calc(var(--m)*3)}body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle,body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>.toggle{right:calc(var(--m)*3)}body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>a,body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>a{padding-left:80px}body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>a,body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>a{padding-right:80px}body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle,body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle{left:calc(var(--m)*4)}body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle,body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle{right:calc(var(--m)*4)}.sidebar nav li{position:relative}.sidebar nav li:not(.has-subnav)>a:not(.sel):hover{background-color:var(--gray-100);text-decoration:none}.sidebar nav li:not(.has-subnav)>a.sel{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;background-color:var(--gray-500);cursor:default;font-weight:500}.sidebar nav li:not(.has-subnav)>a.sel,.sidebar nav li:not(.has-subnav)>a.sel+.toggle{color:var(--white)}.sidebar nav li a{-webkit-align-items:center;align-items:center;border-radius:var(--large-border-radius);box-sizing:border-box;color:var(--text-color);display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;margin-bottom:1px;min-height:var(--xl);padding:7px var(--xl);position:relative;-webkit-user-select:none;user-select:none;word-break:break-word}.sidebar nav li a .icon,.sidebar nav li a .status{-webkit-flex-shrink:1;flex-shrink:1}.sidebar nav li a .icon{height:1.125rem;opacity:.85;-o-transition:margin-left .15s linear,margin-right .15s linear;transition:margin-left .15s linear,margin-right .15s linear;width:1.125rem;word-break:normal}body.ltr .sidebar nav li a .icon{margin-right:10px}body.rtl .sidebar nav li a .icon{margin-left:10px}.sidebar nav li a .icon.icon-mask svg circle,.sidebar nav li a .icon.icon-mask svg ellipse,.sidebar nav li a .icon.icon-mask svg line,.sidebar nav li a .icon.icon-mask svg path,.sidebar nav li a .icon.icon-mask svg polygon,.sidebar nav li a .icon.icon-mask svg polyline,.sidebar nav li a .icon.icon-mask svg rect,.sidebar nav li a .icon.icon-mask svg text{fill:currentColor;stroke-width:0}.sidebar nav li a .icon.icon-mask span[data-icon]{color:currentColor}.sidebar nav li a .icon svg{height:16px;width:16px}.sidebar nav li a .icon span[data-icon]{font-size:16px}.sidebar nav li a .icon span[data-icon]:before{display:block}.sidebar nav li a .label{-webkit-flex:1;flex:1}.sidebar nav li a .badge{background-color:var(--medium-text-color);border-radius:var(--s);color:var(--white);-webkit-flex-shrink:1;flex-shrink:1;font-size:11px;line-height:16px;padding:0 6px}body.ltr .sidebar nav li a .badge{margin:0 -4px 0 10px}body.rtl .sidebar nav li a .badge{margin:0 10px 0 -4px}.sidebar nav li .toggle{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;height:34px;-webkit-justify-content:center;justify-content:center;position:absolute;top:0;width:var(--xl);z-index:1}.sidebar nav li ul{display:none}.sidebar nav li.expanded>ul,.sidebar nav li.heading>ul{display:block}body.ltr .content.has-sidebar:not(.hiding-sidebar){margin-left:226px}body.rtl .content.has-sidebar:not(.hiding-sidebar){margin-right:226px}#content-notice{margin:0 calc(var(--xl)*-1);padding:0 var(--xl)}#content-notice:not(:last-child){border-bottom:1px solid var(--hairline-color);margin-bottom:var(--s);padding-bottom:var(--s)}#content :not(.meta)>.flex-fields,#content>.flex-fields,.so-content .flex-fields{--row-gap:var(--xl);-webkit-align-content:flex-start;align-content:flex-start;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;margin:0 calc(var(--row-gap)*-1) calc(var(--row-gap)*-1);width:calc(100% + var(--row-gap)*2)}#content :not(.meta)>.flex-fields>*,#content>.flex-fields>*,.so-content .flex-fields>*{box-sizing:border-box;margin:0 0 var(--row-gap)!important;padding:0 var(--row-gap)}#content :not(.meta)>.flex-fields>h2,#content>.flex-fields>h2,.so-content .flex-fields>h2{-webkit-flex:4 0 100%;flex:4 0 100%}#content :not(.meta)>.flex-fields>h2:not(:first-child),#content>.flex-fields>h2:not(:first-child),.so-content .flex-fields>h2:not(:first-child){border-top:1px solid var(--hairline-color);padding-top:var(--xl)}#content :not(.meta)>.flex-fields>.line-break,#content :not(.meta)>.flex-fields>hr,#content>.flex-fields>.line-break,#content>.flex-fields>hr,.so-content .flex-fields>.line-break,.so-content .flex-fields>hr{-webkit-flex:4 0 100%;flex:4 0 100%}#content :not(.meta)>.flex-fields>.line-break:not(:first-child),#content>.flex-fields>.line-break:not(:first-child),.so-content .flex-fields>.line-break:not(:first-child){margin-bottom:0!important}#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break),#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child,#content>.flex-fields>:not(h2):not(hr):not(.line-break),#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child,.so-content .flex-fields>:not(h2):not(hr):not(.line-break),.so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child{position:relative;width:100%}#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):before,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,#content>.flex-fields>:not(h2):not(hr):not(.line-break):before,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,.so-content .flex-fields>:not(h2):not(hr):not(.line-break):before,.so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child:before{background-color:rgba(205,216,228,.5);content:"";height:100%;position:absolute;top:0;width:1px}body.ltr #content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):before,body.ltr #content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,body.ltr #content>.flex-fields>:not(h2):not(hr):not(.line-break):before,body.ltr #content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,body.ltr .so-content .flex-fields>:not(h2):not(hr):not(.line-break):before,body.ltr .so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child:before{left:-1px}body.rtl #content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):before,body.rtl #content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,body.rtl #content>.flex-fields>:not(h2):not(hr):not(.line-break):before,body.rtl #content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,body.rtl .so-content .flex-fields>:not(h2):not(hr):not(.line-break):before,body.rtl .so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child:before{right:-1px}@media only screen and (min-width:1536px){#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-25,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-25,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25{width:25%}#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-50,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-50,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50{width:50%}#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-75,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-75,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-75,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-75{width:75%}}@media only screen and (min-width:600px)and (max-width:1535px){#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-25,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-50,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-25,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-50,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50{width:50%}}@media only screen and (min-width:1200px){.so-content .flex-fields>:not(h2):not(hr):not(.line-break).width-25,.so-content .flex-fields>:not(h2):not(hr):not(.line-break).width-50,.so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25,.so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50{width:50%}}.lp-editor-container,.lp-preview-container{background-color:var(--white);height:100%;position:fixed;top:0;z-index:100}.lp-editor-container header,.lp-preview-container header{background-color:var(--gray-100);box-shadow:0 1px 0 rgba(63,77,90,.2);box-sizing:border-box;padding:8px 24px;position:relative;z-index:1}@supports((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){.lp-editor-container header,.lp-preview-container header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:rgba(228,237,246,.75);left:0;position:absolute;top:0;width:100%;z-index:2}.lp-editor-container header+.lp-editor,.lp-preview-container header+.lp-editor{padding-top:78px}}.lp-editor-container header .btn,.lp-editor-container header .checkmark-icon,.lp-editor-container header .spinner,.lp-preview-container header .btn,.lp-preview-container header .checkmark-icon,.lp-preview-container header .spinner{margin-bottom:0}.lp-editor-container{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column}.lp-editor-container .lp-editor{box-sizing:border-box;-webkit-flex:1;flex:1;overflow:auto;padding:24px}.lp-editor-container .lp-editor>.field:last-child{margin-bottom:24px!important}body.ltr .lp-editor-container .lp-editor>.field>.status-badge{left:-24px}body.rtl .lp-editor-container .lp-editor>.field>.status-badge{right:-24px}body.ltr .lp-editor-container .lp-editor .matrixblock>.fields>.flex-fields>.field>.status-badge{left:calc(var(--m)*-1)}body.rtl .lp-editor-container .lp-editor .matrixblock>.fields>.flex-fields>.field>.status-badge{right:calc(var(--m)*-1)}.lp-editor-container .lp-draghandle{cursor:col-resize;height:100%;position:absolute;top:0;width:4px;z-index:6}body.ltr .lp-editor-container .lp-draghandle{right:-2px}body.rtl .lp-editor-container .lp-draghandle{left:-2px}.lp-preview-container{box-shadow:-1px 0 0 rgba(63,77,90,.2);display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column}.lp-preview-container.dragging:after{content:"";font-size:0;height:100%;left:0;position:absolute;top:0;width:100%}.lp-preview-container .lp-preview-header{display:-webkit-flex;display:flex}@supports not ((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){.lp-preview-container .lp-preview-header{background-color:rgba(228,237,246,.75)}}.lp-preview-container .lp-preview-header .buttons{margin:0}body.ltr .lp-preview-container .lp-preview-header .buttons .btn+.btn{margin-left:7px}body.rtl .lp-preview-container .lp-preview-header .buttons .btn+.btn{margin-right:7px}.lp-preview-container .lp-preview-header+.lp-iframe-container{padding-top:0}@supports((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){.lp-preview-container .lp-preview-header+.lp-iframe-container{padding-top:50px}}.lp-preview-container .lp-preview-header .lp-device-type .btn:before{background-position:50%;background-repeat:no-repeat;-o-background-size:contain;background-size:contain;content:"";display:block;height:22px;-o-transition-duration:.3s;transition-duration:.3s;width:27px}.lp-preview-container .lp-preview-header .lp-device-type .btn.lp-device-type-btn--phone:before{background-image:url(../images/preview/icon-phone.svg)}.lp-preview-container .lp-preview-header .lp-device-type .btn.lp-device-type-btn--tablet:before{background-image:url(../images/preview/icon-tablet.svg)}.lp-preview-container .lp-preview-header .lp-device-type .btn.lp-device-type-btn--desktop:before{background-image:url(../images/preview/icon-desktop.svg)}.lp-preview-container .lp-device-type__label:before{background-position:50%;background-repeat:no-repeat;-o-background-size:contain;background-size:contain;content:"";display:block;height:22px;-o-transition-duration:.3s;transition-duration:.3s;width:27px}.lp-preview-container .lp-device-type__label.lp-device-type__label--phone:before{background-image:url(../images/preview/icon-phone.svg)}.lp-preview-container .lp-device-type__label.lp-device-type__label--tablet:before{background-image:url(../images/preview/icon-tablet.svg)}.lp-preview-container .lp-device-type__label.lp-device-type__label--desktop:before{background-image:url(../images/preview/icon-desktop.svg)}.lp-preview-container .lp-preview-container__bumper-link{bottom:0;top:unset}.lp-preview-container .lp-device-mask{display:none}.lp-preview-container .lp-iframe-container{-webkit-flex:1;flex:1;overflow:auto}.lp-preview-container .lp-iframe-container .lp-preview{display:block;min-height:100%;width:100%}.lp-preview-container .lp-iframe-container:not(.lp-iframe-container--has-device-preview) .lp-device-preview-container{height:100%!important;margin:0!important;-webkit-transform:none!important;-o-transform:none!important;transform:none!important;width:auto!important}.lp-preview-container .lp-iframe-container--has-device-preview{background-color:var(--gray-100);-webkit-flex:none;flex:none;height:calc(100% - 50px);padding-top:0!important;position:relative;top:0;width:100%}@supports((-webkit-backdrop-filter:blur(10px)) or (backdrop-filter:blur(10px))){.lp-preview-container .lp-iframe-container--has-device-preview{top:50px}}.lp-preview-container .lp-iframe-container--has-device-preview .lp-device-preview-container{left:50%;opacity:1;overflow:auto;position:absolute;top:50%;-o-transition:opacity .3s;transition:opacity .3s;z-index:2}.lp-preview-container .lp-iframe-container--has-device-preview .lp-device-mask{background-color:#fff;background-image:url(../images/preview/chrome-phone-top.svg),url(../images/preview/chrome-phone-bottom.svg);background-position:top,bottom;background-repeat:no-repeat;-o-background-size:contain;background-size:contain;border-radius:18px;box-shadow:0 0 58px rgba(6,67,117,.3);display:block;left:50%;position:absolute;top:50%;z-index:1}.lp-preview-container .lp-iframe-container--has-device-preview.lp-iframe-container--tablet .lp-device-mask{background-image:url(../images/preview/chrome-tablet-top.svg),url(../images/preview/chrome-tablet-bottom.svg)}@media screen and (prefers-reduced-motion:no-preference){.lp-preview-container .lp-iframe-container--rotating .lp-device-mask{-o-transition-duration:.3s;transition-duration:.3s;transition-property:-webkit-transform;-o-transition-property:-o-transform;transition-property:transform;transition-property:transform,-webkit-transform,-o-transform}.lp-preview-container .lp-iframe-container--rotating .lp-device-preview-container{opacity:0;-o-transition:opacity 0s;transition:opacity 0s}}.layoutdesigner{-webkit-align-items:stretch;align-items:stretch;background-clip:padding-box;background-color:#fbfcfe;border:1px solid var(--input-border-color);border-radius:3px;box-shadow:none;display:-webkit-flex;display:flex;min-height:500px;overflow:hidden;position:relative}body.ltr .layoutdesigner{padding-right:241px}body.rtl .layoutdesigner{padding-left:241px}.errors>.layoutdesigner{border:1px solid var(--error-color)!important}.layoutdesigner .fld-workspace{background-color:var(--gray-050);background-image:-o-linear-gradient(left,#ecf2f9 1px,transparent 0),-o-linear-gradient(top,#ecf2f9 1px,transparent 1px);background-image:linear-gradient(90deg,#ecf2f9 1px,transparent 0),linear-gradient(180deg,#ecf2f9 1px,transparent 0);background-position:-1px -1px;-o-background-size:24px 24px;background-size:24px 24px;box-shadow:inset 0 1px 3px -1px #acbed2;-webkit-flex:1;flex:1}body.ltr .layoutdesigner .fld-workspace{border-radius:var(--small-border-radius) 0 0 var(--small-border-radius)}body.rtl .layoutdesigner .fld-workspace{border-radius:0 var(--small-border-radius) var(--small-border-radius) 0}body.ltr .layoutdesigner .fld-workspace{padding:24px 0 24px 24px}body.rtl .layoutdesigner .fld-workspace{padding:24px 24px 24px 0}.layoutdesigner .fld-workspace .fld-tabs{-webkit-align-items:flex-start;align-items:flex-start;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap}.layoutdesigner .fld-sidebar{box-sizing:border-box;height:100%;overflow:auto;padding:14px;position:absolute;top:0;width:241px}body.ltr .layoutdesigner .fld-sidebar{right:0}body.rtl .layoutdesigner .fld-sidebar{left:0}.layoutdesigner .fld-sidebar .btngroup{margin-bottom:14px}.layoutdesigner .fld-sidebar .fld-field-library .fld-field-group{margin-top:14px}.layoutdesigner .fld-sidebar .fld-field-library .fld-field-group h6{margin-bottom:7px}.layoutdesigner .fld-sidebar .filtered{display:none}.layoutdesigner .fld-new-tab-btn:active{background-color:var(--gray-050)}.fld-new-tab-btn,.fld-new-tab-btn:hover,.fld-sidebar,.fld-tab .fld-tabcontent,.fld-tab .tabs .tab{background-color:var(--white);box-shadow:0 0 0 1px rgba(31,41,51,.1),0 2px 5px -2px rgba(31,41,51,.2)}body.ltr .fld-element .settings,body.ltr .fld-element .slide-picker,body.ltr .fld-tab .settings{margin-left:7px}body.rtl .fld-element .settings,body.rtl .fld-element .slide-picker,body.rtl .fld-tab .settings{margin-right:7px}.fld-element .settings:before,.fld-tab .settings:before{font-size:16px;margin-top:-2px;opacity:.5}.fld-element .settings.active:before,.fld-element .settings:hover:before,.fld-tab .settings.active:before,.fld-tab .settings:hover:before{opacity:1}.fld-tab{box-sizing:border-box;width:264px}body.ltr .fld-tab{padding:0 25px 24px 0}body.rtl .fld-tab{padding:0 0 24px 25px}.fld-tab .tabs{display:-webkit-flex;display:flex;margin:-10px -12px 0;overflow:hidden;padding:10px 12px 0}.fld-tab .tabs .tab{border-radius:var(--medium-border-radius) var(--medium-border-radius) 0 0;box-sizing:border-box;display:-webkit-flex;display:flex;max-width:calc(100% - 10px);padding:8px 14px}body:not(.dragging) .fld-tab .tabs .tab.draggable{cursor:move;cursor:-webkit-grab;cursor:grab}.fld-tab .tabs .tab span{overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}.fld-tab .fld-tabcontent{padding:14px}body.ltr .fld-tab .fld-tabcontent{border-radius:0 var(--medium-border-radius) var(--medium-border-radius) var(--medium-border-radius)}body.rtl .fld-tab .fld-tabcontent{border-radius:var(--medium-border-radius) 0 var(--medium-border-radius) var(--medium-border-radius)}.fld-tab.fld-insertion .fld-tabcontent,.fld-tab.fld-insertion .tabs .tab{background-color:var(--gray-050);background-image:-o-linear-gradient(left,#ecf2f9 1px,transparent 0),-o-linear-gradient(top,#ecf2f9 1px,transparent 1px);background-image:linear-gradient(90deg,#ecf2f9 1px,transparent 0),linear-gradient(180deg,#ecf2f9 1px,transparent 0);-o-background-size:24px 24px;background-size:24px 24px;border:2px dashed var(--hairline-color);box-shadow:none;margin:-2px}.fld-tab.fld-insertion .tabs .tab{background-position:-1px -1px}.fld-tab.fld-insertion .fld-tabcontent{background-position:-1px -13px}.fld-tab-caboose{min-height:24px}.fld-indicator{color:var(--uicontrol-color);display:-webkit-inline-flex;display:inline-flex;font-size:11px}body.ltr .fld-indicator{margin-left:4px}body.rtl .fld-indicator{margin-right:4px}body.ltr .fld-indicator+.fld-indicator{margin-left:2px}body.rtl .fld-indicator+.fld-indicator{margin-right:2px}.fld-element{-webkit-align-items:center;align-items:center;background-color:var(--white);border-radius:var(--medium-border-radius);box-shadow:inset 0 0 0 1px var(--hairline-color);display:-webkit-flex;display:flex;padding:7px 10px;position:relative}body:not(.dragging) .fld-element{cursor:move;cursor:-webkit-grab;cursor:grab}.fld-element+.fld-element{margin-top:7px}.fld-element.fld-insertion{background:none;border:2px dashed var(--hairline-color);border-radius:var(--medium-border-radius);box-shadow:none;box-sizing:border-box}.fld-element.draghelper{box-shadow:0 1px 5px -1px rgba(31,41,51,.2)}.fld-element.fld-field{background-color:var(--gray-100);color:var(--medium-text-color)}.fld-element.fld-field:not(.draghelper){box-shadow:none}.fld-element.fld-field .fld-field-hidden:not(.hidden){margin-top:-3px}body.ltr .fld-element.fld-field .fld-field-hidden:not(.hidden){margin-right:5px}body.rtl .fld-element.fld-field .fld-field-hidden:not(.hidden){margin-left:5px}.fld-element.fld-field .fld-field-hidden:not(.hidden):before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;content:"shuteye";direction:ltr;display:inline-block;font-family:Craft;font-style:normal;font-variant:normal;font-weight:400;line-height:1;opacity:var(--icon-opacity);text-align:center;text-rendering:optimizeLegibility;text-transform:none;-webkit-user-select:none;user-select:none;vertical-align:middle}.fld-element.fld-field .field-name .fld-element-label{margin-bottom:2px}.fld-element .fld-element-icon{text-align:center}body.ltr .fld-element .fld-element-icon{margin-right:5px}body.rtl .fld-element .fld-element-icon{margin-left:5px}.fld-element .fld-element-icon,.fld-element .fld-element-icon svg{height:16px;width:16px}.fld-element .fld-element-icon svg circle,.fld-element .fld-element-icon svg ellipse,.fld-element .fld-element-icon svg line,.fld-element .fld-element-icon svg path,.fld-element .fld-element-icon svg polygon,.fld-element .fld-element-icon svg polyline,.fld-element .fld-element-icon svg rect,.fld-element .fld-element-icon svg text{fill:var(--ui-control-color);stroke-width:0}.fld-element .field-name{-webkit-flex:1;flex:1;overflow:hidden}.fld-element .field-name .fld-attribute,.fld-element .field-name .fld-element-label{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-flex:1;flex:1}.fld-element .field-name .fld-attribute .smalltext,.fld-element .field-name .fld-element-label h4{overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;white-space:nowrap}.fld-element .field-name .fld-element-label h4{color:var(--text-color);font-weight:400;margin:0}body.dragging{cursor:move!important;cursor:-webkit-grabbing!important;cursor:grabbing!important}.fld-br,.fld-hr{display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center;padding:9px 10px}.fld-br:before,.fld-hr:before{border-radius:2px;content:"";display:block;font-size:0;height:4px;left:10px;position:absolute;top:calc(50% - 2px);width:calc(100% - 20px)}.fld-br .smalltext,.fld-hr .smalltext{background-color:var(--gray-100);border-radius:8px;padding:1px 7px;position:relative}.fld-hr:before{background-color:var(--gray-100)}.fld-br:before{background-image:-o-repeating-linear-gradient(left,var(--gray-100),var(--gray-100) 5.2631578947%,transparent 5.2631578947%,transparent 10.5263157895%,var(--gray-100) 10.5263157895%);background-image:repeating-linear-gradient(to right,var(--gray-100),var(--gray-100) 5.2631578947%,transparent 5.2631578947%,transparent 10.5263157895%,var(--gray-100) 10.5263157895%)}.fld-element-settings-body{-webkit-flex:1;flex:1;margin:-24px var(--neg-padding) 0;overflow:hidden auto;padding:24px var(--padding);position:relative}.fld-element-settings-footer{background:#fff;background-color:var(--gray-050);box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;margin:0 var(--neg-padding) -24px;padding:var(--padding);position:relative;z-index:3}.fld-element-settings-footer:focus{box-shadow:var(--focus-ring)}.fld-element-settings-footer>.ee-site-select{-webkit-flex:1;flex:1}body.ltr .fld-element-settings-footer>.btn{margin-left:5px}body.rtl .fld-element-settings-footer>.btn{margin-right:5px}body.ltr .fld-element-settings-footer>.spinner{margin:0 var(--neg-padding) 0 0}body.rtl .fld-element-settings-footer>.spinner{margin:0 0 0 var(--neg-padding)}html.noscroll,html.noscroll body{height:100%;overflow:hidden}.modal.imageeditor{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;--focus-ring:0 0 0 1px hsl(var(--light-focus-hsl)),0 0 0 3px hsla(var(--light-focus-hsl),0.7);background-color:var(--gray-900);color:var(--white);font-weight:500;opacity:0;-webkit-user-select:none;user-select:none}.modal.imageeditor.modal{border-radius:0}.modal.imageeditor.modal .body:after{display:none}.modal.imageeditor .btn:not(.submit):not(.noborder){background-color:var(--gray-600);color:var(--white)}.modal.imageeditor .btn:not(.submit):not(.noborder):hover{background-color:var(--gray-700)}.modal.imageeditor .btn:not(.submit):not(.noborder).active{background-color:var(--gray-800)}.modal.imageeditor .icon:before{content:"";display:inline-block;height:24px;margin-left:-3px;margin-top:-4px;width:24px}.modal.imageeditor .icon.rotate-left:before{background-image:url(../images/image-editor/rotate-left.svg)}.modal.imageeditor .icon.rotate-right:before{background-image:url(../images/image-editor/rotate-right.svg)}.modal.imageeditor .icon.flip-vertical:before{background-image:url(../images/image-editor/flip-vertical.svg)}.modal.imageeditor .icon.flip-horizontal:before{background-image:url(../images/image-editor/flip-horizontal.svg)}.modal.imageeditor .icon.constraint:before{background-image:url(../images/image-editor/unconstrained.svg)}.modal.imageeditor .icon.focal-point:before{background-image:url(../images/image-editor/focal-point.svg)}.modal.imageeditor .body{display:-webkit-flex;display:flex;padding:0}.modal.imageeditor input{color:var(--text-color)}.modal.imageeditor .body .tabs{border-right:1px solid var(--gray-1000)}.modal.imageeditor .body .tabs ul{-webkit-align-items:stretch;align-items:stretch;-webkit-flex-direction:column;flex-direction:column;width:100px}.modal.imageeditor .body .tabs ul li{border-bottom:1px solid var(--gray-1000);cursor:pointer;padding:14px;position:relative;text-align:center}.modal.imageeditor .body .tabs ul li:before{background-color:currentColor;content:"";height:100%;position:absolute;top:0;width:0}body.ltr .modal.imageeditor .body .tabs ul li:before{left:0}body.rtl .modal.imageeditor .body .tabs ul li:before{right:0}.modal.imageeditor .body .tabs ul li.selected{background-color:#151c23}.modal.imageeditor .body .tabs ul li.selected:before{width:2px}.modal.imageeditor .body .tabs ul li i{background-position:top;background-repeat:no-repeat;display:block;height:24px}.modal.imageeditor .body .tabs ul li[data-view=rotate] i{background-image:url(../images/image-editor/rotate-left.svg)}.modal.imageeditor .body .tabs ul li[data-view=crop] i{background-image:url(../images/image-editor/crop.svg)}.modal.imageeditor .body .tabs ul li[data-view=filters] i{background-image:url(../images/image-editor/filters.svg)}.modal.imageeditor .body .tabs ul li:hover{background-color:#1b242c;cursor:pointer}.modal.imageeditor .body .views{overflow:auto;padding:24px}.modal.imageeditor .body .views .btngroup{margin-bottom:24px}.modal.imageeditor .body .views .filters ul{width:100px}.modal.imageeditor .body .views .filters ul li{margin-bottom:14px;margin-right:14px;text-align:center}.modal.imageeditor .body .views .filters ul li:last-child{margin-right:0}.modal.imageeditor .body .views .filters ul li img{border:3px solid transparent;border-radius:4px}.modal.imageeditor .body .views .filters ul li span{display:block}.modal.imageeditor .body .views .filters ul li:hover{cursor:pointer}.modal.imageeditor .body .views .filters ul li.selected img{border-color:var(--white)}.modal.imageeditor .body .image-container{display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;-webkit-flex-grow:1;flex-grow:1;overflow:hidden;position:relative}.modal.imageeditor .body .image-container .image{-webkit-flex-grow:1;flex-grow:1;margin:14px;position:relative;text-align:center}.modal.imageeditor .body .image-container .image canvas{left:0;position:absolute;top:0}.modal.imageeditor .body .image-container .image-tools{text-align:center}.modal.imageeditor .body .image-container .image-tools .straightening{display:block;margin:0 auto;max-width:400px;min-height:3.75rem;overflow:hidden}.modal.imageeditor .footer{background-color:transparent;border-top:1px solid #000;bottom:0;left:0;position:absolute;width:100%}body.has-debug-toolbar .modal.imageeditor .footer{padding-bottom:50px}.modal.imageeditor .body .views .crop fieldset .heading{display:none}.modal.imageeditor .body .views .crop .custom-constraint-spacer{padding:0 var(--xs)}.modal.imageeditor .body .views .crop .constraint-group{grid-gap:var(--xs);display:grid}body.ltr .modal.imageeditor .body .views .crop .custom{padding-left:21px}body.rtl .modal.imageeditor .body .views .crop .custom{padding-right:21px}.modal.imageeditor .body .views .crop .orientation{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center}.modal.imageeditor .body .views .crop .orientation input{-webkit-appearance:none;appearance:none;background-position:50%;background-repeat:no-repeat;cursor:pointer;margin:0 4px}.modal.imageeditor .body .views .crop .orientation input[value=landscape]{background-image:url(../images/image-editor/orientation-landscape-unchecked.svg);height:20px;width:30px}.modal.imageeditor .body .views .crop .orientation input[value=landscape]:checked{background-image:url(../images/image-editor/orientation-landscape-checked.svg)}.modal.imageeditor .body .views .crop .orientation input[value=portrait]{background-image:url(../images/image-editor/orientation-portrait-unchecked.svg);height:30px;width:20px}.modal.imageeditor .body .views .crop .orientation input[value=portrait]:checked{background-image:url(../images/image-editor/orientation-portrait-checked.svg)}.modal.imageeditor.vertical .body .views .crop>.btngroup:first-child{-webkit-justify-content:center;justify-content:center}.modal.imageeditor:not(.vertical) .body .views .crop .constraint.custom{margin-top:var(--xs)}.vertical.imageeditor .body{-webkit-flex-direction:column;flex-direction:column}.vertical.imageeditor .body .image-container{-webkit-flex-basis:30vh;flex-basis:30vh;-webkit-flex-shrink:0;flex-shrink:0}.vertical.imageeditor .body .constraint-group{grid-template-columns:1fr 1fr}.vertical.imageeditor .body .tabs ul{border-bottom:1px solid #000;border-top:1px solid #000;display:-webkit-flex;display:flex;-webkit-flex-direction:row;flex-direction:row;width:100%}.vertical.imageeditor .body .tabs ul li{border:0;border-right:1px solid #000;-webkit-flex-grow:1;flex-grow:1;padding:10px 7px}.vertical.imageeditor .body .tabs ul li:before{height:0;top:unset;top:0;width:100%}.vertical.imageeditor .body .tabs ul li.selected:before{height:2px;width:100%}.vertical.imageeditor .body .views{width:auto}.vertical.imageeditor .body .views .rotate{display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-webkit-justify-content:center;justify-content:center;margin-bottom:-14px}.vertical.imageeditor .body .views .rotate .btngroup{margin:0 7px 14px}.vertical.imageeditor .body .views .filters ul{height:109px;margin:0 -24px -24px;overflow:auto;padding:24px;text-align:center;white-space:nowrap;width:auto}.vertical.imageeditor .body .views .filters ul li{display:inline-block;margin-bottom:0}.slide-rule{padding:10px 0;position:relative}.slide-rule:focus{box-shadow:none}body.reduce-focus-visibility .slide-rule:focus-visible .cursor:after,body:not(.reduce-focus-visibility) .slide-rule:focus .cursor:after{box-shadow:var(--focus-ring)}.slide-rule .cursor:after{content:"";height:3.125rem;left:50%;position:absolute;top:-15px;-webkit-transform:translateX(-50%);-o-transform:translateX(-50%);transform:translateX(-50%);width:1.25rem}.slide-rule .cursor{border-left:.3125rem solid transparent;border-right:.3125rem solid transparent;border-top:.3125rem solid #63a6e1;height:0;left:50%;margin-left:-.25rem;margin-top:4px;position:absolute;width:0;z-index:1}.slide-rule .graduations{height:40px;position:relative;white-space:nowrap}.slide-rule .graduations ul{float:left;position:relative}.slide-rule .graduations ul li{display:inline-block;font-size:8px;position:relative;width:10px}.slide-rule .graduations ul li:not(.main-graduation){left:1px}.slide-rule .graduations ul li.main-graduation:before{border-left-width:3px}.slide-rule .graduations ul li.main-graduation .label{cursor:default;display:block}.slide-rule .graduations ul li.selected:before{border-left-color:#63a6e1}.slide-rule .graduations ul li:before{border-left:1px solid var(--white);content:"";height:10px;left:0;position:absolute;top:0}.slide-rule .graduations ul li .label{display:none;left:-9px;position:absolute;text-align:center;top:10px;width:20px}.slide-rule .value{background:var(--gray-600);bottom:0;box-sizing:border-box;display:none;left:50%;margin-left:-25px;padding:5px;position:absolute;width:50px;z-index:1}.slide-rule .overlay{background-image:-o-linear-gradient(left,var(--gray-900) 0,rgba(31,41,51,0) 15%,rgba(31,41,51,0) 85%,var(--gray-900) 100%);background-image:linear-gradient(to right,var(--gray-900) 0,rgba(31,41,51,0) 15%,rgba(31,41,51,0) 85%,var(--gray-900) 100%);bottom:1px;left:0;position:absolute;right:0;top:0;z-index:2}.menu.dark{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;background-color:var(--gray-600);font-weight:500}.menu.dark ul li a{color:var(--white)!important}.menu.dark ul li a:not(.sel):not(.disabled):hover{background-color:var(--gray-700)}.elements .tableview td.checkbox-cell div.checkbox,.elements .tableview td.checkbox-cell input.checkbox+label,_:-ms-lang(x){top:16px}_:-ms-lang(x),div:empty.checkbox,input.checkbox+label:empty{display:block}.yii-debug-toolbar__title a{display:block!important}.cp-chart{height:100%;margin:0;position:relative}.cp-chart svg{height:100%;width:100%}.cp-chart .axis line,.cp-chart .axis path{fill:none;stroke:var(--hairline-color);shape-rendering:crispEdges}.cp-chart .ticks-axis line,.cp-chart .ticks-axis path{fill:none;stroke:none;shape-rendering:crispEdges}.cp-chart .ticks-axis g.tick text{fill:var(--black);font-size:11px}.cp-chart .axis text{fill:rgba(0,0,0,.6)}.cp-chart .grid-line .tick,.cp-chart .grid-line .tick line{stroke:rgba(0,0,0,.08);stroke-opacity:.7;shape-rendering:crispEdges}.cp-chart .grid-line path{stroke-width:0}.tooltip{background:hsla(0,0%,100%,.9);border-radius:3px;box-shadow:0 1px 5px -1px rgba(31,41,51,.2);padding:7px 10px;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;z-index:1000000} /*# sourceMappingURL=cp.css.map*/ \ No newline at end of file diff --git a/src/web/assets/cp/dist/css/cp.css.map b/src/web/assets/cp/dist/css/cp.css.map index 62a12b217c0..40f319a55b9 100644 --- a/src/web/assets/cp/dist/css/cp.css.map +++ b/src/web/assets/cp/dist/css/cp.css.map @@ -1 +1 @@ -{"version":3,"file":"css/cp.css","mappings":"AAAA,MCGA,YACE,aACA,mBAEA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,oBACA,mBAEA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBAEA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBAEA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,kBAEA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,qBAEA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,mBAEA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,OCpFF,mBACE,8BACA,+BAIA,kCACA,sBAEA,6BAGA,yCACA,oCACA,mCACA,qBACA,uBAGA,sCAGA,wCACA,sDACA,mCAGA,4CACA,2CACA,oCAGA,qCACA,2BACA,mEAGA,oEAEA,kEAEA,kCAIA,iCACA,6BAGA,kCACA,gCACA,+BACA,gCAGA,kCACA,gCACA,2CAGA,yCACA,0BAGA,2BACA,0BACA,iDAEA,qBACA,kBACA,YCpCF,iBACE,4KACA,kCAIA,yCAQA,0CACA,qFAEA,kEACA,0DAEA,4FAEA,8GAEA,oCAIA,gCAGF,CAPE,kCAOF,CAGE,KC+FA,2CDlFA,CAJA,uBCsFA,CD5FF,iBAKA,iBACE,CATA,iBAGF,CAHE,WAaA,mDAIF,6IAIA,6SC+CE,qTDvBA,8DAGF,aAiBE,qBAGF,mBACE,CAGF,0DAKE,uBAKA,CALA,yBAKA,2DAEE,uBAGF,CAHE,0BAGF,oQAEE,sDCkCF,yCACA,sCAEA,oCACA,CAKA,kCAEA,kCACA,CAKA,0BACA,CAVA,aACA,CAGA,oBACA,CD/CE,kBC+CF,iBACA,CARA,oBADA,eACA,CAEA,cAYA,4BAPA,kBATA,iCACA,CACA,mBACA,CAWA,wBACA,iBACA,CANA,qBAMA,aDhCF,6CACE,CAEA,8CAGA,yCACA,CALA,qBACA,CAI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","sources":["webpack:///./css/craft.scss","webpack:///./css/_color-palette.scss","webpack:///./css/_variables.scss","webpack:///./css/_main.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss","webpack:///./css/_cp.scss","webpack:///./css/_preview.scss","webpack:///./css/_fld.scss","webpack:///./css/_image_editor.scss","webpack:///./css/_shame.scss","webpack:///./css/_debug_toolbar.scss","webpack:///./css/charts.scss"],"sourcesContent":[":root{--white: #fff;--black: #000;--gray-050: hsl(212, 60%, 97%);--gray-100: hsl(212, 50%, 93%);--gray-200: hsl(212, 30%, 85%);--gray-300: hsl(211, 13%, 65%);--gray-350: hsl(211, 11%, 59%);--gray-400: hsl(210, 10%, 53%);--gray-500: hsl(211, 12%, 43%);--gray-550: hsl(210, 13%, 40%);--gray-600: hsl(209, 14%, 37%);--gray-700: hsl(209, 18%, 30%);--gray-800: hsl(209, 20%, 25%);--gray-900: hsl(210, 24%, 16%);--gray-1000: hsl(210, 24%, 10%);--blue-050: #e3f8ff;--blue-100: #b3ecff;--blue-200: #81defd;--blue-300: #5ed0fa;--blue-400: #40c3f7;--blue-500: #2bb0ed;--blue-600: #1992d4;--blue-700: #127fbf;--blue-800: #0b69a3;--blue-900: #035388;--cyan-050: #e0fcff;--cyan-100: #bef8fd;--cyan-200: #87eaf2;--cyan-300: #54d1db;--cyan-400: #38bec9;--cyan-500: #2cb1bc;--cyan-600: #14919b;--cyan-700: #0e7c86;--cyan-800: #0a6c74;--cyan-900: #044e54;--pink-050: #ffe3ec;--pink-100: #ffb8d2;--pink-200: #ff8cba;--pink-300: #f364a2;--pink-400: #e8368f;--pink-500: #da127d;--pink-600: #bc0a6f;--pink-700: #a30664;--pink-800: #870557;--pink-900: #620042;--red-050: #ffe3e3;--red-100: #ffbdbd;--red-200: #ff9b9b;--red-300: #f86a6a;--red-400: #ef4e4e;--red-500: #e12d39;--red-600: #cf1124;--red-700: #ab091e;--red-800: #8a041a;--red-900: #610316;--yellow-050: #fffbea;--yellow-100: #fff3c4;--yellow-200: #fce588;--yellow-300: #fadb5f;--yellow-400: #f7c948;--yellow-500: #f0b429;--yellow-600: #de911d;--yellow-700: #cb6e17;--yellow-750: #bd5a14;--yellow-800: #b44d12;--yellow-900: #8d2b0b;--teal-050: #effcf6;--teal-100: #c6f7e2;--teal-200: #8eedc7;--teal-300: #65d6ad;--teal-400: #3ebd93;--teal-500: #27ab83;--teal-550: #20a07b;--teal-600: #199473;--teal-700: #147d64;--teal-800: #0c6b58;--teal-900: #014d40}:root{--bg-color: $grey100;--bg-color-hsl: 212deg, 50%, 93%;--primary-color: var(--red-500);--secondary-color: var(--gray-500);--input-color: hsl(212, 25%, 50%);--text-color: var(--gray-700);--medium-dark-text-color: var(--gray-550);--medium-text-color: var(--gray-550);--light-text-color: var(--gray-500);--link-color: #2563eb;--font-weight-bold: 700;--menu-option-color: var(--text-color);--menu-option-active-color: var(--white);--menu-option-active-background-color: var(--gray-350);--hairline-color: rgba(51, 64, 77, 0.1);--medium-hairline-color: rgba(81, 95, 108, 0.25);--dark-hairline-color: rgba(123, 135, 147, 0.5);--light-focus-color: var(--blue-300);--medium-focus-color: var(--blue-500);--dark-focus-color: #0f74b1;--light-focus-ring: 0 0 0 1px #5ed0fa, 0 0 0 3px rgba(94, 208, 250, 0.7);--medium-focus-ring: 0 0 0 1px #2bb0ed, 0 0 0 3px rgba(43, 176, 237, 0.7);--dark-focus-ring: 0 0 0 1px #0f74b1, 0 0 0 3px rgba(15, 116, 177, 0.7);--light-sel-color: var(--gray-200);--dark-sel-color: var(--gray-600);--error-color: var(--red-600);--warning-color: var(--yellow-800);--success-color: var(--teal-700);--notice-color: var(--blue-800);--enabled-color: var(--teal-550);--pending-color: var(--yellow-700);--disabled-color: var(--red-600);--indicator-border-color: var(--yellow-700);--indicator-icon-color: var(--yellow-750);--small-border-radius: 3px;--medium-border-radius: 4px;--large-border-radius: 5px;--menu-border-radius: var(--medium-border-radius);--checkbox-size: 16px;--radio-size: 16px}@font-face{font-family:\"Craft\";src:url(\"../fonts/Craft.woff\") format(\"woff\"),url(\"../fonts/Craft.ttf\") format(\"truetype\"),url(\"../fonts/Craft.svg#Craft\") format(\"svg\");font-weight:normal;font-style:normal}:root{--ui-control-color: var(--gray-550);--ui-control-hover-color: var(--gray-600);--ui-control-active-color: var(--gray-700);--icon-opacity: 0.8;--light-focus-hsl: 196.1538461538deg, 93.9759036145%, 67.4509803922%;--medium-focus-hsl: 198.8659793814deg, 84.347826087%, 54.9019607843%;--dark-focus-hsl: 202.5925925926deg, 84.375%, 37.6470588235%;--focus-ring: 0 0 0 1px hsl(var(--dark-focus-hsl)), 0 0 0 3px hsla(var(--dark-focus-hsl), 0.8);--inner-focus-ring: inset 0 0 0 1px hsl(var(--dark-focus-hsl)), inset 0 0 0 3px hsla(var(--dark-focus-hsl), 0.7);--touch-target-size: 24px}body,html{box-shadow:var(--light-focus-ring);background-color:var(--gray-100)}html.noscroll,html.noscroll body{overflow:hidden}body{width:100vw;overflow-x:hidden;font-size:0.875rem;line-height:1.42;color:var(--text-color);-webkit-font-smoothing:subpixel-antialiased}body.rtl{direction:rtl}body,input,select,textarea{font-family:system-ui,BlinkMacSystemFont,-apple-system,\"Segoe UI\",\"Roboto\",\"Oxygen\",\"Ubuntu\",\"Cantarell\",\"Fira Sans\",\"Droid Sans\",\"Helvetica Neue\",sans-serif}.first,h1:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child,h6:first-child,p:first-child,blockquote:first-child,hr:first-child,.pane:first-child,.grid:first-child,fieldset:first-child,.field:first-child,.toolbar:first-child,.buttons:first-child,.condition-container:first-child{margin-top:0 !important}.last,h1:last-child,h2:last-child,h3:last-child,h4:last-child,h5:last-child,h6:last-child,p:last-child,blockquote:last-child,.pane:last-child,.grid:last-child,.meta:last-child,fieldset:last-child,.field:last-child,.toolbar:last-child,.buttons:last-child,.condition-container:last-child{margin-bottom:0 !important}.no-scroll{overflow:hidden !important}.draghelper{box-sizing:border-box}img{max-width:100%}body.rtl .ltr .text,body.rtl .ltr table.editable textarea{text-align:left !important;direction:ltr !important}body.ltr .rtl .text,body.ltr .rtl table.editable textarea{text-align:right !important;direction:rtl !important}.icon:before,.menu ul.padded li a.sel:before,.menu .flex.padded.sel:before,.texticon:before,.element:before,#help:before,.secure:before,.insecure:before,.go:after,.required:after,.preview-btn:before,.view-btn:before,[data-icon]:before,[data-icon-after]:after{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity)}.badge-icon{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;box-sizing:border-box;border:1px solid var(--indicator-border-color);border-radius:var(--small-border-radius);color:var(--indicator-icon-color);font-size:9px}.secure:before,.insecure:before{margin-top:-3px;font-size:14px}[data-icon]:before{content:attr(data-icon)}[data-icon-after]:after{content:attr(data-icon-after)}body.rtl [data-icon=list]:before,body.rtl [data-icon-after=list]:after{content:\"listrtl\"}body.rtl [data-icon=structure]:before,body.rtl [data-icon-after=structure]:after{content:\"structurertl\"}.icon.secure:before{content:\"secure\"}.icon.insecure:before{content:\"insecure\"}.icon.add:before{content:\"plus\"}.icon.edit:before{content:\"edit\"}.icon.settings:before{content:\"settings\"}.icon.search:before{content:\"search\"}.icon.expand:before{content:\"expand\"}.icon.collapse:before{content:\"collapse\"}.help:before{content:\"help\";color:var(--pink-400)}body.ltr .preview-btn:before,body.ltr .view-btn:before{margin-right:var(--xs)}body.rtl .preview-btn:before,body.rtl .view-btn:before{margin-left:var(--xs)}.preview-btn:before{margin-top:-2px;content:\"view\"}body.ltr .view-btn:before{content:\"share\"}body.rtl .view-btn:before{content:\"shareleft\"}h1,.h1{margin-bottom:24px;font-size:18px;font-weight:bold;line-height:1.2}h2,.h2{margin:14px 0;font-size:16px;font-weight:bold;line-height:1.2}h3,.h3{margin:14px 0;font-weight:bold;line-height:1.2}h4,.h4{margin:14px 0;font-weight:bold;line-height:1.2;color:var(--medium-text-color)}h5,.h5{margin:14px 0 3px;line-height:1.2;color:var(--medium-text-color)}h6,.h6{margin:14px 0 3px;font-size:11px;line-height:1.2;color:#606d7b;text-transform:uppercase}body.ltr h1[data-icon]:before{margin:-8px 10px 0 0}body.rtl h1[data-icon]:before{margin:-8px 0 0 10px}h2[data-icon]:before{font-size:19px}body.ltr h2[data-icon]:before{margin:-4px 6px 0 0}body.rtl h2[data-icon]:before{margin:-4px 0 0 6px}hr{margin:24px 0;border:none;border-top:1px solid var(--hairline-color);height:0;color:rgba(0,0,0,0)}.pane hr{margin:24px -24px}p{margin:1em 0}h5+p{margin-top:0}sup{vertical-align:super;font-size:smaller}sub{vertical-align:sub;font-size:smaller}body.ltr .indent{margin-left:14px}body.rtl .indent{margin-right:14px}.bullets{list-style-type:square}body.ltr .bullets{padding-left:40px}body.rtl .bullets{padding-right:40px}ol{list-style-type:decimal}body.ltr ol{padding-left:40px}body.rtl ol{padding-right:40px}code,.code,.code input,.code textarea{font-family:\"SFMono-Regular\",Consolas,\"Liberation Mono\",Menlo,Courier,monospace;font-size:.9em !important}code.smalltext,.code.smalltext,.code input.smalltext,.code textarea.smalltext{font-size:.8em !important}pre code{display:block;overflow-x:auto}a{color:var(--link-color);cursor:pointer}body.underline-links a{text-decoration:underline}a:hover{text-decoration:underline}a.sel,li.sel a{cursor:default !important;text-decoration:none}.go:after{font-size:11px;margin-top:-1px;color:var(--link-color);opacity:.9}body.ltr .go:after{padding-left:4px}body.rtl .go:after{padding-right:4px}body.ltr .go:after{content:\"circlerarr\"}body.rtl .go:after{content:\"circlelarr\"}button{cursor:pointer}.context-btn.disabled{opacity:1;color:var(--medium-dark-text-color);background-color:rgba(205,216,228,.5) !important}.checkmark-icon,.alert-icon{padding:5px;margin-bottom:0 !important;line-height:10px;border-radius:20px;cursor:pointer}.checkmark-icon:before,.alert-icon:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity)}.checkmark-icon{background-color:var(--gray-200)}p .checkmark-icon{display:inline-block}.checkmark-icon:before{content:\"check\";color:var(--success-color)}.alert-icon{background-color:var(--gray-200)}.alert-icon:before{content:\"alert\";color:var(--error-color)}.menu.revision-menu{padding:10px 24px}.menu.revision-menu hr{margin:10px -24px}.menu.revision-menu ul li.sel{margin:0 -14px;padding:0 14px;background:var(--gray-050);border-radius:var(--large-border-radius)}.menu.revision-menu ul li.sel .edited-desc{display:flex;align-items:center;border-top:1px solid var(--hairline-color);padding:10px 0;color:var(--light-text-color);white-space:normal}body.ltr .menu.revision-menu ul li.sel .edited-desc{margin-left:10px}body.rtl .menu.revision-menu ul li.sel .edited-desc{margin-right:10px}.menu.revision-menu ul li.sel .edited-desc p{margin:0}body.ltr .menu.revision-menu ul li.sel .edited-desc .btn{margin-left:14px}body.rtl .menu.revision-menu ul li.sel .edited-desc .btn{margin-right:14px}.menu.revision-menu ul li a{padding-top:7px;border-radius:var(--large-border-radius)}.menu.revision-menu .extralight{margin-top:2px}.revision-status-hud{max-width:400px}.revision-status-hud .http-error{border-radius:var(--medium-border-radius);border:1px solid var(--hairline-color);color:var(--light-text-color);background-color:var(--gray-050);padding:7px 14px}.draft-notice{display:flex;align-items:center;align-content:stretch;justify-content:center;gap:var(--s);color:var(--blue-800)}#content-notice .draft-notice{display:inline-flex;justify-content:flex-start}body.ltr .so-notice>.draft-notice{margin:calc(var(--s)*-1) 0 calc(var(--s)*-1) calc(var(--xl)*-1)}body.rtl .so-notice>.draft-notice{margin:calc(var(--s)*-1) calc(var(--xl)*-1) calc(var(--s)*-1) 0}body.ltr .so-notice>.draft-notice{padding:var(--s) 0 var(--s) var(--xl)}body.rtl .so-notice>.draft-notice{padding:var(--s) var(--xl) var(--s) 0}body.ltr .so-notice>.draft-notice{border-bottom-left-radius:var(--large-border-radius)}body.rtl .so-notice>.draft-notice{border-bottom-right-radius:var(--large-border-radius)}body.ltr .so-notice>.draft-notice{background-image:linear-gradient(to bottom right, rgba(25, 146, 212, 0.2), rgba(25, 146, 212, 0) 50%)}body.rtl .so-notice>.draft-notice{background-image:linear-gradient(to left, rgba(25, 146, 212, 0.2), rgba(25, 146, 212, 0))}.draft-notice p{flex:1;margin:0}.draft-notice .draft-icon{position:relative;flex-shrink:0;width:34px;height:34px;display:flex;justify-content:center;align-items:center;border-radius:100%;border:2px solid rgba(11,105,163,.2);box-sizing:border-box;box-shadow:0 1px 1px 1px var(--white)}.draft-notice .draft-icon:before{position:relative;left:1px;color:var(--blue-800) !important;font-size:18px}.draft-notice .draft-icon:after{content:\"\";font-size:0;position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;border-radius:100%;box-shadow:inset 0 2px 0 rgba(3,83,136,.2)}.draft-notice .discard-changes-btn{background-color:rgba(0,0,0,0) !important;color:var(--blue-800) !important;border:2px solid var(--blue-600)}body.ltr .draft-notice .discard-changes-btn{margin-left:var(--xs)}body.rtl .draft-notice .discard-changes-btn{margin-right:var(--xs)}.draft-notice .discard-changes-btn:hover,.draft-notice .discard-changes-btn:focus{border-color:#1682bd}.draft-notice .discard-changes-btn:active{border-color:#1473a6}button.toggle{appearance:none;color:inherit;background:none;border:none;padding:0}.toggle:before,a.fieldtoggle:before{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid currentColor;border-width:0 2px 2px 0;opacity:.8;transition:transform linear 100ms}body.ltr .toggle:before,body.ltr a.fieldtoggle:before{transform:rotate(-45deg)}body.rtl .toggle:before,body.rtl a.fieldtoggle:before{transform:rotate(135deg)}.toggle.expanded:before,a.fieldtoggle.expanded:before,.sidebar nav li.expanded>.toggle:before,.structure li:not(.collapsed)>.row>.toggle:before{transform:rotate(45deg) !important}a.fieldtoggle{display:block;position:relative;margin:14px 0;color:var(--text-color);text-decoration:none}body.ltr a.fieldtoggle{padding-left:12px}body.rtl a.fieldtoggle{padding-right:12px}a.fieldtoggle:before{display:block;position:absolute;top:7px}body.ltr a.fieldtoggle:before{left:-1px}body.rtl a.fieldtoggle:before{right:-1px}em,i{font-style:italic}strong,b,i em{font-weight:bold}.readable{font-size:16px;line-height:22px}.readable h1,.readable .h1,.readable h2,.readable .h2,.readable h3,.readable .h3,.readable h4,.readable .h4,.readable h5,.readable .h5,.readable h6,.readable .h6{margin:24px 0 16px;font-weight:600}.readable h1,.readable .h1{font-size:32px;line-height:40px;color:#000}.readable h2,.readable .h2{font-size:24px;line-height:30px}.readable h3,.readable .h3{font-size:20px;line-height:24px}.readable h4,.readable .h4{font-size:16px;line-height:20px}.readable h5,.readable .h5{font-size:14px;line-height:18px}.readable h6,.readable .h6{font-size:13.6px;line-height:17px;color:#596673}.readable ul,.readable ol{margin:1em 0}body.ltr .readable ul,body.ltr .readable ol{padding-left:2em}body.rtl .readable ul,body.rtl .readable ol{padding-right:2em}.readable ul li{list-style-type:disc}.readable li+li{margin-top:.25em}.readable .tip-dismiss-btn{position:absolute;top:12px}body.ltr .readable .tip-dismiss-btn{right:12px}body.rtl .readable .tip-dismiss-btn{left:12px}.readable .tip-dismiss-btn+p{margin-top:0}.readable blockquote{margin:16px 0}.readable blockquote:not(.note){padding:0 16px;color:#596673}body.ltr .readable blockquote:not(.note){border-left:4px solid rgba(51,64,77,.1)}body.rtl .readable blockquote:not(.note){border-right:4px solid rgba(51,64,77,.1)}.readable blockquote.note{position:relative;border-radius:4px;padding:1em;border:1px solid}body.ltr .readable blockquote.note{padding-left:50px}body.rtl .readable blockquote.note{padding-right:50px}body.ltr .readable blockquote.note.dismissible{padding-right:36px}body.rtl .readable blockquote.note.dismissible{padding-left:36px}.readable blockquote.note:not(.tip):not(.warning){border-color:#cf1124;color:#bf503f}.readable blockquote.note:not(.tip):not(.warning):before{content:\"alert\";color:#cf1124}.readable blockquote.note.tip{border-color:#2563eb;color:#2563eb}.readable blockquote.note.tip:before{content:\"lightbulb\";color:#2563eb}.readable blockquote.note.warning{border-color:#b44d12;color:#cf783a}.readable blockquote.note.warning:before{content:\"alert\";color:#b44d12}.readable blockquote.note:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);opacity:1;position:absolute;top:15px;font-size:24px;width:24px}body.ltr .readable blockquote.note:before{left:16px}body.rtl .readable blockquote.note:before{right:16px}.readable blockquote.note a[href]{color:currentColor;text-decoration:underline}body.ltr .leftalign{text-align:left}body.rtl .leftalign{text-align:right}.topalign{vertical-align:top}body.ltr .rightalign{text-align:right}body.rtl .rightalign{text-align:left}.centeralign{text-align:center !important}.nowrap{white-space:nowrap}.break-word{word-wrap:break-word}.light{color:var(--medium-text-color) !important;font-weight:normal}.extralight{color:var(--light-text-color) !important}.smalltext{font-size:12px;line-height:1.2}.largetext{font-size:16px;line-height:1.2}.zilch{padding:100px 0;text-align:center;font-size:20px;line-height:24px;color:var(--light-text-color)}.zilch.small{padding:24px 0;font-size:16px}input.checkbox+label.smalltext{padding-top:2px}.required:after{content:\"asterisk\";font-size:7px;color:var(--error-color)}body.ltr .required:after{margin:-2px 0 0 5px}body.rtl .required:after{margin:-2px 5px 0 0}.scrollpane{overflow:auto}body.ltr .left{float:left}body.rtl .left{float:right}body.ltr .right{float:right}body.rtl .right{float:left}th,td{vertical-align:middle}body.ltr th,body.ltr td{text-align:left}body.rtl th,body.rtl td{text-align:right}body.ltr table[dir=rtl] th,body.ltr table[dir=rtl] td{text-align:right}body.rtl table[dir=ltr] th,body.rtl table[dir=ltr] td{text-align:left}th.right,td.right{float:none}body.ltr th.right,body.ltr td.right{text-align:right}body.rtl th.right,body.rtl td.right{text-align:left}.clear{display:block;clear:both;height:0}.fullwidth{width:100%}.token{display:inline-block;border-radius:3px;padding:3px 7px;font-size:12px;line-height:14px;color:#3f4d5a;background-color:#e4edf6}.token[data-name=\"*\"]{position:relative;width:10px}.token[data-name=\"*\"] span{opacity:0}.token[data-name=\"*\"]:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);display:block;position:absolute;top:0;left:0;width:100%;font-size:9px;line-height:17px;content:\"asterisk\";text-indent:0}.token:focus{background-color:#cdd8e4}.highlight .token{display:inline;border:none;border-radius:0;padding:0;font-size:inherit;line-height:inherit;text-shadow:none;background:rgba(0,0,0,0);box-shadow:none}.pane.highlight pre[class*=language-]{overflow:visible}.pane.highlight pre[class*=language-]>code.diff-highlight .token:not(.prefix){margin:0 -24px;padding:0 24px}.success{color:var(--success-color) !important}.notice.with-icon:before,.notice .icon:before,.warning.with-icon:before,.warning .icon:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);width:1em}body.ltr .notice.with-icon:before,body.ltr .notice .icon:before,body.ltr .warning.with-icon:before,body.ltr .warning .icon:before{margin:-2px 2px 0 0}body.rtl .notice.with-icon:before,body.rtl .notice .icon:before,body.rtl .warning.with-icon:before,body.rtl .warning .icon:before{margin:-2px 0 0 2px}.notice.has-icon,.warning.has-icon{display:flex;flex-wrap:nowrap;align-items:flex-start}.notice.has-icon .icon,.warning.has-icon .icon{flex-shrink:1}.notice{color:var(--notice-color) !important}.notice a{text-decoration:underline}.notice.with-icon:before,.notice .icon:before{content:\"lightbulb\"}.warning{color:var(--warning-color) !important}.warning.with-icon:before,.warning .icon:before{content:\"alert\"}.error{color:var(--error-color) !important}.icon.move{display:inline-block}.icon.move:not(.disabled){cursor:move}.icon.move:before{content:\"move\";color:var(--ui-control-color)}.icon.move:not(.disabled):hover:before{color:var(--link-color)}.icon.delete{display:inline-block;line-height:inherit}.icon.delete:before{content:\"remove\";color:var(--ui-control-color)}.icon.delete:not(.disabled){cursor:pointer}.icon.delete:not(.disabled):hover:before{color:var(--disabled-color)}.icon.delete:not(.disabled):active:before{color:var(--red-800)}.hidden{display:none !important}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:0;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.invisible{visibility:hidden}.clearafter:after{content:\"\";display:block;height:0;clear:both;visibility:hidden}.info{vertical-align:bottom;display:inline-block;width:1em;height:1.375em;text-align:center;cursor:pointer;overflow:hidden}.info:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);vertical-align:baseline;width:100%;line-height:1.375;color:var(--ui-control-color)}.info:not(.warning):before{content:\"info\"}.info:not(.warning):hover:before{color:var(--link-color)}.info.warning:before{content:\"alert\"}.info.warning:hover:before{color:var(--warning-color)}.info-hud table{max-width:280px;table-layout:auto}.info-hud td{word-wrap:break-word;width:100%}@media(max-width: 450px){.info-hud table{table-layout:fixed;width:100%}}.content{position:relative}.content:after{content:\"\";display:block;height:0;clear:both;visibility:hidden}.customize-sources-modal{overflow:visible !important}body.ltr .customize-sources-modal{padding-left:200px}body.rtl .customize-sources-modal{padding-right:200px}.customize-sources-modal>.cs-sidebar{position:absolute;top:0;margin:0;padding:10px 0;border:none;width:200px;height:calc(100% - 50px);box-sizing:border-box;background-color:var(--gray-050);overflow:auto;box-shadow:inset -1px 0 0 var(--hairline-color)}body.ltr .customize-sources-modal>.cs-sidebar{left:0}body.rtl .customize-sources-modal>.cs-sidebar{right:0}body.ltr .customize-sources-modal>.cs-sidebar{border-top-left-radius:var(--large-border-radius)}body.rtl .customize-sources-modal>.cs-sidebar{border-top-right-radius:var(--large-border-radius)}.customize-sources-modal>.cs-sidebar>.btn{display:block;width:calc(100% - 28px)}body.ltr .customize-sources-modal>.cs-sidebar>.btn{margin:10px 0 0 14px}body.rtl .customize-sources-modal>.cs-sidebar>.btn{margin:10px 14px 0 0}body.ltr .customize-sources-modal.sidebar-hidden{padding-left:0}body.rtl .customize-sources-modal.sidebar-hidden{padding-right:0}.customize-sources-modal.sidebar-hidden>.cs-sidebar{display:none}.customize-sources-modal>.source-settings{position:relative;height:calc(100% - 50px);box-sizing:border-box;padding:24px;overflow:auto}.customize-sources-modal>.footer{position:absolute;bottom:0;left:0;width:100%}.customize-sources-item{--selected-item-color: var(--white);display:flex;width:calc(100% - 1px);box-sizing:border-box;align-items:center;position:relative;margin-top:-1px;background-color:var(--gray-100);border:solid var(--hairline-color);border-width:1px 0;user-select:none;cursor:default}.customize-sources-item+.customize-sources-item.heading{margin-top:10px}.customize-sources-item+.customize-sources-item:not(.heading){border-top:1px solid var(--hairline-color)}.customize-sources-item.sel{--focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)), 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);--ui-control-color: var(--selected-item-color);background-color:var(--dark-sel-color);color:var(--selected-item-color);z-index:1}.customize-sources-item .label{flex:1}.customize-sources-item.heading .label{text-transform:uppercase;color:var(--light-text-color);font-size:12px;font-weight:bold}.customize-sources-item.heading.sel .label{color:var(--selected-item-color)}.customize-sources-item__move{position:absolute;top:50%;transform:translate(-50%, -50%);justify-content:center;align-items:center}body.ltr .customize-sources-item__move{right:0}body.rtl .customize-sources-item__move{left:0}.customize-sources-item__move.icon{display:flex;text-decoration:none}.customize-sources-item__btn{padding:8px 14px;margin:3px}body.ltr .customize-sources-item__btn{padding-right:30px}body.rtl .customize-sources-item__btn{padding-left:30px}body.ltr .customize-sources-table-column .move{margin-right:10px}body.rtl .customize-sources-table-column .move{margin-left:10px}ul.path{display:flex;flex-direction:row;align-items:stretch;flex-wrap:wrap}ul.path li{display:inline-flex;align-items:center}ul.path li:not(:last-child):after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid var(--light-text-color);border-width:0 1px 1px 0;opacity:.8}body.ltr ul.path li:not(:last-child):after{margin:0 5px 0 2px}body.rtl ul.path li:not(:last-child):after{margin:0 2px 0 5px}body.ltr ul.path li:not(:last-child):after{transform:rotate(-45deg)}body.rtl ul.path li:not(:last-child):after{transform:rotate(135deg)}ul.icons{margin-top:20px;display:flex;flex-wrap:wrap}ul.icons li{margin:0 4px 10px 0}ul.icons li a{display:block;position:relative;padding:60px 5px 10px;width:110px;text-align:center;color:var(--text-color);border-radius:4px;border:1px solid var(--white)}ul.icons li a:before{display:block;position:absolute;top:0;left:0;width:100%;font-size:40px;line-height:60px}ul.icons li a .icon img,ul.icons li a .icon svg{width:40px;height:40px;position:absolute;top:12px;left:calc(50% - 20px)}ul.icons li a .icon.icon-mask svg rect,ul.icons li a .icon.icon-mask svg circle,ul.icons li a .icon.icon-mask svg ellipse,ul.icons li a .icon.icon-mask svg line,ul.icons li a .icon.icon-mask svg polyline,ul.icons li a .icon.icon-mask svg polygon,ul.icons li a .icon.icon-mask svg path,ul.icons li a .icon.icon-mask svg text{fill:var(--text-color);stroke-width:0}ul.icons li a:hover{text-decoration:none;background-color:var(--gray-050);border-color:var(--gray-100)}ul.icons li a:hover .icon.icon-mask svg rect,ul.icons li a:hover .icon.icon-mask svg circle,ul.icons li a:hover .icon.icon-mask svg ellipse,ul.icons li a:hover .icon.icon-mask svg line,ul.icons li a:hover .icon.icon-mask svg polyline,ul.icons li a:hover .icon.icon-mask svg polygon,ul.icons li a:hover .icon.icon-mask svg path,ul.icons li a:hover .icon.icon-mask svg text{fill:var(--link-color);stroke-width:0}@media only screen and (max-width: 380px){ul.icons li a{width:96px}}@media only screen and (max-width: 320px){ul.icons li a{width:75px}}.toolbar{position:relative;margin-bottom:14px;min-height:34px}.toolbar.flex,.toolbar .flex{align-items:flex-start}.toolbar .text{border-radius:var(--large-border-radius) !important;box-shadow:none !important}.flex{display:flex;align-items:center;align-content:stretch;gap:var(--s)}.flex:not(.flex-nowrap){flex-wrap:wrap}.flex>*.label{white-space:nowrap}.centeralign .flex{justify-content:center}.inline-flex{display:inline-flex;align-items:center;align-content:stretch;gap:var(--s)}.gap-xs{gap:var(--xs)}.gap-s{gap:var(--s)}.gap-m{gap:var(--m)}.gap-l{gap:var(--l)}.gap-xl{gap:var(--xl)}.flex-grow{flex:1}.flex-justify{justify-content:space-between}.flex-justify-start{justify-content:flex-start}.flex-justify-end{justify-content:flex-end}.flex-justify-center{justify-content:center}.flex-start{align-items:flex-start}.flex-end{align-items:flex-end}.flex-center{align-items:center}.flex-stretch{align-items:stretch}.spacer{width:14px}.buttons{display:flex;gap:7px;position:relative;margin:24px 0;align-items:center}.hud-footer>.buttons,.footer>.buttons{margin:0}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--large-border-radius);padding:7px 14px;border:none;text-align:center;white-space:nowrap;user-select:none;cursor:pointer;box-sizing:border-box;appearance:none;color:currentColor;font-size:inherit;background-color:rgba(96,125,159,.25)}.btn.chromeless{background-color:rgba(0,0,0,0);height:auto;padding:0}.btn.chromeless:hover,.btn.chromeless:active,.btn.chromeless:focus{background-color:rgba(0,0,0,0)}.btn.chromeless:hover,.btn.chromeless:active{text-decoration:underline}.btn.wrap{height:auto;min-height:34px;white-space:initial;text-align:left}.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]):focus,.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]).focus,.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]):hover{background-color:rgba(96,125,159,.3)}.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]):active,.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]).active{background-color:rgba(96,125,159,.4)}.btn[type=color]{padding:6px !important;width:36px}.btn.active,.btn.loading{cursor:default}.btn:hover{text-decoration:none}body.ltr .btn[data-icon]:not(:empty):not(.btn-empty):before,body.ltr .btn.icon:not(:empty):not(.btn-empty):before,body.ltr .btn.menubtn[data-icon]:empty:before,body.ltr .btn.menubtn[data-icon].btn-empty:before,body.ltr .btn.menubtn.icon:empty:before,body.ltr .btn.menubtn.icon.btn-empty:before{margin-right:5px}body.rtl .btn[data-icon]:not(:empty):not(.btn-empty):before,body.rtl .btn.icon:not(:empty):not(.btn-empty):before,body.rtl .btn.menubtn[data-icon]:empty:before,body.rtl .btn.menubtn[data-icon].btn-empty:before,body.rtl .btn.menubtn.icon:empty:before,body.rtl .btn.menubtn.icon.btn-empty:before{margin-left:5px}.btn:not(.loading) .spinner{display:none}.btn.loading:before,.btn.loading:after,.btn.loading .label{visibility:hidden}.btn div.checkbox{margin-top:2px}.disabled{opacity:.25}.disabled,.disabled .btn{cursor:default}.btn,.spinner{height:34px}body.ltr .btn[data-icon-after]:not(:empty):not(.btn-empty):after,body.ltr .menu-toggle:not(:empty):not(.btn-empty):after,body.ltr .menubtn:not(:empty):not(.btn-empty):after,body.ltr .menubtn.icon:after{margin-left:6px}body.rtl .btn[data-icon-after]:not(:empty):not(.btn-empty):after,body.rtl .menu-toggle:not(:empty):not(.btn-empty):after,body.rtl .menubtn:not(:empty):not(.btn-empty):after,body.rtl .menubtn.icon:after{margin-right:6px}.btn[data-icon]:before,.btn[data-icon-after]:after,.btn.icon:before{position:relative}.btn.small[data-icon]:before,.btn.small[data-icon-after]:after,.btn.icon.small:before{font-size:10px}.btngroup{position:relative;z-index:1;display:flex;white-space:nowrap;align-items:center;border-radius:var(--large-border-radius)}.btngroup.fullwidth .btn{flex:1}.btngroup.disabled .btn{cursor:default}.btngroup .btn:focus{z-index:1}body.ltr .btngroup .btn:not(.dashed):not(:last-child):not(.btngroup-btn-last){margin-right:1px}body.rtl .btngroup .btn:not(.dashed):not(:last-child):not(.btngroup-btn-last){margin-left:1px}body.ltr .btngroup .btn:not(:first-child):not(.btngroup-btn-first){border-top-left-radius:0;border-bottom-left-radius:0}body.ltr .btngroup .btn:not(:last-child):not(.btngroup-btn-last){border-top-right-radius:0;border-bottom-right-radius:0}body.rtl .btngroup .btn:not(:first-child):not(.btngroup-btn-first){border-top-right-radius:0;border-bottom-right-radius:0}body.rtl .btngroup .btn:not(:last-child):not(.btngroup-btn-last){border-top-left-radius:0;border-bottom-left-radius:0}.btngroup--exclusive .btn[aria-pressed=true]:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]){background-color:var(--gray-500);color:var(--white)}.copytext{position:relative;z-index:1;display:flex;white-space:nowrap;align-items:center}body.ltr .copytext .text{border-top-right-radius:0;border-bottom-right-radius:0;min-width:0}body.ltr .copytext .btn{border-top-left-radius:0;border-bottom-left-radius:0}body.rtl .copytext .text{border-top-left-radius:0;border-bottom-left-radius:0}body.rtl .copytext .btn{border-top-right-radius:0;border-bottom-right-radius:0}.copytextbtn{display:inline-flex;flex-wrap:nowrap;align-items:center;border:1px solid var(--hairline-color);border-radius:var(--small-border-radius);padding:0 9px;cursor:pointer;color:var(--medium-text-color)}.copytextbtn input{border:0;padding:0;height:32px;box-shadow:none;background-color:rgba(0,0,0,0);border:none;cursor:pointer;color:var(--medium-text-color);text-align:center}.copytextbtn span{padding:0;width:13px;background:none;margin-top:-3px;color:var(--light-text-color)}body.ltr .copytextbtn span{margin-left:5px}body.rtl .copytextbtn span{margin-right:5px}.copytextbtn:hover,.copytextbtn:focus{border-color:var(--medium-hairline-color);color:var(--text-color)}.copytextbtn:hover input,.copytextbtn:focus input{color:var(--text-color)}.copytextbtn.small{padding:0 5px}.copytextbtn.small input{font-size:11px !important;height:20px}.menu-toggle,.menubtn{display:inline-flex;align-items:center;user-select:none}.menu-toggle:after,.menubtn:after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid currentColor;border-width:0 2px 2px 0;opacity:.8;transform:rotate(45deg);position:relative}.menu-toggle.btn:after,.menubtn.btn:after{top:-1px}.menu-toggle.btn:not(.disabled):not(.inactive):active:after,.menu-toggle.btn:not(.disabled):not(.inactive).active:after,.menubtn.btn:not(.disabled):not(.inactive):active:after,.menubtn.btn:not(.disabled):not(.inactive).active:after{border-color:var(--ui-control-active-color)}.menu-toggle.btn.submit:after,.menubtn.btn.submit:after{border-color:var(--white) !important;opacity:.8}.menu-toggle.btn.submit:not(.disabled):not(.inactive):hover:after,.menu-toggle.btn.submit:not(.disabled):not(.inactive).hover:after,.menu-toggle.btn.submit:not(.disabled):not(.inactive):active:after,.menu-toggle.btn.submit:not(.disabled):not(.inactive).active:after,.menubtn.btn.submit:not(.disabled):not(.inactive):hover:after,.menubtn.btn.submit:not(.disabled):not(.inactive).hover:after,.menubtn.btn.submit:not(.disabled):not(.inactive):active:after,.menubtn.btn.submit:not(.disabled):not(.inactive).active:after{opacity:1}.menu-toggle:not(.btn):not(.icon),.menubtn:not(.btn):not(.icon){height:17px}.menu-toggle:not(.btn):not(.icon):after,.menubtn:not(.btn):not(.icon):after{top:-2px;border-color:var(--link-color)}body.ltr .menu-toggle:empty,body.ltr .menu-toggle.btn-empty,body.ltr .menubtn:empty,body.ltr .menubtn.btn-empty{padding-left:8px}body.rtl .menu-toggle:empty,body.rtl .menu-toggle.btn-empty,body.rtl .menubtn:empty,body.rtl .menubtn.btn-empty{padding-right:8px}body.ltr .menu-toggle:empty,body.ltr .menu-toggle.btn-empty,body.ltr .menubtn:empty,body.ltr .menubtn.btn-empty{padding-right:8px}body.rtl .menu-toggle:empty,body.rtl .menu-toggle.btn-empty,body.rtl .menubtn:empty,body.rtl .menubtn.btn-empty{padding-left:8px}@keyframes rotator{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.spinner{display:inline-flex;align-items:center;justify-content:center;width:var(--size, 24px);height:var(--size, 34px)}.spinner:before{display:block;content:\"\";font-size:0;animation:rotator .7s linear infinite;box-sizing:border-box;width:var(--size, 20px);height:var(--size, 20px);object-fit:scale-down;border-radius:50%;border:2px solid rgba(0,0,0,0);border-right-color:currentColor;border-bottom-color:currentColor;opacity:.8}.spinner.small{--size: 12px}.spinner.big{--size: 48px}.spinner.spinner-absolute{position:absolute;width:var(--size, 20px);height:var(--size, 20px);top:calc(50% - var(--size, 20px)/2);left:calc(50% - var(--size, 20px)/2)}body.ltr .btn+.spinner{margin-left:7px}body.rtl .btn+.spinner{margin-right:7px}body.ltr .buttons .btn+.spinner,body.ltr .buttons .btngroup+.spinner{margin-left:0}body.rtl .buttons .btn+.spinner,body.rtl .buttons .btngroup+.spinner{margin-right:0}body.ltr .buttons.right .btn+.spinner{margin-right:var(--neg-padding)}body.rtl .buttons.right .btn+.spinner{margin-left:var(--neg-padding)}.btngroup.small .btn,.btn.small{padding:0 7px !important;font-size:12px;line-height:22px}.btngroup.small,.btngroup.small input.btn,.btn.small,.btn.small+.spinner{height:22px}.btngroup.big .btn,.btn.big{padding:0 14px;font-size:14px;line-height:36px}body.ltr .btn.big[data-icon]:before,body.ltr .preview-btn:before,body.ltr .view-btn:before{margin-left:-2px}body.rtl .btn.big[data-icon]:before,body.rtl .preview-btn:before,body.rtl .view-btn:before{margin-right:-2px}.btngroup.big,.btngroup.big input.btn,.btn.big,.btn.big+.spinner{height:36px}.btn.submit,.btn.secondary{color:var(--white) !important;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-weight:500}.btn.submit{background-color:var(--primary-color) !important}.btn.submit:not(.disabled):not(.inactive):not(.loading):hover,.btn.submit:not(.disabled):not(.inactive):not(.loading).hover,.btn.submit:not(.disabled):not(.inactive):not(.loading):focus{background-color:#d61f2b !important}.btn.submit:not(.disabled):not(.inactive):not(.loading):active,.btn.submit:not(.disabled):not(.inactive):not(.loading).active{background-color:#c01b26 !important}.btn.caution{background-color:var(--red-050) !important;color:var(--error-color)}.btn.caution:hover,.btn.caution.hover,.btn.caution:focus{background-color:#ffcaca !important}.btn.caution:active,.btn.caution.active{background-color:var(--red-100) !important}.secondary-buttons .btn.submit,.btn.secondary{background-color:var(--secondary-color) !important}.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading):hover,.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading).hover,.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading):focus,.btn.secondary:not(.disabled):not(.inactive):not(.loading):hover,.btn.secondary:not(.disabled):not(.inactive):not(.loading).hover,.btn.secondary:not(.disabled):not(.inactive):not(.loading):focus{background-color:#55616d !important}.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading):active,.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading).active,.btn.secondary:not(.disabled):not(.inactive):not(.loading):active,.btn.secondary:not(.disabled):not(.inactive):not(.loading).active{background-color:#4a545e !important}div.btn.submit{position:relative;overflow:hidden}div.btn.submit input{position:absolute;left:100%}.btn.dashed{border:1px dashed var(--medium-hairline-color);background-color:rgba(0,0,0,0)}body.ltr .btngroup .btn.dashed:not(:last-child):not(.btngroup-btn-last){border-right:1px solid rgba(0,0,0,0)}body.rtl .btngroup .btn.dashed:not(:last-child):not(.btngroup-btn-last){border-left:1px solid rgba(0,0,0,0)}body.ltr .btngroup .btn.dashed:not(:last-child):not(.btngroup-btn-last){margin-right:-1px}body.rtl .btngroup .btn.dashed:not(:last-child):not(.btngroup-btn-last){margin-left:-1px}.btn.dashed:focus{background-color:rgba(205,216,228,.1);border-color:rgba(0,0,0,0)}.reduce-focus-visibility .btn.dashed:focus:not(:focus-visible){border:1px dashed var(--medium-hairline-color)}.btn.dashed:not(.disabled):active,.btn.dashed:not(.disabled).active{background-color:rgba(205,216,228,.25)}.color-input-container{position:relative}.color-input-container .color-hex-indicator{position:absolute;top:0;width:1em;line-height:34px;text-align:center;user-select:none}body.ltr .color-input-container .color-hex-indicator{left:7px}body.rtl .color-input-container .color-hex-indicator{right:7px}.color-input{font-family:\"SFMono-Regular\",Consolas,\"Liberation Mono\",Menlo,Courier,monospace;font-size:.9em !important}body.ltr .color-input{padding-left:calc(7px + 1em)}body.rtl .color-input{padding-right:calc(7px + 1em)}.color{display:inline-block;position:relative;vertical-align:middle;width:34px;height:34px;border-radius:17px;padding:0}.color:not(.static){cursor:pointer}.color:not(.small){background-image:linear-gradient(45deg, var(--gray-100) 25%, transparent 25%),linear-gradient(135deg, var(--gray-100) 25%, transparent 25%),linear-gradient(45deg, transparent 75%, var(--gray-100) 75%),linear-gradient(135deg, transparent 75%, var(--gray-100) 75%);background-size:17px 17px;background-position:0 0,8.5px 0,8.5px -8.5px,0 8.5px}.color.small{width:16px;height:16px;background-image:linear-gradient(45deg, var(--gray-100) 25%, transparent 25%),linear-gradient(135deg, var(--gray-100) 25%, transparent 25%),linear-gradient(45deg, transparent 75%, var(--gray-100) 75%),linear-gradient(135deg, transparent 75%, var(--gray-100) 75%);background-size:8px 8px;background-position:0 0,4px 0,4px -4px,0 4px}.color .color-preview{position:absolute;top:0;width:100%;height:100%;border-radius:17px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}body.ltr .color .color-preview{left:0}body.rtl .color .color-preview{right:0}.color .color-preview:focus-within{box-shadow:var(--focus-ring)}.color .color-preview>.color-preview-input{position:absolute;width:100%;height:100%;margin:0;padding:0;border:none;opacity:0}body.ltr .color .color-preview>.color-preview-input{left:0}body.rtl .color .color-preview>.color-preview-input{right:0}.colorhex{display:inline-block;margin-left:5px;vertical-align:middle;color:var(--medium-text-color)}.lightswitch-outer-container{display:flex}.lightswitch-outer-container .lightswitch-inner-container{border:1px solid var(--hairline-color);border-radius:var(--small-border-radius);display:flex;align-items:center}.lightswitch-outer-container .lightswitch-inner-container span{padding:7px 0;color:var(--medium-text-color);cursor:default}body.ltr .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=on]{padding-right:10px}body.rtl .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=on]{padding-left:10px}body.ltr .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=on]{margin-left:7px}body.rtl .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=on]{margin-right:7px}body.ltr .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=off]{padding-left:10px}body.rtl .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=off]{padding-right:10px}body.ltr .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=off]{margin-right:7px}body.rtl .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=off]{margin-left:7px}.lightswitch{display:block;position:relative;border:none !important;overflow:hidden;cursor:pointer;user-select:none;background-image:linear-gradient(to right, var(--gray-400), var(--gray-400));transition:background-image linear 100ms}.lightswitch.on{background-image:linear-gradient(to right, var(--enabled-color), var(--enabled-color))}.lightswitch.indeterminate{background-image:linear-gradient(to right, var(--enabled-color), var(--gray-300))}.lightswitch .lightswitch-container{position:relative;height:100%}.lightswitch .lightswitch-container .handle{position:absolute;top:1px;background-color:var(--white)}.lightswitch:not(.small){border-radius:11px;width:34px;height:22px}.lightswitch:not(.small) .lightswitch-container{width:46px}body.ltr .lightswitch:not(.small) .lightswitch-container{margin-left:-12px}body.rtl .lightswitch:not(.small) .lightswitch-container{margin-right:-12px}.lightswitch:not(.small) .lightswitch-container .handle{border-radius:10px;width:20px;height:20px;left:calc(50% - 10px)}.lightswitch.small{border-radius:9px;width:28px;height:18px}.lightswitch.small .lightswitch-container{width:38px}body.ltr .lightswitch.small .lightswitch-container{margin-left:-10px}body.rtl .lightswitch.small .lightswitch-container{margin-right:-10px}.lightswitch.small .lightswitch-container .handle{border-radius:8px;width:16px;height:16px;left:calc(50% - 8px)}table .lightswitch{display:inline-block;margin-bottom:-5px}body.ltr .lightswitch.on .lightswitch-container{margin-left:0}body.rtl .lightswitch.on .lightswitch-container{margin-right:0}body.ltr .lightswitch.indeterminate:not(.small) .lightswitch-container{margin-left:-6px}body.rtl .lightswitch.indeterminate:not(.small) .lightswitch-container{margin-right:-6px}body.ltr .lightswitch.indeterminate.small .lightswitch-container{margin-left:-5px}body.rtl .lightswitch.indeterminate.small .lightswitch-container{margin-right:-5px}table.data+.pagination{margin-top:24px}.pagination .page-link{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--medium-border-radius)}.pagination .page-link:after{position:relative;transition:border-color linear 100ms}.pagination .page-link.prev-page:after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid var(--light-text-color);border-width:0 2px 2px 0;opacity:.8}body.ltr .pagination .page-link.prev-page:after{transform:rotate(135deg)}body.rtl .pagination .page-link.prev-page:after{transform:rotate(-45deg)}body.ltr .pagination .page-link.prev-page:after{right:-1px}body.rtl .pagination .page-link.prev-page:after{left:-1px}.pagination .page-link.next-page:after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid var(--light-text-color);border-width:0 2px 2px 0;opacity:.8}body.ltr .pagination .page-link.next-page:after{transform:rotate(-45deg)}body.rtl .pagination .page-link.next-page:after{transform:rotate(135deg)}body.ltr .pagination .page-link.next-page:after{left:-1px}body.rtl .pagination .page-link.next-page:after{right:-1px}.pagination .page-link:not(.disabled){transition:box-shadow linear 100ms;box-shadow:inset 0 0 0 1px var(--hairline-color);cursor:pointer}.pagination .page-link:not(.disabled):hover{text-decoration:none;box-shadow:inset 0 0 0 1px var(--link-color)}.pagination .page-link:not(.disabled):hover:after{border-color:var(--link-color)}body:not(.reduce-focus-visibility) .pagination .page-link:not(.disabled):focus,body.reduce-focus-visibility .pagination .page-link:not(.disabled):focus-visible{box-shadow:inset 0 0 0 1px var(--hairline-color),var(--focus-ring)}.pagination .page-link.disabled{opacity:1}.pagination .page-link.disabled:after{border-color:var(--hairline-color)}body.ltr .actions{float:right}body.rtl .actions{float:left}body.ltr .actions>li{float:left}body.rtl .actions>li{float:right}body.ltr .actions>li+li{margin-left:10px}body.rtl .actions>li+li{margin-right:10px}h1+.actions{margin-top:-100px}h2+.actions{margin-top:-54px}.tablepane{margin:-24px -24px -12px;overflow-x:auto}body.ltr .tablepane table.data th:first-child,body.ltr .tablepane table.data td:first-child{padding-left:24px}body.rtl .tablepane table.data th:first-child,body.rtl .tablepane table.data td:first-child{padding-right:24px}body.ltr .tablepane table.data th:last-child,body.ltr .tablepane table.data td:last-child{padding-right:24px}body.rtl .tablepane table.data th:last-child,body.rtl .tablepane table.data td:last-child{padding-left:24px}table.fixed-layout{table-layout:fixed}table th.thin,table td.thin{width:.01% !important;white-space:nowrap}table thead th{font-weight:bold;vertical-align:top}body.ltr table thead th{text-align:left}body.rtl table thead th{text-align:right}table:not(.data) th,table:not(.data) td{padding-top:7px;padding-bottom:7px}table:not(.data) th:not(:first-child),table:not(.data) td:not(:first-child){padding-left:12px}table:not(.data) th:not(:last-child),table:not(.data) td:not(:last-child){padding-right:12px}table.data th,table.data td{position:relative;padding-left:12px;padding-right:12px;box-sizing:border-box}table.data th.checkbox-cell,table.data td.checkbox-cell{width:var(--checkbox-size) !important;min-width:var(--checkbox-size);box-sizing:content-box;position:relative}table.data th.checkbox-cell input.checkbox+label,table.data th.checkbox-cell div.checkbox,table.data td.checkbox-cell input.checkbox+label,table.data td.checkbox-cell div.checkbox{position:absolute;top:calc(50% - 8px)}table.data th{font-weight:bold}body.ltr table.data thead:first-child tr:first-child th:first-child,body.ltr table.data thead:first-child tr:first-child td:first-child,body.ltr table.data tbody:first-child tr:first-child th:first-child,body.ltr table.data tbody:first-child tr:first-child td:first-child,body.ltr table.data tfoot:first-child tr:first-child th:first-child,body.ltr table.data tfoot:first-child tr:first-child td:first-child,body.ltr table.data caption+thead tr:first-child th:first-child,body.ltr table.data caption+thead tr:first-child td:first-child,body.ltr table.data caption+tbody tr:first-child th:first-child,body.ltr table.data caption+tbody tr:first-child td:first-child,body.ltr table.data caption+tfoot tr:first-child th:first-child,body.ltr table.data caption+tfoot tr:first-child td:first-child{border-top-left-radius:var(--large-border-radius)}body.rtl table.data thead:first-child tr:first-child th:first-child,body.rtl table.data thead:first-child tr:first-child td:first-child,body.rtl table.data tbody:first-child tr:first-child th:first-child,body.rtl table.data tbody:first-child tr:first-child td:first-child,body.rtl table.data tfoot:first-child tr:first-child th:first-child,body.rtl table.data tfoot:first-child tr:first-child td:first-child,body.rtl table.data caption+thead tr:first-child th:first-child,body.rtl table.data caption+thead tr:first-child td:first-child,body.rtl table.data caption+tbody tr:first-child th:first-child,body.rtl table.data caption+tbody tr:first-child td:first-child,body.rtl table.data caption+tfoot tr:first-child th:first-child,body.rtl table.data caption+tfoot tr:first-child td:first-child{border-top-right-radius:var(--large-border-radius)}body.ltr table.data thead:first-child tr:first-child th:last-child,body.ltr table.data thead:first-child tr:first-child td:last-child,body.ltr table.data tbody:first-child tr:first-child th:last-child,body.ltr table.data tbody:first-child tr:first-child td:last-child,body.ltr table.data tfoot:first-child tr:first-child th:last-child,body.ltr table.data tfoot:first-child tr:first-child td:last-child,body.ltr table.data caption+thead tr:first-child th:last-child,body.ltr table.data caption+thead tr:first-child td:last-child,body.ltr table.data caption+tbody tr:first-child th:last-child,body.ltr table.data caption+tbody tr:first-child td:last-child,body.ltr table.data caption+tfoot tr:first-child th:last-child,body.ltr table.data caption+tfoot tr:first-child td:last-child{border-top-right-radius:var(--large-border-radius)}body.rtl table.data thead:first-child tr:first-child th:last-child,body.rtl table.data thead:first-child tr:first-child td:last-child,body.rtl table.data tbody:first-child tr:first-child th:last-child,body.rtl table.data tbody:first-child tr:first-child td:last-child,body.rtl table.data tfoot:first-child tr:first-child th:last-child,body.rtl table.data tfoot:first-child tr:first-child td:last-child,body.rtl table.data caption+thead tr:first-child th:last-child,body.rtl table.data caption+thead tr:first-child td:last-child,body.rtl table.data caption+tbody tr:first-child th:last-child,body.rtl table.data caption+tbody tr:first-child td:last-child,body.rtl table.data caption+tfoot tr:first-child th:last-child,body.rtl table.data caption+tfoot tr:first-child td:last-child{border-top-left-radius:var(--large-border-radius)}table.data thead th,table.data thead td{width:auto;background-color:var(--gray-050);cursor:default}table.data thead th:not(.orderable),table.data thead td{padding-top:15px;padding-bottom:15px}table.data thead th{white-space:nowrap;vertical-align:middle}table.data thead th.orderable{position:relative;padding-left:0;padding-right:0}table.data thead th.orderable:not(.ordered):hover{background-color:var(--gray-100)}table.data thead th.orderable.ordered{background-color:var(--light-sel-color)}table.data thead th.orderable.ordered:not(.loading) button:after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid currentColor;border-width:0 2px 2px 0;opacity:.8;transform:rotate(225deg);position:absolute;top:calc(50% - 3px)}body.ltr table.data thead th.orderable.ordered:not(.loading) button:after{right:10px}body.rtl table.data thead th.orderable.ordered:not(.loading) button:after{left:10px}table.data thead th.orderable.ordered:not(.loading).desc button:after{transform:rotate(45deg)}table.data thead th.orderable button{position:relative;font:inherit;width:100%;padding:14px}body.ltr table.data thead th.orderable button{padding-right:26px}body.rtl table.data thead th.orderable button{padding-left:26px}body.ltr table.data thead th.orderable button{text-align:left}body.rtl table.data thead th.orderable button{text-align:right}table.data thead th.orderable button:focus{z-index:1}table.data thead th:not(.loading) .spinner{display:none}table.data thead th .spinner{position:absolute;top:calc(50% - 6px);--size: 12px}body.ltr table.data thead th .spinner{right:8px}body.rtl table.data thead th .spinner{left:8px}table.data tbody tr:not(.disabled):hover th,table.data tbody tr:not(.disabled):hover td{background-color:var(--gray-050)}table.data tbody tr:not(.disabled):focus{position:relative;z-index:1}table.data tbody tr:not(.disabled).sel th,table.data tbody tr:not(.disabled).sel td{background-color:var(--light-sel-color)}table.data tbody th,table.data tbody td{padding-top:7px;padding-bottom:7px;background-clip:padding-box}table.data tbody td.timestamp{vertical-align:bottom;white-space:nowrap;color:var(--light-text-color)}body.ltr table.data tbody td.timestamp{text-align:right}body.rtl table.data tbody td.timestamp{text-align:left}table.data thead+tbody tr th,table.data thead+tbody tr td,table.data tr+tr th,table.data tr+tr td{border-top:1px solid rgba(0,0,0,0)}table.collapsed{width:auto}table.collapsed,table.collapsed tbody,table.collapsed tbody tr,table.collapsed tbody th,table.collapsed tbody td{display:block;border:none;padding:0;width:auto !important;white-space:normal}body.ltr table.collapsed,body.ltr table.collapsed tbody,body.ltr table.collapsed tbody tr,body.ltr table.collapsed tbody th,body.ltr table.collapsed tbody td{text-align:left}body.rtl table.collapsed,body.rtl table.collapsed tbody,body.rtl table.collapsed tbody tr,body.rtl table.collapsed tbody th,body.rtl table.collapsed tbody td{text-align:right}table.collapsed thead{display:none}table.collapsed tbody tr{padding:6px 0;border-bottom:1px dotted var(--hairline-color)}table.collapsed tbody tr:after{content:\"\";display:block;height:0;clear:both;visibility:hidden}table.collapsed tbody th,table.collapsed tbody td{padding:2px 0 !important}table.collapsed tbody td:empty{display:none}body.ltr table.collapsed tbody [data-title]{margin-right:0}body.rtl table.collapsed tbody [data-title]{margin-left:0}table.collapsed tbody [data-title]:before{margin-right:5px;content:attr(data-title) \":\";font-weight:bold}table.collapsed tbody [data-title] form{display:inline-block}.datatablesorthelper,.editabletablesorthelper,.thumbviewhelper{background-color:var(--white);box-shadow:0 1px 5px -1px rgba(31,41,51,.2)}.datatablesorthelper,.datatablesorthelper .element,.datatablesorthelper a{cursor:move !important}.datatablesorthelper tr:first-child th,.datatablesorthelper tr:first-child td{border-top:none !important}.datatablesorthelper tr:last-child th,.datatablesorthelper tr:last-child td{border-bottom:none !important}.element{position:relative;cursor:default;user-select:none;font-weight:normal;border-radius:var(--small-border-radius)}.element:focus,li:focus .element{background-color:var(--gray-050)}.element.sel,li.sel .element{background-color:var(--light-sel-color) !important;cursor:default}.element.sel:focus,li.sel .element:focus{background-color:#bdcbdb !important}.element.sel.hasthumb .elementthumb img,li.sel .element.hasthumb .elementthumb img{box-shadow:0 0 0 1px rgba(81,95,108,.1),0 6px 4px -4px rgba(81,95,108,.2)}.element.hasthumb .elementthumb:not(:empty){position:absolute;display:flex;justify-content:center;-ms-flex-pack:center;align-items:center;-ms-flex-align:center}.element.hasthumb .elementthumb:not(:empty) img{display:block;flex-shrink:0;pointer-events:none;border-radius:var(--small-border-radius);max-width:100%;max-height:100%}.element.hasthumb .elementthumb:not(:empty).rounded img{border-radius:50%}.element.hasthumb .elementthumb.open-preview{cursor:pointer}.element.error [data-icon=alert]{margin-left:var(--xs)}.element .label{display:inline-block}.element .label .draft-label{display:inline-block;padding:1px 5px;font-weight:normal;text-decoration:none !important;color:var(--medium-text-color);background:var(--gray-100);border-radius:var(--large-border-radius)}body.ltr .element .label .draft-label{margin:-1px 0 -1px 7px}body.rtl .element .label .draft-label{margin:-1px 7px -1px 0}.element.small,.element.large:not(.hasthumb){display:inline-block;padding:7px;box-sizing:border-box}body.ltr .element.small.hasstatus,body.ltr .element.large:not(.hasthumb).hasstatus{padding-left:22px}body.rtl .element.small.hasstatus,body.rtl .element.large:not(.hasthumb).hasstatus{padding-right:22px}.element.small.hasstatus .status,.element.large:not(.hasthumb).hasstatus .status{position:absolute;top:calc(50% - 5px)}body.ltr .element.small.hasstatus .status,body.ltr .element.large:not(.hasthumb).hasstatus .status{left:7px}body.rtl .element.small.hasstatus .status,body.rtl .element.large:not(.hasthumb).hasstatus .status{right:7px}.element.small.hasstatus .icon:not(.delete),.element.large:not(.hasthumb).hasstatus .icon:not(.delete){position:absolute;top:calc(50% - 11px)}body.ltr .element.small.hasstatus .icon:not(.delete),body.ltr .element.large:not(.hasthumb).hasstatus .icon:not(.delete){left:6px}body.rtl .element.small.hasstatus .icon:not(.delete),body.rtl .element.large:not(.hasthumb).hasstatus .icon:not(.delete){right:6px}body.ltr .element.small.hasthumb,body.ltr .element.large:not(.hasthumb).hasthumb{padding-left:39px}body.rtl .element.small.hasthumb,body.rtl .element.large:not(.hasthumb).hasthumb{padding-right:39px}.element.small.hasthumb .elementthumb:not(:empty),.element.large:not(.hasthumb).hasthumb .elementthumb:not(:empty){top:calc(50% - 17px);width:34px;height:34px}body.ltr .element.small.hasthumb .elementthumb:not(:empty),body.ltr .element.large:not(.hasthumb).hasthumb .elementthumb:not(:empty){left:0}body.rtl .element.small.hasthumb .elementthumb:not(:empty),body.rtl .element.large:not(.hasthumb).hasthumb .elementthumb:not(:empty){right:0}.element.small.hasthumb .elementthumb:not(:empty).checkered img,.element.large:not(.hasthumb).hasthumb .elementthumb:not(:empty).checkered img{background-image:linear-gradient(45deg, var(--gray-100) 25%, transparent 25%),linear-gradient(135deg, var(--gray-100) 25%, transparent 25%),linear-gradient(45deg, transparent 75%, var(--gray-100) 75%),linear-gradient(135deg, transparent 75%, var(--gray-100) 75%);background-size:8px 8px;background-position:0 0,4px 0,4px -4px,0 4px}body.ltr .element.small.hasthumb.hasstatus,body.ltr .element.large:not(.hasthumb).hasthumb.hasstatus{padding-left:54px}body.rtl .element.small.hasthumb.hasstatus,body.rtl .element.large:not(.hasthumb).hasthumb.hasstatus{padding-right:54px}body.ltr .element.small.hasthumb.hasstatus .status,body.ltr .element.large:not(.hasthumb).hasthumb.hasstatus .status{left:39px}body.rtl .element.small.hasthumb.hasstatus .status,body.rtl .element.large:not(.hasthumb).hasthumb.hasstatus .status{right:39px}.element.large.hasthumb{display:block;padding:132px 7px 7px;width:134px;box-sizing:border-box}body.ltr .element.large.hasthumb.hasstatus{padding-left:22px}body.rtl .element.large.hasthumb.hasstatus{padding-right:22px}.element.large.hasthumb.hasstatus .status{position:absolute;top:138px}body.ltr .element.large.hasthumb.hasstatus .status{left:7px}body.rtl .element.large.hasthumb.hasstatus .status{right:7px}.element.large.hasthumb .elementthumb:not(:empty){top:7px;width:120px;height:120px}body.ltr .element.large.hasthumb .elementthumb:not(:empty){left:0}body.rtl .element.large.hasthumb .elementthumb:not(:empty){right:0}.element.large.hasthumb .elementthumb:not(:empty).checkered img{background-image:linear-gradient(45deg, var(--gray-100) 25%, transparent 25%),linear-gradient(135deg, var(--gray-100) 25%, transparent 25%),linear-gradient(45deg, transparent 75%, var(--gray-100) 75%),linear-gradient(135deg, transparent 75%, var(--gray-100) 75%);background-size:15px 15px;background-position:0 0,7.5px 0,7.5px -7.5px,0 7.5px}.element.large.hasthumb .label{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;word-wrap:normal}body.ltr .element.removable .label{padding-right:20px}body.rtl .element.removable .label{padding-left:20px}.element.removable .delete:before{color:var(--ui-control-color)}.element.removable.small .delete,.element.removable.large:not(.hasthumb) .delete{position:absolute;top:calc(50% - 11px)}body.ltr .element.removable.small .delete,body.ltr .element.removable.large:not(.hasthumb) .delete{right:7px}body.rtl .element.removable.small .delete,body.rtl .element.removable.large:not(.hasthumb) .delete{left:7px}.element.removable.large.hasthumb .delete{position:absolute}body.ltr .element.removable.large.hasthumb .delete{right:7px}body.rtl .element.removable.large.hasthumb .delete{left:7px}.element:not(.removable) .delete{display:none}.elements{position:relative}.elements:not(.busy) .update-spinner{display:none}.elements.busy{min-height:200px}.elements.busy:after{display:block;content:\"\";font-size:0;position:absolute;top:0;left:-24px;width:calc(100% + 48px);height:100%;background:rgba(255,255,255,.75);border-radius:var(--large-border-radius)}.elements.busy .update-spinner{z-index:1}.elements .header{margin:-24px -24px 24px;padding:14px 24px;background-color:var(--gray-050);box-shadow:none}.elements .header:after{content:\"\"}.elements .header .selectallcontainer{cursor:default}body.ltr .elements .header .selectallcontainer .checkbox{margin-right:5px}body.rtl .elements .header .selectallcontainer .checkbox{margin-left:5px}.elements .tableview .move,.elements .tableview .toggle{display:flex;position:absolute;justify-content:center;align-items:center;top:50%;transform:translateY(-50%);width:var(--touch-target-size);height:var(--touch-target-size)}body.ltr .elements .tableview .move,body.ltr .elements .tableview .toggle{margin-left:calc(var(--touch-target-size)*-1)}body.rtl .elements .tableview .move,body.rtl .elements .tableview .toggle{margin-right:calc(var(--touch-target-size)*-1)}.elements .tableview .move{font-size:11px;text-decoration:none}.elements .tableview .toggle{text-align:center;padding:4px;border-radius:50%}body.ltr .elements .tableview .move+.toggle{margin-left:calc(var(--touch-target-size)*-2)}body.rtl .elements .tableview .move+.toggle{margin-right:calc(var(--touch-target-size)*-2)}.elements .thumbsview{width:calc(\n 100% + 15px\n );display:grid;gap:5px;grid-template-columns:repeat(auto-fit, minmax(180px, 1fr))}body.ltr .elements .thumbsview{margin:-7px -8px -8px -7px}body.rtl .elements .thumbsview{margin:-7px -7px -8px -8px}.elements .thumbsview li{position:relative;max-width:226px}body.ltr .elements .thumbsview li{margin:0 1px 1px 0}body.rtl .elements .thumbsview li{margin:0 0 1px 1px}.elements .thumbsview li:hover .element{background-color:var(--gray-050)}.elements .thumbsview li .element.large.hasthumb{width:unset}.elements .thumbsview li .element.large.hasthumb .elementthumb:not(:empty){width:100%}body.ltr .elements .thumbsview li.has-checkbox .element.hasthumb:not(.hasstatus){padding-left:28px}body.rtl .elements .thumbsview li.has-checkbox .element.hasthumb:not(.hasstatus){padding-right:28px}body.ltr .elements .thumbsview li.has-checkbox .element.hasthumb.hasstatus{padding-left:43px}body.rtl .elements .thumbsview li.has-checkbox .element.hasthumb.hasstatus{padding-right:43px}body.ltr .elements .thumbsview li.has-checkbox .element.hasthumb.hasstatus .status{left:28px}body.rtl .elements .thumbsview li.has-checkbox .element.hasthumb.hasstatus .status{right:28px}.elements .thumbsview li.has-checkbox .checkbox{position:absolute;top:134px}body.ltr .elements .thumbsview li.has-checkbox .checkbox{left:7px}body.rtl .elements .thumbsview li.has-checkbox .checkbox{right:7px}.export-form{position:relative}.export-form .spinner{position:absolute;bottom:0}body.ltr .export-form .spinner{right:-24px}body.rtl .export-form .spinner{left:-24px}.thumbviewhelper{margin:-7px;padding:7px}.thumbviewhelper .thumbsview,.thumbviewhelper .thumbsview li{margin:0 !important}.structure{position:relative;z-index:1}body.ltr .structure li{padding-left:8px}body.rtl .structure li{padding-right:8px}.structure li.collapsed>ul{display:none}.structure li .row:hover>.icon,.structure li.draghelper>.row .move,.structure li .add.active{opacity:1}.structure li.draghelper>.row .add{opacity:0}.structure li.draghelper>.row .move:before{color:var(--link-color)}.structure li.draginsertion{position:relative;height:2px;background-color:var(--link-color) !important;border-radius:1px}body.ltr .structure li.draginsertion{margin:-1px 0 -1px 8px}body.rtl .structure li.draginsertion{margin:-1px 8px -1px 0}body.ltr .structure li.draginsertion{padding-left:0}body.rtl .structure li.draginsertion{padding-right:0}body.ltr .structure li.draginsertion{border-left:none}body.rtl .structure li.draginsertion{border-right:none}.structure li .toggle{position:relative;z-index:1;padding:4px}body.ltr .structure li .toggle{float:left}body.rtl .structure li .toggle{float:right}body.ltr .structure li .toggle{margin:10px -8px 0 -12px}body.rtl .structure li .toggle{margin:10px -12px 0 -8px}.structure li .row:after{content:\"\";display:block;height:0;clear:both;visibility:hidden}.structure li .move,.structure li .add{opacity:0;transition:opacity linear 100ms}body.ltr .structure li .move,body.ltr .structure li .add{margin:5px 5px 0 0}body.rtl .structure li .move,body.rtl .structure li .add{margin:5px 0 0 5px}.structure li .add{padding:0 5px}.structure li .add:before{content:\"downangle\";color:var(--dark-hairline-color)}.structure li .add:not(.disabled):hover:before,.structure li .add.active:before{color:var(--link-color)}body.ltr .structure li .checkbox{float:left}body.rtl .structure li .checkbox{float:right}body.ltr .structure li .checkbox{margin:7px 0 0 7px}body.rtl .structure li .checkbox{margin:7px 7px 0 0}body.ltr .structure ul{margin-left:-3px}body.rtl .structure ul{margin-right:-3px}.structure ul li{background-repeat:no-repeat}body.ltr .structure ul li{padding-left:38px}body.rtl .structure ul li{padding-right:38px}body.ltr .structure ul li{background-image:url(../images/branch.png);background-position:0 0}body.rtl .structure ul li{background-image:url(../images/branch_rtl.png);background-position:100% 0}body.ltr .structure ul li:not(:last-child):not(.last){padding-left:37px}body.rtl .structure ul li:not(:last-child):not(.last){padding-right:37px}body.ltr .structure ul li:not(:last-child):not(.last){border-left:1px solid var(--gray-200)}body.rtl .structure ul li:not(:last-child):not(.last){border-right:1px solid var(--gray-200)}body.ltr .structure ul li:not(:last-child):not(.last){background-position:-1px 0}body.rtl .structure ul li:not(:last-child):not(.last){background-position:calc(100% + 1px) 0}body.ltr .structure ul li.draginsertion{margin-left:38px}body.rtl .structure ul li.draginsertion{margin-right:38px}.structure .row.draghover .element{z-index:2;border-radius:15px;box-shadow:inset 0 0 0 2px var(--link-color)}.structure .row.droptarget{border-radius:5px;box-shadow:inset 0 0 0 2px var(--link-color)}.elementselect{position:relative;min-height:34px;margin-top:-7px}.elementselect .elements{display:flex;flex-direction:column;align-items:flex-start}.elementselect .elements.flex-row{flex-direction:row}.elementselect .elements.flex-wrap{flex-wrap:wrap}.elementselect .elements:after{content:\"\";display:block;height:0;clear:both;visibility:hidden}body.ltr .elementselect .element{margin:7px 7px 0 0}body.rtl .elementselect .element{margin:7px 0 0 7px}.elementselect .flex,.elementselect .btn{clear:both}.elementselect .element{z-index:1}.elementselect .element.small{max-width:100%}.elementselect .element.small .label{display:block;max-width:100%;box-sizing:border-box;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.elementselect .flex{padding-top:7px}table.editable{border-radius:var(--large-border-radius);border:1px solid var(--gray-200)}table.editable th,table.editable td.action{color:var(--medium-text-color);font-weight:normal;background-color:var(--gray-050)}table.editable thead tr th,table.editable tbody tr th{padding:6px 10px}table.editable thead tr th{border-bottom:1px solid var(--hairline-color)}body.ltr table.editable thead tr th.has-info{padding-right:calc(15px + 1em)}body.rtl table.editable thead tr th.has-info{padding-left:calc(15px + 1em)}table.editable thead tr th span.info{position:absolute;margin-left:5px}table.editable tbody tr:not(:first-child) th,table.editable tbody tr:not(:first-child) td{border-top:1px solid var(--hairline-color)}body.ltr table.editable tbody tr:last-child td:first-child{border-bottom-left-radius:var(--large-border-radius)}body.rtl table.editable tbody tr:last-child td:first-child{border-bottom-right-radius:var(--large-border-radius)}body.ltr table.editable tbody tr:last-child td:first-child textarea,body.ltr table.editable tbody tr:last-child td:first-child input.text{border-bottom-left-radius:calc(var(--large-border-radius) - 1px)}body.rtl table.editable tbody tr:last-child td:first-child textarea,body.rtl table.editable tbody tr:last-child td:first-child input.text{border-bottom-right-radius:calc(var(--large-border-radius) - 1px)}body.ltr table.editable tbody tr td:not(:first-child),body.ltr table.editable tbody tr th~td:not(.hidden)~td{border-left:1px solid var(--hairline-color)}body.rtl table.editable tbody tr td:not(:first-child),body.rtl table.editable tbody tr th~td:not(.hidden)~td{border-right:1px solid var(--hairline-color)}body.ltr table.editable tbody tr th~td:not(:first-child){border-left:1px solid #dbdddf}body.rtl table.editable tbody tr th~td:not(:first-child){border-right:1px solid #dbdddf}table.editable tbody tr td{vertical-align:top;text-align:center;background-color:var(--white);padding:4px 10px}table.editable tbody tr td.focus{position:relative;box-shadow:inset 0 0 0 1px var(--hairline-color)}table.editable tbody tr td.textual{padding:0}table.editable tbody tr td.textual textarea{resize:none}table.editable tbody tr td.textual pre{white-space:pre-wrap}body.ltr table.editable tbody tr td.textual pre{text-align:left}body.rtl table.editable tbody tr td.textual pre{text-align:right}table.editable tbody tr td.lightswitch-cell{padding-top:9px;padding-bottom:9px}table.editable tbody tr td.lightswitch-cell .lightswitch{display:block;margin:0 auto}table.editable tbody tr td.checkbox-cell{padding-top:10px;padding-bottom:10px}table.editable tbody tr td.checkbox-cell .checkbox-wrapper{display:block;margin:-2px auto 0;width:16px;height:16px}table.editable tbody tr td.error{box-shadow:inset 0 0 0 1px var(--error-color)}table.editable tbody tr td.disabled{position:relative;opacity:1}table.editable tbody tr td.disabled:after{content:\"\";font-size:0;position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(243,247,252,.75);user-select:none}table.editable tbody tr td.action{padding:4px 7px}body.ltr table.editable tbody tr td.action+td.action{border-left:none}body.rtl table.editable tbody tr td.action+td.action{border-right:none}body.ltr table.editable tbody tr td.action+td.action{padding-left:0}body.rtl table.editable tbody tr td.action+td.action{padding-right:0}table.editable tbody tr td .flex>*{margin-bottom:0}table.editable tbody textarea,table.editable tbody textarea.text,table.editable tbody input.text,table.editable tbody pre{display:block;width:100%;border:none;box-shadow:none;border-radius:0;padding:7px 10px;background-color:rgba(0,0,0,0);overflow:hidden;transition:none;box-sizing:border-box}table.editable tbody .color-container{display:block;position:relative}table.editable tbody .color-container>.color,table.editable tbody .color-container .color-input{margin-bottom:0}table.editable tbody .color-container>.color{position:absolute;top:10px;z-index:1}body.ltr table.editable tbody .color-container>.color{left:10px}body.rtl table.editable tbody .color-container>.color{right:10px}body.ltr table.editable tbody .color-container .color-hex-indicator{left:32px}body.rtl table.editable tbody .color-container .color-hex-indicator{right:32px}body.ltr table.editable tbody .color-container .color-input{padding-left:calc(32px + 1em)}body.rtl table.editable tbody .color-container .color-input{padding-right:calc(32px + 1em)}table.editable tbody .datewrapper,table.editable tbody .timewrapper{display:block;width:100%}table.editable tbody .datewrapper .text+div[data-icon],table.editable tbody .timewrapper .text+div[data-icon]{top:6px}body.ltr table.editable tbody .datewrapper .text+div[data-icon],body.ltr table.editable tbody .timewrapper .text+div[data-icon]{left:10px}body.rtl table.editable tbody .datewrapper .text+div[data-icon],body.rtl table.editable tbody .timewrapper .text+div[data-icon]{right:10px}table.editable:not(.static) td.textual{cursor:text}table.editable+.btn.add{display:block;width:100%}table.editable:not(.hidden)+.btn.add{border-top-width:0;border-radius:0 0 var(--medium-border-radius) var(--medium-border-radius)}.border-box+.buttons,.shadow-box+.buttons{margin-top:7px}body.ltr ul.tree,body.ltr .tree ul{margin-left:20px}body.rtl ul.tree,body.rtl .tree ul{margin-right:20px}body.ltr .tree li .toggle{margin:7px 0 0 -15px}body.rtl .tree li .toggle{margin:7px -15px 0 0}.status{display:inline-block;position:relative;width:10px;height:10px;border:1px solid rgba(0,0,0,0);border-radius:100%;box-sizing:border-box;background-clip:border-box}body.ltr .status{margin-right:10px}body.rtl .status{margin-left:10px}body.use-shapes .status.all{rotate:45deg;background-image:linear-gradient(30deg, #184cef, #e5422b)}body.use-shapes .status.pending{background-color:rgba(0,0,0,0);border-style:solid;border-width:0 5px 10px 5px;border-color:rgba(0,0,0,0) rgba(0,0,0,0) var(--pending-color) rgba(0,0,0,0);border-radius:1px}body.use-shapes .status.all,body.use-shapes .status.off,body.use-shapes .status.suspended,body.use-shapes .status.expired{border-radius:2px;transform:scale(90%)}.status:not(.on):not(.live):not(.active):not(.enabled):not(.all):not(.pending):not(.off):not(.suspended):not(.expired):not(.yellow):not(.orange):not(.red):not(.pink):not(.purple):not(.blue):not(.green):not(.turquoise):not(.light):not(.grey):not(.black){border-color:var(--ui-control-color)}.green,.status.on,.status.live,.status.active,.status.enabled{background-color:var(--enabled-color)}.status.all{background-image:linear-gradient(60deg, #184cef, #e5422b);background-origin:border-box}.orange,.status.pending{background-color:var(--pending-color)}.red,.status.off,.status.suspended,.status.expired{background-color:var(--disabled-color)}.yellow{background-color:var(--yellow-300)}.pink{background-color:var(--pink-400)}.purple{background-color:#9b59b6}.blue{background-color:var(--blue-600)}.turquoise{background-color:var(--teal-300)}.status.light{background-color:var(--gray-100)}.grey{background-color:var(--gray-300)}.black{background-color:var(--gray-800)}.status.white,.status.disabled{opacity:1}.condition-container{margin:24px 0}.condition-rule,.condition-footer{padding:7px}.condition-footer{border:1px dashed var(--medium-hairline-color);border-radius:var(--large-border-radius)}.condition:not(:empty)+.condition-footer{border-top-width:0;border-top-left-radius:0;border-top-right-radius:0}.condition-footer .spinner:not(.loading){display:none}.condition-rule{margin:0;border:1px solid var(--hairline-color);background-color:var(--gray-050)}.condition-rule:first-child{border-top-left-radius:var(--large-border-radius);border-top-right-radius:var(--large-border-radius)}.condition-rule+.condition-rule{border-top-width:0}.condition-rule>.rule-move,.condition-rule>.rule-actions{margin-top:5px}.condition-rule>.rule-body .lightswitch{margin-top:6px;display:block}.condition-rule>.rule-body .selectize{min-width:100px}.condition-rule>.rule-body .text.fullwidth{min-width:100px;max-width:100%}.progressbar{border-radius:6px;border:2px solid var(--gray-700);padding:2px;position:absolute;left:20%;width:60%;z-index:1000}.progressbar-inner{border-radius:2px;height:4px;background-color:var(--gray-700)}.progressbar:not(.pending) .progressbar-inner{width:0;transition:width linear 100ms}.progressbar.pending .progressbar-inner{animation-timing-function:linear;animation-duration:250ms;animation-iteration-count:infinite}body.ltr .progressbar.pending .progressbar-inner{background:repeating-linear-gradient(135deg, var(--white), var(--white) 8.8388347649px, var(--gray-700) 8.8388347649px, var(--gray-700) 17.6776695297px)}body.rtl .progressbar.pending .progressbar-inner{background:repeating-linear-gradient(45deg, var(--white), var(--white) 8.8388347649px, var(--gray-700) 8.8388347649px, var(--gray-700) 17.6776695297px)}body.ltr .progressbar.pending .progressbar-inner{animation-name:pendingprogress-ltr}body.rtl .progressbar.pending .progressbar-inner{animation-name:pendingprogress-rtl}@keyframes pendingprogress-ltr{from{background-position:0}to{background-position:25px}}@keyframes pendingprogress-rtl{from{background-position:0}to{background-position:-25px}}.elementselect .progress-shade{background-color:rgba(255,255,255,.8);width:100%;height:100%;position:absolute;top:0;display:none}body.ltr .elementselect .progress-shade{left:0}body.rtl .elementselect .progress-shade{right:0}.elementselect.uploading{position:relative}.elementselect.uploading .progress-shade{display:block;z-index:2}.missing-component{padding:7px 10px !important;max-width:400px;background-color:var(--gray-050) !important}.missing-component .error{margin:0}.missing-component .install-plugin{margin:7px 0 -7px;border-top:1px solid var(--hairline-color);position:relative}body.ltr .missing-component .install-plugin{padding:10px 0 10px 40px}body.rtl .missing-component .install-plugin{padding:10px 40px 10px 0}.missing-component .install-plugin .icon{width:32px;height:32px;position:absolute;top:calc(50% - 16px)}body.ltr .missing-component .install-plugin .icon{left:0}body.rtl .missing-component .install-plugin .icon{right:0}.missing-component .install-plugin .icon img,.missing-component .install-plugin .icon svg{width:100%;height:100%}.missing-component .install-plugin h3{flex:1;margin:8px 0 !important}.missing-component .install-plugin .btn{margin:0}.pane{background:#fff;box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);position:relative;margin:14px 0;padding:24px;border-radius:var(--large-border-radius);word-wrap:break-word;box-sizing:border-box}.pane:focus{box-shadow:var(--focus-ring)}.pane .pane,#content .pane{background-color:var(--gray-050);border:1px solid var(--hairline-color);box-shadow:none}.pane.loading{min-height:200px}.pane.loading:after{display:block;content:\"\";font-size:0;position:absolute;top:0;left:-24px;width:calc(100% + 48px);height:100%}.pane-header{margin:calc(var(--xl)*-1) var(--neg-padding) var(--xl);padding:var(--s) var(--xl);min-height:50px;box-sizing:border-box;box-shadow:inset 0 -1px 0 0 rgba(154,165,177,.25);border-radius:var(--large-border-radius) var(--large-border-radius) 0 0;background-color:var(--gray-050)}.pane-header .header-btn{margin:2px 0;width:30px;height:30px;padding-left:0;padding-right:0}.pane-header .header-btn:not(:hover):not(:active):not(.active){background-color:rgba(0,0,0,0)}.pane-header .header-btn:not(:active):not(.active):hover{background-color:rgba(154,165,177,.15)}.pane-header .spinner{margin:0 !important}.pane-tabs{display:flex;flex-direction:row;align-items:center;margin:calc(var(--s)*-1) calc(var(--xl)*-1)}.pane-tabs:first-child{border-radius:var(--large-border-radius) var(--large-border-radius) 0 0;overflow:hidden}.pane-tabs [role=tablist]{flex:1;display:flex;flex-direction:row;overflow-x:auto;scrollbar-width:none}.pane-tabs [role=tablist]::-webkit-scrollbar{display:none}body.ltr .pane-tabs [role=tablist].scrollable{mask-image:linear-gradient(to left, rgba(0, 0, 0, 0), rgb(0, 0, 0) 24px)}body.rtl .pane-tabs [role=tablist].scrollable{mask-image:linear-gradient(to right, rgba(0, 0, 0, 0), rgb(0, 0, 0) 24px)}.pane-tabs [role=tablist] [role=tab]{--tab-label-color: var(--light-text-color)}.pane-tabs [role=tablist] [role=tab].error{--highlight-color: var(--error-color) !important;--tab-label-color: var(--error-color) !important}.pane-tabs [role=tablist] [role=tab],.pane-tabs [role=tablist] [role=tab] .tab-label{border-radius:2px 2px 0 0}.pane-tabs [role=tablist] [role=tab] .tab-label{display:flex;flex-direction:row;align-items:center;position:relative;padding:0 24px;white-space:nowrap;color:var(--tab-label-color);height:50px}.pane-tabs [role=tablist] [role=tab]:hover{text-decoration:none}body:not(.reduce-focus-visibility) .pane-tabs [role=tablist] [role=tab]:focus,body.reduce-focus-visibility .pane-tabs [role=tablist] [role=tab]:focus-visible{box-shadow:none}body:not(.reduce-focus-visibility) .pane-tabs [role=tablist] [role=tab]:focus .tab-label,body.reduce-focus-visibility .pane-tabs [role=tablist] [role=tab]:focus-visible .tab-label{box-shadow:var(--inner-focus-ring)}.pane-tabs [role=tablist] [role=tab]:not(.sel):hover{background-color:rgba(154,165,177,.15)}.pane-tabs [role=tablist] [role=tab].sel{--highlight-color: var(--gray-500);--tab-label-color: var(--text-color);position:relative;z-index:1;cursor:default;box-shadow:inset 0 2px 0 var(--highlight-color),0 0 0 1px rgba(51,64,77,.1),0 2px 12px rgba(205,216,228,.5);background-color:var(--white)}body.ltr .pane-tabs [role=tablist] [role=tab] span[data-icon]{margin-left:4px}body.rtl .pane-tabs [role=tablist] [role=tab] span[data-icon]{margin-right:4px}body.ltr .pane-tabs:first-child [role=tablist] [role=tab]:first-child,body.ltr .pane-tabs:first-child [role=tablist] [role=tab]:first-child .tab-label{border-top-left-radius:var(--large-border-radius)}body.rtl .pane-tabs:first-child [role=tablist] [role=tab]:first-child,body.rtl .pane-tabs:first-child [role=tablist] [role=tab]:first-child .tab-label{border-top-right-radius:var(--large-border-radius)}.pane-tabs .menubtn{margin:0 var(--xl)}.details{--spacing: var(--l);padding:0 var(--padding) var(--spacing)}.details .meta,.details .field,.details hr{margin-left:var(--neg-padding);margin-right:var(--neg-padding)}.details .meta{margin-bottom:var(--spacing)}.details .meta:not(.read-only){background-color:var(--gray-050) !important}.details .meta.read-only{color:var(--medium-text-color)}.details .meta.read-only>.data{align-items:baseline;min-height:auto}.details .meta.read-only>.data>.heading,.details .meta.read-only>.data>.value{padding:6px 0}.details .meta.read-only>.data:first-child>.heading,.details .meta.read-only>.data:first-child>.value{padding-top:0}.details .meta.read-only>.data:last-child>.heading,.details .meta.read-only>.data:last-child>.value{padding-bottom:0}.details .meta.warning{padding-top:var(--m);padding-bottom:var(--m);color:var(--text-color) !important;background-color:var(--yellow-050) !important;box-shadow:0 0 0 1px var(--yellow-300),0 2px 12px rgba(205,216,228,.5)}.details .meta.warning p{margin-bottom:5px}.details .meta.warning .btn{background-color:var(--yellow-300)}.details .meta.warning .btn:hover,.details .meta.warning .btn:focus{background-color:#f8d02e}.details .meta.warning .btn:active{background-color:#f8ca15}.details .meta>.field,.details .meta>.data{margin:0 var(--neg-padding) !important}.details .meta>.field>.heading>label,.details .meta>.field>.heading,.details .meta>.data>.heading>label,.details .meta>.data>.heading{color:var(--gray-600)}body.ltr .details .meta>.field>.status-badge{left:0}body.rtl .details .meta>.field>.status-badge{right:0}.details .meta .text::placeholder,.details .meta .datewrapper .text+div[data-icon],.details .meta .timewrapper .text+div[data-icon]{color:var(--gray-500)}body.ltr .details .meta .ui-datepicker{margin:0 0 0 -8px}body.rtl .details .meta .ui-datepicker{margin:0 -8px 0 0}.details hr{margin:var(--spacing) 0;border-top-color:var(--hairline-color)}.details input::-webkit-input-placeholder,.details textarea::-webkit-input-placeholder{color:var(--gray-500)}.details input:-ms-input-placeholder,.details textarea:-ms-input-placeholder{color:var(--gray-500)}.details input::-ms-input-placeholder,.details textarea::-ms-input-placeholder{color:var(--gray-500)}.details input:-moz-placeholder,.details textarea:-moz-placeholder{color:var(--gray-500)}.details input::-moz-placeholder,.details textarea::-moz-placeholder{color:var(--gray-500)}.details input::placeholder,.details textarea::placeholder{color:var(--gray-500)}.details .text{background-color:rgba(0,0,0,0) !important;resize:none}.details>.field>.heading>label,.details>fieldset>legend{margin-top:0;font-weight:normal;color:var(--gray-600)}.details>fieldset{margin:0 0 var(--spacing)}.details>fieldset>legend{margin-bottom:5px}.details>.field{margin:0 0 var(--spacing)}.details>.field>.heading{margin-top:0}.details>.field>.input>.text.fullwidth{margin:0 var(--neg-padding);padding-left:var(--padding);padding-right:var(--padding);border:none;background-color:var(--gray-050) !important;width:calc(100% + var(--padding) + var(--padding))}.details>.text{border-radius:var(--large-border-radius);margin-bottom:var(--spacing)}.details>.text:not(:focus){border-color:rgba(96,125,159,.4)}.meta{padding:0 var(--padding);overflow:visible}.meta>.field,.meta>.data,.meta>.flex-fields>.field,.meta>.flex-fields>.data{display:flex;min-height:50px;box-sizing:border-box;flex-wrap:wrap;justify-content:space-between;align-items:center;margin:0 var(--neg-padding) !important;padding:0 var(--padding);transition:padding-left linear 100ms,padding-right linear 100ms}body.ltr .meta>.field.nested,body.ltr .meta>.data.nested,body.ltr .meta>.flex-fields>.field.nested,body.ltr .meta>.flex-fields>.data.nested{padding-left:38px}body.rtl .meta>.field.nested,body.rtl .meta>.data.nested,body.rtl .meta>.flex-fields>.field.nested,body.rtl .meta>.flex-fields>.data.nested{padding-right:38px}.meta>.field.add,.meta>.data.add,.meta>.flex-fields>.field.add,.meta>.flex-fields>.data.add{background-color:#ebf2fa}.meta>.field.add:before,.meta>.data.add:before,.meta>.flex-fields>.field.add:before,.meta>.flex-fields>.data.add:before{position:absolute;width:31px;font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"plus\";color:var(--light-text-color)}body.ltr .meta>.field.add:before,body.ltr .meta>.data.add:before,body.ltr .meta>.flex-fields>.field.add:before,body.ltr .meta>.flex-fields>.data.add:before{left:0}body.rtl .meta>.field.add:before,body.rtl .meta>.data.add:before,body.rtl .meta>.flex-fields>.field.add:before,body.rtl .meta>.flex-fields>.data.add:before{right:0}body.ltr .meta>.field.add:before,body.ltr .meta>.data.add:before,body.ltr .meta>.flex-fields>.field.add:before,body.ltr .meta>.flex-fields>.data.add:before{text-align:right}body.rtl .meta>.field.add:before,body.rtl .meta>.data.add:before,body.rtl .meta>.flex-fields>.field.add:before,body.rtl .meta>.flex-fields>.data.add:before{text-align:left}.meta>.field.add .input,.meta>.data.add .input,.meta>.flex-fields>.field.add .input,.meta>.flex-fields>.data.add .input{width:100%}.meta>.field>.heading,.meta>.data>.heading,.meta>.flex-fields>.field>.heading,.meta>.flex-fields>.data>.heading{margin:0}@media screen and (min-width: 400px){.meta>.field>.heading,.meta>.data>.heading,.meta>.flex-fields>.field>.heading,.meta>.flex-fields>.data>.heading{flex:0 0 104px;line-height:18px}body.ltr .meta>.field>.heading,body.ltr .meta>.data>.heading,body.ltr .meta>.flex-fields>.field>.heading,body.ltr .meta>.flex-fields>.data>.heading{margin-right:var(--s)}body.rtl .meta>.field>.heading,body.rtl .meta>.data>.heading,body.rtl .meta>.flex-fields>.field>.heading,body.rtl .meta>.flex-fields>.data>.heading{margin-left:var(--s)}}.meta>.field.lightswitch-field>.heading,.meta>.data.lightswitch-field>.heading,.meta>.flex-fields>.field.lightswitch-field>.heading,.meta>.flex-fields>.data.lightswitch-field>.heading{flex:1}.meta>.field>.input .flex,.meta>.data>.input .flex,.meta>.flex-fields>.field>.input .flex,.meta>.flex-fields>.data>.input .flex{flex-wrap:nowrap}.meta>.field>.input .flex>*,.meta>.data>.input .flex>*,.meta>.flex-fields>.field>.input .flex>*,.meta>.flex-fields>.data>.input .flex>*{margin-bottom:0}.meta>.field>.heading,.meta>.flex-fields>.field>.heading{padding-top:var(--s)}@media screen and (min-width: 400px){.meta>.field>.heading,.meta>.flex-fields>.field>.heading{padding:14px 0}}.meta>.field>.heading>.copytextbtn,.meta>.flex-fields>.field>.heading>.copytextbtn{display:none}.meta>.data>.heading,.meta>.flex-fields>.data>.heading{padding:var(--s) 0}.meta>.field>.heading>label,.meta>.data>.heading,.meta>.flex-fields>.field>.heading>label,.meta>.flex-fields>.data>.heading{color:var(--medium-text-color)}.meta>.field>.input,.meta>.data>.value,.meta>.flex-fields>.field>.input,.meta>.flex-fields>.data>.value{padding:var(--s) 0;width:100%}@media screen and (min-width: 400px){.meta>.field>.input,.meta>.data>.value,.meta>.flex-fields>.field>.input,.meta>.flex-fields>.data>.value{width:calc(100% - 112px)}}.meta>.data>.value,.meta>.flex-fields>.data>.value{display:flex;align-items:center}.meta>.data>.value>[data-icon=draft],.meta>.flex-fields>.data>.value>[data-icon=draft]{margin-top:-2px}body.ltr .meta>.data>.value>[data-icon=draft],body.ltr .meta>.flex-fields>.data>.value>[data-icon=draft]{margin-right:8px}body.rtl .meta>.data>.value>[data-icon=draft],body.rtl .meta>.flex-fields>.data>.value>[data-icon=draft]{margin-left:8px}.meta>.field.lightswitch-field>.input,.meta>.flex-fields>.field.lightswitch-field>.input{flex:0;width:auto}.meta>.field.has-errors,.meta>.flex-fields>.field.has-errors{border:1px solid var(--error-color) !important}.meta>.field.has-errors:first-child,.meta>.flex-fields>.field.has-errors:first-child{border-top-left-radius:var(--large-border-radius);border-top-right-radius:var(--large-border-radius)}.meta>.field.has-errors:last-child,.meta>.flex-fields>.field.has-errors:last-child{border-bottom-left-radius:var(--large-border-radius);border-bottom-right-radius:var(--large-border-radius)}.meta>.field.has-errors+.field,.meta>.flex-fields>.field.has-errors+.field{border-top:none !important}.meta>.field>.heading>label,.meta>.field>.heading>legend,.meta>.flex-fields>.field>.heading>label,.meta>.flex-fields>.field>.heading>legend{font-weight:normal}.meta>.field>.input>.text,.meta>.field>.input>.flex>.text,.meta>.field>.input>.flex>.textwrapper>.text,.meta>.field>.input>.datewrapper>.text,.meta>.field>.input>.timewrapper>.text,.meta>.field>.input>.datetimewrapper>.datewrapper>.text,.meta>.field>.input>.datetimewrapper>.timewrapper>.text,.meta>.flex-fields>.field>.input>.text,.meta>.flex-fields>.field>.input>.flex>.text,.meta>.flex-fields>.field>.input>.flex>.textwrapper>.text,.meta>.flex-fields>.field>.input>.datewrapper>.text,.meta>.flex-fields>.field>.input>.timewrapper>.text,.meta>.flex-fields>.field>.input>.datetimewrapper>.datewrapper>.text,.meta>.flex-fields>.field>.input>.datetimewrapper>.timewrapper>.text{display:block;margin:calc(var(--s)*-1) 0;padding:14px 0;border-radius:0;background-color:rgba(0,0,0,0);border:none !important}.meta>.field>.input>.datewrapper,.meta>.field>.input>.timewrapper,.meta>.field>.input>.datetimewrapper>.datewrapper,.meta>.field>.input>.datetimewrapper>.timewrapper,.meta>.flex-fields>.field>.input>.datewrapper,.meta>.flex-fields>.field>.input>.timewrapper,.meta>.flex-fields>.field>.input>.datetimewrapper>.datewrapper,.meta>.flex-fields>.field>.input>.datetimewrapper>.timewrapper{background-color:rgba(0,0,0,0)}body.ltr .meta>.field>.input>.datewrapper .text+div[data-icon],body.ltr .meta>.field>.input>.timewrapper .text+div[data-icon],body.ltr .meta>.field>.input>.datetimewrapper>.datewrapper .text+div[data-icon],body.ltr .meta>.field>.input>.datetimewrapper>.timewrapper .text+div[data-icon],body.ltr .meta>.flex-fields>.field>.input>.datewrapper .text+div[data-icon],body.ltr .meta>.flex-fields>.field>.input>.timewrapper .text+div[data-icon],body.ltr .meta>.flex-fields>.field>.input>.datetimewrapper>.datewrapper .text+div[data-icon],body.ltr .meta>.flex-fields>.field>.input>.datetimewrapper>.timewrapper .text+div[data-icon]{left:0}body.rtl .meta>.field>.input>.datewrapper .text+div[data-icon],body.rtl .meta>.field>.input>.timewrapper .text+div[data-icon],body.rtl .meta>.field>.input>.datetimewrapper>.datewrapper .text+div[data-icon],body.rtl .meta>.field>.input>.datetimewrapper>.timewrapper .text+div[data-icon],body.rtl .meta>.flex-fields>.field>.input>.datewrapper .text+div[data-icon],body.rtl .meta>.flex-fields>.field>.input>.timewrapper .text+div[data-icon],body.rtl .meta>.flex-fields>.field>.input>.datetimewrapper>.datewrapper .text+div[data-icon],body.rtl .meta>.flex-fields>.field>.input>.datetimewrapper>.timewrapper .text+div[data-icon]{right:0}.meta>.field>.input>.datetimewrapper>.datewrapper,.meta>.flex-fields>.field>.input>.datetimewrapper>.datewrapper{width:55%}.meta>.field>.input>.datetimewrapper>.timewrapper,.meta>.flex-fields>.field>.input>.datetimewrapper>.timewrapper{width:45%}body.ltr .meta>.field>.input>.datetimewrapper>.clear-btn,body.ltr .meta>.flex-fields>.field>.input>.datetimewrapper>.clear-btn{margin-right:-24px}body.rtl .meta>.field>.input>.datetimewrapper>.clear-btn,body.rtl .meta>.flex-fields>.field>.input>.datetimewrapper>.clear-btn{margin-left:-24px}.meta>.field>.input>.datewrapper,.meta>.field>.input>.timewrapper,.meta>.flex-fields>.field>.input>.datewrapper,.meta>.flex-fields>.field>.input>.timewrapper{display:block;width:100%}.meta>.field>ul.errors,.meta>.flex-fields>.field>ul.errors{margin:0;padding:0 0 6px;width:100%;list-style-type:none}body.ltr .meta>.field>.clear-btn,body.ltr .meta>.flex-fields>.field>.clear-btn{margin-right:var(--neg-padding)}body.rtl .meta>.field>.clear-btn,body.rtl .meta>.flex-fields>.field>.clear-btn{margin-left:var(--neg-padding)}.meta>.field:not(:first-child),.meta>.flex-fields+.field{border-top:1px solid var(--hairline-color)}.meta>.flex-fields h2,.meta>.flex-fields blockquote.note{margin:0 -24px !important;padding:14px 24px;background-color:#ebf2fa}.meta>.flex-fields blockquote.note{border-radius:0;border:none}.meta>.flex-fields hr{margin:0 -24px}.meta>.field>.input>.select{display:block;margin:calc(var(--s)*-1) 0;width:100%;border-radius:0;box-shadow:none;background-color:rgba(0,0,0,0)}body.ltr .meta>.field>.input>.select:after{right:0}body.rtl .meta>.field>.input>.select:after{left:0}.meta>.field>.input>.select+.spinner{position:absolute;top:calc(50% - 17px)}body.ltr .meta>.field>.input>.select+.spinner{right:-24px}body.rtl .meta>.field>.input>.select+.spinner{left:-24px}.meta>.field>.input>.select select{width:100%;background-color:rgba(0,0,0,0)}body.ltr .meta>.field>.input>.select select{padding:var(--s) 12px var(--s) 0}body.rtl .meta>.field>.input>.select select{padding:var(--s) 0 var(--s) 12px}.body{position:relative}.slideout-container,.slideout,.modal,.hud{z-index:100;box-sizing:border-box}.modal,.hud .body{border-radius:5px;background-color:#fff;box-shadow:0 25px 100px rgba(31,41,51,.5)}.slideout-shade{opacity:0;transition:opacity linear 250ms}.slideout-shade.so-visible{opacity:1}.slideout-container{position:fixed;top:0;left:0;width:100vw;height:100vh;height:-webkit-fill-available;pointer-events:none}body.has-debug-toolbar .slideout-container{height:calc(100vh - 42px)}.slideout{position:absolute;background-color:var(--white);box-shadow:0 0 0 1px rgba(123,135,147,.25),0 25px 100px rgba(31,41,51,.5) !important;display:flex;flex-direction:column;overflow:hidden;padding:24px var(--padding);pointer-events:all}.slideout.so-mobile{--padding: 14px;--neg-padding: -14px;width:100%;height:100%;left:0;transition:top linear 250ms;will-change:top}.slideout:not(.so-mobile){top:8px;width:calc(50% - 8px);height:calc(100% - 16px);border-radius:var(--large-border-radius)}@media screen and (prefers-reduced-motion: no-preference){body.ltr .slideout:not(.so-mobile){transition:left linear 250ms;will-change:left}body.rtl .slideout:not(.so-mobile){transition:right linear 250ms;will-change:right}}.slideout>.pane-header{z-index:2}.slideout>.pane-header>.so-toolbar{display:flex;flex-direction:row;align-items:center;gap:var(--s);min-height:34px}.slideout>.pane-header>.so-toolbar>.pane-tabs{width:1px;flex:1}body.ltr .slideout>.pane-header>.so-toolbar>.pane-tabs{margin-right:0}body.rtl .slideout>.pane-header>.so-toolbar>.pane-tabs{margin-left:0}.slideout.so-mobile>.pane-header{padding-left:10px;padding-right:10px}.slideout>.so-body{flex:1;margin:-24px var(--neg-padding) 0;padding:24px var(--padding);overflow:hidden auto;position:relative}.slideout>.so-body>.so-sidebar{position:absolute;top:0;background:#fff;box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);width:350px;height:100%;max-width:100%;box-sizing:border-box;padding:0 var(--padding) var(--spacing);background-color:var(--gray-100);overflow:hidden auto;z-index:1}.slideout>.so-body>.so-sidebar:focus{box-shadow:var(--focus-ring)}body.ltr .slideout>.so-body>.so-sidebar{transition:right linear 250ms}body.rtl .slideout>.so-body>.so-sidebar{transition:left linear 250ms}.slideout>.so-body>.so-sidebar>.preview-thumb-container{margin:0 var(--neg-padding);height:auto;min-height:54px}.slideout>.so-body>.so-sidebar>.preview-thumb-container+.pane-header{border-radius:0}.slideout>.so-body>.so-sidebar .image-actions.is-mobile{margin:calc(var(--spacing)/2) 0 var(--spacing)}.slideout>.so-body>.so-sidebar>.meta.read-only:first-child{margin-top:var(--padding)}.slideout>.so-body>.so-sidebar>.meta.warning{box-shadow:none;border-bottom:1px solid var(--yellow-300)}.slideout>.so-body>.so-sidebar>.field>.input>.text.fullwidth{border-radius:0}.slideout>.so-body>.so-sidebar .notes{padding-top:var(--m);padding-bottom:var(--m)}.slideout>.so-footer{position:relative;display:flex;gap:8px;justify-content:space-between;flex-wrap:wrap;margin:0 var(--neg-padding) -24px;padding:8px var(--padding);background:#fff;box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);background-color:var(--gray-050);z-index:3}.slideout>.so-footer:focus{box-shadow:var(--focus-ring)}.slideout>.so-footer>.so-extra{flex:0 0 100%;margin:0 var(--neg-padding);padding:0 var(--padding) 8px;border-bottom:1px solid var(--hairline-color)}@media(min-width: 1536px){.slideout.has-sidebar .pane-header:not(.so-visible){display:none}.slideout.has-sidebar .sidebar-btn{display:none}.slideout.has-sidebar .so-body{display:flex;flex-direction:row;padding:0;overflow:hidden}.slideout.has-sidebar .so-body>.so-content{position:relative;z-index:2;padding:24px;width:calc(100% - 350px);height:100%;box-sizing:border-box;overflow:hidden auto}body.ltr .slideout.has-sidebar .so-body>.so-content{border-right:1px solid var(--gray-200)}body.rtl .slideout.has-sidebar .so-body>.so-content{border-left:1px solid var(--gray-200)}.slideout.has-sidebar .so-body>.so-sidebar{position:relative;display:block !important;top:auto;right:auto !important;left:auto !important;height:100%;box-shadow:none}.slideout>.so-footer>.so-extra{margin:0;padding:0;border:none;flex:auto 0 1}}.header:after,.hud-header:after,.footer:after,.hud-footer:after,.body:after{content:\"\";display:block;height:0;clear:both;visibility:hidden}.header,.hud-header,.footer,.hud-footer{position:relative;z-index:1;box-sizing:border-box}.header,.hud-header,.footer,.hud-footer{background-color:var(--gray-100)}.header,.hud-header{border-radius:var(--large-border-radius) var(--large-border-radius) 0 0;padding:24px;box-shadow:inset 0 -1px 0 var(--hairline-color)}.header h1,.hud-header h1{margin:0}.footer,.hud-footer{border-radius:0 0 var(--large-border-radius) var(--large-border-radius);padding:var(--s) var(--xl);box-shadow:inset 0 1px 0 var(--hairline-color)}.footer.flex>*,.hud-footer.flex>*{margin-bottom:0}.modal .body,.hud .main{padding:24px;overflow:hidden;box-sizing:border-box}.pane .header,.modal .body .header{margin:-24px -24px 24px}.pane .footer,.modal .body .footer{margin:24px -24px -24px}.slideout-shade,.modal-shade,.hud-shade{z-index:100;position:fixed;top:0;left:0;width:100%;height:100%;display:none}.slideout-shade:not(.dark),.modal-shade:not(.dark){background-color:rgba(123,135,147,.35) !important}.slideout-shade.dark,.modal-shade.dark{background-color:rgba(31,41,51,.5) !important}.modal{position:fixed;overflow:hidden}.modal:not(.fitted):not(.fullscreen){width:66%;height:66%;min-width:600px;min-height:400px}.modal.fitted{width:auto;height:auto;min-width:0;min-height:0}.modal.fullscreen{width:100%;height:100%;border-radius:0}body.ltr .modal.alert .body{padding-left:76px}body.rtl .modal.alert .body{padding-right:76px}.modal.alert .body:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"alert\";font-size:40px;color:var(--light-text-color)}body.ltr .modal.alert .body:before{margin:-6px 0 0 -58px}body.rtl .modal.alert .body:before{margin:-6px -58px 0 0}body.ltr .modal.alert .body:before{float:left}body.rtl .modal.alert .body:before{float:right}body.ltr .modal.secure .body{padding-left:76px}body.rtl .modal.secure .body{padding-right:76px}.modal.secure .body:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"secure\";font-size:58px;color:var(--light-text-color)}body.ltr .modal.secure .body:before{margin:-14px 0 0 -56px}body.rtl .modal.secure .body:before{margin:-14px -56px 0 0}body.ltr .modal.secure .body:before{float:left}body.rtl .modal.secure .body:before{float:right}.modal .resizehandle{position:absolute;z-index:1;bottom:0;width:24px;height:24px;cursor:nwse-resize;padding:var(--xs)}body.ltr .modal .resizehandle{right:0}body.rtl .modal .resizehandle{left:0}.modal .resizehandle path{fill:var(--ui-control-color)}body.rtl .modal .resizehandle .ltr{display:none}body.ltr .modal .resizehandle .rtl{display:none}.hud{position:absolute;display:none;top:0}.hud.has-footer .tip-bottom{background-image:url(../images/hudtip_bottom_gray.png)}.hud .tip{position:absolute;z-index:101;background:no-repeat 0 0}.hud .tip-left{left:-15px;width:15px;height:30px;background-image:url(../images/hudtip_left.png)}.hud .tip-top{top:-15px;width:30px;height:15px;background-image:url(../images/hudtip_top.png)}.hud .tip-right{right:-15px;width:15px;height:30px;background-image:url(../images/hudtip_right.png)}.hud .tip-bottom{bottom:-15px;width:30px;height:15px;background-image:url(../images/hudtip_bottom.png)}.hud .hud-header,.hud .hud-footer{padding:var(--s) var(--xl)}.hud .body{overflow:hidden}.hud .body ::-webkit-scrollbar{appearance:none}.hud .body ::-webkit-scrollbar:vertical{width:11px}.hud .body ::-webkit-scrollbar:horizontal{height:11px}.hud .body ::-webkit-scrollbar-thumb{border-radius:8px;border:2px solid rgba(0,0,0,0);background-color:rgba(0,0,0,.5)}.hud .body ::-webkit-scrollbar-track{background-color:var(--gray-050)}.preview-thumb-container{position:relative;display:flex;flex-direction:row;align-items:center;height:190px;background-color:var(--gray-900);margin:0 var(--neg-padding) var(--spacing)}.preview-thumb-container.checkered img{background-color:var(--white);background-image:linear-gradient(45deg, var(--gray-100) 25%, transparent 25%),linear-gradient(135deg, var(--gray-100) 25%, transparent 25%),linear-gradient(45deg, transparent 75%, var(--gray-100) 75%),linear-gradient(135deg, transparent 75%, var(--gray-100) 75%);background-size:17px 17px;background-position:0 0,8.5px 0,8.5px -8.5px,0 8.5px}.preview-thumb-container.editable{cursor:pointer}.preview-thumb-container.loading:after{content:\"\";font-size:0;display:block;position:absolute;width:100%;height:100%;left:0;top:0;background-color:rgba(31,41,51,.8)}.preview-thumb-container.loading .spinner{color:var(--white);z-index:1}#details .preview-thumb-container{border-radius:var(--large-border-radius);overflow:hidden}.preview-thumb-container .preview-thumb{display:flex;flex-direction:column;align-items:center;width:100%;height:100%}.preview-thumb-container .preview-thumb img{display:block;max-width:100%;max-height:190px}.image-actions.is-mobile{margin:calc(var(--spacing)/2*-1) var(--neg-padding) var(--spacing);display:grid;grid-template-columns:1fr 1fr}.button-fade .buttons{opacity:0;position:absolute;top:10px;margin:0;transition:opacity linear 100ms}body.ltr .button-fade .buttons{right:10px}body.rtl .button-fade .buttons{left:10px}.button-fade .buttons .btn{--ui-control-color: var(--white);--ui-control-hover-color: var(--white);--ui-control-active-color: var(--white);--interaction-background-color: var(--gray-700);background-color:var(--gray-600);color:var(--white);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-weight:500;--light-color: var(--white);--dark-color: var(--gray-800);--focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color)}.button-fade .buttons .btn:hover{background-color:var(--interaction-background-color) !important}.button-fade .buttons .btn:not(.disabled):not(.loading):not(.dashed):focus,.button-fade .buttons .btn:not(.disabled):not(.loading):not(.dashed).focus,.button-fade .buttons .btn:not(.disabled):not(.loading):not(.dashed):hover{background-color:var(--interaction-background-color)}.button-fade:hover .buttons,.button-fade:focus-within .buttons{opacity:1}.elementselectormodal{--content-padding: 24px;padding-bottom:50px;user-select:none}.elementselectormodal .body{position:relative;height:100%}.elementselectormodal .body .spinner.big{position:absolute;top:50%;left:50%;margin:-24px 0 0 -24px}.elementselectormodal .body .content{height:calc(100% + 48px)}.elementselectormodal .body .content .sidebar{position:absolute;top:0;height:100%;overflow:auto;padding:var(--content-padding) 0}body.ltr .elementselectormodal .body .content .sidebar{margin-left:-249px}body.rtl .elementselectormodal .body .content .sidebar{margin-right:-249px}.elementselectormodal .body .content .main{margin:-24px;padding:var(--content-padding);height:100%;box-sizing:border-box;overflow:auto;position:relative}.elementselectormodal .body .content .main .elements.busy{min-height:calc(100% - 48px)}.elementselectormodal .body .content .main .elements .tableview table .element{display:inline-block}.elementselectormodal .body .content .main .elements .tableview table tr.disabled{opacity:1;color:var(--gray-200)}.elementselectormodal .body .content .main .elements .tableview table tr.disabled .element{opacity:.25}.elementselectormodal .body .content .main .elements .tableview table tr th,.elementselectormodal .body .content .main .elements .tableview table tr td{cursor:default}body.ltr .elementselectormodal .body .content .main .elements .tableview table tr td:first-child{padding-left:7px}body.rtl .elementselectormodal .body .content .main .elements .tableview table tr td:first-child{padding-right:7px}.elementselectormodal .body .content .main .elements .structure .row{margin-top:1px}.elementselectormodal .footer{position:absolute;bottom:0;left:0;width:100%;margin:0;box-sizing:border-box}body.ltr .elementselectormodal .footer .spinner{float:right}body.rtl .elementselectormodal .footer .spinner{float:left}body.ltr .elementselectormodal .footer .spinner{margin-right:-24px}body.rtl .elementselectormodal .footer .spinner{margin-left:-24px}.elementselectormodal .main-header,.customize-sources-modal .main-header{display:flex;align-items:center;margin-bottom:var(--s)}.elementselectormodal .main-heading,.customize-sources-modal .main-heading{margin-bottom:0}.elementselectormodal .nav-toggle,.customize-sources-modal .nav-toggle{height:var(--touch-target-size);width:var(--touch-target-size);color:var(--ui-control-color)}body.ltr .elementselectormodal .nav-toggle,body.ltr .customize-sources-modal .nav-toggle{margin-left:4px}body.rtl .elementselectormodal .nav-toggle,body.rtl .customize-sources-modal .nav-toggle{margin-right:4px}.elementselectormodal .nav-toggle:hover,.customize-sources-modal .nav-toggle:hover{color:var(--gray-500)}.elementselectormodal .sidebar-header,.customize-sources-modal .sidebar-header{display:flex;justify-content:flex-end;padding:0 var(--s);margin-bottom:var(--s)}.elementselectormodal .nav-close,.customize-sources-modal .nav-close{height:var(--touch-target-size);width:var(--touch-target-size)}.element-hud-form .buttons{position:relative}.element-hud-form .buttons .spinner{position:absolute;top:0}body.ltr .element-hud-form .buttons .spinner{right:-24px}body.rtl .element-hud-form .buttons .spinner{left:-24px}.element-index-view-menu{width:400px;max-width:calc(100% - 20px);padding:0 !important}.element-index-view-menu .meta{padding-top:var(--s);padding-bottom:var(--s)}.element-index-view-menu .table-columns-field{align-items:flex-start}.element-index-view-menu .table-columns-field .input{padding:13px 0}.element-index-view-menu .menu-footer{margin:0 !important;padding:var(--s) var(--xl) !important;background-color:var(--gray-050)}body.ltr .element-index-view-menu-table-column .icon.move{margin-right:10px}body.rtl .element-index-view-menu-table-column .icon.move{margin-left:10px}.sort-field .input .flex .btngroup .btn{width:42px}.sort-field .input .flex .flex-grow{max-width:calc(100% - 85px - var(--s))}@media screen and (max-width: 350px){.sort-field .input .flex{flex-direction:column}.sort-field .input .flex>*{width:100%}.sort-field .input .flex .flex-grow{max-width:none}}.element-filter-hud.loading .body{padding:50px;display:flex;align-items:center;justify-content:center}.element-filter-hud .body,.element-filter-hud .main{overflow:visible}.address-cards{display:grid;gap:var(--m) var(--m);grid-template-columns:repeat(1, minmax(0, 1fr));grid-auto-rows:minmax(0, 1fr)}.so-content .address-cards{grid-template-columns:repeat(1, minmax(0, 1fr)) !important}.address-cards__add-btn{padding:1rem;min-height:8rem;height:auto;width:100%}.address-card.error{border:1px solid #cf1124}.address-card.error:hover{border-color:#cf1124}@media(min-width: 1024px){.address-cards{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media(min-width: 1280px){.address-cards{grid-template-columns:repeat(3, minmax(0, 1fr))}.so-content .address-cards{grid-template-columns:repeat(2, minmax(0, 1fr)) !important}}@media(min-width: 1536px){.address-cards{grid-template-columns:repeat(4, minmax(0, 1fr))}}.address-card{border:1px solid #eee;border-radius:.375rem;padding:1rem;min-height:4rem}.address-card:hover{border-color:#ddd;background-color:#fafafa;cursor:pointer}.address-card .address-card-header{display:flex;flex-wrap:nowrap;justify-content:space-between}.address-card .address-card-header-actions{display:flex;justify-content:flex-end}.address-card .address-card-label{background:#e6f1fe;color:#2563eb;padding:.125rem .5rem;border-radius:.25rem;font-size:.75rem;text-transform:uppercase;font-weight:500;margin-bottom:.75rem}.ltr .address-card .address-card-label{margin-right:.5rem}.rtl .address-card .address-card-label{margin-left:.5rem}.logoutwarningmodalshade,.loginmodalshade{z-index:101}#logoutwarningmodal,#loginmodal,#elevatedsessionmodal,.prompt{width:500px}#logoutwarningmodal,#loginmodal{z-index:101}.prompt{height:auto;min-height:auto}.deleteusermodal .content-summary{margin:-24px -24px 24px;padding:24px;background-color:var(--gray-050)}.deleteusermodal .options label{display:inline-block;line-height:30px}.deleteusermodal .elementselect{display:inline-block;vertical-align:middle}body.ltr .deleteusermodal .elementselect{margin-left:10px}body.rtl .deleteusermodal .elementselect{margin-right:10px}body.ltr .deleteusermodal .buttons .spinner{margin-right:-20px}body.rtl .deleteusermodal .buttons .spinner{margin-left:-20px}.dropdownsettingsmodal{width:auto;height:auto;min-width:0;min-height:0;max-width:400px}.dropdownsettingsmodal .body{max-height:100%;overflow-y:auto}.previewmodal.zilch{padding:100px 0;display:flex;align-items:center;justify-content:center}.menu,.ui-datepicker,.ui-timepicker-list{z-index:100;border-radius:4px;padding:0 14px;overflow:auto;background:#fff;user-select:none;box-shadow:0 0 0 1px rgba(31,41,51,.1),0 5px 20px rgba(31,41,51,.25)}.ui-datepicker,.ui-timepicker-list{padding:0}.menu{display:none;position:absolute}.menu h6:first-child{margin-top:14px !important}body.ltr .menu ul.padded li a,body.ltr .menu ul.padded li .menu-option{padding-left:24px}body.rtl .menu ul.padded li a,body.rtl .menu ul.padded li .menu-option{padding-right:24px}.menu ul.padded li a[data-icon]:before,.menu ul.padded li a.icon:before,.menu ul.padded li a.sel:before,.menu ul.padded li .menu-option[data-icon]:before,.menu ul.padded li .menu-option.icon:before,.menu ul.padded li .menu-option.sel:before{font-size:14px;color:var(--ui-control-color)}body.ltr .menu ul.padded li a[data-icon]:before,body.ltr .menu ul.padded li a.icon:before,body.ltr .menu ul.padded li a.sel:before,body.ltr .menu ul.padded li .menu-option[data-icon]:before,body.ltr .menu ul.padded li .menu-option.icon:before,body.ltr .menu ul.padded li .menu-option.sel:before{float:left}body.rtl .menu ul.padded li a[data-icon]:before,body.rtl .menu ul.padded li a.icon:before,body.rtl .menu ul.padded li a.sel:before,body.rtl .menu ul.padded li .menu-option[data-icon]:before,body.rtl .menu ul.padded li .menu-option.icon:before,body.rtl .menu ul.padded li .menu-option.sel:before{float:right}body.ltr .menu ul.padded li a[data-icon]:before,body.ltr .menu ul.padded li a.icon:before,body.ltr .menu ul.padded li a.sel:before,body.ltr .menu ul.padded li .menu-option[data-icon]:before,body.ltr .menu ul.padded li .menu-option.icon:before,body.ltr .menu ul.padded li .menu-option.sel:before{margin:3px 0 0 -17px}body.rtl .menu ul.padded li a[data-icon]:before,body.rtl .menu ul.padded li a.icon:before,body.rtl .menu ul.padded li a.sel:before,body.rtl .menu ul.padded li .menu-option[data-icon]:before,body.rtl .menu ul.padded li .menu-option.icon:before,body.rtl .menu ul.padded li .menu-option.sel:before{margin:3px -17px 0 0}.menu ul.padded li a[data-icon].error:before,.menu ul.padded li a.icon.error:before,.menu ul.padded li a.sel.error:before,.menu ul.padded li .menu-option[data-icon].error:before,.menu ul.padded li .menu-option.icon.error:before,.menu ul.padded li .menu-option.sel.error:before{color:var(--error-color)}.menu ul.padded li a.sel:not([data-icon]):before,.menu ul.padded li .menu-option.sel:not([data-icon]):before{content:\"check\"}.menu ul li a,.menu ul li .menu-option{margin:0 -14px;padding:10px 14px;color:#3f4d5a;text-decoration:none;white-space:nowrap;font-size:14px;cursor:default;-webkit-appearance:none}.menu ul li a:not(.flex),.menu ul li .menu-option:not(.flex){display:table !important;box-sizing:border-box;width:calc(100% + 28px)}body.ltr .menu ul li a:not(.flex),body.ltr .menu ul li .menu-option:not(.flex){text-align:left}body.rtl .menu ul li a:not(.flex),body.rtl .menu ul li .menu-option:not(.flex){text-align:right}.menu ul li a.sel,.menu ul li .menu-option.sel{cursor:default}.menu ul li a .shortcut,.menu ul li .menu-option .shortcut{padding:0 4px;border-radius:var(--medium-border-radius);box-shadow:0 0 0 1px rgba(81,95,108,.25),0 1px 3px -1px rgba(81,95,108,.5)}body.ltr .menu ul li a .shortcut,body.ltr .menu ul li .menu-option .shortcut{float:right}body.rtl .menu ul li a .shortcut,body.rtl .menu ul li .menu-option .shortcut{float:left}body.ltr .menu ul li a .shortcut,body.ltr .menu ul li .menu-option .shortcut{margin-left:14px}body.rtl .menu ul li a .shortcut,body.rtl .menu ul li .menu-option .shortcut{margin-right:14px}.menu>.flex{margin-top:10px;margin-bottom:10px;position:relative}body.ltr .menu>.flex.padded{margin-left:-14px}body.rtl .menu>.flex.padded{margin-right:-14px}body.ltr .menu>.flex.padded{padding-left:24px}body.rtl .menu>.flex.padded{padding-right:24px}.menu>.flex.padded.sel:before{position:absolute;top:36px;content:\"check\";font-size:14px;color:var(--light-text-color)}body.ltr .menu>.flex.padded.sel:before{left:7px}body.rtl .menu>.flex.padded.sel:before{right:7px}.menu hr{margin:5px -14px}.menu .go:after{color:inherit}.menubtn span.icon,.menu span.icon{display:inline-block;margin-top:-1px;width:10px;text-align:center;font-size:14px;color:var(--ui-control-color)}body.ltr .menubtn span.icon,body.ltr .menu span.icon{margin-right:10px}body.rtl .menubtn span.icon,body.rtl .menu span.icon{margin-left:10px}.menu:not(.menu--disclosure) ul li a:not(.sel):not(.disabled):hover,.menu:not(.menu--disclosure):not(:hover) ul li a:not(.disabled).hover{color:#fff;background-color:#606d7b;--text-color: var(--white);--light-text-color: var(--gray-100);--ui-control-color: var(--gray-050);--ui-control-hover-color: var(--gray-100);--ui-control-active-color: var(--gray-100)}.menu:not(.menu--disclosure) ul li a:not(.sel):not(.disabled):hover span.icon,.menu:not(.menu--disclosure) ul li a:not(.sel):not(.disabled):hover:before,.menu:not(.menu--disclosure):not(:hover) ul li a:not(.disabled).hover span.icon,.menu:not(.menu--disclosure):not(:hover) ul li a:not(.disabled).hover:before{color:var(--menu-option-active-color)}.menu:not(.menu--disclosure) ul li a:not(.sel):not(.disabled):hover.error,.menu:not(.menu--disclosure):not(:hover) ul li a:not(.disabled).hover.error{color:var(--menu-option-active-color) !important}body.ltr .menu hr.padded,body.ltr .menu h6.padded{margin-left:10px}body.rtl .menu hr.padded,body.rtl .menu h6.padded{margin-right:10px}.menu--disclosure ul li>a:hover,.menu--disclosure ul li>.menu-option:hover{color:#3f4d5a;background-color:#f3f7fc}body:not(.reduce-focus-visibility) .menu--disclosure ul li>a:focus,body.reduce-focus-visibility .menu--disclosure ul li>a:focus-visible,body:not(.reduce-focus-visibility) .menu--disclosure ul li>.menu-option:focus,body.reduce-focus-visibility .menu--disclosure ul li>.menu-option:focus-visible{box-shadow:inset 0 0 0 3px hsla(var(--dark-focus-hsl), 0.7)}.tagselect .elements{display:inline}.tagselect .element.small{clear:none}.tagselect .add{position:relative;z-index:1;display:inline-block;width:12em}body.ltr .tagselect .add{margin:7px 7px 0 0}body.rtl .tagselect .add{margin:7px 0 0 7px}body.ltr .tagselect .add .text{padding-right:30px}body.rtl .tagselect .add .text{padding-left:30px}.tagselect .add .spinner{position:absolute;top:0}body.ltr .tagselect .add .spinner{right:5px}body.rtl .tagselect .add .spinner{left:5px}body.ltr .tagselect.elementselect .element,body.rtl .tagselect.elementselect .element{float:none !important;display:inline-block}body.ltr .tagmenu ul li a{padding-left:26px}body.rtl .tagmenu ul li a{padding-right:26px}body.ltr .tagmenu ul li a:before{float:left}body.rtl .tagmenu ul li a:before{float:right}body.ltr .tagmenu ul li a:before{margin:3px 0 0 -18px}body.rtl .tagmenu ul li a:before{margin:3px -18px 0 0}.shadow-box{border-radius:var(--large-border-radius);border:1px solid var(--gray-200);box-shadow:0 1px 5px -1px rgba(31,41,51,.2)}table.shadow-box,table.editable{border-collapse:separate;border-spacing:0}table.shadow-box thead tr:first-child th:first-child,table.shadow-box thead tr:first-child th:first-child.disabled:after,table.shadow-box thead tr:first-child td:first-child,table.shadow-box thead tr:first-child td:first-child.disabled:after,table.shadow-box tbody:first-child tr:first-child th:first-child,table.shadow-box tbody:first-child tr:first-child th:first-child.disabled:after,table.shadow-box tbody:first-child tr:first-child td:first-child,table.shadow-box tbody:first-child tr:first-child td:first-child.disabled:after,table.shadow-box caption+tbody tr:first-child th:first-child,table.shadow-box caption+tbody tr:first-child th:first-child.disabled:after,table.shadow-box caption+tbody tr:first-child td:first-child,table.shadow-box caption+tbody tr:first-child td:first-child.disabled:after,table.editable thead tr:first-child th:first-child,table.editable thead tr:first-child th:first-child.disabled:after,table.editable thead tr:first-child td:first-child,table.editable thead tr:first-child td:first-child.disabled:after,table.editable tbody:first-child tr:first-child th:first-child,table.editable tbody:first-child tr:first-child th:first-child.disabled:after,table.editable tbody:first-child tr:first-child td:first-child,table.editable tbody:first-child tr:first-child td:first-child.disabled:after,table.editable caption+tbody tr:first-child th:first-child,table.editable caption+tbody tr:first-child th:first-child.disabled:after,table.editable caption+tbody tr:first-child td:first-child,table.editable caption+tbody tr:first-child td:first-child.disabled:after{border-top-left-radius:var(--medium-border-radius)}table.shadow-box thead tr:first-child th:last-child,table.shadow-box thead tr:first-child th:last-child.disabled:after,table.shadow-box thead tr:first-child td:last-child,table.shadow-box thead tr:first-child td:last-child.disabled:after,table.shadow-box tbody:first-child tr:first-child th:last-child,table.shadow-box tbody:first-child tr:first-child th:last-child.disabled:after,table.shadow-box tbody:first-child tr:first-child td:last-child,table.shadow-box tbody:first-child tr:first-child td:last-child.disabled:after,table.shadow-box caption+tbody tr:first-child th:last-child,table.shadow-box caption+tbody tr:first-child th:last-child.disabled:after,table.shadow-box caption+tbody tr:first-child td:last-child,table.shadow-box caption+tbody tr:first-child td:last-child.disabled:after,table.editable thead tr:first-child th:last-child,table.editable thead tr:first-child th:last-child.disabled:after,table.editable thead tr:first-child td:last-child,table.editable thead tr:first-child td:last-child.disabled:after,table.editable tbody:first-child tr:first-child th:last-child,table.editable tbody:first-child tr:first-child th:last-child.disabled:after,table.editable tbody:first-child tr:first-child td:last-child,table.editable tbody:first-child tr:first-child td:last-child.disabled:after,table.editable caption+tbody tr:first-child th:last-child,table.editable caption+tbody tr:first-child th:last-child.disabled:after,table.editable caption+tbody tr:first-child td:last-child,table.editable caption+tbody tr:first-child td:last-child.disabled:after{border-top-right-radius:var(--medium-border-radius)}table.shadow-box thead:last-child tr:last-child th:first-child,table.shadow-box thead:last-child tr:last-child th:first-child.disabled:after,table.shadow-box thead:last-child tr:last-child td:first-child,table.shadow-box thead:last-child tr:last-child td:first-child.disabled:after,table.shadow-box tbody:last-child tr:last-child th:first-child,table.shadow-box tbody:last-child tr:last-child th:first-child.disabled:after,table.shadow-box tbody:last-child tr:last-child td:first-child,table.shadow-box tbody:last-child tr:last-child td:first-child.disabled:after,table.editable thead:last-child tr:last-child th:first-child,table.editable thead:last-child tr:last-child th:first-child.disabled:after,table.editable thead:last-child tr:last-child td:first-child,table.editable thead:last-child tr:last-child td:first-child.disabled:after,table.editable tbody:last-child tr:last-child th:first-child,table.editable tbody:last-child tr:last-child th:first-child.disabled:after,table.editable tbody:last-child tr:last-child td:first-child,table.editable tbody:last-child tr:last-child td:first-child.disabled:after{border-bottom-left-radius:calc(var(--large-border-radius) - 1px)}table.shadow-box thead:last-child tr:last-child th:last-child,table.shadow-box thead:last-child tr:last-child th:last-child.disabled:after,table.shadow-box thead:last-child tr:last-child td:last-child,table.shadow-box thead:last-child tr:last-child td:last-child.disabled:after,table.shadow-box tbody:last-child tr:last-child th:last-child,table.shadow-box tbody:last-child tr:last-child th:last-child.disabled:after,table.shadow-box tbody:last-child tr:last-child td:last-child,table.shadow-box tbody:last-child tr:last-child td:last-child.disabled:after,table.editable thead:last-child tr:last-child th:last-child,table.editable thead:last-child tr:last-child th:last-child.disabled:after,table.editable thead:last-child tr:last-child td:last-child,table.editable thead:last-child tr:last-child td:last-child.disabled:after,table.editable tbody:last-child tr:last-child th:last-child,table.editable tbody:last-child tr:last-child th:last-child.disabled:after,table.editable tbody:last-child tr:last-child td:last-child,table.editable tbody:last-child tr:last-child td:last-child.disabled:after{border-bottom-right-radius:calc(var(--large-border-radius) - 1px)}.text,.passwordwrapper,.border-box,.matrix-configurator>.field>.input,.selectize.multiselect .selectize-input,.multiselect>select{border-radius:3px;border:1px solid rgba(96,125,159,.25);background-color:#fbfcfe;background-clip:padding-box}.text.focus,.passwordwrapper.focus,.border-box.focus,.selectize.multiselect .selectize-input.focus{box-shadow:var(--focus-ring)}body:not(.reduce-focus-visibility) .text:focus,body.reduce-focus-visibility .text:focus-visible,body:not(.reduce-focus-visibility) .passwordwrapper:focus,body.reduce-focus-visibility .passwordwrapper:focus-visible,body:not(.reduce-focus-visibility) .border-box:focus,body.reduce-focus-visibility .border-box:focus-visible,body:not(.reduce-focus-visibility) .selectize.multiselect .selectize-input:focus,body.reduce-focus-visibility .selectize.multiselect .selectize-input:focus-visible{box-shadow:var(--focus-ring)}input.text,textarea.text,.text>input,.text>textarea,table.editable textarea,.selectize.multiselect .selectize-input{font-size:14px;line-height:20px;color:var(--text-color);min-height:3px;box-sizing:border-box;appearance:none}.selectize.multiselect .selectize-input{line-height:18px}textarea.text.fullwidth{display:block}.multitext .multitextrow:after{content:\"\";display:block;height:0;clear:both;visibility:hidden}body.ltr .multitext .multitextrow:first-child .text:first-child{border-top-left-radius:var(--medium-border-radius)}body.rtl .multitext .multitextrow:first-child .text:first-child{border-top-right-radius:var(--medium-border-radius)}body.ltr .multitext .multitextrow:first-child .text:last-child{border-top-right-radius:var(--medium-border-radius)}body.rtl .multitext .multitextrow:first-child .text:last-child{border-top-left-radius:var(--medium-border-radius)}body.ltr .multitext .multitextrow:last-child .text:first-child{border-bottom-left-radius:var(--medium-border-radius)}body.rtl .multitext .multitextrow:last-child .text:first-child{border-bottom-right-radius:var(--medium-border-radius)}body.ltr .multitext .multitextrow:last-child .text:last-child{border-bottom-right-radius:var(--medium-border-radius)}body.rtl .multitext .multitextrow:last-child .text:last-child{border-bottom-left-radius:var(--medium-border-radius)}.multitext .multitextrow:not(:first-child) .text{margin-top:-1px}.multitext .multitextrow .text{border-radius:0;float:left;box-sizing:border-box}body.ltr .multitext .multitextrow .text:not(:first-child){margin-left:-1px}body.rtl .multitext .multitextrow .text:not(:first-child){margin-right:-1px}.multitext .multitextrow .text:first-child:nth-last-child(1){width:100%}.multitext .multitextrow .text:first-child:nth-last-child(2){width:50%}.multitext .multitextrow .text:first-child:nth-last-child(2)~.text{width:calc(50% + 1px)}.multitext .multitextrow .text.error{position:relative;z-index:1}.multitext .multitextrow .text:focus,.multitext .multitextrow .selectize.multiselect .selectize-input.focus{position:relative;z-index:2}.chars-left{position:relative;color:var(--light-text-color)}body.ltr .chars-left{float:right}body.rtl .chars-left{float:left}body.ltr .chars-left{margin:-27px 7px 0 0}body.rtl .chars-left{margin:-27px 0 0 7px}.input.ltr>.chars-left{float:right !important;margin-right:7px !important}.input.rtl>.chars-left{float:left !important;margin-left:7px !important}.chars-left.negative-chars-left{color:var(--error-color)}.field,fieldset{position:relative;margin:24px 0}.flex>.field,.flex>fieldset{margin-top:0;margin-bottom:0}.field{min-inline-size:initial}.field>.status-badge{position:absolute;top:0;width:2px;height:100%;content:\"\";cursor:help}body.ltr .field>.status-badge{left:0}body.rtl .field>.status-badge{right:0}.field>.status-badge.modified{background-color:var(--blue-600)}.field>.status-badge.outdated{background-color:var(--pending-color)}.field>.heading{display:flex;flex-wrap:wrap;align-items:center;position:relative;margin-top:-5px;margin-bottom:5px}.field>.heading>label,.field>.heading>legend{font-weight:bold;color:var(--medium-dark-text-color)}.field>.heading>label code,.field>.heading>legend code{font-size:1em !important}body.ltr .field>.heading>label .info,body.ltr .field>.heading>legend .info{margin-left:5px}body.rtl .field>.heading>label .info,body.rtl .field>.heading>legend .info{margin-right:5px}.field>.heading .t9n-indicator{color:var(--light-text-color)}body.ltr .field>.heading .t9n-indicator{margin-left:7px}body.rtl .field>.heading .t9n-indicator{margin-right:7px}.field>.heading+.instructions{margin-top:-3px}.field>.heading>.instructions{width:100%}.field>.instructions{margin-bottom:5px}.field>.input{position:relative}.field>.input:after{content:\"\";display:block;height:0;clear:both;visibility:hidden}.field>.input+.instructions{margin:5px 0 0}.field>.notice,.field>.warning{margin:5px 0 0}.field>.instructions,.field>.heading>.instructions,.checkboxfield .instructions{color:var(--medium-text-color)}.field>.instructions img,.field>.instructions video,.field>.instructions embed,.field>.instructions iframe,.field>.heading>.instructions img,.field>.heading>.instructions video,.field>.heading>.instructions embed,.field>.heading>.instructions iframe,.checkboxfield .instructions img,.checkboxfield .instructions video,.checkboxfield .instructions embed,.checkboxfield .instructions iframe{max-width:100% !important}.field>.instructions ul,.field>.instructions ol,.field>.heading>.instructions ul,.field>.heading>.instructions ol,.checkboxfield .instructions ul,.checkboxfield .instructions ol{margin:1em 0}body.ltr .field>.instructions ul,body.ltr .field>.instructions ol,body.ltr .field>.heading>.instructions ul,body.ltr .field>.heading>.instructions ol,body.ltr .checkboxfield .instructions ul,body.ltr .checkboxfield .instructions ol{padding-left:2em}body.rtl .field>.instructions ul,body.rtl .field>.instructions ol,body.rtl .field>.heading>.instructions ul,body.rtl .field>.heading>.instructions ol,body.rtl .checkboxfield .instructions ul,body.rtl .checkboxfield .instructions ol{padding-right:2em}.field>.instructions ul li,.field>.heading>.instructions ul li,.checkboxfield .instructions ul li{list-style-type:disc}.field>.instructions li+li,.field>.heading>.instructions li+li,.checkboxfield .instructions li+li{margin-top:.25em}.expand-status-btn{width:30px;height:17px;padding:0;line-height:16px;border-radius:var(--small-border-radius);color:var(--text-color)}body.ltr .expand-status-btn{margin-left:5px}body.rtl .expand-status-btn{margin-right:5px}.expand-status-btn:before{margin:0}.nested-fields{margin:-24px;padding:24px 24px 0}.nested-fields.hidden{display:block;height:0}.nested-fields>.field:last-child{padding-bottom:24px}input.checkbox{opacity:0;position:absolute;width:var(--checkbox-size);height:var(--checkbox-size)}input.checkbox+label,div.checkbox{display:inline-block;clear:none;position:relative;line-height:16px;height:16px;cursor:pointer}body.ltr input.checkbox+label,body.ltr div.checkbox{padding-left:21px}body.rtl input.checkbox+label,body.rtl div.checkbox{padding-right:21px}input.checkbox+label .info,div.checkbox .info{height:16px}input.checkbox:disabled+label,.disabled div.checkbox{cursor:default}body.ltr input.checkbox+label:empty,body.ltr div.checkbox:empty{padding-left:var(--checkbox-size)}body.rtl input.checkbox+label:empty,body.rtl div.checkbox:empty{padding-right:var(--checkbox-size)}input.checkbox+label:empty:after,div.checkbox:empty:after{content:\"\";font-size:0}input.checkbox+label:before,div.checkbox:before{display:block;position:absolute;top:0;width:var(--checkbox-size) !important;height:var(--checkbox-size);box-sizing:border-box;content:\"\";font-size:0;background-color:#fbfcfe;border:1px solid rgba(96,125,159,.4);background-clip:padding-box;border-radius:var(--small-border-radius)}body.ltr input.checkbox+label:before,body.ltr div.checkbox:before{left:0}body.rtl input.checkbox+label:before,body.rtl div.checkbox:before{right:0}input.checkbox:disabled+label,div.checkbox.disabled:before,div.checkbox.disabled+label{opacity:.25}input.checkbox:checked+label:before,div.checkbox.checked:before,.sel div.checkbox:before,input.checkbox:indeterminate+label:before,div.checkbox.indeterminate:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);line-height:var(--checkbox-size);color:var(--gray-900)}input.checkbox:checked:not(:indeterminate)+label:before,div.checkbox.checked:not(.indeterminate):before,.sel div.checkbox:not(.indeterminate):before{content:\"check\";font-size:15px}input.checkbox:indeterminate+label:before,div.checkbox.indeterminate:before{content:\"minus\";font-size:7px;text-align:center}body:not(.reduce-focus-visibility) input.checkbox:focus+label:before,body:not(.reduce-focus-visibility) :focus div.checkbox:before{box-shadow:var(--focus-ring)}body.reduce-focus-visibility input.checkbox:focus-visible+label:before,body.reduce-focus-visibility :focus-visible div.checkbox:before{box-shadow:var(--focus-ring)}.checkbox-icon:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);line-height:var(--checkbox-size);color:var(--enabled-color);content:\"check\";font-size:15px}body:not(.reduce-focus-visibility) .monaco-mouse-cursor-text:focus,body.reduce-focus-visibility .monaco-mouse-cursor-text:focus-visible{box-shadow:none !important}fieldset .checkboxfield{margin:5px 0}.checkboxfield .instructions,.checkboxfield .notice,.checkboxfield .warning{margin-top:2px}body.ltr .checkboxfield .instructions,body.ltr .checkboxfield .notice,body.ltr .checkboxfield .warning{padding-left:21px}body.rtl .checkboxfield .instructions,body.rtl .checkboxfield .notice,body.rtl .checkboxfield .warning{padding-right:21px}input.radio{opacity:0;position:absolute;width:var(--radio-size);height:var(--radio-size)}input.radio+label,div.radio{display:inline-block;clear:none;position:relative;line-height:1.7142857143;cursor:pointer}body.ltr input.radio+label,body.ltr div.radio{padding-left:21px}body.rtl input.radio+label,body.rtl div.radio{padding-right:21px}input.radio:disabled+label,.disabled div.radio{cursor:default}body.ltr input.radio+label:empty,body.ltr div.radio:empty{padding-left:var(--radio-size)}body.rtl input.radio+label:empty,body.rtl div.radio:empty{padding-right:var(--radio-size)}input.radio+label:before,input.radio+label:after,div.radio:before,div.radio:after{display:block;position:absolute;content:\"\";box-sizing:border-box;background-clip:padding-box;border-radius:100%}input.radio+label:before,div.radio:before{top:50%;left:0;transform:translateY(-50%);width:var(--radio-size);height:var(--radio-size);background-color:#fbfcfe;border:1px solid rgba(96,125,159,.4)}input.radio+label:after,div.radio:after{top:50%;left:4px;transform:translateY(-50%);width:calc(var(--radio-size) - 8px);height:calc(var(--radio-size) - 8px)}input.radio:disabled+label,div.radio.disabled:before,div.radio.disabled+label{opacity:.25}input.radio:checked+label:after,div.radio.checked:after,.sel div.radio:after{background:var(--gray-900)}body:not(.reduce-focus-visibility) input.radio:focus+label:before,body:not(.reduce-focus-visibility) :focus div.radio:before{box-shadow:var(--focus-ring)}body.reduce-focus-visibility input.radio:focus-visible+label:before,body.reduce-focus-visibility :focus-visible div.radio:before{box-shadow:var(--focus-ring)}.multiselect>select{color:var(--text-color);font-size:14px;appearance:none}body:not(.reduce-focus-visibility) .multiselect>select:focus,body.reduce-focus-visibility .multiselect>select:focus-visible{box-shadow:var(--focus-ring)}.multiselect>select option{padding:1px 8px}.text,.selectize.multiselect .selectize-input{padding:6px 9px}.text{background-color:var(--white)}.text:not(.small){box-sizing:border-box;min-height:34px}.text.small{padding:3px}.text.readable{padding:16px 18px;font-size:16px;line-height:22px}.text.readable+.chars-left{margin-top:-23px}body.ltr .text.clearable{padding-right:var(--touch-target-size)}body.rtl .text.clearable{padding-left:var(--touch-target-size)}.text input{margin:0;padding:0;border:none;background-color:rgba(0,0,0,0)}.input.errors>.text,.input.errors>.border-box,.input.errors>.passwordwrapper,.input.errors>.autosuggest-container .text,.text.error{border:1px solid var(--error-color) !important}.texticon{position:relative;cursor:text;min-width:130px}.texticon.icon:before{position:absolute;top:9px;color:var(--ui-control-color)}body.ltr .texticon.icon:before{left:9px}body.rtl .texticon.icon:before{right:9px}body.ltr .texticon.icon .text{padding-left:26px}body.rtl .texticon.icon .text{padding-right:26px}.texticon .clear-btn{position:absolute;top:calc((var(--touch-target-size) - 34px)/-2);width:var(--touch-target-size);height:var(--touch-target-size)}body.ltr .texticon .clear-btn{right:0}body.rtl .texticon .clear-btn{left:0}body.ltr .texticon.has-filter-btn .text{padding-right:26px}body.rtl .texticon.has-filter-btn .text{padding-left:26px}.texticon.has-filter-btn .filter-btn{position:absolute;top:4px;padding:0 7px 4px;font-size:14px;line-height:22px;cursor:pointer;border-radius:13px}body.ltr .texticon.has-filter-btn .filter-btn{right:4px}body.rtl .texticon.has-filter-btn .filter-btn{left:4px}.texticon.has-filter-btn .filter-btn:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"filter\";color:var(--medium-text-color)}.texticon.has-filter-btn .filter-btn:hover{background-color:var(--gray-100)}.texticon.has-filter-btn .filter-btn:active,.texticon.has-filter-btn .filter-btn.active{background-color:var(--gray-350)}.texticon.has-filter-btn .filter-btn:active:before,.texticon.has-filter-btn .filter-btn.active:before{color:var(--white)}body.ltr .texticon.has-filter-btn .text{padding-left:26px}body.rtl .texticon.has-filter-btn .text{padding-right:26px}body.ltr .texticon.has-filter-btn .text.clearable{padding-right:calc(30px + var(--touch-target-size))}body.rtl .texticon.has-filter-btn .text.clearable{padding-left:calc(30px + var(--touch-target-size))}body.ltr .texticon.has-filter-btn .clear-btn{right:30px}body.rtl .texticon.has-filter-btn .clear-btn{left:30px}.texthint-container{position:relative;height:0}.texthint{position:absolute;top:-1px;width:100%;color:var(--light-text-color);cursor:text}.passwordwrapper{position:relative}.passwordwrapper .password{border:none;background:rgba(0,0,0,0);padding-right:4rem;box-shadow:none}.passwordwrapper .password-toggle{color:var(--link-color);position:absolute;top:0;bottom:0;cursor:pointer}body.ltr .passwordwrapper .password-toggle{right:9px}body.rtl .passwordwrapper .password-toggle{left:9px}.passwordwrapper .password-toggle:hover{text-decoration:underline}.datetimewrapper{display:flex;flex-direction:row;align-items:center}body.ltr .datetimewrapper>.datewrapper+.timewrapper,body.ltr .datetimewrapper>.timewrapper+.timezone,body.ltr .datetimewrapper>.select{margin-left:5px}body.rtl .datetimewrapper>.datewrapper+.timewrapper,body.rtl .datetimewrapper>.timewrapper+.timezone,body.rtl .datetimewrapper>.select{margin-right:5px}.clear-btn{display:flex;justify-content:center;align-items:center;width:24px;cursor:pointer;color:var(--ui-control-color);border:none;padding:0;background:rgba(0,0,0,0)}.clear-btn:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"remove\"}.clear-btn:hover{color:var(--ui-control-hover-color)}.clear-btn:active{color:var(--ui-control-active-color)}.close-btn{position:relative}.close-btn:before,.close-btn:after{position:absolute;content:\"\";top:50%;left:50%;height:15px;width:2px;background-color:var(--ui-control-color);opacity:var(--icon-opacity)}.close-btn:before{transform:translate(-50%, -50%) rotate(-45deg)}.close-btn:after{transform:translate(-50%, -50%) rotate(45deg)}.close-btn:hover:before,.close-btn:hover:after{background-color:var(--ui-control-hover-color)}.close-btn:active:before,.close-btn:active:after{background-color:var(--ui-control-active-color)}.datewrapper,.timewrapper{display:inline-block;position:relative}.datewrapper .text,.timewrapper .text{position:relative;z-index:1;width:100%}.datewrapper .text+div[data-icon],.timewrapper .text+div[data-icon]{display:none}.datewrapper .text:placeholder-shown+div[data-icon],.datewrapper .text.empty-value+div[data-icon],.timewrapper .text:placeholder-shown+div[data-icon],.timewrapper .text.empty-value+div[data-icon]{display:block;position:absolute;top:calc(50% - 12px);z-index:0;color:var(--light-text-color)}body.ltr .datewrapper .text:placeholder-shown+div[data-icon],body.ltr .datewrapper .text.empty-value+div[data-icon],body.ltr .timewrapper .text:placeholder-shown+div[data-icon],body.ltr .timewrapper .text.empty-value+div[data-icon]{left:14px}body.rtl .datewrapper .text:placeholder-shown+div[data-icon],body.rtl .datewrapper .text.empty-value+div[data-icon],body.rtl .timewrapper .text:placeholder-shown+div[data-icon],body.rtl .timewrapper .text.empty-value+div[data-icon]{right:14px}.datewrapper .text:placeholder-shown+div[data-icon],.datewrapper .text:placeholder-shown+div[data-icon]:before,.datewrapper .text.empty-value+div[data-icon],.datewrapper .text.empty-value+div[data-icon]:before,.timewrapper .text:placeholder-shown+div[data-icon],.timewrapper .text:placeholder-shown+div[data-icon]:before,.timewrapper .text.empty-value+div[data-icon],.timewrapper .text.empty-value+div[data-icon]:before{user-select:none;pointer-events:none;z-index:1}.datewrapper{width:8em}.timewrapper{width:7em}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:var(--gray-400)}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:var(--gray-400)}input::-ms-input-placeholder,textarea::-ms-input-placeholder{color:var(--gray-400)}input:-moz-placeholder,textarea:-moz-placeholder{color:var(--gray-400)}input::-moz-placeholder,textarea::-moz-placeholder{color:var(--gray-400)}input::placeholder,textarea::placeholder{color:var(--gray-400)}::-ms-reveal,::-ms-clear{display:none}tr.indexingSession td{height:34px;padding:1px 10px}tr.indexingSession td.progress div.progressContainer{width:100%;display:flex;justify-content:space-between;align-items:center}tr.indexingSession td.progress div.progressContainer .progressbar{width:70%;position:relative;left:0;height:12px;z-index:1}tr.indexingSession td.progress div.progressContainer div.progressInfo{width:20%}.select:not(.selectize),.select:not(.selectize) select{position:relative;border-radius:5px;white-space:nowrap}.select:not(.selectize){max-width:100%;position:relative}:not(.flex)>.select:not(.selectize){display:inline-block}.select:not(.selectize):after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid currentColor;border-width:0 2px 2px 0;opacity:.8;transform:rotate(45deg);position:absolute;z-index:1;top:calc(50% - 5px);user-select:none;pointer-events:none}body.ltr .select:not(.selectize):after{right:9px}body.rtl .select:not(.selectize):after{left:9px}.select:not(.selectize) select{display:block;position:relative;max-width:100%;border:none;font-size:14px;line-height:20px;color:#3f4d5a;background-color:#dfe5ec;appearance:none;white-space:pre}body.ltr .select:not(.selectize) select{padding:7px 22px 7px 10px}body.rtl .select:not(.selectize) select{padding:7px 10px 7px 22px}.select:not(.selectize) select::-ms-expand{display:none}.select:not(.selectize).fullwidth select{min-width:100%}.select:not(.selectize) select:hover{outline-color:rgba(0,0,0,0);background-color:#cfd8e2;box-shadow:var(--focus-ring)}body:not(.reduce-focus-visibility) .select:not(.selectize) select:focus,body.reduce-focus-visibility .select:not(.selectize) select:focus-visible{outline-color:rgba(0,0,0,0);background-color:#cfd8e2;box-shadow:var(--focus-ring)}.select:not(.selectize).small:after{top:9px}.select:not(.selectize).small select{padding-top:4px !important;padding-bottom:4px !important;font-size:11px}.selectize .selectize-input{display:block;border-color:inherit;box-shadow:none;background-color:rgba(0,0,0,0)}.selectize.select .selectize-input:after{display:none}body .selectize-dropdown{border:none;z-index:100}.selectize.select{height:34px}.selectize.select input::-webkit-input-placeholder,.selectize.select textarea::-webkit-input-placeholder{color:var(--gray-700)}.selectize.select input:-ms-input-placeholder,.selectize.select textarea:-ms-input-placeholder{color:var(--gray-700)}.selectize.select input::-ms-input-placeholder,.selectize.select textarea::-ms-input-placeholder{color:var(--gray-700)}.selectize.select input:-moz-placeholder,.selectize.select textarea:-moz-placeholder{color:var(--gray-700)}.selectize.select input::-moz-placeholder,.selectize.select textarea::-moz-placeholder{color:var(--gray-700)}.selectize.select input::placeholder,.selectize.select textarea::placeholder{color:var(--gray-700)}.selectize.select:not(.fullwidth){width:25em}.selectize.select .selectize-control{max-width:100%;position:relative}:not(.flex)>.selectize.select .selectize-control{display:inline-block}.selectize.select .selectize-control:after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid currentColor;border-width:0 2px 2px 0;opacity:.8;transform:rotate(45deg);position:absolute;z-index:1;top:calc(50% - 5px);user-select:none;pointer-events:none}body.ltr .selectize.select .selectize-control:after{right:9px}body.rtl .selectize.select .selectize-control:after{left:9px}.selectize.select .selectize-input{position:relative;border-radius:5px;white-space:nowrap}.selectize.select .selectize-input.focus{box-shadow:var(--focus-ring)}.selectize.select .selectize-input{display:block;position:relative;max-width:100%;border:none;font-size:14px;line-height:20px;color:#3f4d5a;background-color:#dfe5ec;appearance:none}body.ltr .selectize.select .selectize-input{padding:7px 22px 7px 10px}body.rtl .selectize.select .selectize-input{padding:7px 10px 7px 22px}.selectize.select .selectize-input::-ms-expand{display:none}.selectize.select .selectize-control,.selectize.select .selectize-input{width:100%}.selectize.multiselect .selectize-input{min-height:34px;padding-bottom:3px}.selectize.multiselect .selectize-input.focus{box-shadow:var(--focus-ring)}.selectize.multiselect .selectize-input>.item{display:inline-block;border-radius:3px;padding:3px 7px;font-size:12px;line-height:14px;color:#3f4d5a;background-color:#e4edf6;display:inline-flex;flex-direction:row;padding:3px 7px !important}.selectize.multiselect .selectize-input>.item.active{background-color:#cdd8e4}.selectize.multiselect .selectize-input>.item>.remove{position:static;border-left:none;padding:0;font-size:0;color:var(--ui-control-color)}body.ltr .selectize.multiselect .selectize-input>.item>.remove{margin:-1px -3px 0 3px}body.rtl .selectize.multiselect .selectize-input>.item>.remove{margin:-1px 3px 0 -3px}.selectize.multiselect .selectize-input>.item>.remove:hover{color:var(--ui-control-hover-color);background-color:rgba(0,0,0,0)}.selectize.multiselect .selectize-input>.item>.remove:before{font-size:14px;font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"remove\"}body .selectize-dropdown{margin-top:1px}body .selectize-dropdown-content{z-index:100;border-radius:4px;padding:0 14px;overflow:auto;background:#fff;user-select:none;box-shadow:0 0 0 1px rgba(31,41,51,.1),0 5px 20px rgba(31,41,51,.25)}body .selectize-dropdown-content .option{min-height:18px}body .selectize-dropdown-content>div[data-value=new]:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"plus\";margin-right:5px}body .selectize-dropdown-content>div[data-value=new]:after{content:\"…\"}body .selectize-dropdown [data-selectable],body .selectize-dropdown .optgroup-header{margin:0 -14px;padding:10px 14px;color:#3f4d5a;text-decoration:none;white-space:nowrap}body .selectize-dropdown .optgroup-header{margin:14px 0 3px;font-size:11px;line-height:1.2;color:#606d7b;text-transform:uppercase;margin:0;padding:4px 0}body .selectize-dropdown .active{color:#fff;background-color:#606d7b}body .selectize-dropdown .active .light{color:inherit !important}.ui-datepicker{position:fixed;top:-300px;-padding:10px;width:210px;height:242px;z-index:101 !important}body.ltr .ui-datepicker{margin-left:1px}body.rtl .ui-datepicker{margin-right:1px}.ui-datepicker-header{padding:8px 8px 4px}body.ltr .ui-datepicker-prev{float:left}body.rtl .ui-datepicker-prev{float:right}body.ltr .ui-datepicker-next{float:right}body.rtl .ui-datepicker-next{float:left}.ui-datepicker-prev span,.ui-datepicker-next span{display:none}.ui-datepicker-prev,.ui-datepicker-next{width:20px;height:20px;display:flex;align-items:center;justify-content:center}.ui-datepicker-prev:hover:after,.ui-datepicker-next:hover:after{border-color:var(--link-color)}.ui-datepicker-prev:after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid currentColor;border-width:0 2px 2px 0;opacity:.8}body.ltr .ui-datepicker-prev:after{transform:rotate(135deg)}body.rtl .ui-datepicker-prev:after{transform:rotate(-45deg)}.ui-datepicker-next:after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid currentColor;border-width:0 2px 2px 0;opacity:.8}body.ltr .ui-datepicker-next:after{transform:rotate(-45deg)}body.rtl .ui-datepicker-next:after{transform:rotate(135deg)}.ui-datepicker-title{text-align:center}.ui-datepicker-calendar th,.ui-datepicker-calendar td{padding:2px !important}.ui-datepicker-calendar th span,.ui-datepicker-calendar td a{display:block;width:1.625rem;line-height:26px;text-align:center;color:var(--text-color)}.ui-datepicker-calendar th span{color:var(--medium-text-color);font-weight:normal}.ui-datepicker-calendar td a{border-radius:2px}.ui-datepicker-calendar td a:hover{background-color:var(--light-sel-color);text-decoration:none}.ui-datepicker-calendar td a.ui-state-active{background-color:var(--dark-sel-color);color:var(--white);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-weight:500;cursor:default}.ui-datepicker-calendar td.ui-datepicker-today a{border-radius:13px;box-shadow:inset 0 0 0 2px var(--light-sel-color)}.ui-timepicker-wrapper{z-index:101}.ui-timepicker-list{overflow-y:auto;width:calc(14px + 6em);height:210px;z-index:100}body.ltr .ui-timepicker-list{margin-left:1px}body.rtl .ui-timepicker-list{margin-right:1px}.ui-timepicker-list li{white-space:nowrap;cursor:pointer}body.ltr .ui-timepicker-list li{padding:2px 0 2px 14px}body.rtl .ui-timepicker-list li{padding:2px 14px 2px 0}.ui-timepicker-list li:hover{background-color:var(--light-sel-color)}.ui-timepicker-list li.ui-timepicker-selected{background-color:var(--dark-sel-color);color:var(--white);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-weight:500;cursor:default}.slide-picker{display:flex;height:15px;white-space:nowrap}.slide-picker a{border:1px solid var(--hairline-color);background-image:none;width:7px;height:13px;margin-left:0;display:inline-block;margin-top:1px;margin-bottom:1px;box-sizing:border-box}body.ltr .slide-picker a{border-left:none}body.rtl .slide-picker a{border-right:none}.slide-picker a:first-child{width:8px}body.ltr .slide-picker a:first-child{border-left:1px solid var(--gray-400) !important}body.rtl .slide-picker a:first-child{border-right:1px solid var(--gray-400) !important}.slide-picker:not(:hover) a.active,.slide-picker:hover a.active-hover{border-top-color:var(--gray-400);border-bottom-color:var(--gray-400);height:15px;margin-top:0;margin-bottom:0}body.ltr .slide-picker:not(:hover) a.active:first-child,body.ltr .slide-picker:hover a.active-hover:first-child{border-left:1px solid var(--gray-400)}body.rtl .slide-picker:not(:hover) a.active:first-child,body.rtl .slide-picker:hover a.active-hover:first-child{border-right:1px solid var(--gray-400)}body.ltr .slide-picker:not(:hover) a.active:first-child,body.ltr .slide-picker:hover a.active-hover:first-child{border-top-left-radius:var(--small-border-radius)}body.rtl .slide-picker:not(:hover) a.active:first-child,body.rtl .slide-picker:hover a.active-hover:first-child{border-top-right-radius:var(--small-border-radius)}body.ltr .slide-picker:not(:hover) a.active:first-child,body.ltr .slide-picker:hover a.active-hover:first-child{border-bottom-left-radius:var(--small-border-radius)}body.rtl .slide-picker:not(:hover) a.active:first-child,body.rtl .slide-picker:hover a.active-hover:first-child{border-bottom-right-radius:var(--small-border-radius)}body.ltr .slide-picker:not(:hover) a.last-active,body.ltr .slide-picker:hover a.last-active-hover{border-right:1px solid var(--gray-400)}body.rtl .slide-picker:not(:hover) a.last-active,body.rtl .slide-picker:hover a.last-active-hover{border-left:1px solid var(--gray-400)}body.ltr .slide-picker:not(:hover) a.last-active,body.ltr .slide-picker:hover a.last-active-hover{border-top-right-radius:var(--small-border-radius)}body.rtl .slide-picker:not(:hover) a.last-active,body.rtl .slide-picker:hover a.last-active-hover{border-top-left-radius:var(--small-border-radius)}body.ltr .slide-picker:not(:hover) a.last-active,body.ltr .slide-picker:hover a.last-active-hover{border-bottom-right-radius:var(--small-border-radius)}body.rtl .slide-picker:not(:hover) a.last-active,body.rtl .slide-picker:hover a.last-active-hover{border-bottom-left-radius:var(--small-border-radius)}.slide-picker:focus a.active{background-color:var(--light-sel-color)}ul.errors{margin-top:5px;list-style-type:square}body.ltr ul.errors{padding-left:20px}body.rtl ul.errors{padding-right:20px}ul.errors li{color:var(--error-color)}.message-container{position:absolute;z-index:100;top:0;width:100%;height:100%}body.ltr .message-container{left:0}body.rtl .message-container{right:0}.message-container.no-access{background-color:rgba(31,41,51,.5)}.message-container .pane{top:50%;margin-top:-33px !important;margin-left:auto;margin-right:auto;width:320px;box-shadow:0 25px 100px rgba(31,41,51,.5)}.autosuggest-container{position:relative}.autosuggest__results-container{position:absolute;z-index:2;width:100%;border-radius:var(--large-border-radius);background-color:var(--white);box-shadow:0 1px 5px -1px rgba(31,41,51,.2);box-sizing:border-box;padding:0 14px;text-align:left;font-family:system-ui,BlinkMacSystemFont,-apple-system,\"Segoe UI\",\"Roboto\",\"Oxygen\",\"Ubuntu\",\"Cantarell\",\"Fira Sans\",\"Droid Sans\",\"Helvetica Neue\",sans-serif;font-size:1em !important}.autosuggest__results-container .autosuggest__results-before{margin:14px 0 3px;font-size:11px;line-height:1.2;color:#606d7b;text-transform:uppercase;margin-top:14px !important}.autosuggest__results-container .autosuggest__results-item{margin:0 -14px;padding:10px 14px;color:#3f4d5a;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autosuggest__results-container .autosuggest__results-item:hover,.autosuggest__results-container .autosuggest__results-item.autosuggest__results-item--highlighted{color:#fff;background-color:#606d7b;cursor:pointer}.matrix-configurator>.field{max-width:none}.matrix-configurator>.field>.input{display:flex;align-items:stretch;background-color:var(--gray-050);box-shadow:none}.matrix-configurator .mc-sidebar{box-sizing:border-box}.matrix-configurator .mc-sidebar .mc-col-items{margin-top:-1px;padding-top:1px}.matrix-configurator .mc-sidebar.block-types{width:200px}body.ltr .matrix-configurator .mc-sidebar.block-types{border-top-left-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-sidebar.block-types{border-top-right-radius:var(--small-border-radius)}body.ltr .matrix-configurator .mc-sidebar.block-types{border-bottom-left-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-sidebar.block-types{border-bottom-right-radius:var(--small-border-radius)}body.ltr .matrix-configurator .mc-sidebar.block-types>.mc-col-inner-container>.mc-col-heading{border-top-left-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-sidebar.block-types>.mc-col-inner-container>.mc-col-heading{border-top-right-radius:var(--small-border-radius)}.matrix-configurator .mc-sidebar.block-types>.mc-col-inner-container>.mc-col-items .btn{margin:14px}.matrix-configurator .mc-sidebar.mc-fields{width:240px;z-index:1;background:#fff;box-shadow:-1px 0 0 0 rgba(31,41,51,.1),1px 0 0 0 rgba(31,41,51,.1)}.matrix-configurator .mc-sidebar.mc-fields .mc-col-items{padding:14px}.matrix-configurator .mc-sidebar.mc-fields .mc-col-items .btn{margin-top:14px}.matrix-configurator .mc-sidebar>.mc-col-inner-container>.mc-col-heading,.matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-heading{margin:0;padding:7px 14px 6px;border-bottom:1px solid var(--hairline-color);background-color:var(--gray-050);background-image:linear-gradient(rgba(51, 64, 77, 0), rgba(51, 64, 77, 0.05))}.matrix-configurator .mc-field-settings{flex:1;position:relative}body.ltr .matrix-configurator .mc-field-settings{border-top-right-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-field-settings{border-top-left-radius:var(--small-border-radius)}body.ltr .matrix-configurator .mc-field-settings{border-bottom-right-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-field-settings{border-bottom-left-radius:var(--small-border-radius)}.matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-heading{padding-left:24px;padding-right:24px}body.ltr .matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-heading{border-top-right-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-heading{border-top-left-radius:var(--small-border-radius)}.matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-items{padding:24px}.matrixconfigitem{position:relative;display:flex;align-items:center;user-select:none;cursor:default;min-height:48px;box-sizing:border-box}.matrixconfigitem.mci-blocktype{margin-top:-1px;padding:8px 14px;border:solid var(--hairline-color);border-width:1px 0;background-color:var(--gray-100)}.matrixconfigitem.mci-blocktype.sel{z-index:1;background-color:var(--gray-200)}.matrixconfigitem.mci-field{border-radius:var(--medium-border-radius);padding:7px 10px;background-color:var(--gray-100)}.matrixconfigitem.mci-field.sel{background-color:var(--gray-200)}.matrixconfigitem.mci-field.sel .slide-picker:focus a.active{background-color:#5f6c79}.matrixconfigitem.mci-field+.mci-field{margin-top:7px}.matrixconfigitem .mci-name{flex:1;overflow:hidden}.matrixconfigitem .mci-name h4,.matrixconfigitem .mci-name .smalltext{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.matrixconfigitem .mci-name h4{margin-bottom:2px;font-weight:normal;color:var(--text-color)}.matrixconfigitem .mci-name h4.mci-required:after{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"asterisk\";font-size:8px}body.ltr .matrixconfigitem .mci-name h4.mci-required:after{margin:-2px 0 0 4px}body.rtl .matrixconfigitem .mci-name h4.mci-required:after{margin:-2px 4px 0 0}.matrixconfigitem.error .mci-name h4{color:var(--error-color)}body.ltr .matrixconfigitem .slide-picker,body.ltr .matrixconfigitem .icon{margin-left:7px}body.rtl .matrixconfigitem .slide-picker,body.rtl .matrixconfigitem .icon{margin-right:7px}.matrixconfigitem .icon{display:block}.matrixconfigitem .icon:not(.error):before{color:var(--ui-control-color)}.matrixconfigitem .icon:not(.error):hover:before{color:var(--ui-control-hover-color)}.matrixconfigitem .icon:not(.error):active:before{color:var(--ui-control-active-color)}.matrixconfigitem .icon.error:before{color:var(--error-color)}.matrix>.buttons{margin-top:10px}.matrixblock{position:relative;margin-bottom:10px;padding:0 var(--m) var(--m);border-radius:var(--large-border-radius);border:1px solid var(--hairline-color);background-color:var(--gray-050)}.matrixblock.static{padding-top:14px}.matrixblock .flex-fields{--row-gap: var(--m) !important}.matrixblock>.titlebar{margin:0 -14px;width:calc(100% + 28px);box-sizing:border-box;border-radius:calc(var(--large-border-radius) - 1px) calc(var(--large-border-radius) - 1px) 0 0;color:var(--light-text-color);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-wrap:normal;cursor:default;user-select:none;position:relative;background-color:#ebf2fa}body.ltr .matrixblock>.titlebar{padding:5px 70px 5px 35px}body.rtl .matrixblock>.titlebar{padding:5px 35px 5px 70px}.matrixblock>.titlebar:after{display:block;content:\"\";position:absolute;bottom:-1px;left:14px;width:calc(100% - 28px);height:1px;background-color:var(--hairline-color)}.matrixblock>.titlebar>.blocktype{display:inline;color:var(--medium-text-color)}.matrixblock>.titlebar>.preview{display:inline;opacity:0;transition:opacity linear 100ms}body.ltr .matrixblock>.titlebar>.preview{margin-left:7px}body.rtl .matrixblock>.titlebar>.preview{margin-right:7px}.matrixblock>.titlebar>.preview span{opacity:.5}.matrixblock.disabled{opacity:1}body.ltr .matrixblock.disabled>.titlebar{padding-right:90px}body.rtl .matrixblock.disabled>.titlebar{padding-left:90px}.matrixblock.disabled>.actions>.status.off{display:block}.matrixblock.collapsed>.titlebar{border-radius:var(--titlebar-border-radius);border-bottom:none}.matrixblock.collapsed>.titlebar>.preview{opacity:1}.matrixblock>.checkbox{position:absolute;top:7px}body.ltr .matrixblock>.checkbox{left:14px}body.rtl .matrixblock>.checkbox{right:14px}.matrixblock>.actions{display:flex;align-items:center;position:absolute;top:5px;cursor:default}body.ltr .matrixblock>.actions{right:14px}body.rtl .matrixblock>.actions{left:14px}body.ltr .matrixblock>.actions>*{margin:0 0 0 5px}body.rtl .matrixblock>.actions>*{margin:0 5px 0 0}.matrixblock>.actions .settings{padding:0 8px;height:20px;color:var(--ui-control-color)}body.ltr .matrixblock>.actions .settings:before{margin-right:0 !important}body.rtl .matrixblock>.actions .settings:before{margin-left:0 !important}.matrixblock>.actions .settings:not(:hover):not(:active){background-color:rgba(0,0,0,0)}.matrixblock>.actions>.move{margin-top:-3px !important}.matrixblock>.actions>.status.off{display:none}.matrixblock>.actions a:not([data-action]){padding:0;height:20px;text-align:center;color:var(--dark-hairline-color);transform:color linear 100ms}.matrixblock>.actions a:not([data-action]).settings:after{border-color:var(--dark-hairline-color);transform:border-color linear 100ms}body.ltr .matrixblock>.actions a:not([data-action]).settings:after{margin-left:3px}body.rtl .matrixblock>.actions a:not([data-action]).settings:after{margin-right:3px}.matrixblock>.actions a:not([data-action]):hover{color:var(--link-color)}.matrixblock>.actions a:not([data-action]):hover.settings:after{border-color:var(--link-color)}.matrixblock:not(.static)>.fields{padding-top:14px}.matrixblock>.fields>.flex-fields>.field:before{display:none}.matrixblock>.buttons{margin-top:0;height:30px}.add-category-form{margin-top:24px}.add-category-form .texticon{width:200px}body.ltr .add-category-form .texticon{float:left}body.rtl .add-category-form .texticon{float:right}body.ltr .add-category-form .texticon{margin-right:5px}body.rtl .add-category-form .texticon{margin-left:5px}body.ltr .add-category-form .texticon .text{padding-right:30px}body.rtl .add-category-form .texticon .text{padding-left:30px}.add-category-form .texticon .spinner{position:absolute;top:0}body.ltr .add-category-form .texticon .spinner{right:5px}body.rtl .add-category-form .texticon .spinner{left:5px}.categoriesfield{position:relative;min-height:30px}body.ltr .categoriesfield .structure ul{margin-left:12px}body.rtl .categoriesfield .structure ul{margin-right:12px}body.sitepicker #main-content{padding:30px;justify-content:center;align-items:center;text-align:center}body.sitepicker #content-container{max-width:400px}.sitepicker-group li:not(:first-child) a{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.sitepicker-group li:not(:first-child) a:not(:hover){border-top-color:rgba(0,0,0,0)}.sitepicker-group li:not(:last-child) a{border-bottom-left-radius:0;border-bottom-right-radius:0}.sitepicker-group li a{display:block;position:relative;text-align:left;width:100%;box-sizing:border-box;border:1px solid var(--hairline-color);border-radius:var(--medium-border-radius);font-size:16px;line-height:1.4}body.ltr .sitepicker-group li a{padding:9px 42px 9px 15px}body.rtl .sitepicker-group li a{padding:9px 15px 9px 42px}.sitepicker-group li a:after{font-size:14px;position:absolute;top:calc(50% - 7px);margin:0;padding:0}body.ltr .sitepicker-group li a:after{right:12px}body.rtl .sitepicker-group li a:after{left:12px}.sitepicker-group li a:hover{border-color:var(--link-color);text-decoration:none;z-index:1}.elementselectormodal .body .main{float:left \\9 ;width:445px \\9 }@media only screen and (-webkit-min-device-pixel-ratio: 1.5),only screen and (-moz-min-device-pixel-ratio: 1.5),only screen and (-o-min-device-pixel-ratio: 3/2),only screen and (min-device-pixel-ratio: 1.5),only screen and (min-resolution: 1.5dppx){.structure ul li{background-size:40px}body.ltr .structure ul li{background-image:url(../images/branch_2x.png)}body.rtl .structure ul li{background-image:url(../images/branch_rtl_2x.png)}.hud .tip-left{background-image:url(../images/hudtip_left_2x.png);background-size:15px 30px}.hud .tip-top{background-image:url(../images/hudtip_top_2x.png);background-size:30px 15px}.hud .tip-right{background-image:url(../images/hudtip_right_2x.png);background-size:15px 30px}.hud .tip-bottom{background-image:url(../images/hudtip_bottom_2x.png);background-size:30px 15px}.hud.has-footer .tip-bottom{background-image:url(../images/hudtip_bottom_gray_2x.png)}}:root{--xs: 4px;--s: 8px;--m: 14px;--l: 18px;--xl: 24px;--padding: var(--xl);--neg-padding: calc(var(--padding) * -1)}html{-webkit-text-size-adjust:100%;min-height:100vh}body{min-height:100vh}body :focus{outline-style:solid;outline-color:rgba(0,0,0,0);box-shadow:var(--focus-ring)}.reduce-focus-visibility :focus:not(:focus-visible){box-shadow:none}.reduce-focus-visibility :focus-visible{box-shadow:var(--focus-ring)}.skip-link{position:absolute;margin:5px;left:-10000px;top:0;width:1px;height:1px;overflow:hidden;z-index:101}.skip-link:focus{left:unset;width:auto;height:auto;background-color:var(--gray-100) !important}body.ltr .skip-link:focus{left:0}body.rtl .skip-link:focus{right:0}@media only screen and (min-width: 1200px){#global-skip-link{--light-color: var(--white);--dark-color: var(--gray-800);--focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color)}}#global-container{position:relative;display:flex;flex-direction:column;min-height:100vh}body.ltr #global-container{left:0}body.rtl #global-container{right:0}@media screen and (prefers-reduced-motion: no-preference){body.ltr #global-container{transition:left 250ms ease-out}body.rtl #global-container{transition:right 250ms ease-out}}#global-sidebar{--is-always-visible: true;position:fixed;z-index:100;display:flex;flex-direction:column;height:100vh;padding:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-weight:500;--focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)), 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);background-color:var(--gray-800)}#global-sidebar a{color:var(--gray-100);text-decoration:none}#global-sidebar>a[href]:not(.sel):hover,#global-sidebar *:not(.has-subnav)>a[href]:not(.sel):hover{background-color:#29333d}#global-sidebar>a:not([href]),#global-sidebar *:not(.has-subnav)>a:not([href]){cursor:default;background-color:rgba(0,0,0,0)}#global-sidebar .light{color:var(--gray-400)}@media only screen and (max-width: 1199px){#global-sidebar{--is-always-visible: false}}#system-info{display:grid;grid-template-columns:30px auto;grid-gap:10px;height:50px;padding:0 10px;position:relative;flex:0 0 50px;flex-direction:row;align-items:center;background-color:#29333d}#system-info:after{display:none}#system-info:focus,#system-info:hover{background-color:#1f272e !important}#site-icon{height:30px}#site-icon img,#site-icon svg{display:block;width:30px;height:30px;border-radius:4px}#site-icon svg rect,#site-icon svg circle,#site-icon svg ellipse,#site-icon svg line,#site-icon svg polyline,#site-icon svg polygon,#site-icon svg path,#site-icon svg text{fill:var(--medium-text-color);stroke-width:0}#system-name h2,#system-name .h2{margin:0;width:100%;overflow:hidden;max-height:40px;position:relative;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}#system-name h2:after,#system-name .h2:after{display:block;content:\"\";font-size:0;position:absolute;top:0;width:var(--m);background-image:linear-gradient(to right, rgba(41, 51, 61, 0), #29333d)}body.ltr #system-name h2:after,body.ltr #system-name .h2:after{right:0}body.rtl #system-name h2:after,body.rtl #system-name .h2:after{left:0}#system-info:hover #system-name h2:after,#system-info:hover #system-name .h2:after{background-image:linear-gradient(to right, rgba(31, 39, 46, 0), #1f272e)}#job-icon{align-items:flex-start}#job-icon>span.icon{display:block;position:relative;width:16px;height:16px;margin-top:2px !important}#job-icon>span.icon>canvas{display:block;position:absolute;width:16px;height:16px}#job-icon>span.icon>canvas#job-icon-hover{opacity:0}#job-icon[href]:hover .icon>span.icon>canvas#job-icon-hover{opacity:1}#job-icon .progress-label{display:block;color:var(--gray-300);font-size:11px;line-height:1.5}#nav{flex:1;margin:22px 0 0;padding-bottom:var(--xl);overflow:visible}#nav li:not(.has-subnav)>a.sel{color:var(--gray-800);background-color:var(--gray-100);opacity:1}#nav li:not(.has-subnav)>a.sel .icon{opacity:1}#nav li a{position:relative;padding-left:var(--m);padding-right:var(--m)}#nav li a:focus{z-index:1}#nav li a.menubtn{line-height:26px}#nav li a.external:after{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"external\"}body.ltr #nav li a.external:after{margin-left:5px}body.rtl #nav li a.external:after{margin-right:5px}#nav li a .label,#nav li a .label span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#nav li a .badge{background-color:var(--gray-200);color:var(--gray-800)}body.ltr #nav li a .badge{margin-right:0}body.rtl #nav li a .badge{margin-left:0}#nav li ul{display:block;margin-bottom:10px}#nav li ul li a{font-size:12px}body.ltr #nav li ul li a{padding:3px var(--m) 3px 42px !important}body.rtl #nav li ul li a{padding:3px 42px 3px var(--m) !important}#nav li ul li a:not(.active){color:var(--gray-200)}#global-footer{display:flex;flex-direction:column;align-items:center;padding:var(--m) var(--m) var(--xl)}#app-info{margin-top:var(--xs);display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--gray-600);text-align:center;gap:var(--s)}#app-info a{color:var(--gray-600);text-decoration:underline}#app-info a.go:hover:after{color:var(--gray-600)}#edition-logo{user-select:none;border:1px solid var(--gray-600);border-radius:3px;display:inline-flex;height:1.25rem;box-sizing:content-box;font-size:11px}#edition-logo>.edition-name,#edition-logo>.edition-trial{padding:0.375rem 0.4375rem 0.3125rem;line-height:var(--s)}#edition-logo>.edition-name{font-weight:600;letter-spacing:1.7px;padding-right:0.3125rem;text-transform:uppercase}#edition-logo>.edition-trial{display:inline-block;position:relative;background-color:var(--gray-600);color:var(--gray-200);border-radius:0 1px 1px 0;letter-spacing:1px;text-transform:lowercase}body.ltr #edition-logo>.edition-trial{margin-left:5px}body.rtl #edition-logo>.edition-trial{margin-right:5px}body.ltr #edition-logo>.edition-trial{padding-left:5px}body.rtl #edition-logo>.edition-trial{padding-right:5px}body.ltr #edition-logo>.edition-trial{padding-right:7px}body.rtl #edition-logo>.edition-trial{padding-left:7px}#edition-logo>.edition-trial:before{display:block;position:absolute;top:0;content:\"\";font-size:0;width:0;height:0;border-style:solid}body.ltr #edition-logo>.edition-trial:before{left:-10px;border-width:0 10px 20px 0;border-color:rgba(0,0,0,0) var(--gray-600) rgba(0,0,0,0) rgba(0,0,0,0)}body.rtl #edition-logo>.edition-trial:before{right:-10px;border-width:0 0 20px 10px;border-color:rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0) var(--gray-600)}#devmode{flex:0 0 4px;width:100%;min-height:4px;background:url(../images/dev-mode.svg) repeat-x 21px 0;cursor:help}#page-container{display:flex;flex-direction:column;flex-grow:1}body.ltr #page-container{padding-left:226px}body.rtl #page-container{padding-right:226px}#alerts{position:relative;background-color:var(--red-050);border-left:5px solid var(--error-color);padding:11px 0;text-align:center;color:var(--error-color)}#alerts li{padding:4px var(--xl)}#alerts li a{color:var(--error-color);text-decoration:underline}#alerts li a.go{text-decoration:none;white-space:nowrap;border:1px solid rgba(207,17,36,.5);border-radius:var(--medium-border-radius);padding:3px 5px;margin:0 2px}#alerts li a.go:after{color:var(--error-color)}#alerts li a.go:hover{border-color:var(--error-color)}#global-header{width:100%;margin-bottom:var(--m);background:#fff;box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);background:var(--gray-050)}#global-header:focus{box-shadow:var(--focus-ring)}#global-header .flex{align-items:center}#global-header .btn{--ui-control-color: var(--gray-400);--ui-control-hover-color: var(--gray-500);--ui-control-active-color: var(--gray-600)}.nav-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:50px;line-height:26px;color:currentColor;text-align:center}body.ltr .nav-toggle{margin-left:-10px}body.rtl .nav-toggle{margin-right:-10px}.nav-toggle:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"menu\";font-size:16px;line-height:0}.nav-toggle:hover{color:var(--gray-400)}#crumbs{display:flex;flex-direction:row;align-items:center;font-size:13px;margin:0 !important}#crumbs.empty{display:none}#crumbs a,#crumbs button{color:var(--light-text-color);transition:color linear 100ms}#crumbs a:hover,#crumbs button:hover{color:var(--link-color);text-decoration:none}#crumbs nav{margin:0}.breadcrumb-list{display:flex;flex-direction:row;align-items:stretch;flex-wrap:wrap}.breadcrumb-list li{display:inline-flex;align-items:center}.breadcrumb-list li a,.breadcrumb-list li button{padding:15px 0}.breadcrumb-list li button{cursor:pointer}.breadcrumb-list li:after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid var(--medium-hairline-color);border-width:0 2px 2px 0;opacity:.8}body.ltr .breadcrumb-list li:after{margin:0 8px 0 7px}body.rtl .breadcrumb-list li:after{margin:0 7px 0 8px}body.ltr .breadcrumb-list li:after{transform:rotate(-45deg)}body.rtl .breadcrumb-list li:after{transform:rotate(135deg)}.breadcrumb-list .menu--disclosure li{display:block}.breadcrumb-list .menu--disclosure li::after{content:none}li.breadcrumb-toggle-wrapper::after{content:none}#account-menu ul li a{max-width:calc(100% + 28px) !important}#announcements-btn{width:30px;height:30px;padding-left:0;padding-right:0;width:40px;position:relative}#announcements-btn:not(:hover):not(:active):not(.active){background-color:rgba(0,0,0,0)}#announcements-btn:not(:active):not(.active):hover{background-color:rgba(154,165,177,.15)}#announcements-btn.unread:after{content:\"\";display:block;position:absolute;top:3px;width:7px;height:7px;border-radius:4px;background-color:var(--blue-600)}body.ltr #announcements-btn.unread:after{right:7px}body.rtl #announcements-btn.unread:after{left:7px}#announcements-btn svg{width:22px;height:22px}#announcements-btn svg rect,#announcements-btn svg circle,#announcements-btn svg ellipse,#announcements-btn svg line,#announcements-btn svg polyline,#announcements-btn svg polygon,#announcements-btn svg path,#announcements-btn svg text{fill:var(--ui-control-color);stroke-width:0}#announcements-btn:hover svg rect,#announcements-btn:hover svg circle,#announcements-btn:hover svg ellipse,#announcements-btn:hover svg line,#announcements-btn:hover svg polyline,#announcements-btn:hover svg polygon,#announcements-btn:hover svg path,#announcements-btn:hover svg text,#announcements-btn:active svg rect,#announcements-btn:active svg circle,#announcements-btn:active svg ellipse,#announcements-btn:active svg line,#announcements-btn:active svg polyline,#announcements-btn:active svg polygon,#announcements-btn:active svg path,#announcements-btn:active svg text,#announcements-btn.active svg rect,#announcements-btn.active svg circle,#announcements-btn.active svg ellipse,#announcements-btn.active svg line,#announcements-btn.active svg polyline,#announcements-btn.active svg polygon,#announcements-btn.active svg path,#announcements-btn.active svg text{fill:var(--ui-control-active-color);stroke-width:0}#announcements{max-width:350px}#announcements .announcement:not(:first-child){margin-top:20px}#announcements .announcement .announcement-label-container{margin-top:-3px;display:flex;align-items:center;margin-bottom:3px}#announcements .announcement .announcement-label-container .announcement-icon svg{display:block;width:15px;height:15px}#announcements .announcement .announcement-label-container .announcement-label{margin-left:5px;font-size:12px;color:var(--light-text-color)}#announcements .announcement.unread .announcement__heading:after{content:\"\";display:block;position:absolute;top:7px;width:7px;height:7px;border-radius:4px;background-color:var(--blue-600)}body.ltr #announcements .announcement.unread .announcement__heading:after{left:-13px}body.rtl #announcements .announcement.unread .announcement__heading:after{right:-13px}#announcements .announcement p{margin:0}#announcements .announcement__header{display:grid}#announcements .announcement__heading{position:relative;margin:0 0 3px;order:1}#user-info{display:flex;flex-direction:row;align-items:center;padding-top:5px;padding-bottom:5px;height:100%;background-color:rgba(0,0,0,0);border-radius:0}body.ltr #user-info{padding-right:25px}body.rtl #user-info{padding-left:25px}#user-info:after{border-color:var(--ui-control-color);transition:border-color linear 100ms}#user-info:hover:after{border-color:var(--ui-control-hover-color)}#user-info[aria-expanded=true]:after{border-color:var(--ui-control-active-color)}.header-photo{padding:5px 0}.header-photo img{display:block;width:30px;height:30px;max-width:none;border-radius:50%;box-shadow:0 0 0 1px rgba(31,41,51,.05),0 0 0 rgba(31,41,51,0);transition:box-shadow linear 150ms}#user-info:hover .header-photo img{box-shadow:0 0 0 1px rgba(31,41,51,.05),0 2px 10px -2px rgba(31,41,51,.3)}#main-container{position:relative;flex-grow:1}#notifications{position:fixed;bottom:8px;width:calc(100% - 16px);z-index:101}body.ltr #notifications{left:8px}body.rtl #notifications{right:8px}@media only screen and (min-width: 974px){#notifications{width:350px}}#notifications .notification{display:flex;position:relative;background:#fff;box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);padding:10px 14px;border-radius:var(--large-border-radius);box-shadow:0 0 0 1px rgba(19,26,32,.15),0 2px 12px rgba(19,26,32,.15);--color: var(--notice-color)}#notifications .notification:focus{box-shadow:var(--focus-ring)}#notifications .notification[data-type=success]{--color: var(--success-color)}#notifications .notification[data-type=error]{--color: var(--error-color)}#notifications .notification+.notification{margin-top:12px}#notifications .notification .notification-icon{width:18px;margin-top:-2px;font-size:18px;color:var(--color)}body.ltr #notifications .notification .notification-icon{margin-right:10px}body.rtl #notifications .notification .notification-icon{margin-left:10px}#notifications .notification .notification-body{display:flex;flex:1}#notifications .notification .notification-body .notification-message{font-weight:bold}#notifications .notification .notification-body .notification-details{margin-top:var(--xs)}#notifications .notification .notification-body .notification-details .element{border:1px solid rgba(51,64,77,.1)}#notifications .notification .notification-close-btn{position:relative;top:-2px}body.ltr #notifications .notification .notification-close-btn{margin-left:10px}body.rtl #notifications .notification .notification-close-btn{margin-right:10px}#header-container{margin-bottom:var(--m)}#crumbs,#header{padding-left:var(--xl);padding-right:var(--xl)}@media only screen and (min-width: 1200px){#primary-nav-toggle{display:none}}#global-header .flex,#header .flex{max-width:100%}#global-header .flex.flex-nowrap,#header .flex.flex-nowrap{min-width:0}#header{display:flex;align-items:flex-start;align-content:stretch;flex-wrap:nowrap;justify-content:space-between;gap:var(--s);padding-top:var(--s);padding-bottom:var(--s);position:relative;z-index:2;width:calc(100vw - 226px);box-sizing:border-box;background-color:rgba(154,165,177,0);box-shadow:0 1px 0 rgba(51,64,77,0);transition:background-color linear 100ms,box-shadow linear 100ms}body.fixed-header #header{position:fixed;z-index:12;top:0;background-color:var(--gray-100);box-shadow:inset 0 -1px 0 rgba(63,77,90,.1)}@supports(backdrop-filter: blur(10px)){#header{transition:background-color linear 100ms,box-shadow linear 100ms,backdrop-filter linear 100ms}body.fixed-header #header{background-color:rgba(228,237,246,.75);backdrop-filter:blur(10px)}}#header h1{line-height:34px;margin-top:0;margin-bottom:0;min-width:0}#header .buttons,#header .btngroup{margin-top:0}@media only screen and (min-width: 974px){#page-title.has-toolbar{min-width:calc(226px - var(--xl) - var(--s)) !important}}#toolbar{flex:1;align-items:flex-start;justify-content:space-between}#toolbar .icon:before,#toolbar .texticon:before,#toolbar .menubtn:after,#toolbar [data-icon]:before,#toolbar [data-icon-after]:after{color:currentColor;opacity:.8}#toolbar .text{border-radius:var(--large-border-radius)}#toolbar .text::-webkit-input-placeholder{color:var(--light-text-color)}#toolbar .text:-ms-input-placeholder{color:var(--light-text-color)}#toolbar .text::-ms-input-placeholder{color:var(--light-text-color)}#toolbar .text:-moz-placeholder{color:var(--light-text-color)}#toolbar .text::-moz-placeholder{color:var(--light-text-color)}#toolbar .text::placeholder{color:var(--light-text-color)}#toolbar .text:not(:focus){background-clip:border-box}@media only screen and (max-width: 400px){#action-buttons .btngroup .btn:first-child{flex-basis:100%}}@media only screen and (max-width: 973px){#action-buttons{margin-top:10px}}#main-content{display:flex;flex-direction:row;align-items:flex-start;width:calc(100vw - 226px);padding:0 var(--xl) 48px;box-sizing:border-box}#main-content>.grid:only-child{flex:1}#sidebar-toggle-container{display:none}#sidebar-container{flex:0 0 226px;width:226px;box-sizing:border-box}@media only screen and (min-width: 1200px){body.ltr #sidebar-container{margin-left:calc(var(--xl)*-1)}body.rtl #sidebar-container{margin-right:calc(var(--xl)*-1)}}#sidebar{box-sizing:border-box;padding:0 31px;width:226px;background-color:rgba(0,0,0,0)}#sidebar.fixed{position:fixed;overflow-y:auto;padding-top:var(--m);padding-bottom:var(--m)}#sidebar nav{margin-left:-31px;margin-right:-31px}#sidebar nav li a{position:relative}#sidebar nav li a:focus{z-index:1}#sidebar nav li a:not(.sel):hover{background-color:var(--gray-200)}#content-container{flex:1}#main-content:not(.has-sidebar):not(.has-details) #content-container{width:100%;max-width:100%}#main-content.has-sidebar #content-container{width:calc(100% - 202px);max-width:calc(100% - 202px)}#main-content.has-details #content-container{width:calc(100% - 350px - var(--m));max-width:calc(100% - 350px - var(--m))}#content-container #main-content.has-sidebar.has-details{width:calc(100% - 226px - 350px - 38px);max-width:calc(100% - 226px - 350px - 38px)}#content-heading{margin-top:var(--xl) !important}@media only screen and (min-width: 974px){#content-heading{position:absolute;width:1px;height:1px;padding:0;margin:0;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}}.content-pane{background:#fff;box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);border-radius:var(--large-border-radius);position:relative;background-clip:padding-box;padding:var(--xl);word-wrap:break-word}.content-pane:focus{box-shadow:var(--focus-ring)}.content-pane>hr{margin-left:calc(var(--xl)*-1);margin-right:calc(var(--xl)*-1)}#footer{position:sticky;bottom:0;z-index:1;margin:25px calc(var(--xl)*-1) calc(var(--xl)*-1);padding:var(--s) var(--xl);background-color:var(--gray-050);border-radius:0 0 var(--large-border-radius) var(--large-border-radius);box-sizing:border-box;min-height:50px}#footer:empty{display:none}#footer.stuck{border-radius:0}@supports(backdrop-filter: blur(10px)){#footer.stuck{background-color:rgba(228,237,246,.75);backdrop-filter:blur(10px)}}.has-debug-toolbar #footer{transition:padding linear 100ms}.has-debug-toolbar #footer.stuck{padding-bottom:52px}#footer>*,#footer .flex>*{margin-bottom:0}#details-container{flex:0 0 388px;width:388px;box-sizing:border-box}body.ltr #details-container{margin-right:calc(var(--xl)*-1)}body.rtl #details-container{margin-left:calc(var(--xl)*-1)}#details{box-sizing:border-box;width:388px}body.ltr #details{padding-right:var(--xl)}body.rtl #details{padding-left:var(--xl)}body.ltr #details{padding-left:var(--m)}body.rtl #details{padding-right:var(--m)}#details.fixed{position:fixed;overflow-y:auto;padding-top:var(--m)}#details .details .meta{border-radius:var(--large-border-radius)}#details .details .meta:not(.read-only):not(.warning){background:#fff;box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5)}#details .details .meta:not(.read-only):not(.warning):focus{box-shadow:var(--focus-ring)}#details .details .meta.read-only{color:var(--medium-text-color);background-color:rgba(0,0,0,0) !important}#details .details .meta>.field:first-child,#details .details .meta>.data:first-child{border-top-right-radius:var(--large-border-radius)}#details .details .meta>.field:first-child,#details .details .meta>.field:first-child>.status-badge,#details .details .meta>.data:first-child,#details .details .meta>.data:first-child>.status-badge{border-top-left-radius:var(--large-border-radius)}#details .details .meta>.field:last-child,#details .details .meta>.data:last-child{border-bottom-right-radius:var(--large-border-radius)}#details .details .meta>.field:last-child,#details .details .meta>.field:last-child>.status-badge,#details .details .meta>.data:last-child,#details .details .meta>.data:last-child>.status-badge{border-bottom-left-radius:var(--large-border-radius)}#details .details>.field>.input>.text.fullwidth{background:#fff;box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5)}#details .details>.field>.input>.text.fullwidth:focus{box-shadow:var(--focus-ring)}#details .details .notes{border-radius:var(--large-border-radius);padding-top:var(--m);padding-bottom:var(--m)}@media only screen and (max-width: 1199px){#global-container{width:calc(100vw + 226px)}body.ltr #global-container{left:-226px}body.rtl #global-container{right:-226px}body.ltr.showing-nav #global-container{left:0}body.rtl.showing-nav #global-container{right:0}#crumbs{display:flex !important}#header{width:100vw}#main-content{width:100vw}}@media only screen and (max-width: 973px){#header{display:block}#header .flex:not(#toolbar){margin-top:10px}#toolbar{flex-wrap:wrap !important}#toolbar>*{margin-top:10px !important}body.fixed-header #header .flex:first-child{margin-top:0}#main-content{display:block}#sidebar-toggle-container{display:block;margin-bottom:var(--m)}#sidebar-toggle:after{top:0;transform:rotate(-45deg)}body.rtl #sidebar-toggle:after{transform:rotate(135deg)}body.showing-sidebar #sidebar-toggle{background-color:#acbed2 !important}body.showing-sidebar #sidebar-toggle:after{transform:rotate(45deg)}#content-container{min-height:0 !important}#sidebar-container,#details-container{width:auto !important}#sidebar,#details{position:static !important;overflow-y:visible !important;max-height:none !important;width:auto}#sidebar{margin-bottom:var(--m)}body:not(.showing-sidebar) #sidebar{display:none}body.ltr #details-container{margin-right:0}body.rtl #details-container{margin-left:0}#content-container{width:auto !important;max-width:none !important}#details{padding:0 !important;margin-top:var(--m)}}@media only screen and (max-width: 767px){#crumbs,#header,#main-content{padding-left:10px !important;padding-right:10px !important}#tabs ul li a{padding-left:var(--m);padding-right:var(--m)}body.ltr #tabs ul li+li{margin-left:-7px}body.rtl #tabs ul li+li{margin-right:-7px}}body.ltr #settingsmenu ul li a{padding-left:46px}body.rtl #settingsmenu ul li a{padding-right:46px}#settingsmenu ul li a:before{font-size:15px}body.ltr #settingsmenu ul li a:before{margin:1px 0 0 -22px}body.rtl #settingsmenu ul li a:before{margin:1px -22px 0 0}#settingsmenu ul li a img{width:16px;height:16px;position:absolute;margin-left:-23px;margin-top:1px}.grid{position:relative;min-height:1px}.grid:after{content:\"\";display:block;height:0;clear:both;visibility:hidden}.grid>.item{display:none;box-sizing:border-box}.sidebar{width:226px;box-sizing:border-box;font-size:13px}.sidebar:not(.drag-helper){padding:var(--m) 0;background-color:var(--gray-050)}.sidebar .heading{position:relative;margin:0 var(--xl)}.sidebar .heading:not(:first-child){margin-top:var(--m)}.sidebar .heading>span{display:inline-block;position:relative;z-index:1;padding:0 5px;margin:0 -5px;text-transform:uppercase;color:var(--medium-text-color);font-size:11px;font-weight:bold}.sidebar .heading>ul{margin:2px calc(var(--xl)*-1)}.sidebar nav{padding:0 var(--s)}body.ltr .sidebar nav>ul>li:not(.heading)>a,body.ltr .sidebar nav>ul>li.heading>ul>li>a{padding-left:24px}body.rtl .sidebar nav>ul>li:not(.heading)>a,body.rtl .sidebar nav>ul>li.heading>ul>li>a{padding-right:24px}body.ltr .sidebar nav>ul>li:not(.heading)>.toggle,body.ltr .sidebar nav>ul>li.heading>ul>li>.toggle{left:calc(var(--m) * 0)}body.rtl .sidebar nav>ul>li:not(.heading)>.toggle,body.rtl .sidebar nav>ul>li.heading>ul>li>.toggle{right:calc(var(--m) * 0)}body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>a,body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>a{padding-left:38px}body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>a,body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>a{padding-right:38px}body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>.toggle,body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>.toggle{left:calc(var(--m) * 1)}body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>.toggle,body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>.toggle{right:calc(var(--m) * 1)}body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>a,body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>a{padding-left:52px}body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>a,body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>a{padding-right:52px}body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>.toggle,body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>.toggle{left:calc(var(--m) * 2)}body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>.toggle,body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>.toggle{right:calc(var(--m) * 2)}body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>a,body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>a{padding-left:66px}body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>a,body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>a{padding-right:66px}body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>.toggle,body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle{left:calc(var(--m) * 3)}body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>.toggle,body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle{right:calc(var(--m) * 3)}body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>a,body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>a{padding-left:80px}body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>a,body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>a{padding-right:80px}body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle,body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle{left:calc(var(--m) * 4)}body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle,body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle{right:calc(var(--m) * 4)}.sidebar nav li{position:relative}.sidebar nav li:not(.has-subnav)>a:not(.sel):hover{text-decoration:none;background-color:var(--gray-100)}.sidebar nav li:not(.has-subnav)>a.sel{cursor:default;background-color:var(--gray-500);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-weight:500}.sidebar nav li:not(.has-subnav)>a.sel,.sidebar nav li:not(.has-subnav)>a.sel+.toggle{color:var(--white)}.sidebar nav li a{position:relative;margin-bottom:1px;display:flex;flex-direction:row;align-items:center;padding:7px var(--xl);min-height:var(--xl);box-sizing:border-box;color:var(--text-color);user-select:none;border-radius:var(--large-border-radius);word-break:break-word}.sidebar nav li a .status{flex-shrink:1}.sidebar nav li a .icon{flex-shrink:1;width:1.125rem;height:1.125rem;word-break:normal;transition:margin-left linear 150ms,margin-right linear 150ms;opacity:.85}body.ltr .sidebar nav li a .icon{margin-right:10px}body.rtl .sidebar nav li a .icon{margin-left:10px}.sidebar nav li a .icon.icon-mask svg rect,.sidebar nav li a .icon.icon-mask svg circle,.sidebar nav li a .icon.icon-mask svg ellipse,.sidebar nav li a .icon.icon-mask svg line,.sidebar nav li a .icon.icon-mask svg polyline,.sidebar nav li a .icon.icon-mask svg polygon,.sidebar nav li a .icon.icon-mask svg path,.sidebar nav li a .icon.icon-mask svg text{fill:currentColor;stroke-width:0}.sidebar nav li a .icon.icon-mask span[data-icon]{color:currentColor}.sidebar nav li a .icon svg{width:16px;height:16px}.sidebar nav li a .icon span[data-icon]{font-size:16px}.sidebar nav li a .icon span[data-icon]::before{display:block}.sidebar nav li a .label{flex:1}.sidebar nav li a .badge{flex-shrink:1;padding:0 6px;font-size:11px;line-height:16px;border-radius:var(--s);background-color:var(--medium-text-color);color:var(--white)}body.ltr .sidebar nav li a .badge{margin:0 -4px 0 10px}body.rtl .sidebar nav li a .badge{margin:0 10px 0 -4px}.sidebar nav li .toggle{position:absolute;z-index:1;height:34px;top:0;width:var(--xl);display:flex;align-items:center;justify-content:center}.sidebar nav li ul{display:none}.sidebar nav li.heading>ul,.sidebar nav li.expanded>ul{display:block}body.ltr .content.has-sidebar:not(.hiding-sidebar){margin-left:226px}body.rtl .content.has-sidebar:not(.hiding-sidebar){margin-right:226px}#content-notice{margin:0 calc(var(--xl)*-1);padding:0 var(--xl)}#content-notice:not(:last-child){padding-bottom:var(--s);border-bottom:1px solid var(--hairline-color);margin-bottom:var(--s)}#content :not(.meta)>.flex-fields,#content>.flex-fields,.so-content .flex-fields{--row-gap: var(--xl);display:flex;flex-wrap:wrap;align-content:flex-start;margin:0 calc(var(--row-gap)*-1) calc(var(--row-gap)*-1);width:calc(100% + var(--row-gap)*2)}#content :not(.meta)>.flex-fields>*,#content>.flex-fields>*,.so-content .flex-fields>*{margin:0 0 var(--row-gap) !important;padding:0 var(--row-gap);box-sizing:border-box}#content :not(.meta)>.flex-fields>h2,#content>.flex-fields>h2,.so-content .flex-fields>h2{flex:4 0 100%}#content :not(.meta)>.flex-fields>h2:not(:first-child),#content>.flex-fields>h2:not(:first-child),.so-content .flex-fields>h2:not(:first-child){padding-top:var(--xl);border-top:1px solid var(--hairline-color)}#content :not(.meta)>.flex-fields>hr,#content :not(.meta)>.flex-fields>.line-break,#content>.flex-fields>hr,#content>.flex-fields>.line-break,.so-content .flex-fields>hr,.so-content .flex-fields>.line-break{flex:4 0 100%}#content :not(.meta)>.flex-fields>.line-break:not(:first-child),#content>.flex-fields>.line-break:not(:first-child),.so-content .flex-fields>.line-break:not(:first-child){margin-bottom:0 !important}#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break),#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child,#content>.flex-fields>:not(h2):not(hr):not(.line-break),#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child,.so-content .flex-fields>:not(h2):not(hr):not(.line-break),.so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child{position:relative;width:100%}#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):before,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,#content>.flex-fields>:not(h2):not(hr):not(.line-break):before,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,.so-content .flex-fields>:not(h2):not(hr):not(.line-break):before,.so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child:before{position:absolute;top:0;width:1px;height:100%;content:\"\";background-color:rgba(205,216,228,.5)}body.ltr #content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):before,body.ltr #content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,body.ltr #content>.flex-fields>:not(h2):not(hr):not(.line-break):before,body.ltr #content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,body.ltr .so-content .flex-fields>:not(h2):not(hr):not(.line-break):before,body.ltr .so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child:before{left:-1px}body.rtl #content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):before,body.rtl #content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,body.rtl #content>.flex-fields>:not(h2):not(hr):not(.line-break):before,body.rtl #content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,body.rtl .so-content .flex-fields>:not(h2):not(hr):not(.line-break):before,body.rtl .so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child:before{right:-1px}@media only screen and (min-width: 1536px){#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-25,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-25,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25{width:25%}#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-50,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-50,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50{width:50%}#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-75,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-75,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-75,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-75{width:75%}}@media only screen and (min-width: 600px)and (max-width: 1535px){#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-25,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-50,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-25,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-50,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50{width:50%}}@media only screen and (min-width: 1200px){.so-content .flex-fields>:not(h2):not(hr):not(.line-break).width-25,.so-content .flex-fields>:not(h2):not(hr):not(.line-break).width-50,.so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25,.so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50{width:50%}}.lp-editor-container,.lp-preview-container{position:fixed;top:0;height:100%;background-color:var(--white);z-index:100}.lp-editor-container header,.lp-preview-container header{padding:8px 24px;background-color:var(--gray-100);box-shadow:0 1px 0 rgba(63,77,90,.2);box-sizing:border-box;position:relative;z-index:1}@supports(backdrop-filter: blur(10px)){.lp-editor-container header,.lp-preview-container header{position:absolute;z-index:2;top:0;left:0;width:100%;background-color:rgba(228,237,246,.75);backdrop-filter:blur(10px)}.lp-editor-container header+.lp-editor,.lp-preview-container header+.lp-editor{padding-top:78px}}.lp-editor-container header .btn,.lp-editor-container header .spinner,.lp-editor-container header .checkmark-icon,.lp-preview-container header .btn,.lp-preview-container header .spinner,.lp-preview-container header .checkmark-icon{margin-bottom:0}.lp-editor-container{display:flex;flex-direction:column}.lp-editor-container .lp-editor{flex:1;padding:24px;overflow:auto;box-sizing:border-box}.lp-editor-container .lp-editor>.field:last-child{margin-bottom:24px !important}body.ltr .lp-editor-container .lp-editor>.field>.status-badge{left:-24px}body.rtl .lp-editor-container .lp-editor>.field>.status-badge{right:-24px}body.ltr .lp-editor-container .lp-editor .matrixblock>.fields>.flex-fields>.field>.status-badge{left:calc(var(--m)*-1)}body.rtl .lp-editor-container .lp-editor .matrixblock>.fields>.flex-fields>.field>.status-badge{right:calc(var(--m)*-1)}.lp-editor-container .lp-draghandle{position:absolute;z-index:6;top:0;width:4px;height:100%;cursor:col-resize}body.ltr .lp-editor-container .lp-draghandle{right:-2px}body.rtl .lp-editor-container .lp-draghandle{left:-2px}.lp-preview-container{display:flex;flex-direction:column;box-shadow:-1px 0 0 rgba(63,77,90,.2)}.lp-preview-container.dragging:after{position:absolute;top:0;left:0;width:100%;height:100%;content:\"\";font-size:0}.lp-preview-container .lp-preview-header{display:flex}@supports not (backdrop-filter: blur(10px)){.lp-preview-container .lp-preview-header{background-color:rgba(228,237,246,.75)}}.lp-preview-container .lp-preview-header .buttons{margin:0}body.ltr .lp-preview-container .lp-preview-header .buttons .btn+.btn{margin-left:7px}body.rtl .lp-preview-container .lp-preview-header .buttons .btn+.btn{margin-right:7px}.lp-preview-container .lp-preview-header+.lp-iframe-container{padding-top:0}@supports(backdrop-filter: blur(10px)){.lp-preview-container .lp-preview-header+.lp-iframe-container{padding-top:50px}}.lp-preview-container .lp-preview-header .lp-device-type .btn::before{width:27px;height:22px;display:block;content:\"\";background-size:contain;background-repeat:no-repeat;background-position:center;transition-duration:.3s}.lp-preview-container .lp-preview-header .lp-device-type .btn.lp-device-type-btn--phone::before{background-image:url(../images/preview/icon-phone.svg)}.lp-preview-container .lp-preview-header .lp-device-type .btn.lp-device-type-btn--tablet::before{background-image:url(../images/preview/icon-tablet.svg)}.lp-preview-container .lp-preview-header .lp-device-type .btn.lp-device-type-btn--desktop::before{background-image:url(../images/preview/icon-desktop.svg)}.lp-preview-container .lp-device-type__label::before{width:27px;height:22px;display:block;content:\"\";background-size:contain;background-repeat:no-repeat;background-position:center;transition-duration:.3s}.lp-preview-container .lp-device-type__label.lp-device-type__label--phone::before{background-image:url(../images/preview/icon-phone.svg)}.lp-preview-container .lp-device-type__label.lp-device-type__label--tablet::before{background-image:url(../images/preview/icon-tablet.svg)}.lp-preview-container .lp-device-type__label.lp-device-type__label--desktop::before{background-image:url(../images/preview/icon-desktop.svg)}.lp-preview-container .lp-preview-container__bumper-link{top:unset;bottom:0}.lp-preview-container .lp-device-mask{display:none}.lp-preview-container .lp-iframe-container{flex:1;overflow:auto}.lp-preview-container .lp-iframe-container .lp-preview{display:block;width:100%;min-height:100%}.lp-preview-container .lp-iframe-container:not(.lp-iframe-container--has-device-preview) .lp-device-preview-container{width:auto !important;height:100% !important;transform:none !important;margin:0 !important}.lp-preview-container .lp-iframe-container--has-device-preview{flex:none;padding-top:0 !important;position:relative;top:0;height:calc(100% - 50px);width:100%;background-color:var(--gray-100)}@supports(backdrop-filter: blur(10px)){.lp-preview-container .lp-iframe-container--has-device-preview{top:50px}}.lp-preview-container .lp-iframe-container--has-device-preview .lp-device-preview-container{position:absolute;top:50%;left:50%;z-index:2;overflow:auto;opacity:1;transition:opacity .3s}.lp-preview-container .lp-iframe-container--has-device-preview .lp-device-mask{display:block;position:absolute;top:50%;left:50%;z-index:1;background-image:url(../images/preview/chrome-phone-top.svg),url(../images/preview/chrome-phone-bottom.svg);background-position:top center,bottom center;background-repeat:no-repeat;background-size:contain;background-color:#fff;box-shadow:0 0 58px rgba(6,67,117,.3);border-radius:18px}.lp-preview-container .lp-iframe-container--has-device-preview.lp-iframe-container--tablet .lp-device-mask{background-image:url(../images/preview/chrome-tablet-top.svg),url(../images/preview/chrome-tablet-bottom.svg)}@media screen and (prefers-reduced-motion: no-preference){.lp-preview-container .lp-iframe-container--rotating .lp-device-mask{transition-duration:.3s;transition-property:transform}.lp-preview-container .lp-iframe-container--rotating .lp-device-preview-container{opacity:0;transition:opacity 0s}}.layoutdesigner{display:flex;align-items:stretch;position:relative;border-radius:3px;border:1px solid rgba(96,125,159,.25);background-color:#fbfcfe;background-clip:padding-box;overflow:hidden;box-shadow:none;min-height:500px}body.ltr .layoutdesigner{padding-right:241px}body.rtl .layoutdesigner{padding-left:241px}.errors>.layoutdesigner{border:1px solid var(--error-color) !important}.layoutdesigner .fld-workspace{flex:1;background-color:var(--gray-050);background-image:linear-gradient(to right, hsl(212deg, 50%, 95%) 1px, transparent 0px),linear-gradient(to bottom, hsl(212deg, 50%, 95%) 1px, transparent 1px);background-size:24px 24px;background-position:-1px -1px;box-shadow:inset 0 1px 3px -1px #acbed2}body.ltr .layoutdesigner .fld-workspace{border-radius:var(--small-border-radius) 0 0 var(--small-border-radius)}body.rtl .layoutdesigner .fld-workspace{border-radius:0 var(--small-border-radius) var(--small-border-radius) 0}body.ltr .layoutdesigner .fld-workspace{padding:24px 0 24px 24px}body.rtl .layoutdesigner .fld-workspace{padding:24px 24px 24px 0}.layoutdesigner .fld-workspace .fld-tabs{display:flex;align-items:flex-start;flex-wrap:wrap}.layoutdesigner .fld-sidebar{position:absolute;top:0;height:100%;width:241px;padding:14px;overflow:auto;box-sizing:border-box}body.ltr .layoutdesigner .fld-sidebar{right:0}body.rtl .layoutdesigner .fld-sidebar{left:0}.layoutdesigner .fld-sidebar .btngroup{margin-bottom:14px}.layoutdesigner .fld-sidebar .fld-field-library .fld-field-group{margin-top:14px}.layoutdesigner .fld-sidebar .fld-field-library .fld-field-group h6{margin-bottom:7px}.layoutdesigner .fld-sidebar .filtered{display:none}.layoutdesigner .fld-new-tab-btn:active{background-color:var(--gray-050)}.fld-sidebar,.fld-tab .tabs .tab,.fld-tab .fld-tabcontent,.fld-new-tab-btn,.fld-new-tab-btn:hover{background-color:var(--white);box-shadow:0 0 0 1px rgba(31,41,51,.1),0 2px 5px -2px rgba(31,41,51,.2)}body.ltr .fld-tab .settings,body.ltr .fld-element .settings,body.ltr .fld-element .slide-picker{margin-left:7px}body.rtl .fld-tab .settings,body.rtl .fld-element .settings,body.rtl .fld-element .slide-picker{margin-right:7px}.fld-tab .settings:before,.fld-element .settings:before{margin-top:-2px;font-size:16px;opacity:.5}.fld-tab .settings:hover:before,.fld-tab .settings.active:before,.fld-element .settings:hover:before,.fld-element .settings.active:before{opacity:1}.fld-tab{width:264px;box-sizing:border-box}body.ltr .fld-tab{padding:0 25px 24px 0}body.rtl .fld-tab{padding:0 0 24px 25px}.fld-tab .tabs{margin:-10px -12px 0;padding:10px 12px 0;overflow:hidden;display:flex}.fld-tab .tabs .tab{display:flex;max-width:calc(100% - 10px);box-sizing:border-box;padding:8px 14px;border-radius:var(--medium-border-radius) var(--medium-border-radius) 0 0}body:not(.dragging) .fld-tab .tabs .tab.draggable{cursor:move;cursor:grab}.fld-tab .tabs .tab span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fld-tab .fld-tabcontent{padding:14px}body.ltr .fld-tab .fld-tabcontent{border-radius:0 var(--medium-border-radius) var(--medium-border-radius) var(--medium-border-radius)}body.rtl .fld-tab .fld-tabcontent{border-radius:var(--medium-border-radius) 0 var(--medium-border-radius) var(--medium-border-radius)}.fld-tab.fld-insertion .tabs .tab,.fld-tab.fld-insertion .fld-tabcontent{margin:-2px;border:2px dashed var(--hairline-color);box-shadow:none;background-color:var(--gray-050);background-image:linear-gradient(to right, hsl(212deg, 50%, 95%) 1px, transparent 0px),linear-gradient(to bottom, hsl(212deg, 50%, 95%) 1px, transparent 1px);background-size:24px 24px}.fld-tab.fld-insertion .tabs .tab{background-position:-1px -1px}.fld-tab.fld-insertion .fld-tabcontent{background-position:-1px -13px}.fld-tab-caboose{min-height:24px}.fld-indicator{display:inline-flex;font-size:11px;color:var(--uicontrol-color)}body.ltr .fld-indicator{margin-left:4px}body.rtl .fld-indicator{margin-right:4px}body.ltr .fld-indicator+.fld-indicator{margin-left:2px}body.rtl .fld-indicator+.fld-indicator{margin-right:2px}.fld-element{position:relative;display:flex;align-items:center;padding:7px 10px;box-shadow:inset 0 0 0 1px var(--hairline-color);border-radius:var(--medium-border-radius);background-color:var(--white)}body:not(.dragging) .fld-element{cursor:move;cursor:grab}.fld-element+.fld-element{margin-top:7px}.fld-element.fld-insertion{box-sizing:border-box;border:2px dashed var(--hairline-color);border-radius:var(--medium-border-radius);background:none;box-shadow:none}.fld-element.draghelper{box-shadow:0 1px 5px -1px rgba(31,41,51,.2)}.fld-element.fld-field{color:var(--medium-text-color);background-color:var(--gray-100)}.fld-element.fld-field:not(.draghelper){box-shadow:none}.fld-element.fld-field .fld-field-hidden:not(.hidden){margin-top:-3px}body.ltr .fld-element.fld-field .fld-field-hidden:not(.hidden){margin-right:5px}body.rtl .fld-element.fld-field .fld-field-hidden:not(.hidden){margin-left:5px}.fld-element.fld-field .fld-field-hidden:not(.hidden):before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"shuteye\"}.fld-element.fld-field .field-name .fld-element-label{margin-bottom:2px}.fld-element .fld-element-icon{text-align:center}body.ltr .fld-element .fld-element-icon{margin-right:5px}body.rtl .fld-element .fld-element-icon{margin-left:5px}.fld-element .fld-element-icon,.fld-element .fld-element-icon svg{width:16px;height:16px}.fld-element .fld-element-icon svg rect,.fld-element .fld-element-icon svg circle,.fld-element .fld-element-icon svg ellipse,.fld-element .fld-element-icon svg line,.fld-element .fld-element-icon svg polyline,.fld-element .fld-element-icon svg polygon,.fld-element .fld-element-icon svg path,.fld-element .fld-element-icon svg text{fill:var(--ui-control-color);stroke-width:0}.fld-element .field-name{flex:1;overflow:hidden}.fld-element .field-name .fld-element-label,.fld-element .field-name .fld-attribute{flex:1;display:flex;align-items:center}.fld-element .field-name .fld-element-label h4,.fld-element .field-name .fld-attribute .smalltext{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fld-element .field-name .fld-element-label h4{font-weight:normal;color:var(--text-color);margin:0}body.dragging{cursor:move !important;cursor:grabbing !important}.fld-hr,.fld-br{display:flex;justify-content:center;padding:9px 10px}.fld-hr:before,.fld-br:before{position:absolute;display:block;top:calc(50% - 2px);left:10px;width:calc(100% - 20px);height:4px;content:\"\";font-size:0;border-radius:2px}.fld-hr .smalltext,.fld-br .smalltext{position:relative;background-color:var(--gray-100);border-radius:8px;padding:1px 7px}.fld-hr:before{background-color:var(--gray-100)}.fld-br:before{background-image:repeating-linear-gradient(to right, var(--gray-100), var(--gray-100) 5.2631578947%, transparent 5.2631578947%, transparent 10.5263157895%, var(--gray-100) 10.5263157895%)}.fld-element-settings-body{flex:1;margin:-24px var(--neg-padding) 0;padding:24px var(--padding);overflow:hidden auto;position:relative}.fld-element-settings-footer{position:relative;display:flex;flex-direction:row;margin:0 var(--neg-padding) -24px;padding:var(--padding);background:#fff;box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);background-color:var(--gray-050);z-index:3}.fld-element-settings-footer:focus{box-shadow:var(--focus-ring)}.fld-element-settings-footer>.ee-site-select{flex:1}body.ltr .fld-element-settings-footer>.btn{margin-left:5px}body.rtl .fld-element-settings-footer>.btn{margin-right:5px}body.ltr .fld-element-settings-footer>.spinner{margin:0 var(--neg-padding) 0 0}body.rtl .fld-element-settings-footer>.spinner{margin:0 0 0 var(--neg-padding)}html.noscroll,html.noscroll body{overflow:hidden;height:100%}.modal.imageeditor{background-color:var(--gray-900);color:var(--white);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-weight:500;--focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)), 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);opacity:0;user-select:none}.modal.imageeditor.modal{border-radius:0}.modal.imageeditor.modal .body:after{display:none}.modal.imageeditor .btn:not(.submit):not(.noborder){background-color:var(--gray-600);color:var(--white)}.modal.imageeditor .btn:not(.submit):not(.noborder):hover{background-color:var(--gray-700)}.modal.imageeditor .btn:not(.submit):not(.noborder).active{background-color:var(--gray-800)}.modal.imageeditor .icon::before{width:24px;height:24px;margin-top:-4px;margin-left:-3px;display:inline-block;content:\"\"}.modal.imageeditor .icon.rotate-left::before{background-image:url(../images/image-editor/rotate-left.svg)}.modal.imageeditor .icon.rotate-right::before{background-image:url(../images/image-editor/rotate-right.svg)}.modal.imageeditor .icon.flip-vertical::before{background-image:url(../images/image-editor/flip-vertical.svg)}.modal.imageeditor .icon.flip-horizontal::before{background-image:url(../images/image-editor/flip-horizontal.svg)}.modal.imageeditor .icon.constraint::before{background-image:url(../images/image-editor/unconstrained.svg)}.modal.imageeditor .icon.focal-point::before{background-image:url(../images/image-editor/focal-point.svg)}.modal.imageeditor .body{display:flex;padding:0}.modal.imageeditor input{color:var(--text-color)}.modal.imageeditor .body .tabs{border-right:1px solid var(--gray-1000)}.modal.imageeditor .body .tabs ul{width:100px;flex-direction:column;align-items:stretch}.modal.imageeditor .body .tabs ul li{position:relative;padding:14px;text-align:center;border-bottom:1px solid var(--gray-1000);cursor:pointer}.modal.imageeditor .body .tabs ul li::before{position:absolute;top:0;content:\"\";width:0;height:100%;background-color:currentColor}body.ltr .modal.imageeditor .body .tabs ul li::before{left:0}body.rtl .modal.imageeditor .body .tabs ul li::before{right:0}.modal.imageeditor .body .tabs ul li.selected{background-color:#151c23}.modal.imageeditor .body .tabs ul li.selected::before{width:2px}.modal.imageeditor .body .tabs ul li i{background-repeat:no-repeat;background-position:top center;display:block;height:24px}.modal.imageeditor .body .tabs ul li[data-view=rotate] i{background-image:url(../images/image-editor/rotate-left.svg)}.modal.imageeditor .body .tabs ul li[data-view=crop] i{background-image:url(../images/image-editor/crop.svg)}.modal.imageeditor .body .tabs ul li[data-view=filters] i{background-image:url(../images/image-editor/filters.svg)}.modal.imageeditor .body .tabs ul li:hover{background-color:#1b242c}.modal.imageeditor .body .tabs ul li:hover{cursor:pointer}.modal.imageeditor .body .views{padding:24px;overflow:auto}.modal.imageeditor .body .views .btngroup{margin-bottom:24px}.modal.imageeditor .body .views .filters ul{width:100px}.modal.imageeditor .body .views .filters ul li{text-align:center;margin-right:14px;margin-bottom:14px}.modal.imageeditor .body .views .filters ul li:last-child{margin-right:0}.modal.imageeditor .body .views .filters ul li img{border:3px solid rgba(0,0,0,0);border-radius:4px}.modal.imageeditor .body .views .filters ul li span{display:block}.modal.imageeditor .body .views .filters ul li:hover{cursor:pointer}.modal.imageeditor .body .views .filters ul li.selected img{border-color:var(--white)}.modal.imageeditor .body .image-container{flex-grow:1;display:flex;flex-direction:column;position:relative;overflow:hidden}.modal.imageeditor .body .image-container .image{text-align:center;flex-grow:1;position:relative;margin:14px}.modal.imageeditor .body .image-container .image canvas{position:absolute;top:0;left:0}.modal.imageeditor .body .image-container .image-tools{text-align:center}.modal.imageeditor .body .image-container .image-tools .straightening{max-width:400px;min-height:3.75rem;display:block;margin:0 auto;overflow:hidden}.modal.imageeditor .footer{position:absolute;background-color:rgba(0,0,0,0);bottom:0;left:0;width:100%;border-top:1px solid #000}body.has-debug-toolbar .modal.imageeditor .footer{padding-bottom:50px}.modal.imageeditor .body .views .crop fieldset .heading{display:none}.modal.imageeditor .body .views .crop .custom-constraint-spacer{padding:0 var(--xs)}.modal.imageeditor .body .views .crop .constraint-group{display:grid;grid-gap:var(--xs)}body.ltr .modal.imageeditor .body .views .crop .custom{padding-left:21px}body.rtl .modal.imageeditor .body .views .crop .custom{padding-right:21px}.modal.imageeditor .body .views .crop .orientation{display:flex;align-items:center;justify-content:center}.modal.imageeditor .body .views .crop .orientation input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-position:center center;background-repeat:no-repeat;margin:0 4px;cursor:pointer}.modal.imageeditor .body .views .crop .orientation input[value=landscape]{width:30px;height:20px;background-image:url(../images/image-editor/orientation-landscape-unchecked.svg)}.modal.imageeditor .body .views .crop .orientation input[value=landscape]:checked{background-image:url(../images/image-editor/orientation-landscape-checked.svg)}.modal.imageeditor .body .views .crop .orientation input[value=portrait]{width:20px;height:30px;background-image:url(../images/image-editor/orientation-portrait-unchecked.svg)}.modal.imageeditor .body .views .crop .orientation input[value=portrait]:checked{background-image:url(../images/image-editor/orientation-portrait-checked.svg)}.modal.imageeditor.vertical .body .views .crop>.btngroup:first-child{justify-content:center}.modal.imageeditor:not(.vertical) .body .views .crop .constraint.custom{margin-top:var(--xs)}.vertical.imageeditor .body{flex-direction:column}.vertical.imageeditor .body .image-container{flex-basis:30vh;flex-shrink:0}.vertical.imageeditor .body .constraint-group{grid-template-columns:1fr 1fr}.vertical.imageeditor .body .tabs ul{display:flex;flex-direction:row;width:100%;border-top:1px solid #000;border-bottom:1px solid #000}.vertical.imageeditor .body .tabs ul li{flex-grow:1;border:0;border-right:1px solid #000;padding:10px 7px}.vertical.imageeditor .body .tabs ul li::before{top:unset;top:0;width:100%;height:0}.vertical.imageeditor .body .tabs ul li.selected::before{width:100%;height:2px}.vertical.imageeditor .body .views{width:auto}.vertical.imageeditor .body .views .rotate{display:flex;justify-content:center;flex-wrap:wrap;margin-bottom:-14px}.vertical.imageeditor .body .views .rotate .btngroup{margin:0 7px 14px}.vertical.imageeditor .body .views .filters ul{width:auto;height:109px;overflow:auto;white-space:nowrap;margin:0 -24px;margin-bottom:-24px;padding:24px;text-align:center}.vertical.imageeditor .body .views .filters ul li{display:inline-block;margin-bottom:0}.slide-rule{position:relative;padding:10px 0}.slide-rule:focus{box-shadow:none}body:not(.reduce-focus-visibility) .slide-rule:focus .cursor::after,body.reduce-focus-visibility .slide-rule:focus-visible .cursor::after{box-shadow:var(--focus-ring)}.slide-rule .cursor::after{content:\"\";width:1.25rem;height:3.125rem;position:absolute;top:-15px;left:50%;transform:translateX(-50%)}.slide-rule .cursor{position:absolute;margin-left:-0.25rem;margin-top:4px;left:50%;z-index:1;width:0;height:0;border-left:0.3125rem solid rgba(0,0,0,0);border-right:0.3125rem solid rgba(0,0,0,0);border-top:0.3125rem solid #63a6e1}.slide-rule .graduations{white-space:nowrap;height:40px;position:relative}.slide-rule .graduations ul{position:relative;float:left}.slide-rule .graduations ul li{display:inline-block;font-size:8px;position:relative;width:10px}.slide-rule .graduations ul li:not(.main-graduation){left:1px}.slide-rule .graduations ul li.main-graduation:before{border-left-width:3px}.slide-rule .graduations ul li.main-graduation .label{display:block;cursor:default}.slide-rule .graduations ul li.selected:before{border-left-color:#63a6e1}.slide-rule .graduations ul li:before{content:\"\";position:absolute;border-left:1px solid var(--white);height:10px;top:0px;left:0}.slide-rule .graduations ul li .label{width:20px;position:absolute;top:10px;left:-9px;display:none;text-align:center}.slide-rule .value{display:none;position:absolute;bottom:0;left:50%;z-index:1;box-sizing:border-box;padding:5px;width:50px;margin-left:-25px;background:var(--gray-600)}.slide-rule .overlay{z-index:2;position:absolute;top:0;right:0;bottom:1px;left:0;background-image:linear-gradient(to right, var(--gray-900) 0%, rgba(31, 41, 51, 0) 15%, rgba(31, 41, 51, 0) 85%, var(--gray-900) 100%)}.menu.dark{background-color:var(--gray-600);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-weight:500}.menu.dark ul li a{color:var(--white) !important}.menu.dark ul li a:not(.sel):not(.disabled):hover{background-color:var(--gray-700)}_:-ms-lang(x),.elements .tableview td.checkbox-cell input.checkbox+label,.elements .tableview td.checkbox-cell div.checkbox{top:16px}_:-ms-lang(x),input.checkbox+label:empty,div:empty.checkbox{display:block}.yii-debug-toolbar__title a{display:block !important}","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n:root {\n --white: #fff;\n --black: #000;\n\n --gray-050: hsl(212, 60%, 97%);\n --gray-100: hsl(212, 50%, 93%);\n --gray-200: hsl(212, 30%, 85%);\n --gray-300: hsl(211, 13%, 65%);\n --gray-350: hsl(211, 11%, 59%);\n --gray-400: hsl(210, 10%, 53%);\n --gray-500: hsl(211, 12%, 43%);\n --gray-550: hsl(210, 13%, 40%);\n --gray-600: hsl(209, 14%, 37%);\n --gray-700: hsl(209, 18%, 30%);\n --gray-800: hsl(209, 20%, 25%);\n --gray-900: hsl(210, 24%, 16%);\n --gray-1000: hsl(210, 24%, 10%);\n\n --blue-050: #e3f8ff;\n --blue-100: #b3ecff;\n --blue-200: #81defd;\n --blue-300: #5ed0fa;\n --blue-400: #40c3f7;\n --blue-500: #2bb0ed;\n --blue-600: #1992d4;\n --blue-700: #127fbf;\n --blue-800: #0b69a3;\n --blue-900: #035388;\n\n --cyan-050: #e0fcff;\n --cyan-100: #bef8fd;\n --cyan-200: #87eaf2;\n --cyan-300: #54d1db;\n --cyan-400: #38bec9;\n --cyan-500: #2cb1bc;\n --cyan-600: #14919b;\n --cyan-700: #0e7c86;\n --cyan-800: #0a6c74;\n --cyan-900: #044e54;\n\n --pink-050: #ffe3ec;\n --pink-100: #ffb8d2;\n --pink-200: #ff8cba;\n --pink-300: #f364a2;\n --pink-400: #e8368f;\n --pink-500: #da127d;\n --pink-600: #bc0a6f;\n --pink-700: #a30664;\n --pink-800: #870557;\n --pink-900: #620042;\n\n --red-050: #ffe3e3;\n --red-100: #ffbdbd;\n --red-200: #ff9b9b;\n --red-300: #f86a6a;\n --red-400: #ef4e4e;\n --red-500: #e12d39;\n --red-600: #cf1124;\n --red-700: #ab091e;\n --red-800: #8a041a;\n --red-900: #610316;\n\n --yellow-050: #fffbea;\n --yellow-100: #fff3c4;\n --yellow-200: #fce588;\n --yellow-300: #fadb5f;\n --yellow-400: #f7c948;\n --yellow-500: #f0b429;\n --yellow-600: #de911d;\n --yellow-700: #cb6e17;\n --yellow-750: #bd5a14;\n --yellow-800: #b44d12;\n --yellow-900: #8d2b0b;\n\n --teal-050: #effcf6;\n --teal-100: #c6f7e2;\n --teal-200: #8eedc7;\n --teal-300: #65d6ad;\n --teal-400: #3ebd93;\n --teal-500: #27ab83;\n --teal-550: #20a07b;\n --teal-600: #199473;\n --teal-700: #147d64;\n --teal-800: #0c6b58;\n --teal-900: #014d40;\n}\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n:root {\n --bg-color: $grey100;\n --bg-color-hsl: #{hue($grey100)}, #{saturation($grey100)},\n #{lightness($grey100)};\n\n // submit button colors\n --primary-color: var(--red-500);\n --secondary-color: var(--gray-500);\n\n --input-color: hsl(212, 25%, 50%);\n\n // text colors\n --text-color: var(--gray-700);\n --medium-dark-text-color: var(--gray-550);\n --medium-text-color: var(--gray-550);\n --light-text-color: var(--gray-500);\n --link-color: #2563eb;\n\n // font styles\n --font-weight-bold: 700;\n\n // menu colors\n --menu-option-color: var(--text-color);\n --menu-option-active-color: var(--white);\n --menu-option-active-background-color: var(--gray-350);\n\n // hairline colors\n --hairline-color: #{transparentize(hsl(209, 20%, 25%), 0.9)};\n --medium-hairline-color: #{transparentize(hsl(209, 14%, 37%), 0.75)};\n --dark-hairline-color: #{transparentize(hsl(210, 10%, 53%), 0.5)};\n\n // focus colors\n --light-focus-color: var(--blue-300);\n --medium-focus-color: var(--blue-500);\n --dark-focus-color: #0f74b1;\n\n // focus rings\n --light-focus-ring: 0 0 0 1px #5ed0fa,\n 0 0 0 3px #{transparentize(#5ed0fa, 0.3)};\n --medium-focus-ring: 0 0 0 1px #2bb0ed,\n 0 0 0 3px #{transparentize(#2bb0ed, 0.3)};\n --dark-focus-ring: 0 0 0 1px #0f74b1,\n 0 0 0 3px #{transparentize(#0f74b1, 0.3)};\n\n // selection colors\n --light-sel-color: var(--gray-200);\n --dark-sel-color: var(--gray-600);\n\n // alert/notice colors\n --error-color: var(--red-600);\n --warning-color: var(--yellow-800);\n --success-color: var(--teal-700);\n --notice-color: var(--blue-800);\n\n // status colors\n --enabled-color: var(--teal-550);\n --pending-color: var(--yellow-700);\n --disabled-color: var(--red-600);\n\n // misc colors\n --indicator-border-color: var(--yellow-700);\n --indicator-icon-color: var(--yellow-750);\n\n // UI element styles\n --small-border-radius: 3px;\n --medium-border-radius: 4px;\n --large-border-radius: 5px;\n\n --menu-border-radius: var(--medium-border-radius);\n --checkbox-size: 16px;\n --radio-size: 16px;\n}\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n@mixin checkered-bg($size) {\n // h/t https://gist.github.com/dfrankland/f6fed3e3ccc42e3de482b324126f9542\n $halfSize: $size * 0.5;\n background-image: linear-gradient(45deg, var(--gray-100) 25%, transparent 25%),\n linear-gradient(135deg, var(--gray-100) 25%, transparent 25%),\n linear-gradient(45deg, transparent 75%, var(--gray-100) 75%),\n linear-gradient(135deg, transparent 75%, var(--gray-100) 75%);\n background-size: $size $size;\n background-position: 0 0, $halfSize 0, $halfSize -#{$halfSize}, 0 $halfSize;\n}\n\n@mixin striped-bg($size, $color: $grey100) {\n // h/t https://css-tricks.com/stripes-css/\n $halfSize: $size * 0.5;\n body.ltr & {\n background: repeating-linear-gradient(\n 135deg,\n var(--white),\n var(--white) $halfSize,\n $color $halfSize,\n $color $size\n );\n }\n body.rtl & {\n background: repeating-linear-gradient(\n 45deg,\n var(--white),\n var(--white) $halfSize,\n $color $halfSize,\n $color $size\n );\n }\n}\n\n@font-face {\n font-family: 'Craft';\n src: url('../fonts/Craft.woff') format('woff'),\n url('../fonts/Craft.ttf') format('truetype'),\n url('../fonts/Craft.svg#Craft') format('svg');\n font-weight: normal;\n font-style: normal;\n}\n\n/* ----------------------------------------\n/* Basic stuff\n/* ----------------------------------------*/\n\n:root {\n --ui-control-color: var(--gray-550);\n --ui-control-hover-color: var(--gray-600);\n --ui-control-active-color: var(--gray-700);\n --icon-opacity: 0.8;\n --light-focus-hsl: #{hue($lightFocusColor)}, #{saturation($lightFocusColor)},\n #{lightness($lightFocusColor)};\n --medium-focus-hsl: #{hue($mediumFocusColor)},\n #{saturation($mediumFocusColor)}, #{lightness($mediumFocusColor)};\n --dark-focus-hsl: #{hue($darkFocusColor)}, #{saturation($darkFocusColor)},\n #{lightness($darkFocusColor)};\n --focus-ring: 0 0 0 1px hsl(var(--dark-focus-hsl)),\n 0 0 0 3px hsla(var(--dark-focus-hsl), 0.8);\n --inner-focus-ring: inset 0 0 0 1px hsl(var(--dark-focus-hsl)),\n inset 0 0 0 3px hsla(var(--dark-focus-hsl), 0.7);\n --touch-target-size: 24px; /* Minimum recommended touch target size */\n}\n\nbody,\nhtml {\n box-shadow: var(--light-focus-ring);\n background-color: var(--gray-100);\n}\n\nhtml.noscroll,\nhtml.noscroll body {\n overflow: hidden;\n}\n\nbody {\n width: 100vw;\n overflow-x: hidden;\n @include fontSize(14);\n line-height: 1.42;\n color: var(--text-color);\n -webkit-font-smoothing: subpixel-antialiased;\n}\n\nbody.rtl {\n direction: rtl;\n}\n\nbody,\ninput,\nselect,\ntextarea {\n @include sans-serif-font;\n}\n\n.first,\nh1:first-child,\nh2:first-child,\nh3:first-child,\nh4:first-child,\nh5:first-child,\nh6:first-child,\np:first-child,\nblockquote:first-child,\nhr:first-child,\n.pane:first-child,\n.grid:first-child,\nfieldset:first-child,\n.field:first-child,\n.toolbar:first-child,\n.buttons:first-child,\n.condition-container:first-child {\n margin-top: 0 !important;\n}\n\n.last,\nh1:last-child,\nh2:last-child,\nh3:last-child,\nh4:last-child,\nh5:last-child,\nh6:last-child,\np:last-child,\nblockquote:last-child,\n.pane:last-child,\n.grid:last-child,\n.meta:last-child,\nfieldset:last-child,\n.field:last-child,\n.toolbar:last-child,\n.buttons:last-child,\n.condition-container:last-child {\n margin-bottom: 0 !important;\n}\n\n.no-scroll {\n overflow: hidden !important;\n}\n\n.draghelper {\n box-sizing: border-box;\n}\n\nimg {\n max-width: 100%;\n}\n\n.text,\ntable.editable textarea {\n body.rtl .ltr & {\n text-align: left !important;\n direction: ltr !important;\n }\n\n body.ltr .rtl & {\n text-align: right !important;\n direction: rtl !important;\n }\n}\n\n/* icons */\n.icon:before,\n.menu ul.padded li a.sel:before,\n.menu .flex.padded.sel:before,\n.texticon:before,\n.element:before,\n#help:before,\n.secure:before,\n.insecure:before,\n.go:after,\n.required:after,\n.preview-btn:before,\n.view-btn:before,\n[data-icon]:before,\n[data-icon-after]:after {\n @include icon;\n}\n\n.badge-icon {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 17px;\n height: 17px;\n box-sizing: border-box;\n border: 1px solid var(--indicator-border-color);\n border-radius: var(--small-border-radius);\n color: var(--indicator-icon-color);\n font-size: 9px;\n}\n\n.secure:before,\n.insecure:before {\n margin-top: -3px;\n font-size: 14px;\n}\n\n[data-icon]:before {\n content: attr(data-icon);\n}\n\n[data-icon-after]:after {\n content: attr(data-icon-after);\n}\n\nbody.rtl [data-icon='list']:before,\nbody.rtl [data-icon-after='list']:after {\n content: 'listrtl';\n}\n\nbody.rtl [data-icon='structure']:before,\nbody.rtl [data-icon-after='structure']:after {\n content: 'structurertl';\n}\n\n.icon.secure:before {\n content: 'secure';\n}\n\n.icon.insecure:before {\n content: 'insecure';\n}\n\n.icon.add:before {\n content: 'plus';\n}\n\n.icon.edit:before {\n content: 'edit';\n}\n\n.icon.settings:before {\n content: 'settings';\n}\n\n.icon.search:before {\n content: 'search';\n}\n\n.icon.expand:before {\n content: 'expand';\n}\n\n.icon.collapse:before {\n content: 'collapse';\n}\n\n.help:before {\n content: 'help';\n color: var(--pink-400);\n}\n\n.preview-btn,\n.view-btn {\n &:before {\n @include margin-right(var(--xs));\n }\n}\n\n.preview-btn:before {\n margin-top: -2px;\n content: 'view';\n}\n\n.view-btn:before {\n body.ltr & {\n content: 'share';\n }\n body.rtl & {\n content: 'shareleft';\n }\n}\n\n/* headings */\nh1,\n.h1 {\n margin-bottom: 24px;\n font-size: 18px;\n font-weight: bold;\n line-height: 1.2;\n}\n\nh2,\n.h2 {\n margin: 14px 0;\n font-size: 16px;\n font-weight: bold;\n line-height: 1.2;\n}\n\nh3,\n.h3 {\n margin: 14px 0;\n font-weight: bold;\n line-height: 1.2;\n}\n\nh4,\n.h4 {\n margin: 14px 0;\n font-weight: bold;\n line-height: 1.2;\n color: var(--medium-text-color);\n}\n\nh5,\n.h5 {\n margin: 14px 0 3px;\n line-height: 1.2;\n color: var(--medium-text-color);\n}\n\nh6,\n.h6 {\n @include h6-styles;\n}\n\nh1[data-icon]:before {\n @include margin(-8px, 10px, 0, 0);\n}\n\nh2[data-icon]:before {\n @include margin(-4px, 6px, 0, 0);\n font-size: 19px;\n}\n\n/* horizontal rule */\nhr {\n margin: 24px 0;\n border: none;\n border-top: 1px solid var(--hairline-color);\n height: 0;\n color: transparent;\n}\n\n.pane hr {\n margin: 24px -24px;\n}\n\n/* paragraphs */\np {\n margin: 1em 0;\n}\n\nh5 + p {\n margin-top: 0;\n}\n\nsup {\n vertical-align: super;\n font-size: smaller;\n}\n\nsub {\n vertical-align: sub;\n font-size: smaller;\n}\n\n.indent {\n @include margin-left(14px);\n}\n\n/* lists */\n.bullets {\n @include padding-left(40px);\n list-style-type: square;\n}\n\nol {\n @include padding-left(40px);\n list-style-type: decimal;\n}\n\n/* code */\ncode,\n.code,\n.code input,\n.code textarea {\n @include fixed-width-font;\n\n &.smalltext {\n font-size: 0.8em !important;\n }\n}\n\npre code {\n display: block;\n overflow-x: auto;\n}\n\n/* links */\na {\n color: var(--link-color);\n cursor: pointer;\n\n body.underline-links & {\n text-decoration: underline;\n }\n}\n\na:hover {\n text-decoration: underline;\n}\n\na.sel,\nli.sel a {\n cursor: default !important;\n text-decoration: none;\n}\n\n.go:after {\n font-size: 11px;\n margin-top: -1px;\n @include padding-left(4px);\n color: var(--link-color);\n opacity: 0.9;\n body.ltr & {\n content: 'circlerarr';\n }\n body.rtl & {\n content: 'circlelarr';\n }\n}\n\nbutton {\n cursor: pointer;\n}\n\n/* revision button */\n.context-btn.disabled {\n opacity: 1;\n color: var(--medium-dark-text-color);\n background-color: transparentize($grey200, 0.5) !important;\n}\n\n/* status icons */\n.checkmark-icon,\n.alert-icon {\n padding: 5px;\n margin-bottom: 0 !important;\n line-height: 10px;\n border-radius: 20px;\n cursor: pointer;\n\n &:before {\n @include icon;\n }\n}\n\n.checkmark-icon {\n p & {\n display: inline-block;\n }\n\n background-color: var(--gray-200);\n\n &:before {\n content: 'check';\n color: var(--success-color);\n }\n}\n\n.alert-icon {\n background-color: var(--gray-200);\n\n &:before {\n content: 'alert';\n color: var(--error-color);\n }\n}\n\n.menu.revision-menu {\n padding: 10px 24px;\n\n hr {\n margin: 10px -24px;\n }\n\n ul {\n li {\n &.sel {\n margin: 0 -14px;\n padding: 0 14px;\n background: var(--gray-050);\n border-radius: var(--large-border-radius);\n\n .edited-desc {\n display: flex;\n align-items: center;\n @include margin-left(10px);\n border-top: 1px solid var(--hairline-color);\n padding: 10px 0;\n color: var(--light-text-color);\n white-space: normal;\n\n p {\n margin: 0;\n }\n\n .btn {\n @include margin-left(14px);\n }\n }\n }\n\n a {\n padding-top: 7px;\n border-radius: var(--large-border-radius);\n }\n }\n }\n\n .extralight {\n margin-top: 2px;\n }\n}\n\n.revision-status-hud {\n max-width: 400px;\n\n .http-error {\n border-radius: var(--medium-border-radius);\n border: 1px solid var(--hairline-color);\n color: var(--light-text-color);\n background-color: var(--gray-050);\n padding: 7px 14px;\n }\n}\n\n.draft-notice {\n display: flex;\n align-items: center;\n align-content: stretch;\n justify-content: center;\n gap: var(--s);\n color: var(--blue-800);\n\n #content-notice & {\n display: inline-flex;\n justify-content: flex-start;\n }\n\n .so-notice > & {\n @include margin(\n calc(var(--s) * -1),\n 0,\n calc(var(--s) * -1),\n calc(var(--xl) * -1)\n );\n @include padding(var(--s), 0, var(--s), var(--xl));\n @include border-bottom-left-radius(var(--large-border-radius));\n\n body.ltr & {\n background-image: linear-gradient(\n to bottom right,\n transparentize($blue600, 0.8),\n transparentize($blue600, 1) 50%\n );\n }\n body.rtl & {\n background-image: linear-gradient(\n to left,\n transparentize($blue600, 0.8),\n transparentize($blue600, 1)\n );\n }\n }\n\n p {\n flex: 1;\n margin: 0;\n }\n\n .draft-icon {\n position: relative;\n flex-shrink: 0;\n width: 34px;\n height: 34px;\n display: flex;\n justify-content: center;\n align-items: center;\n border-radius: 100%;\n border: 2px solid transparentize($blue800, 0.8);\n box-sizing: border-box;\n box-shadow: 0 1px 1px 1px var(--white);\n\n &:before {\n position: relative;\n left: 1px;\n color: var(--blue-800) !important;\n font-size: 18px;\n }\n\n &:after {\n content: '';\n font-size: 0;\n position: absolute;\n top: -2px;\n left: -2px;\n right: -2px;\n bottom: -2px;\n border-radius: 100%;\n box-shadow: inset 0 2px 0 transparentize($blue900, 0.8);\n }\n }\n\n .discard-changes-btn {\n @include margin-left(var(--xs));\n background-color: transparent !important;\n color: var(--blue-800) !important;\n border: 2px solid var(--blue-600);\n\n &:hover,\n &:focus {\n border-color: darken($blue600, 5%);\n }\n\n &:active {\n border-color: darken($blue600, 10%);\n }\n }\n}\n\n/* toggles */\nbutton.toggle {\n appearance: none;\n color: inherit;\n background: none;\n border: none;\n padding: 0;\n}\n\n.toggle:before,\na.fieldtoggle:before {\n @include angle(right);\n transition: transform linear 100ms;\n}\n\n.toggle.expanded:before,\na.fieldtoggle.expanded:before,\n.sidebar nav li.expanded > .toggle:before,\n.structure li:not(.collapsed) > .row > .toggle:before {\n transform: rotate(45deg) !important;\n}\n\na.fieldtoggle {\n display: block;\n position: relative;\n margin: 14px 0;\n @include padding-left(12px);\n color: var(--text-color);\n text-decoration: none;\n}\n\na.fieldtoggle:before {\n display: block;\n position: absolute;\n top: 7px;\n @include left(-1px);\n}\n\n/* emphasis */\nem,\ni {\n font-style: italic;\n}\n\nstrong,\nb,\ni em {\n font-weight: bold;\n}\n\n/* readable blocks */\n.readable {\n @include readable;\n}\n\n/* text styles */\n.leftalign {\n @include alignleft;\n}\n\n.topalign {\n vertical-align: top;\n}\n\n.rightalign {\n @include alignright;\n}\n\n.centeralign {\n text-align: center !important;\n}\n\n.nowrap {\n white-space: nowrap;\n}\n\n.break-word {\n word-wrap: break-word;\n}\n\n.light {\n color: var(--medium-text-color) !important;\n font-weight: normal;\n}\n\n.extralight {\n color: var(--light-text-color) !important;\n}\n\n.smalltext {\n font-size: 12px;\n line-height: 1.2;\n}\n\n.largetext {\n font-size: 16px;\n line-height: 1.2;\n}\n\n.zilch {\n padding: 100px 0;\n text-align: center;\n font-size: 20px;\n line-height: 24px;\n color: var(--light-text-color);\n\n &.small {\n padding: 24px 0;\n font-size: 16px;\n }\n}\n\ninput.checkbox + label.smalltext {\n padding-top: 2px;\n}\n\n.required:after {\n content: 'asterisk';\n @include margin(-2px, 0, 0, 5px);\n font-size: 7px;\n color: var(--error-color);\n}\n\n.scrollpane {\n overflow: auto;\n}\n\n.left {\n @include floatleft;\n}\n\n.right {\n @include floatright;\n}\n\nth,\ntd {\n @include alignleft;\n vertical-align: middle;\n}\n\nbody.ltr table[dir='rtl'] {\n th,\n td {\n text-align: right;\n }\n}\nbody.rtl table[dir='ltr'] {\n th,\n td {\n text-align: left;\n }\n}\n\nth.right,\ntd.right {\n float: none;\n @include alignright;\n}\n\n.clear {\n display: block;\n clear: both;\n height: 0;\n}\n\n.fullwidth {\n width: 100%;\n}\n\n.token {\n @include token-styles;\n}\n\n.token[data-name='*'] {\n position: relative;\n width: 10px;\n}\n\n.token[data-name='*'] span {\n opacity: 0;\n}\n\n.token[data-name='*']:before {\n @include icon;\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n font-size: 9px;\n line-height: 17px;\n content: 'asterisk';\n text-indent: 0;\n}\n\n.token:focus {\n @include active-token-styles;\n}\n\n// Override .token for Prism\n.highlight {\n .token {\n display: inline;\n border: none;\n border-radius: 0;\n padding: 0;\n font-size: inherit;\n line-height: inherit;\n text-shadow: none;\n background: transparent;\n box-shadow: none;\n }\n}\n\n.pane.highlight {\n pre[class*='language-'] {\n overflow: visible;\n\n & > code.diff-highlight .token:not(.prefix) {\n margin: 0 -24px;\n padding: 0 24px;\n }\n }\n}\n\n.success {\n color: var(--success-color) !important;\n}\n\n.notice,\n.warning {\n &.with-icon,\n .icon {\n &:before {\n @include margin(-2px, 2px, 0, 0);\n @include icon;\n width: 1em;\n }\n }\n\n &.has-icon {\n display: flex;\n flex-wrap: nowrap;\n align-items: flex-start;\n\n .icon {\n flex-shrink: 1;\n }\n }\n}\n\n.notice {\n color: var(--notice-color) !important;\n a {\n text-decoration: underline;\n }\n\n &.with-icon,\n .icon {\n &:before {\n content: 'lightbulb';\n }\n }\n}\n\n.warning {\n color: var(--warning-color) !important;\n\n &.with-icon,\n .icon {\n &:before {\n content: 'alert';\n }\n }\n}\n\n.error {\n color: var(--error-color) !important;\n}\n\n.icon.move {\n display: inline-block;\n}\n\n.icon.move:not(.disabled) {\n cursor: move;\n}\n\n.icon.move:before {\n content: 'move';\n color: var(--ui-control-color);\n}\n\n.icon.move:not(.disabled):hover:before {\n color: var(--link-color);\n}\n\n.icon.delete {\n display: inline-block;\n line-height: inherit;\n\n &:before {\n content: 'remove';\n color: var(--ui-control-color);\n }\n\n &:not(.disabled) {\n cursor: pointer;\n\n &:hover:before {\n color: var(--disabled-color);\n }\n\n &:active:before {\n color: var(--red-800);\n }\n }\n}\n\n.hidden {\n display: none !important;\n}\n\n// Visually hide without hiding from screen readers\n.visually-hidden {\n @include visually-hidden;\n}\n\n.invisible {\n visibility: hidden;\n}\n\n.clearafter:after {\n @include clearafter;\n}\n\n.info {\n vertical-align: bottom;\n display: inline-block;\n width: 1em;\n height: 1.375em;\n text-align: center;\n cursor: pointer;\n overflow: hidden;\n\n &:before {\n @include icon;\n vertical-align: baseline;\n width: 100%;\n line-height: 1.375;\n color: var(--ui-control-color);\n }\n\n &:not(.warning) {\n &:before {\n content: 'info';\n }\n &:hover:before {\n color: var(--link-color);\n }\n }\n\n &.warning {\n &:before {\n content: 'alert';\n }\n &:hover:before {\n color: var(--warning-color);\n }\n }\n}\n\n.info-hud {\n table {\n max-width: 280px;\n table-layout: auto;\n }\n\n td {\n word-wrap: break-word;\n width: 100%;\n }\n}\n\n@media (max-width: 450px) {\n .info-hud {\n table {\n table-layout: fixed;\n width: 100%;\n }\n }\n}\n\n/* ----------------------------------------\n/* Content\n/* ----------------------------------------*/\n\n.content {\n position: relative;\n}\n\n.content:after {\n @include clearafter;\n}\n\n.customize-sources-modal {\n @include padding-left(200px);\n overflow: visible !important;\n\n & > .cs-sidebar {\n position: absolute;\n top: 0;\n @include left(0);\n margin: 0;\n padding: 10px 0;\n border: none;\n width: 200px;\n height: calc(100% - 50px);\n box-sizing: border-box;\n background-color: var(--gray-050);\n overflow: auto;\n box-shadow: inset -1px 0 0 var(--hairline-color);\n @include border-top-left-radius(var(--large-border-radius));\n\n & > .btn {\n @include margin(10px, 0, 0, 14px);\n display: block;\n width: calc(100% - 28px);\n }\n }\n\n &.sidebar-hidden {\n @include padding-left(0);\n\n & > .cs-sidebar {\n display: none;\n }\n }\n\n & > .source-settings {\n position: relative;\n height: calc(100% - 50px);\n box-sizing: border-box;\n padding: 24px;\n overflow: auto;\n }\n\n & > .footer {\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n }\n}\n\n.customize-sources-item {\n --selected-item-color: var(--white);\n display: flex;\n width: calc(100% - 1px);\n box-sizing: border-box;\n align-items: center;\n position: relative;\n margin-top: -1px;\n background-color: var(--gray-100);\n border: solid var(--hairline-color);\n border-width: 1px 0;\n user-select: none;\n cursor: default;\n\n & + .customize-sources-item {\n &.heading {\n margin-top: 10px;\n }\n\n &:not(.heading) {\n border-top: 1px solid var(--hairline-color);\n }\n }\n\n &.sel {\n @include light-focus-ring;\n --ui-control-color: var(--selected-item-color);\n background-color: var(--dark-sel-color);\n color: var(--selected-item-color);\n z-index: 1;\n }\n\n .label {\n flex: 1;\n }\n\n &.heading {\n .label {\n text-transform: uppercase;\n color: var(--light-text-color);\n font-size: 12px;\n font-weight: bold;\n }\n\n &.sel .label {\n color: var(--selected-item-color);\n }\n }\n}\n\n.customize-sources-item__move {\n position: absolute;\n top: 50%;\n @include right(0);\n transform: translate(-50%, -50%);\n justify-content: center;\n align-items: center;\n\n &.icon {\n display: flex;\n text-decoration: none;\n }\n}\n\n.customize-sources-item__btn {\n padding: 8px 14px;\n @include padding-right(30px);\n margin: 3px;\n}\n\n.customize-sources-table-column .move {\n @include margin-right(10px);\n}\n\nul.path {\n display: flex;\n flex-direction: row;\n align-items: stretch;\n flex-wrap: wrap;\n\n li {\n display: inline-flex;\n align-items: center;\n\n &:not(:last-child):after {\n @include margin(0, 5px, 0, 2px);\n @include angle(right, var(--light-text-color), 1px);\n }\n }\n}\n\n/* ----------------------------------------\n/* Icon lists\n/* ----------------------------------------*/\n\nul.icons {\n margin-top: 20px;\n display: flex;\n flex-wrap: wrap;\n\n li {\n margin: 0 4px 10px 0;\n\n a {\n display: block;\n position: relative;\n padding: 60px 5px 10px;\n width: 110px;\n text-align: center;\n color: var(--text-color);\n border-radius: 4px;\n border: 1px solid var(--white);\n\n &:before {\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n font-size: 40px;\n line-height: 60px;\n }\n\n .icon {\n img,\n svg {\n width: 40px;\n height: 40px;\n position: absolute;\n top: 12px;\n left: calc(50% - 20px);\n }\n\n &.icon-mask svg {\n @include svg-mask(var(--text-color));\n }\n }\n\n &:hover {\n text-decoration: none;\n background-color: var(--gray-050);\n border-color: var(--gray-100);\n\n .icon.icon-mask svg {\n @include svg-mask(var(--link-color));\n }\n }\n }\n }\n}\n\n@media only screen and (max-width: 380px) {\n ul.icons li a {\n width: 96px;\n }\n}\n\n@media only screen and (max-width: 320px) {\n ul.icons li a {\n width: 75px;\n }\n}\n\n/* ----------------------------------------\n/* Buttons\n/* ----------------------------------------*/\n\n.toolbar {\n position: relative;\n margin-bottom: 14px;\n min-height: 34px;\n\n &.flex,\n .flex {\n align-items: flex-start;\n }\n\n .text {\n border-radius: var(--large-border-radius) !important;\n box-shadow: none !important;\n }\n}\n\n.flex {\n display: flex;\n align-items: center;\n align-content: stretch;\n gap: var(--s);\n\n &:not(.flex-nowrap) {\n flex-wrap: wrap;\n }\n\n & > * {\n &.label {\n white-space: nowrap;\n }\n }\n\n .centeralign & {\n justify-content: center;\n }\n}\n\n.inline-flex {\n display: inline-flex;\n align-items: center;\n align-content: stretch;\n gap: var(--s);\n}\n\n.gap-xs {\n gap: var(--xs);\n}\n\n.gap-s {\n gap: var(--s);\n}\n\n.gap-m {\n gap: var(--m);\n}\n\n.gap-l {\n gap: var(--l);\n}\n\n.gap-xl {\n gap: var(--xl);\n}\n\n.flex-grow {\n flex: 1;\n}\n\n.flex-justify {\n justify-content: space-between;\n}\n\n.flex-justify-start {\n justify-content: flex-start;\n}\n\n.flex-justify-end {\n justify-content: flex-end;\n}\n\n.flex-justify-center {\n justify-content: center;\n}\n\n.flex-start {\n align-items: flex-start;\n}\n\n.flex-end {\n align-items: flex-end;\n}\n\n.flex-center {\n align-items: center;\n}\n\n.flex-stretch {\n align-items: stretch;\n}\n\n.spacer {\n width: 14px;\n}\n\n.buttons {\n display: flex;\n gap: 7px;\n position: relative;\n margin: 24px 0;\n align-items: center;\n\n .hud-footer > &,\n .footer > & {\n margin: 0;\n }\n}\n\n.btn {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border-radius: var(--large-border-radius);\n padding: 7px 14px;\n border: none;\n text-align: center;\n white-space: nowrap;\n user-select: none;\n cursor: pointer;\n box-sizing: border-box;\n appearance: none;\n color: currentColor;\n font-size: inherit;\n background-color: transparentize($inputColor, 0.75);\n\n &.chromeless {\n background-color: transparent;\n height: auto;\n padding: 0;\n\n &:hover,\n &:active,\n &:focus {\n background-color: transparent;\n }\n\n &:hover,\n &:active {\n text-decoration: underline;\n }\n }\n\n &.wrap {\n height: auto;\n min-height: 34px;\n white-space: initial;\n text-align: left;\n }\n\n &:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]) {\n &:focus,\n &.focus,\n &:hover {\n background-color: transparentize($inputColor, 0.7);\n }\n\n &:active,\n &.active {\n background-color: transparentize($inputColor, 0.6);\n }\n }\n\n &[type='color'] {\n padding: 6px !important;\n width: 36px;\n }\n\n &.active,\n &.loading {\n cursor: default;\n }\n\n &:hover {\n text-decoration: none;\n }\n\n &[data-icon]:not(:empty):not(.btn-empty):before,\n &.icon:not(:empty):not(.btn-empty):before,\n &.menubtn[data-icon]:empty:before,\n &.menubtn[data-icon].btn-empty:before,\n &.menubtn.icon:empty:before,\n &.menubtn.icon.btn-empty:before {\n @include margin-right(5px);\n }\n\n &:not(.loading) .spinner {\n display: none;\n }\n\n &.loading {\n &:before,\n &:after,\n .label {\n visibility: hidden;\n }\n }\n\n div.checkbox {\n margin-top: 2px;\n }\n}\n\n.disabled {\n opacity: 0.25;\n}\n\n.disabled,\n.disabled .btn {\n cursor: default;\n}\n\n.btn,\n.spinner {\n height: 34px;\n}\n\n.btn[data-icon-after]:not(:empty):not(.btn-empty):after,\n.menu-toggle:not(:empty):not(.btn-empty):after,\n.menubtn:not(:empty):not(.btn-empty):after,\n.menubtn.icon:after {\n @include margin-left(6px);\n}\n\n.btn[data-icon]:before,\n.btn[data-icon-after]:after,\n.btn.icon:before {\n position: relative;\n}\n\n.btn.small[data-icon]:before,\n.btn.small[data-icon-after]:after,\n.btn.icon.small:before {\n font-size: 10px;\n}\n\n/* button groups */\n.btngroup {\n position: relative;\n z-index: 1;\n display: flex;\n white-space: nowrap;\n align-items: center;\n border-radius: var(--large-border-radius);\n\n &.fullwidth .btn {\n flex: 1;\n }\n\n &.disabled .btn {\n cursor: default;\n }\n\n .btn {\n &:focus {\n z-index: 1;\n }\n\n &:not(.dashed):not(:last-child):not(.btngroup-btn-last) {\n @include margin-right(1px);\n }\n\n body.ltr & {\n &:not(:first-child):not(.btngroup-btn-first) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n\n &:not(:last-child):not(.btngroup-btn-last) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n }\n\n body.rtl & {\n &:not(:first-child):not(.btngroup-btn-first) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n\n &:not(:last-child):not(.btngroup-btn-last) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n }\n }\n}\n\n.btngroup--exclusive {\n .btn[aria-pressed='true']:not(.disabled):not(.loading):not(.dashed):not(\n [aria-disabled]\n ) {\n background-color: var(--gray-500);\n color: var(--white);\n }\n}\n\n.copytext {\n position: relative;\n z-index: 1;\n display: flex;\n white-space: nowrap;\n align-items: center;\n\n body.ltr & {\n .text {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n min-width: 0;\n }\n .btn {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n }\n\n body.rtl & {\n .text {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n .btn {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n }\n}\n\n.copytextbtn {\n display: inline-flex;\n flex-wrap: nowrap;\n align-items: center;\n border: 1px solid var(--hairline-color);\n border-radius: var(--small-border-radius);\n padding: 0 9px;\n cursor: pointer;\n color: var(--medium-text-color);\n\n input {\n border: 0;\n padding: 0;\n height: 32px;\n box-shadow: none;\n background-color: transparent;\n border: none;\n cursor: pointer;\n color: var(--medium-text-color);\n text-align: center;\n }\n\n span {\n padding: 0;\n width: 13px;\n background: none;\n margin-top: -3px;\n @include margin-left(5px);\n color: var(--light-text-color);\n }\n\n &:hover,\n &:focus {\n border-color: var(--medium-hairline-color);\n color: var(--text-color);\n\n input {\n color: var(--text-color);\n }\n }\n\n &.small {\n padding: 0 5px;\n\n input {\n font-size: 11px !important;\n height: 20px;\n }\n }\n}\n\n/* menu buttons */\n.menu-toggle,\n.menubtn {\n display: inline-flex;\n align-items: center;\n user-select: none;\n\n &:after {\n @include angle;\n position: relative;\n }\n\n &.btn {\n &:after {\n top: -1px;\n }\n\n &:not(.disabled):not(.inactive) {\n &:active,\n &.active {\n &:after {\n border-color: var(--ui-control-active-color);\n }\n }\n }\n\n &.submit {\n &:after {\n border-color: var(--white) !important;\n opacity: 0.8;\n }\n\n &:not(.disabled):not(.inactive) {\n &:hover,\n &.hover,\n &:active,\n &.active {\n &:after {\n opacity: 1;\n }\n }\n }\n }\n }\n\n &:not(.btn):not(.icon) {\n height: 17px;\n &:after {\n top: -2px;\n border-color: var(--link-color);\n }\n }\n\n &:empty,\n &.btn-empty {\n @include padding-left(8px);\n @include padding-right(8px);\n }\n}\n\n@keyframes rotator {\n 0% {\n -webkit-transform: rotate(0);\n transform: rotate(0);\n }\n\n to {\n -webkit-transform: rotate(1turn);\n transform: rotate(1turn);\n }\n}\n\n/* spinner */\n.spinner {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--size, 24px);\n height: var(--size, 34px);\n\n &:before {\n display: block;\n content: '';\n font-size: 0;\n animation: rotator 0.7s linear infinite;\n box-sizing: border-box;\n width: var(--size, 20px);\n height: var(--size, 20px);\n object-fit: scale-down;\n border-radius: 50%;\n border: 2px solid transparent;\n border-right-color: currentColor;\n border-bottom-color: currentColor;\n opacity: 0.8;\n }\n\n &.small {\n --size: 12px;\n }\n\n &.big {\n --size: 48px;\n }\n\n &.spinner-absolute {\n position: absolute;\n width: var(--size, 20px);\n height: var(--size, 20px);\n top: calc(50% - var(--size, 20px) / 2);\n left: calc(50% - var(--size, 20px) / 2);\n }\n}\n\n.btn + .spinner {\n @include margin-left(7px);\n}\n\n.buttons .btn + .spinner,\n.buttons .btngroup + .spinner {\n @include margin-left(0);\n}\n\n.buttons.right .btn + .spinner {\n @include margin-right(var(--neg-padding));\n}\n\n/* small buttons */\n.btngroup.small .btn,\n.btn.small {\n padding: 0 7px !important;\n font-size: 12px;\n line-height: 22px;\n}\n\n.btngroup.small,\n.btngroup.small input.btn,\n.btn.small,\n.btn.small + .spinner {\n height: 22px;\n}\n\n/* big buttons */\n.btngroup.big .btn,\n.btn.big {\n padding: 0 14px;\n font-size: 14px;\n line-height: 36px;\n}\n\n.btn.big[data-icon]:before,\n.preview-btn:before,\n.view-btn:before {\n @include margin-left(-2px);\n}\n\n.btngroup.big,\n.btngroup.big input.btn,\n.btn.big,\n.btn.big + .spinner {\n height: 36px;\n}\n\n/* special buttons */\n.btn {\n &.submit,\n &.secondary {\n color: var(--white) !important;\n @include light-on-dark-text;\n }\n\n &.submit {\n background-color: var(--primary-color) !important;\n\n &:not(.disabled):not(.inactive):not(.loading) {\n &:hover,\n &.hover,\n &:focus {\n background-color: darken($primaryColor, 5%) !important;\n }\n\n &:active,\n &.active {\n background-color: darken($primaryColor, 10%) !important;\n }\n }\n }\n\n &.caution {\n background-color: var(--red-050) !important;\n color: var(--error-color);\n\n &:hover,\n &.hover,\n &:focus {\n background-color: darken($red050, 5%) !important;\n }\n\n &:active,\n &.active {\n background-color: var(--red-100) !important;\n }\n }\n}\n\n.secondary-buttons .btn.submit,\n.btn.secondary {\n background-color: var(--secondary-color) !important;\n}\n\n.secondary-buttons\n .btn.submit:not(.disabled):not(.inactive):not(.loading):hover,\n.secondary-buttons\n .btn.submit:not(.disabled):not(.inactive):not(.loading).hover,\n.secondary-buttons\n .btn.submit:not(.disabled):not(.inactive):not(.loading):focus,\n.btn.secondary:not(.disabled):not(.inactive):not(.loading):hover,\n.btn.secondary:not(.disabled):not(.inactive):not(.loading).hover,\n.btn.secondary:not(.disabled):not(.inactive):not(.loading):focus {\n background-color: darken($secondaryColor, 5%) !important;\n}\n\n.secondary-buttons\n .btn.submit:not(.disabled):not(.inactive):not(.loading):active,\n.secondary-buttons\n .btn.submit:not(.disabled):not(.inactive):not(.loading).active,\n.btn.secondary:not(.disabled):not(.inactive):not(.loading):active,\n.btn.secondary:not(.disabled):not(.inactive):not(.loading).active {\n background-color: darken($secondaryColor, 10%) !important;\n}\n\ndiv.btn.submit {\n position: relative;\n overflow: hidden;\n}\n\ndiv.btn.submit input {\n position: absolute;\n left: 100%;\n}\n\n/* dashed buttons */\n.btn.dashed {\n border: 1px dashed var(--medium-hairline-color);\n background-color: transparent;\n\n .btngroup &:not(:last-child):not(.btngroup-btn-last) {\n @include border-right(1px solid transparent);\n @include margin-right(-1px);\n }\n\n &:focus {\n background-color: transparentize($grey200, 0.9);\n border-color: transparent;\n\n .reduce-focus-visibility &:not(:focus-visible) {\n border: 1px dashed var(--medium-hairline-color);\n }\n }\n\n &:not(.disabled) {\n &:active,\n &.active {\n background-color: transparentize($grey200, 0.75);\n }\n }\n}\n\n/* color inputs */\n.color-input-container {\n position: relative;\n\n .color-hex-indicator {\n position: absolute;\n top: 0;\n @include left(7px);\n width: 1em;\n line-height: 34px;\n text-align: center;\n user-select: none;\n }\n}\n\n.color-input {\n @include fixed-width-font;\n @include padding-left(calc(7px + 1em));\n}\n\n.color {\n display: inline-block;\n position: relative;\n vertical-align: middle;\n width: 34px;\n height: 34px;\n border-radius: 17px;\n padding: 0;\n\n &:not(.static) {\n cursor: pointer;\n }\n\n &:not(.small) {\n @include checkered-bg(17px);\n }\n\n &.small {\n width: 16px;\n height: 16px;\n @include checkered-bg(8px);\n }\n\n .color-preview {\n position: absolute;\n top: 0;\n @include left(0);\n width: 100%;\n height: 100%;\n border-radius: 17px;\n box-shadow: inset 0 0 0 1px transparentize($black, 0.85);\n\n &:focus-within {\n @include input-focused-styles;\n }\n\n & > .color-preview-input {\n position: absolute;\n @include left(0);\n width: 100%;\n height: 100%;\n margin: 0;\n padding: 0;\n border: none;\n opacity: 0;\n }\n }\n}\n\n.colorhex {\n display: inline-block;\n margin-left: 5px;\n vertical-align: middle;\n color: var(--medium-text-color);\n}\n\n/* lightswitch */\n.lightswitch-outer-container {\n display: flex;\n\n .lightswitch-inner-container {\n border: 1px solid var(--hairline-color);\n border-radius: var(--small-border-radius);\n display: flex;\n align-items: center;\n\n span {\n padding: 7px 0;\n color: var(--medium-text-color);\n cursor: default;\n\n &[data-toggle='on'] {\n @include padding-right(10px);\n @include margin-left(7px);\n }\n\n &[data-toggle='off'] {\n @include padding-left(10px);\n @include margin-right(7px);\n }\n }\n }\n}\n\n.lightswitch {\n display: block;\n position: relative;\n border: none !important;\n overflow: hidden;\n cursor: pointer;\n user-select: none;\n background-image: linear-gradient(to right, var(--gray-400), var(--gray-400));\n transition: background-image linear 100ms;\n\n &.on {\n background-image: linear-gradient(\n to right,\n var(--enabled-color),\n var(--enabled-color)\n );\n }\n\n &.indeterminate {\n background-image: linear-gradient(\n to right,\n var(--enabled-color),\n var(--gray-300)\n );\n }\n\n .lightswitch-container {\n position: relative;\n height: 100%;\n\n .handle {\n position: absolute;\n top: 1px;\n background-color: var(--white);\n }\n }\n\n &:not(.small) {\n border-radius: 11px;\n width: 34px;\n height: 22px;\n\n .lightswitch-container {\n @include margin-left(-12px);\n width: 46px;\n\n .handle {\n border-radius: 10px;\n width: 20px;\n height: 20px;\n left: calc(50% - 10px);\n }\n }\n }\n\n &.small {\n border-radius: 9px;\n width: 28px;\n height: 18px;\n\n .lightswitch-container {\n @include margin-left(-10px);\n width: 38px;\n\n .handle {\n border-radius: 8px;\n width: 16px;\n height: 16px;\n left: calc(50% - 8px);\n }\n }\n }\n\n table & {\n display: inline-block;\n margin-bottom: -5px;\n }\n\n &.on {\n .lightswitch-container {\n @include margin-left(0);\n }\n }\n\n &.indeterminate {\n &:not(.small) {\n .lightswitch-container {\n @include margin-left(0.5 * -12px);\n }\n }\n &.small {\n .lightswitch-container {\n @include margin-left(0.5 * -10px);\n }\n }\n }\n}\n\n/* pagination */\n.pagination {\n table.data + & {\n margin-top: 24px;\n }\n\n .page-link {\n width: 32px;\n height: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: var(--medium-border-radius);\n\n &:after {\n position: relative;\n transition: border-color linear 100ms;\n }\n\n &.prev-page:after {\n @include angle(left, var(--light-text-color));\n @include right(-1px);\n }\n\n &.next-page:after {\n @include angle(right, var(--light-text-color));\n @include left(-1px);\n }\n\n &:not(.disabled) {\n transition: box-shadow linear 100ms;\n box-shadow: inset 0 0 0 1px var(--hairline-color);\n cursor: pointer;\n\n &:hover {\n text-decoration: none;\n box-shadow: inset 0 0 0 1px var(--link-color);\n\n &:after {\n border-color: var(--link-color);\n }\n }\n\n @include focus-styles {\n box-shadow: inset 0 0 0 1px var(--hairline-color), var(--focus-ring);\n }\n }\n\n &.disabled {\n opacity: 1;\n &:after {\n border-color: var(--hairline-color);\n }\n }\n }\n}\n\n/* action buttons */\n.actions {\n @include floatright;\n}\n\n.actions > li {\n @include floatleft;\n}\n\n.actions > li + li {\n @include margin-left(10px);\n}\n\nh1 + .actions {\n margin-top: -100px;\n}\n\nh2 + .actions {\n margin-top: -54px;\n}\n\n/* ----------------------------------------\n/* Tables\n/* ----------------------------------------*/\n\n.tablepane {\n margin: -24px -24px -12px;\n overflow-x: auto;\n\n table.data {\n th,\n td {\n &:first-child {\n @include padding-left(24px);\n }\n &:last-child {\n @include padding-right(24px);\n }\n }\n }\n}\n\ntable {\n &.fixed-layout {\n table-layout: fixed;\n }\n\n th.thin,\n td.thin {\n width: 0.01% !important;\n white-space: nowrap;\n }\n\n thead {\n th {\n font-weight: bold;\n @include alignleft;\n vertical-align: top;\n }\n }\n\n // plain tables\n &:not(.data) {\n th,\n td {\n padding-top: 7px;\n padding-bottom: 7px;\n\n &:not(:first-child) {\n padding-left: 12px;\n }\n &:not(:last-child) {\n padding-right: 12px;\n }\n }\n }\n\n // data tables\n &.data {\n th,\n td {\n position: relative;\n padding-left: 12px;\n padding-right: 12px;\n box-sizing: border-box;\n\n &.checkbox-cell {\n width: var(--checkbox-size) !important;\n min-width: var(--checkbox-size);\n box-sizing: content-box;\n position: relative;\n\n input.checkbox + label,\n div.checkbox {\n position: absolute;\n top: calc(50% - 8px);\n }\n }\n }\n\n th {\n font-weight: bold;\n }\n\n thead:first-child,\n tbody:first-child,\n tfoot:first-child,\n caption + thead,\n caption + tbody,\n caption + tfoot {\n tr:first-child {\n th,\n td {\n &:first-child {\n @include border-top-left-radius(var(--large-border-radius));\n }\n &:last-child {\n @include border-top-right-radius(var(--large-border-radius));\n }\n }\n }\n }\n\n thead {\n th,\n td {\n width: auto;\n background-color: var(--gray-050);\n cursor: default;\n }\n\n th:not(.orderable),\n td {\n padding-top: 15px;\n padding-bottom: 15px;\n }\n\n th {\n white-space: nowrap;\n vertical-align: middle;\n\n &.orderable {\n position: relative;\n padding-left: 0;\n padding-right: 0;\n\n &:not(.ordered):hover {\n background-color: var(--gray-100);\n }\n\n &.ordered {\n background-color: var(--light-sel-color);\n\n &:not(.loading) {\n button:after {\n @include angle(up);\n position: absolute;\n @include right(10px);\n top: calc(50% - 3px);\n }\n\n &.desc button:after {\n transform: rotate(45deg);\n }\n }\n }\n\n button {\n position: relative;\n @include padding-right(26px);\n font: inherit;\n width: 100%;\n padding: 14px;\n @include alignleft;\n\n &:focus {\n z-index: 1;\n }\n }\n }\n\n &:not(.loading) {\n .spinner {\n display: none;\n }\n }\n\n .spinner {\n position: absolute;\n top: calc(50% - 6px);\n @include right(8px);\n --size: 12px;\n }\n }\n }\n\n tbody {\n tr {\n &:not(.disabled) {\n &:hover {\n th,\n td {\n background-color: var(--gray-050);\n }\n }\n\n &:focus {\n position: relative;\n z-index: 1;\n }\n\n &.sel {\n th,\n td {\n background-color: var(--light-sel-color);\n }\n }\n }\n }\n\n th,\n td {\n padding-top: 7px;\n padding-bottom: 7px;\n background-clip: padding-box;\n }\n\n td {\n &.timestamp {\n @include alignright;\n vertical-align: bottom;\n white-space: nowrap;\n color: var(--light-text-color);\n }\n }\n }\n\n thead + tbody tr,\n tr + tr {\n th,\n td {\n border-top: 1px solid transparent;\n }\n }\n }\n\n // collapsable data tables for small screens\n // based on Aaron Gustafson's technique: http://blog.easy-designs.net/archives/2013/02/02/responsive-tables/\n &.collapsed {\n width: auto;\n\n &,\n tbody,\n tbody tr,\n tbody th,\n tbody td {\n display: block;\n border: none;\n padding: 0;\n @include alignleft;\n width: auto !important;\n white-space: normal;\n }\n\n thead {\n display: none;\n }\n\n tbody {\n tr {\n padding: 6px 0;\n border-bottom: 1px dotted var(--hairline-color);\n\n &:after {\n @include clearafter;\n }\n }\n\n th,\n td {\n padding: 2px 0 !important;\n }\n\n td {\n &:empty {\n display: none;\n }\n }\n\n [data-title] {\n @include margin-right(0);\n\n &:before {\n margin-right: 5px;\n content: attr(data-title) ':';\n font-weight: bold;\n }\n\n form {\n display: inline-block;\n }\n }\n }\n }\n}\n\n.datatablesorthelper,\n.editabletablesorthelper,\n.thumbviewhelper {\n background-color: var(--white);\n @include shadow;\n}\n\n.datatablesorthelper,\n.datatablesorthelper .element,\n.datatablesorthelper a {\n cursor: move !important;\n}\n\n.datatablesorthelper tr:first-child th,\n.datatablesorthelper tr:first-child td {\n border-top: none !important;\n}\n\n.datatablesorthelper tr:last-child th,\n.datatablesorthelper tr:last-child td {\n border-bottom: none !important;\n}\n\n/* elements */\n$smallThumbSize: 34px;\n$largeThumbSize: 120px;\n$statusSize: 10px;\n$baseElementSidePadding: 7px;\n$elementInnerSpacing: 5px;\n\n.element {\n position: relative;\n cursor: default;\n user-select: none;\n font-weight: normal;\n border-radius: var(--small-border-radius);\n\n &:focus,\n li:focus & {\n background-color: var(--gray-050);\n }\n\n &.sel,\n li.sel & {\n background-color: var(--light-sel-color) !important;\n cursor: default;\n\n &:focus {\n background-color: darken($lightSelColor, 5%) !important;\n }\n\n &.hasthumb {\n .elementthumb {\n img {\n box-shadow: 0 0 0 1px transparentize($darkSelColor, 0.9),\n 0 6px 4px -4px transparentize($darkSelColor, 0.8);\n }\n }\n }\n }\n\n &.hasthumb {\n .elementthumb:not(:empty) {\n position: absolute;\n display: flex;\n justify-content: center;\n -ms-flex-pack: center;\n align-items: center;\n -ms-flex-align: center;\n\n img {\n display: block;\n flex-shrink: 0;\n pointer-events: none;\n border-radius: var(--small-border-radius);\n max-width: 100%;\n max-height: 100%;\n }\n\n &.rounded img {\n border-radius: 50%;\n }\n }\n .elementthumb.open-preview {\n cursor: pointer;\n }\n }\n\n &.error {\n [data-icon='alert'] {\n margin-left: var(--xs);\n }\n }\n\n .label {\n display: inline-block;\n\n .draft-label {\n display: inline-block;\n @include margin(-1px, 0, -1px, 7px);\n padding: 1px 5px;\n font-weight: normal;\n text-decoration: none !important;\n color: var(--medium-text-color);\n background: var(--gray-100);\n border-radius: var(--large-border-radius);\n }\n }\n\n &.small,\n &.large:not(.hasthumb) {\n display: inline-block;\n padding: $baseElementSidePadding;\n box-sizing: border-box;\n\n &.hasstatus {\n @include padding-left(\n $baseElementSidePadding + $statusSize + $elementInnerSpacing\n );\n\n .status {\n position: absolute;\n @include left($baseElementSidePadding);\n top: calc(50% - 5px);\n }\n\n .icon:not(.delete) {\n position: absolute;\n @include left($baseElementSidePadding - 1);\n top: calc(50% - 11px);\n }\n }\n\n &.hasthumb {\n @include padding-left($smallThumbSize + $elementInnerSpacing);\n\n .elementthumb:not(:empty) {\n top: calc(50% - 17px);\n @include left(0);\n width: $smallThumbSize;\n height: $smallThumbSize;\n\n &.checkered img {\n @include checkered-bg(8px);\n }\n }\n\n &.hasstatus {\n @include padding-left(\n $smallThumbSize + $elementInnerSpacing * 2 + $statusSize\n );\n\n .status {\n @include left($smallThumbSize + $elementInnerSpacing);\n }\n }\n }\n }\n\n &.large.hasthumb {\n display: block;\n padding: #{$baseElementSidePadding + $largeThumbSize + $elementInnerSpacing}\n $baseElementSidePadding $baseElementSidePadding;\n width: #{120px + $baseElementSidePadding + $baseElementSidePadding};\n box-sizing: border-box;\n\n &.hasstatus {\n @include padding-left(\n $baseElementSidePadding + $statusSize + $elementInnerSpacing\n );\n\n .status {\n position: absolute;\n @include left($baseElementSidePadding);\n top: #{$baseElementSidePadding + $largeThumbSize + $elementInnerSpacing +\n 6};\n }\n }\n\n .elementthumb:not(:empty) {\n top: $baseElementSidePadding;\n @include left(0);\n width: $largeThumbSize;\n height: $largeThumbSize;\n\n &.checkered img {\n @include checkered-bg(15px);\n }\n }\n\n .label {\n display: block;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n word-wrap: normal;\n }\n }\n\n &.removable {\n .label {\n @include padding-right(20px);\n }\n\n .delete:before {\n color: var(--ui-control-color);\n }\n\n &.small,\n &.large:not(.hasthumb) {\n .delete {\n position: absolute;\n top: calc(50% - 11px);\n @include right($baseElementSidePadding);\n }\n }\n\n &.large.hasthumb {\n .delete {\n position: absolute;\n @include right($baseElementSidePadding);\n }\n }\n }\n\n &:not(.removable) {\n .delete {\n display: none;\n }\n }\n}\n\n$checkboxPadding: $checkboxSize + 4;\n\n.elements {\n position: relative;\n\n &:not(.busy) {\n .update-spinner {\n display: none;\n }\n }\n\n &.busy {\n min-height: 200px;\n\n &:after {\n display: block;\n content: '';\n font-size: 0;\n position: absolute;\n top: 0;\n left: -24px;\n width: calc(100% + #{24 + 24}px);\n height: 100%;\n background: transparentize($white, 0.25);\n border-radius: var(--large-border-radius);\n }\n\n .update-spinner {\n z-index: 1;\n }\n }\n\n .header {\n margin: -24px -24px 24px;\n padding: 14px 24px;\n background-color: var(--gray-050);\n box-shadow: none;\n\n &:after {\n content: '';\n }\n\n .selectallcontainer {\n cursor: default;\n\n .checkbox {\n @include margin-right($elementInnerSpacing);\n }\n }\n }\n\n // table views\n .tableview {\n .move,\n .toggle {\n display: flex;\n position: absolute;\n justify-content: center;\n align-items: center;\n top: 50%;\n transform: translateY(-50%);\n @include margin-left(calc(var(--touch-target-size) * -1));\n width: var(--touch-target-size);\n height: var(--touch-target-size);\n }\n\n .move {\n font-size: 11px;\n text-decoration: none;\n }\n\n .toggle {\n text-align: center;\n padding: 4px;\n border-radius: 50%;\n }\n\n .move + .toggle {\n @include margin-left(calc(var(--touch-target-size) * -2));\n }\n }\n\n // thumbs views\n .thumbsview {\n @include margin(\n -$baseElementSidePadding,\n -$baseElementSidePadding - 1px,\n -$baseElementSidePadding - 1px,\n -$baseElementSidePadding\n );\n width: calc(\n 100% + #{$baseElementSidePadding + $baseElementSidePadding + 1px}\n );\n display: grid;\n gap: 5px;\n grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));\n\n li {\n position: relative;\n @include margin(0, 1px, 1px, 0);\n max-width: 226px;\n\n &:hover {\n .element {\n background-color: var(--gray-050);\n }\n }\n\n .element.large.hasthumb {\n width: unset;\n\n .elementthumb:not(:empty) {\n width: 100%;\n }\n }\n\n &.has-checkbox {\n .element.hasthumb {\n &:not(.hasstatus) {\n @include padding-left(\n $baseElementSidePadding + $checkboxSize + $elementInnerSpacing\n );\n }\n\n &.hasstatus {\n @include padding-left(\n $baseElementSidePadding + $checkboxSize + $elementInnerSpacing +\n $statusSize + $elementInnerSpacing\n );\n\n .status {\n @include left(\n $baseElementSidePadding + $checkboxSize + $elementInnerSpacing\n );\n }\n }\n }\n\n .checkbox {\n position: absolute;\n top: $baseElementSidePadding + $largeThumbSize + $elementInnerSpacing +\n (20px - $checkboxSize) * 0.5;\n @include left($baseElementSidePadding);\n }\n }\n }\n }\n}\n\n.export-form {\n position: relative;\n .spinner {\n position: absolute;\n bottom: 0;\n @include right(-24px);\n }\n}\n\n.thumbviewhelper {\n margin: -7px;\n padding: 7px;\n\n .thumbsview {\n &,\n li {\n margin: 0 !important;\n }\n }\n}\n\n/* structures */\n.structure {\n position: relative;\n z-index: 1;\n\n li {\n @include padding-left(8px);\n\n &.collapsed > ul {\n display: none;\n }\n\n .row:hover > .icon,\n &.draghelper > .row .move,\n .add.active {\n opacity: 1;\n }\n\n &.draghelper {\n & > .row {\n .add {\n opacity: 0;\n }\n\n .move:before {\n color: var(--link-color);\n }\n }\n }\n\n &.draginsertion {\n position: relative;\n @include margin(-1px, 0, -1px, 8px);\n @include padding-left(0);\n height: 2px;\n background-color: var(--link-color) !important;\n @include border-left(none);\n border-radius: 1px;\n }\n\n .toggle {\n position: relative;\n z-index: 1;\n @include floatleft;\n @include margin(10px, -8px, 0, -12px);\n padding: 4px;\n }\n\n .row:after {\n @include clearafter;\n }\n\n .move,\n .add {\n @include margin(5px, 5px, 0, 0);\n opacity: 0;\n transition: opacity linear 100ms;\n }\n\n .add {\n padding: 0 5px;\n\n &:before {\n content: 'downangle';\n color: var(--dark-hairline-color);\n }\n\n &:not(.disabled):hover:before,\n &.active:before {\n color: var(--link-color);\n }\n }\n\n .checkbox {\n @include floatleft;\n @include margin(7px, 0, 0, 7px);\n }\n }\n\n ul {\n @include margin-left(-3px);\n\n li {\n @include padding-left(38px);\n background-repeat: no-repeat;\n\n body.ltr & {\n background-image: url(../images/branch.png);\n background-position: 0 0;\n }\n\n body.rtl & {\n background-image: url(../images/branch_rtl.png);\n background-position: 100% 0;\n }\n\n &:not(:last-child):not(.last) {\n @include padding-left(37px);\n @include border-left(1px solid var(--gray-200));\n\n body.ltr & {\n background-position: -1px 0;\n }\n\n body.rtl & {\n background-position: calc(100% + 1px) 0;\n }\n }\n\n &.draginsertion {\n @include margin-left(38px);\n }\n }\n }\n\n .row {\n &.draghover {\n .element {\n z-index: 2;\n border-radius: 15px;\n box-shadow: inset 0 0 0 2px var(--link-color);\n }\n }\n\n &.droptarget {\n border-radius: 5px;\n box-shadow: inset 0 0 0 2px var(--link-color);\n }\n }\n}\n\n/* element select fields */\n.elementselect {\n position: relative;\n min-height: 34px;\n margin-top: -7px;\n\n .elements {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n\n &.flex-row {\n flex-direction: row;\n }\n\n &.flex-wrap {\n flex-wrap: wrap;\n }\n }\n\n .elements:after {\n @include clearafter;\n }\n\n .element {\n @include margin(7px, 7px, 0, 0);\n }\n\n .flex,\n .btn {\n clear: both;\n }\n\n .element {\n z-index: 1;\n\n &.small {\n max-width: 100%;\n\n .label {\n display: block;\n max-width: 100%;\n box-sizing: border-box;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n }\n }\n\n .flex {\n padding-top: 7px;\n }\n}\n\n/* editable tables */\ntable.editable {\n border-radius: var(--large-border-radius);\n border: 1px solid var(--gray-200);\n\n th,\n td.action {\n color: var(--medium-text-color);\n font-weight: normal;\n background-color: var(--gray-050);\n }\n\n thead,\n tbody {\n tr {\n th {\n padding: 6px 10px;\n }\n }\n }\n\n thead {\n tr {\n th {\n border-bottom: 1px solid var(--hairline-color);\n\n &.has-info {\n @include padding-right(calc(15px + 1em));\n }\n\n span.info {\n position: absolute;\n margin-left: 5px;\n }\n }\n }\n }\n\n tbody {\n tr {\n &:not(:first-child) {\n th,\n td {\n border-top: 1px solid var(--hairline-color);\n }\n }\n\n &:last-child {\n td:first-child {\n @include border-bottom-left-radius(var(--large-border-radius));\n\n textarea,\n input.text {\n @include border-bottom-left-radius(\n calc(var(--large-border-radius) - 1px)\n );\n }\n }\n }\n\n td:not(:first-child),\n th ~ td:not(.hidden) ~ td {\n @include border-left(1px solid var(--hairline-color));\n }\n\n th {\n // Set a dark border-left for the first that follows a , if there is one.\n // This is a ridiculous CSS hack since there's no operator/pseudo-class that mimics jQuery's next(selector) function.\n // If there was it could have been as simple as: th ??? td:not(.hidden) { dark left border }\n // kudos to Mark Huot for coming up with it!\n & ~ td:not(:first-child) {\n @include border-left(1px solid #dbdddf);\n }\n }\n\n td {\n vertical-align: top;\n text-align: center;\n background-color: var(--white);\n padding: 4px 10px;\n\n &.focus {\n position: relative;\n box-shadow: inset 0 0 0 1px var(--hairline-color);\n }\n\n &.textual {\n padding: 0;\n\n textarea {\n resize: none;\n }\n\n pre {\n @include alignleft;\n white-space: pre-wrap;\n }\n }\n\n &.lightswitch-cell {\n padding-top: 9px;\n padding-bottom: 9px;\n\n .lightswitch {\n display: block;\n margin: 0 auto;\n }\n }\n\n &.checkbox-cell {\n padding-top: 10px;\n padding-bottom: 10px;\n\n .checkbox-wrapper {\n display: block;\n margin: -2px auto 0;\n width: 16px;\n height: 16px;\n }\n }\n\n &.error {\n box-shadow: inset 0 0 0 1px var(--error-color);\n }\n\n &.disabled {\n position: relative;\n opacity: 1;\n\n &:after {\n content: '';\n font-size: 0;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: transparentize($grey050, 0.25);\n user-select: none;\n }\n }\n\n &.action {\n padding: 4px 7px;\n\n & + td.action {\n @include border-left(none);\n @include padding-left(0);\n }\n }\n\n .flex > * {\n margin-bottom: 0;\n }\n }\n }\n\n textarea,\n textarea.text,\n input.text,\n pre {\n display: block;\n width: 100%;\n border: none;\n box-shadow: none;\n border-radius: 0;\n padding: 7px 10px;\n background-color: transparent;\n overflow: hidden;\n transition: none;\n box-sizing: border-box;\n }\n\n .color-container {\n display: block;\n position: relative;\n\n & > .color,\n .color-input {\n margin-bottom: 0;\n }\n\n & > .color {\n position: absolute;\n top: 10px;\n @include left(10px);\n z-index: 1;\n }\n\n .color-hex-indicator {\n @include left(32px);\n }\n\n .color-input {\n @include padding-left(calc(32px + 1em));\n }\n }\n\n .datewrapper,\n .timewrapper {\n display: block;\n width: 100%;\n\n .text + div[data-icon] {\n top: 6px;\n @include left(10px);\n }\n }\n }\n\n &:not(.static) {\n td.textual {\n cursor: text;\n }\n }\n\n & + .btn.add {\n display: block;\n width: 100%;\n }\n\n &:not(.hidden) + .btn.add {\n border-top-width: 0;\n border-radius: 0 0 var(--medium-border-radius) var(--medium-border-radius);\n }\n}\n\n.border-box,\n.shadow-box {\n & + .buttons {\n margin-top: 7px;\n }\n}\n\n/* ----------------------------------------\n/* Nav\n/* ----------------------------------------*/\n\nul.tree,\n.tree ul {\n @include margin-left(20px);\n}\n\n.tree li .toggle {\n @include margin(7px, 0, 0, -15px);\n}\n\n/* status icons */\n.status {\n display: inline-block;\n position: relative;\n @include margin-right(10px);\n width: 10px;\n height: 10px;\n border: 1px solid transparent;\n border-radius: 100%;\n box-sizing: border-box;\n background-clip: border-box;\n\n body.use-shapes & {\n &.all {\n rotate: 45deg;\n background-image: linear-gradient(30deg, #184cef, #e5422b);\n }\n\n &.pending {\n background-color: transparent;\n border-style: solid;\n border-width: 0 5px 10px 5px;\n border-color: transparent transparent var(--pending-color) transparent;\n border-radius: 1px;\n }\n\n &.all,\n &.off,\n &.suspended,\n &.expired {\n border-radius: 2px;\n transform: scale(90%);\n }\n }\n}\n\n.status:not(.on):not(.live):not(.active):not(.enabled):not(.all):not(\n .pending\n ):not(.off):not(.suspended):not(.expired):not(.yellow):not(.orange):not(\n .red\n ):not(.pink):not(.purple):not(.blue):not(.green):not(.turquoise):not(\n .light\n ):not(.grey):not(.black) {\n border-color: var(--ui-control-color);\n}\n\n.green,\n.status.on,\n.status.live,\n.status.active,\n.status.enabled {\n background-color: var(--enabled-color);\n}\n\n.status.all {\n background-image: linear-gradient(60deg, #184cef, #e5422b);\n background-origin: border-box;\n}\n\n.orange,\n.status.pending {\n background-color: var(--pending-color);\n}\n\n.red,\n.status.off,\n.status.suspended,\n.status.expired {\n background-color: var(--disabled-color);\n}\n\n.yellow {\n background-color: var(--yellow-300);\n}\n\n.pink {\n background-color: var(--pink-400);\n}\n\n.purple {\n background-color: #9b59b6;\n}\n\n.blue {\n background-color: var(--blue-600);\n}\n\n.turquoise {\n background-color: var(--teal-300);\n}\n\n.status.light {\n background-color: var(--gray-100);\n}\n\n.grey {\n background-color: var(--gray-300);\n}\n\n.black {\n background-color: var(--gray-800);\n}\n\n.status.white,\n.status.disabled {\n opacity: 1;\n}\n\n/* ----------------------------------------\n/* Condition builders\n/* ----------------------------------------*/\n\n.condition-container {\n margin: 24px 0;\n}\n\n.condition:not(:empty) + .condition-footer .btn.add {\n}\n\n.condition-rule,\n.condition-footer {\n padding: 7px;\n}\n\n.condition-footer {\n border: 1px dashed var(--medium-hairline-color);\n border-radius: var(--large-border-radius);\n\n .condition:not(:empty) + & {\n border-top-width: 0;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n }\n\n .spinner:not(.loading) {\n display: none;\n }\n}\n\n.condition-rule {\n margin: 0;\n border: 1px solid var(--hairline-color);\n background-color: var(--gray-050);\n\n &:first-child {\n border-top-left-radius: var(--large-border-radius);\n border-top-right-radius: var(--large-border-radius);\n }\n\n & + .condition-rule {\n border-top-width: 0;\n }\n\n & > .rule-move,\n & > .rule-actions {\n margin-top: 5px;\n }\n\n & > .rule-body {\n .lightswitch {\n margin-top: 6px;\n display: block;\n }\n\n .selectize {\n min-width: 100px;\n }\n\n .text.fullwidth {\n min-width: 100px;\n max-width: 100%;\n }\n }\n}\n\n/* ----------------------------------------\n/* Progress bar\n/* ----------------------------------------*/\n\n.progressbar {\n border-radius: 6px;\n border: 2px solid var(--gray-700);\n padding: 2px;\n position: absolute;\n left: 20%;\n width: 60%;\n z-index: 1000;\n}\n\n.progressbar-inner {\n border-radius: 2px;\n height: 4px;\n background-color: var(--gray-700);\n}\n\n.progressbar:not(.pending) .progressbar-inner {\n width: 0;\n transition: width linear 100ms;\n}\n\n.progressbar.pending .progressbar-inner {\n @include striped-bg(17.6776695297px, var(--gray-700)); // sqrt(25^2 / 2);\n body.ltr & {\n animation-name: pendingprogress-ltr;\n }\n body.rtl & {\n animation-name: pendingprogress-rtl;\n }\n animation-timing-function: linear;\n animation-duration: 250ms;\n animation-iteration-count: infinite;\n}\n\n@keyframes pendingprogress-ltr {\n from {\n background-position: 0;\n }\n to {\n background-position: 25px;\n }\n}\n\n@keyframes pendingprogress-rtl {\n from {\n background-position: 0;\n }\n to {\n background-position: -25px;\n }\n}\n\n.elementselect .progress-shade {\n background-color: transparentize($white, 0.2);\n width: 100%;\n height: 100%;\n position: absolute;\n top: 0;\n @include left(0);\n display: none;\n}\n\n.elementselect.uploading {\n position: relative;\n}\n\n.elementselect.uploading .progress-shade {\n display: block;\n z-index: 2;\n}\n\n// Plugin installers\n\n.missing-component {\n padding: 7px 10px !important;\n max-width: 400px;\n background-color: var(--gray-050) !important;\n\n .error {\n margin: 0;\n }\n\n .install-plugin {\n margin: 7px 0 -7px;\n border-top: 1px solid var(--hairline-color);\n position: relative;\n @include padding(10px, 0, 10px, 40px);\n\n .icon {\n width: 32px;\n height: 32px;\n position: absolute;\n top: calc(50% - 16px);\n @include left(0);\n\n img,\n svg {\n width: 100%;\n height: 100%;\n }\n }\n\n h3 {\n flex: 1;\n margin: 8px 0 !important;\n }\n\n .btn {\n margin: 0;\n }\n }\n}\n\n/* ----------------------------------------\n/* Panes, Modals and HUDs\n/* ----------------------------------------*/\n\n.pane {\n @include pane;\n position: relative;\n margin: 14px 0;\n padding: 24px;\n border-radius: var(--large-border-radius);\n word-wrap: break-word;\n box-sizing: border-box;\n\n .pane &,\n #content & {\n background-color: var(--gray-050);\n border: 1px solid var(--hairline-color);\n box-shadow: none;\n }\n\n &.loading {\n min-height: 200px;\n\n &:after {\n display: block;\n content: '';\n font-size: 0;\n position: absolute;\n top: 0;\n left: -24px;\n width: calc(100% + #{24 + 24}px);\n height: 100%;\n }\n }\n}\n\n.pane-header {\n margin: calc(var(--xl) * -1) var(--neg-padding) var(--xl);\n padding: var(--s) var(--xl);\n min-height: 50px;\n box-sizing: border-box;\n box-shadow: inset 0 -1px 0 0 transparentize($grey300, 0.75);\n border-radius: var(--large-border-radius) var(--large-border-radius) 0 0;\n background-color: var(--gray-050);\n\n .header-btn {\n margin: 2px 0;\n @include header-btn;\n }\n\n .spinner {\n margin: 0 !important;\n }\n}\n\n.pane-tabs {\n display: flex;\n flex-direction: row;\n align-items: center;\n margin: calc(var(--s) * -1) calc(var(--xl) * -1);\n\n &:first-child {\n border-radius: var(--large-border-radius) var(--large-border-radius) 0 0;\n overflow: hidden;\n }\n\n [role='tablist'] {\n flex: 1;\n display: flex;\n flex-direction: row;\n overflow-x: auto;\n scrollbar-width: none;\n\n &::-webkit-scrollbar {\n display: none;\n }\n\n &.scrollable {\n body.ltr & {\n mask-image: linear-gradient(\n to left,\n rgba(0, 0, 0, 0),\n rgba(0, 0, 0, 1) 24px\n );\n }\n body.rtl & {\n mask-image: linear-gradient(\n to right,\n rgba(0, 0, 0, 0),\n rgba(0, 0, 0, 1) 24px\n );\n }\n }\n\n [role='tab'] {\n --tab-label-color: var(--light-text-color);\n\n &.error {\n --highlight-color: var(--error-color) !important;\n --tab-label-color: var(--error-color) !important;\n }\n\n &,\n .tab-label {\n border-radius: 2px 2px 0 0;\n }\n\n .tab-label {\n display: flex;\n flex-direction: row;\n align-items: center;\n position: relative;\n padding: 0 24px;\n white-space: nowrap;\n color: var(--tab-label-color);\n height: 50px;\n }\n\n &:hover {\n text-decoration: none;\n }\n\n @include focus-styles {\n box-shadow: none;\n\n .tab-label {\n box-shadow: var(--inner-focus-ring);\n }\n }\n\n &:not(.sel) {\n &:hover {\n background-color: transparentize($grey300, 0.85);\n }\n }\n\n &.sel {\n --highlight-color: var(--gray-500);\n --tab-label-color: var(--text-color);\n position: relative;\n z-index: 1;\n cursor: default;\n box-shadow: inset 0 2px 0 var(--highlight-color),\n 0 0 0 1px $hairlineColor, 0 2px 12px transparentize($grey200, 0.5);\n background-color: var(--white);\n }\n\n span[data-icon] {\n @include margin-left(4px);\n }\n }\n }\n\n &:first-child {\n [role='tablist'] {\n [role='tab'] {\n &:first-child {\n &,\n .tab-label {\n @include border-top-left-radius(var(--large-border-radius));\n }\n }\n }\n }\n }\n\n .menubtn {\n margin: 0 var(--xl);\n }\n}\n\n/* detail sidebars */\n.details {\n --spacing: var(--l);\n padding: 0 var(--padding) var(--spacing);\n\n .meta,\n .field,\n hr {\n margin-left: var(--neg-padding);\n margin-right: var(--neg-padding);\n }\n\n .meta {\n margin-bottom: var(--spacing);\n\n &:not(.read-only) {\n background-color: var(--gray-050) !important;\n }\n\n &.read-only {\n color: var(--medium-text-color);\n\n & > .data {\n align-items: baseline;\n min-height: auto;\n\n & > .heading,\n & > .value {\n padding: 6px 0;\n }\n\n &:first-child {\n & > .heading,\n & > .value {\n padding-top: 0;\n }\n }\n\n &:last-child {\n & > .heading,\n & > .value {\n padding-bottom: 0;\n }\n }\n }\n }\n\n &.warning {\n padding-top: var(--m);\n padding-bottom: var(--m);\n color: var(--text-color) !important;\n background-color: var(--yellow-050) !important;\n box-shadow: 0 0 0 1px var(--yellow-300),\n 0 2px 12px transparentize($grey200, 0.5);\n\n p {\n margin-bottom: 5px;\n }\n\n .btn {\n background-color: var(--yellow-300);\n\n &:hover,\n &:focus {\n background-color: darken($yellow300, 10%);\n }\n\n &:active {\n background-color: darken($yellow300, 15%);\n }\n }\n }\n\n & > .field,\n & > .data {\n margin: 0 var(--neg-padding) !important;\n\n & > .heading > label,\n & > .heading {\n color: var(--gray-600);\n }\n }\n\n & > .field > .status-badge {\n @include left(0);\n }\n\n .text::placeholder,\n .datewrapper .text + div[data-icon],\n .timewrapper .text + div[data-icon] {\n color: var(--gray-500);\n }\n\n .ui-datepicker {\n @include margin(0, 0, 0, -8px);\n }\n }\n\n hr {\n margin: var(--spacing) 0;\n border-top-color: var(--hairline-color);\n }\n\n @include placeholder-styles(var(--gray-500));\n\n .text {\n background-color: transparent !important;\n resize: none;\n }\n\n & > .field > .heading > label,\n & > fieldset > legend {\n margin-top: 0;\n font-weight: normal;\n color: var(--gray-600);\n }\n\n & > fieldset {\n margin: 0 0 var(--spacing);\n\n & > legend {\n margin-bottom: 5px;\n }\n }\n\n & > .field {\n margin: 0 0 var(--spacing);\n\n & > .heading {\n margin-top: 0;\n }\n\n & > .input > .text.fullwidth {\n margin: 0 var(--neg-padding);\n padding-left: var(--padding);\n padding-right: var(--padding);\n border: none;\n background-color: var(--gray-050) !important;\n width: calc(100% + var(--padding) + var(--padding));\n }\n }\n\n & > .text {\n border-radius: var(--large-border-radius);\n margin-bottom: var(--spacing);\n\n &:not(:focus) {\n border-color: transparentize($inputColor, 0.6);\n }\n }\n}\n\n/* meta panes */\n$min2ColWidth: 400px;\n\n.meta {\n padding: 0 var(--padding);\n overflow: visible;\n\n &,\n & > .flex-fields {\n & > .field,\n & > .data {\n display: flex;\n min-height: 50px;\n box-sizing: border-box;\n flex-wrap: wrap; // for error lists\n justify-content: space-between;\n align-items: center;\n margin: 0 var(--neg-padding) !important;\n padding: 0 var(--padding);\n transition: padding-left linear 100ms, padding-right linear 100ms;\n\n &.nested {\n @include padding-left(38px);\n }\n\n &.add {\n background-color: darken($grey050, 2%);\n\n &:before {\n position: absolute;\n @include left(0);\n width: 31px;\n @include alignright;\n @include icon;\n content: 'plus';\n color: var(--light-text-color);\n }\n\n .input {\n width: 100%;\n }\n }\n\n & > .heading {\n margin: 0;\n\n @media screen and (min-width: $min2ColWidth) {\n flex: 0 0 104px;\n @include margin-right(var(--s));\n line-height: 18px;\n }\n }\n\n &.lightswitch-field > .heading {\n flex: 1;\n }\n\n & > .input {\n .flex {\n flex-wrap: nowrap;\n\n & > * {\n margin-bottom: 0;\n }\n }\n }\n }\n\n & > .field > .heading {\n padding-top: var(--s);\n\n @media screen and (min-width: $min2ColWidth) {\n padding: 14px 0;\n }\n\n & > .copytextbtn {\n display: none;\n }\n }\n\n & > .data > .heading {\n padding: var(--s) 0;\n }\n\n & > .field > .heading > label,\n & > .data > .heading {\n color: var(--medium-text-color);\n }\n\n & > .field > .input,\n & > .data > .value {\n padding: var(--s) 0;\n width: 100%;\n\n @media screen and (min-width: $min2ColWidth) {\n width: calc(100% - 112px);\n }\n }\n\n & > .data > .value {\n display: flex;\n align-items: center;\n\n & > [data-icon='draft'] {\n margin-top: -2px;\n @include margin-right(8px);\n }\n }\n\n & > .field.lightswitch-field > .input {\n flex: 0;\n width: auto;\n }\n\n & > .field {\n &.has-errors {\n border: 1px solid var(--error-color) !important;\n\n &:first-child {\n border-top-left-radius: var(--large-border-radius);\n border-top-right-radius: var(--large-border-radius);\n }\n\n &:last-child {\n border-bottom-left-radius: var(--large-border-radius);\n border-bottom-right-radius: var(--large-border-radius);\n }\n\n & + .field {\n border-top: none !important;\n }\n }\n\n & > .heading {\n & > label,\n & > legend {\n font-weight: normal;\n }\n }\n\n & > .input {\n &,\n & > .flex,\n & > .flex > .textwrapper,\n & > .datewrapper,\n & > .timewrapper,\n & > .datetimewrapper > .datewrapper,\n & > .datetimewrapper > .timewrapper {\n & > .text {\n display: block;\n margin: calc(var(--s) * -1) 0;\n padding: 14px 0;\n border-radius: 0;\n background-color: transparent;\n border: none !important;\n }\n }\n\n & > .datewrapper,\n & > .timewrapper,\n & > .datetimewrapper > .datewrapper,\n & > .datetimewrapper > .timewrapper {\n background-color: transparent;\n .text + div[data-icon] {\n @include left(0);\n }\n }\n\n & > .datetimewrapper {\n & > .datewrapper {\n width: 55%;\n }\n\n & > .timewrapper {\n width: 45%;\n }\n\n & > .clear-btn {\n @include margin-right(-24px);\n }\n }\n\n & > .datewrapper,\n & > .timewrapper {\n display: block;\n width: 100%;\n }\n }\n\n & > ul.errors {\n margin: 0;\n padding: 0 0 6px;\n width: 100%;\n list-style-type: none;\n }\n\n & > .clear-btn {\n @include margin-right(var(--neg-padding));\n }\n }\n }\n\n & > .field:not(:first-child),\n & > .flex-fields + .field {\n border-top: 1px solid var(--hairline-color);\n }\n\n & > .flex-fields {\n h2,\n blockquote.note {\n margin: 0 -24px !important;\n padding: 14px 24px;\n background-color: darken($grey050, 2%);\n }\n\n blockquote.note {\n border-radius: 0;\n border: none;\n }\n\n hr {\n margin: 0 -24px;\n }\n }\n}\n\n.meta > .field > .input > .select {\n display: block;\n margin: calc(var(--s) * -1) 0;\n width: 100%;\n border-radius: 0;\n box-shadow: none;\n background-color: transparent;\n\n &:after {\n @include right(0);\n }\n\n & + .spinner {\n position: absolute;\n top: calc(50% - 17px);\n @include right(-24px);\n }\n\n select {\n @include padding(var(--s), 12px, var(--s), 0);\n width: 100%;\n background-color: transparent;\n }\n}\n\n.body {\n position: relative;\n}\n\n.slideout-container,\n.slideout,\n.modal,\n.hud {\n z-index: 100;\n box-sizing: border-box;\n}\n\n.modal,\n.hud .body {\n @include modal;\n}\n\n.slideout-shade {\n opacity: 0;\n transition: opacity linear 250ms;\n\n &.so-visible {\n opacity: 1;\n }\n}\n\n.slideout-container {\n position: fixed;\n top: 0;\n left: 0;\n width: 100vw;\n height: 100vh;\n height: -webkit-fill-available; // h/t https://twitter.com/AllThingsSmitty/status/1254151507412496384\n pointer-events: none;\n\n body.has-debug-toolbar & {\n height: calc(100vh - 42px);\n }\n}\n\n.slideout {\n position: absolute;\n background-color: var(--white);\n box-shadow: 0 0 0 1px transparentize($grey400, 0.75),\n 0 25px 100px transparentize($grey900, 0.5) !important;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n padding: 24px var(--padding);\n pointer-events: all;\n\n &.so-mobile {\n --padding: 14px;\n --neg-padding: -14px;\n width: 100%;\n height: 100%;\n left: 0;\n transition: top linear 250ms;\n will-change: top;\n }\n\n &:not(.so-mobile) {\n top: 8px;\n width: calc(50% - 8px);\n height: calc(100% - 16px);\n border-radius: var(--large-border-radius);\n\n @media screen and (prefers-reduced-motion: no-preference) {\n body.ltr & {\n transition: left linear 250ms;\n will-change: left;\n }\n\n body.rtl & {\n transition: right linear 250ms;\n will-change: right;\n }\n }\n }\n\n & > .pane-header {\n z-index: 2;\n\n & > .so-toolbar {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: var(--s);\n min-height: calc(50px - 16px);\n\n & > .pane-tabs {\n width: 1px; // give other elements in the header plenty of room before the tabs take up whatever's left\n flex: 1;\n @include margin-right(0);\n }\n }\n }\n\n &.so-mobile > .pane-header {\n padding-left: 10px;\n padding-right: 10px;\n }\n\n & > .so-body {\n flex: 1;\n margin: -24px var(--neg-padding) 0;\n padding: 24px var(--padding);\n overflow: hidden auto;\n position: relative;\n\n & > .so-sidebar {\n position: absolute;\n top: 0;\n @include pane();\n width: 350px;\n height: 100%;\n max-width: 100%;\n box-sizing: border-box;\n padding: 0 var(--padding) var(--spacing);\n background-color: var(--gray-100);\n overflow: hidden auto;\n z-index: 1;\n\n body.ltr & {\n transition: right linear 250ms;\n }\n body.rtl & {\n transition: left linear 250ms;\n }\n\n & > .preview-thumb-container {\n margin: 0 var(--neg-padding);\n height: auto;\n min-height: 54px; // make room for the Preview / Edit buttons\n\n & + .pane-header {\n border-radius: 0;\n }\n }\n\n .image-actions {\n &.is-mobile {\n margin: calc(var(--spacing) / 2) 0 var(--spacing);\n }\n }\n\n & > .meta.read-only:first-child {\n margin-top: var(--padding);\n }\n\n & > .meta.warning {\n box-shadow: none;\n border-bottom: 1px solid var(--yellow-300);\n }\n\n & > .field {\n & > .input > .text.fullwidth {\n border-radius: 0;\n }\n }\n\n .notes {\n padding-top: var(--m);\n padding-bottom: var(--m);\n }\n }\n }\n\n & > .so-footer {\n position: relative;\n display: flex;\n gap: 8px;\n justify-content: space-between;\n flex-wrap: wrap;\n margin: 0 var(--neg-padding) -24px;\n padding: 8px var(--padding);\n @include pane;\n background-color: var(--gray-050);\n z-index: 3;\n\n & > .so-extra {\n flex: 0 0 100%;\n margin: 0 var(--neg-padding);\n padding: 0 var(--padding) 8px;\n border-bottom: 1px solid var(--hairline-color);\n }\n }\n}\n\n@media (min-width: 1536px) {\n .slideout {\n &.has-sidebar {\n .pane-header:not(.so-visible) {\n display: none;\n }\n\n .sidebar-btn {\n display: none;\n }\n\n .so-body {\n display: flex;\n flex-direction: row;\n padding: 0;\n overflow: hidden;\n\n & > .so-content {\n position: relative;\n z-index: 2;\n padding: 24px;\n width: calc(100% - 350px);\n height: 100%;\n box-sizing: border-box;\n @include border-right(1px solid var(--gray-200));\n overflow: hidden auto;\n }\n\n & > .so-sidebar {\n position: relative;\n display: block !important;\n top: auto;\n right: auto !important;\n left: auto !important;\n height: 100%;\n box-shadow: none;\n }\n }\n }\n\n & > .so-footer {\n & > .so-extra {\n margin: 0;\n padding: 0;\n border: none;\n flex: auto 0 1;\n }\n }\n }\n}\n\n.header,\n.hud-header,\n.footer,\n.hud-footer,\n.body {\n &:after {\n @include clearafter;\n }\n}\n\n.header,\n.hud-header,\n.footer,\n.hud-footer {\n position: relative;\n z-index: 1;\n box-sizing: border-box;\n}\n\n.header,\n.hud-header,\n.footer,\n.hud-footer {\n background-color: var(--gray-100);\n}\n\n.header,\n.hud-header {\n border-radius: var(--large-border-radius) var(--large-border-radius) 0 0;\n padding: 24px;\n box-shadow: inset 0 -1px 0 var(--hairline-color);\n\n h1 {\n margin: 0;\n }\n}\n\n.footer,\n.hud-footer {\n border-radius: 0 0 var(--large-border-radius) var(--large-border-radius);\n padding: var(--s) var(--xl);\n box-shadow: inset 0 1px 0 var(--hairline-color);\n\n &.flex {\n & > * {\n margin-bottom: 0;\n }\n }\n}\n\n.modal .body,\n.hud .main {\n padding: 24px;\n overflow: hidden;\n box-sizing: border-box;\n}\n\n.pane,\n.modal .body {\n .header {\n margin: -24px -24px 24px;\n }\n\n .footer {\n margin: 24px -24px -24px;\n }\n}\n\n.slideout-shade,\n.modal-shade,\n.hud-shade {\n z-index: 100;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: none;\n}\n\n.slideout-shade,\n.modal-shade {\n &:not(.dark) {\n background-color: transparentize($grey400, 0.65) !important;\n }\n\n &.dark {\n background-color: transparentize($grey900, 0.5) !important;\n }\n}\n\n.modal {\n position: fixed;\n overflow: hidden;\n\n &:not(.fitted):not(.fullscreen) {\n width: 66%;\n height: 66%;\n min-width: 600px;\n min-height: 400px;\n }\n\n &.fitted {\n width: auto;\n height: auto;\n min-width: 0;\n min-height: 0;\n }\n\n &.fullscreen {\n width: 100%;\n height: 100%;\n border-radius: 0;\n }\n\n &.alert .body {\n @include padding-left(76px);\n\n &:before {\n @include icon;\n @include margin(-6px, 0, 0, -58px);\n @include floatleft;\n content: 'alert';\n font-size: 40px;\n color: var(--light-text-color);\n }\n }\n\n &.secure .body {\n @include padding-left(76px);\n\n &:before {\n @include icon;\n @include margin(-14px, 0, 0, -56px);\n @include floatleft;\n content: 'secure';\n font-size: 58px;\n color: var(--light-text-color);\n }\n }\n\n .resizehandle {\n position: absolute;\n z-index: 1;\n bottom: 0;\n @include right(0);\n width: 24px;\n height: 24px;\n cursor: nwse-resize;\n padding: var(--xs);\n\n path {\n fill: var(--ui-control-color);\n }\n\n body.rtl & {\n .ltr {\n display: none;\n }\n }\n\n body.ltr & {\n .rtl {\n display: none;\n }\n }\n }\n}\n\n.hud {\n position: absolute;\n display: none;\n top: 0;\n\n &.has-footer .tip-bottom {\n background-image: url(../images/hudtip_bottom_gray.png);\n }\n\n .tip {\n position: absolute;\n z-index: 101;\n background: no-repeat 0 0;\n }\n\n .tip-left {\n left: -15px;\n width: 15px;\n height: 30px;\n background-image: url(../images/hudtip_left.png);\n }\n\n .tip-top {\n top: -15px;\n width: 30px;\n height: 15px;\n background-image: url(../images/hudtip_top.png);\n }\n\n .tip-right {\n right: -15px;\n width: 15px;\n height: 30px;\n background-image: url(../images/hudtip_right.png);\n }\n\n .tip-bottom {\n bottom: -15px;\n width: 30px;\n height: 15px;\n background-image: url(../images/hudtip_bottom.png);\n }\n}\n\n.hud .hud-header,\n.hud .hud-footer {\n padding: var(--s) var(--xl);\n}\n\n.hud .body {\n overflow: hidden;\n\n ::-webkit-scrollbar {\n appearance: none;\n\n &:vertical {\n width: 11px;\n }\n\n &:horizontal {\n height: 11px;\n }\n }\n\n ::-webkit-scrollbar-thumb {\n border-radius: 8px;\n border: 2px solid transparent;\n background-color: transparentize($black, 0.5);\n }\n\n ::-webkit-scrollbar-track {\n background-color: var(--gray-050);\n }\n}\n\n/* inline asset previews */\n\n.preview-thumb-container {\n position: relative;\n display: flex;\n flex-direction: row;\n align-items: center;\n height: 190px;\n background-color: var(--gray-900);\n margin: 0 var(--neg-padding) var(--spacing);\n\n &.checkered img {\n background-color: var(--white);\n @include checkered-bg(17px);\n }\n\n &.editable {\n cursor: pointer;\n }\n\n &.loading {\n &:after {\n content: '';\n font-size: 0;\n display: block;\n position: absolute;\n width: 100%;\n height: 100%;\n left: 0;\n top: 0;\n background-color: transparentize($grey900, 0.2);\n }\n\n .spinner {\n color: var(--white);\n z-index: 1;\n }\n }\n\n #details & {\n border-radius: var(--large-border-radius);\n overflow: hidden;\n }\n\n .preview-thumb {\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 100%;\n height: 100%;\n\n img {\n display: block;\n max-width: 100%;\n max-height: 190px;\n }\n }\n}\n\n.image-actions {\n &.is-mobile {\n margin: calc((var(--spacing) / 2) * -1) var(--neg-padding) var(--spacing);\n display: grid;\n grid-template-columns: 1fr 1fr;\n }\n}\n\n.button-fade {\n .buttons {\n opacity: 0;\n position: absolute;\n top: 10px;\n @include right(10px);\n margin: 0;\n transition: opacity linear 100ms;\n\n .btn {\n --ui-control-color: var(--white);\n --ui-control-hover-color: var(--white);\n --ui-control-active-color: var(--white);\n --interaction-background-color: var(--gray-700);\n background-color: var(--gray-600);\n color: var(--white);\n @include light-on-dark-text;\n @include two-color-focus-ring($light-button: false);\n\n &:hover {\n background-color: var(--interaction-background-color) !important;\n }\n\n &:not(.disabled):not(.loading):not(.dashed) {\n &:focus,\n &.focus,\n &:hover {\n background-color: var(--interaction-background-color);\n }\n }\n }\n }\n\n &:hover,\n &:focus-within {\n .buttons {\n opacity: 1;\n }\n }\n}\n\n/* element selector modals */\n.elementselectormodal {\n --content-padding: 24px;\n padding-bottom: 50px;\n user-select: none;\n\n .body {\n position: relative;\n height: 100%;\n\n .spinner.big {\n position: absolute;\n top: 50%;\n left: 50%;\n margin: -24px 0 0 -24px;\n }\n\n .content {\n height: calc(100% + 48px);\n\n .sidebar {\n position: absolute;\n top: 0;\n @include margin-left(-249px);\n height: 100%;\n overflow: auto;\n padding: var(--content-padding) 0;\n }\n\n .main {\n margin: -24px;\n padding: var(--content-padding);\n height: 100%;\n box-sizing: border-box;\n overflow: auto;\n position: relative;\n\n .elements {\n &.busy {\n min-height: calc(100% - 48px);\n }\n\n .tableview table {\n .element {\n display: inline-block;\n }\n\n tr {\n &.disabled {\n opacity: 1;\n color: var(--gray-200);\n\n .element {\n opacity: 0.25;\n }\n }\n\n th,\n td {\n cursor: default;\n }\n\n td:first-child {\n @include padding-left(7px);\n }\n }\n }\n\n .structure .row {\n margin-top: 1px;\n }\n }\n }\n }\n }\n\n .footer {\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n margin: 0;\n box-sizing: border-box;\n\n .spinner {\n @include floatright;\n @include margin-right(-24px);\n }\n }\n}\n\n/* element selector modals & customize sources modal */\n.elementselectormodal,\n.customize-sources-modal {\n .main-header {\n display: flex;\n align-items: center;\n margin-bottom: var(--s);\n }\n\n .main-heading {\n margin-bottom: 0;\n }\n\n .nav-toggle {\n @include margin-left(4px);\n @include touch-target;\n color: var(--ui-control-color);\n\n &:hover {\n color: var(--gray-500);\n }\n }\n\n .sidebar-header {\n display: flex;\n justify-content: flex-end;\n padding: 0 var(--s);\n margin-bottom: var(--s);\n }\n\n .nav-close {\n @include touch-target;\n }\n}\n\n/* element editing HUD */\n.element-hud-form {\n .buttons {\n position: relative;\n\n .spinner {\n position: absolute;\n top: 0;\n @include right(-24px);\n }\n }\n}\n\n/* element index view menu */\n.element-index-view-menu {\n width: 400px;\n max-width: calc(100% - 20px);\n padding: 0 !important;\n\n .meta {\n padding-top: var(--s);\n padding-bottom: var(--s);\n }\n\n .table-columns-field {\n align-items: flex-start;\n\n .input {\n padding: 13px 0;\n }\n }\n\n .menu-footer {\n margin: 0 !important;\n padding: var(--s) var(--xl) !important;\n background-color: var(--gray-050);\n }\n}\n\n.element-index-view-menu-table-column .icon.move {\n @include margin-right(10px);\n}\n\n/* sort fields */\n.sort-field {\n .input {\n .flex {\n .btngroup {\n .btn {\n width: 42px;\n }\n }\n\n .flex-grow {\n max-width: calc(100% - 85px - var(--s));\n }\n\n @media screen and (max-width: 350px) {\n flex-direction: column;\n\n & > * {\n width: 100%;\n }\n\n .flex-grow {\n max-width: none;\n }\n }\n }\n }\n}\n\n/* element filter HUD */\n.element-filter-hud {\n &.loading .body {\n padding: 50px;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .body,\n .main {\n overflow: visible;\n }\n}\n\n/* Address Cards */\n.address-cards {\n display: grid;\n gap: var(--m) var(--m);\n grid-template-columns: repeat(1, minmax(0, 1fr));\n grid-auto-rows: minmax(0, 1fr);\n\n .so-content & {\n grid-template-columns: repeat(1, minmax(0, 1fr)) !important;\n }\n}\n\n.address-cards__add-btn {\n padding: 1rem;\n min-height: 8rem;\n height: auto;\n width: 100%;\n}\n\n.address-card.error {\n border: 1px solid #cf1124;\n}\n\n.address-card.error:hover {\n border-color: #cf1124;\n}\n\n@media (min-width: 1024px) {\n .address-cards {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n }\n}\n\n@media (min-width: 1280px) {\n .address-cards {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n\n .so-content & {\n grid-template-columns: repeat(2, minmax(0, 1fr)) !important;\n }\n }\n}\n\n@media (min-width: 1536px) {\n .address-cards {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n }\n}\n\n.address-card {\n border: 1px solid #eee;\n border-radius: 0.375rem;\n padding: 1rem;\n min-height: 4rem;\n}\n\n.address-card:hover {\n border-color: #ddd;\n background-color: #fafafa;\n cursor: pointer;\n}\n\n.address-card .address-card-header {\n display: flex;\n flex-wrap: nowrap;\n justify-content: space-between;\n}\n\n.address-card .address-card-header-actions {\n display: flex;\n justify-content: flex-end;\n}\n\n.address-card .address-card-label {\n background: #e6f1fe;\n color: #2563eb;\n padding: 0.125rem 0.5rem;\n border-radius: 0.25rem;\n font-size: 0.75rem;\n text-transform: uppercase;\n font-weight: 500;\n margin-bottom: 0.75rem;\n\n .ltr & {\n margin-right: 0.5rem;\n }\n\n .rtl & {\n margin-left: 0.5rem;\n }\n}\n\n/* logout warning/login/elevated session modals */\n.logoutwarningmodalshade,\n.loginmodalshade {\n z-index: 101;\n}\n\n#logoutwarningmodal,\n#loginmodal,\n#elevatedsessionmodal,\n.prompt {\n width: 500px;\n}\n\n#logoutwarningmodal,\n#loginmodal {\n z-index: 101;\n}\n\n.prompt {\n height: auto;\n min-height: auto;\n}\n\n/* delete user modal */\n.deleteusermodal {\n .content-summary {\n margin: -24px -24px 24px;\n padding: 24px;\n background-color: var(--gray-050);\n }\n\n .options {\n label {\n display: inline-block;\n line-height: 30px;\n }\n }\n\n .elementselect {\n @include margin-left(10px);\n display: inline-block;\n vertical-align: middle;\n }\n\n .buttons {\n .spinner {\n @include margin-right(-20px);\n }\n }\n}\n\n.dropdownsettingsmodal {\n width: auto;\n height: auto;\n min-width: 0;\n min-height: 0;\n max-width: 400px;\n\n .body {\n max-height: 100%;\n overflow-y: auto;\n }\n}\n\n.previewmodal {\n &.zilch {\n padding: 100px 0;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n}\n\n/* ----------------------------------------\n/* Menus\n/* ----------------------------------------*/\n\n.menu,\n.ui-datepicker,\n.ui-timepicker-list {\n @include menu-styles;\n}\n\n.ui-datepicker,\n.ui-timepicker-list {\n padding: 0;\n}\n\n.menu {\n display: none;\n position: absolute;\n\n h6 {\n &:first-child {\n margin-top: 14px !important;\n }\n }\n\n ul {\n &.padded {\n li {\n a,\n .menu-option {\n @include padding-left(24px);\n\n &[data-icon],\n &.icon,\n &.sel {\n &:before {\n @include floatleft;\n @include margin(3px, 0, 0, -17px);\n font-size: 14px;\n color: var(--ui-control-color);\n }\n\n &.error:before {\n color: var(--error-color);\n }\n }\n\n &.sel:not([data-icon]):before {\n content: 'check';\n }\n }\n }\n }\n\n li {\n a,\n .menu-option {\n @include menu-option-styles;\n font-size: 14px;\n cursor: default;\n -webkit-appearance: none;\n\n &:not(.flex) {\n display: table !important;\n box-sizing: border-box;\n width: calc(100% + 28px);\n @include alignleft;\n }\n\n &.sel {\n cursor: default;\n }\n\n .shortcut {\n @include floatright;\n @include margin-left(14px);\n padding: 0 4px;\n border-radius: var(--medium-border-radius);\n box-shadow: 0 0 0 1px transparentize($grey600, 0.75),\n 0 1px 3px -1px transparentize($grey600, 0.5);\n }\n }\n }\n }\n\n & > .flex {\n margin-top: 10px;\n margin-bottom: 10px;\n position: relative;\n\n &.padded {\n @include margin-left(-14px);\n @include padding-left(24px);\n\n &.sel {\n &:before {\n position: absolute;\n top: 36px;\n @include left(7px);\n content: 'check';\n font-size: 14px;\n color: var(--light-text-color);\n }\n }\n }\n }\n\n hr {\n margin: 5px -14px;\n }\n\n .go:after {\n color: inherit;\n }\n}\n\n.menubtn,\n.menu {\n span.icon {\n display: inline-block;\n margin-top: -1px;\n width: 10px;\n @include margin-right(10px);\n text-align: center;\n font-size: 14px;\n color: var(--ui-control-color);\n }\n}\n\n.menu:not(.menu--disclosure) ul li a:not(.sel):not(.disabled):hover,\n.menu:not(.menu--disclosure):not(:hover) ul li a:not(.disabled).hover {\n @include menu-option-active-styles;\n\n --text-color: var(--white);\n --light-text-color: var(--gray-100);\n --ui-control-color: var(--gray-050);\n --ui-control-hover-color: var(--gray-100);\n --ui-control-active-color: var(--gray-100);\n\n span.icon,\n &:before {\n color: var(--menu-option-active-color);\n }\n\n &.error {\n color: var(--menu-option-active-color) !important;\n }\n}\n\n.menu {\n hr.padded,\n h6.padded {\n @include margin-left(10px);\n }\n}\n\n.menu--disclosure ul li {\n & > a,\n & > .menu-option {\n &:hover {\n @include disclosure-link-hover-styles;\n }\n\n @include focus-styles {\n box-shadow: inset 0 0 0 3px hsla(var(--dark-focus-hsl), 0.7);\n }\n }\n}\n\n/* tag select fields */\n.tagselect {\n .elements {\n display: inline;\n }\n\n .element.small {\n clear: none;\n }\n\n .add {\n position: relative;\n z-index: 1;\n @include margin(7px, 7px, 0, 0);\n display: inline-block;\n width: 12em;\n\n .text {\n @include padding-right(30px);\n }\n\n .spinner {\n position: absolute;\n top: 0;\n @include right(5px);\n }\n }\n\n // todo: why are body.ltr and body.rtl needed here?\n body.ltr &,\n body.rtl & {\n &.elementselect .element {\n float: none !important;\n display: inline-block;\n }\n }\n}\n\n.tagmenu {\n ul {\n li {\n a {\n @include padding-left(26px);\n\n &:before {\n @include floatleft;\n @include margin(3px, 0, 0, -18px);\n }\n }\n }\n }\n}\n\n/* selectize */\n\n/* ----------------------------------------\n/* Fields\n/* ----------------------------------------*/\n\n.shadow-box {\n border-radius: var(--large-border-radius);\n border: 1px solid var(--gray-200);\n @include shadow;\n}\n\ntable.shadow-box,\ntable.editable {\n border-collapse: separate;\n border-spacing: 0;\n\n thead,\n tbody:first-child,\n caption + tbody {\n tr:first-child {\n th:first-child,\n td:first-child {\n &,\n &.disabled:after {\n border-top-left-radius: var(--medium-border-radius);\n }\n }\n th:last-child,\n td:last-child {\n &,\n &.disabled:after {\n border-top-right-radius: var(--medium-border-radius);\n }\n }\n }\n }\n thead:last-child,\n tbody:last-child {\n tr:last-child {\n th:first-child,\n td:first-child {\n &,\n &.disabled:after {\n border-bottom-left-radius: calc(var(--large-border-radius) - 1px);\n }\n }\n th:last-child,\n td:last-child {\n &,\n &.disabled:after {\n border-bottom-right-radius: calc(var(--large-border-radius) - 1px);\n }\n }\n }\n }\n}\n\n.text,\n.passwordwrapper,\n.border-box,\n.matrix-configurator > .field > .input,\n.selectize.multiselect .selectize-input,\n.multiselect > select {\n @include input-styles;\n}\n\n.text,\n.passwordwrapper,\n.border-box,\n.selectize.multiselect .selectize-input {\n &.focus {\n @include input-focused-styles;\n }\n\n @include focus-styles {\n @include input-focused-styles;\n }\n}\n\ninput.text,\ntextarea.text,\n.text > input,\n.text > textarea,\ntable.editable textarea,\n.selectize.multiselect .selectize-input {\n font-size: 14px;\n line-height: 20px;\n color: var(--text-color);\n min-height: 3px;\n box-sizing: border-box;\n appearance: none;\n}\n\n.selectize.multiselect .selectize-input {\n line-height: 18px;\n}\n\ntextarea.text.fullwidth {\n display: block;\n}\n\n.multitext .multitextrow {\n &:after {\n @include clearafter;\n }\n\n &:first-child .text {\n &:first-child {\n @include border-top-left-radius(var(--medium-border-radius));\n }\n\n &:last-child {\n @include border-top-right-radius(var(--medium-border-radius));\n }\n }\n\n &:last-child .text {\n &:first-child {\n @include border-bottom-left-radius(var(--medium-border-radius));\n }\n\n &:last-child {\n @include border-bottom-right-radius(var(--medium-border-radius));\n }\n }\n\n &:not(:first-child) .text {\n margin-top: -1px;\n }\n\n .text {\n border-radius: 0;\n float: left;\n box-sizing: border-box;\n\n &:not(:first-child) {\n @include margin-left(-1px);\n }\n\n &:first-child {\n &:nth-last-child(1) {\n width: 100%;\n }\n\n &:nth-last-child(2) {\n width: 50%;\n }\n\n &:nth-last-child(2) ~ .text {\n width: calc(50% + 1px);\n }\n }\n\n &.error {\n position: relative;\n z-index: 1;\n }\n }\n\n .text:focus,\n .selectize.multiselect .selectize-input.focus {\n position: relative;\n z-index: 2;\n }\n}\n\n.chars-left {\n position: relative;\n @include floatright;\n @include margin(-27px, 7px, 0, 0);\n color: var(--light-text-color);\n\n .input.ltr > & {\n float: right !important;\n margin-right: 7px !important;\n }\n\n .input.rtl > & {\n float: left !important;\n margin-left: 7px !important;\n }\n\n &.negative-chars-left {\n color: var(--error-color);\n }\n}\n\n.field,\nfieldset {\n position: relative;\n margin: 24px 0;\n\n .flex > & {\n margin-top: 0;\n margin-bottom: 0;\n }\n}\n\n.field {\n min-inline-size: initial;\n\n & > .status-badge {\n position: absolute;\n top: 0;\n @include left(0);\n width: 2px;\n height: 100%;\n content: '';\n cursor: help;\n\n &.modified {\n background-color: var(--blue-600);\n }\n\n &.outdated {\n background-color: var(--pending-color);\n }\n }\n\n & > .heading {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n position: relative;\n margin-top: -5px;\n margin-bottom: 5px;\n\n & > label,\n & > legend {\n font-weight: bold;\n color: var(--medium-dark-text-color);\n\n code {\n font-size: 1em !important;\n }\n\n .info {\n @include margin-left(5px);\n }\n }\n\n .t9n-indicator {\n @include margin-left(7px);\n color: var(--light-text-color);\n }\n\n & + .instructions {\n margin-top: -3px;\n }\n\n // BC\n & > .instructions {\n width: 100%;\n }\n }\n\n & > .instructions {\n margin-bottom: 5px;\n }\n\n & > .input {\n position: relative;\n\n &:after {\n @include clearafter;\n }\n\n & + .instructions {\n margin: 5px 0 0;\n }\n }\n\n & > .notice,\n & > .warning {\n margin: 5px 0 0;\n }\n}\n\n.field > .instructions,\n// BC\n.field > .heading > .instructions,\n.checkboxfield .instructions {\n color: var(--medium-text-color);\n\n img,\n video,\n embed,\n iframe {\n max-width: 100% !important;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n}\n\n.expand-status-btn {\n @include margin-left(5px);\n width: 30px;\n height: 17px;\n padding: 0;\n line-height: 16px;\n border-radius: var(--small-border-radius);\n color: var(--text-color);\n\n &:before {\n margin: 0;\n }\n}\n\n/* toggles and nested fields */\n.nested-fields {\n margin: -24px;\n padding: 24px 24px 0;\n\n &.hidden {\n display: block;\n height: 0;\n }\n\n & > .field:last-child {\n padding-bottom: 24px;\n }\n}\n\n/* checkbox */\ninput.checkbox {\n opacity: 0;\n position: absolute;\n width: var(--checkbox-size);\n height: var(--checkbox-size);\n}\n\ninput.checkbox + label,\ndiv.checkbox {\n display: inline-block;\n clear: none;\n position: relative;\n @include padding-left($checkboxSize + 5);\n line-height: 16px;\n height: 16px;\n cursor: pointer;\n\n .info {\n height: 16px;\n }\n}\n\ninput.checkbox:disabled + label,\n.disabled div.checkbox {\n cursor: default;\n}\n\ninput.checkbox + label:empty,\ndiv.checkbox:empty {\n @include padding-left(var(--checkbox-size));\n}\n\ninput.checkbox + label:empty:after,\ndiv.checkbox:empty:after {\n content: '';\n font-size: 0;\n}\n\n/* fixes a RTL bug */\ninput.checkbox + label:before,\ndiv.checkbox:before {\n display: block;\n position: absolute;\n @include left(0);\n top: 0;\n width: var(--checkbox-size) !important;\n height: var(--checkbox-size);\n box-sizing: border-box;\n content: '';\n font-size: 0;\n background-color: hsl(212, 50%, 99%);\n border: 1px solid transparentize($inputColor, 0.6);\n background-clip: padding-box;\n border-radius: var(--small-border-radius);\n}\n\ninput.checkbox:disabled + label,\ndiv.checkbox.disabled:before,\ndiv.checkbox.disabled + label {\n opacity: 0.25;\n}\n\ninput.checkbox:checked + label:before,\ndiv.checkbox.checked:before,\n.sel div.checkbox:before,\ninput.checkbox:indeterminate + label:before,\ndiv.checkbox.indeterminate:before {\n @include icon;\n line-height: var(--checkbox-size);\n color: var(--gray-900);\n}\n\ninput.checkbox:checked:not(:indeterminate) + label:before,\ndiv.checkbox.checked:not(.indeterminate):before,\n.sel div.checkbox:not(.indeterminate):before {\n content: 'check';\n font-size: 15px;\n}\n\ninput.checkbox:indeterminate + label:before,\ndiv.checkbox.indeterminate:before {\n content: 'minus';\n font-size: 7px;\n text-align: center;\n}\n\nbody:not(.reduce-focus-visibility) {\n input.checkbox:focus + label:before,\n :focus div.checkbox:before {\n @include input-focused-styles;\n }\n}\n\nbody.reduce-focus-visibility {\n input.checkbox:focus-visible + label:before,\n :focus-visible div.checkbox:before {\n @include input-focused-styles;\n }\n}\n\n.checkbox-icon:before {\n @include icon;\n line-height: var(--checkbox-size);\n color: var(--enabled-color);\n content: 'check';\n font-size: 15px;\n}\n\n.monaco-mouse-cursor-text {\n @include focus-styles {\n box-shadow: none !important;\n }\n}\n\nfieldset {\n .checkboxfield {\n margin: 5px 0;\n }\n}\n\n.checkboxfield {\n .instructions,\n .notice,\n .warning {\n margin-top: 2px;\n @include padding-left($checkboxSize + 5);\n }\n}\n\n/* radio */\ninput.radio {\n opacity: 0;\n position: absolute;\n width: var(--radio-size);\n height: var(--radio-size);\n}\n\ninput.radio + label,\ndiv.radio {\n display: inline-block;\n clear: none;\n position: relative;\n @include padding-left($radioSize + 5);\n line-height: calc(24 / 14);\n cursor: pointer;\n}\n\ninput.radio:disabled + label,\n.disabled div.radio {\n cursor: default;\n}\n\ninput.radio + label:empty,\ndiv.radio:empty {\n @include padding-left(var(--radio-size));\n}\n\n/* fixes a RTL bug */\ninput.radio + label:before,\ninput.radio + label:after,\ndiv.radio:before,\ndiv.radio:after {\n display: block;\n position: absolute;\n content: '';\n box-sizing: border-box;\n background-clip: padding-box;\n border-radius: 100%;\n}\n\ninput.radio + label:before,\ndiv.radio:before {\n top: 50%;\n left: 0;\n transform: translateY(-50%);\n width: var(--radio-size);\n height: var(--radio-size);\n background-color: hsl(212, 50%, 99%);\n border: 1px solid transparentize($inputColor, 0.6);\n}\n\ninput.radio + label:after,\ndiv.radio:after {\n top: calc(50%);\n left: 4px;\n transform: translateY(-50%);\n width: calc(var(--radio-size) - 8px);\n height: calc(var(--radio-size) - 8px);\n}\n\ninput.radio:disabled + label,\ndiv.radio.disabled:before,\ndiv.radio.disabled + label {\n opacity: 0.25;\n}\n\ninput.radio:checked + label:after,\ndiv.radio.checked:after,\n.sel div.radio:after {\n background: var(--gray-900);\n}\n\nbody:not(.reduce-focus-visibility) {\n input.radio:focus + label:before,\n :focus div.radio:before {\n @include input-focused-styles;\n }\n}\n\nbody.reduce-focus-visibility {\n input.radio:focus-visible + label:before,\n :focus-visible div.radio:before {\n @include input-focused-styles;\n }\n}\n\n/* multiselect */\n.multiselect > select {\n color: var(--text-color);\n font-size: 14px;\n appearance: none;\n\n @include focus-styles {\n @include input-focused-styles;\n }\n\n option {\n padding: 1px 8px;\n }\n}\n\n.text,\n.selectize.multiselect .selectize-input {\n padding: 6px 9px;\n}\n\n.text {\n background-color: var(--white);\n\n &:not(.small) {\n box-sizing: border-box;\n min-height: 34px;\n }\n\n &.small {\n padding: 3px;\n }\n\n &.readable {\n padding: 16px 18px;\n font-size: 16px;\n line-height: 22px;\n\n & + .chars-left {\n margin-top: -23px;\n }\n }\n\n &.clearable {\n @include padding-right(var(--touch-target-size));\n }\n\n input {\n margin: 0;\n padding: 0;\n border: none;\n background-color: transparent;\n }\n}\n\n.input.errors > .text,\n.input.errors > .border-box,\n.input.errors > .passwordwrapper,\n.input.errors > .autosuggest-container .text,\n.text.error {\n border: 1px solid var(--error-color) !important;\n}\n\n.texticon {\n position: relative;\n cursor: text;\n min-width: 130px;\n\n &.icon {\n &:before {\n position: absolute;\n top: 9px;\n @include left(9px);\n color: var(--ui-control-color);\n }\n\n .text {\n @include padding-left(26px);\n }\n }\n\n .clear-btn {\n position: absolute;\n top: calc(\n (var(--touch-target-size) - 34px) / -2\n ); /* Responds to min-height of text input */\n @include right(0);\n width: var(--touch-target-size);\n height: var(--touch-target-size);\n }\n\n &.has-filter-btn {\n .text {\n @include padding-right(26px);\n }\n\n .filter-btn {\n position: absolute;\n top: 4px;\n @include right(4px);\n padding: 0 7px 4px;\n font-size: 14px;\n line-height: 22px;\n cursor: pointer;\n border-radius: 13px;\n\n &:before {\n @include icon;\n content: 'filter';\n color: var(--medium-text-color);\n }\n\n &:hover {\n background-color: var(--gray-100);\n }\n\n &:active,\n &.active {\n background-color: var(--gray-350);\n\n &:before {\n color: var(--white);\n }\n }\n }\n\n .text {\n @include padding-left(26px);\n\n &.clearable {\n @include padding-right(calc(30px + var(--touch-target-size)));\n }\n }\n\n .clear-btn {\n @include right(30px);\n }\n }\n}\n\n.texthint-container {\n position: relative;\n height: 0;\n}\n\n.texthint {\n position: absolute;\n top: -1px;\n width: 100%;\n color: var(--light-text-color);\n cursor: text;\n}\n\n.passwordwrapper {\n position: relative;\n\n .password {\n border: none;\n background: transparent;\n padding-right: 4rem;\n box-shadow: none;\n }\n\n .password-toggle {\n color: var(--link-color);\n position: absolute;\n top: 0;\n @include right(9px);\n bottom: 0;\n cursor: pointer;\n\n &:hover {\n text-decoration: underline;\n }\n }\n}\n\n.datetimewrapper {\n display: flex;\n flex-direction: row;\n align-items: center;\n\n & > .datewrapper + .timewrapper,\n & > .timewrapper + .timezone,\n & > .select {\n @include margin-left(5px);\n }\n}\n\n.clear-btn {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 24px;\n cursor: pointer;\n color: var(--ui-control-color);\n border: none;\n padding: 0;\n background: transparent;\n\n &:before {\n @include icon;\n content: 'remove';\n }\n\n &:hover {\n color: var(--ui-control-hover-color);\n }\n\n &:active {\n color: var(--ui-control-active-color);\n }\n}\n\n.close-btn {\n position: relative;\n\n &:before,\n &:after {\n position: absolute;\n content: '';\n top: 50%;\n left: 50%;\n height: 15px;\n width: 2px;\n background-color: var(--ui-control-color);\n opacity: var(--icon-opacity);\n }\n\n &:before {\n transform: translate(-50%, -50%) rotate(-45deg);\n }\n\n &:after {\n transform: translate(-50%, -50%) rotate(45deg);\n }\n\n &:hover {\n &:before,\n &:after {\n background-color: var(--ui-control-hover-color);\n }\n }\n\n &:active {\n &:before,\n &:after {\n background-color: var(--ui-control-active-color);\n }\n }\n}\n\n.datewrapper,\n.timewrapper {\n display: inline-block;\n position: relative;\n\n .text {\n position: relative;\n z-index: 1;\n width: 100%;\n\n & + div[data-icon] {\n display: none;\n }\n\n &:placeholder-shown,\n &.empty-value {\n & + div[data-icon] {\n display: block;\n position: absolute;\n top: calc(50% - 12px);\n @include left(14px);\n z-index: 0;\n color: var(--light-text-color);\n\n &,\n &:before {\n user-select: none;\n pointer-events: none;\n z-index: 1;\n }\n }\n }\n }\n}\n\n.datewrapper {\n width: 8em;\n}\n\n.timewrapper {\n width: 7em;\n}\n\n@include placeholder-styles(var(--gray-400));\n\n/* Kill IE's special text features */\n::-ms-reveal,\n::-ms-clear {\n display: none;\n}\n\n/* Asset indexing related */\ntr.indexingSession td {\n height: 34px;\n padding: 1px 10px;\n}\n\ntr.indexingSession td.progress div.progressContainer {\n width: 100%;\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n\ntr.indexingSession td.progress div.progressContainer .progressbar {\n width: 70%;\n position: relative;\n left: 0;\n height: 12px;\n z-index: 1;\n}\n\ntr.indexingSession td.progress div.progressContainer div.progressInfo {\n width: 20%;\n}\n\n// Selects\n.select:not(.selectize),\n.select:not(.selectize) select {\n @include select-styles;\n}\n\n.select:not(.selectize) {\n @include select-container-styles;\n}\n\n.select:not(.selectize):after {\n @include select-arrow-styles;\n}\n\n.select:not(.selectize) select {\n @include select-input-styles;\n white-space: pre;\n}\n\n.select:not(.selectize).fullwidth select {\n @include select-input-fullwidth-styles;\n}\n\n.select:not(.selectize) select {\n &:hover {\n @include select-input-focused-styles;\n }\n\n @include focus-styles {\n @include select-input-focused-styles;\n }\n}\n\n.select:not(.selectize).small:after {\n top: 9px;\n}\n\n.select:not(.selectize).small select {\n padding-top: 4px !important;\n padding-bottom: 4px !important;\n font-size: 11px;\n}\n\n/* selectize reset */\n.selectize .selectize-input {\n display: block;\n border-color: inherit;\n box-shadow: none;\n background-color: transparent;\n}\n\n.selectize.select .selectize-input:after {\n display: none;\n}\n\nbody .selectize-dropdown {\n border: none;\n z-index: 100;\n}\n\n/* single select styles */\n.selectize.select {\n @include placeholder-styles(var(--gray-700));\n height: 34px;\n\n &:not(.fullwidth) {\n width: 25em;\n }\n}\n\n.selectize.select .selectize-control {\n @include select-container-styles;\n\n &:after {\n @include select-arrow-styles;\n }\n}\n\n.selectize.select .selectize-input {\n @include select-styles;\n\n &.focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n.selectize.select .selectize-input {\n @include select-input-styles;\n}\n\n.selectize.select .selectize-control,\n.selectize.select .selectize-input {\n width: 100%;\n}\n\n/* multi select styles */\n.selectize.multiselect .selectize-input {\n min-height: 34px;\n padding-bottom: 3px;\n\n &.focus {\n @include input-focused-styles;\n }\n\n & > .item {\n @include token-styles;\n display: inline-flex;\n flex-direction: row;\n padding: 3px 7px !important;\n\n &.active {\n @include active-token-styles;\n }\n\n & > .remove {\n position: static;\n @include margin(-1px, -3px, 0, 3px);\n border-left: none;\n padding: 0;\n font-size: 0;\n color: var(--ui-control-color);\n\n &:hover {\n color: var(--ui-control-hover-color);\n background-color: transparent;\n }\n\n &:before {\n font-size: 14px;\n @include icon;\n content: 'remove';\n }\n }\n }\n}\n\n/* menu styles */\nbody .selectize-dropdown {\n margin-top: 1px;\n}\n\nbody .selectize-dropdown-content {\n @include menu-styles;\n\n .option {\n min-height: 18px;\n }\n}\n\nbody .selectize-dropdown-content > div[data-value='new']:before {\n @include icon;\n content: 'plus';\n margin-right: 5px;\n}\n\nbody .selectize-dropdown-content > div[data-value='new']:after {\n content: '…';\n}\n\nbody .selectize-dropdown [data-selectable],\nbody .selectize-dropdown .optgroup-header {\n @include menu-option-styles;\n}\n\nbody .selectize-dropdown .optgroup-header {\n @include h6-styles;\n margin: 0;\n padding: 4px 0;\n}\n\nbody .selectize-dropdown .active {\n @include menu-option-active-styles;\n\n .light {\n color: inherit !important;\n }\n}\n\n/* datepicker */\n.ui-datepicker {\n position: fixed;\n top: -300px;\n @include margin-left(1px);\n -padding: 10px;\n width: 210px;\n height: 242px;\n z-index: 101 !important;\n}\n\n.ui-datepicker-header {\n padding: 8px 8px 4px;\n}\n\n.ui-datepicker-prev {\n @include floatleft;\n}\n\n.ui-datepicker-next {\n @include floatright;\n}\n\n.ui-datepicker-prev span,\n.ui-datepicker-next span {\n display: none;\n}\n\n.ui-datepicker-prev,\n.ui-datepicker-next {\n width: 20px;\n height: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n\n &:hover:after {\n border-color: var(--link-color);\n }\n}\n\n.ui-datepicker-prev:after {\n @include angle(left);\n}\n\n.ui-datepicker-next:after {\n @include angle(right);\n}\n\n.ui-datepicker-title {\n text-align: center;\n}\n\n.ui-datepicker-calendar th,\n.ui-datepicker-calendar td {\n padding: 2px !important;\n}\n\n.ui-datepicker-calendar th span,\n.ui-datepicker-calendar td a {\n display: block;\n width: toRem(26);\n line-height: 26px;\n text-align: center;\n color: var(--text-color);\n}\n\n.ui-datepicker-calendar th span {\n color: var(--medium-text-color);\n font-weight: normal;\n}\n\n.ui-datepicker-calendar td a {\n border-radius: 2px;\n}\n\n.ui-datepicker-calendar td a:hover {\n background-color: var(--light-sel-color);\n text-decoration: none;\n}\n\n.ui-datepicker-calendar td a.ui-state-active {\n background-color: var(--dark-sel-color);\n color: var(--white);\n @include light-on-dark-text;\n cursor: default;\n}\n\n.ui-datepicker-calendar td.ui-datepicker-today a {\n border-radius: 13px;\n box-shadow: inset 0 0 0 2px var(--light-sel-color);\n}\n\n/* timepicker */\n.ui-timepicker-wrapper {\n z-index: 101;\n}\n\n.ui-timepicker-list {\n @include margin-left(1px);\n overflow-y: auto;\n width: calc(14px + 6em);\n height: 210px;\n z-index: 100;\n}\n\n.ui-timepicker-list li {\n @include padding(2px, 0, 2px, 14px);\n white-space: nowrap;\n cursor: pointer;\n}\n\n.ui-timepicker-list li:hover {\n background-color: var(--light-sel-color);\n}\n\n.ui-timepicker-list li.ui-timepicker-selected {\n background-color: var(--dark-sel-color);\n color: var(--white);\n @include light-on-dark-text;\n cursor: default;\n}\n\n/* slide picker */\n.slide-picker {\n display: flex;\n height: 15px;\n white-space: nowrap;\n\n a {\n border: 1px solid var(--hairline-color);\n @include border-left(none);\n background-image: none;\n width: 7px;\n height: 13px;\n margin-left: 0;\n display: inline-block;\n margin-top: 1px;\n margin-bottom: 1px;\n box-sizing: border-box;\n\n &:first-child {\n width: 8px;\n @include border-left(1px solid var(--gray-400) !important);\n }\n }\n\n &:not(:hover) a.active,\n &:hover a.active-hover {\n border-top-color: var(--gray-400);\n border-bottom-color: var(--gray-400);\n height: 15px;\n margin-top: 0;\n margin-bottom: 0;\n\n &:first-child {\n @include border-left(1px solid var(--gray-400));\n @include border-top-left-radius(var(--small-border-radius));\n @include border-bottom-left-radius(var(--small-border-radius));\n }\n }\n\n &:not(:hover) a.last-active,\n &:hover a.last-active-hover {\n @include border-right(1px solid var(--gray-400));\n @include border-top-right-radius(var(--small-border-radius));\n @include border-bottom-right-radius(var(--small-border-radius));\n }\n\n &:focus {\n a.active {\n background-color: var(--light-sel-color);\n }\n }\n}\n\n/* errors */\nul.errors {\n margin-top: 5px;\n list-style-type: square;\n @include padding-left(20px);\n}\n\nul.errors li {\n color: var(--error-color);\n}\n\n/* message pages */\n.message-container {\n position: absolute;\n z-index: 100;\n top: 0;\n @include left(0);\n width: 100%;\n height: 100%;\n\n &.no-access {\n background-color: transparentize($grey900, 0.5);\n }\n\n .pane {\n top: 50%;\n margin-top: -33px !important;\n margin-left: auto;\n margin-right: auto;\n width: 320px;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n }\n}\n\n/* auto-suggest */\n.autosuggest-container {\n position: relative;\n}\n\n.autosuggest__results-container {\n position: absolute;\n z-index: 2;\n width: 100%;\n border-radius: var(--large-border-radius);\n background-color: var(--white);\n @include shadow;\n box-sizing: border-box;\n padding: 0 14px;\n text-align: left;\n @include sans-serif-font;\n font-size: 1em !important;\n\n .autosuggest__results-before {\n @include h6-styles;\n margin-top: 14px !important;\n }\n\n .autosuggest__results-item {\n @include menu-option-styles;\n overflow: hidden;\n text-overflow: ellipsis;\n\n &:hover,\n &.autosuggest__results-item--highlighted {\n @include menu-option-active-styles;\n cursor: pointer;\n }\n }\n}\n\n/* ----------------------------------------\n/* Matrix\n/* ----------------------------------------*/\n\n.matrix-configurator {\n & > .field {\n max-width: none;\n\n & > .input {\n display: flex;\n align-items: stretch;\n background-color: var(--gray-050);\n box-shadow: none;\n }\n }\n\n .mc-sidebar {\n box-sizing: border-box;\n\n .mc-col-items {\n margin-top: -1px;\n padding-top: 1px;\n }\n\n &.block-types {\n width: 200px;\n @include border-top-left-radius(var(--small-border-radius));\n @include border-bottom-left-radius(var(--small-border-radius));\n\n & > .mc-col-inner-container {\n & > .mc-col-heading {\n @include border-top-left-radius(var(--small-border-radius));\n }\n\n & > .mc-col-items {\n .btn {\n margin: 14px;\n }\n }\n }\n }\n\n &.mc-fields {\n width: 240px;\n z-index: 1;\n background: #fff;\n box-shadow: -1px 0 0 0 transparentize($grey900, 0.9),\n 1px 0 0 0 transparentize($grey900, 0.9);\n\n .mc-col-items {\n padding: 14px;\n\n .btn {\n margin-top: 14px;\n }\n }\n }\n }\n\n .mc-sidebar,\n .mc-field-settings {\n & > .mc-col-inner-container > .mc-col-heading {\n margin: 0;\n padding: 7px 14px 6px;\n border-bottom: 1px solid var(--hairline-color);\n background-color: var(--gray-050);\n background-image: linear-gradient(\n transparentize($grey800, 1),\n transparentize($grey800, 0.95)\n );\n }\n }\n\n .mc-field-settings {\n flex: 1;\n position: relative;\n @include border-top-right-radius(var(--small-border-radius));\n @include border-bottom-right-radius(var(--small-border-radius));\n\n & > .mc-col-inner-container {\n & > .mc-col-heading {\n padding-left: 24px;\n padding-right: 24px;\n @include border-top-right-radius(var(--small-border-radius));\n }\n\n & > .mc-col-items {\n padding: 24px;\n }\n }\n }\n}\n\n.matrixconfigitem {\n position: relative;\n display: flex;\n align-items: center;\n user-select: none;\n cursor: default;\n min-height: 48px;\n box-sizing: border-box;\n\n &.mci-blocktype {\n margin-top: -1px;\n padding: 8px 14px;\n border: solid var(--hairline-color);\n border-width: 1px 0;\n background-color: var(--gray-100);\n\n &.sel {\n z-index: 1;\n background-color: var(--gray-200);\n }\n }\n\n &.mci-field {\n border-radius: var(--medium-border-radius);\n padding: 7px 10px;\n background-color: var(--gray-100);\n\n &.sel {\n background-color: var(--gray-200);\n\n .slide-picker:focus a.active {\n background-color: darken($lightTextColor, 0.5%);\n }\n }\n\n & + .mci-field {\n margin-top: 7px;\n }\n }\n\n .mci-name {\n flex: 1;\n overflow: hidden;\n\n h4,\n .smalltext {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n h4 {\n margin-bottom: 2px;\n font-weight: normal;\n color: var(--text-color);\n\n &.mci-required:after {\n @include icon;\n @include margin(-2px, 0, 0, 4px);\n content: 'asterisk';\n font-size: 8px;\n }\n }\n }\n\n &.error .mci-name h4 {\n color: var(--error-color);\n }\n\n .slide-picker,\n .icon {\n @include margin-left(7px);\n }\n\n .icon {\n display: block;\n\n &:not(.error) {\n &:before {\n color: var(--ui-control-color);\n }\n\n &:hover:before {\n color: var(--ui-control-hover-color);\n }\n\n &:active:before {\n color: var(--ui-control-active-color);\n }\n }\n\n &.error:before {\n color: var(--error-color);\n }\n }\n}\n\n/* Matrix fields */\n.matrix {\n & > .buttons {\n margin-top: 10px;\n }\n}\n\n$titlebarBorderRadius: calc(var(--large-border-radius) - 1px);\n\n.matrixblock {\n position: relative;\n margin-bottom: 10px;\n padding: 0 var(--m) var(--m);\n border-radius: var(--large-border-radius);\n border: 1px solid var(--hairline-color);\n background-color: var(--gray-050);\n\n &.static {\n padding-top: 14px;\n }\n\n .flex-fields {\n --row-gap: var(--m) !important;\n }\n\n & > .titlebar {\n margin: 0 -14px;\n width: calc(100% + 28px);\n box-sizing: border-box;\n border-radius: $titlebarBorderRadius $titlebarBorderRadius 0 0;\n @include padding(5px, 70px, 5px, 35px);\n color: var(--light-text-color);\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n word-wrap: normal;\n cursor: default;\n user-select: none;\n position: relative;\n background-color: darken($grey050, 2%);\n\n &:after {\n display: block;\n content: '';\n position: absolute;\n bottom: -1px;\n left: 14px;\n width: calc(100% - 28px);\n height: 1px;\n background-color: var(--hairline-color);\n }\n\n & > .blocktype {\n display: inline;\n color: var(--medium-text-color);\n }\n\n & > .preview {\n @include margin-left(7px);\n display: inline;\n opacity: 0;\n transition: opacity linear 100ms;\n\n span {\n opacity: 0.5;\n }\n }\n }\n\n &.disabled {\n opacity: 1;\n\n & > .titlebar {\n @include padding-right(90px);\n }\n\n & > .actions {\n & > .status {\n &.off {\n display: block;\n }\n }\n }\n }\n\n &.collapsed {\n & > .titlebar {\n border-radius: var(--titlebar-border-radius);\n border-bottom: none;\n\n & > .preview {\n opacity: 1;\n }\n }\n }\n\n & > .checkbox {\n position: absolute;\n top: 7px;\n @include left(14px);\n }\n\n & > .actions {\n display: flex;\n align-items: center;\n position: absolute;\n top: 5px;\n @include right(14px);\n cursor: default;\n\n & > * {\n @include margin(0, 0, 0, 5px);\n }\n\n & .settings {\n padding: 0 8px;\n height: 20px;\n color: var(--ui-control-color);\n\n &:before {\n @include margin-right(0 !important);\n }\n\n &:not(:hover):not(:active) {\n background-color: transparent;\n }\n }\n\n & > .move {\n margin-top: -3px !important;\n }\n\n & > .status {\n &.off {\n display: none;\n }\n }\n\n a:not([data-action]) {\n padding: 0;\n height: 20px;\n text-align: center;\n color: var(--dark-hairline-color);\n transform: color linear 100ms;\n\n &.settings:after {\n @include margin-left(3px);\n border-color: var(--dark-hairline-color);\n transform: border-color linear 100ms;\n }\n\n &:hover {\n color: var(--link-color);\n\n &.settings:after {\n border-color: var(--link-color);\n }\n }\n }\n }\n\n &:not(.static) {\n & > .fields {\n padding-top: 14px;\n }\n }\n\n & > .fields > .flex-fields > .field {\n &:before {\n display: none;\n }\n }\n\n & > .buttons {\n margin-top: 0;\n height: 30px;\n }\n}\n\n/* categories */\n.add-category-form {\n margin-top: 24px;\n}\n\n.add-category-form .texticon {\n width: 200px;\n @include floatleft;\n @include margin-right(5px);\n}\n\n.add-category-form .texticon .text {\n @include padding-right(30px);\n}\n\n.add-category-form .texticon .spinner {\n position: absolute;\n top: 0;\n @include right(5px);\n}\n\n.categoriesfield {\n position: relative;\n min-height: 30px;\n}\n\n.categoriesfield .structure ul {\n @include margin-left(12px);\n}\n\n/* site pickers */\nbody.sitepicker {\n #main-content {\n padding: 30px;\n justify-content: center;\n align-items: center;\n text-align: center;\n }\n\n #content-container {\n max-width: 400px;\n }\n}\n\n.sitepicker-group {\n li {\n &:not(:first-child) {\n a {\n margin-top: -1px;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n\n &:not(:hover) {\n border-top-color: transparent;\n }\n }\n }\n\n &:not(:last-child) {\n a {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n }\n }\n\n a {\n display: block;\n position: relative;\n text-align: left;\n width: 100%;\n box-sizing: border-box;\n border: 1px solid var(--hairline-color);\n border-radius: var(--medium-border-radius);\n @include padding(9px, 42px, 9px, 15px);\n font-size: 16px;\n line-height: 1.4;\n\n &:after {\n font-size: 14px;\n position: absolute;\n top: calc(50% - 7px);\n @include right(12px);\n margin: 0;\n padding: 0;\n }\n\n &:hover {\n border-color: var(--link-color);\n text-decoration: none;\n z-index: 1;\n }\n }\n }\n}\n\n/* ----------------------------------------\n/* IE hacks\n/* ----------------------------------------*/\n\n/* Fix layout of modal element selectors for IE8 */\n.elementselectormodal .body .main {\n float: left \\9;\n width: 445px \\9;\n}\n\n/* ----------------------------------------\n/* Retina graphics\n/* ----------------------------------------*/\n\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5),\n only screen and (-moz-min-device-pixel-ratio: 1.5),\n only screen and (-o-min-device-pixel-ratio: 3/2),\n only screen and (min-device-pixel-ratio: 1.5),\n only screen and (min-resolution: 1.5dppx) {\n .structure ul li {\n background-size: 40px;\n body.ltr & {\n background-image: url(../images/branch_2x.png);\n }\n body.rtl & {\n background-image: url(../images/branch_rtl_2x.png);\n }\n }\n\n .hud .tip-left {\n background-image: url(../images/hudtip_left_2x.png);\n background-size: 15px 30px;\n }\n .hud .tip-top {\n background-image: url(../images/hudtip_top_2x.png);\n background-size: 30px 15px;\n }\n .hud .tip-right {\n background-image: url(../images/hudtip_right_2x.png);\n background-size: 15px 30px;\n }\n .hud .tip-bottom {\n background-image: url(../images/hudtip_bottom_2x.png);\n background-size: 30px 15px;\n }\n .hud.has-footer .tip-bottom {\n background-image: url(../images/hudtip_bottom_gray_2x.png);\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n:root {\n --xs: 4px;\n --s: 8px;\n --m: 14px;\n --l: 18px;\n --xl: 24px;\n --padding: var(--xl);\n --neg-padding: calc(var(--padding) * -1);\n}\n\n$sidebarWidth: 226px;\n$sidebarZIndex: 100;\n$detailsWidth: 350px;\n$minFullUiWidth: 1200px;\n$minXlUiWidth: 1536px;\n$minDesktopWidth: 600px;\n$minHorizontalUiWidth: $minFullUiWidth - $sidebarWidth;\n\n// Colors\n$badgeBackgroundColor: var(--gray-200);\n$badgeColor: var(--gray-800);\n\nhtml {\n -webkit-text-size-adjust: 100%;\n min-height: 100vh;\n}\n\nbody {\n min-height: 100vh;\n}\n\nbody {\n :focus {\n outline-style: solid;\n outline-color: transparent;\n box-shadow: var(--focus-ring);\n }\n}\n\n.reduce-focus-visibility {\n :focus:not(:focus-visible) {\n box-shadow: none;\n }\n\n :focus-visible {\n box-shadow: var(--focus-ring);\n }\n}\n\n.skip-link {\n position: absolute;\n margin: 5px;\n left: -10000px;\n top: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n z-index: $sidebarZIndex + 1;\n\n &:focus {\n left: unset;\n @include left(0);\n width: auto;\n height: auto;\n background-color: var(--gray-100) !important;\n }\n}\n\n#global-skip-link {\n @media only screen and (min-width: $minFullUiWidth) {\n @include two-color-focus-ring;\n }\n}\n\n#global-container {\n position: relative;\n display: flex;\n flex-direction: column;\n min-height: 100vh;\n @include left(0);\n\n @media screen and (prefers-reduced-motion: no-preference) {\n body.ltr & {\n transition: left 250ms ease-out;\n }\n\n body.rtl & {\n transition: right 250ms ease-out;\n }\n }\n}\n\n/* global sidebar */\n$sidebarLinkStaticColor: var(--gray-100);\n$sidebarLinkSecondaryColor: var(--gray-200);\n\n#global-sidebar {\n --is-always-visible: true;\n position: fixed;\n z-index: $sidebarZIndex;\n display: flex;\n flex-direction: column;\n height: 100vh;\n padding: 0;\n overflow-y: auto;\n overflow-x: hidden;\n -webkit-overflow-scrolling: touch;\n @include light-on-dark-text;\n @include light-focus-ring;\n background-color: var(--gray-800);\n\n a {\n color: $sidebarLinkStaticColor;\n text-decoration: none;\n }\n\n & > a,\n *:not(.has-subnav) > a {\n &[href] {\n &:not(.sel):hover {\n background-color: darken($grey800, 5%);\n }\n }\n\n &:not([href]) {\n cursor: default;\n background-color: transparent;\n }\n }\n\n .light {\n color: var(--gray-400);\n }\n\n @media only screen and (max-width: $minFullUiWidth - 1px) {\n --is-always-visible: false;\n }\n}\n\n$systemInfoBgColor: darken($grey800, 5%);\n$systemInfoHoverBgColor: darken($grey800, 10%);\n\n#system-info {\n display: grid;\n grid-template-columns: 30px auto;\n grid-gap: 10px;\n height: 50px;\n padding: 0 10px;\n position: relative;\n flex: 0 0 50px;\n flex-direction: row;\n align-items: center;\n background-color: $systemInfoBgColor;\n\n &:after {\n display: none;\n }\n\n &:focus,\n &:hover {\n background-color: $systemInfoHoverBgColor !important;\n }\n}\n\n#site-icon {\n height: 30px;\n\n img,\n svg {\n display: block;\n width: 30px;\n height: 30px;\n border-radius: 4px;\n }\n\n svg {\n @include svg-mask(var(--medium-text-color));\n }\n}\n\n#system-name {\n h2,\n .h2 {\n margin: 0;\n width: 100%;\n overflow: hidden;\n max-height: 40px;\n position: relative;\n\n // Multi-line text overflow ellipsis\n // (https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-line-clamp)\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n\n &:after {\n display: block;\n content: '';\n font-size: 0;\n position: absolute;\n top: 0;\n @include right(0);\n width: var(--m);\n background-image: linear-gradient(\n to right,\n transparentize($systemInfoBgColor, 1),\n $systemInfoBgColor\n );\n\n #system-info:hover & {\n background-image: linear-gradient(\n to right,\n transparentize($systemInfoHoverBgColor, 1),\n $systemInfoHoverBgColor\n );\n }\n }\n }\n}\n\n#job-icon {\n align-items: flex-start;\n\n & > span.icon {\n display: block;\n position: relative;\n width: 16px;\n height: 16px;\n margin-top: 2px !important;\n\n & > canvas {\n display: block;\n position: absolute;\n width: 16px;\n height: 16px;\n\n &#job-icon-hover {\n opacity: 0;\n }\n }\n }\n\n &[href]:hover {\n .icon > span.icon > canvas#job-icon-hover {\n opacity: 1;\n }\n }\n\n .progress-label {\n display: block;\n color: var(--gray-300);\n font-size: 11px;\n line-height: 1.5;\n }\n}\n\n#nav {\n flex: 1;\n margin: 22px 0 0;\n padding-bottom: var(--xl);\n overflow: visible;\n\n li {\n &:not(.has-subnav) > a.sel {\n color: var(--gray-800);\n background-color: var(--gray-100);\n opacity: 1;\n\n .icon {\n opacity: 1;\n }\n }\n\n a {\n position: relative;\n padding-left: var(--m);\n padding-right: var(--m);\n\n &:focus {\n z-index: 1;\n }\n\n &.menubtn {\n line-height: 26px;\n }\n\n &.external:after {\n @include margin-left(5px);\n @include icon;\n content: 'external';\n }\n\n .label {\n &,\n & span {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n }\n\n .badge {\n @include margin-right(0);\n background-color: $badgeBackgroundColor;\n color: $badgeColor;\n }\n }\n\n ul {\n display: block;\n margin-bottom: 10px;\n\n li a {\n @include padding(3px, var(--m), 3px, 42px, !important);\n font-size: 12px;\n\n &:not(.active) {\n color: $sidebarLinkSecondaryColor;\n }\n }\n }\n }\n}\n\n#global-footer {\n display: flex;\n flex-direction: column;\n align-items: center;\n padding: var(--m) var(--m) var(--xl);\n}\n\n#app-info {\n margin-top: var(--xs);\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 12px;\n color: var(--gray-600);\n text-align: center;\n gap: var(--s);\n\n a {\n color: var(--gray-600);\n text-decoration: underline;\n\n &.go:hover:after {\n color: var(--gray-600);\n }\n }\n}\n\n#edition-logo {\n user-select: none;\n border: 1px solid var(--gray-600);\n border-radius: 3px;\n display: inline-flex;\n height: toRem(20);\n box-sizing: content-box;\n font-size: 11px;\n\n & > .edition-name,\n & > .edition-trial {\n padding: toRem(6, 7, 5);\n line-height: var(--s);\n }\n\n & > .edition-name {\n font-weight: 600;\n letter-spacing: 1.7px;\n padding-right: toRem(5);\n text-transform: uppercase;\n }\n\n & > .edition-trial {\n display: inline-block;\n position: relative;\n @include margin-left(5px);\n @include padding-left(5px);\n background-color: var(--gray-600);\n color: var(--gray-200);\n border-radius: 0 1px 1px 0;\n letter-spacing: 1px;\n @include padding-right(7px);\n text-transform: lowercase;\n\n &:before {\n display: block;\n position: absolute;\n top: 0;\n content: '';\n font-size: 0;\n width: 0;\n height: 0;\n border-style: solid;\n\n body.ltr & {\n left: -10px;\n border-width: 0 10px 20px 0;\n border-color: transparent var(--gray-600) transparent transparent;\n }\n\n body.rtl & {\n right: -10px;\n border-width: 0 0 20px 10px;\n border-color: transparent transparent transparent var(--gray-600);\n }\n }\n }\n}\n\n#devmode {\n flex: 0 0 4px;\n width: 100%;\n min-height: 4px; // fixes Windows scaling bug (https://github.com/craftcms/cms/issues/3259)\n background: url(../images/dev-mode.svg) repeat-x 21px 0;\n cursor: help;\n}\n\n#page-container {\n @include padding-left($sidebarWidth);\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n}\n\n#alerts {\n position: relative; // to keep it above #global-header's shadow\n background-color: var(--red-050);\n border-left: 5px solid var(--error-color);\n padding: 11px 0;\n text-align: center;\n color: var(--error-color);\n\n li {\n padding: 4px var(--xl);\n\n a {\n color: var(--error-color);\n text-decoration: underline;\n\n &.go {\n text-decoration: none;\n white-space: nowrap;\n border: 1px solid transparentize($errorColor, 0.5);\n border-radius: var(--medium-border-radius);\n padding: 3px 5px;\n margin: 0 2px;\n\n &:after {\n color: var(--error-color);\n }\n\n &:hover {\n border-color: var(--error-color);\n }\n }\n }\n }\n}\n\n#global-header {\n width: 100%;\n margin-bottom: var(--m);\n @include pane;\n background: var(--gray-050);\n\n .flex {\n align-items: center;\n }\n\n .btn {\n --ui-control-color: var(--gray-400);\n --ui-control-hover-color: var(--gray-500);\n --ui-control-active-color: var(--gray-600);\n }\n}\n\n.nav-toggle {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 36px;\n height: 50px;\n line-height: 26px;\n color: currentColor;\n text-align: center;\n @include margin-left(-10px);\n\n &:before {\n @include icon;\n content: 'menu';\n font-size: 16px;\n line-height: 0;\n }\n\n &:hover {\n color: var(--gray-400);\n }\n}\n\n#crumbs {\n display: flex;\n flex-direction: row;\n align-items: center;\n font-size: 13px;\n margin: 0 !important;\n\n &.empty {\n display: none;\n }\n\n a,\n button {\n color: var(--light-text-color);\n transition: color linear 100ms;\n\n &:hover {\n color: var(--link-color);\n text-decoration: none;\n }\n }\n\n nav {\n margin: 0;\n }\n}\n\n.breadcrumb-list {\n display: flex;\n flex-direction: row;\n align-items: stretch;\n flex-wrap: wrap;\n\n li {\n display: inline-flex;\n align-items: center;\n\n a,\n button {\n padding: 15px 0;\n }\n\n button {\n cursor: pointer;\n }\n\n &:after {\n @include margin(0, 8px, 0, 7px);\n @include angle(right, var(--medium-hairline-color));\n }\n }\n\n & .menu--disclosure {\n li {\n display: block;\n\n &::after {\n content: none;\n }\n }\n }\n}\n\nli.breadcrumb-toggle-wrapper {\n &::after {\n content: none;\n }\n}\n\n#account-menu {\n ul {\n li {\n a {\n max-width: calc(100% + 28px) !important;\n }\n }\n }\n}\n\n#announcements-btn {\n @include header-btn;\n width: 40px;\n position: relative;\n\n &.unread:after {\n content: '';\n display: block;\n position: absolute;\n top: 3px;\n @include right(7px);\n width: 7px;\n height: 7px;\n border-radius: 4px;\n background-color: var(--blue-600);\n }\n\n svg {\n width: 22px;\n height: 22px;\n @include svg-mask(var(--ui-control-color));\n }\n\n &:hover,\n &:active,\n &.active {\n svg {\n @include svg-mask(var(--ui-control-active-color));\n }\n }\n}\n\n#announcements {\n max-width: 350px;\n\n .announcement {\n &:not(:first-child) {\n margin-top: 20px;\n }\n\n .announcement-label-container {\n margin-top: -3px;\n display: flex;\n align-items: center;\n margin-bottom: 3px;\n\n .announcement-icon svg {\n display: block;\n width: 15px;\n height: 15px;\n }\n\n .announcement-label {\n margin-left: 5px;\n font-size: 12px;\n color: var(--light-text-color);\n }\n }\n\n &.unread .announcement__heading:after {\n content: '';\n display: block;\n position: absolute;\n top: 7px;\n @include left(-13px);\n width: 7px;\n height: 7px;\n border-radius: 4px;\n background-color: var(--blue-600);\n }\n\n p {\n margin: 0;\n }\n }\n\n .announcement__header {\n display: grid;\n }\n\n .announcement__heading {\n position: relative;\n margin: 0 0 3px;\n order: 1;\n }\n}\n\n#user-info {\n display: flex;\n flex-direction: row;\n align-items: center;\n @include padding-right(25px);\n padding-top: 5px;\n padding-bottom: 5px;\n height: 100%;\n background-color: transparent;\n border-radius: 0;\n\n &:after {\n border-color: var(--ui-control-color);\n transition: border-color linear 100ms;\n }\n\n &:hover:after {\n border-color: var(--ui-control-hover-color);\n }\n\n &[aria-expanded='true']:after {\n border-color: var(--ui-control-active-color);\n }\n}\n\n.header-photo {\n padding: 5px 0;\n\n img {\n display: block;\n width: 30px;\n height: 30px;\n max-width: none;\n border-radius: 50%;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.95),\n 0 0 0 transparentize($grey900, 1);\n transition: box-shadow linear 150ms;\n\n #user-info:hover & {\n box-shadow: 0 0 0 1px transparentize($grey900, 0.95),\n 0 2px 10px -2px transparentize($grey900, 0.7);\n }\n }\n}\n\n/* main container */\n\n#main-container {\n position: relative;\n flex-grow: 1;\n}\n\n#notifications {\n position: fixed;\n bottom: 8px;\n @include left(8px);\n width: calc(100% - 16px);\n z-index: 101;\n\n @media only screen and (min-width: $minHorizontalUiWidth) {\n width: 350px;\n }\n\n .notification {\n display: flex;\n position: relative;\n @include pane;\n padding: 10px 14px;\n border-radius: var(--large-border-radius);\n box-shadow: 0 0 0 1px transparentize($grey1000, 0.85),\n 0 2px 12px transparentize($grey1000, 0.85);\n --color: var(--notice-color);\n\n &[data-type='success'] {\n --color: var(--success-color);\n }\n\n &[data-type='error'] {\n --color: var(--error-color);\n }\n\n & + .notification {\n margin-top: 12px;\n }\n\n .notification-icon {\n width: 18px;\n margin-top: -2px;\n @include margin-right(10px);\n font-size: 18px;\n color: var(--color);\n }\n\n .notification-body {\n display: flex;\n flex: 1;\n\n .notification-message {\n font-weight: bold;\n }\n\n .notification-details {\n margin-top: var(--xs);\n\n .element {\n border: 1px solid $hairlineColor;\n }\n }\n }\n\n .notification-close-btn {\n position: relative;\n top: -2px;\n @include margin-left(10px);\n }\n }\n}\n\n#header-container {\n margin-bottom: var(--m);\n}\n\n#crumbs,\n#header {\n padding-left: var(--xl);\n padding-right: var(--xl);\n}\n\n#primary-nav-toggle {\n @media only screen and (min-width: $minFullUiWidth) {\n display: none;\n }\n}\n\n#global-header,\n#header {\n .flex {\n max-width: 100%;\n\n &.flex-nowrap {\n min-width: 0;\n }\n }\n}\n\n#header {\n display: flex;\n align-items: flex-start;\n align-content: stretch;\n flex-wrap: nowrap;\n justify-content: space-between;\n gap: var(--s);\n padding-top: var(--s);\n padding-bottom: var(--s);\n position: relative;\n z-index: 2;\n width: calc(100vw - #{$sidebarWidth});\n box-sizing: border-box;\n background-color: transparentize($grey300, 1);\n box-shadow: 0 1px 0 transparentize($grey800, 1);\n transition: background-color linear 100ms, box-shadow linear 100ms;\n\n body.fixed-header & {\n position: fixed;\n z-index: 12;\n top: 0;\n background-color: var(--gray-100);\n box-shadow: inset 0 -1px 0 transparentize($grey700, 0.9);\n }\n\n @supports (backdrop-filter: blur(10px)) {\n & {\n transition: background-color linear 100ms, box-shadow linear 100ms,\n backdrop-filter linear 100ms;\n\n body.fixed-header & {\n background-color: transparentize($grey100, 0.25);\n backdrop-filter: blur(10px);\n }\n }\n }\n\n h1 {\n line-height: 34px;\n margin-top: 0;\n margin-bottom: 0;\n min-width: 0;\n }\n\n .buttons,\n .btngroup {\n margin-top: 0;\n }\n}\n\n#page-title {\n &.has-toolbar {\n @media only screen and (min-width: $minHorizontalUiWidth) {\n min-width: calc(#{$sidebarWidth} - var(--xl) - var(--s)) !important;\n }\n }\n}\n\n#toolbar {\n flex: 1;\n align-items: flex-start;\n justify-content: space-between;\n\n .icon:before,\n .texticon:before,\n .menubtn:after,\n [data-icon]:before,\n [data-icon-after]:after {\n color: currentColor;\n opacity: 0.8;\n }\n\n .text {\n border-radius: var(--large-border-radius);\n\n &::-webkit-input-placeholder {\n color: var(--light-text-color);\n }\n\n &:-ms-input-placeholder {\n color: var(--light-text-color);\n }\n\n &::-ms-input-placeholder {\n color: var(--light-text-color);\n }\n\n &:-moz-placeholder {\n color: var(--light-text-color);\n }\n\n &::-moz-placeholder {\n color: var(--light-text-color);\n }\n\n &::placeholder {\n color: var(--light-text-color);\n }\n\n &:not(:focus) {\n background-clip: border-box;\n }\n }\n}\n\n#action-buttons {\n @media only screen and (max-width: 400px) {\n .btngroup .btn:first-child {\n flex-basis: 100%;\n }\n }\n\n @media only screen and (max-width: $minHorizontalUiWidth - 1px) {\n margin-top: 10px;\n }\n}\n\n#main-content {\n display: flex;\n flex-direction: row;\n align-items: flex-start;\n width: calc(100vw - #{$sidebarWidth});\n padding: 0 var(--xl) 48px;\n box-sizing: border-box;\n\n // for the Dashboard and any other full-page grids:\n & > .grid:only-child {\n flex: 1;\n }\n}\n\n#sidebar-toggle-container {\n display: none;\n}\n\n#sidebar-container {\n flex: 0 0 $sidebarWidth;\n width: $sidebarWidth;\n box-sizing: border-box;\n\n @media only screen and (min-width: $minFullUiWidth) {\n @include margin-left(calc(var(--xl) * -1));\n }\n}\n\n#sidebar {\n box-sizing: border-box;\n padding: 0 31px;\n width: $sidebarWidth;\n background-color: transparent;\n\n &.fixed {\n position: fixed;\n overflow-y: auto;\n padding-top: var(--m);\n padding-bottom: var(--m);\n }\n\n nav {\n margin-left: -31px;\n margin-right: -31px;\n\n li {\n a {\n position: relative;\n\n &:focus {\n z-index: 1;\n }\n\n &:not(.sel) {\n &:hover {\n background-color: var(--gray-200);\n }\n }\n }\n }\n }\n}\n\n#content-container {\n flex: 1;\n\n #main-content:not(.has-sidebar):not(.has-details) & {\n width: 100%;\n max-width: 100%;\n }\n\n #main-content.has-sidebar & {\n width: calc(100% - #{$sidebarWidth - 24});\n max-width: calc(100% - #{$sidebarWidth - 24});\n }\n\n #main-content.has-details & {\n width: calc(100% - #{$detailsWidth} - var(--m));\n max-width: calc(100% - #{$detailsWidth} - var(--m));\n }\n\n #main-content.has-sidebar.has-details {\n width: calc(100% - #{$sidebarWidth} - #{$detailsWidth} - 38px);\n max-width: calc(100% - #{$sidebarWidth} - #{$detailsWidth} - 38px);\n }\n}\n\n#content-heading {\n margin-top: var(--xl) !important;\n\n @media only screen and (min-width: $minHorizontalUiWidth) {\n @include visually-hidden;\n }\n}\n\n.content-pane {\n @include pane;\n border-radius: var(--large-border-radius);\n position: relative;\n background-clip: padding-box;\n padding: var(--xl);\n word-wrap: break-word;\n\n & > hr {\n margin-left: calc(var(--xl) * -1);\n margin-right: calc(var(--xl) * -1);\n }\n}\n\n#footer {\n position: sticky;\n bottom: 0;\n z-index: 1;\n margin: 25px calc(var(--xl) * -1) calc(var(--xl) * -1); // 1px extra on top is intentional\n padding: var(--s) var(--xl);\n background-color: var(--gray-050);\n border-radius: 0 0 var(--large-border-radius) var(--large-border-radius);\n box-sizing: border-box;\n min-height: 50px;\n\n &:empty {\n display: none;\n }\n\n &.stuck {\n border-radius: 0;\n\n @supports (backdrop-filter: blur(10px)) {\n & {\n background-color: transparentize($grey100, 0.25);\n backdrop-filter: blur(10px);\n }\n }\n }\n\n .has-debug-toolbar & {\n transition: padding linear 100ms;\n\n &.stuck {\n padding-bottom: 52px;\n }\n }\n\n & > *,\n .flex > * {\n margin-bottom: 0;\n }\n}\n\n#details-container {\n flex: 0 0 #{$detailsWidth + 38};\n width: $detailsWidth + 38;\n @include margin-right(calc(var(--xl) * -1));\n box-sizing: border-box;\n}\n\n#details {\n box-sizing: border-box;\n @include padding-right(var(--xl));\n @include padding-left(var(--m));\n width: $detailsWidth + 38;\n\n &.fixed {\n position: fixed;\n overflow-y: auto;\n padding-top: var(--m);\n }\n\n .details {\n .meta {\n border-radius: var(--large-border-radius);\n\n &:not(.read-only):not(.warning) {\n @include pane;\n }\n\n &.read-only {\n color: var(--medium-text-color);\n background-color: transparent !important;\n }\n\n & > .field,\n & > .data {\n &:first-child {\n &,\n & > .status-badge {\n border-top-left-radius: var(--large-border-radius);\n }\n\n border-top-right-radius: var(--large-border-radius);\n }\n\n &:last-child {\n &,\n & > .status-badge {\n border-bottom-left-radius: var(--large-border-radius);\n }\n\n border-bottom-right-radius: var(--large-border-radius);\n }\n }\n }\n\n & > .field {\n & > .input > .text.fullwidth {\n @include pane;\n }\n }\n\n .notes {\n border-radius: var(--large-border-radius);\n padding-top: var(--m);\n padding-bottom: var(--m);\n }\n }\n}\n\n// Hide the sidebar at < 1200\n@media only screen and (max-width: $minFullUiWidth - 1px) {\n #global-container {\n @include left(-$sidebarWidth);\n width: calc(100vw + #{$sidebarWidth});\n\n body.ltr.showing-nav & {\n left: 0;\n }\n\n body.rtl.showing-nav & {\n right: 0;\n }\n }\n\n #crumbs {\n display: flex !important;\n }\n\n #header {\n width: 100vw;\n }\n\n #main-content {\n width: 100vw;\n }\n}\n\n// Rearrange #main-content to flow vertically at < 999\n@media only screen and (max-width: $minHorizontalUiWidth - 1px) {\n #header {\n display: block;\n\n .flex:not(#toolbar) {\n margin-top: 10px;\n }\n }\n\n #toolbar {\n flex-wrap: wrap !important;\n\n & > * {\n margin-top: 10px !important;\n }\n }\n\n body.fixed-header #header .flex:first-child {\n margin-top: 0;\n }\n\n #main-content {\n display: block;\n }\n\n #sidebar-toggle-container {\n display: block;\n margin-bottom: var(--m);\n }\n\n #sidebar-toggle {\n &:after {\n top: 0;\n transform: rotate(-45deg);\n\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n\n body.showing-sidebar & {\n background-color: darken($grey200, 10%) !important;\n\n &:after {\n transform: rotate(45deg);\n }\n }\n }\n\n #content-container {\n min-height: 0 !important;\n }\n\n #sidebar-container,\n #details-container {\n width: auto !important;\n }\n\n #sidebar,\n #details {\n position: static !important;\n overflow-y: visible !important;\n max-height: none !important;\n width: auto;\n }\n\n #sidebar {\n margin-bottom: var(--m);\n\n body:not(.showing-sidebar) & {\n display: none;\n }\n }\n\n #details-container {\n @include margin-right(0);\n }\n\n #content-container {\n width: auto !important;\n max-width: none !important;\n }\n\n #details {\n padding: 0 !important;\n margin-top: var(--m);\n }\n}\n\n// Tighten up the padding at < 768\n@media only screen and (max-width: 767px) {\n #crumbs,\n #header,\n #main-content {\n padding-left: 10px !important;\n padding-right: 10px !important;\n }\n\n #tabs ul li {\n a {\n padding-left: var(--m);\n padding-right: var(--m);\n }\n\n & + li {\n @include margin-left(-7px);\n }\n }\n}\n\n@media print {\n}\n\n#settingsmenu ul li a {\n @include padding-left(46px);\n\n &:before {\n @include margin(1px, 0, 0, -22px);\n font-size: 15px;\n }\n\n img {\n width: 16px;\n height: 16px;\n position: absolute;\n margin-left: -23px;\n margin-top: 1px;\n }\n}\n\n/* grids */\n.grid {\n position: relative;\n min-height: 1px; // Required for Grid.js to run\n\n &:after {\n @include clearafter;\n }\n\n & > .item {\n display: none;\n box-sizing: border-box;\n }\n}\n\n/* Sidebar */\n.sidebar {\n width: $sidebarWidth;\n box-sizing: border-box;\n font-size: 13px;\n\n &:not(.drag-helper) {\n padding: var(--m) 0;\n background-color: var(--gray-050);\n }\n\n .heading {\n position: relative;\n margin: 0 var(--xl);\n\n &:not(:first-child) {\n margin-top: var(--m);\n }\n\n & > span {\n display: inline-block;\n position: relative;\n z-index: 1;\n padding: 0 5px;\n margin: 0 -5px;\n text-transform: uppercase;\n color: var(--medium-text-color);\n font-size: 11px;\n font-weight: bold;\n }\n\n & > ul {\n margin: 2px calc(var(--xl) * -1);\n }\n }\n\n @mixin nav-level($level) {\n & > a {\n @include padding-left(24px + 14 * $level);\n }\n\n & > .toggle {\n @include left(calc(var(--m) * #{$level}));\n }\n }\n\n nav {\n padding: 0 var(--s);\n\n & > ul {\n & > li:not(.heading),\n & > li.heading > ul > li {\n @include nav-level(0);\n\n & > ul.nested > li {\n @include nav-level(1);\n\n & > ul.nested > li {\n @include nav-level(2);\n\n & > ul.nested > li {\n @include nav-level(3);\n\n & > ul.nested > li {\n @include nav-level(4);\n }\n }\n }\n }\n }\n }\n\n li {\n position: relative;\n\n &:not(.has-subnav) > a {\n &:not(.sel):hover {\n text-decoration: none;\n background-color: var(--gray-100);\n }\n\n &.sel {\n cursor: default;\n background-color: var(--gray-500);\n @include light-on-dark-text;\n\n &,\n & + .toggle {\n color: var(--white);\n }\n }\n }\n\n a {\n position: relative;\n margin-bottom: 1px;\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 7px var(--xl);\n min-height: var(--xl);\n box-sizing: border-box;\n color: var(--text-color);\n user-select: none;\n border-radius: var(--large-border-radius);\n word-break: break-word;\n\n .status {\n flex-shrink: 1;\n }\n\n .icon {\n @include margin-right(10px);\n flex-shrink: 1;\n width: toRem(18);\n height: toRem(18);\n word-break: normal;\n transition: margin-left linear 150ms, margin-right linear 150ms;\n opacity: 0.85;\n\n &.icon-mask {\n svg {\n @include svg-mask(currentColor);\n }\n\n span[data-icon] {\n color: currentColor;\n }\n }\n\n svg {\n width: 16px;\n height: 16px;\n }\n\n span[data-icon] {\n font-size: 16px;\n\n &::before {\n display: block;\n }\n }\n }\n\n .label {\n flex: 1;\n }\n\n .badge {\n @include margin(0, -4px, 0, 10px);\n flex-shrink: 1;\n padding: 0 6px;\n font-size: 11px;\n line-height: 16px;\n border-radius: var(--s);\n background-color: var(--medium-text-color);\n color: var(--white);\n }\n }\n\n .toggle {\n position: absolute;\n z-index: 1;\n height: 34px;\n top: 0;\n width: var(--xl);\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n ul {\n display: none;\n }\n\n &.heading,\n &.expanded {\n & > ul {\n display: block;\n }\n }\n }\n }\n}\n\n.content.has-sidebar:not(.hiding-sidebar) {\n @include margin-left($sidebarWidth);\n}\n\n#content-notice {\n margin: 0 calc(var(--xl) * -1);\n padding: 0 var(--xl);\n\n &:not(:last-child) {\n padding-bottom: var(--s);\n border-bottom: 1px solid var(--hairline-color);\n margin-bottom: var(--s);\n }\n}\n\n/* flexbox field layouts */\n#content :not(.meta) > .flex-fields,\n#content > .flex-fields,\n.so-content .flex-fields {\n --row-gap: var(--xl);\n display: flex;\n flex-wrap: wrap;\n align-content: flex-start;\n margin: 0 calc(var(--row-gap) * -1) calc(var(--row-gap) * -1);\n width: calc(100% + var(--row-gap) * 2);\n\n & > * {\n margin: 0 0 var(--row-gap) !important;\n padding: 0 var(--row-gap);\n box-sizing: border-box;\n }\n\n & > h2 {\n flex: 4 0 100%;\n\n &:not(:first-child) {\n padding-top: var(--xl);\n border-top: 1px solid var(--hairline-color);\n }\n }\n\n & > hr,\n & > .line-break {\n flex: 4 0 100%;\n }\n\n & > .line-break:not(:first-child) {\n margin-bottom: 0 !important;\n }\n\n & > :not(h2):not(hr):not(.line-break) {\n &,\n &:last-child {\n position: relative;\n width: 100%;\n\n &:before {\n position: absolute;\n top: 0;\n @include left(-1px);\n width: 1px;\n height: 100%;\n content: '';\n // same BG color as the hairline around the content pane’s 1px shadow\n background-color: transparentize($grey200, 0.5);\n }\n }\n }\n}\n\n#content :not(.meta) > .flex-fields,\n#content > .flex-fields {\n & > :not(h2):not(hr):not(.line-break) {\n &,\n &:last-child {\n // 4 cols for >= 1536px\n @media only screen and (min-width: $minXlUiWidth) {\n &.width-25 {\n width: 25%;\n }\n &.width-50 {\n width: 50%;\n }\n &.width-75 {\n width: 75%;\n }\n }\n\n // 2 cols for 600 - 1535px\n @media only screen and (min-width: $minDesktopWidth) and (max-width: $minXlUiWidth - 1px) {\n &.width-25,\n &.width-50 {\n width: 50%;\n }\n }\n }\n }\n}\n\n.so-content .flex-fields {\n & > :not(h2):not(hr):not(.line-break) {\n &,\n &:last-child {\n // 2 cols for >= 1200\n @media only screen and (min-width: $minDesktopWidth * 2) {\n &.width-25,\n &.width-50 {\n width: 50%;\n }\n }\n }\n }\n}\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n.lp-editor-container,\n.lp-preview-container {\n position: fixed;\n top: 0;\n height: 100%;\n background-color: var(--white);\n z-index: 100;\n\n header {\n padding: 8px 24px;\n background-color: var(--gray-100);\n box-shadow: 0 1px 0 transparentize($grey700, 0.8);\n box-sizing: border-box;\n position: relative;\n z-index: 1;\n\n @supports (backdrop-filter: blur(10px)) {\n & {\n position: absolute;\n z-index: 2;\n top: 0;\n left: 0;\n width: 100%;\n background-color: transparentize($grey100, 0.25);\n backdrop-filter: blur(10px);\n\n & + .lp-editor {\n padding-top: #{10 + 34 + 10 + 24}px;\n }\n }\n }\n\n .btn,\n .spinner,\n .checkmark-icon {\n margin-bottom: 0;\n }\n }\n}\n\n.lp-editor-container {\n display: flex;\n flex-direction: column;\n\n .lp-editor {\n flex: 1;\n padding: 24px;\n overflow: auto;\n box-sizing: border-box;\n\n & > .field {\n &:last-child {\n margin-bottom: 24px !important;\n }\n\n & > .status-badge {\n @include left(-24px);\n }\n }\n\n .matrixblock > .fields > .flex-fields > .field > .status-badge {\n @include left(calc(var(--m) * -1));\n }\n }\n\n .lp-draghandle {\n position: absolute;\n z-index: 6;\n top: 0;\n @include right(-2px);\n width: 4px;\n height: 100%;\n cursor: col-resize;\n }\n}\n\n.lp-preview-container {\n display: flex;\n flex-direction: column;\n box-shadow: -1px 0 0 transparentize($grey700, 0.8);\n\n &.dragging:after {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n content: '';\n font-size: 0;\n }\n\n .lp-preview-header {\n display: flex;\n\n @supports (not (backdrop-filter: blur(10px))) {\n background-color: transparentize($grey100, 0.25);\n }\n\n .buttons {\n margin: 0;\n\n .btn + .btn {\n @include margin-left(7px);\n }\n }\n\n & + .lp-iframe-container {\n padding-top: 0;\n\n @supports (backdrop-filter: blur(10px)) {\n padding-top: 50px;\n }\n }\n\n .lp-device-type {\n .btn {\n &::before {\n width: 27px;\n height: 22px;\n display: block;\n content: '';\n background-size: contain;\n background-repeat: no-repeat;\n background-position: center;\n transition-duration: 0.3s;\n }\n\n // SVGs\n &.lp-device-type-btn--phone::before {\n background-image: url(../images/preview/icon-phone.svg);\n }\n &.lp-device-type-btn--tablet::before {\n background-image: url(../images/preview/icon-tablet.svg);\n }\n &.lp-device-type-btn--desktop::before {\n background-image: url(../images/preview/icon-desktop.svg);\n }\n }\n }\n }\n\n .lp-device-type__label {\n &::before {\n width: 27px;\n height: 22px;\n display: block;\n content: '';\n background-size: contain;\n background-repeat: no-repeat;\n background-position: center;\n transition-duration: 0.3s;\n }\n\n // SVGs\n &.lp-device-type__label--phone::before {\n background-image: url(../images/preview/icon-phone.svg);\n }\n &.lp-device-type__label--tablet::before {\n background-image: url(../images/preview/icon-tablet.svg);\n }\n &.lp-device-type__label--desktop::before {\n background-image: url(../images/preview/icon-desktop.svg);\n }\n }\n\n .lp-preview-container__bumper-link {\n top: unset;\n bottom: 0;\n }\n\n .lp-device-mask {\n display: none;\n }\n\n .lp-iframe-container {\n flex: 1;\n overflow: auto;\n\n .lp-preview {\n display: block;\n width: 100%;\n min-height: 100%;\n }\n\n &:not(.lp-iframe-container--has-device-preview) {\n // Preview container\n .lp-device-preview-container {\n width: auto !important;\n height: 100% !important;\n transform: none !important;\n margin: 0 !important;\n }\n }\n\n &--has-device-preview {\n flex: none;\n padding-top: 0 !important;\n position: relative;\n top: 0;\n height: calc(100% - 50px);\n width: 100%;\n background-color: var(--gray-100);\n\n @supports (backdrop-filter: blur(10px)) {\n top: 50px;\n }\n\n // Preview container\n .lp-device-preview-container {\n position: absolute;\n top: 50%;\n left: 50%;\n z-index: 2;\n overflow: auto;\n opacity: 1;\n transition: opacity 0.3s;\n }\n\n // Device mask\n .lp-device-mask {\n display: block;\n position: absolute;\n top: 50%;\n left: 50%;\n z-index: 1;\n background-image: url(../images/preview/chrome-phone-top.svg),\n url(../images/preview/chrome-phone-bottom.svg);\n background-position: top center, bottom center;\n background-repeat: no-repeat;\n background-size: contain;\n background-color: #fff;\n box-shadow: 0 0 58px rgba(6, 67, 117, 0.3);\n border-radius: 18px;\n }\n\n // Tablet\n &.lp-iframe-container--tablet {\n .lp-device-mask {\n background-image: url(../images/preview/chrome-tablet-top.svg),\n url(../images/preview/chrome-tablet-bottom.svg);\n }\n }\n }\n\n // Animate rotations\n @media screen and (prefers-reduced-motion: no-preference) {\n &--rotating {\n .lp-device-mask {\n transition-duration: 0.3s;\n transition-property: transform;\n }\n .lp-device-preview-container {\n opacity: 0;\n transition: opacity 0s;\n }\n }\n }\n }\n}\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n$base: 24px;\n$tabPadding: 14px;\n$tabWidth: $base * 10;\n$gridColor: hsl(212, 50%, 95%);\n\n@mixin workspaceBg {\n background-color: var(--gray-050);\n background-image: linear-gradient(to right, $gridColor 1px, transparent 0px),\n linear-gradient(to bottom, $gridColor 1px, transparent 1px);\n background-size: $base $base;\n}\n\n.layoutdesigner {\n display: flex;\n align-items: stretch;\n position: relative;\n @include input-styles;\n overflow: hidden;\n box-shadow: none;\n @include padding-right($tabWidth + 1);\n min-height: 500px;\n\n .errors > & {\n border: 1px solid var(--error-color) !important;\n }\n\n .fld-workspace {\n flex: 1;\n @include border-radius(\n var(--small-border-radius),\n 0,\n 0,\n var(--small-border-radius)\n );\n @include padding($base, 0, $base, $base);\n @include workspaceBg;\n background-position: -1px -1px;\n box-shadow: inset 0 1px 3px -1px darken($grey200, 10%);\n\n .fld-tabs {\n display: flex;\n align-items: flex-start;\n flex-wrap: wrap;\n }\n }\n\n .fld-sidebar {\n position: absolute;\n top: 0;\n @include right(0);\n height: 100%;\n width: $tabWidth + 1;\n padding: $tabPadding;\n overflow: auto;\n box-sizing: border-box;\n\n .btngroup {\n margin-bottom: $tabPadding;\n }\n\n .fld-field-library {\n .fld-field-group {\n margin-top: $tabPadding;\n\n h6 {\n margin-bottom: 7px;\n }\n }\n }\n\n .filtered {\n display: none;\n }\n }\n\n .fld-new-tab-btn:active {\n background-color: var(--gray-050);\n }\n}\n\n.fld-sidebar,\n.fld-tab .tabs .tab,\n.fld-tab .fld-tabcontent,\n.fld-new-tab-btn,\n.fld-new-tab-btn:hover {\n background-color: var(--white);\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 2px 5px -2px transparentize($grey900, 0.8);\n}\n\n.fld-tab .settings,\n.fld-element .settings,\n.fld-element .slide-picker {\n @include margin-left(7px);\n}\n\n.fld-tab .settings:before,\n.fld-element .settings:before {\n margin-top: -2px;\n font-size: 16px;\n opacity: 0.5;\n}\n\n.fld-tab .settings:hover:before,\n.fld-tab .settings.active:before,\n.fld-element .settings:hover:before,\n.fld-element .settings.active:before {\n opacity: 1;\n}\n\n.fld-tab {\n width: $tabWidth + $base;\n @include padding(0, $base + 1, $base, 0);\n box-sizing: border-box;\n\n .tabs {\n margin: -10px -12px 0;\n padding: 10px 12px 0;\n overflow: hidden;\n display: flex;\n\n .tab {\n display: flex;\n max-width: calc(100% - 10px);\n box-sizing: border-box;\n padding: 8px $tabPadding;\n border-radius: var(--medium-border-radius) var(--medium-border-radius) 0 0;\n\n body:not(.dragging) &.draggable {\n cursor: move;\n cursor: grab;\n }\n\n span {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n }\n }\n\n .fld-tabcontent {\n padding: $tabPadding;\n @include border-radius(\n 0,\n var(--medium-border-radius),\n var(--medium-border-radius),\n var(--medium-border-radius)\n );\n }\n\n &.fld-insertion {\n .tabs .tab,\n .fld-tabcontent {\n margin: -2px;\n border: 2px dashed var(--hairline-color);\n box-shadow: none;\n @include workspaceBg;\n }\n .tabs .tab {\n background-position: -1px -1px;\n }\n .fld-tabcontent {\n background-position: -1px -13px;\n }\n }\n}\n\n.fld-tab-caboose {\n min-height: 24px;\n}\n\n.fld-indicator {\n display: inline-flex;\n font-size: 11px;\n color: var(--uicontrol-color);\n @include margin-left(4px);\n\n & + .fld-indicator {\n @include margin-left(2px);\n }\n}\n\n.fld-element {\n position: relative;\n display: flex;\n align-items: center;\n padding: 7px 10px;\n box-shadow: inset 0 0 0 1px var(--hairline-color);\n border-radius: var(--medium-border-radius);\n background-color: var(--white);\n\n body:not(.dragging) & {\n cursor: move;\n cursor: grab;\n }\n\n & + .fld-element {\n margin-top: 7px;\n }\n\n &.fld-insertion {\n box-sizing: border-box;\n border: 2px dashed var(--hairline-color);\n border-radius: var(--medium-border-radius);\n background: none;\n box-shadow: none;\n }\n\n &.draghelper {\n @include shadow;\n }\n\n &.fld-field {\n color: var(--medium-text-color);\n background-color: var(--gray-100);\n\n &:not(.draghelper) {\n box-shadow: none;\n }\n\n .fld-field-hidden:not(.hidden) {\n margin-top: -3px;\n @include margin-right(5px);\n\n &:before {\n @include icon;\n content: 'shuteye';\n }\n }\n\n .field-name {\n .fld-element-label {\n margin-bottom: 2px;\n }\n }\n }\n\n .fld-element-icon {\n @include margin-right(5px);\n text-align: center;\n\n &,\n svg {\n width: 16px;\n height: 16px;\n }\n\n svg {\n @include svg-mask(var(--ui-control-color));\n }\n }\n\n .field-name {\n flex: 1;\n overflow: hidden;\n\n .fld-element-label,\n .fld-attribute {\n flex: 1;\n display: flex;\n align-items: center;\n }\n\n .fld-element-label h4,\n .fld-attribute .smalltext {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .fld-element-label h4 {\n font-weight: normal;\n color: var(--text-color);\n margin: 0;\n }\n }\n}\n\nbody.dragging {\n cursor: move !important;\n cursor: grabbing !important;\n}\n\n.fld-hr,\n.fld-br {\n display: flex;\n justify-content: center;\n padding: 9px 10px;\n\n &:before {\n position: absolute;\n display: block;\n top: calc(50% - 2px);\n left: 10px;\n width: calc(100% - 20px);\n height: 4px;\n content: '';\n font-size: 0;\n border-radius: 2px;\n }\n\n .smalltext {\n position: relative;\n background-color: var(--gray-100);\n border-radius: 8px;\n padding: 1px 7px;\n }\n}\n\n.fld-hr:before {\n background-color: var(--gray-100);\n}\n\n.fld-br:before {\n background-image: repeating-linear-gradient(\n to right,\n var(--gray-100),\n var(--gray-100) calc(100% / 19),\n transparent calc(100% / 19),\n transparent calc(100% / 9.5),\n var(--gray-100) calc(100% / 9.5)\n );\n}\n\n.fld-element-settings-body {\n flex: 1;\n margin: -24px var(--neg-padding) 0;\n padding: 24px var(--padding);\n overflow: hidden auto;\n position: relative;\n}\n\n.fld-element-settings-footer {\n position: relative;\n display: flex;\n flex-direction: row;\n margin: 0 var(--neg-padding) -24px;\n padding: var(--padding);\n @include pane;\n background-color: var(--gray-050);\n z-index: 3;\n\n & > .ee-site-select {\n flex: 1;\n }\n\n & > .btn {\n @include margin-left(5px);\n }\n\n & > .spinner {\n @include margin(0, var(--neg-padding), 0, 0);\n }\n}\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n/* No Scroll */\nhtml.noscroll,\nhtml.noscroll body {\n overflow: hidden;\n height: 100%;\n}\n\n/* Image Editor */\n\n.modal.imageeditor {\n background-color: var(--gray-900);\n color: var(--white);\n @include light-on-dark-text;\n @include light-focus-ring;\n opacity: 0;\n user-select: none;\n}\n\n.modal.imageeditor.modal {\n border-radius: 0;\n}\n\n.modal.imageeditor.modal .body:after {\n display: none;\n}\n\n.modal.imageeditor .btn:not(.submit):not(.noborder) {\n background-color: var(--gray-600);\n color: var(--white);\n}\n\n.modal.imageeditor .btn:not(.submit):not(.noborder):hover {\n background-color: var(--gray-700);\n}\n\n.modal.imageeditor .btn:not(.submit):not(.noborder).active {\n background-color: var(--gray-800);\n}\n\n.modal.imageeditor .icon::before {\n width: 24px;\n height: 24px;\n margin-top: -4px;\n margin-left: -3px;\n display: inline-block;\n content: '';\n}\n\n.modal.imageeditor .icon.rotate-left::before {\n background-image: url(../images/image-editor/rotate-left.svg);\n}\n\n.modal.imageeditor .icon.rotate-right::before {\n background-image: url(../images/image-editor/rotate-right.svg);\n}\n\n.modal.imageeditor .icon.flip-vertical::before {\n background-image: url(../images/image-editor/flip-vertical.svg);\n}\n\n.modal.imageeditor .icon.flip-horizontal::before {\n background-image: url(../images/image-editor/flip-horizontal.svg);\n}\n\n.modal.imageeditor .icon.constraint::before {\n background-image: url(../images/image-editor/unconstrained.svg);\n}\n\n.modal.imageeditor .icon.focal-point::before {\n background-image: url(../images/image-editor/focal-point.svg);\n}\n\n.modal.imageeditor .body {\n display: flex;\n padding: 0;\n}\n\n.modal.imageeditor input {\n color: var(--text-color);\n}\n\n.modal.imageeditor .body .tabs {\n border-right: 1px solid var(--gray-1000);\n}\n\n.modal.imageeditor .body .tabs ul {\n width: 100px;\n flex-direction: column;\n align-items: stretch;\n}\n\n.modal.imageeditor .body .tabs ul li {\n position: relative;\n padding: 14px;\n text-align: center;\n border-bottom: 1px solid var(--gray-1000);\n cursor: pointer;\n\n &::before {\n position: absolute;\n top: 0;\n @include left(0);\n content: '';\n width: 0;\n height: 100%;\n background-color: currentColor;\n }\n\n &.selected {\n background-color: darken($grey900, 5%);\n\n &::before {\n width: 2px;\n }\n }\n}\n\n.modal.imageeditor .body .tabs ul li i {\n background-repeat: no-repeat;\n background-position: top center;\n display: block;\n height: 24px;\n}\n\n.modal.imageeditor .body .tabs ul li[data-view='rotate'] i {\n background-image: url(../images/image-editor/rotate-left.svg);\n}\n\n.modal.imageeditor .body .tabs ul li[data-view='crop'] i {\n background-image: url(../images/image-editor/crop.svg);\n}\n\n.modal.imageeditor .body .tabs ul li[data-view='filters'] i {\n background-image: url(../images/image-editor/filters.svg);\n}\n\n.modal.imageeditor .body .tabs ul li:hover {\n background-color: darken($grey900, 2%);\n}\n\n.modal.imageeditor .body .tabs ul li:hover {\n cursor: pointer;\n}\n\n.modal.imageeditor .body .views {\n padding: 24px;\n overflow: auto;\n}\n\n.modal.imageeditor .body .views .btngroup {\n margin-bottom: 24px;\n}\n\n.modal.imageeditor .body .views .filters ul {\n width: 100px;\n}\n\n.modal.imageeditor .body .views .filters ul li {\n text-align: center;\n margin-right: 14px;\n margin-bottom: 14px;\n}\n\n.modal.imageeditor .body .views .filters ul li:last-child {\n margin-right: 0;\n}\n\n.modal.imageeditor .body .views .filters ul li img {\n border: 3px solid transparent;\n border-radius: 4px;\n}\n\n.modal.imageeditor .body .views .filters ul li span {\n display: block;\n}\n\n.modal.imageeditor .body .views .filters ul li:hover {\n cursor: pointer;\n}\n\n.modal.imageeditor .body .views .filters ul li.selected img {\n border-color: var(--white);\n}\n\n.modal.imageeditor .body .image-container {\n flex-grow: 1;\n display: flex;\n flex-direction: column;\n position: relative;\n overflow: hidden;\n}\n\n.modal.imageeditor .body .image-container .image {\n text-align: center;\n flex-grow: 1;\n position: relative;\n margin: 14px;\n}\n\n.modal.imageeditor .body .image-container .image canvas {\n position: absolute;\n top: 0;\n left: 0;\n}\n\n.modal.imageeditor .body .image-container .image-tools {\n text-align: center;\n}\n\n.modal.imageeditor .body .image-container .image-tools .straightening {\n max-width: 400px;\n min-height: toRem(60);\n display: block;\n margin: 0 auto;\n overflow: hidden;\n}\n\n.modal.imageeditor .footer {\n position: absolute;\n background-color: transparent;\n bottom: 0;\n left: 0;\n width: 100%;\n border-top: 1px solid #000;\n\n body.has-debug-toolbar & {\n padding-bottom: calc(8px + 42px);\n }\n}\n\n.modal.imageeditor .body .views .crop {\n fieldset .heading {\n display: none;\n }\n\n .custom-constraint-spacer {\n padding: 0 var(--xs);\n }\n\n .constraint-group {\n display: grid;\n grid-gap: var(--xs);\n }\n\n .custom {\n @include padding-left($radioSize + 5);\n }\n\n .orientation {\n display: flex;\n align-items: center;\n justify-content: center;\n\n input {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n background-position: center center;\n background-repeat: no-repeat;\n margin: 0 4px;\n cursor: pointer;\n\n &[value='landscape'] {\n width: 30px;\n height: 20px;\n background-image: url(../images/image-editor/orientation-landscape-unchecked.svg);\n\n &:checked {\n background-image: url(../images/image-editor/orientation-landscape-checked.svg);\n }\n }\n\n &[value='portrait'] {\n width: 20px;\n height: 30px;\n background-image: url(../images/image-editor/orientation-portrait-unchecked.svg);\n\n &:checked {\n background-image: url(../images/image-editor/orientation-portrait-checked.svg);\n }\n }\n }\n }\n}\n\n.modal.imageeditor.vertical .body .views .crop {\n & > .btngroup:first-child {\n justify-content: center;\n }\n}\n\n.modal.imageeditor:not(.vertical) .body .views .crop {\n .constraint.custom {\n margin-top: var(--xs);\n }\n}\n\n/* Vertical */\n\n.vertical.imageeditor .body {\n flex-direction: column;\n\n .image-container {\n flex-basis: 30vh;\n flex-shrink: 0;\n }\n\n .constraint-group {\n grid-template-columns: 1fr 1fr;\n }\n}\n\n.vertical.imageeditor .body .tabs ul {\n display: flex;\n flex-direction: row;\n width: 100%;\n border-top: 1px solid #000;\n border-bottom: 1px solid #000;\n}\n\n.vertical.imageeditor .body .tabs ul li {\n flex-grow: 1;\n border: 0;\n border-right: 1px solid #000;\n padding: 10px 7px;\n\n &::before {\n top: unset;\n top: 0;\n width: 100%;\n height: 0;\n }\n\n &.selected::before {\n width: 100%;\n height: 2px;\n }\n}\n\n.vertical.imageeditor .body .views {\n width: auto;\n}\n\n.vertical.imageeditor .body .views .rotate {\n display: flex;\n justify-content: center;\n flex-wrap: wrap;\n margin-bottom: -14px;\n}\n\n.vertical.imageeditor .body .views .rotate .btngroup {\n margin: 0 7px 14px;\n}\n\n.vertical.imageeditor .body .views .filters ul {\n width: auto;\n height: 109px;\n overflow: auto;\n white-space: nowrap;\n margin: 0 -24px;\n margin-bottom: -24px;\n padding: 24px;\n text-align: center;\n}\n\n.vertical.imageeditor .body .views .filters ul li {\n display: inline-block;\n margin-bottom: 0;\n}\n\n/* Slide Rule */\n\n.slide-rule {\n position: relative;\n padding: 10px 0;\n\n &:focus {\n box-shadow: none;\n }\n\n @include focus-styles {\n .cursor::after {\n box-shadow: var(--focus-ring);\n }\n }\n\n .cursor {\n &::after {\n content: '';\n width: toRem(20);\n height: toRem(50);\n position: absolute;\n top: -15px;\n left: 50%;\n transform: translateX(-50%);\n }\n }\n}\n\n.slide-rule .cursor {\n position: absolute;\n margin-left: toRem(-4);\n margin-top: 4px;\n left: 50%;\n z-index: 1;\n width: 0;\n height: 0;\n border-left: toRem(5) solid transparent;\n border-right: toRem(5) solid transparent;\n border-top: toRem(5) solid #63a6e1;\n}\n\n.slide-rule .graduations {\n white-space: nowrap;\n height: 40px;\n position: relative;\n}\n\n.slide-rule .graduations ul {\n position: relative;\n float: left;\n}\n\n.slide-rule .graduations ul li {\n display: inline-block;\n font-size: 8px;\n position: relative;\n width: 10px;\n}\n\n.slide-rule .graduations ul li:not(.main-graduation) {\n left: 1px;\n}\n\n.slide-rule .graduations ul li.main-graduation:before {\n border-left-width: 3px;\n}\n\n.slide-rule .graduations ul li.main-graduation .label {\n display: block;\n cursor: default;\n}\n\n.slide-rule .graduations ul li.selected:before {\n border-left-color: #63a6e1;\n}\n\n.slide-rule .graduations ul li:before {\n content: '';\n position: absolute;\n border-left: 1px solid var(--white);\n height: 10px;\n top: 0px;\n left: 0;\n}\n\n.slide-rule .graduations ul li .label {\n width: 20px;\n position: absolute;\n top: 10px;\n left: -9px;\n display: none;\n text-align: center;\n}\n\n.slide-rule .value {\n display: none;\n position: absolute;\n bottom: 0;\n left: 50%;\n z-index: 1;\n box-sizing: border-box;\n padding: 5px;\n width: 50px;\n margin-left: -25px;\n background: var(--gray-600);\n}\n\n.slide-rule .overlay {\n z-index: 2;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 1px;\n left: 0;\n background-image: linear-gradient(\n to right,\n var(--gray-900) 0%,\n transparentize($grey900, 1) 15%,\n transparentize($grey900, 1) 85%,\n var(--gray-900) 100%\n );\n}\n\n/* Misc */\n\n.menu.dark {\n background-color: var(--gray-600);\n @include light-on-dark-text;\n\n ul {\n li {\n a {\n color: var(--white) !important;\n\n &:not(.sel):not(.disabled):hover {\n background-color: var(--gray-700);\n }\n }\n }\n }\n}\n","_:-ms-lang(x),\n.elements .tableview td.checkbox-cell input.checkbox + label,\n.elements .tableview td.checkbox-cell div.checkbox {\n top: 16px;\n}\n\n_:-ms-lang(x),\ninput.checkbox + label:empty,\ndiv:empty.checkbox {\n display: block;\n}\n",".yii-debug-toolbar__title a {\n display: block !important;\n}\n","@charset \"UTF-8\";\n\n@import '@craftcms/sass/mixins';\n\n.cp-chart {\n margin: 0;\n height: 100%;\n position: relative;\n}\n\n.cp-chart svg {\n width: 100%;\n height: 100%;\n}\n\n.cp-chart .axis path,\n.cp-chart .axis line {\n fill: none;\n stroke: var(--hairline-color);\n shape-rendering: crispEdges;\n}\n\n.cp-chart .ticks-axis path,\n.cp-chart .ticks-axis line {\n fill: none;\n stroke: none;\n shape-rendering: crispEdges;\n}\n\n.cp-chart .ticks-axis g.tick text {\n fill: var(--black);\n font-size: 11px;\n}\n\n.cp-chart .axis text {\n fill: RGBA(0, 0, 0, 0.6);\n}\n\n.cp-chart .grid-line .tick {\n stroke: RGBA(0, 0, 0, 0.08);\n stroke-opacity: 0.7;\n shape-rendering: crispEdges;\n}\n\n.cp-chart .grid-line .tick line {\n stroke: RGBA(0, 0, 0, 0.08);\n stroke-opacity: 0.7;\n shape-rendering: crispEdges;\n}\n\n.cp-chart .grid-line path {\n stroke-width: 0;\n}\n\n.tooltip {\n border-radius: 3px;\n padding: 7px 10px;\n background: transparentize($white, 0.1);\n position: absolute;\n z-index: 1000000;\n @include shadow;\n user-select: none;\n pointer-events: none;\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/cp.css","mappings":"AAAA,MCGA,YACE,aACA,mBAEA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,oBACA,mBAEA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBAEA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBAEA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,kBAEA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,kBACA,qBAEA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,qBACA,mBAEA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,mBACA,OCpFF,mBACE,8BACA,+BAIA,kCACA,sBAEA,6BAGA,yCACA,oCACA,mCACA,qBACA,uBAGA,sCAGA,wCACA,sDACA,mCAGA,4CACA,2CACA,oCAGA,qCACA,2BACA,mEAGA,oEAEA,kEAEA,kCAIA,iCACA,6BAGA,kCACA,gCACA,+BACA,gCAGA,kCACA,gCACA,2CAGA,yCACA,0BAGA,2BACA,0BACA,0CAEA,iDAEA,qBACA,kBACA,YCtCF,iBACE,4KACA,kCAIA,yCAQA,0CACA,qFAEA,kEACA,0DAEA,4FAEA,8GAEA,oCAIA,gCAGF,CAPE,kCAOF,CAGE,KC+FA,2CDlFA,CAJA,uBCsFA,CD5FF,iBAKA,iBACE,CATA,iBAGF,CAHE,WAaA,mDAIF,6IAIA,6SC+CE,qTDvBA,8DAGF,aAiBE,qBAGF,mBACE,CAGF,0DAKE,uBAKA,CALA,yBAKA,2DAEE,uBAGF,CAHE,0BAGF,oQAEE,sDCkCF,yCACA,sCAEA,oCACA,CAKA,kCAEA,kCACA,CAKA,0BACA,CAVA,aACA,CAGA,oBACA,CD/CE,kBC+CF,iBACA,CARA,oBADA,eACA,CAEA,cAYA,4BAPA,kBATA,iCACA,CACA,mBACA,CAWA,wBACA,iBACA,CANA,qBAMA,aDhCF,6CACE,CAEA,8CAGA,yCACA,CALA,qBA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","sources":["webpack:///./css/craft.scss","webpack:///./css/_color-palette.scss","webpack:///./css/_variables.scss","webpack:///./css/_main.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss","webpack:///./css/_cp.scss","webpack:///./css/_preview.scss","webpack:///./css/_fld.scss","webpack:///./css/_image_editor.scss","webpack:///./css/_shame.scss","webpack:///./css/_debug_toolbar.scss","webpack:///./css/charts.scss"],"sourcesContent":[":root{--white: #fff;--black: #000;--gray-050: hsl(212, 60%, 97%);--gray-100: hsl(212, 50%, 93%);--gray-200: hsl(212, 30%, 85%);--gray-300: hsl(211, 13%, 65%);--gray-350: hsl(211, 11%, 59%);--gray-400: hsl(210, 10%, 53%);--gray-500: hsl(211, 12%, 43%);--gray-550: hsl(210, 13%, 40%);--gray-600: hsl(209, 14%, 37%);--gray-700: hsl(209, 18%, 30%);--gray-800: hsl(209, 20%, 25%);--gray-900: hsl(210, 24%, 16%);--gray-1000: hsl(210, 24%, 10%);--blue-050: #e3f8ff;--blue-100: #b3ecff;--blue-200: #81defd;--blue-300: #5ed0fa;--blue-400: #40c3f7;--blue-500: #2bb0ed;--blue-600: #1992d4;--blue-700: #127fbf;--blue-800: #0b69a3;--blue-900: #035388;--cyan-050: #e0fcff;--cyan-100: #bef8fd;--cyan-200: #87eaf2;--cyan-300: #54d1db;--cyan-400: #38bec9;--cyan-500: #2cb1bc;--cyan-600: #14919b;--cyan-700: #0e7c86;--cyan-800: #0a6c74;--cyan-900: #044e54;--pink-050: #ffe3ec;--pink-100: #ffb8d2;--pink-200: #ff8cba;--pink-300: #f364a2;--pink-400: #e8368f;--pink-500: #da127d;--pink-600: #bc0a6f;--pink-700: #a30664;--pink-800: #870557;--pink-900: #620042;--red-050: #ffe3e3;--red-100: #ffbdbd;--red-200: #ff9b9b;--red-300: #f86a6a;--red-400: #ef4e4e;--red-500: #e12d39;--red-600: #cf1124;--red-700: #ab091e;--red-800: #8a041a;--red-900: #610316;--yellow-050: #fffbea;--yellow-100: #fff3c4;--yellow-200: #fce588;--yellow-300: #fadb5f;--yellow-400: #f7c948;--yellow-500: #f0b429;--yellow-600: #de911d;--yellow-700: #cb6e17;--yellow-750: #bd5a14;--yellow-800: #b44d12;--yellow-900: #8d2b0b;--teal-050: #effcf6;--teal-100: #c6f7e2;--teal-200: #8eedc7;--teal-300: #65d6ad;--teal-400: #3ebd93;--teal-500: #27ab83;--teal-550: #20a07b;--teal-600: #199473;--teal-700: #147d64;--teal-800: #0c6b58;--teal-900: #014d40}:root{--bg-color: $grey100;--bg-color-hsl: 212deg, 50%, 93%;--primary-color: var(--red-500);--secondary-color: var(--gray-500);--input-color: hsl(212, 25%, 50%);--text-color: var(--gray-700);--medium-dark-text-color: var(--gray-550);--medium-text-color: var(--gray-550);--light-text-color: var(--gray-500);--link-color: #2563eb;--font-weight-bold: 700;--menu-option-color: var(--text-color);--menu-option-active-color: var(--white);--menu-option-active-background-color: var(--gray-350);--hairline-color: rgba(51, 64, 77, 0.1);--medium-hairline-color: rgba(81, 95, 108, 0.25);--dark-hairline-color: rgba(123, 135, 147, 0.5);--light-focus-color: var(--blue-300);--medium-focus-color: var(--blue-500);--dark-focus-color: #0f74b1;--light-focus-ring: 0 0 0 1px #5ed0fa, 0 0 0 3px rgba(94, 208, 250, 0.7);--medium-focus-ring: 0 0 0 1px #2bb0ed, 0 0 0 3px rgba(43, 176, 237, 0.7);--dark-focus-ring: 0 0 0 1px #0f74b1, 0 0 0 3px rgba(15, 116, 177, 0.7);--light-sel-color: var(--gray-200);--dark-sel-color: var(--gray-600);--error-color: var(--red-600);--warning-color: var(--yellow-800);--success-color: var(--teal-700);--notice-color: var(--blue-800);--enabled-color: var(--teal-550);--pending-color: var(--yellow-700);--disabled-color: var(--red-600);--indicator-border-color: var(--yellow-700);--indicator-icon-color: var(--yellow-750);--small-border-radius: 3px;--medium-border-radius: 4px;--large-border-radius: 5px;--input-border-color: rgba(96, 125, 159, 0.25);--menu-border-radius: var(--medium-border-radius);--checkbox-size: 16px;--radio-size: 16px}@font-face{font-family:\"Craft\";src:url(\"../fonts/Craft.woff\") format(\"woff\"),url(\"../fonts/Craft.ttf\") format(\"truetype\"),url(\"../fonts/Craft.svg#Craft\") format(\"svg\");font-weight:normal;font-style:normal}:root{--ui-control-color: var(--gray-550);--ui-control-hover-color: var(--gray-600);--ui-control-active-color: var(--gray-700);--icon-opacity: 0.8;--light-focus-hsl: 196.1538461538deg, 93.9759036145%, 67.4509803922%;--medium-focus-hsl: 198.8659793814deg, 84.347826087%, 54.9019607843%;--dark-focus-hsl: 202.5925925926deg, 84.375%, 37.6470588235%;--focus-ring: 0 0 0 1px hsl(var(--dark-focus-hsl)), 0 0 0 3px hsla(var(--dark-focus-hsl), 0.8);--inner-focus-ring: inset 0 0 0 1px hsl(var(--dark-focus-hsl)), inset 0 0 0 3px hsla(var(--dark-focus-hsl), 0.7);--touch-target-size: 24px}body,html{box-shadow:var(--light-focus-ring);background-color:var(--gray-100)}html.noscroll,html.noscroll body{overflow:hidden}body{width:100vw;overflow-x:hidden;font-size:0.875rem;line-height:1.42;color:var(--text-color);-webkit-font-smoothing:subpixel-antialiased}body.rtl{direction:rtl}body,input,select,textarea{font-family:system-ui,BlinkMacSystemFont,-apple-system,\"Segoe UI\",\"Roboto\",\"Oxygen\",\"Ubuntu\",\"Cantarell\",\"Fira Sans\",\"Droid Sans\",\"Helvetica Neue\",sans-serif}.first,h1:first-child,h2:first-child,h3:first-child,h4:first-child,h5:first-child,h6:first-child,p:first-child,blockquote:first-child,hr:first-child,.pane:first-child,.grid:first-child,fieldset:first-child,.field:first-child,.toolbar:first-child,.buttons:first-child,.condition-container:first-child{margin-top:0 !important}.last,h1:last-child,h2:last-child,h3:last-child,h4:last-child,h5:last-child,h6:last-child,p:last-child,blockquote:last-child,.pane:last-child,.grid:last-child,.meta:last-child,fieldset:last-child,.field:last-child,.toolbar:last-child,.buttons:last-child,.condition-container:last-child{margin-bottom:0 !important}.no-scroll{overflow:hidden !important}.draghelper{box-sizing:border-box}img{max-width:100%}body.rtl .ltr .text,body.rtl .ltr table.editable textarea{text-align:left !important;direction:ltr !important}body.ltr .rtl .text,body.ltr .rtl table.editable textarea{text-align:right !important;direction:rtl !important}.icon:before,.menu ul.padded li a.sel:before,.menu .flex.padded.sel:before,.texticon:before,.element:before,#help:before,.secure:before,.insecure:before,.go:after,.required:after,.preview-btn:before,.view-btn:before,[data-icon]:before,[data-icon-after]:after{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity)}.badge-icon{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;box-sizing:border-box;border:1px solid var(--indicator-border-color);border-radius:var(--small-border-radius);color:var(--indicator-icon-color);font-size:9px}.secure:before,.insecure:before{margin-top:-3px;font-size:14px}[data-icon]:before{content:attr(data-icon)}[data-icon-after]:after{content:attr(data-icon-after)}body.rtl [data-icon=list]:before,body.rtl [data-icon-after=list]:after{content:\"listrtl\"}body.rtl [data-icon=structure]:before,body.rtl [data-icon-after=structure]:after{content:\"structurertl\"}.icon.secure:before{content:\"secure\"}.icon.insecure:before{content:\"insecure\"}.icon.add:before{content:\"plus\"}.icon.edit:before{content:\"edit\"}.icon.settings:before{content:\"settings\"}.icon.search:before{content:\"search\"}.icon.expand:before{content:\"expand\"}.icon.collapse:before{content:\"collapse\"}.help:before{content:\"help\";color:var(--pink-400)}body.ltr .preview-btn:before,body.ltr .view-btn:before{margin-right:var(--xs)}body.rtl .preview-btn:before,body.rtl .view-btn:before{margin-left:var(--xs)}.preview-btn:before{margin-top:-2px;content:\"view\"}body.ltr .view-btn:before{content:\"share\"}body.rtl .view-btn:before{content:\"shareleft\"}h1,.h1{margin-bottom:24px;font-size:18px;font-weight:bold;line-height:1.2}h2,.h2{margin:14px 0;font-size:16px;font-weight:bold;line-height:1.2}h3,.h3{margin:14px 0;font-weight:bold;line-height:1.2}h4,.h4{margin:14px 0;font-weight:bold;line-height:1.2;color:var(--medium-text-color)}h5,.h5{margin:14px 0 3px;line-height:1.2;color:var(--medium-text-color)}h6,.h6{margin:14px 0 3px;font-size:11px;line-height:1.2;color:#606d7b;text-transform:uppercase}body.ltr h1[data-icon]:before{margin:-8px 10px 0 0}body.rtl h1[data-icon]:before{margin:-8px 0 0 10px}h2[data-icon]:before{font-size:19px}body.ltr h2[data-icon]:before{margin:-4px 6px 0 0}body.rtl h2[data-icon]:before{margin:-4px 0 0 6px}hr{margin:24px 0;border:none;border-top:1px solid var(--hairline-color);height:0;color:rgba(0,0,0,0)}.pane hr{margin:24px -24px}p{margin:1em 0}h5+p{margin-top:0}sup{vertical-align:super;font-size:smaller}sub{vertical-align:sub;font-size:smaller}body.ltr .indent{margin-left:14px}body.rtl .indent{margin-right:14px}.bullets{list-style-type:square}body.ltr .bullets{padding-left:40px}body.rtl .bullets{padding-right:40px}ol{list-style-type:decimal}body.ltr ol{padding-left:40px}body.rtl ol{padding-right:40px}code,.code,.code input,.code textarea{font-family:\"SFMono-Regular\",Consolas,\"Liberation Mono\",Menlo,Courier,monospace;font-size:.9em !important}code.smalltext,.code.smalltext,.code input.smalltext,.code textarea.smalltext{font-size:.8em !important}pre code{display:block;overflow-x:auto}a{color:var(--link-color);cursor:pointer}body.underline-links a{text-decoration:underline}a:hover{text-decoration:underline}a.sel,li.sel a{cursor:default !important;text-decoration:none}.go:after{font-size:11px;margin-top:-1px;color:var(--link-color);opacity:.9}body.ltr .go:after{padding-left:4px}body.rtl .go:after{padding-right:4px}body.ltr .go:after{content:\"circlerarr\"}body.rtl .go:after{content:\"circlelarr\"}button{cursor:pointer}.context-btn.disabled{opacity:1;color:var(--medium-dark-text-color);background-color:rgba(205,216,228,.5) !important}.checkmark-icon,.alert-icon{padding:5px;margin-bottom:0 !important;line-height:10px;border-radius:20px;cursor:pointer}.checkmark-icon:before,.alert-icon:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity)}.checkmark-icon{background-color:var(--gray-200)}p .checkmark-icon{display:inline-block}.checkmark-icon:before{content:\"check\";color:var(--success-color)}.alert-icon{background-color:var(--gray-200)}.alert-icon:before{content:\"alert\";color:var(--error-color)}.menu.revision-menu{padding:10px 24px}.menu.revision-menu hr{margin:10px -24px}.menu.revision-menu ul li.sel{margin:0 -14px;padding:0 14px;background:var(--gray-050);border-radius:var(--large-border-radius)}.menu.revision-menu ul li.sel .edited-desc{display:flex;align-items:center;border-top:1px solid var(--hairline-color);padding:10px 0;color:var(--light-text-color);white-space:normal}body.ltr .menu.revision-menu ul li.sel .edited-desc{margin-left:10px}body.rtl .menu.revision-menu ul li.sel .edited-desc{margin-right:10px}.menu.revision-menu ul li.sel .edited-desc p{margin:0}body.ltr .menu.revision-menu ul li.sel .edited-desc .btn{margin-left:14px}body.rtl .menu.revision-menu ul li.sel .edited-desc .btn{margin-right:14px}.menu.revision-menu ul li a{padding-top:7px;border-radius:var(--large-border-radius)}.menu.revision-menu .extralight{margin-top:2px}.revision-status-hud{max-width:400px}.revision-status-hud .http-error{border-radius:var(--medium-border-radius);border:1px solid var(--hairline-color);color:var(--light-text-color);background-color:var(--gray-050);padding:7px 14px}.draft-notice{display:flex;align-items:center;align-content:stretch;justify-content:center;gap:var(--s);color:var(--blue-800)}#content-notice .draft-notice{display:inline-flex;justify-content:flex-start}body.ltr .so-notice>.draft-notice{margin:calc(var(--s)*-1) 0 calc(var(--s)*-1) calc(var(--xl)*-1)}body.rtl .so-notice>.draft-notice{margin:calc(var(--s)*-1) calc(var(--xl)*-1) calc(var(--s)*-1) 0}body.ltr .so-notice>.draft-notice{padding:var(--s) 0 var(--s) var(--xl)}body.rtl .so-notice>.draft-notice{padding:var(--s) var(--xl) var(--s) 0}body.ltr .so-notice>.draft-notice{border-bottom-left-radius:var(--large-border-radius)}body.rtl .so-notice>.draft-notice{border-bottom-right-radius:var(--large-border-radius)}body.ltr .so-notice>.draft-notice{background-image:linear-gradient(to bottom right, rgba(25, 146, 212, 0.2), rgba(25, 146, 212, 0) 50%)}body.rtl .so-notice>.draft-notice{background-image:linear-gradient(to left, rgba(25, 146, 212, 0.2), rgba(25, 146, 212, 0))}.draft-notice p{flex:1;margin:0}.draft-notice .draft-icon{position:relative;flex-shrink:0;width:34px;height:34px;display:flex;justify-content:center;align-items:center;border-radius:100%;border:2px solid rgba(11,105,163,.2);box-sizing:border-box;box-shadow:0 1px 1px 1px var(--white)}.draft-notice .draft-icon:before{position:relative;left:1px;color:var(--blue-800) !important;font-size:18px}.draft-notice .draft-icon:after{content:\"\";font-size:0;position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;border-radius:100%;box-shadow:inset 0 2px 0 rgba(3,83,136,.2)}.draft-notice .discard-changes-btn{background-color:rgba(0,0,0,0) !important;color:var(--blue-800) !important;border:2px solid var(--blue-600)}body.ltr .draft-notice .discard-changes-btn{margin-left:var(--xs)}body.rtl .draft-notice .discard-changes-btn{margin-right:var(--xs)}.draft-notice .discard-changes-btn:hover,.draft-notice .discard-changes-btn:focus{border-color:#1682bd}.draft-notice .discard-changes-btn:active{border-color:#1473a6}button.toggle{appearance:none;color:inherit;background:none;border:none;padding:0}.toggle:before,a.fieldtoggle:before{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid currentColor;border-width:0 2px 2px 0;opacity:.8;transition:transform linear 100ms}body.ltr .toggle:before,body.ltr a.fieldtoggle:before{transform:rotate(-45deg)}body.rtl .toggle:before,body.rtl a.fieldtoggle:before{transform:rotate(135deg)}.toggle.expanded:before,a.fieldtoggle.expanded:before,.sidebar nav li.expanded>.toggle:before,.structure li:not(.collapsed)>.row>.toggle:before{transform:rotate(45deg) !important}a.fieldtoggle{display:block;position:relative;margin:14px 0;color:var(--text-color);text-decoration:none}body.ltr a.fieldtoggle{padding-left:12px}body.rtl a.fieldtoggle{padding-right:12px}a.fieldtoggle:before{display:block;position:absolute;top:7px}body.ltr a.fieldtoggle:before{left:-1px}body.rtl a.fieldtoggle:before{right:-1px}em,i{font-style:italic}strong,b,i em{font-weight:bold}.readable{font-size:16px;line-height:22px}.readable h1,.readable .h1,.readable h2,.readable .h2,.readable h3,.readable .h3,.readable h4,.readable .h4,.readable h5,.readable .h5,.readable h6,.readable .h6{margin:24px 0 16px;font-weight:600}.readable h1,.readable .h1{font-size:32px;line-height:40px;color:#000}.readable h2,.readable .h2{font-size:24px;line-height:30px}.readable h3,.readable .h3{font-size:20px;line-height:24px}.readable h4,.readable .h4{font-size:16px;line-height:20px}.readable h5,.readable .h5{font-size:14px;line-height:18px}.readable h6,.readable .h6{font-size:13.6px;line-height:17px;color:#596673}.readable ul,.readable ol{margin:1em 0}body.ltr .readable ul,body.ltr .readable ol{padding-left:2em}body.rtl .readable ul,body.rtl .readable ol{padding-right:2em}.readable ul li{list-style-type:disc}.readable li+li{margin-top:.25em}.readable .tip-dismiss-btn{position:absolute;top:12px}body.ltr .readable .tip-dismiss-btn{right:12px}body.rtl .readable .tip-dismiss-btn{left:12px}.readable .tip-dismiss-btn+p{margin-top:0}.readable blockquote{margin:16px 0}.readable blockquote:not(.note){padding:0 16px;color:#596673}body.ltr .readable blockquote:not(.note){border-left:4px solid rgba(51,64,77,.1)}body.rtl .readable blockquote:not(.note){border-right:4px solid rgba(51,64,77,.1)}.readable blockquote.note{position:relative;border-radius:4px;padding:1em;border:1px solid}body.ltr .readable blockquote.note{padding-left:50px}body.rtl .readable blockquote.note{padding-right:50px}body.ltr .readable blockquote.note.dismissible{padding-right:36px}body.rtl .readable blockquote.note.dismissible{padding-left:36px}.readable blockquote.note:not(.tip):not(.warning){border-color:#cf1124;color:#bf503f}.readable blockquote.note:not(.tip):not(.warning):before{content:\"alert\";color:#cf1124}.readable blockquote.note.tip{border-color:#2563eb;color:#2563eb}.readable blockquote.note.tip:before{content:\"lightbulb\";color:#2563eb}.readable blockquote.note.warning{border-color:#b44d12;color:#cf783a}.readable blockquote.note.warning:before{content:\"alert\";color:#b44d12}.readable blockquote.note:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);opacity:1;position:absolute;top:15px;font-size:24px;width:24px}body.ltr .readable blockquote.note:before{left:16px}body.rtl .readable blockquote.note:before{right:16px}.readable blockquote.note a[href]{color:currentColor;text-decoration:underline}body.ltr .leftalign{text-align:left}body.rtl .leftalign{text-align:right}.topalign{vertical-align:top}body.ltr .rightalign{text-align:right}body.rtl .rightalign{text-align:left}.centeralign{text-align:center !important}.nowrap{white-space:nowrap}.break-word{word-wrap:break-word}.light{color:var(--medium-text-color) !important;font-weight:normal}.extralight{color:var(--light-text-color) !important}.smalltext{font-size:12px;line-height:1.2}.largetext{font-size:16px;line-height:1.2}.zilch{padding:100px 0;text-align:center;font-size:20px;line-height:24px;color:var(--light-text-color)}.zilch.small{padding:24px 0;font-size:16px}input.checkbox+label.smalltext{padding-top:2px}.required:after{content:\"asterisk\";font-size:7px;color:var(--error-color)}body.ltr .required:after{margin:-2px 0 0 5px}body.rtl .required:after{margin:-2px 5px 0 0}.scrollpane{overflow:auto}body.ltr .left{float:left}body.rtl .left{float:right}body.ltr .right{float:right}body.rtl .right{float:left}th,td{vertical-align:middle}body.ltr th,body.ltr td{text-align:left}body.rtl th,body.rtl td{text-align:right}body.ltr table[dir=rtl] th,body.ltr table[dir=rtl] td{text-align:right}body.rtl table[dir=ltr] th,body.rtl table[dir=ltr] td{text-align:left}th.right,td.right{float:none}body.ltr th.right,body.ltr td.right{text-align:right}body.rtl th.right,body.rtl td.right{text-align:left}.clear{display:block;clear:both;height:0}.fullwidth{width:100%}.token{display:inline-block;border-radius:3px;padding:3px 7px;font-size:12px;line-height:14px;color:#3f4d5a;background-color:#e4edf6}.token[data-name=\"*\"]{position:relative;width:10px}.token[data-name=\"*\"] span{opacity:0}.token[data-name=\"*\"]:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);display:block;position:absolute;top:0;left:0;width:100%;font-size:9px;line-height:17px;content:\"asterisk\";text-indent:0}.token:focus{background-color:#cdd8e4}.highlight .token{display:inline;border:none;border-radius:0;padding:0;font-size:inherit;line-height:inherit;text-shadow:none;background:rgba(0,0,0,0);box-shadow:none}.pane.highlight pre[class*=language-]{overflow:visible}.pane.highlight pre[class*=language-]>code.diff-highlight .token:not(.prefix){margin:0 -24px;padding:0 24px}.success{color:var(--success-color) !important}.notice.with-icon:before,.notice .icon:before,.warning.with-icon:before,.warning .icon:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);width:1em}body.ltr .notice.with-icon:before,body.ltr .notice .icon:before,body.ltr .warning.with-icon:before,body.ltr .warning .icon:before{margin:-2px 2px 0 0}body.rtl .notice.with-icon:before,body.rtl .notice .icon:before,body.rtl .warning.with-icon:before,body.rtl .warning .icon:before{margin:-2px 0 0 2px}.notice.has-icon,.warning.has-icon{display:flex;flex-wrap:nowrap;align-items:flex-start}.notice.has-icon .icon,.warning.has-icon .icon{flex-shrink:1}.notice{color:var(--notice-color) !important}.notice a{text-decoration:underline}.notice.with-icon:before,.notice .icon:before{content:\"lightbulb\"}.warning{color:var(--warning-color) !important}.warning.with-icon:before,.warning .icon:before{content:\"alert\"}.error{color:var(--error-color) !important}.icon.move{display:inline-block}.icon.move:not(.disabled){cursor:move}.icon.move:before{content:\"move\";color:var(--ui-control-color)}.icon.move:not(.disabled):hover:before{color:var(--link-color)}.icon.delete{display:inline-block;line-height:inherit}.icon.delete:before{content:\"remove\";color:var(--ui-control-color)}.icon.delete:not(.disabled){cursor:pointer}.icon.delete:not(.disabled):hover:before{color:var(--disabled-color)}.icon.delete:not(.disabled):active:before{color:var(--red-800)}.hidden{display:none !important}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:0;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}.invisible{visibility:hidden}.clearafter:after{content:\"\";display:block;height:0;clear:both;visibility:hidden}.info{vertical-align:bottom;display:inline-block;width:1em;height:1.375em;text-align:center;cursor:pointer;overflow:hidden}.info:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);vertical-align:baseline;width:100%;line-height:1.375;color:var(--ui-control-color)}.info:not(.warning):before{content:\"info\"}.info:not(.warning):hover:before{color:var(--link-color)}.info.warning:before{content:\"alert\"}.info.warning:hover:before{color:var(--warning-color)}.info-hud table{max-width:280px;table-layout:auto}.info-hud td{word-wrap:break-word;width:100%}@media(max-width: 450px){.info-hud table{table-layout:fixed;width:100%}}.content{position:relative}.content:after{content:\"\";display:block;height:0;clear:both;visibility:hidden}.customize-sources-modal{overflow:visible !important}body.ltr .customize-sources-modal{padding-left:200px}body.rtl .customize-sources-modal{padding-right:200px}.customize-sources-modal>.cs-sidebar{position:absolute;top:0;margin:0;padding:10px 0;border:none;width:200px;height:calc(100% - 50px);box-sizing:border-box;background-color:var(--gray-050);overflow:auto;box-shadow:inset -1px 0 0 var(--hairline-color)}body.ltr .customize-sources-modal>.cs-sidebar{left:0}body.rtl .customize-sources-modal>.cs-sidebar{right:0}body.ltr .customize-sources-modal>.cs-sidebar{border-top-left-radius:var(--large-border-radius)}body.rtl .customize-sources-modal>.cs-sidebar{border-top-right-radius:var(--large-border-radius)}.customize-sources-modal>.cs-sidebar>.btn{display:block;width:calc(100% - 28px)}body.ltr .customize-sources-modal>.cs-sidebar>.btn{margin:10px 0 0 14px}body.rtl .customize-sources-modal>.cs-sidebar>.btn{margin:10px 14px 0 0}body.ltr .customize-sources-modal.sidebar-hidden{padding-left:0}body.rtl .customize-sources-modal.sidebar-hidden{padding-right:0}.customize-sources-modal.sidebar-hidden>.cs-sidebar{display:none}.customize-sources-modal>.source-settings{position:relative;height:calc(100% - 50px);box-sizing:border-box;padding:24px;overflow:auto}.customize-sources-modal>.footer{position:absolute;bottom:0;left:0;width:100%}.customize-sources-item{--selected-item-color: var(--white);display:flex;width:calc(100% - 1px);box-sizing:border-box;align-items:center;position:relative;margin-top:-1px;background-color:var(--gray-100);border:solid var(--hairline-color);border-width:1px 0;user-select:none;cursor:default}.customize-sources-item+.customize-sources-item.heading{margin-top:10px}.customize-sources-item+.customize-sources-item:not(.heading){border-top:1px solid var(--hairline-color)}.customize-sources-item.sel{--focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)), 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);--ui-control-color: var(--selected-item-color);background-color:var(--dark-sel-color);color:var(--selected-item-color);z-index:1}.customize-sources-item .label{flex:1}.customize-sources-item.heading .label{text-transform:uppercase;color:var(--light-text-color);font-size:12px;font-weight:bold}.customize-sources-item.heading.sel .label{color:var(--selected-item-color)}.customize-sources-item__move{position:absolute;top:50%;transform:translate(-50%, -50%);justify-content:center;align-items:center}body.ltr .customize-sources-item__move{right:0}body.rtl .customize-sources-item__move{left:0}.customize-sources-item__move.icon{display:flex;text-decoration:none}.customize-sources-item__btn{padding:8px 14px;margin:3px}body.ltr .customize-sources-item__btn{padding-right:30px}body.rtl .customize-sources-item__btn{padding-left:30px}body.ltr .customize-sources-table-column .move{margin-right:10px}body.rtl .customize-sources-table-column .move{margin-left:10px}ul.path{display:flex;flex-direction:row;align-items:stretch;flex-wrap:wrap}ul.path li{display:inline-flex;align-items:center}ul.path li:not(:last-child):after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid var(--light-text-color);border-width:0 1px 1px 0;opacity:.8}body.ltr ul.path li:not(:last-child):after{margin:0 5px 0 2px}body.rtl ul.path li:not(:last-child):after{margin:0 2px 0 5px}body.ltr ul.path li:not(:last-child):after{transform:rotate(-45deg)}body.rtl ul.path li:not(:last-child):after{transform:rotate(135deg)}ul.icons{margin-top:20px;display:flex;flex-wrap:wrap}ul.icons li{margin:0 4px 10px 0}ul.icons li a{display:block;position:relative;padding:60px 5px 10px;width:110px;text-align:center;color:var(--text-color);border-radius:4px;border:1px solid var(--white)}ul.icons li a:before{display:block;position:absolute;top:0;left:0;width:100%;font-size:40px;line-height:60px}ul.icons li a .icon img,ul.icons li a .icon svg{width:40px;height:40px;position:absolute;top:12px;left:calc(50% - 20px)}ul.icons li a .icon.icon-mask svg rect,ul.icons li a .icon.icon-mask svg circle,ul.icons li a .icon.icon-mask svg ellipse,ul.icons li a .icon.icon-mask svg line,ul.icons li a .icon.icon-mask svg polyline,ul.icons li a .icon.icon-mask svg polygon,ul.icons li a .icon.icon-mask svg path,ul.icons li a .icon.icon-mask svg text{fill:var(--text-color);stroke-width:0}ul.icons li a:hover{text-decoration:none;background-color:var(--gray-050);border-color:var(--gray-100)}ul.icons li a:hover .icon.icon-mask svg rect,ul.icons li a:hover .icon.icon-mask svg circle,ul.icons li a:hover .icon.icon-mask svg ellipse,ul.icons li a:hover .icon.icon-mask svg line,ul.icons li a:hover .icon.icon-mask svg polyline,ul.icons li a:hover .icon.icon-mask svg polygon,ul.icons li a:hover .icon.icon-mask svg path,ul.icons li a:hover .icon.icon-mask svg text{fill:var(--link-color);stroke-width:0}@media only screen and (max-width: 380px){ul.icons li a{width:96px}}@media only screen and (max-width: 320px){ul.icons li a{width:75px}}.toolbar{position:relative;margin-bottom:14px;min-height:34px}.toolbar.flex,.toolbar .flex{align-items:flex-start}.toolbar .text{border-radius:var(--large-border-radius) !important;box-shadow:none !important}.flex{display:flex;align-items:center;align-content:stretch;gap:var(--s)}.flex:not(.flex-nowrap){flex-wrap:wrap}.flex>*.label{white-space:nowrap}.centeralign .flex{justify-content:center}.inline-flex{display:inline-flex;align-items:center;align-content:stretch;gap:var(--s)}.gap-xs{gap:var(--xs)}.gap-s{gap:var(--s)}.gap-m{gap:var(--m)}.gap-l{gap:var(--l)}.gap-xl{gap:var(--xl)}.flex-grow{flex:1}.flex-justify{justify-content:space-between}.flex-justify-start{justify-content:flex-start}.flex-justify-end{justify-content:flex-end}.flex-justify-center{justify-content:center}.flex-start{align-items:flex-start}.flex-end{align-items:flex-end}.flex-center{align-items:center}.flex-stretch{align-items:stretch}.spacer{width:14px}.buttons{display:flex;gap:7px;position:relative;margin:24px 0;align-items:center}.hud-footer>.buttons,.footer>.buttons{margin:0}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--large-border-radius);padding:7px 14px;border:none;text-align:center;white-space:nowrap;user-select:none;cursor:pointer;box-sizing:border-box;appearance:none;color:currentColor;font-size:inherit;background-color:rgba(96,125,159,.25)}.btn.chromeless{background-color:rgba(0,0,0,0);height:auto;padding:0}.btn.chromeless:hover,.btn.chromeless:active,.btn.chromeless:focus{background-color:rgba(0,0,0,0)}.btn.chromeless:hover,.btn.chromeless:active{text-decoration:underline}.btn.wrap{height:auto;min-height:34px;white-space:initial;text-align:left}.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]):focus,.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]).focus,.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]):hover{background-color:rgba(96,125,159,.3)}.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]):active,.btn:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]).active{background-color:rgba(96,125,159,.4)}.btn[type=color]{padding:6px !important;width:36px}.btn.active,.btn.loading{cursor:default}.btn:hover{text-decoration:none}body.ltr .btn[data-icon]:not(:empty):not(.btn-empty):before,body.ltr .btn.icon:not(:empty):not(.btn-empty):before,body.ltr .btn.menubtn[data-icon]:empty:before,body.ltr .btn.menubtn[data-icon].btn-empty:before,body.ltr .btn.menubtn.icon:empty:before,body.ltr .btn.menubtn.icon.btn-empty:before{margin-right:5px}body.rtl .btn[data-icon]:not(:empty):not(.btn-empty):before,body.rtl .btn.icon:not(:empty):not(.btn-empty):before,body.rtl .btn.menubtn[data-icon]:empty:before,body.rtl .btn.menubtn[data-icon].btn-empty:before,body.rtl .btn.menubtn.icon:empty:before,body.rtl .btn.menubtn.icon.btn-empty:before{margin-left:5px}.btn:not(.loading) .spinner{display:none}.btn.loading:before,.btn.loading:after,.btn.loading .label{visibility:hidden}.btn div.checkbox{margin-top:2px}.disabled{opacity:.25}.disabled,.disabled .btn{cursor:default}.btn,.spinner{height:34px}body.ltr .btn[data-icon-after]:not(:empty):not(.btn-empty):after,body.ltr .menu-toggle:not(:empty):not(.btn-empty):after,body.ltr .menubtn:not(:empty):not(.btn-empty):after,body.ltr .menubtn.icon:after{margin-left:6px}body.rtl .btn[data-icon-after]:not(:empty):not(.btn-empty):after,body.rtl .menu-toggle:not(:empty):not(.btn-empty):after,body.rtl .menubtn:not(:empty):not(.btn-empty):after,body.rtl .menubtn.icon:after{margin-right:6px}.btn[data-icon]:before,.btn[data-icon-after]:after,.btn.icon:before{position:relative}.btn.small[data-icon]:before,.btn.small[data-icon-after]:after,.btn.icon.small:before{font-size:10px}.btngroup{position:relative;z-index:1;display:flex;white-space:nowrap;align-items:center;border-radius:var(--large-border-radius)}.btngroup.fullwidth .btn{flex:1}.btngroup.disabled .btn{cursor:default}.btngroup .btn:focus{z-index:1}body.ltr .btngroup .btn:not(.dashed):not(:last-child):not(.btngroup-btn-last){margin-right:1px}body.rtl .btngroup .btn:not(.dashed):not(:last-child):not(.btngroup-btn-last){margin-left:1px}body.ltr .btngroup .btn:not(:first-child):not(.btngroup-btn-first){border-top-left-radius:0;border-bottom-left-radius:0}body.ltr .btngroup .btn:not(:last-child):not(.btngroup-btn-last){border-top-right-radius:0;border-bottom-right-radius:0}body.rtl .btngroup .btn:not(:first-child):not(.btngroup-btn-first){border-top-right-radius:0;border-bottom-right-radius:0}body.rtl .btngroup .btn:not(:last-child):not(.btngroup-btn-last){border-top-left-radius:0;border-bottom-left-radius:0}.btngroup--exclusive .btn[aria-pressed=true]:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]){background-color:var(--gray-500);color:var(--white)}.copytext{position:relative;z-index:1;display:flex;white-space:nowrap;align-items:center}body.ltr .copytext .text{border-top-right-radius:0;border-bottom-right-radius:0;min-width:0}body.ltr .copytext .btn{border-top-left-radius:0;border-bottom-left-radius:0}body.rtl .copytext .text{border-top-left-radius:0;border-bottom-left-radius:0}body.rtl .copytext .btn{border-top-right-radius:0;border-bottom-right-radius:0}.copytextbtn{display:inline-flex;flex-wrap:nowrap;align-items:center;border:1px solid var(--hairline-color);border-radius:var(--small-border-radius);padding:0 9px;cursor:pointer;color:var(--medium-text-color)}.copytextbtn input{border:0;padding:0;height:32px;box-shadow:none;background-color:rgba(0,0,0,0);border:none;cursor:pointer;color:var(--medium-text-color);text-align:center}.copytextbtn span{padding:0;width:13px;background:none;margin-top:-3px;color:var(--light-text-color)}body.ltr .copytextbtn span{margin-left:5px}body.rtl .copytextbtn span{margin-right:5px}.copytextbtn:hover,.copytextbtn:focus{border-color:var(--medium-hairline-color);color:var(--text-color)}.copytextbtn:hover input,.copytextbtn:focus input{color:var(--text-color)}.copytextbtn.small{padding:0 5px}.copytextbtn.small input{font-size:11px !important;height:20px}.menu-toggle,.menubtn{display:inline-flex;align-items:center;user-select:none}.menu-toggle:after,.menubtn:after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid currentColor;border-width:0 2px 2px 0;opacity:.8;transform:rotate(45deg);position:relative}.menu-toggle.btn:after,.menubtn.btn:after{top:-1px}.menu-toggle.btn:not(.disabled):not(.inactive):active:after,.menu-toggle.btn:not(.disabled):not(.inactive).active:after,.menubtn.btn:not(.disabled):not(.inactive):active:after,.menubtn.btn:not(.disabled):not(.inactive).active:after{border-color:var(--ui-control-active-color)}.menu-toggle.btn.submit:after,.menubtn.btn.submit:after{border-color:var(--white) !important;opacity:.8}.menu-toggle.btn.submit:not(.disabled):not(.inactive):hover:after,.menu-toggle.btn.submit:not(.disabled):not(.inactive).hover:after,.menu-toggle.btn.submit:not(.disabled):not(.inactive):active:after,.menu-toggle.btn.submit:not(.disabled):not(.inactive).active:after,.menubtn.btn.submit:not(.disabled):not(.inactive):hover:after,.menubtn.btn.submit:not(.disabled):not(.inactive).hover:after,.menubtn.btn.submit:not(.disabled):not(.inactive):active:after,.menubtn.btn.submit:not(.disabled):not(.inactive).active:after{opacity:1}.menu-toggle:not(.btn):not(.icon),.menubtn:not(.btn):not(.icon){height:17px}.menu-toggle:not(.btn):not(.icon):after,.menubtn:not(.btn):not(.icon):after{top:-2px;border-color:var(--link-color)}body.ltr .menu-toggle:empty,body.ltr .menu-toggle.btn-empty,body.ltr .menubtn:empty,body.ltr .menubtn.btn-empty{padding-left:8px}body.rtl .menu-toggle:empty,body.rtl .menu-toggle.btn-empty,body.rtl .menubtn:empty,body.rtl .menubtn.btn-empty{padding-right:8px}body.ltr .menu-toggle:empty,body.ltr .menu-toggle.btn-empty,body.ltr .menubtn:empty,body.ltr .menubtn.btn-empty{padding-right:8px}body.rtl .menu-toggle:empty,body.rtl .menu-toggle.btn-empty,body.rtl .menubtn:empty,body.rtl .menubtn.btn-empty{padding-left:8px}@keyframes rotator{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.spinner{display:inline-flex;align-items:center;justify-content:center;width:var(--size, 24px);height:var(--size, 34px)}.spinner:before{display:block;content:\"\";font-size:0;animation:rotator .7s linear infinite;box-sizing:border-box;width:var(--size, 20px);height:var(--size, 20px);object-fit:scale-down;border-radius:50%;border:2px solid rgba(0,0,0,0);border-right-color:currentColor;border-bottom-color:currentColor;opacity:.8}.spinner.small{--size: 12px}.spinner.big{--size: 48px}.spinner.spinner-absolute{position:absolute;width:var(--size, 20px);height:var(--size, 20px);top:calc(50% - var(--size, 20px)/2);left:calc(50% - var(--size, 20px)/2)}body.ltr .btn+.spinner{margin-left:7px}body.rtl .btn+.spinner{margin-right:7px}body.ltr .buttons .btn+.spinner,body.ltr .buttons .btngroup+.spinner{margin-left:0}body.rtl .buttons .btn+.spinner,body.rtl .buttons .btngroup+.spinner{margin-right:0}body.ltr .buttons.right .btn+.spinner{margin-right:var(--neg-padding)}body.rtl .buttons.right .btn+.spinner{margin-left:var(--neg-padding)}.btngroup.small .btn,.btn.small{padding:0 7px !important;font-size:12px;line-height:22px}.btngroup.small,.btngroup.small input.btn,.btn.small,.btn.small+.spinner{height:22px}.btngroup.big .btn,.btn.big{padding:0 14px;font-size:14px;line-height:36px}body.ltr .btn.big[data-icon]:before,body.ltr .preview-btn:before,body.ltr .view-btn:before{margin-left:-2px}body.rtl .btn.big[data-icon]:before,body.rtl .preview-btn:before,body.rtl .view-btn:before{margin-right:-2px}.btngroup.big,.btngroup.big input.btn,.btn.big,.btn.big+.spinner{height:36px}.btn.submit,.btn.secondary{color:var(--white) !important;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-weight:500}.btn.submit{background-color:var(--primary-color) !important}.btn.submit:not(.disabled):not(.inactive):not(.loading):hover,.btn.submit:not(.disabled):not(.inactive):not(.loading).hover,.btn.submit:not(.disabled):not(.inactive):not(.loading):focus{background-color:#d61f2b !important}.btn.submit:not(.disabled):not(.inactive):not(.loading):active,.btn.submit:not(.disabled):not(.inactive):not(.loading).active{background-color:#c01b26 !important}.btn.caution{background-color:var(--red-050) !important;color:var(--error-color)}.btn.caution:hover,.btn.caution.hover,.btn.caution:focus{background-color:#ffcaca !important}.btn.caution:active,.btn.caution.active{background-color:var(--red-100) !important}.secondary-buttons .btn.submit,.btn.secondary{background-color:var(--secondary-color) !important}.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading):hover,.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading).hover,.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading):focus,.btn.secondary:not(.disabled):not(.inactive):not(.loading):hover,.btn.secondary:not(.disabled):not(.inactive):not(.loading).hover,.btn.secondary:not(.disabled):not(.inactive):not(.loading):focus{background-color:#55616d !important}.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading):active,.secondary-buttons .btn.submit:not(.disabled):not(.inactive):not(.loading).active,.btn.secondary:not(.disabled):not(.inactive):not(.loading):active,.btn.secondary:not(.disabled):not(.inactive):not(.loading).active{background-color:#4a545e !important}div.btn.submit{position:relative;overflow:hidden}div.btn.submit input{position:absolute;left:100%}.btn.dashed{border:1px dashed var(--input-border-color);background-color:rgba(0,0,0,0)}body.ltr .btngroup .btn.dashed:not(:last-child):not(.btngroup-btn-last){border-right:1px solid rgba(0,0,0,0)}body.rtl .btngroup .btn.dashed:not(:last-child):not(.btngroup-btn-last){border-left:1px solid rgba(0,0,0,0)}body.ltr .btngroup .btn.dashed:not(:last-child):not(.btngroup-btn-last){margin-right:-1px}body.rtl .btngroup .btn.dashed:not(:last-child):not(.btngroup-btn-last){margin-left:-1px}.btn.dashed:focus{background-color:rgba(205,216,228,.1);border-color:rgba(0,0,0,0)}.reduce-focus-visibility .btn.dashed:focus:not(:focus-visible){border:1px dashed var(--medium-hairline-color)}.btn.dashed:not(.disabled):active,.btn.dashed:not(.disabled).active{background-color:rgba(205,216,228,.25)}.color-input-container{position:relative}.color-input-container .color-hex-indicator{position:absolute;top:0;width:1em;line-height:34px;text-align:center;user-select:none}body.ltr .color-input-container .color-hex-indicator{left:7px}body.rtl .color-input-container .color-hex-indicator{right:7px}.color-input{font-family:\"SFMono-Regular\",Consolas,\"Liberation Mono\",Menlo,Courier,monospace;font-size:.9em !important}body.ltr .color-input{padding-left:calc(7px + 1em)}body.rtl .color-input{padding-right:calc(7px + 1em)}.color{display:inline-block;position:relative;vertical-align:middle;width:34px;height:34px;border-radius:17px;padding:0}.color:not(.static){cursor:pointer}.color:not(.small){background-image:linear-gradient(45deg, var(--gray-100) 25%, transparent 25%),linear-gradient(135deg, var(--gray-100) 25%, transparent 25%),linear-gradient(45deg, transparent 75%, var(--gray-100) 75%),linear-gradient(135deg, transparent 75%, var(--gray-100) 75%);background-size:17px 17px;background-position:0 0,8.5px 0,8.5px -8.5px,0 8.5px}.color.small{width:16px;height:16px;background-image:linear-gradient(45deg, var(--gray-100) 25%, transparent 25%),linear-gradient(135deg, var(--gray-100) 25%, transparent 25%),linear-gradient(45deg, transparent 75%, var(--gray-100) 75%),linear-gradient(135deg, transparent 75%, var(--gray-100) 75%);background-size:8px 8px;background-position:0 0,4px 0,4px -4px,0 4px}.color .color-preview{position:absolute;top:0;width:100%;height:100%;border-radius:17px;box-shadow:inset 0 0 0 1px var(--input-border-color)}body.ltr .color .color-preview{left:0}body.rtl .color .color-preview{right:0}.color .color-preview:focus-within{box-shadow:var(--focus-ring)}.color .color-preview>.color-preview-input{position:absolute;width:100%;height:100%;margin:0;padding:0;border:none;opacity:0}body.ltr .color .color-preview>.color-preview-input{left:0}body.rtl .color .color-preview>.color-preview-input{right:0}.colorhex{display:inline-block;margin-left:5px;vertical-align:middle;color:var(--medium-text-color)}.lightswitch-outer-container{display:flex}.lightswitch-outer-container .lightswitch-inner-container{border:1px solid var(--hairline-color);border-radius:var(--small-border-radius);display:flex;align-items:center}.lightswitch-outer-container .lightswitch-inner-container span{padding:7px 0;color:var(--medium-text-color);cursor:default}body.ltr .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=on]{padding-right:10px}body.rtl .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=on]{padding-left:10px}body.ltr .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=on]{margin-left:7px}body.rtl .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=on]{margin-right:7px}body.ltr .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=off]{padding-left:10px}body.rtl .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=off]{padding-right:10px}body.ltr .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=off]{margin-right:7px}body.rtl .lightswitch-outer-container .lightswitch-inner-container span[data-toggle=off]{margin-left:7px}.lightswitch{display:block;position:relative;border:none !important;overflow:hidden;cursor:pointer;user-select:none;background-image:linear-gradient(to right, var(--gray-400), var(--gray-400));transition:background-image linear 100ms}.lightswitch.on{background-image:linear-gradient(to right, var(--enabled-color), var(--enabled-color))}.lightswitch.indeterminate{background-image:linear-gradient(to right, var(--enabled-color), var(--gray-300))}.lightswitch .lightswitch-container{position:relative;height:100%}.lightswitch .lightswitch-container .handle{position:absolute;top:1px;background-color:var(--white)}.lightswitch:not(.small){border-radius:11px;width:34px;height:22px}.lightswitch:not(.small) .lightswitch-container{width:46px}body.ltr .lightswitch:not(.small) .lightswitch-container{margin-left:-12px}body.rtl .lightswitch:not(.small) .lightswitch-container{margin-right:-12px}.lightswitch:not(.small) .lightswitch-container .handle{border-radius:10px;width:20px;height:20px;left:calc(50% - 10px)}.lightswitch.small{border-radius:9px;width:28px;height:18px}.lightswitch.small .lightswitch-container{width:38px}body.ltr .lightswitch.small .lightswitch-container{margin-left:-10px}body.rtl .lightswitch.small .lightswitch-container{margin-right:-10px}.lightswitch.small .lightswitch-container .handle{border-radius:8px;width:16px;height:16px;left:calc(50% - 8px)}table .lightswitch{display:inline-block;margin-bottom:-5px}body.ltr .lightswitch.on .lightswitch-container{margin-left:0}body.rtl .lightswitch.on .lightswitch-container{margin-right:0}body.ltr .lightswitch.indeterminate:not(.small) .lightswitch-container{margin-left:-6px}body.rtl .lightswitch.indeterminate:not(.small) .lightswitch-container{margin-right:-6px}body.ltr .lightswitch.indeterminate.small .lightswitch-container{margin-left:-5px}body.rtl .lightswitch.indeterminate.small .lightswitch-container{margin-right:-5px}table.data+.pagination{margin-top:24px}.pagination .page-link{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--medium-border-radius)}.pagination .page-link:after{position:relative;transition:border-color linear 100ms}.pagination .page-link.prev-page:after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid var(--light-text-color);border-width:0 2px 2px 0;opacity:.8}body.ltr .pagination .page-link.prev-page:after{transform:rotate(135deg)}body.rtl .pagination .page-link.prev-page:after{transform:rotate(-45deg)}body.ltr .pagination .page-link.prev-page:after{right:-1px}body.rtl .pagination .page-link.prev-page:after{left:-1px}.pagination .page-link.next-page:after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid var(--light-text-color);border-width:0 2px 2px 0;opacity:.8}body.ltr .pagination .page-link.next-page:after{transform:rotate(-45deg)}body.rtl .pagination .page-link.next-page:after{transform:rotate(135deg)}body.ltr .pagination .page-link.next-page:after{left:-1px}body.rtl .pagination .page-link.next-page:after{right:-1px}.pagination .page-link:not(.disabled){transition:box-shadow linear 100ms;box-shadow:inset 0 0 0 1px var(--hairline-color);cursor:pointer}.pagination .page-link:not(.disabled):hover{text-decoration:none;box-shadow:inset 0 0 0 1px var(--link-color)}.pagination .page-link:not(.disabled):hover:after{border-color:var(--link-color)}body:not(.reduce-focus-visibility) .pagination .page-link:not(.disabled):focus,body.reduce-focus-visibility .pagination .page-link:not(.disabled):focus-visible{box-shadow:inset 0 0 0 1px var(--hairline-color),var(--focus-ring)}.pagination .page-link.disabled{opacity:1}.pagination .page-link.disabled:after{border-color:var(--hairline-color)}body.ltr .actions{float:right}body.rtl .actions{float:left}body.ltr .actions>li{float:left}body.rtl .actions>li{float:right}body.ltr .actions>li+li{margin-left:10px}body.rtl .actions>li+li{margin-right:10px}h1+.actions{margin-top:-100px}h2+.actions{margin-top:-54px}.tablepane{margin:-24px -24px -12px;overflow-x:auto}body.ltr .tablepane table.data th:first-child,body.ltr .tablepane table.data td:first-child{padding-left:24px}body.rtl .tablepane table.data th:first-child,body.rtl .tablepane table.data td:first-child{padding-right:24px}body.ltr .tablepane table.data th:last-child,body.ltr .tablepane table.data td:last-child{padding-right:24px}body.rtl .tablepane table.data th:last-child,body.rtl .tablepane table.data td:last-child{padding-left:24px}table.fixed-layout{table-layout:fixed}table th.thin,table td.thin{width:.01% !important;white-space:nowrap}table thead th{font-weight:bold;vertical-align:top}body.ltr table thead th{text-align:left}body.rtl table thead th{text-align:right}table:not(.data) th,table:not(.data) td{padding-top:7px;padding-bottom:7px}table:not(.data) th:not(:first-child),table:not(.data) td:not(:first-child){padding-left:12px}table:not(.data) th:not(:last-child),table:not(.data) td:not(:last-child){padding-right:12px}table.data th,table.data td{position:relative;padding-left:12px;padding-right:12px;box-sizing:border-box}table.data th.checkbox-cell,table.data td.checkbox-cell{width:var(--checkbox-size) !important;min-width:var(--checkbox-size);box-sizing:content-box;position:relative}table.data th.checkbox-cell input.checkbox+label,table.data th.checkbox-cell div.checkbox,table.data td.checkbox-cell input.checkbox+label,table.data td.checkbox-cell div.checkbox{position:absolute;top:calc(50% - 8px)}table.data th{font-weight:bold}body.ltr table.data thead:first-child tr:first-child th:first-child,body.ltr table.data thead:first-child tr:first-child td:first-child,body.ltr table.data tbody:first-child tr:first-child th:first-child,body.ltr table.data tbody:first-child tr:first-child td:first-child,body.ltr table.data tfoot:first-child tr:first-child th:first-child,body.ltr table.data tfoot:first-child tr:first-child td:first-child,body.ltr table.data caption+thead tr:first-child th:first-child,body.ltr table.data caption+thead tr:first-child td:first-child,body.ltr table.data caption+tbody tr:first-child th:first-child,body.ltr table.data caption+tbody tr:first-child td:first-child,body.ltr table.data caption+tfoot tr:first-child th:first-child,body.ltr table.data caption+tfoot tr:first-child td:first-child{border-top-left-radius:var(--large-border-radius)}body.rtl table.data thead:first-child tr:first-child th:first-child,body.rtl table.data thead:first-child tr:first-child td:first-child,body.rtl table.data tbody:first-child tr:first-child th:first-child,body.rtl table.data tbody:first-child tr:first-child td:first-child,body.rtl table.data tfoot:first-child tr:first-child th:first-child,body.rtl table.data tfoot:first-child tr:first-child td:first-child,body.rtl table.data caption+thead tr:first-child th:first-child,body.rtl table.data caption+thead tr:first-child td:first-child,body.rtl table.data caption+tbody tr:first-child th:first-child,body.rtl table.data caption+tbody tr:first-child td:first-child,body.rtl table.data caption+tfoot tr:first-child th:first-child,body.rtl table.data caption+tfoot tr:first-child td:first-child{border-top-right-radius:var(--large-border-radius)}body.ltr table.data thead:first-child tr:first-child th:last-child,body.ltr table.data thead:first-child tr:first-child td:last-child,body.ltr table.data tbody:first-child tr:first-child th:last-child,body.ltr table.data tbody:first-child tr:first-child td:last-child,body.ltr table.data tfoot:first-child tr:first-child th:last-child,body.ltr table.data tfoot:first-child tr:first-child td:last-child,body.ltr table.data caption+thead tr:first-child th:last-child,body.ltr table.data caption+thead tr:first-child td:last-child,body.ltr table.data caption+tbody tr:first-child th:last-child,body.ltr table.data caption+tbody tr:first-child td:last-child,body.ltr table.data caption+tfoot tr:first-child th:last-child,body.ltr table.data caption+tfoot tr:first-child td:last-child{border-top-right-radius:var(--large-border-radius)}body.rtl table.data thead:first-child tr:first-child th:last-child,body.rtl table.data thead:first-child tr:first-child td:last-child,body.rtl table.data tbody:first-child tr:first-child th:last-child,body.rtl table.data tbody:first-child tr:first-child td:last-child,body.rtl table.data tfoot:first-child tr:first-child th:last-child,body.rtl table.data tfoot:first-child tr:first-child td:last-child,body.rtl table.data caption+thead tr:first-child th:last-child,body.rtl table.data caption+thead tr:first-child td:last-child,body.rtl table.data caption+tbody tr:first-child th:last-child,body.rtl table.data caption+tbody tr:first-child td:last-child,body.rtl table.data caption+tfoot tr:first-child th:last-child,body.rtl table.data caption+tfoot tr:first-child td:last-child{border-top-left-radius:var(--large-border-radius)}table.data thead th,table.data thead td{width:auto;background-color:var(--gray-050);cursor:default}table.data thead th:not(.orderable),table.data thead td{padding-top:15px;padding-bottom:15px}table.data thead th{white-space:nowrap;vertical-align:middle}table.data thead th.orderable{position:relative;padding-left:0;padding-right:0}table.data thead th.orderable:not(.ordered):hover{background-color:var(--gray-100)}table.data thead th.orderable.ordered{background-color:var(--light-sel-color)}table.data thead th.orderable.ordered:not(.loading) button:after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid currentColor;border-width:0 2px 2px 0;opacity:.8;transform:rotate(225deg);position:absolute;top:calc(50% - 3px)}body.ltr table.data thead th.orderable.ordered:not(.loading) button:after{right:10px}body.rtl table.data thead th.orderable.ordered:not(.loading) button:after{left:10px}table.data thead th.orderable.ordered:not(.loading).desc button:after{transform:rotate(45deg)}table.data thead th.orderable button{position:relative;font:inherit;width:100%;padding:14px}body.ltr table.data thead th.orderable button{padding-right:26px}body.rtl table.data thead th.orderable button{padding-left:26px}body.ltr table.data thead th.orderable button{text-align:left}body.rtl table.data thead th.orderable button{text-align:right}table.data thead th.orderable button:focus{z-index:1}table.data thead th:not(.loading) .spinner{display:none}table.data thead th .spinner{position:absolute;top:calc(50% - 6px);--size: 12px}body.ltr table.data thead th .spinner{right:8px}body.rtl table.data thead th .spinner{left:8px}table.data tbody tr:not(.disabled):hover th,table.data tbody tr:not(.disabled):hover td{background-color:var(--gray-050)}table.data tbody tr:not(.disabled):focus{position:relative;z-index:1}table.data tbody tr:not(.disabled).sel th,table.data tbody tr:not(.disabled).sel td{background-color:var(--light-sel-color)}table.data tbody th,table.data tbody td{padding-top:7px;padding-bottom:7px;background-clip:padding-box}table.data tbody td.timestamp{vertical-align:bottom;white-space:nowrap;color:var(--light-text-color)}body.ltr table.data tbody td.timestamp{text-align:right}body.rtl table.data tbody td.timestamp{text-align:left}table.data thead+tbody tr th,table.data thead+tbody tr td,table.data tr+tr th,table.data tr+tr td{border-top:1px solid rgba(0,0,0,0)}table.collapsed{width:auto}table.collapsed,table.collapsed tbody,table.collapsed tbody tr,table.collapsed tbody th,table.collapsed tbody td{display:block;border:none;padding:0;width:auto !important;white-space:normal}body.ltr table.collapsed,body.ltr table.collapsed tbody,body.ltr table.collapsed tbody tr,body.ltr table.collapsed tbody th,body.ltr table.collapsed tbody td{text-align:left}body.rtl table.collapsed,body.rtl table.collapsed tbody,body.rtl table.collapsed tbody tr,body.rtl table.collapsed tbody th,body.rtl table.collapsed tbody td{text-align:right}table.collapsed thead{display:none}table.collapsed tbody tr{padding:6px 0;border-bottom:1px dotted var(--hairline-color)}table.collapsed tbody tr:after{content:\"\";display:block;height:0;clear:both;visibility:hidden}table.collapsed tbody th,table.collapsed tbody td{padding:2px 0 !important}table.collapsed tbody td:empty{display:none}body.ltr table.collapsed tbody [data-title]{margin-right:0}body.rtl table.collapsed tbody [data-title]{margin-left:0}table.collapsed tbody [data-title]:before{margin-right:5px;content:attr(data-title) \":\";font-weight:bold}table.collapsed tbody [data-title] form{display:inline-block}.datatablesorthelper,.editabletablesorthelper,.thumbviewhelper{background-color:var(--white);box-shadow:0 1px 5px -1px rgba(31,41,51,.2)}.datatablesorthelper,.datatablesorthelper .element,.datatablesorthelper a{cursor:move !important}.datatablesorthelper tr:first-child th,.datatablesorthelper tr:first-child td{border-top:none !important}.datatablesorthelper tr:last-child th,.datatablesorthelper tr:last-child td{border-bottom:none !important}.element{position:relative;cursor:default;user-select:none;font-weight:normal;border-radius:var(--small-border-radius)}.element:focus,li:focus .element{background-color:var(--gray-050)}.element.sel,li.sel .element{background-color:var(--light-sel-color) !important;cursor:default}.element.sel:focus,li.sel .element:focus{background-color:#bdcbdb !important}.element.sel.hasthumb .elementthumb img,li.sel .element.hasthumb .elementthumb img{box-shadow:0 0 0 1px rgba(81,95,108,.1),0 6px 4px -4px rgba(81,95,108,.2)}.element.hasthumb .elementthumb:not(:empty){position:absolute;display:flex;justify-content:center;-ms-flex-pack:center;align-items:center;-ms-flex-align:center}.element.hasthumb .elementthumb:not(:empty) img{display:block;flex-shrink:0;pointer-events:none;border-radius:var(--small-border-radius);max-width:100%;max-height:100%}.element.hasthumb .elementthumb:not(:empty).rounded img{border-radius:50%}.element.hasthumb .elementthumb.open-preview{cursor:pointer}.element.error [data-icon=alert]{margin-left:var(--xs)}.element .label{display:inline-block}.element .label .draft-label{display:inline-block;padding:1px 5px;font-weight:normal;text-decoration:none !important;color:var(--medium-text-color);background:var(--gray-100);border-radius:var(--large-border-radius)}body.ltr .element .label .draft-label{margin:-1px 0 -1px 7px}body.rtl .element .label .draft-label{margin:-1px 7px -1px 0}.element.small,.element.large:not(.hasthumb){display:inline-block;padding:7px;box-sizing:border-box}body.ltr .element.small.hasstatus,body.ltr .element.large:not(.hasthumb).hasstatus{padding-left:22px}body.rtl .element.small.hasstatus,body.rtl .element.large:not(.hasthumb).hasstatus{padding-right:22px}.element.small.hasstatus .status,.element.large:not(.hasthumb).hasstatus .status{position:absolute;top:calc(50% - 5px)}body.ltr .element.small.hasstatus .status,body.ltr .element.large:not(.hasthumb).hasstatus .status{left:7px}body.rtl .element.small.hasstatus .status,body.rtl .element.large:not(.hasthumb).hasstatus .status{right:7px}.element.small.hasstatus .icon:not(.delete),.element.large:not(.hasthumb).hasstatus .icon:not(.delete){position:absolute;top:calc(50% - 11px)}body.ltr .element.small.hasstatus .icon:not(.delete),body.ltr .element.large:not(.hasthumb).hasstatus .icon:not(.delete){left:6px}body.rtl .element.small.hasstatus .icon:not(.delete),body.rtl .element.large:not(.hasthumb).hasstatus .icon:not(.delete){right:6px}body.ltr .element.small.hasthumb,body.ltr .element.large:not(.hasthumb).hasthumb{padding-left:39px}body.rtl .element.small.hasthumb,body.rtl .element.large:not(.hasthumb).hasthumb{padding-right:39px}.element.small.hasthumb .elementthumb:not(:empty),.element.large:not(.hasthumb).hasthumb .elementthumb:not(:empty){top:calc(50% - 17px);width:34px;height:34px}body.ltr .element.small.hasthumb .elementthumb:not(:empty),body.ltr .element.large:not(.hasthumb).hasthumb .elementthumb:not(:empty){left:0}body.rtl .element.small.hasthumb .elementthumb:not(:empty),body.rtl .element.large:not(.hasthumb).hasthumb .elementthumb:not(:empty){right:0}.element.small.hasthumb .elementthumb:not(:empty).checkered img,.element.large:not(.hasthumb).hasthumb .elementthumb:not(:empty).checkered img{background-image:linear-gradient(45deg, var(--gray-100) 25%, transparent 25%),linear-gradient(135deg, var(--gray-100) 25%, transparent 25%),linear-gradient(45deg, transparent 75%, var(--gray-100) 75%),linear-gradient(135deg, transparent 75%, var(--gray-100) 75%);background-size:8px 8px;background-position:0 0,4px 0,4px -4px,0 4px}body.ltr .element.small.hasthumb.hasstatus,body.ltr .element.large:not(.hasthumb).hasthumb.hasstatus{padding-left:54px}body.rtl .element.small.hasthumb.hasstatus,body.rtl .element.large:not(.hasthumb).hasthumb.hasstatus{padding-right:54px}body.ltr .element.small.hasthumb.hasstatus .status,body.ltr .element.large:not(.hasthumb).hasthumb.hasstatus .status{left:39px}body.rtl .element.small.hasthumb.hasstatus .status,body.rtl .element.large:not(.hasthumb).hasthumb.hasstatus .status{right:39px}.element.large.hasthumb{display:block;padding:132px 7px 7px;width:134px;box-sizing:border-box}body.ltr .element.large.hasthumb.hasstatus{padding-left:22px}body.rtl .element.large.hasthumb.hasstatus{padding-right:22px}.element.large.hasthumb.hasstatus .status{position:absolute;top:138px}body.ltr .element.large.hasthumb.hasstatus .status{left:7px}body.rtl .element.large.hasthumb.hasstatus .status{right:7px}.element.large.hasthumb .elementthumb:not(:empty){top:7px;width:120px;height:120px}body.ltr .element.large.hasthumb .elementthumb:not(:empty){left:0}body.rtl .element.large.hasthumb .elementthumb:not(:empty){right:0}.element.large.hasthumb .elementthumb:not(:empty).checkered img{background-image:linear-gradient(45deg, var(--gray-100) 25%, transparent 25%),linear-gradient(135deg, var(--gray-100) 25%, transparent 25%),linear-gradient(45deg, transparent 75%, var(--gray-100) 75%),linear-gradient(135deg, transparent 75%, var(--gray-100) 75%);background-size:15px 15px;background-position:0 0,7.5px 0,7.5px -7.5px,0 7.5px}.element.large.hasthumb .label{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;word-wrap:normal}body.ltr .element.removable .label{padding-right:20px}body.rtl .element.removable .label{padding-left:20px}.element.removable .delete:before{color:var(--ui-control-color)}.element.removable.small .delete,.element.removable.large:not(.hasthumb) .delete{position:absolute;top:calc(50% - 11px)}body.ltr .element.removable.small .delete,body.ltr .element.removable.large:not(.hasthumb) .delete{right:7px}body.rtl .element.removable.small .delete,body.rtl .element.removable.large:not(.hasthumb) .delete{left:7px}.element.removable.large.hasthumb .delete{position:absolute}body.ltr .element.removable.large.hasthumb .delete{right:7px}body.rtl .element.removable.large.hasthumb .delete{left:7px}.element:not(.removable) .delete{display:none}.elements{position:relative}.elements:not(.busy) .update-spinner{display:none}.elements.busy{min-height:200px}.elements.busy:after{display:block;content:\"\";font-size:0;position:absolute;top:0;left:-24px;width:calc(100% + 48px);height:100%;background:rgba(255,255,255,.75);border-radius:var(--large-border-radius)}.elements.busy .update-spinner{z-index:1}.elements .header{margin:-24px -24px 24px;padding:14px 24px;background-color:var(--gray-050);box-shadow:none}.elements .header:after{content:\"\"}.elements .header .selectallcontainer{cursor:default}body.ltr .elements .header .selectallcontainer .checkbox{margin-right:5px}body.rtl .elements .header .selectallcontainer .checkbox{margin-left:5px}.elements .tableview .move,.elements .tableview .toggle{display:flex;position:absolute;justify-content:center;align-items:center;top:50%;transform:translateY(-50%);width:var(--touch-target-size);height:var(--touch-target-size)}body.ltr .elements .tableview .move,body.ltr .elements .tableview .toggle{margin-left:calc(var(--touch-target-size)*-1)}body.rtl .elements .tableview .move,body.rtl .elements .tableview .toggle{margin-right:calc(var(--touch-target-size)*-1)}.elements .tableview .move{font-size:11px;text-decoration:none}.elements .tableview .toggle{text-align:center;padding:4px;border-radius:50%}body.ltr .elements .tableview .move+.toggle{margin-left:calc(var(--touch-target-size)*-2)}body.rtl .elements .tableview .move+.toggle{margin-right:calc(var(--touch-target-size)*-2)}.elements .thumbsview{width:calc(\n 100% + 15px\n );display:grid;gap:5px;grid-template-columns:repeat(auto-fit, minmax(180px, 1fr))}body.ltr .elements .thumbsview{margin:-7px -8px -8px -7px}body.rtl .elements .thumbsview{margin:-7px -7px -8px -8px}.elements .thumbsview li{position:relative;max-width:226px}body.ltr .elements .thumbsview li{margin:0 1px 1px 0}body.rtl .elements .thumbsview li{margin:0 0 1px 1px}.elements .thumbsview li:hover .element{background-color:var(--gray-050)}.elements .thumbsview li .element.large.hasthumb{width:unset}.elements .thumbsview li .element.large.hasthumb .elementthumb:not(:empty){width:100%}body.ltr .elements .thumbsview li.has-checkbox .element.hasthumb:not(.hasstatus){padding-left:28px}body.rtl .elements .thumbsview li.has-checkbox .element.hasthumb:not(.hasstatus){padding-right:28px}body.ltr .elements .thumbsview li.has-checkbox .element.hasthumb.hasstatus{padding-left:43px}body.rtl .elements .thumbsview li.has-checkbox .element.hasthumb.hasstatus{padding-right:43px}body.ltr .elements .thumbsview li.has-checkbox .element.hasthumb.hasstatus .status{left:28px}body.rtl .elements .thumbsview li.has-checkbox .element.hasthumb.hasstatus .status{right:28px}.elements .thumbsview li.has-checkbox .checkbox{position:absolute;top:134px}body.ltr .elements .thumbsview li.has-checkbox .checkbox{left:7px}body.rtl .elements .thumbsview li.has-checkbox .checkbox{right:7px}.export-form{position:relative}.export-form .spinner{position:absolute;bottom:0}body.ltr .export-form .spinner{right:-24px}body.rtl .export-form .spinner{left:-24px}.thumbviewhelper{margin:-7px;padding:7px}.thumbviewhelper .thumbsview,.thumbviewhelper .thumbsview li{margin:0 !important}.structure{position:relative;z-index:1}body.ltr .structure li{padding-left:8px}body.rtl .structure li{padding-right:8px}.structure li.collapsed>ul{display:none}.structure li .row:hover>.icon,.structure li.draghelper>.row .move,.structure li .add.active{opacity:1}.structure li.draghelper>.row .add{opacity:0}.structure li.draghelper>.row .move:before{color:var(--link-color)}.structure li.draginsertion{position:relative;height:2px;background-color:var(--link-color) !important;border-radius:1px}body.ltr .structure li.draginsertion{margin:-1px 0 -1px 8px}body.rtl .structure li.draginsertion{margin:-1px 8px -1px 0}body.ltr .structure li.draginsertion{padding-left:0}body.rtl .structure li.draginsertion{padding-right:0}body.ltr .structure li.draginsertion{border-left:none}body.rtl .structure li.draginsertion{border-right:none}.structure li .toggle{position:relative;z-index:1;padding:4px}body.ltr .structure li .toggle{float:left}body.rtl .structure li .toggle{float:right}body.ltr .structure li .toggle{margin:10px -8px 0 -12px}body.rtl .structure li .toggle{margin:10px -12px 0 -8px}.structure li .row:after{content:\"\";display:block;height:0;clear:both;visibility:hidden}.structure li .move,.structure li .add{opacity:0;transition:opacity linear 100ms}body.ltr .structure li .move,body.ltr .structure li .add{margin:5px 5px 0 0}body.rtl .structure li .move,body.rtl .structure li .add{margin:5px 0 0 5px}.structure li .add{padding:0 5px}.structure li .add:before{content:\"downangle\";color:var(--dark-hairline-color)}.structure li .add:not(.disabled):hover:before,.structure li .add.active:before{color:var(--link-color)}body.ltr .structure li .checkbox{float:left}body.rtl .structure li .checkbox{float:right}body.ltr .structure li .checkbox{margin:7px 0 0 7px}body.rtl .structure li .checkbox{margin:7px 7px 0 0}body.ltr .structure ul{margin-left:-3px}body.rtl .structure ul{margin-right:-3px}.structure ul li{background-repeat:no-repeat}body.ltr .structure ul li{padding-left:38px}body.rtl .structure ul li{padding-right:38px}body.ltr .structure ul li{background-image:url(../images/branch.png);background-position:0 0}body.rtl .structure ul li{background-image:url(../images/branch_rtl.png);background-position:100% 0}body.ltr .structure ul li:not(:last-child):not(.last){padding-left:37px}body.rtl .structure ul li:not(:last-child):not(.last){padding-right:37px}body.ltr .structure ul li:not(:last-child):not(.last){border-left:1px solid var(--gray-200)}body.rtl .structure ul li:not(:last-child):not(.last){border-right:1px solid var(--gray-200)}body.ltr .structure ul li:not(:last-child):not(.last){background-position:-1px 0}body.rtl .structure ul li:not(:last-child):not(.last){background-position:calc(100% + 1px) 0}body.ltr .structure ul li.draginsertion{margin-left:38px}body.rtl .structure ul li.draginsertion{margin-right:38px}.structure .row.draghover .element{z-index:2;border-radius:15px;box-shadow:inset 0 0 0 2px var(--link-color)}.structure .row.droptarget{border-radius:5px;box-shadow:inset 0 0 0 2px var(--link-color)}.elementselect{position:relative;min-height:34px;margin-top:-7px}.elementselect .elements{display:flex;flex-direction:column;align-items:flex-start}.elementselect .elements.flex-row{flex-direction:row}.elementselect .elements.flex-wrap{flex-wrap:wrap}.elementselect .elements:after{content:\"\";display:block;height:0;clear:both;visibility:hidden}body.ltr .elementselect .element{margin:7px 7px 0 0}body.rtl .elementselect .element{margin:7px 0 0 7px}.elementselect .flex,.elementselect .btn{clear:both}.elementselect .element{z-index:1}.elementselect .element.small{max-width:100%}.elementselect .element.small .label{display:block;max-width:100%;box-sizing:border-box;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.elementselect .flex{padding-top:7px}table.editable{border-radius:var(--large-border-radius);border:1px solid var(--input-border-color)}table.editable th,table.editable td.action{color:var(--medium-text-color);font-weight:normal;background-color:var(--gray-050)}table.editable thead tr th,table.editable tbody tr th{padding:6px 10px}table.editable thead tr th{border-bottom:1px solid var(--input-border-color)}body.ltr table.editable thead tr th.has-info{padding-right:calc(15px + 1em)}body.rtl table.editable thead tr th.has-info{padding-left:calc(15px + 1em)}table.editable thead tr th span.info{position:absolute;margin-left:5px}table.editable tbody tr:not(:first-child) th,table.editable tbody tr:not(:first-child) td{border-top:1px solid var(--input-border-color)}body.ltr table.editable tbody tr:last-child td:first-child{border-bottom-left-radius:var(--large-border-radius)}body.rtl table.editable tbody tr:last-child td:first-child{border-bottom-right-radius:var(--large-border-radius)}body.ltr table.editable tbody tr:last-child td:first-child textarea,body.ltr table.editable tbody tr:last-child td:first-child input.text{border-bottom-left-radius:calc(var(--large-border-radius) - 1px)}body.rtl table.editable tbody tr:last-child td:first-child textarea,body.rtl table.editable tbody tr:last-child td:first-child input.text{border-bottom-right-radius:calc(var(--large-border-radius) - 1px)}body.ltr table.editable tbody tr td:not(:first-child),body.ltr table.editable tbody tr th~td:not(.hidden)~td{border-left:1px solid var(--input-border-color)}body.rtl table.editable tbody tr td:not(:first-child),body.rtl table.editable tbody tr th~td:not(.hidden)~td{border-right:1px solid var(--input-border-color)}body.ltr table.editable tbody tr th~td:not(:first-child){border-left:1px solid #dbdddf}body.rtl table.editable tbody tr th~td:not(:first-child){border-right:1px solid #dbdddf}table.editable tbody tr td{vertical-align:top;text-align:center;background-color:var(--white);padding:4px 10px}table.editable tbody tr td.focus{position:relative;box-shadow:inset 0 0 0 1px var(--hairline-color)}table.editable tbody tr td.textual{padding:0}table.editable tbody tr td.textual textarea{resize:none}table.editable tbody tr td.textual pre{white-space:pre-wrap}body.ltr table.editable tbody tr td.textual pre{text-align:left}body.rtl table.editable tbody tr td.textual pre{text-align:right}table.editable tbody tr td.lightswitch-cell{padding-top:9px;padding-bottom:9px}table.editable tbody tr td.lightswitch-cell .lightswitch{display:block;margin:0 auto}table.editable tbody tr td.checkbox-cell{padding-top:10px;padding-bottom:10px}table.editable tbody tr td.checkbox-cell .checkbox-wrapper{display:block;margin:-2px auto 0;width:16px;height:16px}table.editable tbody tr td.error{box-shadow:inset 0 0 0 1px var(--error-color)}table.editable tbody tr td.disabled{position:relative;opacity:1}table.editable tbody tr td.disabled:after{content:\"\";font-size:0;position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(243,247,252,.75);user-select:none}table.editable tbody tr td.action{padding:4px 7px}body.ltr table.editable tbody tr td.action+td.action{border-left:none}body.rtl table.editable tbody tr td.action+td.action{border-right:none}body.ltr table.editable tbody tr td.action+td.action{padding-left:0}body.rtl table.editable tbody tr td.action+td.action{padding-right:0}table.editable tbody tr td .flex>*{margin-bottom:0}table.editable tbody textarea,table.editable tbody textarea.text,table.editable tbody input.text,table.editable tbody pre{display:block;width:100%;border:none;box-shadow:none;border-radius:0;padding:7px 10px;background-color:rgba(0,0,0,0);overflow:hidden;transition:none;box-sizing:border-box}table.editable tbody .color-container{display:block;position:relative}table.editable tbody .color-container>.color,table.editable tbody .color-container .color-input{margin-bottom:0}table.editable tbody .color-container>.color{position:absolute;top:10px;z-index:1}body.ltr table.editable tbody .color-container>.color{left:10px}body.rtl table.editable tbody .color-container>.color{right:10px}body.ltr table.editable tbody .color-container .color-hex-indicator{left:32px}body.rtl table.editable tbody .color-container .color-hex-indicator{right:32px}body.ltr table.editable tbody .color-container .color-input{padding-left:calc(32px + 1em)}body.rtl table.editable tbody .color-container .color-input{padding-right:calc(32px + 1em)}table.editable tbody .datewrapper,table.editable tbody .timewrapper{display:block;width:100%}table.editable tbody .datewrapper .text+div[data-icon],table.editable tbody .timewrapper .text+div[data-icon]{top:6px}body.ltr table.editable tbody .datewrapper .text+div[data-icon],body.ltr table.editable tbody .timewrapper .text+div[data-icon]{left:10px}body.rtl table.editable tbody .datewrapper .text+div[data-icon],body.rtl table.editable tbody .timewrapper .text+div[data-icon]{right:10px}table.editable:not(.static) td.textual{cursor:text}table.editable+.btn.add{display:block;width:100%}table.editable:not(.hidden)+.btn.add{border-top-width:0;border-radius:0 0 var(--medium-border-radius) var(--medium-border-radius)}.border-box+.buttons,.shadow-box+.buttons{margin-top:7px}body.ltr ul.tree,body.ltr .tree ul{margin-left:20px}body.rtl ul.tree,body.rtl .tree ul{margin-right:20px}body.ltr .tree li .toggle{margin:7px 0 0 -15px}body.rtl .tree li .toggle{margin:7px -15px 0 0}.status{display:inline-block;position:relative;width:10px;height:10px;border:1px solid rgba(0,0,0,0);border-radius:100%;box-sizing:border-box;background-clip:border-box}body.ltr .status{margin-right:10px}body.rtl .status{margin-left:10px}body.use-shapes .status.all{rotate:45deg;background-image:linear-gradient(30deg, #184cef, #e5422b)}body.use-shapes .status.pending{background-color:rgba(0,0,0,0);border-style:solid;border-width:0 5px 10px 5px;border-color:rgba(0,0,0,0) rgba(0,0,0,0) var(--pending-color) rgba(0,0,0,0);border-radius:1px}body.use-shapes .status.all,body.use-shapes .status.off,body.use-shapes .status.suspended,body.use-shapes .status.expired{border-radius:2px;transform:scale(90%)}.status:not(.on):not(.live):not(.active):not(.enabled):not(.all):not(.pending):not(.off):not(.suspended):not(.expired):not(.yellow):not(.orange):not(.red):not(.pink):not(.purple):not(.blue):not(.green):not(.turquoise):not(.light):not(.grey):not(.black){border-color:var(--ui-control-color)}.green,.status.on,.status.live,.status.active,.status.enabled{background-color:var(--enabled-color)}.status.all{background-image:linear-gradient(60deg, #184cef, #e5422b);background-origin:border-box}.orange,.status.pending{background-color:var(--pending-color)}.red,.status.off,.status.suspended,.status.expired{background-color:var(--disabled-color)}.yellow{background-color:var(--yellow-300)}.pink{background-color:var(--pink-400)}.purple{background-color:#9b59b6}.blue{background-color:var(--blue-600)}.turquoise{background-color:var(--teal-300)}.status.light{background-color:var(--gray-100)}.grey{background-color:var(--gray-300)}.black{background-color:var(--gray-800)}.status.white,.status.disabled{opacity:1}.condition-container{margin:24px 0}.condition-rule,.condition-footer{padding:7px}.condition-footer{border:1px dashed var(--medium-hairline-color);border-radius:var(--large-border-radius)}.condition:not(:empty)+.condition-footer{border-top-width:0;border-top-left-radius:0;border-top-right-radius:0}.condition-footer .spinner:not(.loading){display:none}.condition-rule{margin:0;border:1px solid var(--hairline-color);background-color:var(--gray-050)}.condition-rule:first-child{border-top-left-radius:var(--large-border-radius);border-top-right-radius:var(--large-border-radius)}.condition-rule+.condition-rule{border-top-width:0}.condition-rule>.rule-move,.condition-rule>.rule-actions{margin-top:5px}.condition-rule>.rule-body .lightswitch{margin-top:6px;display:block}.condition-rule>.rule-body .selectize{min-width:100px}.condition-rule>.rule-body .text.fullwidth{min-width:100px;max-width:100%}.progressbar{border-radius:6px;border:2px solid var(--gray-700);padding:2px;position:absolute;left:20%;width:60%;z-index:1000}.progressbar-inner{border-radius:2px;height:4px;background-color:var(--gray-700)}.progressbar:not(.pending) .progressbar-inner{width:0;transition:width linear 100ms}.progressbar.pending .progressbar-inner{animation-timing-function:linear;animation-duration:250ms;animation-iteration-count:infinite}body.ltr .progressbar.pending .progressbar-inner{background:repeating-linear-gradient(135deg, var(--white), var(--white) 8.8388347649px, var(--gray-700) 8.8388347649px, var(--gray-700) 17.6776695297px)}body.rtl .progressbar.pending .progressbar-inner{background:repeating-linear-gradient(45deg, var(--white), var(--white) 8.8388347649px, var(--gray-700) 8.8388347649px, var(--gray-700) 17.6776695297px)}body.ltr .progressbar.pending .progressbar-inner{animation-name:pendingprogress-ltr}body.rtl .progressbar.pending .progressbar-inner{animation-name:pendingprogress-rtl}@keyframes pendingprogress-ltr{from{background-position:0}to{background-position:25px}}@keyframes pendingprogress-rtl{from{background-position:0}to{background-position:-25px}}.elementselect .progress-shade{background-color:rgba(255,255,255,.8);width:100%;height:100%;position:absolute;top:0;display:none}body.ltr .elementselect .progress-shade{left:0}body.rtl .elementselect .progress-shade{right:0}.elementselect.uploading{position:relative}.elementselect.uploading .progress-shade{display:block;z-index:2}.missing-component{padding:7px 10px !important;max-width:400px;background-color:var(--gray-050) !important}.missing-component .error{margin:0}.missing-component .install-plugin{margin:7px 0 -7px;border-top:1px solid var(--hairline-color);position:relative}body.ltr .missing-component .install-plugin{padding:10px 0 10px 40px}body.rtl .missing-component .install-plugin{padding:10px 40px 10px 0}.missing-component .install-plugin .icon{width:32px;height:32px;position:absolute;top:calc(50% - 16px)}body.ltr .missing-component .install-plugin .icon{left:0}body.rtl .missing-component .install-plugin .icon{right:0}.missing-component .install-plugin .icon img,.missing-component .install-plugin .icon svg{width:100%;height:100%}.missing-component .install-plugin h3{flex:1;margin:8px 0 !important}.missing-component .install-plugin .btn{margin:0}.pane{background:#fff;box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);position:relative;margin:14px 0;padding:24px;border-radius:var(--large-border-radius);word-wrap:break-word;box-sizing:border-box}.pane:focus{box-shadow:var(--focus-ring)}.pane .pane,#content .pane{background-color:var(--gray-050);border:1px solid var(--hairline-color);box-shadow:none}.pane.loading{min-height:200px}.pane.loading:after{display:block;content:\"\";font-size:0;position:absolute;top:0;left:-24px;width:calc(100% + 48px);height:100%}.pane-header{margin:calc(var(--xl)*-1) var(--neg-padding) var(--xl);padding:var(--s) var(--xl);min-height:50px;box-sizing:border-box;box-shadow:inset 0 -1px 0 0 rgba(154,165,177,.25);border-radius:var(--large-border-radius) var(--large-border-radius) 0 0;background-color:var(--gray-050)}.pane-header .header-btn{margin:2px 0;width:30px;height:30px;padding-left:0;padding-right:0}.pane-header .header-btn:not(:hover):not(:active):not(.active){background-color:rgba(0,0,0,0)}.pane-header .header-btn:not(:active):not(.active):hover{background-color:rgba(154,165,177,.15)}.pane-header .spinner{margin:0 !important}.pane-tabs{display:flex;flex-direction:row;align-items:center;margin:calc(var(--s)*-1) calc(var(--xl)*-1)}.pane-tabs:first-child{border-radius:var(--large-border-radius) var(--large-border-radius) 0 0;overflow:hidden}.pane-tabs [role=tablist]{flex:1;display:flex;flex-direction:row;overflow-x:auto;scrollbar-width:none}.pane-tabs [role=tablist]::-webkit-scrollbar{display:none}body.ltr .pane-tabs [role=tablist].scrollable{mask-image:linear-gradient(to left, rgba(0, 0, 0, 0), rgb(0, 0, 0) 24px)}body.rtl .pane-tabs [role=tablist].scrollable{mask-image:linear-gradient(to right, rgba(0, 0, 0, 0), rgb(0, 0, 0) 24px)}.pane-tabs [role=tablist] [role=tab]{--tab-label-color: var(--light-text-color)}.pane-tabs [role=tablist] [role=tab].error{--highlight-color: var(--error-color) !important;--tab-label-color: var(--error-color) !important}.pane-tabs [role=tablist] [role=tab],.pane-tabs [role=tablist] [role=tab] .tab-label{border-radius:2px 2px 0 0}.pane-tabs [role=tablist] [role=tab] .tab-label{display:flex;flex-direction:row;align-items:center;position:relative;padding:0 24px;white-space:nowrap;color:var(--tab-label-color);height:50px}.pane-tabs [role=tablist] [role=tab]:hover{text-decoration:none}body:not(.reduce-focus-visibility) .pane-tabs [role=tablist] [role=tab]:focus,body.reduce-focus-visibility .pane-tabs [role=tablist] [role=tab]:focus-visible{box-shadow:none}body:not(.reduce-focus-visibility) .pane-tabs [role=tablist] [role=tab]:focus .tab-label,body.reduce-focus-visibility .pane-tabs [role=tablist] [role=tab]:focus-visible .tab-label{box-shadow:var(--inner-focus-ring)}.pane-tabs [role=tablist] [role=tab]:not(.sel):hover{background-color:rgba(154,165,177,.15)}.pane-tabs [role=tablist] [role=tab].sel{--highlight-color: var(--gray-500);--tab-label-color: var(--text-color);position:relative;z-index:1;cursor:default;box-shadow:inset 0 2px 0 var(--highlight-color),0 0 0 1px rgba(51,64,77,.1),0 2px 12px rgba(205,216,228,.5);background-color:var(--white)}body.ltr .pane-tabs [role=tablist] [role=tab] span[data-icon]{margin-left:4px}body.rtl .pane-tabs [role=tablist] [role=tab] span[data-icon]{margin-right:4px}body.ltr .pane-tabs:first-child [role=tablist] [role=tab]:first-child,body.ltr .pane-tabs:first-child [role=tablist] [role=tab]:first-child .tab-label{border-top-left-radius:var(--large-border-radius)}body.rtl .pane-tabs:first-child [role=tablist] [role=tab]:first-child,body.rtl .pane-tabs:first-child [role=tablist] [role=tab]:first-child .tab-label{border-top-right-radius:var(--large-border-radius)}.pane-tabs .menubtn{margin:0 var(--xl)}.details{--background-color: var(--gray-050);--spacing: var(--l);padding:0 var(--padding) var(--spacing)}.details .meta,.details .field,.details hr{margin-left:var(--neg-padding);margin-right:var(--neg-padding)}.details .meta{margin-bottom:var(--spacing)}.details .meta:not(.read-only){background-color:var(--background-color) !important}.details .meta.read-only{color:var(--medium-text-color)}.details .meta.read-only>.data{align-items:baseline;min-height:auto}.details .meta.read-only>.data>.heading,.details .meta.read-only>.data>.value{padding:6px 0}.details .meta.read-only>.data:first-child>.heading,.details .meta.read-only>.data:first-child>.value{padding-top:0}.details .meta.read-only>.data:last-child>.heading,.details .meta.read-only>.data:last-child>.value{padding-bottom:0}.details .meta.warning{padding-top:var(--m);padding-bottom:var(--m);color:var(--text-color) !important;background-color:var(--yellow-050) !important;box-shadow:0 0 0 1px var(--yellow-300),0 2px 12px rgba(205,216,228,.5)}.details .meta.warning p{margin-bottom:5px}.details .meta.warning .btn{background-color:var(--yellow-300)}.details .meta.warning .btn:hover,.details .meta.warning .btn:focus{background-color:#f8d02e}.details .meta.warning .btn:active{background-color:#f8ca15}.details .meta>.field,.details .meta>.data{margin:0 var(--neg-padding) !important}.details .meta>.field>.heading>label,.details .meta>.field>.heading,.details .meta>.data>.heading>label,.details .meta>.data>.heading{color:var(--gray-600)}body.ltr .details .meta>.field>.status-badge{left:0}body.rtl .details .meta>.field>.status-badge{right:0}.details .meta .text::placeholder,.details .meta .datewrapper .text+div[data-icon],.details .meta .timewrapper .text+div[data-icon]{color:var(--gray-500)}body.ltr .details .meta .ui-datepicker{margin:0 0 0 -8px}body.rtl .details .meta .ui-datepicker{margin:0 -8px 0 0}.details hr{margin:var(--spacing) 0;border-top-color:var(--hairline-color)}.details input::-webkit-input-placeholder,.details textarea::-webkit-input-placeholder{color:var(--gray-500)}.details input:-ms-input-placeholder,.details textarea:-ms-input-placeholder{color:var(--gray-500)}.details input::-ms-input-placeholder,.details textarea::-ms-input-placeholder{color:var(--gray-500)}.details input:-moz-placeholder,.details textarea:-moz-placeholder{color:var(--gray-500)}.details input::-moz-placeholder,.details textarea::-moz-placeholder{color:var(--gray-500)}.details input::placeholder,.details textarea::placeholder{color:var(--gray-500)}.details .text{background-color:rgba(0,0,0,0) !important;resize:none}.details>.field>.heading>label,.details>fieldset>legend{margin-top:0;font-weight:normal;color:var(--gray-600)}.details>fieldset{margin:0 0 var(--spacing)}.details>fieldset>legend{margin-bottom:5px}.details>.field{margin:0 0 var(--spacing)}.details>.field>.heading{margin-top:0}.details>.field>.input>.text.fullwidth{margin:0 var(--neg-padding);padding-left:var(--padding);padding-right:var(--padding);background-color:var(--background-color) !important;width:calc(100% + var(--padding) + var(--padding))}.details>.text{border-radius:var(--large-border-radius);margin-bottom:var(--spacing)}.details>.text:not(:focus){border-color:rgba(96,125,159,.4)}.meta{display:grid;grid-gap:var(--m);padding:calc(var(--padding)/2) var(--padding);overflow:visible}.meta>.field,.meta>.data,.meta>.flex-fields>.field,.meta>.flex-fields>.data{display:flex;box-sizing:border-box;flex-wrap:wrap;justify-content:space-between;align-items:center;margin:0 var(--neg-padding) !important;padding:0 var(--padding);transition:padding-left linear 100ms,padding-right linear 100ms}body.ltr .meta>.field.nested,body.ltr .meta>.data.nested,body.ltr .meta>.flex-fields>.field.nested,body.ltr .meta>.flex-fields>.data.nested{padding-left:38px}body.rtl .meta>.field.nested,body.rtl .meta>.data.nested,body.rtl .meta>.flex-fields>.field.nested,body.rtl .meta>.flex-fields>.data.nested{padding-right:38px}.meta>.field.add:before,.meta>.data.add:before,.meta>.flex-fields>.field.add:before,.meta>.flex-fields>.data.add:before{position:absolute;width:31px;font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"plus\";color:var(--light-text-color)}body.ltr .meta>.field.add:before,body.ltr .meta>.data.add:before,body.ltr .meta>.flex-fields>.field.add:before,body.ltr .meta>.flex-fields>.data.add:before{left:0}body.rtl .meta>.field.add:before,body.rtl .meta>.data.add:before,body.rtl .meta>.flex-fields>.field.add:before,body.rtl .meta>.flex-fields>.data.add:before{right:0}body.ltr .meta>.field.add:before,body.ltr .meta>.data.add:before,body.ltr .meta>.flex-fields>.field.add:before,body.ltr .meta>.flex-fields>.data.add:before{text-align:right}body.rtl .meta>.field.add:before,body.rtl .meta>.data.add:before,body.rtl .meta>.flex-fields>.field.add:before,body.rtl .meta>.flex-fields>.data.add:before{text-align:left}.meta>.field.add .input,.meta>.data.add .input,.meta>.flex-fields>.field.add .input,.meta>.flex-fields>.data.add .input{width:100%}.meta>.field>.heading,.meta>.data>.heading,.meta>.flex-fields>.field>.heading,.meta>.flex-fields>.data>.heading{margin:0}@media screen and (min-width: 400px){.meta>.field>.heading,.meta>.data>.heading,.meta>.flex-fields>.field>.heading,.meta>.flex-fields>.data>.heading{flex:0 0 104px;line-height:18px}body.ltr .meta>.field>.heading,body.ltr .meta>.data>.heading,body.ltr .meta>.flex-fields>.field>.heading,body.ltr .meta>.flex-fields>.data>.heading{margin-right:var(--s)}body.rtl .meta>.field>.heading,body.rtl .meta>.data>.heading,body.rtl .meta>.flex-fields>.field>.heading,body.rtl .meta>.flex-fields>.data>.heading{margin-left:var(--s)}}.meta>.field.lightswitch-field>.heading,.meta>.data.lightswitch-field>.heading,.meta>.flex-fields>.field.lightswitch-field>.heading,.meta>.flex-fields>.data.lightswitch-field>.heading{flex:1}.meta>.field>.input .flex,.meta>.data>.input .flex,.meta>.flex-fields>.field>.input .flex,.meta>.flex-fields>.data>.input .flex{flex-wrap:nowrap}.meta>.field>.input .flex>*,.meta>.data>.input .flex>*,.meta>.flex-fields>.field>.input .flex>*,.meta>.flex-fields>.data>.input .flex>*{margin-bottom:0}.meta>.field>.heading,.meta>.flex-fields>.field>.heading{margin:var(--xs) 0}@media screen and (min-width: 400px){.meta>.field>.heading,.meta>.flex-fields>.field>.heading{margin:0}}.meta>.field>.heading>.copytextbtn,.meta>.flex-fields>.field>.heading>.copytextbtn{display:none}.meta>.data>.heading,.meta>.flex-fields>.data>.heading{padding:var(--s) 0}.meta>.field>.heading>label,.meta>.data>.heading,.meta>.flex-fields>.field>.heading>label,.meta>.flex-fields>.data>.heading{color:var(--medium-text-color)}.meta>.field>.input,.meta>.data>.value,.meta>.flex-fields>.field>.input,.meta>.flex-fields>.data>.value{padding:var(--s) 0;width:100%}@media screen and (min-width: 400px){.meta>.field>.input,.meta>.data>.value,.meta>.flex-fields>.field>.input,.meta>.flex-fields>.data>.value{width:calc(100% - 112px)}}.meta>.data>.value,.meta>.flex-fields>.data>.value{display:flex;align-items:center}.meta>.data>.value>[data-icon=draft],.meta>.flex-fields>.data>.value>[data-icon=draft]{margin-top:-2px}body.ltr .meta>.data>.value>[data-icon=draft],body.ltr .meta>.flex-fields>.data>.value>[data-icon=draft]{margin-right:8px}body.rtl .meta>.data>.value>[data-icon=draft],body.rtl .meta>.flex-fields>.data>.value>[data-icon=draft]{margin-left:8px}.meta>.field.lightswitch-field>.input,.meta>.flex-fields>.field.lightswitch-field>.input{flex:0;width:auto}.meta>.field.has-errors,.meta>.flex-fields>.field.has-errors{border:1px solid var(--error-color) !important}.meta>.field.has-errors:first-child,.meta>.flex-fields>.field.has-errors:first-child{border-top-left-radius:var(--large-border-radius);border-top-right-radius:var(--large-border-radius)}.meta>.field.has-errors:last-child,.meta>.flex-fields>.field.has-errors:last-child{border-bottom-left-radius:var(--large-border-radius);border-bottom-right-radius:var(--large-border-radius)}.meta>.field.has-errors+.field,.meta>.flex-fields>.field.has-errors+.field{border-top:none !important}.meta>.field>.heading>label,.meta>.field>.heading>legend,.meta>.flex-fields>.field>.heading>label,.meta>.flex-fields>.field>.heading>legend{font-weight:normal}.meta>.field>.input>.text,.meta>.field>.input>.flex>.text,.meta>.field>.input>.flex>.textwrapper>.text,.meta>.field>.input>.datewrapper>.text,.meta>.field>.input>.timewrapper>.text,.meta>.field>.input>.datetimewrapper>.datewrapper>.text,.meta>.field>.input>.datetimewrapper>.timewrapper>.text,.meta>.flex-fields>.field>.input>.text,.meta>.flex-fields>.field>.input>.flex>.text,.meta>.flex-fields>.field>.input>.flex>.textwrapper>.text,.meta>.flex-fields>.field>.input>.datewrapper>.text,.meta>.flex-fields>.field>.input>.timewrapper>.text,.meta>.flex-fields>.field>.input>.datetimewrapper>.datewrapper>.text,.meta>.flex-fields>.field>.input>.datetimewrapper>.timewrapper>.text{display:block;margin:calc(var(--s)*-1) 0;background-color:rgba(0,0,0,0)}.meta>.field>.input>.datewrapper,.meta>.field>.input>.timewrapper,.meta>.field>.input>.datetimewrapper>.datewrapper,.meta>.field>.input>.datetimewrapper>.timewrapper,.meta>.flex-fields>.field>.input>.datewrapper,.meta>.flex-fields>.field>.input>.timewrapper,.meta>.flex-fields>.field>.input>.datetimewrapper>.datewrapper,.meta>.flex-fields>.field>.input>.datetimewrapper>.timewrapper{background-color:rgba(0,0,0,0)}.meta>.field>.input>.datetimewrapper>.datewrapper,.meta>.flex-fields>.field>.input>.datetimewrapper>.datewrapper{width:55%}.meta>.field>.input>.datetimewrapper>.timewrapper,.meta>.flex-fields>.field>.input>.datetimewrapper>.timewrapper{width:45%}body.ltr .meta>.field>.input>.datetimewrapper>.clear-btn,body.ltr .meta>.flex-fields>.field>.input>.datetimewrapper>.clear-btn{margin-right:-24px}body.rtl .meta>.field>.input>.datetimewrapper>.clear-btn,body.rtl .meta>.flex-fields>.field>.input>.datetimewrapper>.clear-btn{margin-left:-24px}.meta>.field>.input>.datewrapper,.meta>.field>.input>.timewrapper,.meta>.flex-fields>.field>.input>.datewrapper,.meta>.flex-fields>.field>.input>.timewrapper{display:block;width:100%}.meta>.field>ul.errors,.meta>.flex-fields>.field>ul.errors{margin:0;padding:0 0 6px;width:100%;list-style-type:none}body.ltr .meta>.field>.clear-btn,body.ltr .meta>.flex-fields>.field>.clear-btn{margin-right:var(--neg-padding)}body.rtl .meta>.field>.clear-btn,body.rtl .meta>.flex-fields>.field>.clear-btn{margin-left:var(--neg-padding)}.meta>.flex-fields h2,.meta>.flex-fields blockquote.note{margin:0 -24px !important;padding:14px 24px;background-color:#ebf2fa}.meta>.flex-fields blockquote.note{border-radius:0;border:none}.meta>.flex-fields hr{margin:0 -24px}.meta>.field>.input>.select{display:block;margin:calc(var(--s)*-1) 0;width:100%;border-radius:0;box-shadow:none;background-color:rgba(0,0,0,0)}.meta>.field>.input>.select+.spinner{position:absolute;top:calc(50% - 17px)}body.ltr .meta>.field>.input>.select+.spinner{right:-24px}body.rtl .meta>.field>.input>.select+.spinner{left:-24px}.meta>.field>.input>.select select{border:1px solid var(--input-border-color);width:100%;background-color:rgba(0,0,0,0)}body.ltr .meta>.field>.input>.select select{padding-left:6px}body.rtl .meta>.field>.input>.select select{padding-right:6px}.body{position:relative}.slideout-container,.slideout,.modal,.hud{z-index:100;box-sizing:border-box}.modal,.hud .body{border-radius:5px;background-color:#fff;box-shadow:0 25px 100px rgba(31,41,51,.5)}.slideout-shade{opacity:0;transition:opacity linear 250ms}.slideout-shade.so-visible{opacity:1}.slideout-container{position:fixed;top:0;left:0;width:100vw;height:100vh;height:-webkit-fill-available;pointer-events:none}body.has-debug-toolbar .slideout-container{height:calc(100vh - 42px)}.slideout{position:absolute;background-color:var(--white);box-shadow:0 0 0 1px rgba(123,135,147,.25),0 25px 100px rgba(31,41,51,.5) !important;display:flex;flex-direction:column;overflow:hidden;padding:24px var(--padding);pointer-events:all}.slideout.so-mobile{--padding: 14px;--neg-padding: -14px;width:100%;height:100%;left:0;transition:top linear 250ms;will-change:top}.slideout:not(.so-mobile){top:8px;width:calc(50% - 8px);height:calc(100% - 16px);border-radius:var(--large-border-radius)}@media screen and (prefers-reduced-motion: no-preference){body.ltr .slideout:not(.so-mobile){transition:left linear 250ms;will-change:left}body.rtl .slideout:not(.so-mobile){transition:right linear 250ms;will-change:right}}.slideout>.pane-header{z-index:2}.slideout>.pane-header>.so-toolbar{display:flex;flex-direction:row;align-items:center;gap:var(--s);min-height:34px}.slideout>.pane-header>.so-toolbar>.pane-tabs{width:1px;flex:1}body.ltr .slideout>.pane-header>.so-toolbar>.pane-tabs{margin-right:0}body.rtl .slideout>.pane-header>.so-toolbar>.pane-tabs{margin-left:0}.slideout.so-mobile>.pane-header{padding-left:10px;padding-right:10px}.slideout>.so-body{flex:1;margin:-24px var(--neg-padding) 0;padding:24px var(--padding);overflow:hidden auto;position:relative}.slideout>.so-body>.so-sidebar{position:absolute;top:0;background:#fff;box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);width:350px;height:100%;max-width:100%;box-sizing:border-box;padding:0 var(--padding) var(--spacing);background-color:var(--gray-100);overflow:hidden auto;z-index:1}.slideout>.so-body>.so-sidebar:focus{box-shadow:var(--focus-ring)}body.ltr .slideout>.so-body>.so-sidebar{transition:right linear 250ms}body.rtl .slideout>.so-body>.so-sidebar{transition:left linear 250ms}.slideout>.so-body>.so-sidebar>.preview-thumb-container{margin:0 var(--neg-padding);height:auto;min-height:54px}.slideout>.so-body>.so-sidebar>.preview-thumb-container+.pane-header{border-radius:0}.slideout>.so-body>.so-sidebar .image-actions.is-mobile{margin:calc(var(--spacing)/2) 0 var(--spacing)}.slideout>.so-body>.so-sidebar>.meta.read-only:first-child{margin-top:var(--padding)}.slideout>.so-body>.so-sidebar>.meta.warning{box-shadow:none;border-bottom:1px solid var(--yellow-300)}.slideout>.so-body>.so-sidebar>.field>.input>.text.fullwidth{border-radius:0}.slideout>.so-body>.so-sidebar .notes{padding-top:var(--m);padding-bottom:var(--m)}.slideout>.so-footer{position:relative;display:flex;gap:8px;justify-content:space-between;flex-wrap:wrap;margin:0 var(--neg-padding) -24px;padding:8px var(--padding);background:#fff;box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);background-color:var(--gray-050);z-index:3}.slideout>.so-footer:focus{box-shadow:var(--focus-ring)}.slideout>.so-footer>.so-extra{flex:0 0 100%;margin:0 var(--neg-padding);padding:0 var(--padding) 8px;border-bottom:1px solid var(--hairline-color)}@media(min-width: 1536px){.slideout.has-sidebar .pane-header:not(.so-visible){display:none}.slideout.has-sidebar .sidebar-btn{display:none}.slideout.has-sidebar .so-body{display:flex;flex-direction:row;padding:0;overflow:hidden}.slideout.has-sidebar .so-body>.so-content{position:relative;z-index:2;padding:24px;width:calc(100% - 350px);height:100%;box-sizing:border-box;overflow:hidden auto}body.ltr .slideout.has-sidebar .so-body>.so-content{border-right:1px solid var(--gray-200)}body.rtl .slideout.has-sidebar .so-body>.so-content{border-left:1px solid var(--gray-200)}.slideout.has-sidebar .so-body>.so-sidebar{position:relative;display:block !important;top:auto;right:auto !important;left:auto !important;height:100%;box-shadow:none}.slideout>.so-footer>.so-extra{margin:0;padding:0;border:none;flex:auto 0 1}}.header:after,.hud-header:after,.footer:after,.hud-footer:after,.body:after{content:\"\";display:block;height:0;clear:both;visibility:hidden}.header,.hud-header,.footer,.hud-footer{position:relative;z-index:1;box-sizing:border-box}.header,.hud-header,.footer,.hud-footer{background-color:var(--gray-100)}.header,.hud-header{border-radius:var(--large-border-radius) var(--large-border-radius) 0 0;padding:24px;box-shadow:inset 0 -1px 0 var(--hairline-color)}.header h1,.hud-header h1{margin:0}.footer,.hud-footer{border-radius:0 0 var(--large-border-radius) var(--large-border-radius);padding:var(--s) var(--xl);box-shadow:inset 0 1px 0 var(--hairline-color)}.footer.flex>*,.hud-footer.flex>*{margin-bottom:0}.modal .body,.hud .main{padding:24px;overflow:hidden;box-sizing:border-box}.pane .header,.modal .body .header{margin:-24px -24px 24px}.pane .footer,.modal .body .footer{margin:24px -24px -24px}.slideout-shade,.modal-shade,.hud-shade{z-index:100;position:fixed;top:0;left:0;width:100%;height:100%;display:none}.slideout-shade:not(.dark),.modal-shade:not(.dark){background-color:rgba(123,135,147,.35) !important}.slideout-shade.dark,.modal-shade.dark{background-color:rgba(31,41,51,.5) !important}.modal{position:fixed;overflow:hidden}.modal:not(.fitted):not(.fullscreen){width:66%;height:66%;min-width:600px;min-height:400px}.modal.fitted{width:auto;height:auto;min-width:0;min-height:0}.modal.fullscreen{width:100%;height:100%;border-radius:0}body.ltr .modal.alert .body{padding-left:76px}body.rtl .modal.alert .body{padding-right:76px}.modal.alert .body:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"alert\";font-size:40px;color:var(--light-text-color)}body.ltr .modal.alert .body:before{margin:-6px 0 0 -58px}body.rtl .modal.alert .body:before{margin:-6px -58px 0 0}body.ltr .modal.alert .body:before{float:left}body.rtl .modal.alert .body:before{float:right}body.ltr .modal.secure .body{padding-left:76px}body.rtl .modal.secure .body{padding-right:76px}.modal.secure .body:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"secure\";font-size:58px;color:var(--light-text-color)}body.ltr .modal.secure .body:before{margin:-14px 0 0 -56px}body.rtl .modal.secure .body:before{margin:-14px -56px 0 0}body.ltr .modal.secure .body:before{float:left}body.rtl .modal.secure .body:before{float:right}.modal .resizehandle{position:absolute;z-index:1;bottom:0;width:24px;height:24px;cursor:nwse-resize;padding:var(--xs)}body.ltr .modal .resizehandle{right:0}body.rtl .modal .resizehandle{left:0}.modal .resizehandle path{fill:var(--ui-control-color)}body.rtl .modal .resizehandle .ltr{display:none}body.ltr .modal .resizehandle .rtl{display:none}.hud{position:absolute;display:none;top:0}.hud.has-footer .tip-bottom{background-image:url(../images/hudtip_bottom_gray.png)}.hud .tip{position:absolute;z-index:101;background:no-repeat 0 0}.hud .tip-left{left:-15px;width:15px;height:30px;background-image:url(../images/hudtip_left.png)}.hud .tip-top{top:-15px;width:30px;height:15px;background-image:url(../images/hudtip_top.png)}.hud .tip-right{right:-15px;width:15px;height:30px;background-image:url(../images/hudtip_right.png)}.hud .tip-bottom{bottom:-15px;width:30px;height:15px;background-image:url(../images/hudtip_bottom.png)}.hud .hud-header,.hud .hud-footer{padding:var(--s) var(--xl)}.hud .body{overflow:hidden}.hud .body ::-webkit-scrollbar{appearance:none}.hud .body ::-webkit-scrollbar:vertical{width:11px}.hud .body ::-webkit-scrollbar:horizontal{height:11px}.hud .body ::-webkit-scrollbar-thumb{border-radius:8px;border:2px solid rgba(0,0,0,0);background-color:rgba(0,0,0,.5)}.hud .body ::-webkit-scrollbar-track{background-color:var(--gray-050)}.preview-thumb-container{position:relative;display:flex;flex-direction:row;align-items:center;height:190px;background-color:var(--gray-900);margin:0 var(--neg-padding) var(--spacing)}.preview-thumb-container.checkered img{background-color:var(--white);background-image:linear-gradient(45deg, var(--gray-100) 25%, transparent 25%),linear-gradient(135deg, var(--gray-100) 25%, transparent 25%),linear-gradient(45deg, transparent 75%, var(--gray-100) 75%),linear-gradient(135deg, transparent 75%, var(--gray-100) 75%);background-size:17px 17px;background-position:0 0,8.5px 0,8.5px -8.5px,0 8.5px}.preview-thumb-container.editable{cursor:pointer}.preview-thumb-container.loading:after{content:\"\";font-size:0;display:block;position:absolute;width:100%;height:100%;left:0;top:0;background-color:rgba(31,41,51,.8)}.preview-thumb-container.loading .spinner{color:var(--white);z-index:1}#details .preview-thumb-container{border-radius:var(--large-border-radius);overflow:hidden}.preview-thumb-container .preview-thumb{display:flex;flex-direction:column;align-items:center;width:100%;height:100%}.preview-thumb-container .preview-thumb img{display:block;max-width:100%;max-height:190px}.image-actions.is-mobile{margin:calc(var(--spacing)/2*-1) var(--neg-padding) var(--spacing);display:grid;grid-template-columns:1fr 1fr}.button-fade .buttons{opacity:0;position:absolute;top:10px;margin:0;transition:opacity linear 100ms}body.ltr .button-fade .buttons{right:10px}body.rtl .button-fade .buttons{left:10px}.button-fade .buttons .btn{--ui-control-color: var(--white);--ui-control-hover-color: var(--white);--ui-control-active-color: var(--white);--interaction-background-color: var(--gray-700);background-color:var(--gray-600);color:var(--white);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-weight:500;--light-color: var(--white);--dark-color: var(--gray-800);--focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color)}.button-fade .buttons .btn:hover{background-color:var(--interaction-background-color) !important}.button-fade .buttons .btn:not(.disabled):not(.loading):not(.dashed):focus,.button-fade .buttons .btn:not(.disabled):not(.loading):not(.dashed).focus,.button-fade .buttons .btn:not(.disabled):not(.loading):not(.dashed):hover{background-color:var(--interaction-background-color)}.button-fade:hover .buttons,.button-fade:focus-within .buttons{opacity:1}.elementselectormodal{--content-padding: 24px;padding-bottom:50px;user-select:none}.elementselectormodal .body{position:relative;height:100%}.elementselectormodal .body .spinner.big{position:absolute;top:50%;left:50%;margin:-24px 0 0 -24px}.elementselectormodal .body .content{height:calc(100% + 48px)}.elementselectormodal .body .content .sidebar{position:absolute;top:0;height:100%;overflow:auto;padding:var(--content-padding) 0}body.ltr .elementselectormodal .body .content .sidebar{margin-left:-249px}body.rtl .elementselectormodal .body .content .sidebar{margin-right:-249px}.elementselectormodal .body .content .main{margin:-24px;padding:var(--content-padding);height:100%;box-sizing:border-box;overflow:auto;position:relative}.elementselectormodal .body .content .main .elements.busy{min-height:calc(100% - 48px)}.elementselectormodal .body .content .main .elements .tableview table .element{display:inline-block}.elementselectormodal .body .content .main .elements .tableview table tr.disabled{opacity:1;color:var(--gray-200)}.elementselectormodal .body .content .main .elements .tableview table tr.disabled .element{opacity:.25}.elementselectormodal .body .content .main .elements .tableview table tr th,.elementselectormodal .body .content .main .elements .tableview table tr td{cursor:default}body.ltr .elementselectormodal .body .content .main .elements .tableview table tr td:first-child{padding-left:7px}body.rtl .elementselectormodal .body .content .main .elements .tableview table tr td:first-child{padding-right:7px}.elementselectormodal .body .content .main .elements .structure .row{margin-top:1px}.elementselectormodal .footer{position:absolute;bottom:0;left:0;width:100%;margin:0;box-sizing:border-box}body.ltr .elementselectormodal .footer .spinner{float:right}body.rtl .elementselectormodal .footer .spinner{float:left}body.ltr .elementselectormodal .footer .spinner{margin-right:-24px}body.rtl .elementselectormodal .footer .spinner{margin-left:-24px}.elementselectormodal .main-header,.customize-sources-modal .main-header{display:flex;align-items:center;margin-bottom:var(--s)}.elementselectormodal .main-heading,.customize-sources-modal .main-heading{margin-bottom:0}.elementselectormodal .nav-toggle,.customize-sources-modal .nav-toggle{height:var(--touch-target-size);width:var(--touch-target-size);color:var(--ui-control-color)}body.ltr .elementselectormodal .nav-toggle,body.ltr .customize-sources-modal .nav-toggle{margin-left:4px}body.rtl .elementselectormodal .nav-toggle,body.rtl .customize-sources-modal .nav-toggle{margin-right:4px}.elementselectormodal .nav-toggle:hover,.customize-sources-modal .nav-toggle:hover{color:var(--gray-500)}.elementselectormodal .sidebar-header,.customize-sources-modal .sidebar-header{display:flex;justify-content:flex-end;padding:0 var(--s);margin-bottom:var(--s)}.elementselectormodal .nav-close,.customize-sources-modal .nav-close{height:var(--touch-target-size);width:var(--touch-target-size)}.element-hud-form .buttons{position:relative}.element-hud-form .buttons .spinner{position:absolute;top:0}body.ltr .element-hud-form .buttons .spinner{right:-24px}body.rtl .element-hud-form .buttons .spinner{left:-24px}.element-index-view-menu{width:400px;max-width:calc(100% - 20px);padding:0 !important}.element-index-view-menu .meta{padding-top:var(--s);padding-bottom:var(--s)}.element-index-view-menu .table-columns-field{align-items:flex-start}.element-index-view-menu .table-columns-field .input{padding:13px 0}.element-index-view-menu .menu-footer{margin:0 !important;padding:var(--s) var(--xl) !important;background-color:var(--gray-050)}body.ltr .element-index-view-menu-table-column .icon.move{margin-right:10px}body.rtl .element-index-view-menu-table-column .icon.move{margin-left:10px}.sort-field .input .flex .btngroup .btn{width:42px}.sort-field .input .flex .flex-grow{max-width:calc(100% - 85px - var(--s))}@media screen and (max-width: 350px){.sort-field .input .flex{flex-direction:column}.sort-field .input .flex>*{width:100%}.sort-field .input .flex .flex-grow{max-width:none}}.element-filter-hud.loading .body{padding:50px;display:flex;align-items:center;justify-content:center}.element-filter-hud .body,.element-filter-hud .main{overflow:visible}.address-cards{display:grid;gap:var(--m) var(--m);grid-template-columns:repeat(1, minmax(0, 1fr));grid-auto-rows:minmax(0, 1fr)}.so-content .address-cards{grid-template-columns:repeat(1, minmax(0, 1fr)) !important}.address-cards__add-btn{padding:1rem;min-height:8rem;height:auto;width:100%}.address-card.error{border:1px solid #cf1124}.address-card.error:hover{border-color:#cf1124}@media(min-width: 1024px){.address-cards{grid-template-columns:repeat(2, minmax(0, 1fr))}}@media(min-width: 1280px){.address-cards{grid-template-columns:repeat(3, minmax(0, 1fr))}.so-content .address-cards{grid-template-columns:repeat(2, minmax(0, 1fr)) !important}}@media(min-width: 1536px){.address-cards{grid-template-columns:repeat(4, minmax(0, 1fr))}}.address-card{border:1px solid #eee;border-radius:.375rem;padding:1rem;min-height:4rem}.address-card:hover{border-color:#ddd;background-color:#fafafa;cursor:pointer}.address-card .address-card-header{display:flex;flex-wrap:nowrap;justify-content:space-between}.address-card .address-card-header-actions{display:flex;justify-content:flex-end}.address-card .address-card-label{background:#e6f1fe;color:#2563eb;padding:.125rem .5rem;border-radius:.25rem;font-size:.75rem;text-transform:uppercase;font-weight:500;margin-bottom:.75rem}.ltr .address-card .address-card-label{margin-right:.5rem}.rtl .address-card .address-card-label{margin-left:.5rem}.logoutwarningmodalshade,.loginmodalshade{z-index:101}#logoutwarningmodal,#loginmodal,#elevatedsessionmodal,.prompt{width:500px}#logoutwarningmodal,#loginmodal{z-index:101}.prompt{height:auto;min-height:auto}.deleteusermodal .content-summary{margin:-24px -24px 24px;padding:24px;background-color:var(--gray-050)}.deleteusermodal .options label{display:inline-block;line-height:30px}.deleteusermodal .elementselect{display:inline-block;vertical-align:middle}body.ltr .deleteusermodal .elementselect{margin-left:10px}body.rtl .deleteusermodal .elementselect{margin-right:10px}body.ltr .deleteusermodal .buttons .spinner{margin-right:-20px}body.rtl .deleteusermodal .buttons .spinner{margin-left:-20px}.dropdownsettingsmodal{width:auto;height:auto;min-width:0;min-height:0;max-width:400px}.dropdownsettingsmodal .body{max-height:100%;overflow-y:auto}.previewmodal.zilch{padding:100px 0;display:flex;align-items:center;justify-content:center}.menu,.ui-datepicker,.ui-timepicker-list{z-index:100;border-radius:4px;padding:0 14px;overflow:auto;background:#fff;user-select:none;box-shadow:0 0 0 1px rgba(31,41,51,.1),0 5px 20px rgba(31,41,51,.25)}.ui-datepicker,.ui-timepicker-list{padding:0}.menu{display:none;position:absolute}.menu h6:first-child{margin-top:14px !important}body.ltr .menu ul.padded li a,body.ltr .menu ul.padded li .menu-option{padding-left:24px}body.rtl .menu ul.padded li a,body.rtl .menu ul.padded li .menu-option{padding-right:24px}.menu ul.padded li a[data-icon]:before,.menu ul.padded li a.icon:before,.menu ul.padded li a.sel:before,.menu ul.padded li .menu-option[data-icon]:before,.menu ul.padded li .menu-option.icon:before,.menu ul.padded li .menu-option.sel:before{font-size:14px;color:var(--ui-control-color)}body.ltr .menu ul.padded li a[data-icon]:before,body.ltr .menu ul.padded li a.icon:before,body.ltr .menu ul.padded li a.sel:before,body.ltr .menu ul.padded li .menu-option[data-icon]:before,body.ltr .menu ul.padded li .menu-option.icon:before,body.ltr .menu ul.padded li .menu-option.sel:before{float:left}body.rtl .menu ul.padded li a[data-icon]:before,body.rtl .menu ul.padded li a.icon:before,body.rtl .menu ul.padded li a.sel:before,body.rtl .menu ul.padded li .menu-option[data-icon]:before,body.rtl .menu ul.padded li .menu-option.icon:before,body.rtl .menu ul.padded li .menu-option.sel:before{float:right}body.ltr .menu ul.padded li a[data-icon]:before,body.ltr .menu ul.padded li a.icon:before,body.ltr .menu ul.padded li a.sel:before,body.ltr .menu ul.padded li .menu-option[data-icon]:before,body.ltr .menu ul.padded li .menu-option.icon:before,body.ltr .menu ul.padded li .menu-option.sel:before{margin:3px 0 0 -17px}body.rtl .menu ul.padded li a[data-icon]:before,body.rtl .menu ul.padded li a.icon:before,body.rtl .menu ul.padded li a.sel:before,body.rtl .menu ul.padded li .menu-option[data-icon]:before,body.rtl .menu ul.padded li .menu-option.icon:before,body.rtl .menu ul.padded li .menu-option.sel:before{margin:3px -17px 0 0}.menu ul.padded li a[data-icon].error:before,.menu ul.padded li a.icon.error:before,.menu ul.padded li a.sel.error:before,.menu ul.padded li .menu-option[data-icon].error:before,.menu ul.padded li .menu-option.icon.error:before,.menu ul.padded li .menu-option.sel.error:before{color:var(--error-color)}.menu ul.padded li a.sel:not([data-icon]):before,.menu ul.padded li .menu-option.sel:not([data-icon]):before{content:\"check\"}.menu ul li a,.menu ul li .menu-option{margin:0 -14px;padding:10px 14px;color:#3f4d5a;text-decoration:none;white-space:nowrap;font-size:14px;cursor:default;-webkit-appearance:none}.menu ul li a:not(.flex),.menu ul li .menu-option:not(.flex){display:table !important;box-sizing:border-box;width:calc(100% + 28px)}body.ltr .menu ul li a:not(.flex),body.ltr .menu ul li .menu-option:not(.flex){text-align:left}body.rtl .menu ul li a:not(.flex),body.rtl .menu ul li .menu-option:not(.flex){text-align:right}.menu ul li a.sel,.menu ul li .menu-option.sel{cursor:default}.menu ul li a .shortcut,.menu ul li .menu-option .shortcut{padding:0 4px;border-radius:var(--medium-border-radius);box-shadow:0 0 0 1px rgba(81,95,108,.25),0 1px 3px -1px rgba(81,95,108,.5)}body.ltr .menu ul li a .shortcut,body.ltr .menu ul li .menu-option .shortcut{float:right}body.rtl .menu ul li a .shortcut,body.rtl .menu ul li .menu-option .shortcut{float:left}body.ltr .menu ul li a .shortcut,body.ltr .menu ul li .menu-option .shortcut{margin-left:14px}body.rtl .menu ul li a .shortcut,body.rtl .menu ul li .menu-option .shortcut{margin-right:14px}.menu>.flex{margin-top:10px;margin-bottom:10px;position:relative}body.ltr .menu>.flex.padded{margin-left:-14px}body.rtl .menu>.flex.padded{margin-right:-14px}body.ltr .menu>.flex.padded{padding-left:24px}body.rtl .menu>.flex.padded{padding-right:24px}.menu>.flex.padded.sel:before{position:absolute;top:36px;content:\"check\";font-size:14px;color:var(--light-text-color)}body.ltr .menu>.flex.padded.sel:before{left:7px}body.rtl .menu>.flex.padded.sel:before{right:7px}.menu hr{margin:5px -14px}.menu .go:after{color:inherit}.menubtn span.icon,.menu span.icon{display:inline-block;margin-top:-1px;width:10px;text-align:center;font-size:14px;color:var(--ui-control-color)}body.ltr .menubtn span.icon,body.ltr .menu span.icon{margin-right:10px}body.rtl .menubtn span.icon,body.rtl .menu span.icon{margin-left:10px}.menu:not(.menu--disclosure) ul li a:not(.sel):not(.disabled):hover,.menu:not(.menu--disclosure):not(:hover) ul li a:not(.disabled).hover{color:#fff;background-color:#606d7b;--text-color: var(--white);--light-text-color: var(--gray-100);--ui-control-color: var(--gray-050);--ui-control-hover-color: var(--gray-100);--ui-control-active-color: var(--gray-100)}.menu:not(.menu--disclosure) ul li a:not(.sel):not(.disabled):hover span.icon,.menu:not(.menu--disclosure) ul li a:not(.sel):not(.disabled):hover:before,.menu:not(.menu--disclosure):not(:hover) ul li a:not(.disabled).hover span.icon,.menu:not(.menu--disclosure):not(:hover) ul li a:not(.disabled).hover:before{color:var(--menu-option-active-color)}.menu:not(.menu--disclosure) ul li a:not(.sel):not(.disabled):hover.error,.menu:not(.menu--disclosure):not(:hover) ul li a:not(.disabled).hover.error{color:var(--menu-option-active-color) !important}body.ltr .menu hr.padded,body.ltr .menu h6.padded{margin-left:10px}body.rtl .menu hr.padded,body.rtl .menu h6.padded{margin-right:10px}.menu--disclosure ul li>a:hover,.menu--disclosure ul li>.menu-option:hover{color:#3f4d5a;background-color:#f3f7fc}body:not(.reduce-focus-visibility) .menu--disclosure ul li>a:focus,body.reduce-focus-visibility .menu--disclosure ul li>a:focus-visible,body:not(.reduce-focus-visibility) .menu--disclosure ul li>.menu-option:focus,body.reduce-focus-visibility .menu--disclosure ul li>.menu-option:focus-visible{box-shadow:inset 0 0 0 3px hsla(var(--dark-focus-hsl), 0.7)}.tagselect .elements{display:inline}.tagselect .element.small{clear:none}.tagselect .add{position:relative;z-index:1;display:inline-block;width:12em}body.ltr .tagselect .add{margin:7px 7px 0 0}body.rtl .tagselect .add{margin:7px 0 0 7px}body.ltr .tagselect .add .text{padding-right:30px}body.rtl .tagselect .add .text{padding-left:30px}.tagselect .add .spinner{position:absolute;top:0}body.ltr .tagselect .add .spinner{right:5px}body.rtl .tagselect .add .spinner{left:5px}body.ltr .tagselect.elementselect .element,body.rtl .tagselect.elementselect .element{float:none !important;display:inline-block}body.ltr .tagmenu ul li a{padding-left:26px}body.rtl .tagmenu ul li a{padding-right:26px}body.ltr .tagmenu ul li a:before{float:left}body.rtl .tagmenu ul li a:before{float:right}body.ltr .tagmenu ul li a:before{margin:3px 0 0 -18px}body.rtl .tagmenu ul li a:before{margin:3px -18px 0 0}.shadow-box{border-radius:var(--large-border-radius);border:1px solid var(--gray-200);box-shadow:0 1px 5px -1px rgba(31,41,51,.2)}table.shadow-box,table.editable{border-collapse:separate;border-spacing:0}table.shadow-box thead tr:first-child th:first-child,table.shadow-box thead tr:first-child th:first-child.disabled:after,table.shadow-box thead tr:first-child td:first-child,table.shadow-box thead tr:first-child td:first-child.disabled:after,table.shadow-box tbody:first-child tr:first-child th:first-child,table.shadow-box tbody:first-child tr:first-child th:first-child.disabled:after,table.shadow-box tbody:first-child tr:first-child td:first-child,table.shadow-box tbody:first-child tr:first-child td:first-child.disabled:after,table.shadow-box caption+tbody tr:first-child th:first-child,table.shadow-box caption+tbody tr:first-child th:first-child.disabled:after,table.shadow-box caption+tbody tr:first-child td:first-child,table.shadow-box caption+tbody tr:first-child td:first-child.disabled:after,table.editable thead tr:first-child th:first-child,table.editable thead tr:first-child th:first-child.disabled:after,table.editable thead tr:first-child td:first-child,table.editable thead tr:first-child td:first-child.disabled:after,table.editable tbody:first-child tr:first-child th:first-child,table.editable tbody:first-child tr:first-child th:first-child.disabled:after,table.editable tbody:first-child tr:first-child td:first-child,table.editable tbody:first-child tr:first-child td:first-child.disabled:after,table.editable caption+tbody tr:first-child th:first-child,table.editable caption+tbody tr:first-child th:first-child.disabled:after,table.editable caption+tbody tr:first-child td:first-child,table.editable caption+tbody tr:first-child td:first-child.disabled:after{border-top-left-radius:var(--medium-border-radius)}table.shadow-box thead tr:first-child th:last-child,table.shadow-box thead tr:first-child th:last-child.disabled:after,table.shadow-box thead tr:first-child td:last-child,table.shadow-box thead tr:first-child td:last-child.disabled:after,table.shadow-box tbody:first-child tr:first-child th:last-child,table.shadow-box tbody:first-child tr:first-child th:last-child.disabled:after,table.shadow-box tbody:first-child tr:first-child td:last-child,table.shadow-box tbody:first-child tr:first-child td:last-child.disabled:after,table.shadow-box caption+tbody tr:first-child th:last-child,table.shadow-box caption+tbody tr:first-child th:last-child.disabled:after,table.shadow-box caption+tbody tr:first-child td:last-child,table.shadow-box caption+tbody tr:first-child td:last-child.disabled:after,table.editable thead tr:first-child th:last-child,table.editable thead tr:first-child th:last-child.disabled:after,table.editable thead tr:first-child td:last-child,table.editable thead tr:first-child td:last-child.disabled:after,table.editable tbody:first-child tr:first-child th:last-child,table.editable tbody:first-child tr:first-child th:last-child.disabled:after,table.editable tbody:first-child tr:first-child td:last-child,table.editable tbody:first-child tr:first-child td:last-child.disabled:after,table.editable caption+tbody tr:first-child th:last-child,table.editable caption+tbody tr:first-child th:last-child.disabled:after,table.editable caption+tbody tr:first-child td:last-child,table.editable caption+tbody tr:first-child td:last-child.disabled:after{border-top-right-radius:var(--medium-border-radius)}table.shadow-box thead:last-child tr:last-child th:first-child,table.shadow-box thead:last-child tr:last-child th:first-child.disabled:after,table.shadow-box thead:last-child tr:last-child td:first-child,table.shadow-box thead:last-child tr:last-child td:first-child.disabled:after,table.shadow-box tbody:last-child tr:last-child th:first-child,table.shadow-box tbody:last-child tr:last-child th:first-child.disabled:after,table.shadow-box tbody:last-child tr:last-child td:first-child,table.shadow-box tbody:last-child tr:last-child td:first-child.disabled:after,table.editable thead:last-child tr:last-child th:first-child,table.editable thead:last-child tr:last-child th:first-child.disabled:after,table.editable thead:last-child tr:last-child td:first-child,table.editable thead:last-child tr:last-child td:first-child.disabled:after,table.editable tbody:last-child tr:last-child th:first-child,table.editable tbody:last-child tr:last-child th:first-child.disabled:after,table.editable tbody:last-child tr:last-child td:first-child,table.editable tbody:last-child tr:last-child td:first-child.disabled:after{border-bottom-left-radius:calc(var(--large-border-radius) - 1px)}table.shadow-box thead:last-child tr:last-child th:last-child,table.shadow-box thead:last-child tr:last-child th:last-child.disabled:after,table.shadow-box thead:last-child tr:last-child td:last-child,table.shadow-box thead:last-child tr:last-child td:last-child.disabled:after,table.shadow-box tbody:last-child tr:last-child th:last-child,table.shadow-box tbody:last-child tr:last-child th:last-child.disabled:after,table.shadow-box tbody:last-child tr:last-child td:last-child,table.shadow-box tbody:last-child tr:last-child td:last-child.disabled:after,table.editable thead:last-child tr:last-child th:last-child,table.editable thead:last-child tr:last-child th:last-child.disabled:after,table.editable thead:last-child tr:last-child td:last-child,table.editable thead:last-child tr:last-child td:last-child.disabled:after,table.editable tbody:last-child tr:last-child th:last-child,table.editable tbody:last-child tr:last-child th:last-child.disabled:after,table.editable tbody:last-child tr:last-child td:last-child,table.editable tbody:last-child tr:last-child td:last-child.disabled:after{border-bottom-right-radius:calc(var(--large-border-radius) - 1px)}.text,.passwordwrapper,.border-box,.matrix-configurator>.field>.input,.selectize.multiselect .selectize-input,.multiselect>select{border-radius:3px;border:1px solid var(--input-border-color);background-color:#fbfcfe;background-clip:padding-box}.text.focus,.passwordwrapper.focus,.border-box.focus,.selectize.multiselect .selectize-input.focus{box-shadow:var(--focus-ring)}body:not(.reduce-focus-visibility) .text:focus,body.reduce-focus-visibility .text:focus-visible,body:not(.reduce-focus-visibility) .passwordwrapper:focus,body.reduce-focus-visibility .passwordwrapper:focus-visible,body:not(.reduce-focus-visibility) .border-box:focus,body.reduce-focus-visibility .border-box:focus-visible,body:not(.reduce-focus-visibility) .selectize.multiselect .selectize-input:focus,body.reduce-focus-visibility .selectize.multiselect .selectize-input:focus-visible{box-shadow:var(--focus-ring)}input.text,textarea.text,.text>input,.text>textarea,table.editable textarea,.selectize.multiselect .selectize-input{font-size:14px;line-height:20px;color:var(--text-color);min-height:3px;box-sizing:border-box;appearance:none}.selectize.multiselect .selectize-input{line-height:18px}textarea.text.fullwidth{display:block}.multitext .multitextrow:after{content:\"\";display:block;height:0;clear:both;visibility:hidden}body.ltr .multitext .multitextrow:first-child .text:first-child{border-top-left-radius:var(--medium-border-radius)}body.rtl .multitext .multitextrow:first-child .text:first-child{border-top-right-radius:var(--medium-border-radius)}body.ltr .multitext .multitextrow:first-child .text:last-child{border-top-right-radius:var(--medium-border-radius)}body.rtl .multitext .multitextrow:first-child .text:last-child{border-top-left-radius:var(--medium-border-radius)}body.ltr .multitext .multitextrow:last-child .text:first-child{border-bottom-left-radius:var(--medium-border-radius)}body.rtl .multitext .multitextrow:last-child .text:first-child{border-bottom-right-radius:var(--medium-border-radius)}body.ltr .multitext .multitextrow:last-child .text:last-child{border-bottom-right-radius:var(--medium-border-radius)}body.rtl .multitext .multitextrow:last-child .text:last-child{border-bottom-left-radius:var(--medium-border-radius)}.multitext .multitextrow:not(:first-child) .text{margin-top:-1px}.multitext .multitextrow .text{border-radius:0;float:left;box-sizing:border-box}body.ltr .multitext .multitextrow .text:not(:first-child){margin-left:-1px}body.rtl .multitext .multitextrow .text:not(:first-child){margin-right:-1px}.multitext .multitextrow .text:first-child:nth-last-child(1){width:100%}.multitext .multitextrow .text:first-child:nth-last-child(2){width:50%}.multitext .multitextrow .text:first-child:nth-last-child(2)~.text{width:calc(50% + 1px)}.multitext .multitextrow .text.error{position:relative;z-index:1}.multitext .multitextrow .text:focus,.multitext .multitextrow .selectize.multiselect .selectize-input.focus{position:relative;z-index:2}.chars-left{position:relative;color:var(--light-text-color)}body.ltr .chars-left{float:right}body.rtl .chars-left{float:left}body.ltr .chars-left{margin:-27px 7px 0 0}body.rtl .chars-left{margin:-27px 0 0 7px}.input.ltr>.chars-left{float:right !important;margin-right:7px !important}.input.rtl>.chars-left{float:left !important;margin-left:7px !important}.chars-left.negative-chars-left{color:var(--error-color)}.field,fieldset{position:relative;margin:24px 0}.flex>.field,.flex>fieldset{margin-top:0;margin-bottom:0}.field{min-inline-size:initial}.field>.status-badge{position:absolute;top:0;width:2px;height:100%;content:\"\";cursor:help}body.ltr .field>.status-badge{left:0}body.rtl .field>.status-badge{right:0}.field>.status-badge.modified{background-color:var(--blue-600)}.field>.status-badge.outdated{background-color:var(--pending-color)}.field>.heading{display:flex;flex-wrap:wrap;align-items:center;position:relative;margin-top:-5px;margin-bottom:5px}.field>.heading>label,.field>.heading>legend{font-weight:bold;color:var(--medium-dark-text-color)}.field>.heading>label code,.field>.heading>legend code{font-size:1em !important}body.ltr .field>.heading>label .info,body.ltr .field>.heading>legend .info{margin-left:5px}body.rtl .field>.heading>label .info,body.rtl .field>.heading>legend .info{margin-right:5px}.field>.heading .t9n-indicator{color:var(--light-text-color)}body.ltr .field>.heading .t9n-indicator{margin-left:7px}body.rtl .field>.heading .t9n-indicator{margin-right:7px}.field>.heading+.instructions{margin-top:-3px}.field>.heading>.instructions{width:100%}.field>.instructions{margin-bottom:5px}.field>.input{position:relative}.field>.input:after{content:\"\";display:block;height:0;clear:both;visibility:hidden}.field>.input+.instructions{margin:5px 0 0}.field>.notice,.field>.warning{margin:5px 0 0}.field>.instructions,.field>.heading>.instructions,.checkboxfield .instructions{color:var(--medium-text-color)}.field>.instructions img,.field>.instructions video,.field>.instructions embed,.field>.instructions iframe,.field>.heading>.instructions img,.field>.heading>.instructions video,.field>.heading>.instructions embed,.field>.heading>.instructions iframe,.checkboxfield .instructions img,.checkboxfield .instructions video,.checkboxfield .instructions embed,.checkboxfield .instructions iframe{max-width:100% !important}.field>.instructions ul,.field>.instructions ol,.field>.heading>.instructions ul,.field>.heading>.instructions ol,.checkboxfield .instructions ul,.checkboxfield .instructions ol{margin:1em 0}body.ltr .field>.instructions ul,body.ltr .field>.instructions ol,body.ltr .field>.heading>.instructions ul,body.ltr .field>.heading>.instructions ol,body.ltr .checkboxfield .instructions ul,body.ltr .checkboxfield .instructions ol{padding-left:2em}body.rtl .field>.instructions ul,body.rtl .field>.instructions ol,body.rtl .field>.heading>.instructions ul,body.rtl .field>.heading>.instructions ol,body.rtl .checkboxfield .instructions ul,body.rtl .checkboxfield .instructions ol{padding-right:2em}.field>.instructions ul li,.field>.heading>.instructions ul li,.checkboxfield .instructions ul li{list-style-type:disc}.field>.instructions li+li,.field>.heading>.instructions li+li,.checkboxfield .instructions li+li{margin-top:.25em}.expand-status-btn{width:30px;height:17px;padding:0;line-height:16px;border-radius:var(--small-border-radius);color:var(--text-color)}body.ltr .expand-status-btn{margin-left:5px}body.rtl .expand-status-btn{margin-right:5px}.expand-status-btn:before{margin:0}.nested-fields{margin:-24px;padding:24px 24px 0}.nested-fields.hidden{display:block;height:0}.nested-fields>.field:last-child{padding-bottom:24px}input.checkbox{opacity:0;position:absolute;width:var(--checkbox-size);height:var(--checkbox-size)}input.checkbox+label,div.checkbox{display:inline-block;clear:none;position:relative;line-height:16px;height:16px;cursor:pointer}body.ltr input.checkbox+label,body.ltr div.checkbox{padding-left:21px}body.rtl input.checkbox+label,body.rtl div.checkbox{padding-right:21px}input.checkbox+label .info,div.checkbox .info{height:16px}input.checkbox:disabled+label,.disabled div.checkbox{cursor:default}body.ltr input.checkbox+label:empty,body.ltr div.checkbox:empty{padding-left:var(--checkbox-size)}body.rtl input.checkbox+label:empty,body.rtl div.checkbox:empty{padding-right:var(--checkbox-size)}input.checkbox+label:empty:after,div.checkbox:empty:after{content:\"\";font-size:0}input.checkbox+label:before,div.checkbox:before{display:block;position:absolute;top:0;width:var(--checkbox-size) !important;height:var(--checkbox-size);box-sizing:border-box;content:\"\";font-size:0;background-color:#fbfcfe;border:1px solid var(--input-border-color);background-clip:padding-box;border-radius:var(--small-border-radius)}body.ltr input.checkbox+label:before,body.ltr div.checkbox:before{left:0}body.rtl input.checkbox+label:before,body.rtl div.checkbox:before{right:0}input.checkbox:disabled+label,div.checkbox.disabled:before,div.checkbox.disabled+label{opacity:.25}input.checkbox:checked+label:before,div.checkbox.checked:before,.sel div.checkbox:before,input.checkbox:indeterminate+label:before,div.checkbox.indeterminate:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);line-height:var(--checkbox-size);color:var(--gray-900)}input.checkbox:checked:not(:indeterminate)+label:before,div.checkbox.checked:not(.indeterminate):before,.sel div.checkbox:not(.indeterminate):before{content:\"check\";font-size:15px}input.checkbox:indeterminate+label:before,div.checkbox.indeterminate:before{content:\"minus\";font-size:7px;text-align:center}body:not(.reduce-focus-visibility) input.checkbox:focus+label:before,body:not(.reduce-focus-visibility) :focus div.checkbox:before{box-shadow:var(--focus-ring)}body.reduce-focus-visibility input.checkbox:focus-visible+label:before,body.reduce-focus-visibility :focus-visible div.checkbox:before{box-shadow:var(--focus-ring)}.checkbox-icon:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);line-height:var(--checkbox-size);color:var(--enabled-color);content:\"check\";font-size:15px}body:not(.reduce-focus-visibility) .monaco-mouse-cursor-text:focus,body.reduce-focus-visibility .monaco-mouse-cursor-text:focus-visible{box-shadow:none !important}fieldset .checkboxfield{margin:5px 0}.checkboxfield .instructions,.checkboxfield .notice,.checkboxfield .warning{margin-top:2px}body.ltr .checkboxfield .instructions,body.ltr .checkboxfield .notice,body.ltr .checkboxfield .warning{padding-left:21px}body.rtl .checkboxfield .instructions,body.rtl .checkboxfield .notice,body.rtl .checkboxfield .warning{padding-right:21px}input.radio{opacity:0;position:absolute;width:var(--radio-size);height:var(--radio-size)}input.radio+label,div.radio{display:inline-block;clear:none;position:relative;line-height:1.7142857143;cursor:pointer}body.ltr input.radio+label,body.ltr div.radio{padding-left:21px}body.rtl input.radio+label,body.rtl div.radio{padding-right:21px}input.radio:disabled+label,.disabled div.radio{cursor:default}body.ltr input.radio+label:empty,body.ltr div.radio:empty{padding-left:var(--radio-size)}body.rtl input.radio+label:empty,body.rtl div.radio:empty{padding-right:var(--radio-size)}input.radio+label:before,input.radio+label:after,div.radio:before,div.radio:after{display:block;position:absolute;content:\"\";box-sizing:border-box;background-clip:padding-box;border-radius:100%}input.radio+label:before,div.radio:before{top:50%;left:0;transform:translateY(-50%);width:var(--radio-size);height:var(--radio-size);background-color:#fbfcfe;border:1px solid var(--input-border-color)}input.radio+label:after,div.radio:after{top:50%;left:4px;transform:translateY(-50%);width:calc(var(--radio-size) - 8px);height:calc(var(--radio-size) - 8px)}input.radio:disabled+label,div.radio.disabled:before,div.radio.disabled+label{opacity:.25}input.radio:checked+label:after,div.radio.checked:after,.sel div.radio:after{background:var(--gray-900)}body:not(.reduce-focus-visibility) input.radio:focus+label:before,body:not(.reduce-focus-visibility) :focus div.radio:before{box-shadow:var(--focus-ring)}body.reduce-focus-visibility input.radio:focus-visible+label:before,body.reduce-focus-visibility :focus-visible div.radio:before{box-shadow:var(--focus-ring)}.multiselect>select{color:var(--text-color);font-size:14px;appearance:none}body:not(.reduce-focus-visibility) .multiselect>select:focus,body.reduce-focus-visibility .multiselect>select:focus-visible{box-shadow:var(--focus-ring)}.multiselect>select option{padding:1px 8px}.text,.selectize.multiselect .selectize-input{padding:6px 9px}.text{background-color:var(--white)}.text:not(.small){box-sizing:border-box;min-height:34px}.text.small{padding:3px}.text.readable{padding:16px 18px;font-size:16px;line-height:22px}.text.readable+.chars-left{margin-top:-23px}body.ltr .text.clearable{padding-right:var(--touch-target-size)}body.rtl .text.clearable{padding-left:var(--touch-target-size)}.text input{margin:0;padding:0;border:none;background-color:rgba(0,0,0,0)}.input.errors>.text,.input.errors>.border-box,.input.errors>.passwordwrapper,.input.errors>.autosuggest-container .text,.text.error{border:1px solid var(--error-color) !important}.texticon{position:relative;cursor:text;min-width:130px}.texticon.icon:before{position:absolute;top:9px;color:var(--ui-control-color)}body.ltr .texticon.icon:before{left:9px}body.rtl .texticon.icon:before{right:9px}body.ltr .texticon.icon .text{padding-left:26px}body.rtl .texticon.icon .text{padding-right:26px}.texticon .clear-btn{position:absolute;top:calc((var(--touch-target-size) - 34px)/-2);width:var(--touch-target-size);height:var(--touch-target-size)}body.ltr .texticon .clear-btn{right:0}body.rtl .texticon .clear-btn{left:0}body.ltr .texticon.has-filter-btn .text{padding-right:26px}body.rtl .texticon.has-filter-btn .text{padding-left:26px}.texticon.has-filter-btn .filter-btn{position:absolute;top:4px;padding:0 7px 4px;font-size:14px;line-height:22px;cursor:pointer;border-radius:13px}body.ltr .texticon.has-filter-btn .filter-btn{right:4px}body.rtl .texticon.has-filter-btn .filter-btn{left:4px}.texticon.has-filter-btn .filter-btn:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"filter\";color:var(--medium-text-color)}.texticon.has-filter-btn .filter-btn:hover{background-color:var(--gray-100)}.texticon.has-filter-btn .filter-btn:active,.texticon.has-filter-btn .filter-btn.active{background-color:var(--gray-350)}.texticon.has-filter-btn .filter-btn:active:before,.texticon.has-filter-btn .filter-btn.active:before{color:var(--white)}body.ltr .texticon.has-filter-btn .text{padding-left:26px}body.rtl .texticon.has-filter-btn .text{padding-right:26px}body.ltr .texticon.has-filter-btn .text.clearable{padding-right:calc(30px + var(--touch-target-size))}body.rtl .texticon.has-filter-btn .text.clearable{padding-left:calc(30px + var(--touch-target-size))}body.ltr .texticon.has-filter-btn .clear-btn{right:30px}body.rtl .texticon.has-filter-btn .clear-btn{left:30px}.texthint-container{position:relative;height:0}.texthint{position:absolute;top:-1px;width:100%;color:var(--light-text-color);cursor:text}.passwordwrapper{position:relative}.passwordwrapper .password{border:none;background:rgba(0,0,0,0);padding-right:4rem;box-shadow:none}.passwordwrapper .password-toggle{color:var(--link-color);position:absolute;top:0;bottom:0;cursor:pointer}body.ltr .passwordwrapper .password-toggle{right:9px}body.rtl .passwordwrapper .password-toggle{left:9px}.passwordwrapper .password-toggle:hover{text-decoration:underline}.datetimewrapper{display:flex;flex-direction:row;align-items:center}body.ltr .datetimewrapper>.datewrapper+.timewrapper,body.ltr .datetimewrapper>.timewrapper+.timezone,body.ltr .datetimewrapper>.select{margin-left:5px}body.rtl .datetimewrapper>.datewrapper+.timewrapper,body.rtl .datetimewrapper>.timewrapper+.timezone,body.rtl .datetimewrapper>.select{margin-right:5px}.clear-btn{display:flex;justify-content:center;align-items:center;width:24px;cursor:pointer;color:var(--ui-control-color);border:none;padding:0;background:rgba(0,0,0,0)}.clear-btn:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"remove\"}.clear-btn:hover{color:var(--ui-control-hover-color)}.clear-btn:active{color:var(--ui-control-active-color)}.close-btn{position:relative}.close-btn:before,.close-btn:after{position:absolute;content:\"\";top:50%;left:50%;height:15px;width:2px;background-color:var(--ui-control-color);opacity:var(--icon-opacity)}.close-btn:before{transform:translate(-50%, -50%) rotate(-45deg)}.close-btn:after{transform:translate(-50%, -50%) rotate(45deg)}.close-btn:hover:before,.close-btn:hover:after{background-color:var(--ui-control-hover-color)}.close-btn:active:before,.close-btn:active:after{background-color:var(--ui-control-active-color)}.datewrapper,.timewrapper{display:inline-block;position:relative}.datewrapper .text,.timewrapper .text{position:relative;z-index:1;width:100%}.datewrapper .text+div[data-icon],.timewrapper .text+div[data-icon]{display:none}.datewrapper .text:placeholder-shown+div[data-icon],.datewrapper .text.empty-value+div[data-icon],.timewrapper .text:placeholder-shown+div[data-icon],.timewrapper .text.empty-value+div[data-icon]{display:block;position:absolute;top:calc(50% - 12px);z-index:0;color:var(--light-text-color)}body.ltr .datewrapper .text:placeholder-shown+div[data-icon],body.ltr .datewrapper .text.empty-value+div[data-icon],body.ltr .timewrapper .text:placeholder-shown+div[data-icon],body.ltr .timewrapper .text.empty-value+div[data-icon]{left:14px}body.rtl .datewrapper .text:placeholder-shown+div[data-icon],body.rtl .datewrapper .text.empty-value+div[data-icon],body.rtl .timewrapper .text:placeholder-shown+div[data-icon],body.rtl .timewrapper .text.empty-value+div[data-icon]{right:14px}.datewrapper .text:placeholder-shown+div[data-icon],.datewrapper .text:placeholder-shown+div[data-icon]:before,.datewrapper .text.empty-value+div[data-icon],.datewrapper .text.empty-value+div[data-icon]:before,.timewrapper .text:placeholder-shown+div[data-icon],.timewrapper .text:placeholder-shown+div[data-icon]:before,.timewrapper .text.empty-value+div[data-icon],.timewrapper .text.empty-value+div[data-icon]:before{user-select:none;pointer-events:none;z-index:1}.datewrapper{width:8em}.timewrapper{width:7em}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:var(--gray-400)}input:-ms-input-placeholder,textarea:-ms-input-placeholder{color:var(--gray-400)}input::-ms-input-placeholder,textarea::-ms-input-placeholder{color:var(--gray-400)}input:-moz-placeholder,textarea:-moz-placeholder{color:var(--gray-400)}input::-moz-placeholder,textarea::-moz-placeholder{color:var(--gray-400)}input::placeholder,textarea::placeholder{color:var(--gray-400)}::-ms-reveal,::-ms-clear{display:none}tr.indexingSession td{height:34px;padding:1px 10px}tr.indexingSession td.progress div.progressContainer{width:100%;display:flex;justify-content:space-between;align-items:center}tr.indexingSession td.progress div.progressContainer .progressbar{width:70%;position:relative;left:0;height:12px;z-index:1}tr.indexingSession td.progress div.progressContainer div.progressInfo{width:20%}.select:not(.selectize),.select:not(.selectize) select{position:relative;border-radius:5px;white-space:nowrap}.select:not(.selectize){max-width:100%;position:relative}:not(.flex)>.select:not(.selectize){display:inline-block}.select:not(.selectize):after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid currentColor;border-width:0 2px 2px 0;opacity:.8;transform:rotate(45deg);position:absolute;z-index:1;top:calc(50% - 5px);user-select:none;pointer-events:none}body.ltr .select:not(.selectize):after{right:9px}body.rtl .select:not(.selectize):after{left:9px}.select:not(.selectize) select{display:block;position:relative;max-width:100%;border:none;font-size:14px;line-height:20px;color:#3f4d5a;background-color:#dfe5ec;appearance:none;white-space:pre}body.ltr .select:not(.selectize) select{padding:7px 22px 7px 10px}body.rtl .select:not(.selectize) select{padding:7px 10px 7px 22px}.select:not(.selectize) select::-ms-expand{display:none}.select:not(.selectize).fullwidth select{min-width:100%}body:not(.reduce-focus-visibility) .select:not(.selectize) select:focus,body.reduce-focus-visibility .select:not(.selectize) select:focus-visible{outline-color:rgba(0,0,0,0);background-color:#cfd8e2;box-shadow:var(--focus-ring)}.select:not(.selectize).small:after{top:9px}.select:not(.selectize).small select{padding-top:4px !important;padding-bottom:4px !important;font-size:11px}.selectize .selectize-input{display:block;border-color:inherit;box-shadow:none;background-color:rgba(0,0,0,0)}.selectize.select .selectize-input:after{display:none}body .selectize-dropdown{border:none;z-index:100}.selectize.select{height:34px}.selectize.select input::-webkit-input-placeholder,.selectize.select textarea::-webkit-input-placeholder{color:var(--gray-700)}.selectize.select input:-ms-input-placeholder,.selectize.select textarea:-ms-input-placeholder{color:var(--gray-700)}.selectize.select input::-ms-input-placeholder,.selectize.select textarea::-ms-input-placeholder{color:var(--gray-700)}.selectize.select input:-moz-placeholder,.selectize.select textarea:-moz-placeholder{color:var(--gray-700)}.selectize.select input::-moz-placeholder,.selectize.select textarea::-moz-placeholder{color:var(--gray-700)}.selectize.select input::placeholder,.selectize.select textarea::placeholder{color:var(--gray-700)}.selectize.select:not(.fullwidth){width:25em}.selectize.select .selectize-control{max-width:100%;position:relative}:not(.flex)>.selectize.select .selectize-control{display:inline-block}.selectize.select .selectize-control:after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid currentColor;border-width:0 2px 2px 0;opacity:.8;transform:rotate(45deg);position:absolute;z-index:1;top:calc(50% - 5px);user-select:none;pointer-events:none}body.ltr .selectize.select .selectize-control:after{right:9px}body.rtl .selectize.select .selectize-control:after{left:9px}.selectize.select .selectize-input{position:relative;border-radius:5px;white-space:nowrap}.selectize.select .selectize-input.focus{box-shadow:var(--focus-ring)}.selectize.select .selectize-input{display:block;position:relative;max-width:100%;border:none;font-size:14px;line-height:20px;color:#3f4d5a;background-color:#dfe5ec;appearance:none}body.ltr .selectize.select .selectize-input{padding:7px 22px 7px 10px}body.rtl .selectize.select .selectize-input{padding:7px 10px 7px 22px}.selectize.select .selectize-input::-ms-expand{display:none}.selectize.select .selectize-control,.selectize.select .selectize-input{width:100%}.selectize.multiselect .selectize-input{min-height:34px;padding-bottom:3px}.selectize.multiselect .selectize-input.focus{box-shadow:var(--focus-ring)}.selectize.multiselect .selectize-input>.item{display:inline-block;border-radius:3px;padding:3px 7px;font-size:12px;line-height:14px;color:#3f4d5a;background-color:#e4edf6;display:inline-flex;flex-direction:row;padding:3px 7px !important}.selectize.multiselect .selectize-input>.item.active{background-color:#cdd8e4}.selectize.multiselect .selectize-input>.item>.remove{position:static;border-left:none;padding:0;font-size:0;color:var(--ui-control-color)}body.ltr .selectize.multiselect .selectize-input>.item>.remove{margin:-1px -3px 0 3px}body.rtl .selectize.multiselect .selectize-input>.item>.remove{margin:-1px 3px 0 -3px}.selectize.multiselect .selectize-input>.item>.remove:hover{color:var(--ui-control-hover-color);background-color:rgba(0,0,0,0)}.selectize.multiselect .selectize-input>.item>.remove:before{font-size:14px;font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"remove\"}body .selectize-dropdown{margin-top:1px}body .selectize-dropdown-content{z-index:100;border-radius:4px;padding:0 14px;overflow:auto;background:#fff;user-select:none;box-shadow:0 0 0 1px rgba(31,41,51,.1),0 5px 20px rgba(31,41,51,.25)}body .selectize-dropdown-content .option{min-height:18px}body .selectize-dropdown-content>div[data-value=new]:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"plus\";margin-right:5px}body .selectize-dropdown-content>div[data-value=new]:after{content:\"…\"}body .selectize-dropdown [data-selectable],body .selectize-dropdown .optgroup-header{margin:0 -14px;padding:10px 14px;color:#3f4d5a;text-decoration:none;white-space:nowrap}body .selectize-dropdown .optgroup-header{margin:14px 0 3px;font-size:11px;line-height:1.2;color:#606d7b;text-transform:uppercase;margin:0;padding:4px 0}body .selectize-dropdown .active{color:#fff;background-color:#606d7b}body .selectize-dropdown .active .light{color:inherit !important}.ui-datepicker{position:fixed;top:-300px;-padding:10px;width:210px;height:242px;z-index:101 !important}body.ltr .ui-datepicker{margin-left:1px}body.rtl .ui-datepicker{margin-right:1px}.ui-datepicker-header{padding:8px 8px 4px}body.ltr .ui-datepicker-prev{float:left}body.rtl .ui-datepicker-prev{float:right}body.ltr .ui-datepicker-next{float:right}body.rtl .ui-datepicker-next{float:left}.ui-datepicker-prev span,.ui-datepicker-next span{display:none}.ui-datepicker-prev,.ui-datepicker-next{width:20px;height:20px;display:flex;align-items:center;justify-content:center}.ui-datepicker-prev:hover:after,.ui-datepicker-next:hover:after{border-color:var(--link-color)}.ui-datepicker-prev:after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid currentColor;border-width:0 2px 2px 0;opacity:.8}body.ltr .ui-datepicker-prev:after{transform:rotate(135deg)}body.rtl .ui-datepicker-prev:after{transform:rotate(-45deg)}.ui-datepicker-next:after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid currentColor;border-width:0 2px 2px 0;opacity:.8}body.ltr .ui-datepicker-next:after{transform:rotate(-45deg)}body.rtl .ui-datepicker-next:after{transform:rotate(135deg)}.ui-datepicker-title{text-align:center}.ui-datepicker-calendar th,.ui-datepicker-calendar td{padding:2px !important}.ui-datepicker-calendar th span,.ui-datepicker-calendar td a{display:block;width:1.625rem;line-height:26px;text-align:center;color:var(--text-color)}.ui-datepicker-calendar th span{color:var(--medium-text-color);font-weight:normal}.ui-datepicker-calendar td a{border-radius:2px}.ui-datepicker-calendar td a:hover{background-color:var(--light-sel-color);text-decoration:none}.ui-datepicker-calendar td a.ui-state-active{background-color:var(--dark-sel-color);color:var(--white);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-weight:500;cursor:default}.ui-datepicker-calendar td.ui-datepicker-today a{border-radius:13px;box-shadow:inset 0 0 0 2px var(--light-sel-color)}.ui-timepicker-wrapper{z-index:101}.ui-timepicker-list{overflow-y:auto;width:calc(14px + 6em);height:210px;z-index:100}body.ltr .ui-timepicker-list{margin-left:1px}body.rtl .ui-timepicker-list{margin-right:1px}.ui-timepicker-list li{white-space:nowrap;cursor:pointer}body.ltr .ui-timepicker-list li{padding:2px 0 2px 14px}body.rtl .ui-timepicker-list li{padding:2px 14px 2px 0}.ui-timepicker-list li:hover{background-color:var(--light-sel-color)}.ui-timepicker-list li.ui-timepicker-selected{background-color:var(--dark-sel-color);color:var(--white);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-weight:500;cursor:default}.slide-picker{display:flex;height:15px;white-space:nowrap}.slide-picker a{border:1px solid var(--hairline-color);background-image:none;width:7px;height:13px;margin-left:0;display:inline-block;margin-top:1px;margin-bottom:1px;box-sizing:border-box}body.ltr .slide-picker a{border-left:none}body.rtl .slide-picker a{border-right:none}.slide-picker a:first-child{width:8px}body.ltr .slide-picker a:first-child{border-left:1px solid var(--gray-400) !important}body.rtl .slide-picker a:first-child{border-right:1px solid var(--gray-400) !important}.slide-picker:not(:hover) a.active,.slide-picker:hover a.active-hover{border-top-color:var(--gray-400);border-bottom-color:var(--gray-400);height:15px;margin-top:0;margin-bottom:0}body.ltr .slide-picker:not(:hover) a.active:first-child,body.ltr .slide-picker:hover a.active-hover:first-child{border-left:1px solid var(--gray-400)}body.rtl .slide-picker:not(:hover) a.active:first-child,body.rtl .slide-picker:hover a.active-hover:first-child{border-right:1px solid var(--gray-400)}body.ltr .slide-picker:not(:hover) a.active:first-child,body.ltr .slide-picker:hover a.active-hover:first-child{border-top-left-radius:var(--small-border-radius)}body.rtl .slide-picker:not(:hover) a.active:first-child,body.rtl .slide-picker:hover a.active-hover:first-child{border-top-right-radius:var(--small-border-radius)}body.ltr .slide-picker:not(:hover) a.active:first-child,body.ltr .slide-picker:hover a.active-hover:first-child{border-bottom-left-radius:var(--small-border-radius)}body.rtl .slide-picker:not(:hover) a.active:first-child,body.rtl .slide-picker:hover a.active-hover:first-child{border-bottom-right-radius:var(--small-border-radius)}body.ltr .slide-picker:not(:hover) a.last-active,body.ltr .slide-picker:hover a.last-active-hover{border-right:1px solid var(--gray-400)}body.rtl .slide-picker:not(:hover) a.last-active,body.rtl .slide-picker:hover a.last-active-hover{border-left:1px solid var(--gray-400)}body.ltr .slide-picker:not(:hover) a.last-active,body.ltr .slide-picker:hover a.last-active-hover{border-top-right-radius:var(--small-border-radius)}body.rtl .slide-picker:not(:hover) a.last-active,body.rtl .slide-picker:hover a.last-active-hover{border-top-left-radius:var(--small-border-radius)}body.ltr .slide-picker:not(:hover) a.last-active,body.ltr .slide-picker:hover a.last-active-hover{border-bottom-right-radius:var(--small-border-radius)}body.rtl .slide-picker:not(:hover) a.last-active,body.rtl .slide-picker:hover a.last-active-hover{border-bottom-left-radius:var(--small-border-radius)}.slide-picker:focus a.active{background-color:var(--light-sel-color)}ul.errors{margin-top:5px;list-style-type:square}body.ltr ul.errors{padding-left:20px}body.rtl ul.errors{padding-right:20px}ul.errors li{color:var(--error-color)}.message-container{position:absolute;z-index:100;top:0;width:100%;height:100%}body.ltr .message-container{left:0}body.rtl .message-container{right:0}.message-container.no-access{background-color:rgba(31,41,51,.5)}.message-container .pane{top:50%;margin-top:-33px !important;margin-left:auto;margin-right:auto;width:320px;box-shadow:0 25px 100px rgba(31,41,51,.5)}.autosuggest-container{position:relative}.autosuggest__results-container{position:absolute;z-index:2;width:100%;border-radius:var(--large-border-radius);background-color:var(--white);box-shadow:0 1px 5px -1px rgba(31,41,51,.2);box-sizing:border-box;padding:0 14px;text-align:left;font-family:system-ui,BlinkMacSystemFont,-apple-system,\"Segoe UI\",\"Roboto\",\"Oxygen\",\"Ubuntu\",\"Cantarell\",\"Fira Sans\",\"Droid Sans\",\"Helvetica Neue\",sans-serif;font-size:1em !important}.autosuggest__results-container .autosuggest__results-before{margin:14px 0 3px;font-size:11px;line-height:1.2;color:#606d7b;text-transform:uppercase;margin-top:14px !important}.autosuggest__results-container .autosuggest__results-item{margin:0 -14px;padding:10px 14px;color:#3f4d5a;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autosuggest__results-container .autosuggest__results-item:hover,.autosuggest__results-container .autosuggest__results-item.autosuggest__results-item--highlighted{color:#fff;background-color:#606d7b;cursor:pointer}.matrix-configurator>.field{max-width:none}.matrix-configurator>.field>.input{display:flex;align-items:stretch;background-color:var(--gray-050);box-shadow:none}.matrix-configurator .mc-sidebar{box-sizing:border-box}.matrix-configurator .mc-sidebar .mc-col-items{margin-top:-1px;padding-top:1px}.matrix-configurator .mc-sidebar.block-types{width:200px}body.ltr .matrix-configurator .mc-sidebar.block-types{border-top-left-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-sidebar.block-types{border-top-right-radius:var(--small-border-radius)}body.ltr .matrix-configurator .mc-sidebar.block-types{border-bottom-left-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-sidebar.block-types{border-bottom-right-radius:var(--small-border-radius)}body.ltr .matrix-configurator .mc-sidebar.block-types>.mc-col-inner-container>.mc-col-heading{border-top-left-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-sidebar.block-types>.mc-col-inner-container>.mc-col-heading{border-top-right-radius:var(--small-border-radius)}.matrix-configurator .mc-sidebar.block-types>.mc-col-inner-container>.mc-col-items .btn{margin:14px}.matrix-configurator .mc-sidebar.mc-fields{width:240px;z-index:1;background:#fff;box-shadow:-1px 0 0 0 rgba(31,41,51,.1),1px 0 0 0 rgba(31,41,51,.1)}.matrix-configurator .mc-sidebar.mc-fields .mc-col-items{padding:14px}.matrix-configurator .mc-sidebar.mc-fields .mc-col-items .btn{margin-top:14px}.matrix-configurator .mc-sidebar>.mc-col-inner-container>.mc-col-heading,.matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-heading{margin:0;padding:7px 14px 6px;border-bottom:1px solid var(--hairline-color);background-color:var(--gray-050);background-image:linear-gradient(rgba(51, 64, 77, 0), rgba(51, 64, 77, 0.05))}.matrix-configurator .mc-field-settings{flex:1;position:relative}body.ltr .matrix-configurator .mc-field-settings{border-top-right-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-field-settings{border-top-left-radius:var(--small-border-radius)}body.ltr .matrix-configurator .mc-field-settings{border-bottom-right-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-field-settings{border-bottom-left-radius:var(--small-border-radius)}.matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-heading{padding-left:24px;padding-right:24px}body.ltr .matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-heading{border-top-right-radius:var(--small-border-radius)}body.rtl .matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-heading{border-top-left-radius:var(--small-border-radius)}.matrix-configurator .mc-field-settings>.mc-col-inner-container>.mc-col-items{padding:24px}.matrixconfigitem{position:relative;display:flex;align-items:center;user-select:none;cursor:default;min-height:48px;box-sizing:border-box}.matrixconfigitem.mci-blocktype{margin-top:-1px;padding:8px 14px;border:solid var(--hairline-color);border-width:1px 0;background-color:var(--gray-100)}.matrixconfigitem.mci-blocktype.sel{z-index:1;background-color:var(--gray-200)}.matrixconfigitem.mci-field{border-radius:var(--medium-border-radius);padding:7px 10px;background-color:var(--gray-100)}.matrixconfigitem.mci-field.sel{background-color:var(--gray-200)}.matrixconfigitem.mci-field.sel .slide-picker:focus a.active{background-color:#5f6c79}.matrixconfigitem.mci-field+.mci-field{margin-top:7px}.matrixconfigitem .mci-name{flex:1;overflow:hidden}.matrixconfigitem .mci-name h4,.matrixconfigitem .mci-name .smalltext{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.matrixconfigitem .mci-name h4{margin-bottom:2px;font-weight:normal;color:var(--text-color)}.matrixconfigitem .mci-name h4.mci-required:after{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"asterisk\";font-size:8px}body.ltr .matrixconfigitem .mci-name h4.mci-required:after{margin:-2px 0 0 4px}body.rtl .matrixconfigitem .mci-name h4.mci-required:after{margin:-2px 4px 0 0}.matrixconfigitem.error .mci-name h4{color:var(--error-color)}body.ltr .matrixconfigitem .slide-picker,body.ltr .matrixconfigitem .icon{margin-left:7px}body.rtl .matrixconfigitem .slide-picker,body.rtl .matrixconfigitem .icon{margin-right:7px}.matrixconfigitem .icon{display:block}.matrixconfigitem .icon:not(.error):before{color:var(--ui-control-color)}.matrixconfigitem .icon:not(.error):hover:before{color:var(--ui-control-hover-color)}.matrixconfigitem .icon:not(.error):active:before{color:var(--ui-control-active-color)}.matrixconfigitem .icon.error:before{color:var(--error-color)}.matrix>.buttons{margin-top:10px}.matrixblock{position:relative;margin-bottom:10px;padding:0 var(--m) var(--m);border-radius:var(--large-border-radius);border:1px solid var(--hairline-color);background-color:var(--gray-050)}.matrixblock.static{padding-top:14px}.matrixblock .flex-fields{--row-gap: var(--m) !important}.matrixblock>.titlebar{margin:0 -14px;width:calc(100% + 28px);box-sizing:border-box;border-radius:calc(var(--large-border-radius) - 1px) calc(var(--large-border-radius) - 1px) 0 0;color:var(--light-text-color);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-wrap:normal;cursor:default;user-select:none;position:relative;background-color:#ebf2fa}body.ltr .matrixblock>.titlebar{padding:5px 70px 5px 35px}body.rtl .matrixblock>.titlebar{padding:5px 35px 5px 70px}.matrixblock>.titlebar:after{display:block;content:\"\";position:absolute;bottom:-1px;left:14px;width:calc(100% - 28px);height:1px;background-color:var(--hairline-color)}.matrixblock>.titlebar>.blocktype{display:inline;color:var(--medium-text-color)}.matrixblock>.titlebar>.preview{display:inline;opacity:0;transition:opacity linear 100ms}body.ltr .matrixblock>.titlebar>.preview{margin-left:7px}body.rtl .matrixblock>.titlebar>.preview{margin-right:7px}.matrixblock>.titlebar>.preview span{opacity:.5}.matrixblock.disabled{opacity:1}body.ltr .matrixblock.disabled>.titlebar{padding-right:90px}body.rtl .matrixblock.disabled>.titlebar{padding-left:90px}.matrixblock.disabled>.actions>.status.off{display:block}.matrixblock.collapsed>.titlebar{border-radius:var(--titlebar-border-radius);border-bottom:none}.matrixblock.collapsed>.titlebar>.preview{opacity:1}.matrixblock>.checkbox{position:absolute;top:7px}body.ltr .matrixblock>.checkbox{left:14px}body.rtl .matrixblock>.checkbox{right:14px}.matrixblock>.actions{display:flex;align-items:center;position:absolute;top:5px;cursor:default}body.ltr .matrixblock>.actions{right:14px}body.rtl .matrixblock>.actions{left:14px}body.ltr .matrixblock>.actions>*{margin:0 0 0 5px}body.rtl .matrixblock>.actions>*{margin:0 5px 0 0}.matrixblock>.actions .settings{padding:0 8px;height:20px;color:var(--ui-control-color)}body.ltr .matrixblock>.actions .settings:before{margin-right:0 !important}body.rtl .matrixblock>.actions .settings:before{margin-left:0 !important}.matrixblock>.actions .settings:not(:hover):not(:active){background-color:rgba(0,0,0,0)}.matrixblock>.actions>.move{margin-top:-3px !important}.matrixblock>.actions>.status.off{display:none}.matrixblock>.actions a:not([data-action]){padding:0;height:20px;text-align:center;color:var(--dark-hairline-color);transform:color linear 100ms}.matrixblock>.actions a:not([data-action]).settings:after{border-color:var(--dark-hairline-color);transform:border-color linear 100ms}body.ltr .matrixblock>.actions a:not([data-action]).settings:after{margin-left:3px}body.rtl .matrixblock>.actions a:not([data-action]).settings:after{margin-right:3px}.matrixblock>.actions a:not([data-action]):hover{color:var(--link-color)}.matrixblock>.actions a:not([data-action]):hover.settings:after{border-color:var(--link-color)}.matrixblock:not(.static)>.fields{padding-top:14px}.matrixblock>.fields>.flex-fields>.field:before{display:none}.matrixblock>.buttons{margin-top:0;height:30px}.add-category-form{margin-top:24px}.add-category-form .texticon{width:200px}body.ltr .add-category-form .texticon{float:left}body.rtl .add-category-form .texticon{float:right}body.ltr .add-category-form .texticon{margin-right:5px}body.rtl .add-category-form .texticon{margin-left:5px}body.ltr .add-category-form .texticon .text{padding-right:30px}body.rtl .add-category-form .texticon .text{padding-left:30px}.add-category-form .texticon .spinner{position:absolute;top:0}body.ltr .add-category-form .texticon .spinner{right:5px}body.rtl .add-category-form .texticon .spinner{left:5px}.categoriesfield{position:relative;min-height:30px}body.ltr .categoriesfield .structure ul{margin-left:12px}body.rtl .categoriesfield .structure ul{margin-right:12px}body.sitepicker #main-content{padding:30px;justify-content:center;align-items:center;text-align:center}body.sitepicker #content-container{max-width:400px}.sitepicker-group li:not(:first-child) a{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.sitepicker-group li:not(:first-child) a:not(:hover){border-top-color:rgba(0,0,0,0)}.sitepicker-group li:not(:last-child) a{border-bottom-left-radius:0;border-bottom-right-radius:0}.sitepicker-group li a{display:block;position:relative;text-align:left;width:100%;box-sizing:border-box;border:1px solid var(--hairline-color);border-radius:var(--medium-border-radius);font-size:16px;line-height:1.4}body.ltr .sitepicker-group li a{padding:9px 42px 9px 15px}body.rtl .sitepicker-group li a{padding:9px 15px 9px 42px}.sitepicker-group li a:after{font-size:14px;position:absolute;top:calc(50% - 7px);margin:0;padding:0}body.ltr .sitepicker-group li a:after{right:12px}body.rtl .sitepicker-group li a:after{left:12px}.sitepicker-group li a:hover{border-color:var(--link-color);text-decoration:none;z-index:1}.elementselectormodal .body .main{float:left \\9 ;width:445px \\9 }@media only screen and (-webkit-min-device-pixel-ratio: 1.5),only screen and (-moz-min-device-pixel-ratio: 1.5),only screen and (-o-min-device-pixel-ratio: 3/2),only screen and (min-device-pixel-ratio: 1.5),only screen and (min-resolution: 1.5dppx){.structure ul li{background-size:40px}body.ltr .structure ul li{background-image:url(../images/branch_2x.png)}body.rtl .structure ul li{background-image:url(../images/branch_rtl_2x.png)}.hud .tip-left{background-image:url(../images/hudtip_left_2x.png);background-size:15px 30px}.hud .tip-top{background-image:url(../images/hudtip_top_2x.png);background-size:30px 15px}.hud .tip-right{background-image:url(../images/hudtip_right_2x.png);background-size:15px 30px}.hud .tip-bottom{background-image:url(../images/hudtip_bottom_2x.png);background-size:30px 15px}.hud.has-footer .tip-bottom{background-image:url(../images/hudtip_bottom_gray_2x.png)}}:root{--xs: 4px;--s: 8px;--m: 14px;--l: 18px;--xl: 24px;--padding: var(--xl);--neg-padding: calc(var(--padding) * -1)}html{-webkit-text-size-adjust:100%;min-height:100vh}body{min-height:100vh}body.increase-contrast{--input-border-color: var(--gray-400)}body :focus{outline-style:solid;outline-color:rgba(0,0,0,0);box-shadow:var(--focus-ring)}.reduce-focus-visibility :focus:not(:focus-visible){box-shadow:none}.reduce-focus-visibility :focus-visible{box-shadow:var(--focus-ring)}.skip-link{position:absolute;margin:5px;left:-10000px;top:0;width:1px;height:1px;overflow:hidden;z-index:101}.skip-link:focus{left:unset;width:auto;height:auto;background-color:var(--gray-100) !important}body.ltr .skip-link:focus{left:0}body.rtl .skip-link:focus{right:0}@media only screen and (min-width: 1200px){#global-skip-link{--light-color: var(--white);--dark-color: var(--gray-800);--focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color)}}#global-container{position:relative;display:flex;flex-direction:column;min-height:100vh}body.ltr #global-container{left:0}body.rtl #global-container{right:0}@media screen and (prefers-reduced-motion: no-preference){body.ltr #global-container{transition:left 250ms ease-out}body.rtl #global-container{transition:right 250ms ease-out}}#global-sidebar{--is-always-visible: true;position:fixed;z-index:100;display:flex;flex-direction:column;height:100vh;padding:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-weight:500;--focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)), 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);background-color:var(--gray-800)}#global-sidebar a{color:var(--gray-100);text-decoration:none}#global-sidebar>a[href]:not(.sel):hover,#global-sidebar *:not(.has-subnav)>a[href]:not(.sel):hover{background-color:#29333d}#global-sidebar>a:not([href]),#global-sidebar *:not(.has-subnav)>a:not([href]){cursor:default;background-color:rgba(0,0,0,0)}#global-sidebar .light{color:var(--gray-400)}@media only screen and (max-width: 1199px){#global-sidebar{--is-always-visible: false}}#system-info{display:grid;grid-template-columns:30px auto;grid-gap:10px;height:50px;padding:0 10px;position:relative;flex:0 0 50px;flex-direction:row;align-items:center;background-color:#29333d}#system-info:after{display:none}#system-info:focus,#system-info:hover{background-color:#1f272e !important}#site-icon{height:30px}#site-icon img,#site-icon svg{display:block;width:30px;height:30px;border-radius:4px}#site-icon svg rect,#site-icon svg circle,#site-icon svg ellipse,#site-icon svg line,#site-icon svg polyline,#site-icon svg polygon,#site-icon svg path,#site-icon svg text{fill:var(--medium-text-color);stroke-width:0}#system-name h2,#system-name .h2{margin:0;width:100%;overflow:hidden;max-height:40px;position:relative;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}#system-name h2:after,#system-name .h2:after{display:block;content:\"\";font-size:0;position:absolute;top:0;width:var(--m);background-image:linear-gradient(to right, rgba(41, 51, 61, 0), #29333d)}body.ltr #system-name h2:after,body.ltr #system-name .h2:after{right:0}body.rtl #system-name h2:after,body.rtl #system-name .h2:after{left:0}#system-info:hover #system-name h2:after,#system-info:hover #system-name .h2:after{background-image:linear-gradient(to right, rgba(31, 39, 46, 0), #1f272e)}#job-icon{align-items:flex-start}#job-icon>span.icon{display:block;position:relative;width:16px;height:16px;margin-top:2px !important}#job-icon>span.icon>canvas{display:block;position:absolute;width:16px;height:16px}#job-icon>span.icon>canvas#job-icon-hover{opacity:0}#job-icon[href]:hover .icon>span.icon>canvas#job-icon-hover{opacity:1}#job-icon .progress-label{display:block;color:var(--gray-300);font-size:11px;line-height:1.5}#nav{flex:1;margin:22px 0 0;padding-bottom:var(--xl);overflow:visible}#nav li:not(.has-subnav)>a.sel{color:var(--gray-800);background-color:var(--gray-100);opacity:1}#nav li:not(.has-subnav)>a.sel .icon{opacity:1}#nav li a{position:relative;padding-left:var(--m);padding-right:var(--m)}#nav li a:focus{z-index:1}#nav li a.menubtn{line-height:26px}#nav li a.external:after{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"external\"}body.ltr #nav li a.external:after{margin-left:5px}body.rtl #nav li a.external:after{margin-right:5px}#nav li a .label,#nav li a .label span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#nav li a .badge{background-color:var(--gray-200);color:var(--gray-800)}body.ltr #nav li a .badge{margin-right:0}body.rtl #nav li a .badge{margin-left:0}#nav li ul{display:block;margin-bottom:10px}#nav li ul li a{font-size:12px}body.ltr #nav li ul li a{padding:3px var(--m) 3px 42px !important}body.rtl #nav li ul li a{padding:3px 42px 3px var(--m) !important}#nav li ul li a:not(.active){color:var(--gray-200)}#global-footer{display:flex;flex-direction:column;align-items:center;padding:var(--m) var(--m) var(--xl)}#app-info{margin-top:var(--xs);display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--gray-600);text-align:center;gap:var(--s)}#app-info a{color:var(--gray-600);text-decoration:underline}#app-info a.go:hover:after{color:var(--gray-600)}#edition-logo{user-select:none;border:1px solid var(--gray-600);border-radius:3px;display:inline-flex;height:1.25rem;box-sizing:content-box;font-size:11px}#edition-logo>.edition-name,#edition-logo>.edition-trial{padding:0.375rem 0.4375rem 0.3125rem;line-height:var(--s)}#edition-logo>.edition-name{font-weight:600;letter-spacing:1.7px;padding-right:0.3125rem;text-transform:uppercase}#edition-logo>.edition-trial{display:inline-block;position:relative;background-color:var(--gray-600);color:var(--gray-200);border-radius:0 1px 1px 0;letter-spacing:1px;text-transform:lowercase}body.ltr #edition-logo>.edition-trial{margin-left:5px}body.rtl #edition-logo>.edition-trial{margin-right:5px}body.ltr #edition-logo>.edition-trial{padding-left:5px}body.rtl #edition-logo>.edition-trial{padding-right:5px}body.ltr #edition-logo>.edition-trial{padding-right:7px}body.rtl #edition-logo>.edition-trial{padding-left:7px}#edition-logo>.edition-trial:before{display:block;position:absolute;top:0;content:\"\";font-size:0;width:0;height:0;border-style:solid}body.ltr #edition-logo>.edition-trial:before{left:-10px;border-width:0 10px 20px 0;border-color:rgba(0,0,0,0) var(--gray-600) rgba(0,0,0,0) rgba(0,0,0,0)}body.rtl #edition-logo>.edition-trial:before{right:-10px;border-width:0 0 20px 10px;border-color:rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0) var(--gray-600)}#devmode{flex:0 0 4px;width:100%;min-height:4px;background:url(../images/dev-mode.svg) repeat-x 21px 0;cursor:help}#page-container{display:flex;flex-direction:column;flex-grow:1}body.ltr #page-container{padding-left:226px}body.rtl #page-container{padding-right:226px}#alerts{position:relative;background-color:var(--red-050);border-left:5px solid var(--error-color);padding:11px 0;text-align:center;color:var(--error-color)}#alerts li{padding:4px var(--xl)}#alerts li a{color:var(--error-color);text-decoration:underline}#alerts li a.go{text-decoration:none;white-space:nowrap;border:1px solid rgba(207,17,36,.5);border-radius:var(--medium-border-radius);padding:3px 5px;margin:0 2px}#alerts li a.go:after{color:var(--error-color)}#alerts li a.go:hover{border-color:var(--error-color)}#global-header{width:100%;margin-bottom:var(--m);background:#fff;box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);background:var(--gray-050)}#global-header:focus{box-shadow:var(--focus-ring)}#global-header .flex{align-items:center}#global-header .btn{--ui-control-color: var(--gray-400);--ui-control-hover-color: var(--gray-500);--ui-control-active-color: var(--gray-600)}.nav-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:50px;line-height:26px;color:currentColor;text-align:center}body.ltr .nav-toggle{margin-left:-10px}body.rtl .nav-toggle{margin-right:-10px}.nav-toggle:before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"menu\";font-size:16px;line-height:0}.nav-toggle:hover{color:var(--gray-400)}#crumbs{display:flex;flex-direction:row;align-items:center;font-size:13px;margin:0 !important}#crumbs.empty{display:none}#crumbs a,#crumbs button{color:var(--light-text-color);transition:color linear 100ms}#crumbs a:hover,#crumbs button:hover{color:var(--link-color);text-decoration:none}#crumbs nav{margin:0}.breadcrumb-list{display:flex;flex-direction:row;align-items:stretch;flex-wrap:wrap}.breadcrumb-list li{display:inline-flex;align-items:center}.breadcrumb-list li a,.breadcrumb-list li button{padding:15px 0}.breadcrumb-list li button{cursor:pointer}.breadcrumb-list li:after{display:block;content:\"\";font-size:0;width:7px;height:7px;border:solid var(--medium-hairline-color);border-width:0 2px 2px 0;opacity:.8}body.ltr .breadcrumb-list li:after{margin:0 8px 0 7px}body.rtl .breadcrumb-list li:after{margin:0 7px 0 8px}body.ltr .breadcrumb-list li:after{transform:rotate(-45deg)}body.rtl .breadcrumb-list li:after{transform:rotate(135deg)}.breadcrumb-list .menu--disclosure li{display:block}.breadcrumb-list .menu--disclosure li::after{content:none}li.breadcrumb-toggle-wrapper::after{content:none}#account-menu ul li a{max-width:calc(100% + 28px) !important}#announcements-btn{width:30px;height:30px;padding-left:0;padding-right:0;width:40px;position:relative}#announcements-btn:not(:hover):not(:active):not(.active){background-color:rgba(0,0,0,0)}#announcements-btn:not(:active):not(.active):hover{background-color:rgba(154,165,177,.15)}#announcements-btn.unread:after{content:\"\";display:block;position:absolute;top:3px;width:7px;height:7px;border-radius:4px;background-color:var(--blue-600)}body.ltr #announcements-btn.unread:after{right:7px}body.rtl #announcements-btn.unread:after{left:7px}#announcements-btn svg{width:22px;height:22px}#announcements-btn svg rect,#announcements-btn svg circle,#announcements-btn svg ellipse,#announcements-btn svg line,#announcements-btn svg polyline,#announcements-btn svg polygon,#announcements-btn svg path,#announcements-btn svg text{fill:var(--ui-control-color);stroke-width:0}#announcements-btn:hover svg rect,#announcements-btn:hover svg circle,#announcements-btn:hover svg ellipse,#announcements-btn:hover svg line,#announcements-btn:hover svg polyline,#announcements-btn:hover svg polygon,#announcements-btn:hover svg path,#announcements-btn:hover svg text,#announcements-btn:active svg rect,#announcements-btn:active svg circle,#announcements-btn:active svg ellipse,#announcements-btn:active svg line,#announcements-btn:active svg polyline,#announcements-btn:active svg polygon,#announcements-btn:active svg path,#announcements-btn:active svg text,#announcements-btn.active svg rect,#announcements-btn.active svg circle,#announcements-btn.active svg ellipse,#announcements-btn.active svg line,#announcements-btn.active svg polyline,#announcements-btn.active svg polygon,#announcements-btn.active svg path,#announcements-btn.active svg text{fill:var(--ui-control-active-color);stroke-width:0}#announcements{max-width:350px}#announcements .announcement:not(:first-child){margin-top:20px}#announcements .announcement .announcement-label-container{margin-top:-3px;display:flex;align-items:center;margin-bottom:3px}#announcements .announcement .announcement-label-container .announcement-icon svg{display:block;width:15px;height:15px}#announcements .announcement .announcement-label-container .announcement-label{margin-left:5px;font-size:12px;color:var(--light-text-color)}#announcements .announcement.unread .announcement__heading:after{content:\"\";display:block;position:absolute;top:7px;width:7px;height:7px;border-radius:4px;background-color:var(--blue-600)}body.ltr #announcements .announcement.unread .announcement__heading:after{left:-13px}body.rtl #announcements .announcement.unread .announcement__heading:after{right:-13px}#announcements .announcement p{margin:0}#announcements .announcement__header{display:grid}#announcements .announcement__heading{position:relative;margin:0 0 3px;order:1}#user-info{display:flex;flex-direction:row;align-items:center;padding-top:5px;padding-bottom:5px;height:100%;background-color:rgba(0,0,0,0);border-radius:0}body.ltr #user-info{padding-right:25px}body.rtl #user-info{padding-left:25px}#user-info:after{border-color:var(--ui-control-color);transition:border-color linear 100ms}#user-info:hover:after{border-color:var(--ui-control-hover-color)}#user-info[aria-expanded=true]:after{border-color:var(--ui-control-active-color)}.header-photo{padding:5px 0}.header-photo img{display:block;width:30px;height:30px;max-width:none;border-radius:50%;box-shadow:0 0 0 1px rgba(31,41,51,.05),0 0 0 rgba(31,41,51,0);transition:box-shadow linear 150ms}#user-info:hover .header-photo img{box-shadow:0 0 0 1px rgba(31,41,51,.05),0 2px 10px -2px rgba(31,41,51,.3)}#main-container{position:relative;flex-grow:1}#notifications{position:fixed;bottom:8px;width:calc(100% - 16px);z-index:101}body.ltr #notifications{left:8px}body.rtl #notifications{right:8px}@media only screen and (min-width: 974px){#notifications{width:350px}}#notifications .notification{display:flex;position:relative;background:#fff;box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);padding:10px 14px;border-radius:var(--large-border-radius);box-shadow:0 0 0 1px rgba(19,26,32,.15),0 2px 12px rgba(19,26,32,.15);--color: var(--notice-color)}#notifications .notification:focus{box-shadow:var(--focus-ring)}#notifications .notification[data-type=success]{--color: var(--success-color)}#notifications .notification[data-type=error]{--color: var(--error-color)}#notifications .notification+.notification{margin-top:12px}#notifications .notification .notification-icon{width:18px;margin-top:-2px;font-size:18px;color:var(--color)}body.ltr #notifications .notification .notification-icon{margin-right:10px}body.rtl #notifications .notification .notification-icon{margin-left:10px}#notifications .notification .notification-body{display:flex;flex:1}#notifications .notification .notification-body .notification-message{font-weight:bold}#notifications .notification .notification-body .notification-details{margin-top:var(--xs)}#notifications .notification .notification-body .notification-details .element{border:1px solid rgba(51,64,77,.1)}#notifications .notification .notification-close-btn{position:relative;top:-2px}body.ltr #notifications .notification .notification-close-btn{margin-left:10px}body.rtl #notifications .notification .notification-close-btn{margin-right:10px}#header-container{margin-bottom:var(--m)}#crumbs,#header{padding-left:var(--xl);padding-right:var(--xl)}@media only screen and (min-width: 1200px){#primary-nav-toggle{display:none}}#global-header .flex,#header .flex{max-width:100%}#global-header .flex.flex-nowrap,#header .flex.flex-nowrap{min-width:0}#header{display:flex;align-items:flex-start;align-content:stretch;flex-wrap:nowrap;justify-content:space-between;gap:var(--s);padding-top:var(--s);padding-bottom:var(--s);position:relative;z-index:2;width:calc(100vw - 226px);box-sizing:border-box;background-color:rgba(154,165,177,0);box-shadow:0 1px 0 rgba(51,64,77,0);transition:background-color linear 100ms,box-shadow linear 100ms}body.fixed-header #header{position:fixed;z-index:12;top:0;background-color:var(--gray-100);box-shadow:inset 0 -1px 0 rgba(63,77,90,.1)}@supports(backdrop-filter: blur(10px)){#header{transition:background-color linear 100ms,box-shadow linear 100ms,backdrop-filter linear 100ms}body.fixed-header #header{background-color:rgba(228,237,246,.75);backdrop-filter:blur(10px)}}#header h1{line-height:34px;margin-top:0;margin-bottom:0;min-width:0}#header .buttons,#header .btngroup{margin-top:0}@media only screen and (min-width: 974px){#page-title.has-toolbar{min-width:calc(226px - var(--xl) - var(--s)) !important}}#toolbar{flex:1;align-items:flex-start;justify-content:space-between}#toolbar .icon:before,#toolbar .texticon:before,#toolbar .menubtn:after,#toolbar [data-icon]:before,#toolbar [data-icon-after]:after{color:currentColor;opacity:.8}#toolbar .text{border-radius:var(--large-border-radius)}#toolbar .text::-webkit-input-placeholder{color:var(--light-text-color)}#toolbar .text:-ms-input-placeholder{color:var(--light-text-color)}#toolbar .text::-ms-input-placeholder{color:var(--light-text-color)}#toolbar .text:-moz-placeholder{color:var(--light-text-color)}#toolbar .text::-moz-placeholder{color:var(--light-text-color)}#toolbar .text::placeholder{color:var(--light-text-color)}#toolbar .text:not(:focus){background-clip:border-box}@media only screen and (max-width: 400px){#action-buttons .btngroup .btn:first-child{flex-basis:100%}}@media only screen and (max-width: 973px){#action-buttons{margin-top:10px}}#main-content{display:flex;flex-direction:row;align-items:flex-start;width:calc(100vw - 226px);padding:0 var(--xl) 48px;box-sizing:border-box}#main-content>.grid:only-child{flex:1}#sidebar-toggle-container{display:none}#sidebar-container{flex:0 0 226px;width:226px;box-sizing:border-box}@media only screen and (min-width: 1200px){body.ltr #sidebar-container{margin-left:calc(var(--xl)*-1)}body.rtl #sidebar-container{margin-right:calc(var(--xl)*-1)}}#sidebar{box-sizing:border-box;padding:0 31px;width:226px;background-color:rgba(0,0,0,0)}#sidebar.fixed{position:fixed;overflow-y:auto;padding-top:var(--m);padding-bottom:var(--m)}#sidebar nav{margin-left:-31px;margin-right:-31px}#sidebar nav li a{position:relative}#sidebar nav li a:focus{z-index:1}#sidebar nav li a:not(.sel):hover{background-color:var(--gray-200)}#content-container{flex:1}#main-content:not(.has-sidebar):not(.has-details) #content-container{width:100%;max-width:100%}#main-content.has-sidebar #content-container{width:calc(100% - 202px);max-width:calc(100% - 202px)}#main-content.has-details #content-container{width:calc(100% - 350px - var(--m));max-width:calc(100% - 350px - var(--m))}#content-container #main-content.has-sidebar.has-details{width:calc(100% - 226px - 350px - 38px);max-width:calc(100% - 226px - 350px - 38px)}#content-heading{margin-top:var(--xl) !important}@media only screen and (min-width: 974px){#content-heading{position:absolute;width:1px;height:1px;padding:0;margin:0;overflow:hidden;clip:rect(0, 0, 0, 0);border:0}}.content-pane{background:#fff;box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);border-radius:var(--large-border-radius);position:relative;background-clip:padding-box;padding:var(--xl);word-wrap:break-word}.content-pane:focus{box-shadow:var(--focus-ring)}.content-pane>hr{margin-left:calc(var(--xl)*-1);margin-right:calc(var(--xl)*-1)}#footer{position:sticky;bottom:0;z-index:1;margin:25px calc(var(--xl)*-1) calc(var(--xl)*-1);padding:var(--s) var(--xl);background-color:var(--gray-050);border-radius:0 0 var(--large-border-radius) var(--large-border-radius);box-sizing:border-box;min-height:50px}#footer:empty{display:none}#footer.stuck{border-radius:0}@supports(backdrop-filter: blur(10px)){#footer.stuck{background-color:rgba(228,237,246,.75);backdrop-filter:blur(10px)}}.has-debug-toolbar #footer{transition:padding linear 100ms}.has-debug-toolbar #footer.stuck{padding-bottom:52px}#footer>*,#footer .flex>*{margin-bottom:0}#details-container{flex:0 0 388px;width:388px;box-sizing:border-box}body.ltr #details-container{margin-right:calc(var(--xl)*-1)}body.rtl #details-container{margin-left:calc(var(--xl)*-1)}#details{box-sizing:border-box;width:388px}body.ltr #details{padding-right:var(--xl)}body.rtl #details{padding-left:var(--xl)}body.ltr #details{padding-left:var(--m)}body.rtl #details{padding-right:var(--m)}#details.fixed{position:fixed;overflow-y:auto;padding-top:var(--m)}#details .details .meta{border-radius:var(--large-border-radius)}#details .details .meta.read-only{color:var(--medium-text-color);background-color:rgba(0,0,0,0) !important}#details .details .meta>.field:first-child,#details .details .meta>.data:first-child{border-top-right-radius:var(--large-border-radius)}#details .details .meta>.field:first-child,#details .details .meta>.field:first-child>.status-badge,#details .details .meta>.data:first-child,#details .details .meta>.data:first-child>.status-badge{border-top-left-radius:var(--large-border-radius)}#details .details .meta>.field:last-child,#details .details .meta>.data:last-child{border-bottom-right-radius:var(--large-border-radius)}#details .details .meta>.field:last-child,#details .details .meta>.field:last-child>.status-badge,#details .details .meta>.data:last-child,#details .details .meta>.data:last-child>.status-badge{border-bottom-left-radius:var(--large-border-radius)}#details .details .notes{border-radius:var(--large-border-radius);padding-top:var(--m);padding-bottom:var(--m)}@media only screen and (max-width: 1199px){#global-container{width:calc(100vw + 226px)}body.ltr #global-container{left:-226px}body.rtl #global-container{right:-226px}body.ltr.showing-nav #global-container{left:0}body.rtl.showing-nav #global-container{right:0}#crumbs{display:flex !important}#header{width:100vw}#main-content{width:100vw}}@media only screen and (max-width: 973px){#header{display:block}#header .flex:not(#toolbar){margin-top:10px}#toolbar{flex-wrap:wrap !important}#toolbar>*{margin-top:10px !important}body.fixed-header #header .flex:first-child{margin-top:0}#main-content{display:block}#sidebar-toggle-container{display:block;margin-bottom:var(--m)}#sidebar-toggle:after{top:0;transform:rotate(-45deg)}body.rtl #sidebar-toggle:after{transform:rotate(135deg)}body.showing-sidebar #sidebar-toggle{background-color:#acbed2 !important}body.showing-sidebar #sidebar-toggle:after{transform:rotate(45deg)}#content-container{min-height:0 !important}#sidebar-container,#details-container{width:auto !important}#sidebar,#details{position:static !important;overflow-y:visible !important;max-height:none !important;width:auto}#sidebar{margin-bottom:var(--m)}body:not(.showing-sidebar) #sidebar{display:none}body.ltr #details-container{margin-right:0}body.rtl #details-container{margin-left:0}#content-container{width:auto !important;max-width:none !important}#details{padding:0 !important;margin-top:var(--m)}}@media only screen and (max-width: 767px){#crumbs,#header,#main-content{padding-left:10px !important;padding-right:10px !important}#tabs ul li a{padding-left:var(--m);padding-right:var(--m)}body.ltr #tabs ul li+li{margin-left:-7px}body.rtl #tabs ul li+li{margin-right:-7px}}body.ltr #settingsmenu ul li a{padding-left:46px}body.rtl #settingsmenu ul li a{padding-right:46px}#settingsmenu ul li a:before{font-size:15px}body.ltr #settingsmenu ul li a:before{margin:1px 0 0 -22px}body.rtl #settingsmenu ul li a:before{margin:1px -22px 0 0}#settingsmenu ul li a img{width:16px;height:16px;position:absolute;margin-left:-23px;margin-top:1px}.grid{position:relative;min-height:1px}.grid:after{content:\"\";display:block;height:0;clear:both;visibility:hidden}.grid>.item{display:none;box-sizing:border-box}.sidebar{width:226px;box-sizing:border-box;font-size:13px}.sidebar:not(.drag-helper){padding:var(--m) 0;background-color:var(--gray-050)}.sidebar .heading{position:relative;margin:0 var(--xl)}.sidebar .heading:not(:first-child){margin-top:var(--m)}.sidebar .heading>span{display:inline-block;position:relative;z-index:1;padding:0 5px;margin:0 -5px;text-transform:uppercase;color:var(--medium-text-color);font-size:11px;font-weight:bold}.sidebar .heading>ul{margin:2px calc(var(--xl)*-1)}.sidebar nav{padding:0 var(--s)}body.ltr .sidebar nav>ul>li:not(.heading)>a,body.ltr .sidebar nav>ul>li.heading>ul>li>a{padding-left:24px}body.rtl .sidebar nav>ul>li:not(.heading)>a,body.rtl .sidebar nav>ul>li.heading>ul>li>a{padding-right:24px}body.ltr .sidebar nav>ul>li:not(.heading)>.toggle,body.ltr .sidebar nav>ul>li.heading>ul>li>.toggle{left:calc(var(--m) * 0)}body.rtl .sidebar nav>ul>li:not(.heading)>.toggle,body.rtl .sidebar nav>ul>li.heading>ul>li>.toggle{right:calc(var(--m) * 0)}body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>a,body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>a{padding-left:38px}body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>a,body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>a{padding-right:38px}body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>.toggle,body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>.toggle{left:calc(var(--m) * 1)}body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>.toggle,body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>.toggle{right:calc(var(--m) * 1)}body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>a,body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>a{padding-left:52px}body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>a,body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>a{padding-right:52px}body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>.toggle,body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>.toggle{left:calc(var(--m) * 2)}body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>.toggle,body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>.toggle{right:calc(var(--m) * 2)}body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>a,body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>a{padding-left:66px}body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>a,body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>a{padding-right:66px}body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>.toggle,body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle{left:calc(var(--m) * 3)}body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>.toggle,body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle{right:calc(var(--m) * 3)}body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>a,body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>a{padding-left:80px}body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>a,body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>a{padding-right:80px}body.ltr .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle,body.ltr .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle{left:calc(var(--m) * 4)}body.rtl .sidebar nav>ul>li:not(.heading)>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle,body.rtl .sidebar nav>ul>li.heading>ul>li>ul.nested>li>ul.nested>li>ul.nested>li>ul.nested>li>.toggle{right:calc(var(--m) * 4)}.sidebar nav li{position:relative}.sidebar nav li:not(.has-subnav)>a:not(.sel):hover{text-decoration:none;background-color:var(--gray-100)}.sidebar nav li:not(.has-subnav)>a.sel{cursor:default;background-color:var(--gray-500);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-weight:500}.sidebar nav li:not(.has-subnav)>a.sel,.sidebar nav li:not(.has-subnav)>a.sel+.toggle{color:var(--white)}.sidebar nav li a{position:relative;margin-bottom:1px;display:flex;flex-direction:row;align-items:center;padding:7px var(--xl);min-height:var(--xl);box-sizing:border-box;color:var(--text-color);user-select:none;border-radius:var(--large-border-radius);word-break:break-word}.sidebar nav li a .status{flex-shrink:1}.sidebar nav li a .icon{flex-shrink:1;width:1.125rem;height:1.125rem;word-break:normal;transition:margin-left linear 150ms,margin-right linear 150ms;opacity:.85}body.ltr .sidebar nav li a .icon{margin-right:10px}body.rtl .sidebar nav li a .icon{margin-left:10px}.sidebar nav li a .icon.icon-mask svg rect,.sidebar nav li a .icon.icon-mask svg circle,.sidebar nav li a .icon.icon-mask svg ellipse,.sidebar nav li a .icon.icon-mask svg line,.sidebar nav li a .icon.icon-mask svg polyline,.sidebar nav li a .icon.icon-mask svg polygon,.sidebar nav li a .icon.icon-mask svg path,.sidebar nav li a .icon.icon-mask svg text{fill:currentColor;stroke-width:0}.sidebar nav li a .icon.icon-mask span[data-icon]{color:currentColor}.sidebar nav li a .icon svg{width:16px;height:16px}.sidebar nav li a .icon span[data-icon]{font-size:16px}.sidebar nav li a .icon span[data-icon]::before{display:block}.sidebar nav li a .label{flex:1}.sidebar nav li a .badge{flex-shrink:1;padding:0 6px;font-size:11px;line-height:16px;border-radius:var(--s);background-color:var(--medium-text-color);color:var(--white)}body.ltr .sidebar nav li a .badge{margin:0 -4px 0 10px}body.rtl .sidebar nav li a .badge{margin:0 10px 0 -4px}.sidebar nav li .toggle{position:absolute;z-index:1;height:34px;top:0;width:var(--xl);display:flex;align-items:center;justify-content:center}.sidebar nav li ul{display:none}.sidebar nav li.heading>ul,.sidebar nav li.expanded>ul{display:block}body.ltr .content.has-sidebar:not(.hiding-sidebar){margin-left:226px}body.rtl .content.has-sidebar:not(.hiding-sidebar){margin-right:226px}#content-notice{margin:0 calc(var(--xl)*-1);padding:0 var(--xl)}#content-notice:not(:last-child){padding-bottom:var(--s);border-bottom:1px solid var(--hairline-color);margin-bottom:var(--s)}#content :not(.meta)>.flex-fields,#content>.flex-fields,.so-content .flex-fields{--row-gap: var(--xl);display:flex;flex-wrap:wrap;align-content:flex-start;margin:0 calc(var(--row-gap)*-1) calc(var(--row-gap)*-1);width:calc(100% + var(--row-gap)*2)}#content :not(.meta)>.flex-fields>*,#content>.flex-fields>*,.so-content .flex-fields>*{margin:0 0 var(--row-gap) !important;padding:0 var(--row-gap);box-sizing:border-box}#content :not(.meta)>.flex-fields>h2,#content>.flex-fields>h2,.so-content .flex-fields>h2{flex:4 0 100%}#content :not(.meta)>.flex-fields>h2:not(:first-child),#content>.flex-fields>h2:not(:first-child),.so-content .flex-fields>h2:not(:first-child){padding-top:var(--xl);border-top:1px solid var(--hairline-color)}#content :not(.meta)>.flex-fields>hr,#content :not(.meta)>.flex-fields>.line-break,#content>.flex-fields>hr,#content>.flex-fields>.line-break,.so-content .flex-fields>hr,.so-content .flex-fields>.line-break{flex:4 0 100%}#content :not(.meta)>.flex-fields>.line-break:not(:first-child),#content>.flex-fields>.line-break:not(:first-child),.so-content .flex-fields>.line-break:not(:first-child){margin-bottom:0 !important}#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break),#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child,#content>.flex-fields>:not(h2):not(hr):not(.line-break),#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child,.so-content .flex-fields>:not(h2):not(hr):not(.line-break),.so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child{position:relative;width:100%}#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):before,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,#content>.flex-fields>:not(h2):not(hr):not(.line-break):before,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,.so-content .flex-fields>:not(h2):not(hr):not(.line-break):before,.so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child:before{position:absolute;top:0;width:1px;height:100%;content:\"\";background-color:rgba(205,216,228,.5)}body.ltr #content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):before,body.ltr #content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,body.ltr #content>.flex-fields>:not(h2):not(hr):not(.line-break):before,body.ltr #content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,body.ltr .so-content .flex-fields>:not(h2):not(hr):not(.line-break):before,body.ltr .so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child:before{left:-1px}body.rtl #content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):before,body.rtl #content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,body.rtl #content>.flex-fields>:not(h2):not(hr):not(.line-break):before,body.rtl #content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child:before,body.rtl .so-content .flex-fields>:not(h2):not(hr):not(.line-break):before,body.rtl .so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child:before{right:-1px}@media only screen and (min-width: 1536px){#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-25,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-25,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25{width:25%}#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-50,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-50,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50{width:50%}#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-75,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-75,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-75,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-75{width:75%}}@media only screen and (min-width: 600px)and (max-width: 1535px){#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-25,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break).width-50,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25,#content :not(.meta)>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-25,#content>.flex-fields>:not(h2):not(hr):not(.line-break).width-50,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25,#content>.flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50{width:50%}}@media only screen and (min-width: 1200px){.so-content .flex-fields>:not(h2):not(hr):not(.line-break).width-25,.so-content .flex-fields>:not(h2):not(hr):not(.line-break).width-50,.so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-25,.so-content .flex-fields>:not(h2):not(hr):not(.line-break):last-child.width-50{width:50%}}.lp-editor-container,.lp-preview-container{position:fixed;top:0;height:100%;background-color:var(--white);z-index:100}.lp-editor-container header,.lp-preview-container header{padding:8px 24px;background-color:var(--gray-100);box-shadow:0 1px 0 rgba(63,77,90,.2);box-sizing:border-box;position:relative;z-index:1}@supports(backdrop-filter: blur(10px)){.lp-editor-container header,.lp-preview-container header{position:absolute;z-index:2;top:0;left:0;width:100%;background-color:rgba(228,237,246,.75);backdrop-filter:blur(10px)}.lp-editor-container header+.lp-editor,.lp-preview-container header+.lp-editor{padding-top:78px}}.lp-editor-container header .btn,.lp-editor-container header .spinner,.lp-editor-container header .checkmark-icon,.lp-preview-container header .btn,.lp-preview-container header .spinner,.lp-preview-container header .checkmark-icon{margin-bottom:0}.lp-editor-container{display:flex;flex-direction:column}.lp-editor-container .lp-editor{flex:1;padding:24px;overflow:auto;box-sizing:border-box}.lp-editor-container .lp-editor>.field:last-child{margin-bottom:24px !important}body.ltr .lp-editor-container .lp-editor>.field>.status-badge{left:-24px}body.rtl .lp-editor-container .lp-editor>.field>.status-badge{right:-24px}body.ltr .lp-editor-container .lp-editor .matrixblock>.fields>.flex-fields>.field>.status-badge{left:calc(var(--m)*-1)}body.rtl .lp-editor-container .lp-editor .matrixblock>.fields>.flex-fields>.field>.status-badge{right:calc(var(--m)*-1)}.lp-editor-container .lp-draghandle{position:absolute;z-index:6;top:0;width:4px;height:100%;cursor:col-resize}body.ltr .lp-editor-container .lp-draghandle{right:-2px}body.rtl .lp-editor-container .lp-draghandle{left:-2px}.lp-preview-container{display:flex;flex-direction:column;box-shadow:-1px 0 0 rgba(63,77,90,.2)}.lp-preview-container.dragging:after{position:absolute;top:0;left:0;width:100%;height:100%;content:\"\";font-size:0}.lp-preview-container .lp-preview-header{display:flex}@supports not (backdrop-filter: blur(10px)){.lp-preview-container .lp-preview-header{background-color:rgba(228,237,246,.75)}}.lp-preview-container .lp-preview-header .buttons{margin:0}body.ltr .lp-preview-container .lp-preview-header .buttons .btn+.btn{margin-left:7px}body.rtl .lp-preview-container .lp-preview-header .buttons .btn+.btn{margin-right:7px}.lp-preview-container .lp-preview-header+.lp-iframe-container{padding-top:0}@supports(backdrop-filter: blur(10px)){.lp-preview-container .lp-preview-header+.lp-iframe-container{padding-top:50px}}.lp-preview-container .lp-preview-header .lp-device-type .btn::before{width:27px;height:22px;display:block;content:\"\";background-size:contain;background-repeat:no-repeat;background-position:center;transition-duration:.3s}.lp-preview-container .lp-preview-header .lp-device-type .btn.lp-device-type-btn--phone::before{background-image:url(../images/preview/icon-phone.svg)}.lp-preview-container .lp-preview-header .lp-device-type .btn.lp-device-type-btn--tablet::before{background-image:url(../images/preview/icon-tablet.svg)}.lp-preview-container .lp-preview-header .lp-device-type .btn.lp-device-type-btn--desktop::before{background-image:url(../images/preview/icon-desktop.svg)}.lp-preview-container .lp-device-type__label::before{width:27px;height:22px;display:block;content:\"\";background-size:contain;background-repeat:no-repeat;background-position:center;transition-duration:.3s}.lp-preview-container .lp-device-type__label.lp-device-type__label--phone::before{background-image:url(../images/preview/icon-phone.svg)}.lp-preview-container .lp-device-type__label.lp-device-type__label--tablet::before{background-image:url(../images/preview/icon-tablet.svg)}.lp-preview-container .lp-device-type__label.lp-device-type__label--desktop::before{background-image:url(../images/preview/icon-desktop.svg)}.lp-preview-container .lp-preview-container__bumper-link{top:unset;bottom:0}.lp-preview-container .lp-device-mask{display:none}.lp-preview-container .lp-iframe-container{flex:1;overflow:auto}.lp-preview-container .lp-iframe-container .lp-preview{display:block;width:100%;min-height:100%}.lp-preview-container .lp-iframe-container:not(.lp-iframe-container--has-device-preview) .lp-device-preview-container{width:auto !important;height:100% !important;transform:none !important;margin:0 !important}.lp-preview-container .lp-iframe-container--has-device-preview{flex:none;padding-top:0 !important;position:relative;top:0;height:calc(100% - 50px);width:100%;background-color:var(--gray-100)}@supports(backdrop-filter: blur(10px)){.lp-preview-container .lp-iframe-container--has-device-preview{top:50px}}.lp-preview-container .lp-iframe-container--has-device-preview .lp-device-preview-container{position:absolute;top:50%;left:50%;z-index:2;overflow:auto;opacity:1;transition:opacity .3s}.lp-preview-container .lp-iframe-container--has-device-preview .lp-device-mask{display:block;position:absolute;top:50%;left:50%;z-index:1;background-image:url(../images/preview/chrome-phone-top.svg),url(../images/preview/chrome-phone-bottom.svg);background-position:top center,bottom center;background-repeat:no-repeat;background-size:contain;background-color:#fff;box-shadow:0 0 58px rgba(6,67,117,.3);border-radius:18px}.lp-preview-container .lp-iframe-container--has-device-preview.lp-iframe-container--tablet .lp-device-mask{background-image:url(../images/preview/chrome-tablet-top.svg),url(../images/preview/chrome-tablet-bottom.svg)}@media screen and (prefers-reduced-motion: no-preference){.lp-preview-container .lp-iframe-container--rotating .lp-device-mask{transition-duration:.3s;transition-property:transform}.lp-preview-container .lp-iframe-container--rotating .lp-device-preview-container{opacity:0;transition:opacity 0s}}.layoutdesigner{display:flex;align-items:stretch;position:relative;border-radius:3px;border:1px solid var(--input-border-color);background-color:#fbfcfe;background-clip:padding-box;overflow:hidden;box-shadow:none;min-height:500px}body.ltr .layoutdesigner{padding-right:241px}body.rtl .layoutdesigner{padding-left:241px}.errors>.layoutdesigner{border:1px solid var(--error-color) !important}.layoutdesigner .fld-workspace{flex:1;background-color:var(--gray-050);background-image:linear-gradient(to right, hsl(212deg, 50%, 95%) 1px, transparent 0px),linear-gradient(to bottom, hsl(212deg, 50%, 95%) 1px, transparent 1px);background-size:24px 24px;background-position:-1px -1px;box-shadow:inset 0 1px 3px -1px #acbed2}body.ltr .layoutdesigner .fld-workspace{border-radius:var(--small-border-radius) 0 0 var(--small-border-radius)}body.rtl .layoutdesigner .fld-workspace{border-radius:0 var(--small-border-radius) var(--small-border-radius) 0}body.ltr .layoutdesigner .fld-workspace{padding:24px 0 24px 24px}body.rtl .layoutdesigner .fld-workspace{padding:24px 24px 24px 0}.layoutdesigner .fld-workspace .fld-tabs{display:flex;align-items:flex-start;flex-wrap:wrap}.layoutdesigner .fld-sidebar{position:absolute;top:0;height:100%;width:241px;padding:14px;overflow:auto;box-sizing:border-box}body.ltr .layoutdesigner .fld-sidebar{right:0}body.rtl .layoutdesigner .fld-sidebar{left:0}.layoutdesigner .fld-sidebar .btngroup{margin-bottom:14px}.layoutdesigner .fld-sidebar .fld-field-library .fld-field-group{margin-top:14px}.layoutdesigner .fld-sidebar .fld-field-library .fld-field-group h6{margin-bottom:7px}.layoutdesigner .fld-sidebar .filtered{display:none}.layoutdesigner .fld-new-tab-btn:active{background-color:var(--gray-050)}.fld-sidebar,.fld-tab .tabs .tab,.fld-tab .fld-tabcontent,.fld-new-tab-btn,.fld-new-tab-btn:hover{background-color:var(--white);box-shadow:0 0 0 1px rgba(31,41,51,.1),0 2px 5px -2px rgba(31,41,51,.2)}body.ltr .fld-tab .settings,body.ltr .fld-element .settings,body.ltr .fld-element .slide-picker{margin-left:7px}body.rtl .fld-tab .settings,body.rtl .fld-element .settings,body.rtl .fld-element .slide-picker{margin-right:7px}.fld-tab .settings:before,.fld-element .settings:before{margin-top:-2px;font-size:16px;opacity:.5}.fld-tab .settings:hover:before,.fld-tab .settings.active:before,.fld-element .settings:hover:before,.fld-element .settings.active:before{opacity:1}.fld-tab{width:264px;box-sizing:border-box}body.ltr .fld-tab{padding:0 25px 24px 0}body.rtl .fld-tab{padding:0 0 24px 25px}.fld-tab .tabs{margin:-10px -12px 0;padding:10px 12px 0;overflow:hidden;display:flex}.fld-tab .tabs .tab{display:flex;max-width:calc(100% - 10px);box-sizing:border-box;padding:8px 14px;border-radius:var(--medium-border-radius) var(--medium-border-radius) 0 0}body:not(.dragging) .fld-tab .tabs .tab.draggable{cursor:move;cursor:grab}.fld-tab .tabs .tab span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fld-tab .fld-tabcontent{padding:14px}body.ltr .fld-tab .fld-tabcontent{border-radius:0 var(--medium-border-radius) var(--medium-border-radius) var(--medium-border-radius)}body.rtl .fld-tab .fld-tabcontent{border-radius:var(--medium-border-radius) 0 var(--medium-border-radius) var(--medium-border-radius)}.fld-tab.fld-insertion .tabs .tab,.fld-tab.fld-insertion .fld-tabcontent{margin:-2px;border:2px dashed var(--hairline-color);box-shadow:none;background-color:var(--gray-050);background-image:linear-gradient(to right, hsl(212deg, 50%, 95%) 1px, transparent 0px),linear-gradient(to bottom, hsl(212deg, 50%, 95%) 1px, transparent 1px);background-size:24px 24px}.fld-tab.fld-insertion .tabs .tab{background-position:-1px -1px}.fld-tab.fld-insertion .fld-tabcontent{background-position:-1px -13px}.fld-tab-caboose{min-height:24px}.fld-indicator{display:inline-flex;font-size:11px;color:var(--uicontrol-color)}body.ltr .fld-indicator{margin-left:4px}body.rtl .fld-indicator{margin-right:4px}body.ltr .fld-indicator+.fld-indicator{margin-left:2px}body.rtl .fld-indicator+.fld-indicator{margin-right:2px}.fld-element{position:relative;display:flex;align-items:center;padding:7px 10px;box-shadow:inset 0 0 0 1px var(--hairline-color);border-radius:var(--medium-border-radius);background-color:var(--white)}body:not(.dragging) .fld-element{cursor:move;cursor:grab}.fld-element+.fld-element{margin-top:7px}.fld-element.fld-insertion{box-sizing:border-box;border:2px dashed var(--hairline-color);border-radius:var(--medium-border-radius);background:none;box-shadow:none}.fld-element.draghelper{box-shadow:0 1px 5px -1px rgba(31,41,51,.2)}.fld-element.fld-field{color:var(--medium-text-color);background-color:var(--gray-100)}.fld-element.fld-field:not(.draghelper){box-shadow:none}.fld-element.fld-field .fld-field-hidden:not(.hidden){margin-top:-3px}body.ltr .fld-element.fld-field .fld-field-hidden:not(.hidden){margin-right:5px}body.rtl .fld-element.fld-field .fld-field-hidden:not(.hidden){margin-left:5px}.fld-element.fld-field .fld-field-hidden:not(.hidden):before{font-family:\"Craft\";speak:none;-webkit-font-feature-settings:\"liga\",\"dlig\";-moz-font-feature-settings:\"liga=1, dlig=1\";-moz-font-feature-settings:\"liga\",\"dlig\";-ms-font-feature-settings:\"liga\",\"dlig\";-o-font-feature-settings:\"liga\",\"dlig\";font-feature-settings:\"liga\",\"dlig\";text-rendering:optimizeLegibility;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;direction:ltr;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;text-align:center;font-style:normal;vertical-align:middle;word-wrap:normal !important;user-select:none;opacity:var(--icon-opacity);content:\"shuteye\"}.fld-element.fld-field .field-name .fld-element-label{margin-bottom:2px}.fld-element .fld-element-icon{text-align:center}body.ltr .fld-element .fld-element-icon{margin-right:5px}body.rtl .fld-element .fld-element-icon{margin-left:5px}.fld-element .fld-element-icon,.fld-element .fld-element-icon svg{width:16px;height:16px}.fld-element .fld-element-icon svg rect,.fld-element .fld-element-icon svg circle,.fld-element .fld-element-icon svg ellipse,.fld-element .fld-element-icon svg line,.fld-element .fld-element-icon svg polyline,.fld-element .fld-element-icon svg polygon,.fld-element .fld-element-icon svg path,.fld-element .fld-element-icon svg text{fill:var(--ui-control-color);stroke-width:0}.fld-element .field-name{flex:1;overflow:hidden}.fld-element .field-name .fld-element-label,.fld-element .field-name .fld-attribute{flex:1;display:flex;align-items:center}.fld-element .field-name .fld-element-label h4,.fld-element .field-name .fld-attribute .smalltext{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fld-element .field-name .fld-element-label h4{font-weight:normal;color:var(--text-color);margin:0}body.dragging{cursor:move !important;cursor:grabbing !important}.fld-hr,.fld-br{display:flex;justify-content:center;padding:9px 10px}.fld-hr:before,.fld-br:before{position:absolute;display:block;top:calc(50% - 2px);left:10px;width:calc(100% - 20px);height:4px;content:\"\";font-size:0;border-radius:2px}.fld-hr .smalltext,.fld-br .smalltext{position:relative;background-color:var(--gray-100);border-radius:8px;padding:1px 7px}.fld-hr:before{background-color:var(--gray-100)}.fld-br:before{background-image:repeating-linear-gradient(to right, var(--gray-100), var(--gray-100) 5.2631578947%, transparent 5.2631578947%, transparent 10.5263157895%, var(--gray-100) 10.5263157895%)}.fld-element-settings-body{flex:1;margin:-24px var(--neg-padding) 0;padding:24px var(--padding);overflow:hidden auto;position:relative}.fld-element-settings-footer{position:relative;display:flex;flex-direction:row;margin:0 var(--neg-padding) -24px;padding:var(--padding);background:#fff;box-shadow:0 0 0 1px #cdd8e4,0 2px 12px rgba(205,216,228,.5);background-color:var(--gray-050);z-index:3}.fld-element-settings-footer:focus{box-shadow:var(--focus-ring)}.fld-element-settings-footer>.ee-site-select{flex:1}body.ltr .fld-element-settings-footer>.btn{margin-left:5px}body.rtl .fld-element-settings-footer>.btn{margin-right:5px}body.ltr .fld-element-settings-footer>.spinner{margin:0 var(--neg-padding) 0 0}body.rtl .fld-element-settings-footer>.spinner{margin:0 0 0 var(--neg-padding)}html.noscroll,html.noscroll body{overflow:hidden;height:100%}.modal.imageeditor{background-color:var(--gray-900);color:var(--white);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-weight:500;--focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)), 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);opacity:0;user-select:none}.modal.imageeditor.modal{border-radius:0}.modal.imageeditor.modal .body:after{display:none}.modal.imageeditor .btn:not(.submit):not(.noborder){background-color:var(--gray-600);color:var(--white)}.modal.imageeditor .btn:not(.submit):not(.noborder):hover{background-color:var(--gray-700)}.modal.imageeditor .btn:not(.submit):not(.noborder).active{background-color:var(--gray-800)}.modal.imageeditor .icon::before{width:24px;height:24px;margin-top:-4px;margin-left:-3px;display:inline-block;content:\"\"}.modal.imageeditor .icon.rotate-left::before{background-image:url(../images/image-editor/rotate-left.svg)}.modal.imageeditor .icon.rotate-right::before{background-image:url(../images/image-editor/rotate-right.svg)}.modal.imageeditor .icon.flip-vertical::before{background-image:url(../images/image-editor/flip-vertical.svg)}.modal.imageeditor .icon.flip-horizontal::before{background-image:url(../images/image-editor/flip-horizontal.svg)}.modal.imageeditor .icon.constraint::before{background-image:url(../images/image-editor/unconstrained.svg)}.modal.imageeditor .icon.focal-point::before{background-image:url(../images/image-editor/focal-point.svg)}.modal.imageeditor .body{display:flex;padding:0}.modal.imageeditor input{color:var(--text-color)}.modal.imageeditor .body .tabs{border-right:1px solid var(--gray-1000)}.modal.imageeditor .body .tabs ul{width:100px;flex-direction:column;align-items:stretch}.modal.imageeditor .body .tabs ul li{position:relative;padding:14px;text-align:center;border-bottom:1px solid var(--gray-1000);cursor:pointer}.modal.imageeditor .body .tabs ul li::before{position:absolute;top:0;content:\"\";width:0;height:100%;background-color:currentColor}body.ltr .modal.imageeditor .body .tabs ul li::before{left:0}body.rtl .modal.imageeditor .body .tabs ul li::before{right:0}.modal.imageeditor .body .tabs ul li.selected{background-color:#151c23}.modal.imageeditor .body .tabs ul li.selected::before{width:2px}.modal.imageeditor .body .tabs ul li i{background-repeat:no-repeat;background-position:top center;display:block;height:24px}.modal.imageeditor .body .tabs ul li[data-view=rotate] i{background-image:url(../images/image-editor/rotate-left.svg)}.modal.imageeditor .body .tabs ul li[data-view=crop] i{background-image:url(../images/image-editor/crop.svg)}.modal.imageeditor .body .tabs ul li[data-view=filters] i{background-image:url(../images/image-editor/filters.svg)}.modal.imageeditor .body .tabs ul li:hover{background-color:#1b242c}.modal.imageeditor .body .tabs ul li:hover{cursor:pointer}.modal.imageeditor .body .views{padding:24px;overflow:auto}.modal.imageeditor .body .views .btngroup{margin-bottom:24px}.modal.imageeditor .body .views .filters ul{width:100px}.modal.imageeditor .body .views .filters ul li{text-align:center;margin-right:14px;margin-bottom:14px}.modal.imageeditor .body .views .filters ul li:last-child{margin-right:0}.modal.imageeditor .body .views .filters ul li img{border:3px solid rgba(0,0,0,0);border-radius:4px}.modal.imageeditor .body .views .filters ul li span{display:block}.modal.imageeditor .body .views .filters ul li:hover{cursor:pointer}.modal.imageeditor .body .views .filters ul li.selected img{border-color:var(--white)}.modal.imageeditor .body .image-container{flex-grow:1;display:flex;flex-direction:column;position:relative;overflow:hidden}.modal.imageeditor .body .image-container .image{text-align:center;flex-grow:1;position:relative;margin:14px}.modal.imageeditor .body .image-container .image canvas{position:absolute;top:0;left:0}.modal.imageeditor .body .image-container .image-tools{text-align:center}.modal.imageeditor .body .image-container .image-tools .straightening{max-width:400px;min-height:3.75rem;display:block;margin:0 auto;overflow:hidden}.modal.imageeditor .footer{position:absolute;background-color:rgba(0,0,0,0);bottom:0;left:0;width:100%;border-top:1px solid #000}body.has-debug-toolbar .modal.imageeditor .footer{padding-bottom:50px}.modal.imageeditor .body .views .crop fieldset .heading{display:none}.modal.imageeditor .body .views .crop .custom-constraint-spacer{padding:0 var(--xs)}.modal.imageeditor .body .views .crop .constraint-group{display:grid;grid-gap:var(--xs)}body.ltr .modal.imageeditor .body .views .crop .custom{padding-left:21px}body.rtl .modal.imageeditor .body .views .crop .custom{padding-right:21px}.modal.imageeditor .body .views .crop .orientation{display:flex;align-items:center;justify-content:center}.modal.imageeditor .body .views .crop .orientation input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-position:center center;background-repeat:no-repeat;margin:0 4px;cursor:pointer}.modal.imageeditor .body .views .crop .orientation input[value=landscape]{width:30px;height:20px;background-image:url(../images/image-editor/orientation-landscape-unchecked.svg)}.modal.imageeditor .body .views .crop .orientation input[value=landscape]:checked{background-image:url(../images/image-editor/orientation-landscape-checked.svg)}.modal.imageeditor .body .views .crop .orientation input[value=portrait]{width:20px;height:30px;background-image:url(../images/image-editor/orientation-portrait-unchecked.svg)}.modal.imageeditor .body .views .crop .orientation input[value=portrait]:checked{background-image:url(../images/image-editor/orientation-portrait-checked.svg)}.modal.imageeditor.vertical .body .views .crop>.btngroup:first-child{justify-content:center}.modal.imageeditor:not(.vertical) .body .views .crop .constraint.custom{margin-top:var(--xs)}.vertical.imageeditor .body{flex-direction:column}.vertical.imageeditor .body .image-container{flex-basis:30vh;flex-shrink:0}.vertical.imageeditor .body .constraint-group{grid-template-columns:1fr 1fr}.vertical.imageeditor .body .tabs ul{display:flex;flex-direction:row;width:100%;border-top:1px solid #000;border-bottom:1px solid #000}.vertical.imageeditor .body .tabs ul li{flex-grow:1;border:0;border-right:1px solid #000;padding:10px 7px}.vertical.imageeditor .body .tabs ul li::before{top:unset;top:0;width:100%;height:0}.vertical.imageeditor .body .tabs ul li.selected::before{width:100%;height:2px}.vertical.imageeditor .body .views{width:auto}.vertical.imageeditor .body .views .rotate{display:flex;justify-content:center;flex-wrap:wrap;margin-bottom:-14px}.vertical.imageeditor .body .views .rotate .btngroup{margin:0 7px 14px}.vertical.imageeditor .body .views .filters ul{width:auto;height:109px;overflow:auto;white-space:nowrap;margin:0 -24px;margin-bottom:-24px;padding:24px;text-align:center}.vertical.imageeditor .body .views .filters ul li{display:inline-block;margin-bottom:0}.slide-rule{position:relative;padding:10px 0}.slide-rule:focus{box-shadow:none}body:not(.reduce-focus-visibility) .slide-rule:focus .cursor::after,body.reduce-focus-visibility .slide-rule:focus-visible .cursor::after{box-shadow:var(--focus-ring)}.slide-rule .cursor::after{content:\"\";width:1.25rem;height:3.125rem;position:absolute;top:-15px;left:50%;transform:translateX(-50%)}.slide-rule .cursor{position:absolute;margin-left:-0.25rem;margin-top:4px;left:50%;z-index:1;width:0;height:0;border-left:0.3125rem solid rgba(0,0,0,0);border-right:0.3125rem solid rgba(0,0,0,0);border-top:0.3125rem solid #63a6e1}.slide-rule .graduations{white-space:nowrap;height:40px;position:relative}.slide-rule .graduations ul{position:relative;float:left}.slide-rule .graduations ul li{display:inline-block;font-size:8px;position:relative;width:10px}.slide-rule .graduations ul li:not(.main-graduation){left:1px}.slide-rule .graduations ul li.main-graduation:before{border-left-width:3px}.slide-rule .graduations ul li.main-graduation .label{display:block;cursor:default}.slide-rule .graduations ul li.selected:before{border-left-color:#63a6e1}.slide-rule .graduations ul li:before{content:\"\";position:absolute;border-left:1px solid var(--white);height:10px;top:0px;left:0}.slide-rule .graduations ul li .label{width:20px;position:absolute;top:10px;left:-9px;display:none;text-align:center}.slide-rule .value{display:none;position:absolute;bottom:0;left:50%;z-index:1;box-sizing:border-box;padding:5px;width:50px;margin-left:-25px;background:var(--gray-600)}.slide-rule .overlay{z-index:2;position:absolute;top:0;right:0;bottom:1px;left:0;background-image:linear-gradient(to right, var(--gray-900) 0%, rgba(31, 41, 51, 0) 15%, rgba(31, 41, 51, 0) 85%, var(--gray-900) 100%)}.menu.dark{background-color:var(--gray-600);-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-weight:500}.menu.dark ul li a{color:var(--white) !important}.menu.dark ul li a:not(.sel):not(.disabled):hover{background-color:var(--gray-700)}_:-ms-lang(x),.elements .tableview td.checkbox-cell input.checkbox+label,.elements .tableview td.checkbox-cell div.checkbox{top:16px}_:-ms-lang(x),input.checkbox+label:empty,div:empty.checkbox{display:block}.yii-debug-toolbar__title a{display:block !important}","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n:root {\n --white: #fff;\n --black: #000;\n\n --gray-050: hsl(212, 60%, 97%);\n --gray-100: hsl(212, 50%, 93%);\n --gray-200: hsl(212, 30%, 85%);\n --gray-300: hsl(211, 13%, 65%);\n --gray-350: hsl(211, 11%, 59%);\n --gray-400: hsl(210, 10%, 53%);\n --gray-500: hsl(211, 12%, 43%);\n --gray-550: hsl(210, 13%, 40%);\n --gray-600: hsl(209, 14%, 37%);\n --gray-700: hsl(209, 18%, 30%);\n --gray-800: hsl(209, 20%, 25%);\n --gray-900: hsl(210, 24%, 16%);\n --gray-1000: hsl(210, 24%, 10%);\n\n --blue-050: #e3f8ff;\n --blue-100: #b3ecff;\n --blue-200: #81defd;\n --blue-300: #5ed0fa;\n --blue-400: #40c3f7;\n --blue-500: #2bb0ed;\n --blue-600: #1992d4;\n --blue-700: #127fbf;\n --blue-800: #0b69a3;\n --blue-900: #035388;\n\n --cyan-050: #e0fcff;\n --cyan-100: #bef8fd;\n --cyan-200: #87eaf2;\n --cyan-300: #54d1db;\n --cyan-400: #38bec9;\n --cyan-500: #2cb1bc;\n --cyan-600: #14919b;\n --cyan-700: #0e7c86;\n --cyan-800: #0a6c74;\n --cyan-900: #044e54;\n\n --pink-050: #ffe3ec;\n --pink-100: #ffb8d2;\n --pink-200: #ff8cba;\n --pink-300: #f364a2;\n --pink-400: #e8368f;\n --pink-500: #da127d;\n --pink-600: #bc0a6f;\n --pink-700: #a30664;\n --pink-800: #870557;\n --pink-900: #620042;\n\n --red-050: #ffe3e3;\n --red-100: #ffbdbd;\n --red-200: #ff9b9b;\n --red-300: #f86a6a;\n --red-400: #ef4e4e;\n --red-500: #e12d39;\n --red-600: #cf1124;\n --red-700: #ab091e;\n --red-800: #8a041a;\n --red-900: #610316;\n\n --yellow-050: #fffbea;\n --yellow-100: #fff3c4;\n --yellow-200: #fce588;\n --yellow-300: #fadb5f;\n --yellow-400: #f7c948;\n --yellow-500: #f0b429;\n --yellow-600: #de911d;\n --yellow-700: #cb6e17;\n --yellow-750: #bd5a14;\n --yellow-800: #b44d12;\n --yellow-900: #8d2b0b;\n\n --teal-050: #effcf6;\n --teal-100: #c6f7e2;\n --teal-200: #8eedc7;\n --teal-300: #65d6ad;\n --teal-400: #3ebd93;\n --teal-500: #27ab83;\n --teal-550: #20a07b;\n --teal-600: #199473;\n --teal-700: #147d64;\n --teal-800: #0c6b58;\n --teal-900: #014d40;\n}\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n:root {\n --bg-color: $grey100;\n --bg-color-hsl: #{hue($grey100)}, #{saturation($grey100)},\n #{lightness($grey100)};\n\n // submit button colors\n --primary-color: var(--red-500);\n --secondary-color: var(--gray-500);\n\n --input-color: hsl(212, 25%, 50%);\n\n // text colors\n --text-color: var(--gray-700);\n --medium-dark-text-color: var(--gray-550);\n --medium-text-color: var(--gray-550);\n --light-text-color: var(--gray-500);\n --link-color: #2563eb;\n\n // font styles\n --font-weight-bold: 700;\n\n // menu colors\n --menu-option-color: var(--text-color);\n --menu-option-active-color: var(--white);\n --menu-option-active-background-color: var(--gray-350);\n\n // hairline colors\n --hairline-color: #{transparentize(hsl(209, 20%, 25%), 0.9)};\n --medium-hairline-color: #{transparentize(hsl(209, 14%, 37%), 0.75)};\n --dark-hairline-color: #{transparentize(hsl(210, 10%, 53%), 0.5)};\n\n // focus colors\n --light-focus-color: var(--blue-300);\n --medium-focus-color: var(--blue-500);\n --dark-focus-color: #0f74b1;\n\n // focus rings\n --light-focus-ring: 0 0 0 1px #5ed0fa,\n 0 0 0 3px #{transparentize(#5ed0fa, 0.3)};\n --medium-focus-ring: 0 0 0 1px #2bb0ed,\n 0 0 0 3px #{transparentize(#2bb0ed, 0.3)};\n --dark-focus-ring: 0 0 0 1px #0f74b1,\n 0 0 0 3px #{transparentize(#0f74b1, 0.3)};\n\n // selection colors\n --light-sel-color: var(--gray-200);\n --dark-sel-color: var(--gray-600);\n\n // alert/notice colors\n --error-color: var(--red-600);\n --warning-color: var(--yellow-800);\n --success-color: var(--teal-700);\n --notice-color: var(--blue-800);\n\n // status colors\n --enabled-color: var(--teal-550);\n --pending-color: var(--yellow-700);\n --disabled-color: var(--red-600);\n\n // misc colors\n --indicator-border-color: var(--yellow-700);\n --indicator-icon-color: var(--yellow-750);\n\n // UI element styles\n --small-border-radius: 3px;\n --medium-border-radius: 4px;\n --large-border-radius: 5px;\n\n --input-border-color: #{transparentize($inputColor, 0.75)};\n\n --menu-border-radius: var(--medium-border-radius);\n --checkbox-size: 16px;\n --radio-size: 16px;\n}\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n@mixin checkered-bg($size) {\n // h/t https://gist.github.com/dfrankland/f6fed3e3ccc42e3de482b324126f9542\n $halfSize: $size * 0.5;\n background-image: linear-gradient(45deg, var(--gray-100) 25%, transparent 25%),\n linear-gradient(135deg, var(--gray-100) 25%, transparent 25%),\n linear-gradient(45deg, transparent 75%, var(--gray-100) 75%),\n linear-gradient(135deg, transparent 75%, var(--gray-100) 75%);\n background-size: $size $size;\n background-position: 0 0, $halfSize 0, $halfSize -#{$halfSize}, 0 $halfSize;\n}\n\n@mixin striped-bg($size, $color: $grey100) {\n // h/t https://css-tricks.com/stripes-css/\n $halfSize: $size * 0.5;\n body.ltr & {\n background: repeating-linear-gradient(\n 135deg,\n var(--white),\n var(--white) $halfSize,\n $color $halfSize,\n $color $size\n );\n }\n body.rtl & {\n background: repeating-linear-gradient(\n 45deg,\n var(--white),\n var(--white) $halfSize,\n $color $halfSize,\n $color $size\n );\n }\n}\n\n@font-face {\n font-family: 'Craft';\n src: url('../fonts/Craft.woff') format('woff'),\n url('../fonts/Craft.ttf') format('truetype'),\n url('../fonts/Craft.svg#Craft') format('svg');\n font-weight: normal;\n font-style: normal;\n}\n\n/* ----------------------------------------\n/* Basic stuff\n/* ----------------------------------------*/\n\n:root {\n --ui-control-color: var(--gray-550);\n --ui-control-hover-color: var(--gray-600);\n --ui-control-active-color: var(--gray-700);\n --icon-opacity: 0.8;\n --light-focus-hsl: #{hue($lightFocusColor)}, #{saturation($lightFocusColor)},\n #{lightness($lightFocusColor)};\n --medium-focus-hsl: #{hue($mediumFocusColor)},\n #{saturation($mediumFocusColor)}, #{lightness($mediumFocusColor)};\n --dark-focus-hsl: #{hue($darkFocusColor)}, #{saturation($darkFocusColor)},\n #{lightness($darkFocusColor)};\n --focus-ring: 0 0 0 1px hsl(var(--dark-focus-hsl)),\n 0 0 0 3px hsla(var(--dark-focus-hsl), 0.8);\n --inner-focus-ring: inset 0 0 0 1px hsl(var(--dark-focus-hsl)),\n inset 0 0 0 3px hsla(var(--dark-focus-hsl), 0.7);\n --touch-target-size: 24px; /* Minimum recommended touch target size */\n}\n\nbody,\nhtml {\n box-shadow: var(--light-focus-ring);\n background-color: var(--gray-100);\n}\n\nhtml.noscroll,\nhtml.noscroll body {\n overflow: hidden;\n}\n\nbody {\n width: 100vw;\n overflow-x: hidden;\n @include fontSize(14);\n line-height: 1.42;\n color: var(--text-color);\n -webkit-font-smoothing: subpixel-antialiased;\n}\n\nbody.rtl {\n direction: rtl;\n}\n\nbody,\ninput,\nselect,\ntextarea {\n @include sans-serif-font;\n}\n\n.first,\nh1:first-child,\nh2:first-child,\nh3:first-child,\nh4:first-child,\nh5:first-child,\nh6:first-child,\np:first-child,\nblockquote:first-child,\nhr:first-child,\n.pane:first-child,\n.grid:first-child,\nfieldset:first-child,\n.field:first-child,\n.toolbar:first-child,\n.buttons:first-child,\n.condition-container:first-child {\n margin-top: 0 !important;\n}\n\n.last,\nh1:last-child,\nh2:last-child,\nh3:last-child,\nh4:last-child,\nh5:last-child,\nh6:last-child,\np:last-child,\nblockquote:last-child,\n.pane:last-child,\n.grid:last-child,\n.meta:last-child,\nfieldset:last-child,\n.field:last-child,\n.toolbar:last-child,\n.buttons:last-child,\n.condition-container:last-child {\n margin-bottom: 0 !important;\n}\n\n.no-scroll {\n overflow: hidden !important;\n}\n\n.draghelper {\n box-sizing: border-box;\n}\n\nimg {\n max-width: 100%;\n}\n\n.text,\ntable.editable textarea {\n body.rtl .ltr & {\n text-align: left !important;\n direction: ltr !important;\n }\n\n body.ltr .rtl & {\n text-align: right !important;\n direction: rtl !important;\n }\n}\n\n/* icons */\n.icon:before,\n.menu ul.padded li a.sel:before,\n.menu .flex.padded.sel:before,\n.texticon:before,\n.element:before,\n#help:before,\n.secure:before,\n.insecure:before,\n.go:after,\n.required:after,\n.preview-btn:before,\n.view-btn:before,\n[data-icon]:before,\n[data-icon-after]:after {\n @include icon;\n}\n\n.badge-icon {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 17px;\n height: 17px;\n box-sizing: border-box;\n border: 1px solid var(--indicator-border-color);\n border-radius: var(--small-border-radius);\n color: var(--indicator-icon-color);\n font-size: 9px;\n}\n\n.secure:before,\n.insecure:before {\n margin-top: -3px;\n font-size: 14px;\n}\n\n[data-icon]:before {\n content: attr(data-icon);\n}\n\n[data-icon-after]:after {\n content: attr(data-icon-after);\n}\n\nbody.rtl [data-icon='list']:before,\nbody.rtl [data-icon-after='list']:after {\n content: 'listrtl';\n}\n\nbody.rtl [data-icon='structure']:before,\nbody.rtl [data-icon-after='structure']:after {\n content: 'structurertl';\n}\n\n.icon.secure:before {\n content: 'secure';\n}\n\n.icon.insecure:before {\n content: 'insecure';\n}\n\n.icon.add:before {\n content: 'plus';\n}\n\n.icon.edit:before {\n content: 'edit';\n}\n\n.icon.settings:before {\n content: 'settings';\n}\n\n.icon.search:before {\n content: 'search';\n}\n\n.icon.expand:before {\n content: 'expand';\n}\n\n.icon.collapse:before {\n content: 'collapse';\n}\n\n.help:before {\n content: 'help';\n color: var(--pink-400);\n}\n\n.preview-btn,\n.view-btn {\n &:before {\n @include margin-right(var(--xs));\n }\n}\n\n.preview-btn:before {\n margin-top: -2px;\n content: 'view';\n}\n\n.view-btn:before {\n body.ltr & {\n content: 'share';\n }\n body.rtl & {\n content: 'shareleft';\n }\n}\n\n/* headings */\nh1,\n.h1 {\n margin-bottom: 24px;\n font-size: 18px;\n font-weight: bold;\n line-height: 1.2;\n}\n\nh2,\n.h2 {\n margin: 14px 0;\n font-size: 16px;\n font-weight: bold;\n line-height: 1.2;\n}\n\nh3,\n.h3 {\n margin: 14px 0;\n font-weight: bold;\n line-height: 1.2;\n}\n\nh4,\n.h4 {\n margin: 14px 0;\n font-weight: bold;\n line-height: 1.2;\n color: var(--medium-text-color);\n}\n\nh5,\n.h5 {\n margin: 14px 0 3px;\n line-height: 1.2;\n color: var(--medium-text-color);\n}\n\nh6,\n.h6 {\n @include h6-styles;\n}\n\nh1[data-icon]:before {\n @include margin(-8px, 10px, 0, 0);\n}\n\nh2[data-icon]:before {\n @include margin(-4px, 6px, 0, 0);\n font-size: 19px;\n}\n\n/* horizontal rule */\nhr {\n margin: 24px 0;\n border: none;\n border-top: 1px solid var(--hairline-color);\n height: 0;\n color: transparent;\n}\n\n.pane hr {\n margin: 24px -24px;\n}\n\n/* paragraphs */\np {\n margin: 1em 0;\n}\n\nh5 + p {\n margin-top: 0;\n}\n\nsup {\n vertical-align: super;\n font-size: smaller;\n}\n\nsub {\n vertical-align: sub;\n font-size: smaller;\n}\n\n.indent {\n @include margin-left(14px);\n}\n\n/* lists */\n.bullets {\n @include padding-left(40px);\n list-style-type: square;\n}\n\nol {\n @include padding-left(40px);\n list-style-type: decimal;\n}\n\n/* code */\ncode,\n.code,\n.code input,\n.code textarea {\n @include fixed-width-font;\n\n &.smalltext {\n font-size: 0.8em !important;\n }\n}\n\npre code {\n display: block;\n overflow-x: auto;\n}\n\n/* links */\na {\n color: var(--link-color);\n cursor: pointer;\n\n body.underline-links & {\n text-decoration: underline;\n }\n}\n\na:hover {\n text-decoration: underline;\n}\n\na.sel,\nli.sel a {\n cursor: default !important;\n text-decoration: none;\n}\n\n.go:after {\n font-size: 11px;\n margin-top: -1px;\n @include padding-left(4px);\n color: var(--link-color);\n opacity: 0.9;\n body.ltr & {\n content: 'circlerarr';\n }\n body.rtl & {\n content: 'circlelarr';\n }\n}\n\nbutton {\n cursor: pointer;\n}\n\n/* revision button */\n.context-btn.disabled {\n opacity: 1;\n color: var(--medium-dark-text-color);\n background-color: transparentize($grey200, 0.5) !important;\n}\n\n/* status icons */\n.checkmark-icon,\n.alert-icon {\n padding: 5px;\n margin-bottom: 0 !important;\n line-height: 10px;\n border-radius: 20px;\n cursor: pointer;\n\n &:before {\n @include icon;\n }\n}\n\n.checkmark-icon {\n p & {\n display: inline-block;\n }\n\n background-color: var(--gray-200);\n\n &:before {\n content: 'check';\n color: var(--success-color);\n }\n}\n\n.alert-icon {\n background-color: var(--gray-200);\n\n &:before {\n content: 'alert';\n color: var(--error-color);\n }\n}\n\n.menu.revision-menu {\n padding: 10px 24px;\n\n hr {\n margin: 10px -24px;\n }\n\n ul {\n li {\n &.sel {\n margin: 0 -14px;\n padding: 0 14px;\n background: var(--gray-050);\n border-radius: var(--large-border-radius);\n\n .edited-desc {\n display: flex;\n align-items: center;\n @include margin-left(10px);\n border-top: 1px solid var(--hairline-color);\n padding: 10px 0;\n color: var(--light-text-color);\n white-space: normal;\n\n p {\n margin: 0;\n }\n\n .btn {\n @include margin-left(14px);\n }\n }\n }\n\n a {\n padding-top: 7px;\n border-radius: var(--large-border-radius);\n }\n }\n }\n\n .extralight {\n margin-top: 2px;\n }\n}\n\n.revision-status-hud {\n max-width: 400px;\n\n .http-error {\n border-radius: var(--medium-border-radius);\n border: 1px solid var(--hairline-color);\n color: var(--light-text-color);\n background-color: var(--gray-050);\n padding: 7px 14px;\n }\n}\n\n.draft-notice {\n display: flex;\n align-items: center;\n align-content: stretch;\n justify-content: center;\n gap: var(--s);\n color: var(--blue-800);\n\n #content-notice & {\n display: inline-flex;\n justify-content: flex-start;\n }\n\n .so-notice > & {\n @include margin(\n calc(var(--s) * -1),\n 0,\n calc(var(--s) * -1),\n calc(var(--xl) * -1)\n );\n @include padding(var(--s), 0, var(--s), var(--xl));\n @include border-bottom-left-radius(var(--large-border-radius));\n\n body.ltr & {\n background-image: linear-gradient(\n to bottom right,\n transparentize($blue600, 0.8),\n transparentize($blue600, 1) 50%\n );\n }\n body.rtl & {\n background-image: linear-gradient(\n to left,\n transparentize($blue600, 0.8),\n transparentize($blue600, 1)\n );\n }\n }\n\n p {\n flex: 1;\n margin: 0;\n }\n\n .draft-icon {\n position: relative;\n flex-shrink: 0;\n width: 34px;\n height: 34px;\n display: flex;\n justify-content: center;\n align-items: center;\n border-radius: 100%;\n border: 2px solid transparentize($blue800, 0.8);\n box-sizing: border-box;\n box-shadow: 0 1px 1px 1px var(--white);\n\n &:before {\n position: relative;\n left: 1px;\n color: var(--blue-800) !important;\n font-size: 18px;\n }\n\n &:after {\n content: '';\n font-size: 0;\n position: absolute;\n top: -2px;\n left: -2px;\n right: -2px;\n bottom: -2px;\n border-radius: 100%;\n box-shadow: inset 0 2px 0 transparentize($blue900, 0.8);\n }\n }\n\n .discard-changes-btn {\n @include margin-left(var(--xs));\n background-color: transparent !important;\n color: var(--blue-800) !important;\n border: 2px solid var(--blue-600);\n\n &:hover,\n &:focus {\n border-color: darken($blue600, 5%);\n }\n\n &:active {\n border-color: darken($blue600, 10%);\n }\n }\n}\n\n/* toggles */\nbutton.toggle {\n appearance: none;\n color: inherit;\n background: none;\n border: none;\n padding: 0;\n}\n\n.toggle:before,\na.fieldtoggle:before {\n @include angle(right);\n transition: transform linear 100ms;\n}\n\n.toggle.expanded:before,\na.fieldtoggle.expanded:before,\n.sidebar nav li.expanded > .toggle:before,\n.structure li:not(.collapsed) > .row > .toggle:before {\n transform: rotate(45deg) !important;\n}\n\na.fieldtoggle {\n display: block;\n position: relative;\n margin: 14px 0;\n @include padding-left(12px);\n color: var(--text-color);\n text-decoration: none;\n}\n\na.fieldtoggle:before {\n display: block;\n position: absolute;\n top: 7px;\n @include left(-1px);\n}\n\n/* emphasis */\nem,\ni {\n font-style: italic;\n}\n\nstrong,\nb,\ni em {\n font-weight: bold;\n}\n\n/* readable blocks */\n.readable {\n @include readable;\n}\n\n/* text styles */\n.leftalign {\n @include alignleft;\n}\n\n.topalign {\n vertical-align: top;\n}\n\n.rightalign {\n @include alignright;\n}\n\n.centeralign {\n text-align: center !important;\n}\n\n.nowrap {\n white-space: nowrap;\n}\n\n.break-word {\n word-wrap: break-word;\n}\n\n.light {\n color: var(--medium-text-color) !important;\n font-weight: normal;\n}\n\n.extralight {\n color: var(--light-text-color) !important;\n}\n\n.smalltext {\n font-size: 12px;\n line-height: 1.2;\n}\n\n.largetext {\n font-size: 16px;\n line-height: 1.2;\n}\n\n.zilch {\n padding: 100px 0;\n text-align: center;\n font-size: 20px;\n line-height: 24px;\n color: var(--light-text-color);\n\n &.small {\n padding: 24px 0;\n font-size: 16px;\n }\n}\n\ninput.checkbox + label.smalltext {\n padding-top: 2px;\n}\n\n.required:after {\n content: 'asterisk';\n @include margin(-2px, 0, 0, 5px);\n font-size: 7px;\n color: var(--error-color);\n}\n\n.scrollpane {\n overflow: auto;\n}\n\n.left {\n @include floatleft;\n}\n\n.right {\n @include floatright;\n}\n\nth,\ntd {\n @include alignleft;\n vertical-align: middle;\n}\n\nbody.ltr table[dir='rtl'] {\n th,\n td {\n text-align: right;\n }\n}\nbody.rtl table[dir='ltr'] {\n th,\n td {\n text-align: left;\n }\n}\n\nth.right,\ntd.right {\n float: none;\n @include alignright;\n}\n\n.clear {\n display: block;\n clear: both;\n height: 0;\n}\n\n.fullwidth {\n width: 100%;\n}\n\n.token {\n @include token-styles;\n}\n\n.token[data-name='*'] {\n position: relative;\n width: 10px;\n}\n\n.token[data-name='*'] span {\n opacity: 0;\n}\n\n.token[data-name='*']:before {\n @include icon;\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n font-size: 9px;\n line-height: 17px;\n content: 'asterisk';\n text-indent: 0;\n}\n\n.token:focus {\n @include active-token-styles;\n}\n\n// Override .token for Prism\n.highlight {\n .token {\n display: inline;\n border: none;\n border-radius: 0;\n padding: 0;\n font-size: inherit;\n line-height: inherit;\n text-shadow: none;\n background: transparent;\n box-shadow: none;\n }\n}\n\n.pane.highlight {\n pre[class*='language-'] {\n overflow: visible;\n\n & > code.diff-highlight .token:not(.prefix) {\n margin: 0 -24px;\n padding: 0 24px;\n }\n }\n}\n\n.success {\n color: var(--success-color) !important;\n}\n\n.notice,\n.warning {\n &.with-icon,\n .icon {\n &:before {\n @include margin(-2px, 2px, 0, 0);\n @include icon;\n width: 1em;\n }\n }\n\n &.has-icon {\n display: flex;\n flex-wrap: nowrap;\n align-items: flex-start;\n\n .icon {\n flex-shrink: 1;\n }\n }\n}\n\n.notice {\n color: var(--notice-color) !important;\n a {\n text-decoration: underline;\n }\n\n &.with-icon,\n .icon {\n &:before {\n content: 'lightbulb';\n }\n }\n}\n\n.warning {\n color: var(--warning-color) !important;\n\n &.with-icon,\n .icon {\n &:before {\n content: 'alert';\n }\n }\n}\n\n.error {\n color: var(--error-color) !important;\n}\n\n.icon.move {\n display: inline-block;\n}\n\n.icon.move:not(.disabled) {\n cursor: move;\n}\n\n.icon.move:before {\n content: 'move';\n color: var(--ui-control-color);\n}\n\n.icon.move:not(.disabled):hover:before {\n color: var(--link-color);\n}\n\n.icon.delete {\n display: inline-block;\n line-height: inherit;\n\n &:before {\n content: 'remove';\n color: var(--ui-control-color);\n }\n\n &:not(.disabled) {\n cursor: pointer;\n\n &:hover:before {\n color: var(--disabled-color);\n }\n\n &:active:before {\n color: var(--red-800);\n }\n }\n}\n\n.hidden {\n display: none !important;\n}\n\n// Visually hide without hiding from screen readers\n.visually-hidden {\n @include visually-hidden;\n}\n\n.invisible {\n visibility: hidden;\n}\n\n.clearafter:after {\n @include clearafter;\n}\n\n.info {\n vertical-align: bottom;\n display: inline-block;\n width: 1em;\n height: 1.375em;\n text-align: center;\n cursor: pointer;\n overflow: hidden;\n\n &:before {\n @include icon;\n vertical-align: baseline;\n width: 100%;\n line-height: 1.375;\n color: var(--ui-control-color);\n }\n\n &:not(.warning) {\n &:before {\n content: 'info';\n }\n &:hover:before {\n color: var(--link-color);\n }\n }\n\n &.warning {\n &:before {\n content: 'alert';\n }\n &:hover:before {\n color: var(--warning-color);\n }\n }\n}\n\n.info-hud {\n table {\n max-width: 280px;\n table-layout: auto;\n }\n\n td {\n word-wrap: break-word;\n width: 100%;\n }\n}\n\n@media (max-width: 450px) {\n .info-hud {\n table {\n table-layout: fixed;\n width: 100%;\n }\n }\n}\n\n/* ----------------------------------------\n/* Content\n/* ----------------------------------------*/\n\n.content {\n position: relative;\n}\n\n.content:after {\n @include clearafter;\n}\n\n.customize-sources-modal {\n @include padding-left(200px);\n overflow: visible !important;\n\n & > .cs-sidebar {\n position: absolute;\n top: 0;\n @include left(0);\n margin: 0;\n padding: 10px 0;\n border: none;\n width: 200px;\n height: calc(100% - 50px);\n box-sizing: border-box;\n background-color: var(--gray-050);\n overflow: auto;\n box-shadow: inset -1px 0 0 var(--hairline-color);\n @include border-top-left-radius(var(--large-border-radius));\n\n & > .btn {\n @include margin(10px, 0, 0, 14px);\n display: block;\n width: calc(100% - 28px);\n }\n }\n\n &.sidebar-hidden {\n @include padding-left(0);\n\n & > .cs-sidebar {\n display: none;\n }\n }\n\n & > .source-settings {\n position: relative;\n height: calc(100% - 50px);\n box-sizing: border-box;\n padding: 24px;\n overflow: auto;\n }\n\n & > .footer {\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n }\n}\n\n.customize-sources-item {\n --selected-item-color: var(--white);\n display: flex;\n width: calc(100% - 1px);\n box-sizing: border-box;\n align-items: center;\n position: relative;\n margin-top: -1px;\n background-color: var(--gray-100);\n border: solid var(--hairline-color);\n border-width: 1px 0;\n user-select: none;\n cursor: default;\n\n & + .customize-sources-item {\n &.heading {\n margin-top: 10px;\n }\n\n &:not(.heading) {\n border-top: 1px solid var(--hairline-color);\n }\n }\n\n &.sel {\n @include light-focus-ring;\n --ui-control-color: var(--selected-item-color);\n background-color: var(--dark-sel-color);\n color: var(--selected-item-color);\n z-index: 1;\n }\n\n .label {\n flex: 1;\n }\n\n &.heading {\n .label {\n text-transform: uppercase;\n color: var(--light-text-color);\n font-size: 12px;\n font-weight: bold;\n }\n\n &.sel .label {\n color: var(--selected-item-color);\n }\n }\n}\n\n.customize-sources-item__move {\n position: absolute;\n top: 50%;\n @include right(0);\n transform: translate(-50%, -50%);\n justify-content: center;\n align-items: center;\n\n &.icon {\n display: flex;\n text-decoration: none;\n }\n}\n\n.customize-sources-item__btn {\n padding: 8px 14px;\n @include padding-right(30px);\n margin: 3px;\n}\n\n.customize-sources-table-column .move {\n @include margin-right(10px);\n}\n\nul.path {\n display: flex;\n flex-direction: row;\n align-items: stretch;\n flex-wrap: wrap;\n\n li {\n display: inline-flex;\n align-items: center;\n\n &:not(:last-child):after {\n @include margin(0, 5px, 0, 2px);\n @include angle(right, var(--light-text-color), 1px);\n }\n }\n}\n\n/* ----------------------------------------\n/* Icon lists\n/* ----------------------------------------*/\n\nul.icons {\n margin-top: 20px;\n display: flex;\n flex-wrap: wrap;\n\n li {\n margin: 0 4px 10px 0;\n\n a {\n display: block;\n position: relative;\n padding: 60px 5px 10px;\n width: 110px;\n text-align: center;\n color: var(--text-color);\n border-radius: 4px;\n border: 1px solid var(--white);\n\n &:before {\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n font-size: 40px;\n line-height: 60px;\n }\n\n .icon {\n img,\n svg {\n width: 40px;\n height: 40px;\n position: absolute;\n top: 12px;\n left: calc(50% - 20px);\n }\n\n &.icon-mask svg {\n @include svg-mask(var(--text-color));\n }\n }\n\n &:hover {\n text-decoration: none;\n background-color: var(--gray-050);\n border-color: var(--gray-100);\n\n .icon.icon-mask svg {\n @include svg-mask(var(--link-color));\n }\n }\n }\n }\n}\n\n@media only screen and (max-width: 380px) {\n ul.icons li a {\n width: 96px;\n }\n}\n\n@media only screen and (max-width: 320px) {\n ul.icons li a {\n width: 75px;\n }\n}\n\n/* ----------------------------------------\n/* Buttons\n/* ----------------------------------------*/\n\n.toolbar {\n position: relative;\n margin-bottom: 14px;\n min-height: 34px;\n\n &.flex,\n .flex {\n align-items: flex-start;\n }\n\n .text {\n border-radius: var(--large-border-radius) !important;\n box-shadow: none !important;\n }\n}\n\n.flex {\n display: flex;\n align-items: center;\n align-content: stretch;\n gap: var(--s);\n\n &:not(.flex-nowrap) {\n flex-wrap: wrap;\n }\n\n & > * {\n &.label {\n white-space: nowrap;\n }\n }\n\n .centeralign & {\n justify-content: center;\n }\n}\n\n.inline-flex {\n display: inline-flex;\n align-items: center;\n align-content: stretch;\n gap: var(--s);\n}\n\n.gap-xs {\n gap: var(--xs);\n}\n\n.gap-s {\n gap: var(--s);\n}\n\n.gap-m {\n gap: var(--m);\n}\n\n.gap-l {\n gap: var(--l);\n}\n\n.gap-xl {\n gap: var(--xl);\n}\n\n.flex-grow {\n flex: 1;\n}\n\n.flex-justify {\n justify-content: space-between;\n}\n\n.flex-justify-start {\n justify-content: flex-start;\n}\n\n.flex-justify-end {\n justify-content: flex-end;\n}\n\n.flex-justify-center {\n justify-content: center;\n}\n\n.flex-start {\n align-items: flex-start;\n}\n\n.flex-end {\n align-items: flex-end;\n}\n\n.flex-center {\n align-items: center;\n}\n\n.flex-stretch {\n align-items: stretch;\n}\n\n.spacer {\n width: 14px;\n}\n\n.buttons {\n display: flex;\n gap: 7px;\n position: relative;\n margin: 24px 0;\n align-items: center;\n\n .hud-footer > &,\n .footer > & {\n margin: 0;\n }\n}\n\n.btn {\n position: relative;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border-radius: var(--large-border-radius);\n padding: 7px 14px;\n border: none;\n text-align: center;\n white-space: nowrap;\n user-select: none;\n cursor: pointer;\n box-sizing: border-box;\n appearance: none;\n color: currentColor;\n font-size: inherit;\n background-color: transparentize($inputColor, 0.75);\n\n &.chromeless {\n background-color: transparent;\n height: auto;\n padding: 0;\n\n &:hover,\n &:active,\n &:focus {\n background-color: transparent;\n }\n\n &:hover,\n &:active {\n text-decoration: underline;\n }\n }\n\n &.wrap {\n height: auto;\n min-height: 34px;\n white-space: initial;\n text-align: left;\n }\n\n &:not(.disabled):not(.loading):not(.dashed):not([aria-disabled]) {\n &:focus,\n &.focus,\n &:hover {\n background-color: transparentize($inputColor, 0.7);\n }\n\n &:active,\n &.active {\n background-color: transparentize($inputColor, 0.6);\n }\n }\n\n &[type='color'] {\n padding: 6px !important;\n width: 36px;\n }\n\n &.active,\n &.loading {\n cursor: default;\n }\n\n &:hover {\n text-decoration: none;\n }\n\n &[data-icon]:not(:empty):not(.btn-empty):before,\n &.icon:not(:empty):not(.btn-empty):before,\n &.menubtn[data-icon]:empty:before,\n &.menubtn[data-icon].btn-empty:before,\n &.menubtn.icon:empty:before,\n &.menubtn.icon.btn-empty:before {\n @include margin-right(5px);\n }\n\n &:not(.loading) .spinner {\n display: none;\n }\n\n &.loading {\n &:before,\n &:after,\n .label {\n visibility: hidden;\n }\n }\n\n div.checkbox {\n margin-top: 2px;\n }\n}\n\n.disabled {\n opacity: 0.25;\n}\n\n.disabled,\n.disabled .btn {\n cursor: default;\n}\n\n.btn,\n.spinner {\n height: 34px;\n}\n\n.btn[data-icon-after]:not(:empty):not(.btn-empty):after,\n.menu-toggle:not(:empty):not(.btn-empty):after,\n.menubtn:not(:empty):not(.btn-empty):after,\n.menubtn.icon:after {\n @include margin-left(6px);\n}\n\n.btn[data-icon]:before,\n.btn[data-icon-after]:after,\n.btn.icon:before {\n position: relative;\n}\n\n.btn.small[data-icon]:before,\n.btn.small[data-icon-after]:after,\n.btn.icon.small:before {\n font-size: 10px;\n}\n\n/* button groups */\n.btngroup {\n position: relative;\n z-index: 1;\n display: flex;\n white-space: nowrap;\n align-items: center;\n border-radius: var(--large-border-radius);\n\n &.fullwidth .btn {\n flex: 1;\n }\n\n &.disabled .btn {\n cursor: default;\n }\n\n .btn {\n &:focus {\n z-index: 1;\n }\n\n &:not(.dashed):not(:last-child):not(.btngroup-btn-last) {\n @include margin-right(1px);\n }\n\n body.ltr & {\n &:not(:first-child):not(.btngroup-btn-first) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n\n &:not(:last-child):not(.btngroup-btn-last) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n }\n\n body.rtl & {\n &:not(:first-child):not(.btngroup-btn-first) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n\n &:not(:last-child):not(.btngroup-btn-last) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n }\n }\n}\n\n.btngroup--exclusive {\n .btn[aria-pressed='true']:not(.disabled):not(.loading):not(.dashed):not(\n [aria-disabled]\n ) {\n background-color: var(--gray-500);\n color: var(--white);\n }\n}\n\n.copytext {\n position: relative;\n z-index: 1;\n display: flex;\n white-space: nowrap;\n align-items: center;\n\n body.ltr & {\n .text {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n min-width: 0;\n }\n .btn {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n }\n\n body.rtl & {\n .text {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n .btn {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n }\n}\n\n.copytextbtn {\n display: inline-flex;\n flex-wrap: nowrap;\n align-items: center;\n border: 1px solid var(--hairline-color);\n border-radius: var(--small-border-radius);\n padding: 0 9px;\n cursor: pointer;\n color: var(--medium-text-color);\n\n input {\n border: 0;\n padding: 0;\n height: 32px;\n box-shadow: none;\n background-color: transparent;\n border: none;\n cursor: pointer;\n color: var(--medium-text-color);\n text-align: center;\n }\n\n span {\n padding: 0;\n width: 13px;\n background: none;\n margin-top: -3px;\n @include margin-left(5px);\n color: var(--light-text-color);\n }\n\n &:hover,\n &:focus {\n border-color: var(--medium-hairline-color);\n color: var(--text-color);\n\n input {\n color: var(--text-color);\n }\n }\n\n &.small {\n padding: 0 5px;\n\n input {\n font-size: 11px !important;\n height: 20px;\n }\n }\n}\n\n/* menu buttons */\n.menu-toggle,\n.menubtn {\n display: inline-flex;\n align-items: center;\n user-select: none;\n\n &:after {\n @include angle;\n position: relative;\n }\n\n &.btn {\n &:after {\n top: -1px;\n }\n\n &:not(.disabled):not(.inactive) {\n &:active,\n &.active {\n &:after {\n border-color: var(--ui-control-active-color);\n }\n }\n }\n\n &.submit {\n &:after {\n border-color: var(--white) !important;\n opacity: 0.8;\n }\n\n &:not(.disabled):not(.inactive) {\n &:hover,\n &.hover,\n &:active,\n &.active {\n &:after {\n opacity: 1;\n }\n }\n }\n }\n }\n\n &:not(.btn):not(.icon) {\n height: 17px;\n &:after {\n top: -2px;\n border-color: var(--link-color);\n }\n }\n\n &:empty,\n &.btn-empty {\n @include padding-left(8px);\n @include padding-right(8px);\n }\n}\n\n@keyframes rotator {\n 0% {\n -webkit-transform: rotate(0);\n transform: rotate(0);\n }\n\n to {\n -webkit-transform: rotate(1turn);\n transform: rotate(1turn);\n }\n}\n\n/* spinner */\n.spinner {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: var(--size, 24px);\n height: var(--size, 34px);\n\n &:before {\n display: block;\n content: '';\n font-size: 0;\n animation: rotator 0.7s linear infinite;\n box-sizing: border-box;\n width: var(--size, 20px);\n height: var(--size, 20px);\n object-fit: scale-down;\n border-radius: 50%;\n border: 2px solid transparent;\n border-right-color: currentColor;\n border-bottom-color: currentColor;\n opacity: 0.8;\n }\n\n &.small {\n --size: 12px;\n }\n\n &.big {\n --size: 48px;\n }\n\n &.spinner-absolute {\n position: absolute;\n width: var(--size, 20px);\n height: var(--size, 20px);\n top: calc(50% - var(--size, 20px) / 2);\n left: calc(50% - var(--size, 20px) / 2);\n }\n}\n\n.btn + .spinner {\n @include margin-left(7px);\n}\n\n.buttons .btn + .spinner,\n.buttons .btngroup + .spinner {\n @include margin-left(0);\n}\n\n.buttons.right .btn + .spinner {\n @include margin-right(var(--neg-padding));\n}\n\n/* small buttons */\n.btngroup.small .btn,\n.btn.small {\n padding: 0 7px !important;\n font-size: 12px;\n line-height: 22px;\n}\n\n.btngroup.small,\n.btngroup.small input.btn,\n.btn.small,\n.btn.small + .spinner {\n height: 22px;\n}\n\n/* big buttons */\n.btngroup.big .btn,\n.btn.big {\n padding: 0 14px;\n font-size: 14px;\n line-height: 36px;\n}\n\n.btn.big[data-icon]:before,\n.preview-btn:before,\n.view-btn:before {\n @include margin-left(-2px);\n}\n\n.btngroup.big,\n.btngroup.big input.btn,\n.btn.big,\n.btn.big + .spinner {\n height: 36px;\n}\n\n/* special buttons */\n.btn {\n &.submit,\n &.secondary {\n color: var(--white) !important;\n @include light-on-dark-text;\n }\n\n &.submit {\n background-color: var(--primary-color) !important;\n\n &:not(.disabled):not(.inactive):not(.loading) {\n &:hover,\n &.hover,\n &:focus {\n background-color: darken($primaryColor, 5%) !important;\n }\n\n &:active,\n &.active {\n background-color: darken($primaryColor, 10%) !important;\n }\n }\n }\n\n &.caution {\n background-color: var(--red-050) !important;\n color: var(--error-color);\n\n &:hover,\n &.hover,\n &:focus {\n background-color: darken($red050, 5%) !important;\n }\n\n &:active,\n &.active {\n background-color: var(--red-100) !important;\n }\n }\n}\n\n.secondary-buttons .btn.submit,\n.btn.secondary {\n background-color: var(--secondary-color) !important;\n}\n\n.secondary-buttons\n .btn.submit:not(.disabled):not(.inactive):not(.loading):hover,\n.secondary-buttons\n .btn.submit:not(.disabled):not(.inactive):not(.loading).hover,\n.secondary-buttons\n .btn.submit:not(.disabled):not(.inactive):not(.loading):focus,\n.btn.secondary:not(.disabled):not(.inactive):not(.loading):hover,\n.btn.secondary:not(.disabled):not(.inactive):not(.loading).hover,\n.btn.secondary:not(.disabled):not(.inactive):not(.loading):focus {\n background-color: darken($secondaryColor, 5%) !important;\n}\n\n.secondary-buttons\n .btn.submit:not(.disabled):not(.inactive):not(.loading):active,\n.secondary-buttons\n .btn.submit:not(.disabled):not(.inactive):not(.loading).active,\n.btn.secondary:not(.disabled):not(.inactive):not(.loading):active,\n.btn.secondary:not(.disabled):not(.inactive):not(.loading).active {\n background-color: darken($secondaryColor, 10%) !important;\n}\n\ndiv.btn.submit {\n position: relative;\n overflow: hidden;\n}\n\ndiv.btn.submit input {\n position: absolute;\n left: 100%;\n}\n\n/* dashed buttons */\n.btn.dashed {\n border: 1px dashed var(--input-border-color);\n background-color: transparent;\n\n .btngroup &:not(:last-child):not(.btngroup-btn-last) {\n @include border-right(1px solid transparent);\n @include margin-right(-1px);\n }\n\n &:focus {\n background-color: transparentize($grey200, 0.9);\n border-color: transparent;\n\n .reduce-focus-visibility &:not(:focus-visible) {\n border: 1px dashed var(--medium-hairline-color);\n }\n }\n\n &:not(.disabled) {\n &:active,\n &.active {\n background-color: transparentize($grey200, 0.75);\n }\n }\n}\n\n/* color inputs */\n.color-input-container {\n position: relative;\n\n .color-hex-indicator {\n position: absolute;\n top: 0;\n @include left(7px);\n width: 1em;\n line-height: 34px;\n text-align: center;\n user-select: none;\n }\n}\n\n.color-input {\n @include fixed-width-font;\n @include padding-left(calc(7px + 1em));\n}\n\n.color {\n display: inline-block;\n position: relative;\n vertical-align: middle;\n width: 34px;\n height: 34px;\n border-radius: 17px;\n padding: 0;\n\n &:not(.static) {\n cursor: pointer;\n }\n\n &:not(.small) {\n @include checkered-bg(17px);\n }\n\n &.small {\n width: 16px;\n height: 16px;\n @include checkered-bg(8px);\n }\n\n .color-preview {\n position: absolute;\n top: 0;\n @include left(0);\n width: 100%;\n height: 100%;\n border-radius: 17px;\n box-shadow: inset 0 0 0 1px var(--input-border-color);\n\n &:focus-within {\n @include input-focused-styles;\n }\n\n & > .color-preview-input {\n position: absolute;\n @include left(0);\n width: 100%;\n height: 100%;\n margin: 0;\n padding: 0;\n border: none;\n opacity: 0;\n }\n }\n}\n\n.colorhex {\n display: inline-block;\n margin-left: 5px;\n vertical-align: middle;\n color: var(--medium-text-color);\n}\n\n/* lightswitch */\n.lightswitch-outer-container {\n display: flex;\n\n .lightswitch-inner-container {\n border: 1px solid var(--hairline-color);\n border-radius: var(--small-border-radius);\n display: flex;\n align-items: center;\n\n span {\n padding: 7px 0;\n color: var(--medium-text-color);\n cursor: default;\n\n &[data-toggle='on'] {\n @include padding-right(10px);\n @include margin-left(7px);\n }\n\n &[data-toggle='off'] {\n @include padding-left(10px);\n @include margin-right(7px);\n }\n }\n }\n}\n\n.lightswitch {\n display: block;\n position: relative;\n border: none !important;\n overflow: hidden;\n cursor: pointer;\n user-select: none;\n background-image: linear-gradient(to right, var(--gray-400), var(--gray-400));\n transition: background-image linear 100ms;\n\n &.on {\n background-image: linear-gradient(\n to right,\n var(--enabled-color),\n var(--enabled-color)\n );\n }\n\n &.indeterminate {\n background-image: linear-gradient(\n to right,\n var(--enabled-color),\n var(--gray-300)\n );\n }\n\n .lightswitch-container {\n position: relative;\n height: 100%;\n\n .handle {\n position: absolute;\n top: 1px;\n background-color: var(--white);\n }\n }\n\n &:not(.small) {\n border-radius: 11px;\n width: 34px;\n height: 22px;\n\n .lightswitch-container {\n @include margin-left(-12px);\n width: 46px;\n\n .handle {\n border-radius: 10px;\n width: 20px;\n height: 20px;\n left: calc(50% - 10px);\n }\n }\n }\n\n &.small {\n border-radius: 9px;\n width: 28px;\n height: 18px;\n\n .lightswitch-container {\n @include margin-left(-10px);\n width: 38px;\n\n .handle {\n border-radius: 8px;\n width: 16px;\n height: 16px;\n left: calc(50% - 8px);\n }\n }\n }\n\n table & {\n display: inline-block;\n margin-bottom: -5px;\n }\n\n &.on {\n .lightswitch-container {\n @include margin-left(0);\n }\n }\n\n &.indeterminate {\n &:not(.small) {\n .lightswitch-container {\n @include margin-left(0.5 * -12px);\n }\n }\n &.small {\n .lightswitch-container {\n @include margin-left(0.5 * -10px);\n }\n }\n }\n}\n\n/* pagination */\n.pagination {\n table.data + & {\n margin-top: 24px;\n }\n\n .page-link {\n width: 32px;\n height: 32px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: var(--medium-border-radius);\n\n &:after {\n position: relative;\n transition: border-color linear 100ms;\n }\n\n &.prev-page:after {\n @include angle(left, var(--light-text-color));\n @include right(-1px);\n }\n\n &.next-page:after {\n @include angle(right, var(--light-text-color));\n @include left(-1px);\n }\n\n &:not(.disabled) {\n transition: box-shadow linear 100ms;\n box-shadow: inset 0 0 0 1px var(--hairline-color);\n cursor: pointer;\n\n &:hover {\n text-decoration: none;\n box-shadow: inset 0 0 0 1px var(--link-color);\n\n &:after {\n border-color: var(--link-color);\n }\n }\n\n @include focus-styles {\n box-shadow: inset 0 0 0 1px var(--hairline-color), var(--focus-ring);\n }\n }\n\n &.disabled {\n opacity: 1;\n &:after {\n border-color: var(--hairline-color);\n }\n }\n }\n}\n\n/* action buttons */\n.actions {\n @include floatright;\n}\n\n.actions > li {\n @include floatleft;\n}\n\n.actions > li + li {\n @include margin-left(10px);\n}\n\nh1 + .actions {\n margin-top: -100px;\n}\n\nh2 + .actions {\n margin-top: -54px;\n}\n\n/* ----------------------------------------\n/* Tables\n/* ----------------------------------------*/\n\n.tablepane {\n margin: -24px -24px -12px;\n overflow-x: auto;\n\n table.data {\n th,\n td {\n &:first-child {\n @include padding-left(24px);\n }\n &:last-child {\n @include padding-right(24px);\n }\n }\n }\n}\n\ntable {\n &.fixed-layout {\n table-layout: fixed;\n }\n\n th.thin,\n td.thin {\n width: 0.01% !important;\n white-space: nowrap;\n }\n\n thead {\n th {\n font-weight: bold;\n @include alignleft;\n vertical-align: top;\n }\n }\n\n // plain tables\n &:not(.data) {\n th,\n td {\n padding-top: 7px;\n padding-bottom: 7px;\n\n &:not(:first-child) {\n padding-left: 12px;\n }\n &:not(:last-child) {\n padding-right: 12px;\n }\n }\n }\n\n // data tables\n &.data {\n th,\n td {\n position: relative;\n padding-left: 12px;\n padding-right: 12px;\n box-sizing: border-box;\n\n &.checkbox-cell {\n width: var(--checkbox-size) !important;\n min-width: var(--checkbox-size);\n box-sizing: content-box;\n position: relative;\n\n input.checkbox + label,\n div.checkbox {\n position: absolute;\n top: calc(50% - 8px);\n }\n }\n }\n\n th {\n font-weight: bold;\n }\n\n thead:first-child,\n tbody:first-child,\n tfoot:first-child,\n caption + thead,\n caption + tbody,\n caption + tfoot {\n tr:first-child {\n th,\n td {\n &:first-child {\n @include border-top-left-radius(var(--large-border-radius));\n }\n &:last-child {\n @include border-top-right-radius(var(--large-border-radius));\n }\n }\n }\n }\n\n thead {\n th,\n td {\n width: auto;\n background-color: var(--gray-050);\n cursor: default;\n }\n\n th:not(.orderable),\n td {\n padding-top: 15px;\n padding-bottom: 15px;\n }\n\n th {\n white-space: nowrap;\n vertical-align: middle;\n\n &.orderable {\n position: relative;\n padding-left: 0;\n padding-right: 0;\n\n &:not(.ordered):hover {\n background-color: var(--gray-100);\n }\n\n &.ordered {\n background-color: var(--light-sel-color);\n\n &:not(.loading) {\n button:after {\n @include angle(up);\n position: absolute;\n @include right(10px);\n top: calc(50% - 3px);\n }\n\n &.desc button:after {\n transform: rotate(45deg);\n }\n }\n }\n\n button {\n position: relative;\n @include padding-right(26px);\n font: inherit;\n width: 100%;\n padding: 14px;\n @include alignleft;\n\n &:focus {\n z-index: 1;\n }\n }\n }\n\n &:not(.loading) {\n .spinner {\n display: none;\n }\n }\n\n .spinner {\n position: absolute;\n top: calc(50% - 6px);\n @include right(8px);\n --size: 12px;\n }\n }\n }\n\n tbody {\n tr {\n &:not(.disabled) {\n &:hover {\n th,\n td {\n background-color: var(--gray-050);\n }\n }\n\n &:focus {\n position: relative;\n z-index: 1;\n }\n\n &.sel {\n th,\n td {\n background-color: var(--light-sel-color);\n }\n }\n }\n }\n\n th,\n td {\n padding-top: 7px;\n padding-bottom: 7px;\n background-clip: padding-box;\n }\n\n td {\n &.timestamp {\n @include alignright;\n vertical-align: bottom;\n white-space: nowrap;\n color: var(--light-text-color);\n }\n }\n }\n\n thead + tbody tr,\n tr + tr {\n th,\n td {\n border-top: 1px solid transparent;\n }\n }\n }\n\n // collapsable data tables for small screens\n // based on Aaron Gustafson's technique: http://blog.easy-designs.net/archives/2013/02/02/responsive-tables/\n &.collapsed {\n width: auto;\n\n &,\n tbody,\n tbody tr,\n tbody th,\n tbody td {\n display: block;\n border: none;\n padding: 0;\n @include alignleft;\n width: auto !important;\n white-space: normal;\n }\n\n thead {\n display: none;\n }\n\n tbody {\n tr {\n padding: 6px 0;\n border-bottom: 1px dotted var(--hairline-color);\n\n &:after {\n @include clearafter;\n }\n }\n\n th,\n td {\n padding: 2px 0 !important;\n }\n\n td {\n &:empty {\n display: none;\n }\n }\n\n [data-title] {\n @include margin-right(0);\n\n &:before {\n margin-right: 5px;\n content: attr(data-title) ':';\n font-weight: bold;\n }\n\n form {\n display: inline-block;\n }\n }\n }\n }\n}\n\n.datatablesorthelper,\n.editabletablesorthelper,\n.thumbviewhelper {\n background-color: var(--white);\n @include shadow;\n}\n\n.datatablesorthelper,\n.datatablesorthelper .element,\n.datatablesorthelper a {\n cursor: move !important;\n}\n\n.datatablesorthelper tr:first-child th,\n.datatablesorthelper tr:first-child td {\n border-top: none !important;\n}\n\n.datatablesorthelper tr:last-child th,\n.datatablesorthelper tr:last-child td {\n border-bottom: none !important;\n}\n\n/* elements */\n$smallThumbSize: 34px;\n$largeThumbSize: 120px;\n$statusSize: 10px;\n$baseElementSidePadding: 7px;\n$elementInnerSpacing: 5px;\n\n.element {\n position: relative;\n cursor: default;\n user-select: none;\n font-weight: normal;\n border-radius: var(--small-border-radius);\n\n &:focus,\n li:focus & {\n background-color: var(--gray-050);\n }\n\n &.sel,\n li.sel & {\n background-color: var(--light-sel-color) !important;\n cursor: default;\n\n &:focus {\n background-color: darken($lightSelColor, 5%) !important;\n }\n\n &.hasthumb {\n .elementthumb {\n img {\n box-shadow: 0 0 0 1px transparentize($darkSelColor, 0.9),\n 0 6px 4px -4px transparentize($darkSelColor, 0.8);\n }\n }\n }\n }\n\n &.hasthumb {\n .elementthumb:not(:empty) {\n position: absolute;\n display: flex;\n justify-content: center;\n -ms-flex-pack: center;\n align-items: center;\n -ms-flex-align: center;\n\n img {\n display: block;\n flex-shrink: 0;\n pointer-events: none;\n border-radius: var(--small-border-radius);\n max-width: 100%;\n max-height: 100%;\n }\n\n &.rounded img {\n border-radius: 50%;\n }\n }\n .elementthumb.open-preview {\n cursor: pointer;\n }\n }\n\n &.error {\n [data-icon='alert'] {\n margin-left: var(--xs);\n }\n }\n\n .label {\n display: inline-block;\n\n .draft-label {\n display: inline-block;\n @include margin(-1px, 0, -1px, 7px);\n padding: 1px 5px;\n font-weight: normal;\n text-decoration: none !important;\n color: var(--medium-text-color);\n background: var(--gray-100);\n border-radius: var(--large-border-radius);\n }\n }\n\n &.small,\n &.large:not(.hasthumb) {\n display: inline-block;\n padding: $baseElementSidePadding;\n box-sizing: border-box;\n\n &.hasstatus {\n @include padding-left(\n $baseElementSidePadding + $statusSize + $elementInnerSpacing\n );\n\n .status {\n position: absolute;\n @include left($baseElementSidePadding);\n top: calc(50% - 5px);\n }\n\n .icon:not(.delete) {\n position: absolute;\n @include left($baseElementSidePadding - 1);\n top: calc(50% - 11px);\n }\n }\n\n &.hasthumb {\n @include padding-left($smallThumbSize + $elementInnerSpacing);\n\n .elementthumb:not(:empty) {\n top: calc(50% - 17px);\n @include left(0);\n width: $smallThumbSize;\n height: $smallThumbSize;\n\n &.checkered img {\n @include checkered-bg(8px);\n }\n }\n\n &.hasstatus {\n @include padding-left(\n $smallThumbSize + $elementInnerSpacing * 2 + $statusSize\n );\n\n .status {\n @include left($smallThumbSize + $elementInnerSpacing);\n }\n }\n }\n }\n\n &.large.hasthumb {\n display: block;\n padding: #{$baseElementSidePadding + $largeThumbSize + $elementInnerSpacing}\n $baseElementSidePadding $baseElementSidePadding;\n width: #{120px + $baseElementSidePadding + $baseElementSidePadding};\n box-sizing: border-box;\n\n &.hasstatus {\n @include padding-left(\n $baseElementSidePadding + $statusSize + $elementInnerSpacing\n );\n\n .status {\n position: absolute;\n @include left($baseElementSidePadding);\n top: #{$baseElementSidePadding + $largeThumbSize + $elementInnerSpacing +\n 6};\n }\n }\n\n .elementthumb:not(:empty) {\n top: $baseElementSidePadding;\n @include left(0);\n width: $largeThumbSize;\n height: $largeThumbSize;\n\n &.checkered img {\n @include checkered-bg(15px);\n }\n }\n\n .label {\n display: block;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n word-wrap: normal;\n }\n }\n\n &.removable {\n .label {\n @include padding-right(20px);\n }\n\n .delete:before {\n color: var(--ui-control-color);\n }\n\n &.small,\n &.large:not(.hasthumb) {\n .delete {\n position: absolute;\n top: calc(50% - 11px);\n @include right($baseElementSidePadding);\n }\n }\n\n &.large.hasthumb {\n .delete {\n position: absolute;\n @include right($baseElementSidePadding);\n }\n }\n }\n\n &:not(.removable) {\n .delete {\n display: none;\n }\n }\n}\n\n$checkboxPadding: $checkboxSize + 4;\n\n.elements {\n position: relative;\n\n &:not(.busy) {\n .update-spinner {\n display: none;\n }\n }\n\n &.busy {\n min-height: 200px;\n\n &:after {\n display: block;\n content: '';\n font-size: 0;\n position: absolute;\n top: 0;\n left: -24px;\n width: calc(100% + #{24 + 24}px);\n height: 100%;\n background: transparentize($white, 0.25);\n border-radius: var(--large-border-radius);\n }\n\n .update-spinner {\n z-index: 1;\n }\n }\n\n .header {\n margin: -24px -24px 24px;\n padding: 14px 24px;\n background-color: var(--gray-050);\n box-shadow: none;\n\n &:after {\n content: '';\n }\n\n .selectallcontainer {\n cursor: default;\n\n .checkbox {\n @include margin-right($elementInnerSpacing);\n }\n }\n }\n\n // table views\n .tableview {\n .move,\n .toggle {\n display: flex;\n position: absolute;\n justify-content: center;\n align-items: center;\n top: 50%;\n transform: translateY(-50%);\n @include margin-left(calc(var(--touch-target-size) * -1));\n width: var(--touch-target-size);\n height: var(--touch-target-size);\n }\n\n .move {\n font-size: 11px;\n text-decoration: none;\n }\n\n .toggle {\n text-align: center;\n padding: 4px;\n border-radius: 50%;\n }\n\n .move + .toggle {\n @include margin-left(calc(var(--touch-target-size) * -2));\n }\n }\n\n // thumbs views\n .thumbsview {\n @include margin(\n -$baseElementSidePadding,\n -$baseElementSidePadding - 1px,\n -$baseElementSidePadding - 1px,\n -$baseElementSidePadding\n );\n width: calc(\n 100% + #{$baseElementSidePadding + $baseElementSidePadding + 1px}\n );\n display: grid;\n gap: 5px;\n grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));\n\n li {\n position: relative;\n @include margin(0, 1px, 1px, 0);\n max-width: 226px;\n\n &:hover {\n .element {\n background-color: var(--gray-050);\n }\n }\n\n .element.large.hasthumb {\n width: unset;\n\n .elementthumb:not(:empty) {\n width: 100%;\n }\n }\n\n &.has-checkbox {\n .element.hasthumb {\n &:not(.hasstatus) {\n @include padding-left(\n $baseElementSidePadding + $checkboxSize + $elementInnerSpacing\n );\n }\n\n &.hasstatus {\n @include padding-left(\n $baseElementSidePadding + $checkboxSize + $elementInnerSpacing +\n $statusSize + $elementInnerSpacing\n );\n\n .status {\n @include left(\n $baseElementSidePadding + $checkboxSize + $elementInnerSpacing\n );\n }\n }\n }\n\n .checkbox {\n position: absolute;\n top: $baseElementSidePadding + $largeThumbSize + $elementInnerSpacing +\n (20px - $checkboxSize) * 0.5;\n @include left($baseElementSidePadding);\n }\n }\n }\n }\n}\n\n.export-form {\n position: relative;\n .spinner {\n position: absolute;\n bottom: 0;\n @include right(-24px);\n }\n}\n\n.thumbviewhelper {\n margin: -7px;\n padding: 7px;\n\n .thumbsview {\n &,\n li {\n margin: 0 !important;\n }\n }\n}\n\n/* structures */\n.structure {\n position: relative;\n z-index: 1;\n\n li {\n @include padding-left(8px);\n\n &.collapsed > ul {\n display: none;\n }\n\n .row:hover > .icon,\n &.draghelper > .row .move,\n .add.active {\n opacity: 1;\n }\n\n &.draghelper {\n & > .row {\n .add {\n opacity: 0;\n }\n\n .move:before {\n color: var(--link-color);\n }\n }\n }\n\n &.draginsertion {\n position: relative;\n @include margin(-1px, 0, -1px, 8px);\n @include padding-left(0);\n height: 2px;\n background-color: var(--link-color) !important;\n @include border-left(none);\n border-radius: 1px;\n }\n\n .toggle {\n position: relative;\n z-index: 1;\n @include floatleft;\n @include margin(10px, -8px, 0, -12px);\n padding: 4px;\n }\n\n .row:after {\n @include clearafter;\n }\n\n .move,\n .add {\n @include margin(5px, 5px, 0, 0);\n opacity: 0;\n transition: opacity linear 100ms;\n }\n\n .add {\n padding: 0 5px;\n\n &:before {\n content: 'downangle';\n color: var(--dark-hairline-color);\n }\n\n &:not(.disabled):hover:before,\n &.active:before {\n color: var(--link-color);\n }\n }\n\n .checkbox {\n @include floatleft;\n @include margin(7px, 0, 0, 7px);\n }\n }\n\n ul {\n @include margin-left(-3px);\n\n li {\n @include padding-left(38px);\n background-repeat: no-repeat;\n\n body.ltr & {\n background-image: url(../images/branch.png);\n background-position: 0 0;\n }\n\n body.rtl & {\n background-image: url(../images/branch_rtl.png);\n background-position: 100% 0;\n }\n\n &:not(:last-child):not(.last) {\n @include padding-left(37px);\n @include border-left(1px solid var(--gray-200));\n\n body.ltr & {\n background-position: -1px 0;\n }\n\n body.rtl & {\n background-position: calc(100% + 1px) 0;\n }\n }\n\n &.draginsertion {\n @include margin-left(38px);\n }\n }\n }\n\n .row {\n &.draghover {\n .element {\n z-index: 2;\n border-radius: 15px;\n box-shadow: inset 0 0 0 2px var(--link-color);\n }\n }\n\n &.droptarget {\n border-radius: 5px;\n box-shadow: inset 0 0 0 2px var(--link-color);\n }\n }\n}\n\n/* element select fields */\n.elementselect {\n position: relative;\n min-height: 34px;\n margin-top: -7px;\n\n .elements {\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n\n &.flex-row {\n flex-direction: row;\n }\n\n &.flex-wrap {\n flex-wrap: wrap;\n }\n }\n\n .elements:after {\n @include clearafter;\n }\n\n .element {\n @include margin(7px, 7px, 0, 0);\n }\n\n .flex,\n .btn {\n clear: both;\n }\n\n .element {\n z-index: 1;\n\n &.small {\n max-width: 100%;\n\n .label {\n display: block;\n max-width: 100%;\n box-sizing: border-box;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n }\n }\n\n .flex {\n padding-top: 7px;\n }\n}\n\n/* editable tables */\ntable.editable {\n border-radius: var(--large-border-radius);\n border: 1px solid var(--input-border-color);\n\n th,\n td.action {\n color: var(--medium-text-color);\n font-weight: normal;\n background-color: var(--gray-050);\n }\n\n thead,\n tbody {\n tr {\n th {\n padding: 6px 10px;\n }\n }\n }\n\n thead {\n tr {\n th {\n border-bottom: 1px solid var(--input-border-color);\n\n &.has-info {\n @include padding-right(calc(15px + 1em));\n }\n\n span.info {\n position: absolute;\n margin-left: 5px;\n }\n }\n }\n }\n\n tbody {\n tr {\n &:not(:first-child) {\n th,\n td {\n border-top: 1px solid var(--input-border-color);\n }\n }\n\n &:last-child {\n td:first-child {\n @include border-bottom-left-radius(var(--large-border-radius));\n\n textarea,\n input.text {\n @include border-bottom-left-radius(\n calc(var(--large-border-radius) - 1px)\n );\n }\n }\n }\n\n td:not(:first-child),\n th ~ td:not(.hidden) ~ td {\n @include border-left(1px solid var(--input-border-color));\n }\n\n th {\n // Set a dark border-left for the first that follows a , if there is one.\n // This is a ridiculous CSS hack since there's no operator/pseudo-class that mimics jQuery's next(selector) function.\n // If there was it could have been as simple as: th ??? td:not(.hidden) { dark left border }\n // kudos to Mark Huot for coming up with it!\n & ~ td:not(:first-child) {\n @include border-left(1px solid #dbdddf);\n }\n }\n\n td {\n vertical-align: top;\n text-align: center;\n background-color: var(--white);\n padding: 4px 10px;\n\n &.focus {\n position: relative;\n box-shadow: inset 0 0 0 1px var(--hairline-color);\n }\n\n &.textual {\n padding: 0;\n\n textarea {\n resize: none;\n }\n\n pre {\n @include alignleft;\n white-space: pre-wrap;\n }\n }\n\n &.lightswitch-cell {\n padding-top: 9px;\n padding-bottom: 9px;\n\n .lightswitch {\n display: block;\n margin: 0 auto;\n }\n }\n\n &.checkbox-cell {\n padding-top: 10px;\n padding-bottom: 10px;\n\n .checkbox-wrapper {\n display: block;\n margin: -2px auto 0;\n width: 16px;\n height: 16px;\n }\n }\n\n &.error {\n box-shadow: inset 0 0 0 1px var(--error-color);\n }\n\n &.disabled {\n position: relative;\n opacity: 1;\n\n &:after {\n content: '';\n font-size: 0;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background-color: transparentize($grey050, 0.25);\n user-select: none;\n }\n }\n\n &.action {\n padding: 4px 7px;\n\n & + td.action {\n @include border-left(none);\n @include padding-left(0);\n }\n }\n\n .flex > * {\n margin-bottom: 0;\n }\n }\n }\n\n textarea,\n textarea.text,\n input.text,\n pre {\n display: block;\n width: 100%;\n border: none;\n box-shadow: none;\n border-radius: 0;\n padding: 7px 10px;\n background-color: transparent;\n overflow: hidden;\n transition: none;\n box-sizing: border-box;\n }\n\n .color-container {\n display: block;\n position: relative;\n\n & > .color,\n .color-input {\n margin-bottom: 0;\n }\n\n & > .color {\n position: absolute;\n top: 10px;\n @include left(10px);\n z-index: 1;\n }\n\n .color-hex-indicator {\n @include left(32px);\n }\n\n .color-input {\n @include padding-left(calc(32px + 1em));\n }\n }\n\n .datewrapper,\n .timewrapper {\n display: block;\n width: 100%;\n\n .text + div[data-icon] {\n top: 6px;\n @include left(10px);\n }\n }\n }\n\n &:not(.static) {\n td.textual {\n cursor: text;\n }\n }\n\n & + .btn.add {\n display: block;\n width: 100%;\n }\n\n &:not(.hidden) + .btn.add {\n border-top-width: 0;\n border-radius: 0 0 var(--medium-border-radius) var(--medium-border-radius);\n }\n}\n\n.border-box,\n.shadow-box {\n & + .buttons {\n margin-top: 7px;\n }\n}\n\n/* ----------------------------------------\n/* Nav\n/* ----------------------------------------*/\n\nul.tree,\n.tree ul {\n @include margin-left(20px);\n}\n\n.tree li .toggle {\n @include margin(7px, 0, 0, -15px);\n}\n\n/* status icons */\n.status {\n display: inline-block;\n position: relative;\n @include margin-right(10px);\n width: 10px;\n height: 10px;\n border: 1px solid transparent;\n border-radius: 100%;\n box-sizing: border-box;\n background-clip: border-box;\n\n body.use-shapes & {\n &.all {\n rotate: 45deg;\n background-image: linear-gradient(30deg, #184cef, #e5422b);\n }\n\n &.pending {\n background-color: transparent;\n border-style: solid;\n border-width: 0 5px 10px 5px;\n border-color: transparent transparent var(--pending-color) transparent;\n border-radius: 1px;\n }\n\n &.all,\n &.off,\n &.suspended,\n &.expired {\n border-radius: 2px;\n transform: scale(90%);\n }\n }\n}\n\n.status:not(.on):not(.live):not(.active):not(.enabled):not(.all):not(\n .pending\n ):not(.off):not(.suspended):not(.expired):not(.yellow):not(.orange):not(\n .red\n ):not(.pink):not(.purple):not(.blue):not(.green):not(.turquoise):not(\n .light\n ):not(.grey):not(.black) {\n border-color: var(--ui-control-color);\n}\n\n.green,\n.status.on,\n.status.live,\n.status.active,\n.status.enabled {\n background-color: var(--enabled-color);\n}\n\n.status.all {\n background-image: linear-gradient(60deg, #184cef, #e5422b);\n background-origin: border-box;\n}\n\n.orange,\n.status.pending {\n background-color: var(--pending-color);\n}\n\n.red,\n.status.off,\n.status.suspended,\n.status.expired {\n background-color: var(--disabled-color);\n}\n\n.yellow {\n background-color: var(--yellow-300);\n}\n\n.pink {\n background-color: var(--pink-400);\n}\n\n.purple {\n background-color: #9b59b6;\n}\n\n.blue {\n background-color: var(--blue-600);\n}\n\n.turquoise {\n background-color: var(--teal-300);\n}\n\n.status.light {\n background-color: var(--gray-100);\n}\n\n.grey {\n background-color: var(--gray-300);\n}\n\n.black {\n background-color: var(--gray-800);\n}\n\n.status.white,\n.status.disabled {\n opacity: 1;\n}\n\n/* ----------------------------------------\n/* Condition builders\n/* ----------------------------------------*/\n\n.condition-container {\n margin: 24px 0;\n}\n\n.condition:not(:empty) + .condition-footer .btn.add {\n}\n\n.condition-rule,\n.condition-footer {\n padding: 7px;\n}\n\n.condition-footer {\n border: 1px dashed var(--medium-hairline-color);\n border-radius: var(--large-border-radius);\n\n .condition:not(:empty) + & {\n border-top-width: 0;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n }\n\n .spinner:not(.loading) {\n display: none;\n }\n}\n\n.condition-rule {\n margin: 0;\n border: 1px solid var(--hairline-color);\n background-color: var(--gray-050);\n\n &:first-child {\n border-top-left-radius: var(--large-border-radius);\n border-top-right-radius: var(--large-border-radius);\n }\n\n & + .condition-rule {\n border-top-width: 0;\n }\n\n & > .rule-move,\n & > .rule-actions {\n margin-top: 5px;\n }\n\n & > .rule-body {\n .lightswitch {\n margin-top: 6px;\n display: block;\n }\n\n .selectize {\n min-width: 100px;\n }\n\n .text.fullwidth {\n min-width: 100px;\n max-width: 100%;\n }\n }\n}\n\n/* ----------------------------------------\n/* Progress bar\n/* ----------------------------------------*/\n\n.progressbar {\n border-radius: 6px;\n border: 2px solid var(--gray-700);\n padding: 2px;\n position: absolute;\n left: 20%;\n width: 60%;\n z-index: 1000;\n}\n\n.progressbar-inner {\n border-radius: 2px;\n height: 4px;\n background-color: var(--gray-700);\n}\n\n.progressbar:not(.pending) .progressbar-inner {\n width: 0;\n transition: width linear 100ms;\n}\n\n.progressbar.pending .progressbar-inner {\n @include striped-bg(17.6776695297px, var(--gray-700)); // sqrt(25^2 / 2);\n body.ltr & {\n animation-name: pendingprogress-ltr;\n }\n body.rtl & {\n animation-name: pendingprogress-rtl;\n }\n animation-timing-function: linear;\n animation-duration: 250ms;\n animation-iteration-count: infinite;\n}\n\n@keyframes pendingprogress-ltr {\n from {\n background-position: 0;\n }\n to {\n background-position: 25px;\n }\n}\n\n@keyframes pendingprogress-rtl {\n from {\n background-position: 0;\n }\n to {\n background-position: -25px;\n }\n}\n\n.elementselect .progress-shade {\n background-color: transparentize($white, 0.2);\n width: 100%;\n height: 100%;\n position: absolute;\n top: 0;\n @include left(0);\n display: none;\n}\n\n.elementselect.uploading {\n position: relative;\n}\n\n.elementselect.uploading .progress-shade {\n display: block;\n z-index: 2;\n}\n\n// Plugin installers\n\n.missing-component {\n padding: 7px 10px !important;\n max-width: 400px;\n background-color: var(--gray-050) !important;\n\n .error {\n margin: 0;\n }\n\n .install-plugin {\n margin: 7px 0 -7px;\n border-top: 1px solid var(--hairline-color);\n position: relative;\n @include padding(10px, 0, 10px, 40px);\n\n .icon {\n width: 32px;\n height: 32px;\n position: absolute;\n top: calc(50% - 16px);\n @include left(0);\n\n img,\n svg {\n width: 100%;\n height: 100%;\n }\n }\n\n h3 {\n flex: 1;\n margin: 8px 0 !important;\n }\n\n .btn {\n margin: 0;\n }\n }\n}\n\n/* ----------------------------------------\n/* Panes, Modals and HUDs\n/* ----------------------------------------*/\n\n.pane {\n @include pane;\n position: relative;\n margin: 14px 0;\n padding: 24px;\n border-radius: var(--large-border-radius);\n word-wrap: break-word;\n box-sizing: border-box;\n\n .pane &,\n #content & {\n background-color: var(--gray-050);\n border: 1px solid var(--hairline-color);\n box-shadow: none;\n }\n\n &.loading {\n min-height: 200px;\n\n &:after {\n display: block;\n content: '';\n font-size: 0;\n position: absolute;\n top: 0;\n left: -24px;\n width: calc(100% + #{24 + 24}px);\n height: 100%;\n }\n }\n}\n\n.pane-header {\n margin: calc(var(--xl) * -1) var(--neg-padding) var(--xl);\n padding: var(--s) var(--xl);\n min-height: 50px;\n box-sizing: border-box;\n box-shadow: inset 0 -1px 0 0 transparentize($grey300, 0.75);\n border-radius: var(--large-border-radius) var(--large-border-radius) 0 0;\n background-color: var(--gray-050);\n\n .header-btn {\n margin: 2px 0;\n @include header-btn;\n }\n\n .spinner {\n margin: 0 !important;\n }\n}\n\n.pane-tabs {\n display: flex;\n flex-direction: row;\n align-items: center;\n margin: calc(var(--s) * -1) calc(var(--xl) * -1);\n\n &:first-child {\n border-radius: var(--large-border-radius) var(--large-border-radius) 0 0;\n overflow: hidden;\n }\n\n [role='tablist'] {\n flex: 1;\n display: flex;\n flex-direction: row;\n overflow-x: auto;\n scrollbar-width: none;\n\n &::-webkit-scrollbar {\n display: none;\n }\n\n &.scrollable {\n body.ltr & {\n mask-image: linear-gradient(\n to left,\n rgba(0, 0, 0, 0),\n rgba(0, 0, 0, 1) 24px\n );\n }\n body.rtl & {\n mask-image: linear-gradient(\n to right,\n rgba(0, 0, 0, 0),\n rgba(0, 0, 0, 1) 24px\n );\n }\n }\n\n [role='tab'] {\n --tab-label-color: var(--light-text-color);\n\n &.error {\n --highlight-color: var(--error-color) !important;\n --tab-label-color: var(--error-color) !important;\n }\n\n &,\n .tab-label {\n border-radius: 2px 2px 0 0;\n }\n\n .tab-label {\n display: flex;\n flex-direction: row;\n align-items: center;\n position: relative;\n padding: 0 24px;\n white-space: nowrap;\n color: var(--tab-label-color);\n height: 50px;\n }\n\n &:hover {\n text-decoration: none;\n }\n\n @include focus-styles {\n box-shadow: none;\n\n .tab-label {\n box-shadow: var(--inner-focus-ring);\n }\n }\n\n &:not(.sel) {\n &:hover {\n background-color: transparentize($grey300, 0.85);\n }\n }\n\n &.sel {\n --highlight-color: var(--gray-500);\n --tab-label-color: var(--text-color);\n position: relative;\n z-index: 1;\n cursor: default;\n box-shadow: inset 0 2px 0 var(--highlight-color),\n 0 0 0 1px $hairlineColor, 0 2px 12px transparentize($grey200, 0.5);\n background-color: var(--white);\n }\n\n span[data-icon] {\n @include margin-left(4px);\n }\n }\n }\n\n &:first-child {\n [role='tablist'] {\n [role='tab'] {\n &:first-child {\n &,\n .tab-label {\n @include border-top-left-radius(var(--large-border-radius));\n }\n }\n }\n }\n }\n\n .menubtn {\n margin: 0 var(--xl);\n }\n}\n\n/* detail sidebars */\n.details {\n --background-color: var(--gray-050);\n --spacing: var(--l);\n padding: 0 var(--padding) var(--spacing);\n\n .meta,\n .field,\n hr {\n margin-left: var(--neg-padding);\n margin-right: var(--neg-padding);\n }\n\n .meta {\n margin-bottom: var(--spacing);\n\n &:not(.read-only) {\n background-color: var(--background-color) !important;\n }\n\n &.read-only {\n color: var(--medium-text-color);\n\n & > .data {\n align-items: baseline;\n min-height: auto;\n\n & > .heading,\n & > .value {\n padding: 6px 0;\n }\n\n &:first-child {\n & > .heading,\n & > .value {\n padding-top: 0;\n }\n }\n\n &:last-child {\n & > .heading,\n & > .value {\n padding-bottom: 0;\n }\n }\n }\n }\n\n &.warning {\n padding-top: var(--m);\n padding-bottom: var(--m);\n color: var(--text-color) !important;\n background-color: var(--yellow-050) !important;\n box-shadow: 0 0 0 1px var(--yellow-300),\n 0 2px 12px transparentize($grey200, 0.5);\n\n p {\n margin-bottom: 5px;\n }\n\n .btn {\n background-color: var(--yellow-300);\n\n &:hover,\n &:focus {\n background-color: darken($yellow300, 10%);\n }\n\n &:active {\n background-color: darken($yellow300, 15%);\n }\n }\n }\n\n & > .field,\n & > .data {\n margin: 0 var(--neg-padding) !important;\n\n & > .heading > label,\n & > .heading {\n color: var(--gray-600);\n }\n }\n\n & > .field > .status-badge {\n @include left(0);\n }\n\n .text::placeholder,\n .datewrapper .text + div[data-icon],\n .timewrapper .text + div[data-icon] {\n color: var(--gray-500);\n }\n\n .ui-datepicker {\n @include margin(0, 0, 0, -8px);\n }\n }\n\n hr {\n margin: var(--spacing) 0;\n border-top-color: var(--hairline-color);\n }\n\n @include placeholder-styles(var(--gray-500));\n\n .text {\n background-color: transparent !important;\n resize: none;\n }\n\n & > .field > .heading > label,\n & > fieldset > legend {\n margin-top: 0;\n font-weight: normal;\n color: var(--gray-600);\n }\n\n & > fieldset {\n margin: 0 0 var(--spacing);\n\n & > legend {\n margin-bottom: 5px;\n }\n }\n\n & > .field {\n margin: 0 0 var(--spacing);\n\n & > .heading {\n margin-top: 0;\n }\n\n & > .input > .text.fullwidth {\n margin: 0 var(--neg-padding);\n padding-left: var(--padding);\n padding-right: var(--padding);\n background-color: var(--background-color) !important;\n width: calc(100% + var(--padding) + var(--padding));\n }\n }\n\n & > .text {\n border-radius: var(--large-border-radius);\n margin-bottom: var(--spacing);\n\n &:not(:focus) {\n border-color: transparentize($inputColor, 0.6);\n }\n }\n}\n\n/* meta panes */\n$min2ColWidth: 400px;\n\n.meta {\n display: grid;\n grid-gap: var(--m);\n padding: calc(var(--padding) / 2) var(--padding);\n overflow: visible;\n\n &,\n & > .flex-fields {\n & > .field,\n & > .data {\n display: flex;\n box-sizing: border-box;\n flex-wrap: wrap; // for error lists\n justify-content: space-between;\n align-items: center;\n margin: 0 var(--neg-padding) !important;\n padding: 0 var(--padding);\n transition: padding-left linear 100ms, padding-right linear 100ms;\n\n &.nested {\n @include padding-left(38px);\n }\n\n &.add {\n &:before {\n position: absolute;\n @include left(0);\n width: 31px;\n @include alignright;\n @include icon;\n content: 'plus';\n color: var(--light-text-color);\n }\n\n .input {\n width: 100%;\n }\n }\n\n & > .heading {\n margin: 0;\n\n @media screen and (min-width: $min2ColWidth) {\n flex: 0 0 104px;\n @include margin-right(var(--s));\n line-height: 18px;\n }\n }\n\n &.lightswitch-field > .heading {\n flex: 1;\n }\n\n & > .input {\n .flex {\n flex-wrap: nowrap;\n\n & > * {\n margin-bottom: 0;\n }\n }\n }\n }\n\n & > .field > .heading {\n margin: var(--xs) 0;\n\n @media screen and (min-width: $min2ColWidth) {\n margin: 0;\n }\n\n & > .copytextbtn {\n display: none;\n }\n }\n\n & > .data > .heading {\n padding: var(--s) 0;\n }\n\n & > .field > .heading > label,\n & > .data > .heading {\n color: var(--medium-text-color);\n }\n\n & > .field > .input,\n & > .data > .value {\n padding: var(--s) 0;\n width: 100%;\n\n @media screen and (min-width: $min2ColWidth) {\n width: calc(100% - 112px);\n }\n }\n\n & > .data > .value {\n display: flex;\n align-items: center;\n\n & > [data-icon='draft'] {\n margin-top: -2px;\n @include margin-right(8px);\n }\n }\n\n & > .field.lightswitch-field > .input {\n flex: 0;\n width: auto;\n }\n\n & > .field {\n &.has-errors {\n border: 1px solid var(--error-color) !important;\n\n &:first-child {\n border-top-left-radius: var(--large-border-radius);\n border-top-right-radius: var(--large-border-radius);\n }\n\n &:last-child {\n border-bottom-left-radius: var(--large-border-radius);\n border-bottom-right-radius: var(--large-border-radius);\n }\n\n & + .field {\n border-top: none !important;\n }\n }\n\n & > .heading {\n & > label,\n & > legend {\n font-weight: normal;\n }\n }\n\n & > .input {\n &,\n & > .flex,\n & > .flex > .textwrapper,\n & > .datewrapper,\n & > .timewrapper,\n & > .datetimewrapper > .datewrapper,\n & > .datetimewrapper > .timewrapper {\n & > .text {\n display: block;\n margin: calc(var(--s) * -1) 0;\n background-color: transparent;\n }\n }\n\n & > .datewrapper,\n & > .timewrapper,\n & > .datetimewrapper > .datewrapper,\n & > .datetimewrapper > .timewrapper {\n background-color: transparent;\n }\n\n & > .datetimewrapper {\n & > .datewrapper {\n width: 55%;\n }\n\n & > .timewrapper {\n width: 45%;\n }\n\n & > .clear-btn {\n @include margin-right(-24px);\n }\n }\n\n & > .datewrapper,\n & > .timewrapper {\n display: block;\n width: 100%;\n }\n }\n\n & > ul.errors {\n margin: 0;\n padding: 0 0 6px;\n width: 100%;\n list-style-type: none;\n }\n\n & > .clear-btn {\n @include margin-right(var(--neg-padding));\n }\n }\n }\n\n & > .flex-fields {\n h2,\n blockquote.note {\n margin: 0 -24px !important;\n padding: 14px 24px;\n background-color: darken($grey050, 2%);\n }\n\n blockquote.note {\n border-radius: 0;\n border: none;\n }\n\n hr {\n margin: 0 -24px;\n }\n }\n}\n\n.meta > .field > .input > .select {\n display: block;\n margin: calc(var(--s) * -1) 0;\n width: 100%;\n border-radius: 0;\n box-shadow: none;\n background-color: transparent;\n\n & + .spinner {\n position: absolute;\n top: calc(50% - 17px);\n @include right(-24px);\n }\n\n select {\n @include padding-left(6px);\n border: 1px solid var(--input-border-color);\n width: 100%;\n background-color: transparent;\n }\n}\n\n.body {\n position: relative;\n}\n\n.slideout-container,\n.slideout,\n.modal,\n.hud {\n z-index: 100;\n box-sizing: border-box;\n}\n\n.modal,\n.hud .body {\n @include modal;\n}\n\n.slideout-shade {\n opacity: 0;\n transition: opacity linear 250ms;\n\n &.so-visible {\n opacity: 1;\n }\n}\n\n.slideout-container {\n position: fixed;\n top: 0;\n left: 0;\n width: 100vw;\n height: 100vh;\n height: -webkit-fill-available; // h/t https://twitter.com/AllThingsSmitty/status/1254151507412496384\n pointer-events: none;\n\n body.has-debug-toolbar & {\n height: calc(100vh - 42px);\n }\n}\n\n.slideout {\n position: absolute;\n background-color: var(--white);\n box-shadow: 0 0 0 1px transparentize($grey400, 0.75),\n 0 25px 100px transparentize($grey900, 0.5) !important;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n padding: 24px var(--padding);\n pointer-events: all;\n\n &.so-mobile {\n --padding: 14px;\n --neg-padding: -14px;\n width: 100%;\n height: 100%;\n left: 0;\n transition: top linear 250ms;\n will-change: top;\n }\n\n &:not(.so-mobile) {\n top: 8px;\n width: calc(50% - 8px);\n height: calc(100% - 16px);\n border-radius: var(--large-border-radius);\n\n @media screen and (prefers-reduced-motion: no-preference) {\n body.ltr & {\n transition: left linear 250ms;\n will-change: left;\n }\n\n body.rtl & {\n transition: right linear 250ms;\n will-change: right;\n }\n }\n }\n\n & > .pane-header {\n z-index: 2;\n\n & > .so-toolbar {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: var(--s);\n min-height: calc(50px - 16px);\n\n & > .pane-tabs {\n width: 1px; // give other elements in the header plenty of room before the tabs take up whatever's left\n flex: 1;\n @include margin-right(0);\n }\n }\n }\n\n &.so-mobile > .pane-header {\n padding-left: 10px;\n padding-right: 10px;\n }\n\n & > .so-body {\n flex: 1;\n margin: -24px var(--neg-padding) 0;\n padding: 24px var(--padding);\n overflow: hidden auto;\n position: relative;\n\n & > .so-sidebar {\n position: absolute;\n top: 0;\n @include pane();\n width: 350px;\n height: 100%;\n max-width: 100%;\n box-sizing: border-box;\n padding: 0 var(--padding) var(--spacing);\n background-color: var(--gray-100);\n overflow: hidden auto;\n z-index: 1;\n\n body.ltr & {\n transition: right linear 250ms;\n }\n body.rtl & {\n transition: left linear 250ms;\n }\n\n & > .preview-thumb-container {\n margin: 0 var(--neg-padding);\n height: auto;\n min-height: 54px; // make room for the Preview / Edit buttons\n\n & + .pane-header {\n border-radius: 0;\n }\n }\n\n .image-actions {\n &.is-mobile {\n margin: calc(var(--spacing) / 2) 0 var(--spacing);\n }\n }\n\n & > .meta.read-only:first-child {\n margin-top: var(--padding);\n }\n\n & > .meta.warning {\n box-shadow: none;\n border-bottom: 1px solid var(--yellow-300);\n }\n\n & > .field {\n & > .input > .text.fullwidth {\n border-radius: 0;\n }\n }\n\n .notes {\n padding-top: var(--m);\n padding-bottom: var(--m);\n }\n }\n }\n\n & > .so-footer {\n position: relative;\n display: flex;\n gap: 8px;\n justify-content: space-between;\n flex-wrap: wrap;\n margin: 0 var(--neg-padding) -24px;\n padding: 8px var(--padding);\n @include pane;\n background-color: var(--gray-050);\n z-index: 3;\n\n & > .so-extra {\n flex: 0 0 100%;\n margin: 0 var(--neg-padding);\n padding: 0 var(--padding) 8px;\n border-bottom: 1px solid var(--hairline-color);\n }\n }\n}\n\n@media (min-width: 1536px) {\n .slideout {\n &.has-sidebar {\n .pane-header:not(.so-visible) {\n display: none;\n }\n\n .sidebar-btn {\n display: none;\n }\n\n .so-body {\n display: flex;\n flex-direction: row;\n padding: 0;\n overflow: hidden;\n\n & > .so-content {\n position: relative;\n z-index: 2;\n padding: 24px;\n width: calc(100% - 350px);\n height: 100%;\n box-sizing: border-box;\n @include border-right(1px solid var(--gray-200));\n overflow: hidden auto;\n }\n\n & > .so-sidebar {\n position: relative;\n display: block !important;\n top: auto;\n right: auto !important;\n left: auto !important;\n height: 100%;\n box-shadow: none;\n }\n }\n }\n\n & > .so-footer {\n & > .so-extra {\n margin: 0;\n padding: 0;\n border: none;\n flex: auto 0 1;\n }\n }\n }\n}\n\n.header,\n.hud-header,\n.footer,\n.hud-footer,\n.body {\n &:after {\n @include clearafter;\n }\n}\n\n.header,\n.hud-header,\n.footer,\n.hud-footer {\n position: relative;\n z-index: 1;\n box-sizing: border-box;\n}\n\n.header,\n.hud-header,\n.footer,\n.hud-footer {\n background-color: var(--gray-100);\n}\n\n.header,\n.hud-header {\n border-radius: var(--large-border-radius) var(--large-border-radius) 0 0;\n padding: 24px;\n box-shadow: inset 0 -1px 0 var(--hairline-color);\n\n h1 {\n margin: 0;\n }\n}\n\n.footer,\n.hud-footer {\n border-radius: 0 0 var(--large-border-radius) var(--large-border-radius);\n padding: var(--s) var(--xl);\n box-shadow: inset 0 1px 0 var(--hairline-color);\n\n &.flex {\n & > * {\n margin-bottom: 0;\n }\n }\n}\n\n.modal .body,\n.hud .main {\n padding: 24px;\n overflow: hidden;\n box-sizing: border-box;\n}\n\n.pane,\n.modal .body {\n .header {\n margin: -24px -24px 24px;\n }\n\n .footer {\n margin: 24px -24px -24px;\n }\n}\n\n.slideout-shade,\n.modal-shade,\n.hud-shade {\n z-index: 100;\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: none;\n}\n\n.slideout-shade,\n.modal-shade {\n &:not(.dark) {\n background-color: transparentize($grey400, 0.65) !important;\n }\n\n &.dark {\n background-color: transparentize($grey900, 0.5) !important;\n }\n}\n\n.modal {\n position: fixed;\n overflow: hidden;\n\n &:not(.fitted):not(.fullscreen) {\n width: 66%;\n height: 66%;\n min-width: 600px;\n min-height: 400px;\n }\n\n &.fitted {\n width: auto;\n height: auto;\n min-width: 0;\n min-height: 0;\n }\n\n &.fullscreen {\n width: 100%;\n height: 100%;\n border-radius: 0;\n }\n\n &.alert .body {\n @include padding-left(76px);\n\n &:before {\n @include icon;\n @include margin(-6px, 0, 0, -58px);\n @include floatleft;\n content: 'alert';\n font-size: 40px;\n color: var(--light-text-color);\n }\n }\n\n &.secure .body {\n @include padding-left(76px);\n\n &:before {\n @include icon;\n @include margin(-14px, 0, 0, -56px);\n @include floatleft;\n content: 'secure';\n font-size: 58px;\n color: var(--light-text-color);\n }\n }\n\n .resizehandle {\n position: absolute;\n z-index: 1;\n bottom: 0;\n @include right(0);\n width: 24px;\n height: 24px;\n cursor: nwse-resize;\n padding: var(--xs);\n\n path {\n fill: var(--ui-control-color);\n }\n\n body.rtl & {\n .ltr {\n display: none;\n }\n }\n\n body.ltr & {\n .rtl {\n display: none;\n }\n }\n }\n}\n\n.hud {\n position: absolute;\n display: none;\n top: 0;\n\n &.has-footer .tip-bottom {\n background-image: url(../images/hudtip_bottom_gray.png);\n }\n\n .tip {\n position: absolute;\n z-index: 101;\n background: no-repeat 0 0;\n }\n\n .tip-left {\n left: -15px;\n width: 15px;\n height: 30px;\n background-image: url(../images/hudtip_left.png);\n }\n\n .tip-top {\n top: -15px;\n width: 30px;\n height: 15px;\n background-image: url(../images/hudtip_top.png);\n }\n\n .tip-right {\n right: -15px;\n width: 15px;\n height: 30px;\n background-image: url(../images/hudtip_right.png);\n }\n\n .tip-bottom {\n bottom: -15px;\n width: 30px;\n height: 15px;\n background-image: url(../images/hudtip_bottom.png);\n }\n}\n\n.hud .hud-header,\n.hud .hud-footer {\n padding: var(--s) var(--xl);\n}\n\n.hud .body {\n overflow: hidden;\n\n ::-webkit-scrollbar {\n appearance: none;\n\n &:vertical {\n width: 11px;\n }\n\n &:horizontal {\n height: 11px;\n }\n }\n\n ::-webkit-scrollbar-thumb {\n border-radius: 8px;\n border: 2px solid transparent;\n background-color: transparentize($black, 0.5);\n }\n\n ::-webkit-scrollbar-track {\n background-color: var(--gray-050);\n }\n}\n\n/* inline asset previews */\n\n.preview-thumb-container {\n position: relative;\n display: flex;\n flex-direction: row;\n align-items: center;\n height: 190px;\n background-color: var(--gray-900);\n margin: 0 var(--neg-padding) var(--spacing);\n\n &.checkered img {\n background-color: var(--white);\n @include checkered-bg(17px);\n }\n\n &.editable {\n cursor: pointer;\n }\n\n &.loading {\n &:after {\n content: '';\n font-size: 0;\n display: block;\n position: absolute;\n width: 100%;\n height: 100%;\n left: 0;\n top: 0;\n background-color: transparentize($grey900, 0.2);\n }\n\n .spinner {\n color: var(--white);\n z-index: 1;\n }\n }\n\n #details & {\n border-radius: var(--large-border-radius);\n overflow: hidden;\n }\n\n .preview-thumb {\n display: flex;\n flex-direction: column;\n align-items: center;\n width: 100%;\n height: 100%;\n\n img {\n display: block;\n max-width: 100%;\n max-height: 190px;\n }\n }\n}\n\n.image-actions {\n &.is-mobile {\n margin: calc((var(--spacing) / 2) * -1) var(--neg-padding) var(--spacing);\n display: grid;\n grid-template-columns: 1fr 1fr;\n }\n}\n\n.button-fade {\n .buttons {\n opacity: 0;\n position: absolute;\n top: 10px;\n @include right(10px);\n margin: 0;\n transition: opacity linear 100ms;\n\n .btn {\n --ui-control-color: var(--white);\n --ui-control-hover-color: var(--white);\n --ui-control-active-color: var(--white);\n --interaction-background-color: var(--gray-700);\n background-color: var(--gray-600);\n color: var(--white);\n @include light-on-dark-text;\n @include two-color-focus-ring($light-button: false);\n\n &:hover {\n background-color: var(--interaction-background-color) !important;\n }\n\n &:not(.disabled):not(.loading):not(.dashed) {\n &:focus,\n &.focus,\n &:hover {\n background-color: var(--interaction-background-color);\n }\n }\n }\n }\n\n &:hover,\n &:focus-within {\n .buttons {\n opacity: 1;\n }\n }\n}\n\n/* element selector modals */\n.elementselectormodal {\n --content-padding: 24px;\n padding-bottom: 50px;\n user-select: none;\n\n .body {\n position: relative;\n height: 100%;\n\n .spinner.big {\n position: absolute;\n top: 50%;\n left: 50%;\n margin: -24px 0 0 -24px;\n }\n\n .content {\n height: calc(100% + 48px);\n\n .sidebar {\n position: absolute;\n top: 0;\n @include margin-left(-249px);\n height: 100%;\n overflow: auto;\n padding: var(--content-padding) 0;\n }\n\n .main {\n margin: -24px;\n padding: var(--content-padding);\n height: 100%;\n box-sizing: border-box;\n overflow: auto;\n position: relative;\n\n .elements {\n &.busy {\n min-height: calc(100% - 48px);\n }\n\n .tableview table {\n .element {\n display: inline-block;\n }\n\n tr {\n &.disabled {\n opacity: 1;\n color: var(--gray-200);\n\n .element {\n opacity: 0.25;\n }\n }\n\n th,\n td {\n cursor: default;\n }\n\n td:first-child {\n @include padding-left(7px);\n }\n }\n }\n\n .structure .row {\n margin-top: 1px;\n }\n }\n }\n }\n }\n\n .footer {\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n margin: 0;\n box-sizing: border-box;\n\n .spinner {\n @include floatright;\n @include margin-right(-24px);\n }\n }\n}\n\n/* element selector modals & customize sources modal */\n.elementselectormodal,\n.customize-sources-modal {\n .main-header {\n display: flex;\n align-items: center;\n margin-bottom: var(--s);\n }\n\n .main-heading {\n margin-bottom: 0;\n }\n\n .nav-toggle {\n @include margin-left(4px);\n @include touch-target;\n color: var(--ui-control-color);\n\n &:hover {\n color: var(--gray-500);\n }\n }\n\n .sidebar-header {\n display: flex;\n justify-content: flex-end;\n padding: 0 var(--s);\n margin-bottom: var(--s);\n }\n\n .nav-close {\n @include touch-target;\n }\n}\n\n/* element editing HUD */\n.element-hud-form {\n .buttons {\n position: relative;\n\n .spinner {\n position: absolute;\n top: 0;\n @include right(-24px);\n }\n }\n}\n\n/* element index view menu */\n.element-index-view-menu {\n width: 400px;\n max-width: calc(100% - 20px);\n padding: 0 !important;\n\n .meta {\n padding-top: var(--s);\n padding-bottom: var(--s);\n }\n\n .table-columns-field {\n align-items: flex-start;\n\n .input {\n padding: 13px 0;\n }\n }\n\n .menu-footer {\n margin: 0 !important;\n padding: var(--s) var(--xl) !important;\n background-color: var(--gray-050);\n }\n}\n\n.element-index-view-menu-table-column .icon.move {\n @include margin-right(10px);\n}\n\n/* sort fields */\n.sort-field {\n .input {\n .flex {\n .btngroup {\n .btn {\n width: 42px;\n }\n }\n\n .flex-grow {\n max-width: calc(100% - 85px - var(--s));\n }\n\n @media screen and (max-width: 350px) {\n flex-direction: column;\n\n & > * {\n width: 100%;\n }\n\n .flex-grow {\n max-width: none;\n }\n }\n }\n }\n}\n\n/* element filter HUD */\n.element-filter-hud {\n &.loading .body {\n padding: 50px;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n .body,\n .main {\n overflow: visible;\n }\n}\n\n/* Address Cards */\n.address-cards {\n display: grid;\n gap: var(--m) var(--m);\n grid-template-columns: repeat(1, minmax(0, 1fr));\n grid-auto-rows: minmax(0, 1fr);\n\n .so-content & {\n grid-template-columns: repeat(1, minmax(0, 1fr)) !important;\n }\n}\n\n.address-cards__add-btn {\n padding: 1rem;\n min-height: 8rem;\n height: auto;\n width: 100%;\n}\n\n.address-card.error {\n border: 1px solid #cf1124;\n}\n\n.address-card.error:hover {\n border-color: #cf1124;\n}\n\n@media (min-width: 1024px) {\n .address-cards {\n grid-template-columns: repeat(2, minmax(0, 1fr));\n }\n}\n\n@media (min-width: 1280px) {\n .address-cards {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n\n .so-content & {\n grid-template-columns: repeat(2, minmax(0, 1fr)) !important;\n }\n }\n}\n\n@media (min-width: 1536px) {\n .address-cards {\n grid-template-columns: repeat(4, minmax(0, 1fr));\n }\n}\n\n.address-card {\n border: 1px solid #eee;\n border-radius: 0.375rem;\n padding: 1rem;\n min-height: 4rem;\n}\n\n.address-card:hover {\n border-color: #ddd;\n background-color: #fafafa;\n cursor: pointer;\n}\n\n.address-card .address-card-header {\n display: flex;\n flex-wrap: nowrap;\n justify-content: space-between;\n}\n\n.address-card .address-card-header-actions {\n display: flex;\n justify-content: flex-end;\n}\n\n.address-card .address-card-label {\n background: #e6f1fe;\n color: #2563eb;\n padding: 0.125rem 0.5rem;\n border-radius: 0.25rem;\n font-size: 0.75rem;\n text-transform: uppercase;\n font-weight: 500;\n margin-bottom: 0.75rem;\n\n .ltr & {\n margin-right: 0.5rem;\n }\n\n .rtl & {\n margin-left: 0.5rem;\n }\n}\n\n/* logout warning/login/elevated session modals */\n.logoutwarningmodalshade,\n.loginmodalshade {\n z-index: 101;\n}\n\n#logoutwarningmodal,\n#loginmodal,\n#elevatedsessionmodal,\n.prompt {\n width: 500px;\n}\n\n#logoutwarningmodal,\n#loginmodal {\n z-index: 101;\n}\n\n.prompt {\n height: auto;\n min-height: auto;\n}\n\n/* delete user modal */\n.deleteusermodal {\n .content-summary {\n margin: -24px -24px 24px;\n padding: 24px;\n background-color: var(--gray-050);\n }\n\n .options {\n label {\n display: inline-block;\n line-height: 30px;\n }\n }\n\n .elementselect {\n @include margin-left(10px);\n display: inline-block;\n vertical-align: middle;\n }\n\n .buttons {\n .spinner {\n @include margin-right(-20px);\n }\n }\n}\n\n.dropdownsettingsmodal {\n width: auto;\n height: auto;\n min-width: 0;\n min-height: 0;\n max-width: 400px;\n\n .body {\n max-height: 100%;\n overflow-y: auto;\n }\n}\n\n.previewmodal {\n &.zilch {\n padding: 100px 0;\n display: flex;\n align-items: center;\n justify-content: center;\n }\n}\n\n/* ----------------------------------------\n/* Menus\n/* ----------------------------------------*/\n\n.menu,\n.ui-datepicker,\n.ui-timepicker-list {\n @include menu-styles;\n}\n\n.ui-datepicker,\n.ui-timepicker-list {\n padding: 0;\n}\n\n.menu {\n display: none;\n position: absolute;\n\n h6 {\n &:first-child {\n margin-top: 14px !important;\n }\n }\n\n ul {\n &.padded {\n li {\n a,\n .menu-option {\n @include padding-left(24px);\n\n &[data-icon],\n &.icon,\n &.sel {\n &:before {\n @include floatleft;\n @include margin(3px, 0, 0, -17px);\n font-size: 14px;\n color: var(--ui-control-color);\n }\n\n &.error:before {\n color: var(--error-color);\n }\n }\n\n &.sel:not([data-icon]):before {\n content: 'check';\n }\n }\n }\n }\n\n li {\n a,\n .menu-option {\n @include menu-option-styles;\n font-size: 14px;\n cursor: default;\n -webkit-appearance: none;\n\n &:not(.flex) {\n display: table !important;\n box-sizing: border-box;\n width: calc(100% + 28px);\n @include alignleft;\n }\n\n &.sel {\n cursor: default;\n }\n\n .shortcut {\n @include floatright;\n @include margin-left(14px);\n padding: 0 4px;\n border-radius: var(--medium-border-radius);\n box-shadow: 0 0 0 1px transparentize($grey600, 0.75),\n 0 1px 3px -1px transparentize($grey600, 0.5);\n }\n }\n }\n }\n\n & > .flex {\n margin-top: 10px;\n margin-bottom: 10px;\n position: relative;\n\n &.padded {\n @include margin-left(-14px);\n @include padding-left(24px);\n\n &.sel {\n &:before {\n position: absolute;\n top: 36px;\n @include left(7px);\n content: 'check';\n font-size: 14px;\n color: var(--light-text-color);\n }\n }\n }\n }\n\n hr {\n margin: 5px -14px;\n }\n\n .go:after {\n color: inherit;\n }\n}\n\n.menubtn,\n.menu {\n span.icon {\n display: inline-block;\n margin-top: -1px;\n width: 10px;\n @include margin-right(10px);\n text-align: center;\n font-size: 14px;\n color: var(--ui-control-color);\n }\n}\n\n.menu:not(.menu--disclosure) ul li a:not(.sel):not(.disabled):hover,\n.menu:not(.menu--disclosure):not(:hover) ul li a:not(.disabled).hover {\n @include menu-option-active-styles;\n\n --text-color: var(--white);\n --light-text-color: var(--gray-100);\n --ui-control-color: var(--gray-050);\n --ui-control-hover-color: var(--gray-100);\n --ui-control-active-color: var(--gray-100);\n\n span.icon,\n &:before {\n color: var(--menu-option-active-color);\n }\n\n &.error {\n color: var(--menu-option-active-color) !important;\n }\n}\n\n.menu {\n hr.padded,\n h6.padded {\n @include margin-left(10px);\n }\n}\n\n.menu--disclosure ul li {\n & > a,\n & > .menu-option {\n &:hover {\n @include disclosure-link-hover-styles;\n }\n\n @include focus-styles {\n box-shadow: inset 0 0 0 3px hsla(var(--dark-focus-hsl), 0.7);\n }\n }\n}\n\n/* tag select fields */\n.tagselect {\n .elements {\n display: inline;\n }\n\n .element.small {\n clear: none;\n }\n\n .add {\n position: relative;\n z-index: 1;\n @include margin(7px, 7px, 0, 0);\n display: inline-block;\n width: 12em;\n\n .text {\n @include padding-right(30px);\n }\n\n .spinner {\n position: absolute;\n top: 0;\n @include right(5px);\n }\n }\n\n // todo: why are body.ltr and body.rtl needed here?\n body.ltr &,\n body.rtl & {\n &.elementselect .element {\n float: none !important;\n display: inline-block;\n }\n }\n}\n\n.tagmenu {\n ul {\n li {\n a {\n @include padding-left(26px);\n\n &:before {\n @include floatleft;\n @include margin(3px, 0, 0, -18px);\n }\n }\n }\n }\n}\n\n/* selectize */\n\n/* ----------------------------------------\n/* Fields\n/* ----------------------------------------*/\n\n.shadow-box {\n border-radius: var(--large-border-radius);\n border: 1px solid var(--gray-200);\n @include shadow;\n}\n\ntable.shadow-box,\ntable.editable {\n border-collapse: separate;\n border-spacing: 0;\n\n thead,\n tbody:first-child,\n caption + tbody {\n tr:first-child {\n th:first-child,\n td:first-child {\n &,\n &.disabled:after {\n border-top-left-radius: var(--medium-border-radius);\n }\n }\n th:last-child,\n td:last-child {\n &,\n &.disabled:after {\n border-top-right-radius: var(--medium-border-radius);\n }\n }\n }\n }\n thead:last-child,\n tbody:last-child {\n tr:last-child {\n th:first-child,\n td:first-child {\n &,\n &.disabled:after {\n border-bottom-left-radius: calc(var(--large-border-radius) - 1px);\n }\n }\n th:last-child,\n td:last-child {\n &,\n &.disabled:after {\n border-bottom-right-radius: calc(var(--large-border-radius) - 1px);\n }\n }\n }\n }\n}\n\n.text,\n.passwordwrapper,\n.border-box,\n.matrix-configurator > .field > .input,\n.selectize.multiselect .selectize-input,\n.multiselect > select {\n @include input-styles;\n}\n\n.text,\n.passwordwrapper,\n.border-box,\n.selectize.multiselect .selectize-input {\n &.focus {\n @include input-focused-styles;\n }\n\n @include focus-styles {\n @include input-focused-styles;\n }\n}\n\ninput.text,\ntextarea.text,\n.text > input,\n.text > textarea,\ntable.editable textarea,\n.selectize.multiselect .selectize-input {\n font-size: 14px;\n line-height: 20px;\n color: var(--text-color);\n min-height: 3px;\n box-sizing: border-box;\n appearance: none;\n}\n\n.selectize.multiselect .selectize-input {\n line-height: 18px;\n}\n\ntextarea.text.fullwidth {\n display: block;\n}\n\n.multitext .multitextrow {\n &:after {\n @include clearafter;\n }\n\n &:first-child .text {\n &:first-child {\n @include border-top-left-radius(var(--medium-border-radius));\n }\n\n &:last-child {\n @include border-top-right-radius(var(--medium-border-radius));\n }\n }\n\n &:last-child .text {\n &:first-child {\n @include border-bottom-left-radius(var(--medium-border-radius));\n }\n\n &:last-child {\n @include border-bottom-right-radius(var(--medium-border-radius));\n }\n }\n\n &:not(:first-child) .text {\n margin-top: -1px;\n }\n\n .text {\n border-radius: 0;\n float: left;\n box-sizing: border-box;\n\n &:not(:first-child) {\n @include margin-left(-1px);\n }\n\n &:first-child {\n &:nth-last-child(1) {\n width: 100%;\n }\n\n &:nth-last-child(2) {\n width: 50%;\n }\n\n &:nth-last-child(2) ~ .text {\n width: calc(50% + 1px);\n }\n }\n\n &.error {\n position: relative;\n z-index: 1;\n }\n }\n\n .text:focus,\n .selectize.multiselect .selectize-input.focus {\n position: relative;\n z-index: 2;\n }\n}\n\n.chars-left {\n position: relative;\n @include floatright;\n @include margin(-27px, 7px, 0, 0);\n color: var(--light-text-color);\n\n .input.ltr > & {\n float: right !important;\n margin-right: 7px !important;\n }\n\n .input.rtl > & {\n float: left !important;\n margin-left: 7px !important;\n }\n\n &.negative-chars-left {\n color: var(--error-color);\n }\n}\n\n.field,\nfieldset {\n position: relative;\n margin: 24px 0;\n\n .flex > & {\n margin-top: 0;\n margin-bottom: 0;\n }\n}\n\n.field {\n min-inline-size: initial;\n\n & > .status-badge {\n position: absolute;\n top: 0;\n @include left(0);\n width: 2px;\n height: 100%;\n content: '';\n cursor: help;\n\n &.modified {\n background-color: var(--blue-600);\n }\n\n &.outdated {\n background-color: var(--pending-color);\n }\n }\n\n & > .heading {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n position: relative;\n margin-top: -5px;\n margin-bottom: 5px;\n\n & > label,\n & > legend {\n font-weight: bold;\n color: var(--medium-dark-text-color);\n\n code {\n font-size: 1em !important;\n }\n\n .info {\n @include margin-left(5px);\n }\n }\n\n .t9n-indicator {\n @include margin-left(7px);\n color: var(--light-text-color);\n }\n\n & + .instructions {\n margin-top: -3px;\n }\n\n // BC\n & > .instructions {\n width: 100%;\n }\n }\n\n & > .instructions {\n margin-bottom: 5px;\n }\n\n & > .input {\n position: relative;\n\n &:after {\n @include clearafter;\n }\n\n & + .instructions {\n margin: 5px 0 0;\n }\n }\n\n & > .notice,\n & > .warning {\n margin: 5px 0 0;\n }\n}\n\n.field > .instructions,\n// BC\n.field > .heading > .instructions,\n.checkboxfield .instructions {\n color: var(--medium-text-color);\n\n img,\n video,\n embed,\n iframe {\n max-width: 100% !important;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n}\n\n.expand-status-btn {\n @include margin-left(5px);\n width: 30px;\n height: 17px;\n padding: 0;\n line-height: 16px;\n border-radius: var(--small-border-radius);\n color: var(--text-color);\n\n &:before {\n margin: 0;\n }\n}\n\n/* toggles and nested fields */\n.nested-fields {\n margin: -24px;\n padding: 24px 24px 0;\n\n &.hidden {\n display: block;\n height: 0;\n }\n\n & > .field:last-child {\n padding-bottom: 24px;\n }\n}\n\n/* checkbox */\ninput.checkbox {\n opacity: 0;\n position: absolute;\n width: var(--checkbox-size);\n height: var(--checkbox-size);\n}\n\ninput.checkbox + label,\ndiv.checkbox {\n display: inline-block;\n clear: none;\n position: relative;\n @include padding-left($checkboxSize + 5);\n line-height: 16px;\n height: 16px;\n cursor: pointer;\n\n .info {\n height: 16px;\n }\n}\n\ninput.checkbox:disabled + label,\n.disabled div.checkbox {\n cursor: default;\n}\n\ninput.checkbox + label:empty,\ndiv.checkbox:empty {\n @include padding-left(var(--checkbox-size));\n}\n\ninput.checkbox + label:empty:after,\ndiv.checkbox:empty:after {\n content: '';\n font-size: 0;\n}\n\n/* fixes a RTL bug */\ninput.checkbox + label:before,\ndiv.checkbox:before {\n display: block;\n position: absolute;\n @include left(0);\n top: 0;\n width: var(--checkbox-size) !important;\n height: var(--checkbox-size);\n box-sizing: border-box;\n content: '';\n font-size: 0;\n background-color: hsl(212, 50%, 99%);\n border: 1px solid var(--input-border-color);\n background-clip: padding-box;\n border-radius: var(--small-border-radius);\n}\n\ninput.checkbox:disabled + label,\ndiv.checkbox.disabled:before,\ndiv.checkbox.disabled + label {\n opacity: 0.25;\n}\n\ninput.checkbox:checked + label:before,\ndiv.checkbox.checked:before,\n.sel div.checkbox:before,\ninput.checkbox:indeterminate + label:before,\ndiv.checkbox.indeterminate:before {\n @include icon;\n line-height: var(--checkbox-size);\n color: var(--gray-900);\n}\n\ninput.checkbox:checked:not(:indeterminate) + label:before,\ndiv.checkbox.checked:not(.indeterminate):before,\n.sel div.checkbox:not(.indeterminate):before {\n content: 'check';\n font-size: 15px;\n}\n\ninput.checkbox:indeterminate + label:before,\ndiv.checkbox.indeterminate:before {\n content: 'minus';\n font-size: 7px;\n text-align: center;\n}\n\nbody:not(.reduce-focus-visibility) {\n input.checkbox:focus + label:before,\n :focus div.checkbox:before {\n @include input-focused-styles;\n }\n}\n\nbody.reduce-focus-visibility {\n input.checkbox:focus-visible + label:before,\n :focus-visible div.checkbox:before {\n @include input-focused-styles;\n }\n}\n\n.checkbox-icon:before {\n @include icon;\n line-height: var(--checkbox-size);\n color: var(--enabled-color);\n content: 'check';\n font-size: 15px;\n}\n\n.monaco-mouse-cursor-text {\n @include focus-styles {\n box-shadow: none !important;\n }\n}\n\nfieldset {\n .checkboxfield {\n margin: 5px 0;\n }\n}\n\n.checkboxfield {\n .instructions,\n .notice,\n .warning {\n margin-top: 2px;\n @include padding-left($checkboxSize + 5);\n }\n}\n\n/* radio */\ninput.radio {\n opacity: 0;\n position: absolute;\n width: var(--radio-size);\n height: var(--radio-size);\n}\n\ninput.radio + label,\ndiv.radio {\n display: inline-block;\n clear: none;\n position: relative;\n @include padding-left($radioSize + 5);\n line-height: calc(24 / 14);\n cursor: pointer;\n}\n\ninput.radio:disabled + label,\n.disabled div.radio {\n cursor: default;\n}\n\ninput.radio + label:empty,\ndiv.radio:empty {\n @include padding-left(var(--radio-size));\n}\n\n/* fixes a RTL bug */\ninput.radio + label:before,\ninput.radio + label:after,\ndiv.radio:before,\ndiv.radio:after {\n display: block;\n position: absolute;\n content: '';\n box-sizing: border-box;\n background-clip: padding-box;\n border-radius: 100%;\n}\n\ninput.radio + label:before,\ndiv.radio:before {\n top: 50%;\n left: 0;\n transform: translateY(-50%);\n width: var(--radio-size);\n height: var(--radio-size);\n background-color: hsl(212, 50%, 99%);\n border: 1px solid var(--input-border-color);\n}\n\ninput.radio + label:after,\ndiv.radio:after {\n top: calc(50%);\n left: 4px;\n transform: translateY(-50%);\n width: calc(var(--radio-size) - 8px);\n height: calc(var(--radio-size) - 8px);\n}\n\ninput.radio:disabled + label,\ndiv.radio.disabled:before,\ndiv.radio.disabled + label {\n opacity: 0.25;\n}\n\ninput.radio:checked + label:after,\ndiv.radio.checked:after,\n.sel div.radio:after {\n background: var(--gray-900);\n}\n\nbody:not(.reduce-focus-visibility) {\n input.radio:focus + label:before,\n :focus div.radio:before {\n @include input-focused-styles;\n }\n}\n\nbody.reduce-focus-visibility {\n input.radio:focus-visible + label:before,\n :focus-visible div.radio:before {\n @include input-focused-styles;\n }\n}\n\n/* multiselect */\n.multiselect > select {\n color: var(--text-color);\n font-size: 14px;\n appearance: none;\n\n @include focus-styles {\n @include input-focused-styles;\n }\n\n option {\n padding: 1px 8px;\n }\n}\n\n.text,\n.selectize.multiselect .selectize-input {\n padding: 6px 9px;\n}\n\n.text {\n background-color: var(--white);\n\n &:not(.small) {\n box-sizing: border-box;\n min-height: 34px;\n }\n\n &.small {\n padding: 3px;\n }\n\n &.readable {\n padding: 16px 18px;\n font-size: 16px;\n line-height: 22px;\n\n & + .chars-left {\n margin-top: -23px;\n }\n }\n\n &.clearable {\n @include padding-right(var(--touch-target-size));\n }\n\n input {\n margin: 0;\n padding: 0;\n border: none;\n background-color: transparent;\n }\n}\n\n.input.errors > .text,\n.input.errors > .border-box,\n.input.errors > .passwordwrapper,\n.input.errors > .autosuggest-container .text,\n.text.error {\n border: 1px solid var(--error-color) !important;\n}\n\n.texticon {\n position: relative;\n cursor: text;\n min-width: 130px;\n\n &.icon {\n &:before {\n position: absolute;\n top: 9px;\n @include left(9px);\n color: var(--ui-control-color);\n }\n\n .text {\n @include padding-left(26px);\n }\n }\n\n .clear-btn {\n position: absolute;\n top: calc(\n (var(--touch-target-size) - 34px) / -2\n ); /* Responds to min-height of text input */\n @include right(0);\n width: var(--touch-target-size);\n height: var(--touch-target-size);\n }\n\n &.has-filter-btn {\n .text {\n @include padding-right(26px);\n }\n\n .filter-btn {\n position: absolute;\n top: 4px;\n @include right(4px);\n padding: 0 7px 4px;\n font-size: 14px;\n line-height: 22px;\n cursor: pointer;\n border-radius: 13px;\n\n &:before {\n @include icon;\n content: 'filter';\n color: var(--medium-text-color);\n }\n\n &:hover {\n background-color: var(--gray-100);\n }\n\n &:active,\n &.active {\n background-color: var(--gray-350);\n\n &:before {\n color: var(--white);\n }\n }\n }\n\n .text {\n @include padding-left(26px);\n\n &.clearable {\n @include padding-right(calc(30px + var(--touch-target-size)));\n }\n }\n\n .clear-btn {\n @include right(30px);\n }\n }\n}\n\n.texthint-container {\n position: relative;\n height: 0;\n}\n\n.texthint {\n position: absolute;\n top: -1px;\n width: 100%;\n color: var(--light-text-color);\n cursor: text;\n}\n\n.passwordwrapper {\n position: relative;\n\n .password {\n border: none;\n background: transparent;\n padding-right: 4rem;\n box-shadow: none;\n }\n\n .password-toggle {\n color: var(--link-color);\n position: absolute;\n top: 0;\n @include right(9px);\n bottom: 0;\n cursor: pointer;\n\n &:hover {\n text-decoration: underline;\n }\n }\n}\n\n.datetimewrapper {\n display: flex;\n flex-direction: row;\n align-items: center;\n\n & > .datewrapper + .timewrapper,\n & > .timewrapper + .timezone,\n & > .select {\n @include margin-left(5px);\n }\n}\n\n.clear-btn {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 24px;\n cursor: pointer;\n color: var(--ui-control-color);\n border: none;\n padding: 0;\n background: transparent;\n\n &:before {\n @include icon;\n content: 'remove';\n }\n\n &:hover {\n color: var(--ui-control-hover-color);\n }\n\n &:active {\n color: var(--ui-control-active-color);\n }\n}\n\n.close-btn {\n position: relative;\n\n &:before,\n &:after {\n position: absolute;\n content: '';\n top: 50%;\n left: 50%;\n height: 15px;\n width: 2px;\n background-color: var(--ui-control-color);\n opacity: var(--icon-opacity);\n }\n\n &:before {\n transform: translate(-50%, -50%) rotate(-45deg);\n }\n\n &:after {\n transform: translate(-50%, -50%) rotate(45deg);\n }\n\n &:hover {\n &:before,\n &:after {\n background-color: var(--ui-control-hover-color);\n }\n }\n\n &:active {\n &:before,\n &:after {\n background-color: var(--ui-control-active-color);\n }\n }\n}\n\n.datewrapper,\n.timewrapper {\n display: inline-block;\n position: relative;\n\n .text {\n position: relative;\n z-index: 1;\n width: 100%;\n\n & + div[data-icon] {\n display: none;\n }\n\n &:placeholder-shown,\n &.empty-value {\n & + div[data-icon] {\n display: block;\n position: absolute;\n top: calc(50% - 12px);\n @include left(14px);\n z-index: 0;\n color: var(--light-text-color);\n\n &,\n &:before {\n user-select: none;\n pointer-events: none;\n z-index: 1;\n }\n }\n }\n }\n}\n\n.datewrapper {\n width: 8em;\n}\n\n.timewrapper {\n width: 7em;\n}\n\n@include placeholder-styles(var(--gray-400));\n\n/* Kill IE's special text features */\n::-ms-reveal,\n::-ms-clear {\n display: none;\n}\n\n/* Asset indexing related */\ntr.indexingSession td {\n height: 34px;\n padding: 1px 10px;\n}\n\ntr.indexingSession td.progress div.progressContainer {\n width: 100%;\n display: flex;\n justify-content: space-between;\n align-items: center;\n}\n\ntr.indexingSession td.progress div.progressContainer .progressbar {\n width: 70%;\n position: relative;\n left: 0;\n height: 12px;\n z-index: 1;\n}\n\ntr.indexingSession td.progress div.progressContainer div.progressInfo {\n width: 20%;\n}\n\n// Selects\n.select:not(.selectize),\n.select:not(.selectize) select {\n @include select-styles;\n}\n\n.select:not(.selectize) {\n @include select-container-styles;\n}\n\n.select:not(.selectize):after {\n @include select-arrow-styles;\n}\n\n.select:not(.selectize) select {\n @include select-input-styles;\n white-space: pre;\n}\n\n.select:not(.selectize).fullwidth select {\n @include select-input-fullwidth-styles;\n}\n\n.select:not(.selectize) select {\n @include focus-styles {\n @include select-input-focused-styles;\n }\n}\n\n.select:not(.selectize).small:after {\n top: 9px;\n}\n\n.select:not(.selectize).small select {\n padding-top: 4px !important;\n padding-bottom: 4px !important;\n font-size: 11px;\n}\n\n/* selectize reset */\n.selectize .selectize-input {\n display: block;\n border-color: inherit;\n box-shadow: none;\n background-color: transparent;\n}\n\n.selectize.select .selectize-input:after {\n display: none;\n}\n\nbody .selectize-dropdown {\n border: none;\n z-index: 100;\n}\n\n/* single select styles */\n.selectize.select {\n @include placeholder-styles(var(--gray-700));\n height: 34px;\n\n &:not(.fullwidth) {\n width: 25em;\n }\n}\n\n.selectize.select .selectize-control {\n @include select-container-styles;\n\n &:after {\n @include select-arrow-styles;\n }\n}\n\n.selectize.select .selectize-input {\n @include select-styles;\n\n &.focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n.selectize.select .selectize-input {\n @include select-input-styles;\n}\n\n.selectize.select .selectize-control,\n.selectize.select .selectize-input {\n width: 100%;\n}\n\n/* multi select styles */\n.selectize.multiselect .selectize-input {\n min-height: 34px;\n padding-bottom: 3px;\n\n &.focus {\n @include input-focused-styles;\n }\n\n & > .item {\n @include token-styles;\n display: inline-flex;\n flex-direction: row;\n padding: 3px 7px !important;\n\n &.active {\n @include active-token-styles;\n }\n\n & > .remove {\n position: static;\n @include margin(-1px, -3px, 0, 3px);\n border-left: none;\n padding: 0;\n font-size: 0;\n color: var(--ui-control-color);\n\n &:hover {\n color: var(--ui-control-hover-color);\n background-color: transparent;\n }\n\n &:before {\n font-size: 14px;\n @include icon;\n content: 'remove';\n }\n }\n }\n}\n\n/* menu styles */\nbody .selectize-dropdown {\n margin-top: 1px;\n}\n\nbody .selectize-dropdown-content {\n @include menu-styles;\n\n .option {\n min-height: 18px;\n }\n}\n\nbody .selectize-dropdown-content > div[data-value='new']:before {\n @include icon;\n content: 'plus';\n margin-right: 5px;\n}\n\nbody .selectize-dropdown-content > div[data-value='new']:after {\n content: '…';\n}\n\nbody .selectize-dropdown [data-selectable],\nbody .selectize-dropdown .optgroup-header {\n @include menu-option-styles;\n}\n\nbody .selectize-dropdown .optgroup-header {\n @include h6-styles;\n margin: 0;\n padding: 4px 0;\n}\n\nbody .selectize-dropdown .active {\n @include menu-option-active-styles;\n\n .light {\n color: inherit !important;\n }\n}\n\n/* datepicker */\n.ui-datepicker {\n position: fixed;\n top: -300px;\n @include margin-left(1px);\n -padding: 10px;\n width: 210px;\n height: 242px;\n z-index: 101 !important;\n}\n\n.ui-datepicker-header {\n padding: 8px 8px 4px;\n}\n\n.ui-datepicker-prev {\n @include floatleft;\n}\n\n.ui-datepicker-next {\n @include floatright;\n}\n\n.ui-datepicker-prev span,\n.ui-datepicker-next span {\n display: none;\n}\n\n.ui-datepicker-prev,\n.ui-datepicker-next {\n width: 20px;\n height: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n\n &:hover:after {\n border-color: var(--link-color);\n }\n}\n\n.ui-datepicker-prev:after {\n @include angle(left);\n}\n\n.ui-datepicker-next:after {\n @include angle(right);\n}\n\n.ui-datepicker-title {\n text-align: center;\n}\n\n.ui-datepicker-calendar th,\n.ui-datepicker-calendar td {\n padding: 2px !important;\n}\n\n.ui-datepicker-calendar th span,\n.ui-datepicker-calendar td a {\n display: block;\n width: toRem(26);\n line-height: 26px;\n text-align: center;\n color: var(--text-color);\n}\n\n.ui-datepicker-calendar th span {\n color: var(--medium-text-color);\n font-weight: normal;\n}\n\n.ui-datepicker-calendar td a {\n border-radius: 2px;\n}\n\n.ui-datepicker-calendar td a:hover {\n background-color: var(--light-sel-color);\n text-decoration: none;\n}\n\n.ui-datepicker-calendar td a.ui-state-active {\n background-color: var(--dark-sel-color);\n color: var(--white);\n @include light-on-dark-text;\n cursor: default;\n}\n\n.ui-datepicker-calendar td.ui-datepicker-today a {\n border-radius: 13px;\n box-shadow: inset 0 0 0 2px var(--light-sel-color);\n}\n\n/* timepicker */\n.ui-timepicker-wrapper {\n z-index: 101;\n}\n\n.ui-timepicker-list {\n @include margin-left(1px);\n overflow-y: auto;\n width: calc(14px + 6em);\n height: 210px;\n z-index: 100;\n}\n\n.ui-timepicker-list li {\n @include padding(2px, 0, 2px, 14px);\n white-space: nowrap;\n cursor: pointer;\n}\n\n.ui-timepicker-list li:hover {\n background-color: var(--light-sel-color);\n}\n\n.ui-timepicker-list li.ui-timepicker-selected {\n background-color: var(--dark-sel-color);\n color: var(--white);\n @include light-on-dark-text;\n cursor: default;\n}\n\n/* slide picker */\n.slide-picker {\n display: flex;\n height: 15px;\n white-space: nowrap;\n\n a {\n border: 1px solid var(--hairline-color);\n @include border-left(none);\n background-image: none;\n width: 7px;\n height: 13px;\n margin-left: 0;\n display: inline-block;\n margin-top: 1px;\n margin-bottom: 1px;\n box-sizing: border-box;\n\n &:first-child {\n width: 8px;\n @include border-left(1px solid var(--gray-400) !important);\n }\n }\n\n &:not(:hover) a.active,\n &:hover a.active-hover {\n border-top-color: var(--gray-400);\n border-bottom-color: var(--gray-400);\n height: 15px;\n margin-top: 0;\n margin-bottom: 0;\n\n &:first-child {\n @include border-left(1px solid var(--gray-400));\n @include border-top-left-radius(var(--small-border-radius));\n @include border-bottom-left-radius(var(--small-border-radius));\n }\n }\n\n &:not(:hover) a.last-active,\n &:hover a.last-active-hover {\n @include border-right(1px solid var(--gray-400));\n @include border-top-right-radius(var(--small-border-radius));\n @include border-bottom-right-radius(var(--small-border-radius));\n }\n\n &:focus {\n a.active {\n background-color: var(--light-sel-color);\n }\n }\n}\n\n/* errors */\nul.errors {\n margin-top: 5px;\n list-style-type: square;\n @include padding-left(20px);\n}\n\nul.errors li {\n color: var(--error-color);\n}\n\n/* message pages */\n.message-container {\n position: absolute;\n z-index: 100;\n top: 0;\n @include left(0);\n width: 100%;\n height: 100%;\n\n &.no-access {\n background-color: transparentize($grey900, 0.5);\n }\n\n .pane {\n top: 50%;\n margin-top: -33px !important;\n margin-left: auto;\n margin-right: auto;\n width: 320px;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n }\n}\n\n/* auto-suggest */\n.autosuggest-container {\n position: relative;\n}\n\n.autosuggest__results-container {\n position: absolute;\n z-index: 2;\n width: 100%;\n border-radius: var(--large-border-radius);\n background-color: var(--white);\n @include shadow;\n box-sizing: border-box;\n padding: 0 14px;\n text-align: left;\n @include sans-serif-font;\n font-size: 1em !important;\n\n .autosuggest__results-before {\n @include h6-styles;\n margin-top: 14px !important;\n }\n\n .autosuggest__results-item {\n @include menu-option-styles;\n overflow: hidden;\n text-overflow: ellipsis;\n\n &:hover,\n &.autosuggest__results-item--highlighted {\n @include menu-option-active-styles;\n cursor: pointer;\n }\n }\n}\n\n/* ----------------------------------------\n/* Matrix\n/* ----------------------------------------*/\n\n.matrix-configurator {\n & > .field {\n max-width: none;\n\n & > .input {\n display: flex;\n align-items: stretch;\n background-color: var(--gray-050);\n box-shadow: none;\n }\n }\n\n .mc-sidebar {\n box-sizing: border-box;\n\n .mc-col-items {\n margin-top: -1px;\n padding-top: 1px;\n }\n\n &.block-types {\n width: 200px;\n @include border-top-left-radius(var(--small-border-radius));\n @include border-bottom-left-radius(var(--small-border-radius));\n\n & > .mc-col-inner-container {\n & > .mc-col-heading {\n @include border-top-left-radius(var(--small-border-radius));\n }\n\n & > .mc-col-items {\n .btn {\n margin: 14px;\n }\n }\n }\n }\n\n &.mc-fields {\n width: 240px;\n z-index: 1;\n background: #fff;\n box-shadow: -1px 0 0 0 transparentize($grey900, 0.9),\n 1px 0 0 0 transparentize($grey900, 0.9);\n\n .mc-col-items {\n padding: 14px;\n\n .btn {\n margin-top: 14px;\n }\n }\n }\n }\n\n .mc-sidebar,\n .mc-field-settings {\n & > .mc-col-inner-container > .mc-col-heading {\n margin: 0;\n padding: 7px 14px 6px;\n border-bottom: 1px solid var(--hairline-color);\n background-color: var(--gray-050);\n background-image: linear-gradient(\n transparentize($grey800, 1),\n transparentize($grey800, 0.95)\n );\n }\n }\n\n .mc-field-settings {\n flex: 1;\n position: relative;\n @include border-top-right-radius(var(--small-border-radius));\n @include border-bottom-right-radius(var(--small-border-radius));\n\n & > .mc-col-inner-container {\n & > .mc-col-heading {\n padding-left: 24px;\n padding-right: 24px;\n @include border-top-right-radius(var(--small-border-radius));\n }\n\n & > .mc-col-items {\n padding: 24px;\n }\n }\n }\n}\n\n.matrixconfigitem {\n position: relative;\n display: flex;\n align-items: center;\n user-select: none;\n cursor: default;\n min-height: 48px;\n box-sizing: border-box;\n\n &.mci-blocktype {\n margin-top: -1px;\n padding: 8px 14px;\n border: solid var(--hairline-color);\n border-width: 1px 0;\n background-color: var(--gray-100);\n\n &.sel {\n z-index: 1;\n background-color: var(--gray-200);\n }\n }\n\n &.mci-field {\n border-radius: var(--medium-border-radius);\n padding: 7px 10px;\n background-color: var(--gray-100);\n\n &.sel {\n background-color: var(--gray-200);\n\n .slide-picker:focus a.active {\n background-color: darken($lightTextColor, 0.5%);\n }\n }\n\n & + .mci-field {\n margin-top: 7px;\n }\n }\n\n .mci-name {\n flex: 1;\n overflow: hidden;\n\n h4,\n .smalltext {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n h4 {\n margin-bottom: 2px;\n font-weight: normal;\n color: var(--text-color);\n\n &.mci-required:after {\n @include icon;\n @include margin(-2px, 0, 0, 4px);\n content: 'asterisk';\n font-size: 8px;\n }\n }\n }\n\n &.error .mci-name h4 {\n color: var(--error-color);\n }\n\n .slide-picker,\n .icon {\n @include margin-left(7px);\n }\n\n .icon {\n display: block;\n\n &:not(.error) {\n &:before {\n color: var(--ui-control-color);\n }\n\n &:hover:before {\n color: var(--ui-control-hover-color);\n }\n\n &:active:before {\n color: var(--ui-control-active-color);\n }\n }\n\n &.error:before {\n color: var(--error-color);\n }\n }\n}\n\n/* Matrix fields */\n.matrix {\n & > .buttons {\n margin-top: 10px;\n }\n}\n\n$titlebarBorderRadius: calc(var(--large-border-radius) - 1px);\n\n.matrixblock {\n position: relative;\n margin-bottom: 10px;\n padding: 0 var(--m) var(--m);\n border-radius: var(--large-border-radius);\n border: 1px solid var(--hairline-color);\n background-color: var(--gray-050);\n\n &.static {\n padding-top: 14px;\n }\n\n .flex-fields {\n --row-gap: var(--m) !important;\n }\n\n & > .titlebar {\n margin: 0 -14px;\n width: calc(100% + 28px);\n box-sizing: border-box;\n border-radius: $titlebarBorderRadius $titlebarBorderRadius 0 0;\n @include padding(5px, 70px, 5px, 35px);\n color: var(--light-text-color);\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n word-wrap: normal;\n cursor: default;\n user-select: none;\n position: relative;\n background-color: darken($grey050, 2%);\n\n &:after {\n display: block;\n content: '';\n position: absolute;\n bottom: -1px;\n left: 14px;\n width: calc(100% - 28px);\n height: 1px;\n background-color: var(--hairline-color);\n }\n\n & > .blocktype {\n display: inline;\n color: var(--medium-text-color);\n }\n\n & > .preview {\n @include margin-left(7px);\n display: inline;\n opacity: 0;\n transition: opacity linear 100ms;\n\n span {\n opacity: 0.5;\n }\n }\n }\n\n &.disabled {\n opacity: 1;\n\n & > .titlebar {\n @include padding-right(90px);\n }\n\n & > .actions {\n & > .status {\n &.off {\n display: block;\n }\n }\n }\n }\n\n &.collapsed {\n & > .titlebar {\n border-radius: var(--titlebar-border-radius);\n border-bottom: none;\n\n & > .preview {\n opacity: 1;\n }\n }\n }\n\n & > .checkbox {\n position: absolute;\n top: 7px;\n @include left(14px);\n }\n\n & > .actions {\n display: flex;\n align-items: center;\n position: absolute;\n top: 5px;\n @include right(14px);\n cursor: default;\n\n & > * {\n @include margin(0, 0, 0, 5px);\n }\n\n & .settings {\n padding: 0 8px;\n height: 20px;\n color: var(--ui-control-color);\n\n &:before {\n @include margin-right(0 !important);\n }\n\n &:not(:hover):not(:active) {\n background-color: transparent;\n }\n }\n\n & > .move {\n margin-top: -3px !important;\n }\n\n & > .status {\n &.off {\n display: none;\n }\n }\n\n a:not([data-action]) {\n padding: 0;\n height: 20px;\n text-align: center;\n color: var(--dark-hairline-color);\n transform: color linear 100ms;\n\n &.settings:after {\n @include margin-left(3px);\n border-color: var(--dark-hairline-color);\n transform: border-color linear 100ms;\n }\n\n &:hover {\n color: var(--link-color);\n\n &.settings:after {\n border-color: var(--link-color);\n }\n }\n }\n }\n\n &:not(.static) {\n & > .fields {\n padding-top: 14px;\n }\n }\n\n & > .fields > .flex-fields > .field {\n &:before {\n display: none;\n }\n }\n\n & > .buttons {\n margin-top: 0;\n height: 30px;\n }\n}\n\n/* categories */\n.add-category-form {\n margin-top: 24px;\n}\n\n.add-category-form .texticon {\n width: 200px;\n @include floatleft;\n @include margin-right(5px);\n}\n\n.add-category-form .texticon .text {\n @include padding-right(30px);\n}\n\n.add-category-form .texticon .spinner {\n position: absolute;\n top: 0;\n @include right(5px);\n}\n\n.categoriesfield {\n position: relative;\n min-height: 30px;\n}\n\n.categoriesfield .structure ul {\n @include margin-left(12px);\n}\n\n/* site pickers */\nbody.sitepicker {\n #main-content {\n padding: 30px;\n justify-content: center;\n align-items: center;\n text-align: center;\n }\n\n #content-container {\n max-width: 400px;\n }\n}\n\n.sitepicker-group {\n li {\n &:not(:first-child) {\n a {\n margin-top: -1px;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n\n &:not(:hover) {\n border-top-color: transparent;\n }\n }\n }\n\n &:not(:last-child) {\n a {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n }\n }\n\n a {\n display: block;\n position: relative;\n text-align: left;\n width: 100%;\n box-sizing: border-box;\n border: 1px solid var(--hairline-color);\n border-radius: var(--medium-border-radius);\n @include padding(9px, 42px, 9px, 15px);\n font-size: 16px;\n line-height: 1.4;\n\n &:after {\n font-size: 14px;\n position: absolute;\n top: calc(50% - 7px);\n @include right(12px);\n margin: 0;\n padding: 0;\n }\n\n &:hover {\n border-color: var(--link-color);\n text-decoration: none;\n z-index: 1;\n }\n }\n }\n}\n\n/* ----------------------------------------\n/* IE hacks\n/* ----------------------------------------*/\n\n/* Fix layout of modal element selectors for IE8 */\n.elementselectormodal .body .main {\n float: left \\9;\n width: 445px \\9;\n}\n\n/* ----------------------------------------\n/* Retina graphics\n/* ----------------------------------------*/\n\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5),\n only screen and (-moz-min-device-pixel-ratio: 1.5),\n only screen and (-o-min-device-pixel-ratio: 3/2),\n only screen and (min-device-pixel-ratio: 1.5),\n only screen and (min-resolution: 1.5dppx) {\n .structure ul li {\n background-size: 40px;\n body.ltr & {\n background-image: url(../images/branch_2x.png);\n }\n body.rtl & {\n background-image: url(../images/branch_rtl_2x.png);\n }\n }\n\n .hud .tip-left {\n background-image: url(../images/hudtip_left_2x.png);\n background-size: 15px 30px;\n }\n .hud .tip-top {\n background-image: url(../images/hudtip_top_2x.png);\n background-size: 30px 15px;\n }\n .hud .tip-right {\n background-image: url(../images/hudtip_right_2x.png);\n background-size: 15px 30px;\n }\n .hud .tip-bottom {\n background-image: url(../images/hudtip_bottom_2x.png);\n background-size: 30px 15px;\n }\n .hud.has-footer .tip-bottom {\n background-image: url(../images/hudtip_bottom_gray_2x.png);\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n:root {\n --xs: 4px;\n --s: 8px;\n --m: 14px;\n --l: 18px;\n --xl: 24px;\n --padding: var(--xl);\n --neg-padding: calc(var(--padding) * -1);\n}\n\n$sidebarWidth: 226px;\n$sidebarZIndex: 100;\n$detailsWidth: 350px;\n$minFullUiWidth: 1200px;\n$minXlUiWidth: 1536px;\n$minDesktopWidth: 600px;\n$minHorizontalUiWidth: $minFullUiWidth - $sidebarWidth;\n\n// Colors\n$badgeBackgroundColor: var(--gray-200);\n$badgeColor: var(--gray-800);\n\nhtml {\n -webkit-text-size-adjust: 100%;\n min-height: 100vh;\n}\n\nbody {\n min-height: 100vh;\n\n &.increase-contrast {\n --input-border-color: var(--gray-400);\n }\n\n :focus {\n outline-style: solid;\n outline-color: transparent;\n box-shadow: var(--focus-ring);\n }\n}\n\n.reduce-focus-visibility {\n :focus:not(:focus-visible) {\n box-shadow: none;\n }\n\n :focus-visible {\n box-shadow: var(--focus-ring);\n }\n}\n\n.skip-link {\n position: absolute;\n margin: 5px;\n left: -10000px;\n top: 0;\n width: 1px;\n height: 1px;\n overflow: hidden;\n z-index: $sidebarZIndex + 1;\n\n &:focus {\n left: unset;\n @include left(0);\n width: auto;\n height: auto;\n background-color: var(--gray-100) !important;\n }\n}\n\n#global-skip-link {\n @media only screen and (min-width: $minFullUiWidth) {\n @include two-color-focus-ring;\n }\n}\n\n#global-container {\n position: relative;\n display: flex;\n flex-direction: column;\n min-height: 100vh;\n @include left(0);\n\n @media screen and (prefers-reduced-motion: no-preference) {\n body.ltr & {\n transition: left 250ms ease-out;\n }\n\n body.rtl & {\n transition: right 250ms ease-out;\n }\n }\n}\n\n/* global sidebar */\n$sidebarLinkStaticColor: var(--gray-100);\n$sidebarLinkSecondaryColor: var(--gray-200);\n\n#global-sidebar {\n --is-always-visible: true;\n position: fixed;\n z-index: $sidebarZIndex;\n display: flex;\n flex-direction: column;\n height: 100vh;\n padding: 0;\n overflow-y: auto;\n overflow-x: hidden;\n -webkit-overflow-scrolling: touch;\n @include light-on-dark-text;\n @include light-focus-ring;\n background-color: var(--gray-800);\n\n a {\n color: $sidebarLinkStaticColor;\n text-decoration: none;\n }\n\n & > a,\n *:not(.has-subnav) > a {\n &[href] {\n &:not(.sel):hover {\n background-color: darken($grey800, 5%);\n }\n }\n\n &:not([href]) {\n cursor: default;\n background-color: transparent;\n }\n }\n\n .light {\n color: var(--gray-400);\n }\n\n @media only screen and (max-width: $minFullUiWidth - 1px) {\n --is-always-visible: false;\n }\n}\n\n$systemInfoBgColor: darken($grey800, 5%);\n$systemInfoHoverBgColor: darken($grey800, 10%);\n\n#system-info {\n display: grid;\n grid-template-columns: 30px auto;\n grid-gap: 10px;\n height: 50px;\n padding: 0 10px;\n position: relative;\n flex: 0 0 50px;\n flex-direction: row;\n align-items: center;\n background-color: $systemInfoBgColor;\n\n &:after {\n display: none;\n }\n\n &:focus,\n &:hover {\n background-color: $systemInfoHoverBgColor !important;\n }\n}\n\n#site-icon {\n height: 30px;\n\n img,\n svg {\n display: block;\n width: 30px;\n height: 30px;\n border-radius: 4px;\n }\n\n svg {\n @include svg-mask(var(--medium-text-color));\n }\n}\n\n#system-name {\n h2,\n .h2 {\n margin: 0;\n width: 100%;\n overflow: hidden;\n max-height: 40px;\n position: relative;\n\n // Multi-line text overflow ellipsis\n // (https://developer.mozilla.org/en-US/docs/Web/CSS/-webkit-line-clamp)\n display: -webkit-box;\n -webkit-box-orient: vertical;\n -webkit-line-clamp: 2;\n\n &:after {\n display: block;\n content: '';\n font-size: 0;\n position: absolute;\n top: 0;\n @include right(0);\n width: var(--m);\n background-image: linear-gradient(\n to right,\n transparentize($systemInfoBgColor, 1),\n $systemInfoBgColor\n );\n\n #system-info:hover & {\n background-image: linear-gradient(\n to right,\n transparentize($systemInfoHoverBgColor, 1),\n $systemInfoHoverBgColor\n );\n }\n }\n }\n}\n\n#job-icon {\n align-items: flex-start;\n\n & > span.icon {\n display: block;\n position: relative;\n width: 16px;\n height: 16px;\n margin-top: 2px !important;\n\n & > canvas {\n display: block;\n position: absolute;\n width: 16px;\n height: 16px;\n\n &#job-icon-hover {\n opacity: 0;\n }\n }\n }\n\n &[href]:hover {\n .icon > span.icon > canvas#job-icon-hover {\n opacity: 1;\n }\n }\n\n .progress-label {\n display: block;\n color: var(--gray-300);\n font-size: 11px;\n line-height: 1.5;\n }\n}\n\n#nav {\n flex: 1;\n margin: 22px 0 0;\n padding-bottom: var(--xl);\n overflow: visible;\n\n li {\n &:not(.has-subnav) > a.sel {\n color: var(--gray-800);\n background-color: var(--gray-100);\n opacity: 1;\n\n .icon {\n opacity: 1;\n }\n }\n\n a {\n position: relative;\n padding-left: var(--m);\n padding-right: var(--m);\n\n &:focus {\n z-index: 1;\n }\n\n &.menubtn {\n line-height: 26px;\n }\n\n &.external:after {\n @include margin-left(5px);\n @include icon;\n content: 'external';\n }\n\n .label {\n &,\n & span {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n }\n\n .badge {\n @include margin-right(0);\n background-color: $badgeBackgroundColor;\n color: $badgeColor;\n }\n }\n\n ul {\n display: block;\n margin-bottom: 10px;\n\n li a {\n @include padding(3px, var(--m), 3px, 42px, !important);\n font-size: 12px;\n\n &:not(.active) {\n color: $sidebarLinkSecondaryColor;\n }\n }\n }\n }\n}\n\n#global-footer {\n display: flex;\n flex-direction: column;\n align-items: center;\n padding: var(--m) var(--m) var(--xl);\n}\n\n#app-info {\n margin-top: var(--xs);\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 12px;\n color: var(--gray-600);\n text-align: center;\n gap: var(--s);\n\n a {\n color: var(--gray-600);\n text-decoration: underline;\n\n &.go:hover:after {\n color: var(--gray-600);\n }\n }\n}\n\n#edition-logo {\n user-select: none;\n border: 1px solid var(--gray-600);\n border-radius: 3px;\n display: inline-flex;\n height: toRem(20);\n box-sizing: content-box;\n font-size: 11px;\n\n & > .edition-name,\n & > .edition-trial {\n padding: toRem(6, 7, 5);\n line-height: var(--s);\n }\n\n & > .edition-name {\n font-weight: 600;\n letter-spacing: 1.7px;\n padding-right: toRem(5);\n text-transform: uppercase;\n }\n\n & > .edition-trial {\n display: inline-block;\n position: relative;\n @include margin-left(5px);\n @include padding-left(5px);\n background-color: var(--gray-600);\n color: var(--gray-200);\n border-radius: 0 1px 1px 0;\n letter-spacing: 1px;\n @include padding-right(7px);\n text-transform: lowercase;\n\n &:before {\n display: block;\n position: absolute;\n top: 0;\n content: '';\n font-size: 0;\n width: 0;\n height: 0;\n border-style: solid;\n\n body.ltr & {\n left: -10px;\n border-width: 0 10px 20px 0;\n border-color: transparent var(--gray-600) transparent transparent;\n }\n\n body.rtl & {\n right: -10px;\n border-width: 0 0 20px 10px;\n border-color: transparent transparent transparent var(--gray-600);\n }\n }\n }\n}\n\n#devmode {\n flex: 0 0 4px;\n width: 100%;\n min-height: 4px; // fixes Windows scaling bug (https://github.com/craftcms/cms/issues/3259)\n background: url(../images/dev-mode.svg) repeat-x 21px 0;\n cursor: help;\n}\n\n#page-container {\n @include padding-left($sidebarWidth);\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n}\n\n#alerts {\n position: relative; // to keep it above #global-header's shadow\n background-color: var(--red-050);\n border-left: 5px solid var(--error-color);\n padding: 11px 0;\n text-align: center;\n color: var(--error-color);\n\n li {\n padding: 4px var(--xl);\n\n a {\n color: var(--error-color);\n text-decoration: underline;\n\n &.go {\n text-decoration: none;\n white-space: nowrap;\n border: 1px solid transparentize($errorColor, 0.5);\n border-radius: var(--medium-border-radius);\n padding: 3px 5px;\n margin: 0 2px;\n\n &:after {\n color: var(--error-color);\n }\n\n &:hover {\n border-color: var(--error-color);\n }\n }\n }\n }\n}\n\n#global-header {\n width: 100%;\n margin-bottom: var(--m);\n @include pane;\n background: var(--gray-050);\n\n .flex {\n align-items: center;\n }\n\n .btn {\n --ui-control-color: var(--gray-400);\n --ui-control-hover-color: var(--gray-500);\n --ui-control-active-color: var(--gray-600);\n }\n}\n\n.nav-toggle {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 36px;\n height: 50px;\n line-height: 26px;\n color: currentColor;\n text-align: center;\n @include margin-left(-10px);\n\n &:before {\n @include icon;\n content: 'menu';\n font-size: 16px;\n line-height: 0;\n }\n\n &:hover {\n color: var(--gray-400);\n }\n}\n\n#crumbs {\n display: flex;\n flex-direction: row;\n align-items: center;\n font-size: 13px;\n margin: 0 !important;\n\n &.empty {\n display: none;\n }\n\n a,\n button {\n color: var(--light-text-color);\n transition: color linear 100ms;\n\n &:hover {\n color: var(--link-color);\n text-decoration: none;\n }\n }\n\n nav {\n margin: 0;\n }\n}\n\n.breadcrumb-list {\n display: flex;\n flex-direction: row;\n align-items: stretch;\n flex-wrap: wrap;\n\n li {\n display: inline-flex;\n align-items: center;\n\n a,\n button {\n padding: 15px 0;\n }\n\n button {\n cursor: pointer;\n }\n\n &:after {\n @include margin(0, 8px, 0, 7px);\n @include angle(right, var(--medium-hairline-color));\n }\n }\n\n & .menu--disclosure {\n li {\n display: block;\n\n &::after {\n content: none;\n }\n }\n }\n}\n\nli.breadcrumb-toggle-wrapper {\n &::after {\n content: none;\n }\n}\n\n#account-menu {\n ul {\n li {\n a {\n max-width: calc(100% + 28px) !important;\n }\n }\n }\n}\n\n#announcements-btn {\n @include header-btn;\n width: 40px;\n position: relative;\n\n &.unread:after {\n content: '';\n display: block;\n position: absolute;\n top: 3px;\n @include right(7px);\n width: 7px;\n height: 7px;\n border-radius: 4px;\n background-color: var(--blue-600);\n }\n\n svg {\n width: 22px;\n height: 22px;\n @include svg-mask(var(--ui-control-color));\n }\n\n &:hover,\n &:active,\n &.active {\n svg {\n @include svg-mask(var(--ui-control-active-color));\n }\n }\n}\n\n#announcements {\n max-width: 350px;\n\n .announcement {\n &:not(:first-child) {\n margin-top: 20px;\n }\n\n .announcement-label-container {\n margin-top: -3px;\n display: flex;\n align-items: center;\n margin-bottom: 3px;\n\n .announcement-icon svg {\n display: block;\n width: 15px;\n height: 15px;\n }\n\n .announcement-label {\n margin-left: 5px;\n font-size: 12px;\n color: var(--light-text-color);\n }\n }\n\n &.unread .announcement__heading:after {\n content: '';\n display: block;\n position: absolute;\n top: 7px;\n @include left(-13px);\n width: 7px;\n height: 7px;\n border-radius: 4px;\n background-color: var(--blue-600);\n }\n\n p {\n margin: 0;\n }\n }\n\n .announcement__header {\n display: grid;\n }\n\n .announcement__heading {\n position: relative;\n margin: 0 0 3px;\n order: 1;\n }\n}\n\n#user-info {\n display: flex;\n flex-direction: row;\n align-items: center;\n @include padding-right(25px);\n padding-top: 5px;\n padding-bottom: 5px;\n height: 100%;\n background-color: transparent;\n border-radius: 0;\n\n &:after {\n border-color: var(--ui-control-color);\n transition: border-color linear 100ms;\n }\n\n &:hover:after {\n border-color: var(--ui-control-hover-color);\n }\n\n &[aria-expanded='true']:after {\n border-color: var(--ui-control-active-color);\n }\n}\n\n.header-photo {\n padding: 5px 0;\n\n img {\n display: block;\n width: 30px;\n height: 30px;\n max-width: none;\n border-radius: 50%;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.95),\n 0 0 0 transparentize($grey900, 1);\n transition: box-shadow linear 150ms;\n\n #user-info:hover & {\n box-shadow: 0 0 0 1px transparentize($grey900, 0.95),\n 0 2px 10px -2px transparentize($grey900, 0.7);\n }\n }\n}\n\n/* main container */\n\n#main-container {\n position: relative;\n flex-grow: 1;\n}\n\n#notifications {\n position: fixed;\n bottom: 8px;\n @include left(8px);\n width: calc(100% - 16px);\n z-index: 101;\n\n @media only screen and (min-width: $minHorizontalUiWidth) {\n width: 350px;\n }\n\n .notification {\n display: flex;\n position: relative;\n @include pane;\n padding: 10px 14px;\n border-radius: var(--large-border-radius);\n box-shadow: 0 0 0 1px transparentize($grey1000, 0.85),\n 0 2px 12px transparentize($grey1000, 0.85);\n --color: var(--notice-color);\n\n &[data-type='success'] {\n --color: var(--success-color);\n }\n\n &[data-type='error'] {\n --color: var(--error-color);\n }\n\n & + .notification {\n margin-top: 12px;\n }\n\n .notification-icon {\n width: 18px;\n margin-top: -2px;\n @include margin-right(10px);\n font-size: 18px;\n color: var(--color);\n }\n\n .notification-body {\n display: flex;\n flex: 1;\n\n .notification-message {\n font-weight: bold;\n }\n\n .notification-details {\n margin-top: var(--xs);\n\n .element {\n border: 1px solid $hairlineColor;\n }\n }\n }\n\n .notification-close-btn {\n position: relative;\n top: -2px;\n @include margin-left(10px);\n }\n }\n}\n\n#header-container {\n margin-bottom: var(--m);\n}\n\n#crumbs,\n#header {\n padding-left: var(--xl);\n padding-right: var(--xl);\n}\n\n#primary-nav-toggle {\n @media only screen and (min-width: $minFullUiWidth) {\n display: none;\n }\n}\n\n#global-header,\n#header {\n .flex {\n max-width: 100%;\n\n &.flex-nowrap {\n min-width: 0;\n }\n }\n}\n\n#header {\n display: flex;\n align-items: flex-start;\n align-content: stretch;\n flex-wrap: nowrap;\n justify-content: space-between;\n gap: var(--s);\n padding-top: var(--s);\n padding-bottom: var(--s);\n position: relative;\n z-index: 2;\n width: calc(100vw - #{$sidebarWidth});\n box-sizing: border-box;\n background-color: transparentize($grey300, 1);\n box-shadow: 0 1px 0 transparentize($grey800, 1);\n transition: background-color linear 100ms, box-shadow linear 100ms;\n\n body.fixed-header & {\n position: fixed;\n z-index: 12;\n top: 0;\n background-color: var(--gray-100);\n box-shadow: inset 0 -1px 0 transparentize($grey700, 0.9);\n }\n\n @supports (backdrop-filter: blur(10px)) {\n & {\n transition: background-color linear 100ms, box-shadow linear 100ms,\n backdrop-filter linear 100ms;\n\n body.fixed-header & {\n background-color: transparentize($grey100, 0.25);\n backdrop-filter: blur(10px);\n }\n }\n }\n\n h1 {\n line-height: 34px;\n margin-top: 0;\n margin-bottom: 0;\n min-width: 0;\n }\n\n .buttons,\n .btngroup {\n margin-top: 0;\n }\n}\n\n#page-title {\n &.has-toolbar {\n @media only screen and (min-width: $minHorizontalUiWidth) {\n min-width: calc(#{$sidebarWidth} - var(--xl) - var(--s)) !important;\n }\n }\n}\n\n#toolbar {\n flex: 1;\n align-items: flex-start;\n justify-content: space-between;\n\n .icon:before,\n .texticon:before,\n .menubtn:after,\n [data-icon]:before,\n [data-icon-after]:after {\n color: currentColor;\n opacity: 0.8;\n }\n\n .text {\n border-radius: var(--large-border-radius);\n\n &::-webkit-input-placeholder {\n color: var(--light-text-color);\n }\n\n &:-ms-input-placeholder {\n color: var(--light-text-color);\n }\n\n &::-ms-input-placeholder {\n color: var(--light-text-color);\n }\n\n &:-moz-placeholder {\n color: var(--light-text-color);\n }\n\n &::-moz-placeholder {\n color: var(--light-text-color);\n }\n\n &::placeholder {\n color: var(--light-text-color);\n }\n\n &:not(:focus) {\n background-clip: border-box;\n }\n }\n}\n\n#action-buttons {\n @media only screen and (max-width: 400px) {\n .btngroup .btn:first-child {\n flex-basis: 100%;\n }\n }\n\n @media only screen and (max-width: $minHorizontalUiWidth - 1px) {\n margin-top: 10px;\n }\n}\n\n#main-content {\n display: flex;\n flex-direction: row;\n align-items: flex-start;\n width: calc(100vw - #{$sidebarWidth});\n padding: 0 var(--xl) 48px;\n box-sizing: border-box;\n\n // for the Dashboard and any other full-page grids:\n & > .grid:only-child {\n flex: 1;\n }\n}\n\n#sidebar-toggle-container {\n display: none;\n}\n\n#sidebar-container {\n flex: 0 0 $sidebarWidth;\n width: $sidebarWidth;\n box-sizing: border-box;\n\n @media only screen and (min-width: $minFullUiWidth) {\n @include margin-left(calc(var(--xl) * -1));\n }\n}\n\n#sidebar {\n box-sizing: border-box;\n padding: 0 31px;\n width: $sidebarWidth;\n background-color: transparent;\n\n &.fixed {\n position: fixed;\n overflow-y: auto;\n padding-top: var(--m);\n padding-bottom: var(--m);\n }\n\n nav {\n margin-left: -31px;\n margin-right: -31px;\n\n li {\n a {\n position: relative;\n\n &:focus {\n z-index: 1;\n }\n\n &:not(.sel) {\n &:hover {\n background-color: var(--gray-200);\n }\n }\n }\n }\n }\n}\n\n#content-container {\n flex: 1;\n\n #main-content:not(.has-sidebar):not(.has-details) & {\n width: 100%;\n max-width: 100%;\n }\n\n #main-content.has-sidebar & {\n width: calc(100% - #{$sidebarWidth - 24});\n max-width: calc(100% - #{$sidebarWidth - 24});\n }\n\n #main-content.has-details & {\n width: calc(100% - #{$detailsWidth} - var(--m));\n max-width: calc(100% - #{$detailsWidth} - var(--m));\n }\n\n #main-content.has-sidebar.has-details {\n width: calc(100% - #{$sidebarWidth} - #{$detailsWidth} - 38px);\n max-width: calc(100% - #{$sidebarWidth} - #{$detailsWidth} - 38px);\n }\n}\n\n#content-heading {\n margin-top: var(--xl) !important;\n\n @media only screen and (min-width: $minHorizontalUiWidth) {\n @include visually-hidden;\n }\n}\n\n.content-pane {\n @include pane;\n border-radius: var(--large-border-radius);\n position: relative;\n background-clip: padding-box;\n padding: var(--xl);\n word-wrap: break-word;\n\n & > hr {\n margin-left: calc(var(--xl) * -1);\n margin-right: calc(var(--xl) * -1);\n }\n}\n\n#footer {\n position: sticky;\n bottom: 0;\n z-index: 1;\n margin: 25px calc(var(--xl) * -1) calc(var(--xl) * -1); // 1px extra on top is intentional\n padding: var(--s) var(--xl);\n background-color: var(--gray-050);\n border-radius: 0 0 var(--large-border-radius) var(--large-border-radius);\n box-sizing: border-box;\n min-height: 50px;\n\n &:empty {\n display: none;\n }\n\n &.stuck {\n border-radius: 0;\n\n @supports (backdrop-filter: blur(10px)) {\n & {\n background-color: transparentize($grey100, 0.25);\n backdrop-filter: blur(10px);\n }\n }\n }\n\n .has-debug-toolbar & {\n transition: padding linear 100ms;\n\n &.stuck {\n padding-bottom: 52px;\n }\n }\n\n & > *,\n .flex > * {\n margin-bottom: 0;\n }\n}\n\n#details-container {\n flex: 0 0 #{$detailsWidth + 38};\n width: $detailsWidth + 38;\n @include margin-right(calc(var(--xl) * -1));\n box-sizing: border-box;\n}\n\n#details {\n box-sizing: border-box;\n @include padding-right(var(--xl));\n @include padding-left(var(--m));\n width: $detailsWidth + 38;\n\n &.fixed {\n position: fixed;\n overflow-y: auto;\n padding-top: var(--m);\n }\n\n .details {\n .meta {\n border-radius: var(--large-border-radius);\n\n &.read-only {\n color: var(--medium-text-color);\n background-color: transparent !important;\n }\n\n & > .field,\n & > .data {\n &:first-child {\n &,\n & > .status-badge {\n border-top-left-radius: var(--large-border-radius);\n }\n\n border-top-right-radius: var(--large-border-radius);\n }\n\n &:last-child {\n &,\n & > .status-badge {\n border-bottom-left-radius: var(--large-border-radius);\n }\n\n border-bottom-right-radius: var(--large-border-radius);\n }\n }\n }\n\n .notes {\n border-radius: var(--large-border-radius);\n padding-top: var(--m);\n padding-bottom: var(--m);\n }\n }\n}\n\n// Hide the sidebar at < 1200\n@media only screen and (max-width: $minFullUiWidth - 1px) {\n #global-container {\n @include left(-$sidebarWidth);\n width: calc(100vw + #{$sidebarWidth});\n\n body.ltr.showing-nav & {\n left: 0;\n }\n\n body.rtl.showing-nav & {\n right: 0;\n }\n }\n\n #crumbs {\n display: flex !important;\n }\n\n #header {\n width: 100vw;\n }\n\n #main-content {\n width: 100vw;\n }\n}\n\n// Rearrange #main-content to flow vertically at < 999\n@media only screen and (max-width: $minHorizontalUiWidth - 1px) {\n #header {\n display: block;\n\n .flex:not(#toolbar) {\n margin-top: 10px;\n }\n }\n\n #toolbar {\n flex-wrap: wrap !important;\n\n & > * {\n margin-top: 10px !important;\n }\n }\n\n body.fixed-header #header .flex:first-child {\n margin-top: 0;\n }\n\n #main-content {\n display: block;\n }\n\n #sidebar-toggle-container {\n display: block;\n margin-bottom: var(--m);\n }\n\n #sidebar-toggle {\n &:after {\n top: 0;\n transform: rotate(-45deg);\n\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n\n body.showing-sidebar & {\n background-color: darken($grey200, 10%) !important;\n\n &:after {\n transform: rotate(45deg);\n }\n }\n }\n\n #content-container {\n min-height: 0 !important;\n }\n\n #sidebar-container,\n #details-container {\n width: auto !important;\n }\n\n #sidebar,\n #details {\n position: static !important;\n overflow-y: visible !important;\n max-height: none !important;\n width: auto;\n }\n\n #sidebar {\n margin-bottom: var(--m);\n\n body:not(.showing-sidebar) & {\n display: none;\n }\n }\n\n #details-container {\n @include margin-right(0);\n }\n\n #content-container {\n width: auto !important;\n max-width: none !important;\n }\n\n #details {\n padding: 0 !important;\n margin-top: var(--m);\n }\n}\n\n// Tighten up the padding at < 768\n@media only screen and (max-width: 767px) {\n #crumbs,\n #header,\n #main-content {\n padding-left: 10px !important;\n padding-right: 10px !important;\n }\n\n #tabs ul li {\n a {\n padding-left: var(--m);\n padding-right: var(--m);\n }\n\n & + li {\n @include margin-left(-7px);\n }\n }\n}\n\n@media print {\n}\n\n#settingsmenu ul li a {\n @include padding-left(46px);\n\n &:before {\n @include margin(1px, 0, 0, -22px);\n font-size: 15px;\n }\n\n img {\n width: 16px;\n height: 16px;\n position: absolute;\n margin-left: -23px;\n margin-top: 1px;\n }\n}\n\n/* grids */\n.grid {\n position: relative;\n min-height: 1px; // Required for Grid.js to run\n\n &:after {\n @include clearafter;\n }\n\n & > .item {\n display: none;\n box-sizing: border-box;\n }\n}\n\n/* Sidebar */\n.sidebar {\n width: $sidebarWidth;\n box-sizing: border-box;\n font-size: 13px;\n\n &:not(.drag-helper) {\n padding: var(--m) 0;\n background-color: var(--gray-050);\n }\n\n .heading {\n position: relative;\n margin: 0 var(--xl);\n\n &:not(:first-child) {\n margin-top: var(--m);\n }\n\n & > span {\n display: inline-block;\n position: relative;\n z-index: 1;\n padding: 0 5px;\n margin: 0 -5px;\n text-transform: uppercase;\n color: var(--medium-text-color);\n font-size: 11px;\n font-weight: bold;\n }\n\n & > ul {\n margin: 2px calc(var(--xl) * -1);\n }\n }\n\n @mixin nav-level($level) {\n & > a {\n @include padding-left(24px + 14 * $level);\n }\n\n & > .toggle {\n @include left(calc(var(--m) * #{$level}));\n }\n }\n\n nav {\n padding: 0 var(--s);\n\n & > ul {\n & > li:not(.heading),\n & > li.heading > ul > li {\n @include nav-level(0);\n\n & > ul.nested > li {\n @include nav-level(1);\n\n & > ul.nested > li {\n @include nav-level(2);\n\n & > ul.nested > li {\n @include nav-level(3);\n\n & > ul.nested > li {\n @include nav-level(4);\n }\n }\n }\n }\n }\n }\n\n li {\n position: relative;\n\n &:not(.has-subnav) > a {\n &:not(.sel):hover {\n text-decoration: none;\n background-color: var(--gray-100);\n }\n\n &.sel {\n cursor: default;\n background-color: var(--gray-500);\n @include light-on-dark-text;\n\n &,\n & + .toggle {\n color: var(--white);\n }\n }\n }\n\n a {\n position: relative;\n margin-bottom: 1px;\n display: flex;\n flex-direction: row;\n align-items: center;\n padding: 7px var(--xl);\n min-height: var(--xl);\n box-sizing: border-box;\n color: var(--text-color);\n user-select: none;\n border-radius: var(--large-border-radius);\n word-break: break-word;\n\n .status {\n flex-shrink: 1;\n }\n\n .icon {\n @include margin-right(10px);\n flex-shrink: 1;\n width: toRem(18);\n height: toRem(18);\n word-break: normal;\n transition: margin-left linear 150ms, margin-right linear 150ms;\n opacity: 0.85;\n\n &.icon-mask {\n svg {\n @include svg-mask(currentColor);\n }\n\n span[data-icon] {\n color: currentColor;\n }\n }\n\n svg {\n width: 16px;\n height: 16px;\n }\n\n span[data-icon] {\n font-size: 16px;\n\n &::before {\n display: block;\n }\n }\n }\n\n .label {\n flex: 1;\n }\n\n .badge {\n @include margin(0, -4px, 0, 10px);\n flex-shrink: 1;\n padding: 0 6px;\n font-size: 11px;\n line-height: 16px;\n border-radius: var(--s);\n background-color: var(--medium-text-color);\n color: var(--white);\n }\n }\n\n .toggle {\n position: absolute;\n z-index: 1;\n height: 34px;\n top: 0;\n width: var(--xl);\n display: flex;\n align-items: center;\n justify-content: center;\n }\n\n ul {\n display: none;\n }\n\n &.heading,\n &.expanded {\n & > ul {\n display: block;\n }\n }\n }\n }\n}\n\n.content.has-sidebar:not(.hiding-sidebar) {\n @include margin-left($sidebarWidth);\n}\n\n#content-notice {\n margin: 0 calc(var(--xl) * -1);\n padding: 0 var(--xl);\n\n &:not(:last-child) {\n padding-bottom: var(--s);\n border-bottom: 1px solid var(--hairline-color);\n margin-bottom: var(--s);\n }\n}\n\n/* flexbox field layouts */\n#content :not(.meta) > .flex-fields,\n#content > .flex-fields,\n.so-content .flex-fields {\n --row-gap: var(--xl);\n display: flex;\n flex-wrap: wrap;\n align-content: flex-start;\n margin: 0 calc(var(--row-gap) * -1) calc(var(--row-gap) * -1);\n width: calc(100% + var(--row-gap) * 2);\n\n & > * {\n margin: 0 0 var(--row-gap) !important;\n padding: 0 var(--row-gap);\n box-sizing: border-box;\n }\n\n & > h2 {\n flex: 4 0 100%;\n\n &:not(:first-child) {\n padding-top: var(--xl);\n border-top: 1px solid var(--hairline-color);\n }\n }\n\n & > hr,\n & > .line-break {\n flex: 4 0 100%;\n }\n\n & > .line-break:not(:first-child) {\n margin-bottom: 0 !important;\n }\n\n & > :not(h2):not(hr):not(.line-break) {\n &,\n &:last-child {\n position: relative;\n width: 100%;\n\n &:before {\n position: absolute;\n top: 0;\n @include left(-1px);\n width: 1px;\n height: 100%;\n content: '';\n // same BG color as the hairline around the content pane’s 1px shadow\n background-color: transparentize($grey200, 0.5);\n }\n }\n }\n}\n\n#content :not(.meta) > .flex-fields,\n#content > .flex-fields {\n & > :not(h2):not(hr):not(.line-break) {\n &,\n &:last-child {\n // 4 cols for >= 1536px\n @media only screen and (min-width: $minXlUiWidth) {\n &.width-25 {\n width: 25%;\n }\n &.width-50 {\n width: 50%;\n }\n &.width-75 {\n width: 75%;\n }\n }\n\n // 2 cols for 600 - 1535px\n @media only screen and (min-width: $minDesktopWidth) and (max-width: $minXlUiWidth - 1px) {\n &.width-25,\n &.width-50 {\n width: 50%;\n }\n }\n }\n }\n}\n\n.so-content .flex-fields {\n & > :not(h2):not(hr):not(.line-break) {\n &,\n &:last-child {\n // 2 cols for >= 1200\n @media only screen and (min-width: $minDesktopWidth * 2) {\n &.width-25,\n &.width-50 {\n width: 50%;\n }\n }\n }\n }\n}\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n.lp-editor-container,\n.lp-preview-container {\n position: fixed;\n top: 0;\n height: 100%;\n background-color: var(--white);\n z-index: 100;\n\n header {\n padding: 8px 24px;\n background-color: var(--gray-100);\n box-shadow: 0 1px 0 transparentize($grey700, 0.8);\n box-sizing: border-box;\n position: relative;\n z-index: 1;\n\n @supports (backdrop-filter: blur(10px)) {\n & {\n position: absolute;\n z-index: 2;\n top: 0;\n left: 0;\n width: 100%;\n background-color: transparentize($grey100, 0.25);\n backdrop-filter: blur(10px);\n\n & + .lp-editor {\n padding-top: #{10 + 34 + 10 + 24}px;\n }\n }\n }\n\n .btn,\n .spinner,\n .checkmark-icon {\n margin-bottom: 0;\n }\n }\n}\n\n.lp-editor-container {\n display: flex;\n flex-direction: column;\n\n .lp-editor {\n flex: 1;\n padding: 24px;\n overflow: auto;\n box-sizing: border-box;\n\n & > .field {\n &:last-child {\n margin-bottom: 24px !important;\n }\n\n & > .status-badge {\n @include left(-24px);\n }\n }\n\n .matrixblock > .fields > .flex-fields > .field > .status-badge {\n @include left(calc(var(--m) * -1));\n }\n }\n\n .lp-draghandle {\n position: absolute;\n z-index: 6;\n top: 0;\n @include right(-2px);\n width: 4px;\n height: 100%;\n cursor: col-resize;\n }\n}\n\n.lp-preview-container {\n display: flex;\n flex-direction: column;\n box-shadow: -1px 0 0 transparentize($grey700, 0.8);\n\n &.dragging:after {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n content: '';\n font-size: 0;\n }\n\n .lp-preview-header {\n display: flex;\n\n @supports (not (backdrop-filter: blur(10px))) {\n background-color: transparentize($grey100, 0.25);\n }\n\n .buttons {\n margin: 0;\n\n .btn + .btn {\n @include margin-left(7px);\n }\n }\n\n & + .lp-iframe-container {\n padding-top: 0;\n\n @supports (backdrop-filter: blur(10px)) {\n padding-top: 50px;\n }\n }\n\n .lp-device-type {\n .btn {\n &::before {\n width: 27px;\n height: 22px;\n display: block;\n content: '';\n background-size: contain;\n background-repeat: no-repeat;\n background-position: center;\n transition-duration: 0.3s;\n }\n\n // SVGs\n &.lp-device-type-btn--phone::before {\n background-image: url(../images/preview/icon-phone.svg);\n }\n &.lp-device-type-btn--tablet::before {\n background-image: url(../images/preview/icon-tablet.svg);\n }\n &.lp-device-type-btn--desktop::before {\n background-image: url(../images/preview/icon-desktop.svg);\n }\n }\n }\n }\n\n .lp-device-type__label {\n &::before {\n width: 27px;\n height: 22px;\n display: block;\n content: '';\n background-size: contain;\n background-repeat: no-repeat;\n background-position: center;\n transition-duration: 0.3s;\n }\n\n // SVGs\n &.lp-device-type__label--phone::before {\n background-image: url(../images/preview/icon-phone.svg);\n }\n &.lp-device-type__label--tablet::before {\n background-image: url(../images/preview/icon-tablet.svg);\n }\n &.lp-device-type__label--desktop::before {\n background-image: url(../images/preview/icon-desktop.svg);\n }\n }\n\n .lp-preview-container__bumper-link {\n top: unset;\n bottom: 0;\n }\n\n .lp-device-mask {\n display: none;\n }\n\n .lp-iframe-container {\n flex: 1;\n overflow: auto;\n\n .lp-preview {\n display: block;\n width: 100%;\n min-height: 100%;\n }\n\n &:not(.lp-iframe-container--has-device-preview) {\n // Preview container\n .lp-device-preview-container {\n width: auto !important;\n height: 100% !important;\n transform: none !important;\n margin: 0 !important;\n }\n }\n\n &--has-device-preview {\n flex: none;\n padding-top: 0 !important;\n position: relative;\n top: 0;\n height: calc(100% - 50px);\n width: 100%;\n background-color: var(--gray-100);\n\n @supports (backdrop-filter: blur(10px)) {\n top: 50px;\n }\n\n // Preview container\n .lp-device-preview-container {\n position: absolute;\n top: 50%;\n left: 50%;\n z-index: 2;\n overflow: auto;\n opacity: 1;\n transition: opacity 0.3s;\n }\n\n // Device mask\n .lp-device-mask {\n display: block;\n position: absolute;\n top: 50%;\n left: 50%;\n z-index: 1;\n background-image: url(../images/preview/chrome-phone-top.svg),\n url(../images/preview/chrome-phone-bottom.svg);\n background-position: top center, bottom center;\n background-repeat: no-repeat;\n background-size: contain;\n background-color: #fff;\n box-shadow: 0 0 58px rgba(6, 67, 117, 0.3);\n border-radius: 18px;\n }\n\n // Tablet\n &.lp-iframe-container--tablet {\n .lp-device-mask {\n background-image: url(../images/preview/chrome-tablet-top.svg),\n url(../images/preview/chrome-tablet-bottom.svg);\n }\n }\n }\n\n // Animate rotations\n @media screen and (prefers-reduced-motion: no-preference) {\n &--rotating {\n .lp-device-mask {\n transition-duration: 0.3s;\n transition-property: transform;\n }\n .lp-device-preview-container {\n opacity: 0;\n transition: opacity 0s;\n }\n }\n }\n }\n}\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n$base: 24px;\n$tabPadding: 14px;\n$tabWidth: $base * 10;\n$gridColor: hsl(212, 50%, 95%);\n\n@mixin workspaceBg {\n background-color: var(--gray-050);\n background-image: linear-gradient(to right, $gridColor 1px, transparent 0px),\n linear-gradient(to bottom, $gridColor 1px, transparent 1px);\n background-size: $base $base;\n}\n\n.layoutdesigner {\n display: flex;\n align-items: stretch;\n position: relative;\n @include input-styles;\n overflow: hidden;\n box-shadow: none;\n @include padding-right($tabWidth + 1);\n min-height: 500px;\n\n .errors > & {\n border: 1px solid var(--error-color) !important;\n }\n\n .fld-workspace {\n flex: 1;\n @include border-radius(\n var(--small-border-radius),\n 0,\n 0,\n var(--small-border-radius)\n );\n @include padding($base, 0, $base, $base);\n @include workspaceBg;\n background-position: -1px -1px;\n box-shadow: inset 0 1px 3px -1px darken($grey200, 10%);\n\n .fld-tabs {\n display: flex;\n align-items: flex-start;\n flex-wrap: wrap;\n }\n }\n\n .fld-sidebar {\n position: absolute;\n top: 0;\n @include right(0);\n height: 100%;\n width: $tabWidth + 1;\n padding: $tabPadding;\n overflow: auto;\n box-sizing: border-box;\n\n .btngroup {\n margin-bottom: $tabPadding;\n }\n\n .fld-field-library {\n .fld-field-group {\n margin-top: $tabPadding;\n\n h6 {\n margin-bottom: 7px;\n }\n }\n }\n\n .filtered {\n display: none;\n }\n }\n\n .fld-new-tab-btn:active {\n background-color: var(--gray-050);\n }\n}\n\n.fld-sidebar,\n.fld-tab .tabs .tab,\n.fld-tab .fld-tabcontent,\n.fld-new-tab-btn,\n.fld-new-tab-btn:hover {\n background-color: var(--white);\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 2px 5px -2px transparentize($grey900, 0.8);\n}\n\n.fld-tab .settings,\n.fld-element .settings,\n.fld-element .slide-picker {\n @include margin-left(7px);\n}\n\n.fld-tab .settings:before,\n.fld-element .settings:before {\n margin-top: -2px;\n font-size: 16px;\n opacity: 0.5;\n}\n\n.fld-tab .settings:hover:before,\n.fld-tab .settings.active:before,\n.fld-element .settings:hover:before,\n.fld-element .settings.active:before {\n opacity: 1;\n}\n\n.fld-tab {\n width: $tabWidth + $base;\n @include padding(0, $base + 1, $base, 0);\n box-sizing: border-box;\n\n .tabs {\n margin: -10px -12px 0;\n padding: 10px 12px 0;\n overflow: hidden;\n display: flex;\n\n .tab {\n display: flex;\n max-width: calc(100% - 10px);\n box-sizing: border-box;\n padding: 8px $tabPadding;\n border-radius: var(--medium-border-radius) var(--medium-border-radius) 0 0;\n\n body:not(.dragging) &.draggable {\n cursor: move;\n cursor: grab;\n }\n\n span {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n }\n }\n\n .fld-tabcontent {\n padding: $tabPadding;\n @include border-radius(\n 0,\n var(--medium-border-radius),\n var(--medium-border-radius),\n var(--medium-border-radius)\n );\n }\n\n &.fld-insertion {\n .tabs .tab,\n .fld-tabcontent {\n margin: -2px;\n border: 2px dashed var(--hairline-color);\n box-shadow: none;\n @include workspaceBg;\n }\n .tabs .tab {\n background-position: -1px -1px;\n }\n .fld-tabcontent {\n background-position: -1px -13px;\n }\n }\n}\n\n.fld-tab-caboose {\n min-height: 24px;\n}\n\n.fld-indicator {\n display: inline-flex;\n font-size: 11px;\n color: var(--uicontrol-color);\n @include margin-left(4px);\n\n & + .fld-indicator {\n @include margin-left(2px);\n }\n}\n\n.fld-element {\n position: relative;\n display: flex;\n align-items: center;\n padding: 7px 10px;\n box-shadow: inset 0 0 0 1px var(--hairline-color);\n border-radius: var(--medium-border-radius);\n background-color: var(--white);\n\n body:not(.dragging) & {\n cursor: move;\n cursor: grab;\n }\n\n & + .fld-element {\n margin-top: 7px;\n }\n\n &.fld-insertion {\n box-sizing: border-box;\n border: 2px dashed var(--hairline-color);\n border-radius: var(--medium-border-radius);\n background: none;\n box-shadow: none;\n }\n\n &.draghelper {\n @include shadow;\n }\n\n &.fld-field {\n color: var(--medium-text-color);\n background-color: var(--gray-100);\n\n &:not(.draghelper) {\n box-shadow: none;\n }\n\n .fld-field-hidden:not(.hidden) {\n margin-top: -3px;\n @include margin-right(5px);\n\n &:before {\n @include icon;\n content: 'shuteye';\n }\n }\n\n .field-name {\n .fld-element-label {\n margin-bottom: 2px;\n }\n }\n }\n\n .fld-element-icon {\n @include margin-right(5px);\n text-align: center;\n\n &,\n svg {\n width: 16px;\n height: 16px;\n }\n\n svg {\n @include svg-mask(var(--ui-control-color));\n }\n }\n\n .field-name {\n flex: 1;\n overflow: hidden;\n\n .fld-element-label,\n .fld-attribute {\n flex: 1;\n display: flex;\n align-items: center;\n }\n\n .fld-element-label h4,\n .fld-attribute .smalltext {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n .fld-element-label h4 {\n font-weight: normal;\n color: var(--text-color);\n margin: 0;\n }\n }\n}\n\nbody.dragging {\n cursor: move !important;\n cursor: grabbing !important;\n}\n\n.fld-hr,\n.fld-br {\n display: flex;\n justify-content: center;\n padding: 9px 10px;\n\n &:before {\n position: absolute;\n display: block;\n top: calc(50% - 2px);\n left: 10px;\n width: calc(100% - 20px);\n height: 4px;\n content: '';\n font-size: 0;\n border-radius: 2px;\n }\n\n .smalltext {\n position: relative;\n background-color: var(--gray-100);\n border-radius: 8px;\n padding: 1px 7px;\n }\n}\n\n.fld-hr:before {\n background-color: var(--gray-100);\n}\n\n.fld-br:before {\n background-image: repeating-linear-gradient(\n to right,\n var(--gray-100),\n var(--gray-100) calc(100% / 19),\n transparent calc(100% / 19),\n transparent calc(100% / 9.5),\n var(--gray-100) calc(100% / 9.5)\n );\n}\n\n.fld-element-settings-body {\n flex: 1;\n margin: -24px var(--neg-padding) 0;\n padding: 24px var(--padding);\n overflow: hidden auto;\n position: relative;\n}\n\n.fld-element-settings-footer {\n position: relative;\n display: flex;\n flex-direction: row;\n margin: 0 var(--neg-padding) -24px;\n padding: var(--padding);\n @include pane;\n background-color: var(--gray-050);\n z-index: 3;\n\n & > .ee-site-select {\n flex: 1;\n }\n\n & > .btn {\n @include margin-left(5px);\n }\n\n & > .spinner {\n @include margin(0, var(--neg-padding), 0, 0);\n }\n}\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n/* No Scroll */\nhtml.noscroll,\nhtml.noscroll body {\n overflow: hidden;\n height: 100%;\n}\n\n/* Image Editor */\n\n.modal.imageeditor {\n background-color: var(--gray-900);\n color: var(--white);\n @include light-on-dark-text;\n @include light-focus-ring;\n opacity: 0;\n user-select: none;\n}\n\n.modal.imageeditor.modal {\n border-radius: 0;\n}\n\n.modal.imageeditor.modal .body:after {\n display: none;\n}\n\n.modal.imageeditor .btn:not(.submit):not(.noborder) {\n background-color: var(--gray-600);\n color: var(--white);\n}\n\n.modal.imageeditor .btn:not(.submit):not(.noborder):hover {\n background-color: var(--gray-700);\n}\n\n.modal.imageeditor .btn:not(.submit):not(.noborder).active {\n background-color: var(--gray-800);\n}\n\n.modal.imageeditor .icon::before {\n width: 24px;\n height: 24px;\n margin-top: -4px;\n margin-left: -3px;\n display: inline-block;\n content: '';\n}\n\n.modal.imageeditor .icon.rotate-left::before {\n background-image: url(../images/image-editor/rotate-left.svg);\n}\n\n.modal.imageeditor .icon.rotate-right::before {\n background-image: url(../images/image-editor/rotate-right.svg);\n}\n\n.modal.imageeditor .icon.flip-vertical::before {\n background-image: url(../images/image-editor/flip-vertical.svg);\n}\n\n.modal.imageeditor .icon.flip-horizontal::before {\n background-image: url(../images/image-editor/flip-horizontal.svg);\n}\n\n.modal.imageeditor .icon.constraint::before {\n background-image: url(../images/image-editor/unconstrained.svg);\n}\n\n.modal.imageeditor .icon.focal-point::before {\n background-image: url(../images/image-editor/focal-point.svg);\n}\n\n.modal.imageeditor .body {\n display: flex;\n padding: 0;\n}\n\n.modal.imageeditor input {\n color: var(--text-color);\n}\n\n.modal.imageeditor .body .tabs {\n border-right: 1px solid var(--gray-1000);\n}\n\n.modal.imageeditor .body .tabs ul {\n width: 100px;\n flex-direction: column;\n align-items: stretch;\n}\n\n.modal.imageeditor .body .tabs ul li {\n position: relative;\n padding: 14px;\n text-align: center;\n border-bottom: 1px solid var(--gray-1000);\n cursor: pointer;\n\n &::before {\n position: absolute;\n top: 0;\n @include left(0);\n content: '';\n width: 0;\n height: 100%;\n background-color: currentColor;\n }\n\n &.selected {\n background-color: darken($grey900, 5%);\n\n &::before {\n width: 2px;\n }\n }\n}\n\n.modal.imageeditor .body .tabs ul li i {\n background-repeat: no-repeat;\n background-position: top center;\n display: block;\n height: 24px;\n}\n\n.modal.imageeditor .body .tabs ul li[data-view='rotate'] i {\n background-image: url(../images/image-editor/rotate-left.svg);\n}\n\n.modal.imageeditor .body .tabs ul li[data-view='crop'] i {\n background-image: url(../images/image-editor/crop.svg);\n}\n\n.modal.imageeditor .body .tabs ul li[data-view='filters'] i {\n background-image: url(../images/image-editor/filters.svg);\n}\n\n.modal.imageeditor .body .tabs ul li:hover {\n background-color: darken($grey900, 2%);\n}\n\n.modal.imageeditor .body .tabs ul li:hover {\n cursor: pointer;\n}\n\n.modal.imageeditor .body .views {\n padding: 24px;\n overflow: auto;\n}\n\n.modal.imageeditor .body .views .btngroup {\n margin-bottom: 24px;\n}\n\n.modal.imageeditor .body .views .filters ul {\n width: 100px;\n}\n\n.modal.imageeditor .body .views .filters ul li {\n text-align: center;\n margin-right: 14px;\n margin-bottom: 14px;\n}\n\n.modal.imageeditor .body .views .filters ul li:last-child {\n margin-right: 0;\n}\n\n.modal.imageeditor .body .views .filters ul li img {\n border: 3px solid transparent;\n border-radius: 4px;\n}\n\n.modal.imageeditor .body .views .filters ul li span {\n display: block;\n}\n\n.modal.imageeditor .body .views .filters ul li:hover {\n cursor: pointer;\n}\n\n.modal.imageeditor .body .views .filters ul li.selected img {\n border-color: var(--white);\n}\n\n.modal.imageeditor .body .image-container {\n flex-grow: 1;\n display: flex;\n flex-direction: column;\n position: relative;\n overflow: hidden;\n}\n\n.modal.imageeditor .body .image-container .image {\n text-align: center;\n flex-grow: 1;\n position: relative;\n margin: 14px;\n}\n\n.modal.imageeditor .body .image-container .image canvas {\n position: absolute;\n top: 0;\n left: 0;\n}\n\n.modal.imageeditor .body .image-container .image-tools {\n text-align: center;\n}\n\n.modal.imageeditor .body .image-container .image-tools .straightening {\n max-width: 400px;\n min-height: toRem(60);\n display: block;\n margin: 0 auto;\n overflow: hidden;\n}\n\n.modal.imageeditor .footer {\n position: absolute;\n background-color: transparent;\n bottom: 0;\n left: 0;\n width: 100%;\n border-top: 1px solid #000;\n\n body.has-debug-toolbar & {\n padding-bottom: calc(8px + 42px);\n }\n}\n\n.modal.imageeditor .body .views .crop {\n fieldset .heading {\n display: none;\n }\n\n .custom-constraint-spacer {\n padding: 0 var(--xs);\n }\n\n .constraint-group {\n display: grid;\n grid-gap: var(--xs);\n }\n\n .custom {\n @include padding-left($radioSize + 5);\n }\n\n .orientation {\n display: flex;\n align-items: center;\n justify-content: center;\n\n input {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n background-position: center center;\n background-repeat: no-repeat;\n margin: 0 4px;\n cursor: pointer;\n\n &[value='landscape'] {\n width: 30px;\n height: 20px;\n background-image: url(../images/image-editor/orientation-landscape-unchecked.svg);\n\n &:checked {\n background-image: url(../images/image-editor/orientation-landscape-checked.svg);\n }\n }\n\n &[value='portrait'] {\n width: 20px;\n height: 30px;\n background-image: url(../images/image-editor/orientation-portrait-unchecked.svg);\n\n &:checked {\n background-image: url(../images/image-editor/orientation-portrait-checked.svg);\n }\n }\n }\n }\n}\n\n.modal.imageeditor.vertical .body .views .crop {\n & > .btngroup:first-child {\n justify-content: center;\n }\n}\n\n.modal.imageeditor:not(.vertical) .body .views .crop {\n .constraint.custom {\n margin-top: var(--xs);\n }\n}\n\n/* Vertical */\n\n.vertical.imageeditor .body {\n flex-direction: column;\n\n .image-container {\n flex-basis: 30vh;\n flex-shrink: 0;\n }\n\n .constraint-group {\n grid-template-columns: 1fr 1fr;\n }\n}\n\n.vertical.imageeditor .body .tabs ul {\n display: flex;\n flex-direction: row;\n width: 100%;\n border-top: 1px solid #000;\n border-bottom: 1px solid #000;\n}\n\n.vertical.imageeditor .body .tabs ul li {\n flex-grow: 1;\n border: 0;\n border-right: 1px solid #000;\n padding: 10px 7px;\n\n &::before {\n top: unset;\n top: 0;\n width: 100%;\n height: 0;\n }\n\n &.selected::before {\n width: 100%;\n height: 2px;\n }\n}\n\n.vertical.imageeditor .body .views {\n width: auto;\n}\n\n.vertical.imageeditor .body .views .rotate {\n display: flex;\n justify-content: center;\n flex-wrap: wrap;\n margin-bottom: -14px;\n}\n\n.vertical.imageeditor .body .views .rotate .btngroup {\n margin: 0 7px 14px;\n}\n\n.vertical.imageeditor .body .views .filters ul {\n width: auto;\n height: 109px;\n overflow: auto;\n white-space: nowrap;\n margin: 0 -24px;\n margin-bottom: -24px;\n padding: 24px;\n text-align: center;\n}\n\n.vertical.imageeditor .body .views .filters ul li {\n display: inline-block;\n margin-bottom: 0;\n}\n\n/* Slide Rule */\n\n.slide-rule {\n position: relative;\n padding: 10px 0;\n\n &:focus {\n box-shadow: none;\n }\n\n @include focus-styles {\n .cursor::after {\n box-shadow: var(--focus-ring);\n }\n }\n\n .cursor {\n &::after {\n content: '';\n width: toRem(20);\n height: toRem(50);\n position: absolute;\n top: -15px;\n left: 50%;\n transform: translateX(-50%);\n }\n }\n}\n\n.slide-rule .cursor {\n position: absolute;\n margin-left: toRem(-4);\n margin-top: 4px;\n left: 50%;\n z-index: 1;\n width: 0;\n height: 0;\n border-left: toRem(5) solid transparent;\n border-right: toRem(5) solid transparent;\n border-top: toRem(5) solid #63a6e1;\n}\n\n.slide-rule .graduations {\n white-space: nowrap;\n height: 40px;\n position: relative;\n}\n\n.slide-rule .graduations ul {\n position: relative;\n float: left;\n}\n\n.slide-rule .graduations ul li {\n display: inline-block;\n font-size: 8px;\n position: relative;\n width: 10px;\n}\n\n.slide-rule .graduations ul li:not(.main-graduation) {\n left: 1px;\n}\n\n.slide-rule .graduations ul li.main-graduation:before {\n border-left-width: 3px;\n}\n\n.slide-rule .graduations ul li.main-graduation .label {\n display: block;\n cursor: default;\n}\n\n.slide-rule .graduations ul li.selected:before {\n border-left-color: #63a6e1;\n}\n\n.slide-rule .graduations ul li:before {\n content: '';\n position: absolute;\n border-left: 1px solid var(--white);\n height: 10px;\n top: 0px;\n left: 0;\n}\n\n.slide-rule .graduations ul li .label {\n width: 20px;\n position: absolute;\n top: 10px;\n left: -9px;\n display: none;\n text-align: center;\n}\n\n.slide-rule .value {\n display: none;\n position: absolute;\n bottom: 0;\n left: 50%;\n z-index: 1;\n box-sizing: border-box;\n padding: 5px;\n width: 50px;\n margin-left: -25px;\n background: var(--gray-600);\n}\n\n.slide-rule .overlay {\n z-index: 2;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 1px;\n left: 0;\n background-image: linear-gradient(\n to right,\n var(--gray-900) 0%,\n transparentize($grey900, 1) 15%,\n transparentize($grey900, 1) 85%,\n var(--gray-900) 100%\n );\n}\n\n/* Misc */\n\n.menu.dark {\n background-color: var(--gray-600);\n @include light-on-dark-text;\n\n ul {\n li {\n a {\n color: var(--white) !important;\n\n &:not(.sel):not(.disabled):hover {\n background-color: var(--gray-700);\n }\n }\n }\n }\n}\n","_:-ms-lang(x),\n.elements .tableview td.checkbox-cell input.checkbox + label,\n.elements .tableview td.checkbox-cell div.checkbox {\n top: 16px;\n}\n\n_:-ms-lang(x),\ninput.checkbox + label:empty,\ndiv:empty.checkbox {\n display: block;\n}\n",".yii-debug-toolbar__title a {\n display: block !important;\n}\n","@charset \"UTF-8\";\n\n@import '@craftcms/sass/mixins';\n\n.cp-chart {\n margin: 0;\n height: 100%;\n position: relative;\n}\n\n.cp-chart svg {\n width: 100%;\n height: 100%;\n}\n\n.cp-chart .axis path,\n.cp-chart .axis line {\n fill: none;\n stroke: var(--hairline-color);\n shape-rendering: crispEdges;\n}\n\n.cp-chart .ticks-axis path,\n.cp-chart .ticks-axis line {\n fill: none;\n stroke: none;\n shape-rendering: crispEdges;\n}\n\n.cp-chart .ticks-axis g.tick text {\n fill: var(--black);\n font-size: 11px;\n}\n\n.cp-chart .axis text {\n fill: RGBA(0, 0, 0, 0.6);\n}\n\n.cp-chart .grid-line .tick {\n stroke: RGBA(0, 0, 0, 0.08);\n stroke-opacity: 0.7;\n shape-rendering: crispEdges;\n}\n\n.cp-chart .grid-line .tick line {\n stroke: RGBA(0, 0, 0, 0.08);\n stroke-opacity: 0.7;\n shape-rendering: crispEdges;\n}\n\n.cp-chart .grid-line path {\n stroke-width: 0;\n}\n\n.tooltip {\n border-radius: 3px;\n padding: 7px 10px;\n background: transparentize($white, 0.1);\n position: absolute;\n z-index: 1000000;\n @include shadow;\n user-select: none;\n pointer-events: none;\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/cp/src/css/_cp.scss b/src/web/assets/cp/src/css/_cp.scss index 59a40fb95f8..a93c6c47d6e 100644 --- a/src/web/assets/cp/src/css/_cp.scss +++ b/src/web/assets/cp/src/css/_cp.scss @@ -30,9 +30,11 @@ html { body { min-height: 100vh; -} -body { + &.increase-contrast { + --input-border-color: var(--gray-400); + } + :focus { outline-style: solid; outline-color: transparent; @@ -1101,10 +1103,6 @@ li.breadcrumb-toggle-wrapper { .meta { border-radius: var(--large-border-radius); - &:not(.read-only):not(.warning) { - @include pane; - } - &.read-only { color: var(--medium-text-color); background-color: transparent !important; @@ -1132,12 +1130,6 @@ li.breadcrumb-toggle-wrapper { } } - & > .field { - & > .input > .text.fullwidth { - @include pane; - } - } - .notes { border-radius: var(--large-border-radius); padding-top: var(--m); diff --git a/src/web/assets/cp/src/css/_main.scss b/src/web/assets/cp/src/css/_main.scss index 0725269ee11..5594d75d7a8 100644 --- a/src/web/assets/cp/src/css/_main.scss +++ b/src/web/assets/cp/src/css/_main.scss @@ -1878,7 +1878,7 @@ div.btn.submit input { /* dashed buttons */ .btn.dashed { - border: 1px dashed var(--medium-hairline-color); + border: 1px dashed var(--input-border-color); background-color: transparent; .btngroup &:not(:last-child):not(.btngroup-btn-last) { @@ -1953,7 +1953,7 @@ div.btn.submit input { width: 100%; height: 100%; border-radius: 17px; - box-shadow: inset 0 0 0 1px transparentize($black, 0.85); + box-shadow: inset 0 0 0 1px var(--input-border-color); &:focus-within { @include input-focused-styles; @@ -3059,7 +3059,7 @@ $checkboxPadding: $checkboxSize + 4; /* editable tables */ table.editable { border-radius: var(--large-border-radius); - border: 1px solid var(--gray-200); + border: 1px solid var(--input-border-color); th, td.action { @@ -3080,7 +3080,7 @@ table.editable { thead { tr { th { - border-bottom: 1px solid var(--hairline-color); + border-bottom: 1px solid var(--input-border-color); &.has-info { @include padding-right(calc(15px + 1em)); @@ -3099,7 +3099,7 @@ table.editable { &:not(:first-child) { th, td { - border-top: 1px solid var(--hairline-color); + border-top: 1px solid var(--input-border-color); } } @@ -3118,7 +3118,7 @@ table.editable { td:not(:first-child), th ~ td:not(.hidden) ~ td { - @include border-left(1px solid var(--hairline-color)); + @include border-left(1px solid var(--input-border-color)); } th { @@ -3768,6 +3768,7 @@ ul.tree, /* detail sidebars */ .details { + --background-color: var(--gray-050); --spacing: var(--l); padding: 0 var(--padding) var(--spacing); @@ -3782,7 +3783,7 @@ ul.tree, margin-bottom: var(--spacing); &:not(.read-only) { - background-color: var(--gray-050) !important; + background-color: var(--background-color) !important; } &.read-only { @@ -3902,8 +3903,7 @@ ul.tree, margin: 0 var(--neg-padding); padding-left: var(--padding); padding-right: var(--padding); - border: none; - background-color: var(--gray-050) !important; + background-color: var(--background-color) !important; width: calc(100% + var(--padding) + var(--padding)); } } @@ -3922,7 +3922,9 @@ ul.tree, $min2ColWidth: 400px; .meta { - padding: 0 var(--padding); + display: grid; + grid-gap: var(--m); + padding: calc(var(--padding) / 2) var(--padding); overflow: visible; &, @@ -3930,7 +3932,6 @@ $min2ColWidth: 400px; & > .field, & > .data { display: flex; - min-height: 50px; box-sizing: border-box; flex-wrap: wrap; // for error lists justify-content: space-between; @@ -3944,8 +3945,6 @@ $min2ColWidth: 400px; } &.add { - background-color: darken($grey050, 2%); - &:before { position: absolute; @include left(0); @@ -3987,10 +3986,10 @@ $min2ColWidth: 400px; } & > .field > .heading { - padding-top: var(--s); + margin: var(--xs) 0; @media screen and (min-width: $min2ColWidth) { - padding: 14px 0; + margin: 0; } & > .copytextbtn { @@ -4069,10 +4068,7 @@ $min2ColWidth: 400px; & > .text { display: block; margin: calc(var(--s) * -1) 0; - padding: 14px 0; - border-radius: 0; background-color: transparent; - border: none !important; } } @@ -4081,9 +4077,6 @@ $min2ColWidth: 400px; & > .datetimewrapper > .datewrapper, & > .datetimewrapper > .timewrapper { background-color: transparent; - .text + div[data-icon] { - @include left(0); - } } & > .datetimewrapper { @@ -4120,11 +4113,6 @@ $min2ColWidth: 400px; } } - & > .field:not(:first-child), - & > .flex-fields + .field { - border-top: 1px solid var(--hairline-color); - } - & > .flex-fields { h2, blockquote.note { @@ -4152,10 +4140,6 @@ $min2ColWidth: 400px; box-shadow: none; background-color: transparent; - &:after { - @include right(0); - } - & + .spinner { position: absolute; top: calc(50% - 17px); @@ -4163,7 +4147,8 @@ $min2ColWidth: 400px; } select { - @include padding(var(--s), 12px, var(--s), 0); + @include padding-left(6px); + border: 1px solid var(--input-border-color); width: 100%; background-color: transparent; } @@ -5749,7 +5734,7 @@ div.checkbox:before { content: ''; font-size: 0; background-color: hsl(212, 50%, 99%); - border: 1px solid transparentize($inputColor, 0.6); + border: 1px solid var(--input-border-color); background-clip: padding-box; border-radius: var(--small-border-radius); } @@ -5876,7 +5861,7 @@ div.radio:before { width: var(--radio-size); height: var(--radio-size); background-color: hsl(212, 50%, 99%); - border: 1px solid transparentize($inputColor, 0.6); + border: 1px solid var(--input-border-color); } input.radio + label:after, @@ -6265,10 +6250,6 @@ tr.indexingSession td.progress div.progressContainer div.progressInfo { } .select:not(.selectize) select { - &:hover { - @include select-input-focused-styles; - } - @include focus-styles { @include select-input-focused-styles; } diff --git a/src/web/assets/cp/src/css/_variables.scss b/src/web/assets/cp/src/css/_variables.scss index c669e142989..9b312cbaf7f 100644 --- a/src/web/assets/cp/src/css/_variables.scss +++ b/src/web/assets/cp/src/css/_variables.scss @@ -69,6 +69,8 @@ --medium-border-radius: 4px; --large-border-radius: 5px; + --input-border-color: #{transparentize($inputColor, 0.75)}; + --menu-border-radius: var(--medium-border-radius); --checkbox-size: 16px; --radio-size: 16px; diff --git a/src/web/assets/craftsupport/dist/css/CraftSupportWidget.css.map b/src/web/assets/craftsupport/dist/css/CraftSupportWidget.css.map index 3bd352018d8..efd48edfd94 100644 --- a/src/web/assets/craftsupport/dist/css/CraftSupportWidget.css.map +++ b/src/web/assets/craftsupport/dist/css/CraftSupportWidget.css.map @@ -1 +1 @@ -{"version":3,"file":"css/CraftSupportWidget.css","mappings":"AAKI,kDAEE,gBADA,SACA,CAEA,6DAEE,sBADA,iBACA,CAEA,+EACE,aACA,UAIA,8EACE,cAGA,YAFA,mBACA,UACA,CC4JV,oqBAQE,oBDnK0B,CCoK1B,eD9JI,0EACE,wGAMA,cADA,eAHA,cAKA,aAJA,aACA,kBAIA,WAEA,sFACE,0BAGF,4FACE,qCAGF,qFACE,0BAGF,gFACE,2BAGF,6EAEE,gBADA,eACA,CAGF,4EAEE,8BADA,cACA,CAKN,oIAEE,aAIA,4FAME,2BACA,0FALA,eAEA,iBACA,gBAFA,eAFA,iBAMA,CAGA,4GACE,iBAEA,gHACE,cAGA,YAFA,cACA,UACA,CAKN,0FAIE,+BAFA,gBADA,kBAEA,iBACA,CAGF,kFAEE,eADA,iBACA,CAEA,oFACE,cACA,kBCwWV,6FACE,uBAEF,6FACE,uBDzWQ,4FACE,kBACA,QCiMZ,qGACE,MDjMwB,CCmM1B,qGACE,ODpMwB,CAKpB,yEACE,kBAEA,4FACE,aACA,aAGF,kKAEE,cACA,cACA,gBAIJ,+EACE,uEAEA,iFACE,SACA,kBAGF,kGACE,kCACA,sCACA,sDAEA,oGAEE,sBAEA,8BADA,iBAFA,SAGA,CAEA,0GACE,wBACA,qBAGF,uGAEE,eAAc,CADd,iBACA,CAEA,2GAEE,YADA,WACA,CAIJ,sGACE,aAKN,oGAGE,8CAFA,kCACA,qDACA,CAGF,kGAIE,kCACA,sDAHA,gBACA,iBAFA,iBAIA,CAEA,yGAUE,iCARA,WADA,cAEA,YAMA,WAHA,SACA,eAHA,kBACA,MAGA,UAEA,CC4PZ,+GACE,gBDzPU,CC2PZ,+GACE,iBD5PU,CAGF,oGAEE,8CADA,iCACA,CAEA,wGAEE,YADA,UACA,CClCd,o3BAQE,4BD2B8B,CC1B9B,eAwQF,kHACE,eD3OY,CC6Od,kHACE,gBD9OY,CAON,4FACE,iBAKF,wFACE,qEAGF,sHACE,gBAGF,yFAEE,QAAO,CADP,iBACA,CC4EV,kGACE,WD5EuB,CC8EzB,kGACE,UD/EuB","sources":["webpack:///./CraftSupportWidget.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n.widget.craft\\\\widgets\\\\craftsupport {\n .front {\n .pane {\n padding: 0;\n overflow: hidden;\n\n .cs-screen {\n position: relative;\n box-sizing: border-box;\n\n &:not(:first-child) {\n display: none;\n opacity: 0;\n }\n\n .cs-opt-icon {\n svg {\n display: block;\n margin: 0 auto 14px;\n width: 50px;\n height: 50px;\n @include svg-mask(var(--gray-200));\n }\n }\n }\n\n .cs-screen-home {\n .cs-opt {\n --focus-ring: inset 0 0 0 1px hsl(var(--dark-focus-hsl)),\n inset 0 0 0 3px hsla(var(--dark-focus-hsl), 0.7);\n display: block;\n padding: 24px;\n text-align: center;\n cursor: pointer;\n color: inherit;\n font: inherit;\n width: 100%;\n\n &:first-child {\n border-radius: 4px 4px 0 0;\n }\n\n &:not(:first-child) {\n border-top: 1px solid var(--gray-050);\n }\n\n &:last-child {\n border-radius: 0 0 4px 4px;\n }\n\n &:hover {\n background: var(--gray-050);\n }\n\n h2 {\n margin: -7px 0 0;\n font-weight: normal;\n }\n\n p {\n margin-top: 3px;\n color: var(--light-text-color);\n }\n }\n }\n\n .cs-screen-2,\n .cs-screen-support {\n padding: 24px;\n }\n\n .cs-screen-2 {\n .cs-search-results-container {\n position: relative;\n margin: 0 -24px;\n padding: 0 24px;\n max-height: 250px;\n overflow: scroll;\n background: var(--gray-050);\n box-shadow: inset 0 2px 2px -2px transparentize($grey800, 0.9),\n inset 0 -2px 2px -2px transparentize($grey800, 0.9);\n\n .cs-search-icon {\n padding-top: 10px;\n\n svg {\n display: block;\n margin: 0 auto;\n width: 30px;\n height: 30px;\n }\n }\n }\n\n .cs-more-resources-heading {\n margin: 7px 0 14px;\n font-weight: normal;\n text-align: center;\n color: var(--medium-text-color);\n }\n\n .cs-search-results {\n position: relative;\n padding: 14px 0 14px;\n\n a {\n display: block;\n position: relative;\n @include padding(3px, 0, 3px, 20px);\n\n .status {\n position: absolute;\n top: 6px;\n @include left(0);\n }\n }\n }\n\n .cs-forms {\n position: relative;\n\n .cs-button-wrapper {\n display: grid;\n gap: var(--s);\n }\n\n .submit,\n .cancel {\n display: block;\n margin: 0 auto;\n max-width: 365px;\n }\n }\n\n .cs-search-form {\n transition: padding-top linear 100ms;\n\n p {\n margin: 0;\n text-align: center;\n }\n\n .cs-logo-resources {\n display: flex;\n flex-wrap: wrap;\n justify-content: center;\n\n a {\n width: 50%;\n box-sizing: border-box;\n padding: 10px 5px;\n color: var(--light-text-color);\n\n &:hover {\n color: var(--link-color);\n text-decoration: none;\n }\n\n h4 {\n text-align: center;\n margin-bottom: 0;\n\n img {\n width: 120px;\n height: 24px;\n }\n }\n\n p {\n margin-top: 0;\n }\n }\n }\n\n .cs-resource-heading {\n display: flex;\n justify-content: center;\n align-items: center;\n }\n\n .cs-icon-resources {\n position: relative;\n margin-top: 14px;\n padding-top: 24px;\n display: flex;\n justify-content: center;\n\n &:before {\n display: block;\n content: '';\n font-size: 0;\n position: absolute;\n top: 0;\n left: 50%;\n margin: 0 -10px;\n width: 20px;\n height: 1px;\n background: var(--hairline-color);\n }\n\n a + a {\n @include margin-left(24px);\n }\n\n a {\n display: flex;\n align-items: center;\n\n svg {\n width: 16px;\n height: 16px;\n @include svg-mask(var(--light-text-color));\n }\n\n span {\n @include margin-left(5px);\n }\n }\n }\n }\n\n &.with-results {\n .cs-search-form {\n padding-top: 24px;\n }\n }\n\n .cs-support-form {\n .submit {\n transition: margin-top linear 100ms;\n }\n\n .cs-support-more:not(.hidden) + .submit {\n margin-top: 24px;\n }\n\n .spinner {\n position: absolute;\n bottom: 0;\n @include right(-24px);\n }\n }\n }\n }\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/CraftSupportWidget.css","mappings":"AAKI,kDAEE,gBADA,SACA,CAEA,6DAEE,sBADA,iBACA,CAEA,+EACE,aACA,UAIA,8EACE,cAGA,YAFA,mBACA,UACA,CC4JV,oqBAQE,oBDnK0B,CCoK1B,eD9JI,0EACE,wGAMA,cADA,eAHA,cAKA,aAJA,aACA,kBAIA,WAEA,sFACE,0BAGF,4FACE,qCAGF,qFACE,0BAGF,gFACE,2BAGF,6EAEE,gBADA,eACA,CAGF,4EAEE,8BADA,cACA,CAKN,oIAEE,aAIA,4FAME,2BACA,0FALA,eAEA,iBACA,gBAFA,eAFA,iBAMA,CAGA,4GACE,iBAEA,gHACE,cAGA,YAFA,cACA,UACA,CAKN,0FAIE,+BAFA,gBADA,kBAEA,iBACA,CAGF,kFAEE,eADA,iBACA,CAEA,oFACE,cACA,kBCwWV,6FACE,uBAEF,6FACE,uBDzWQ,4FACE,kBACA,QCiMZ,qGACE,MDjMwB,CCmM1B,qGACE,ODpMwB,CAKpB,yEACE,kBAEA,4FACE,aACA,aAGF,kKAEE,cACA,cACA,gBAIJ,+EACE,uEAEA,iFACE,SACA,kBAGF,kGACE,kCACA,sCACA,sDAEA,oGAEE,sBAEA,8BADA,iBAFA,SAGA,CAEA,0GACE,wBACA,qBAGF,uGAEE,eAAc,CADd,iBACA,CAEA,2GAEE,YADA,WACA,CAIJ,sGACE,aAKN,oGAGE,8CAFA,kCACA,qDACA,CAGF,kGAIE,kCACA,sDAHA,gBACA,iBAFA,iBAIA,CAEA,yGAUE,iCARA,WADA,cAEA,YAMA,WAHA,SACA,eAHA,kBACA,MAGA,UAEA,CC4PZ,+GACE,gBDzPU,CC2PZ,+GACE,iBD5PU,CAGF,oGAEE,8CADA,iCACA,CAEA,wGAEE,YADA,UACA,CClCd,o3BAQE,4BD2B8B,CC1B9B,eAwQF,kHACE,eD3OY,CC6Od,kHACE,gBD9OY,CAON,4FACE,iBAKF,wFACE,qEAGF,sHACE,gBAGF,yFAEE,QAAO,CADP,iBACA,CC4EV,kGACE,WD5EuB,CC8EzB,kGACE,UD/EuB","sources":["webpack:///./CraftSupportWidget.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n.widget.craft\\\\widgets\\\\craftsupport {\n .front {\n .pane {\n padding: 0;\n overflow: hidden;\n\n .cs-screen {\n position: relative;\n box-sizing: border-box;\n\n &:not(:first-child) {\n display: none;\n opacity: 0;\n }\n\n .cs-opt-icon {\n svg {\n display: block;\n margin: 0 auto 14px;\n width: 50px;\n height: 50px;\n @include svg-mask(var(--gray-200));\n }\n }\n }\n\n .cs-screen-home {\n .cs-opt {\n --focus-ring: inset 0 0 0 1px hsl(var(--dark-focus-hsl)),\n inset 0 0 0 3px hsla(var(--dark-focus-hsl), 0.7);\n display: block;\n padding: 24px;\n text-align: center;\n cursor: pointer;\n color: inherit;\n font: inherit;\n width: 100%;\n\n &:first-child {\n border-radius: 4px 4px 0 0;\n }\n\n &:not(:first-child) {\n border-top: 1px solid var(--gray-050);\n }\n\n &:last-child {\n border-radius: 0 0 4px 4px;\n }\n\n &:hover {\n background: var(--gray-050);\n }\n\n h2 {\n margin: -7px 0 0;\n font-weight: normal;\n }\n\n p {\n margin-top: 3px;\n color: var(--light-text-color);\n }\n }\n }\n\n .cs-screen-2,\n .cs-screen-support {\n padding: 24px;\n }\n\n .cs-screen-2 {\n .cs-search-results-container {\n position: relative;\n margin: 0 -24px;\n padding: 0 24px;\n max-height: 250px;\n overflow: scroll;\n background: var(--gray-050);\n box-shadow: inset 0 2px 2px -2px transparentize($grey800, 0.9),\n inset 0 -2px 2px -2px transparentize($grey800, 0.9);\n\n .cs-search-icon {\n padding-top: 10px;\n\n svg {\n display: block;\n margin: 0 auto;\n width: 30px;\n height: 30px;\n }\n }\n }\n\n .cs-more-resources-heading {\n margin: 7px 0 14px;\n font-weight: normal;\n text-align: center;\n color: var(--medium-text-color);\n }\n\n .cs-search-results {\n position: relative;\n padding: 14px 0 14px;\n\n a {\n display: block;\n position: relative;\n @include padding(3px, 0, 3px, 20px);\n\n .status {\n position: absolute;\n top: 6px;\n @include left(0);\n }\n }\n }\n\n .cs-forms {\n position: relative;\n\n .cs-button-wrapper {\n display: grid;\n gap: var(--s);\n }\n\n .submit,\n .cancel {\n display: block;\n margin: 0 auto;\n max-width: 365px;\n }\n }\n\n .cs-search-form {\n transition: padding-top linear 100ms;\n\n p {\n margin: 0;\n text-align: center;\n }\n\n .cs-logo-resources {\n display: flex;\n flex-wrap: wrap;\n justify-content: center;\n\n a {\n width: 50%;\n box-sizing: border-box;\n padding: 10px 5px;\n color: var(--light-text-color);\n\n &:hover {\n color: var(--link-color);\n text-decoration: none;\n }\n\n h4 {\n text-align: center;\n margin-bottom: 0;\n\n img {\n width: 120px;\n height: 24px;\n }\n }\n\n p {\n margin-top: 0;\n }\n }\n }\n\n .cs-resource-heading {\n display: flex;\n justify-content: center;\n align-items: center;\n }\n\n .cs-icon-resources {\n position: relative;\n margin-top: 14px;\n padding-top: 24px;\n display: flex;\n justify-content: center;\n\n &:before {\n display: block;\n content: '';\n font-size: 0;\n position: absolute;\n top: 0;\n left: 50%;\n margin: 0 -10px;\n width: 20px;\n height: 1px;\n background: var(--hairline-color);\n }\n\n a + a {\n @include margin-left(24px);\n }\n\n a {\n display: flex;\n align-items: center;\n\n svg {\n width: 16px;\n height: 16px;\n @include svg-mask(var(--light-text-color));\n }\n\n span {\n @include margin-left(5px);\n }\n }\n }\n }\n\n &.with-results {\n .cs-search-form {\n padding-top: 24px;\n }\n }\n\n .cs-support-form {\n .submit {\n transition: margin-top linear 100ms;\n }\n\n .cs-support-more:not(.hidden) + .submit {\n margin-top: 24px;\n }\n\n .spinner {\n position: absolute;\n bottom: 0;\n @include right(-24px);\n }\n }\n }\n }\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/dashboard/dist/css/Dashboard.css.map b/src/web/assets/dashboard/dist/css/Dashboard.css.map index a6cd682493c..2cc116a46fe 100644 --- a/src/web/assets/dashboard/dist/css/Dashboard.css.map +++ b/src/web/assets/dashboard/dist/css/Dashboard.css.map @@ -1 +1 @@ -{"version":3,"file":"css/Dashboard.css","mappings":"AAIA,QAIE,mBAFA,8CADA,kBAEA,8QACA,CAEA,iBACE,UACA,uEAGF,6BAEE,8DACA,iCAIA,6BACE,wDAEA,wDACE,oBAGJ,4BACE,8DAGF,wDACE,WAGF,wDACE,WAKF,uBACE,4DAEF,sBACE,wDAIJ,mDAEE,UAKE,oCAGE,8CAEA,eAJA,kCASA,gCARA,sDAEA,UAKA,kBAFA,SACA,+DAGA,+BCwPN,6CACE,UD9PmB,CCgQrB,6CACE,SDjQmB,CAQjB,2CACE,aAKN,cAGE,OAFA,kBACA,MAEA,WAEA,oBACE,2BAEA,4BACE,gBAQA,mDACE,cCiVR,4DACE,YAEF,4DACE,WAcF,4DACE,gBDlWM,CCoWR,4DACE,iBDrWM,CAQJ,qCACE,aAEA,2DACE,cAGA,sBAFA,kBACA,oBACA,CAMR,wBACE,mBAEA,2BACE,kBAEF,2BACE,aAIJ,qBACE,gBAKJ,qBACE,qBACA,SACA,UAGF,mBACE,cAEA,6CACE,UAKJ,4CACE,mBAIF,iCACE,aACA,SAIF,uBACE,kBC2TA,gCACE,iBD3TF,CC6TA,gCACE,kBD9TF,CAEA,6BACE,kBACA,SAEA,WCyIF,sCACE,SD3Ic,CC6IhB,sCACE,UD9Ic,CAKlB,4DAGE,YADA,UACA,CCCA,wkBAQE,4BDRgB,CCShB,eDLJ,kBACE,gBAEA,wBACE,gBAIJ,yCACE,kBACE,gBAEA,wBACE,gBAMA,gHACE","sources":["webpack:///./dashboard.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n/* widgets */\n.widget {\n position: relative;\n perspective: 1000px;\n transition: opacity linear 200ms, transform linear 200ms;\n margin-bottom: 14px;\n\n &.scaleout {\n opacity: 0;\n transform: scale(0.5);\n }\n\n & > .front,\n & > .back {\n backface-visibility: hidden;\n transition: 600ms;\n }\n\n &:not(.flipped) {\n & > .front {\n transform: rotateY(0deg);\n\n & > .pane > .icon.settings:hover {\n opacity: 1 !important;\n }\n }\n & > .back {\n transform: rotateY(-180deg);\n }\n\n &:hover > .front > .pane > .icon.settings {\n opacity: 0.8;\n }\n\n & .front > .pane > .icon.settings:focus {\n opacity: 0.8;\n }\n }\n\n &.flipped {\n & > .front {\n transform: rotateY(180deg);\n }\n & > .back {\n transform: rotateY(0deg);\n }\n }\n\n &:not(.flipped) > .back,\n &.flipped > .front {\n opacity: 0;\n }\n\n & > .front {\n & > .pane {\n & > .icon.settings {\n display: flex;\n justify-content: center;\n align-items: center;\n opacity: 0;\n cursor: pointer;\n @include right(12px);\n top: 12px;\n transition: opacity linear 200ms;\n position: absolute;\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n }\n\n & > .spinner.body-loading {\n display: none;\n }\n }\n }\n\n & > .back {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n\n & > .pane {\n background: var(--gray-050);\n\n & > .errors {\n margin-top: 24px;\n }\n }\n }\n\n &.loading {\n & > .front {\n & > .pane {\n & > .spinner.body-loading {\n display: block;\n @include floatright;\n @include margin-left(10px);\n }\n }\n }\n }\n\n &.loading-new.new {\n & > .front {\n & > .pane {\n height: 252px;\n\n & > .spinner.body-loading {\n display: block;\n position: absolute;\n top: calc(50% - 15px);\n left: calc(50% - 12px);\n }\n }\n }\n }\n\n .widget-heading {\n margin-bottom: 15px;\n\n h2 {\n margin-bottom: 3px;\n }\n h5 {\n margin-top: 0;\n }\n }\n\n form + .errors {\n margin-top: 15px;\n }\n}\n\n/* widget lists */\nbody ol.widget__list {\n list-style-type: none;\n margin: 0;\n padding: 0;\n}\n\n.widget__list-item {\n padding: 7px 0;\n\n .craft\\\\widgets\\\\mydrafts & {\n padding: 0;\n }\n}\n\n/* Recent Entries widget */\n.craft\\\\widgets\\\\recententries .body .table {\n table-layout: fixed;\n}\n\n/* New Users Widget */\n.craft\\\\widgets\\\\newusers .chart {\n height: 200px;\n margin: 0;\n}\n\n/* New Widget Menu */\n.newwidgetmenu ul li a {\n position: relative;\n @include padding-left(40px);\n\n .icon {\n position: absolute;\n top: 11px;\n @include left(14px);\n width: 16px;\n }\n}\n\n.newwidgetmenu ul li a .icon svg,\n.widgetmanagerhud-icon svg {\n width: 16px;\n height: 16px;\n @include svg-mask(var(--ui-control-color));\n}\n\n/* New Widget Menu */\n.widgetmanagerhud {\n max-width: 400px;\n\n .body {\n min-width: 400px;\n }\n}\n\n@media only screen and (max-width: 673px) {\n .widgetmanagerhud {\n max-width: 300px;\n\n .body {\n min-width: 300px;\n\n .widgetmanagerhud-col-colspan-picker {\n display: none;\n }\n\n .widgetmanagerhud-col-move {\n display: none;\n }\n }\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/Dashboard.css","mappings":"AAIA,QAIE,mBAFA,8CADA,kBAEA,8QACA,CAEA,iBACE,UACA,uEAGF,6BAEE,8DACA,iCAIA,6BACE,wDAEA,wDACE,oBAGJ,4BACE,8DAGF,wDACE,WAGF,wDACE,WAKF,uBACE,4DAEF,sBACE,wDAIJ,mDAEE,UAKE,oCAGE,8CAEA,eAJA,kCASA,gCARA,sDAEA,UAKA,kBAFA,SACA,+DAGA,+BCwPN,6CACE,UD9PmB,CCgQrB,6CACE,SDjQmB,CAQjB,2CACE,aAKN,cAGE,OAFA,kBACA,MAEA,WAEA,oBACE,2BAEA,4BACE,gBAQA,mDACE,cCiVR,4DACE,YAEF,4DACE,WAcF,4DACE,gBDlWM,CCoWR,4DACE,iBDrWM,CAQJ,qCACE,aAEA,2DACE,cAGA,sBAFA,kBACA,oBACA,CAMR,wBACE,mBAEA,2BACE,kBAEF,2BACE,aAIJ,qBACE,gBAKJ,qBACE,qBACA,SACA,UAGF,mBACE,cAEA,6CACE,UAKJ,4CACE,mBAIF,iCACE,aACA,SAIF,uBACE,kBC2TA,gCACE,iBD3TF,CC6TA,gCACE,kBD9TF,CAEA,6BACE,kBACA,SAEA,WCyIF,sCACE,SD3Ic,CC6IhB,sCACE,UD9Ic,CAKlB,4DAGE,YADA,UACA,CCCA,wkBAQE,4BDRgB,CCShB,eDLJ,kBACE,gBAEA,wBACE,gBAIJ,yCACE,kBACE,gBAEA,wBACE,gBAMA,gHACE","sources":["webpack:///./dashboard.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n/* widgets */\n.widget {\n position: relative;\n perspective: 1000px;\n transition: opacity linear 200ms, transform linear 200ms;\n margin-bottom: 14px;\n\n &.scaleout {\n opacity: 0;\n transform: scale(0.5);\n }\n\n & > .front,\n & > .back {\n backface-visibility: hidden;\n transition: 600ms;\n }\n\n &:not(.flipped) {\n & > .front {\n transform: rotateY(0deg);\n\n & > .pane > .icon.settings:hover {\n opacity: 1 !important;\n }\n }\n & > .back {\n transform: rotateY(-180deg);\n }\n\n &:hover > .front > .pane > .icon.settings {\n opacity: 0.8;\n }\n\n & .front > .pane > .icon.settings:focus {\n opacity: 0.8;\n }\n }\n\n &.flipped {\n & > .front {\n transform: rotateY(180deg);\n }\n & > .back {\n transform: rotateY(0deg);\n }\n }\n\n &:not(.flipped) > .back,\n &.flipped > .front {\n opacity: 0;\n }\n\n & > .front {\n & > .pane {\n & > .icon.settings {\n display: flex;\n justify-content: center;\n align-items: center;\n opacity: 0;\n cursor: pointer;\n @include right(12px);\n top: 12px;\n transition: opacity linear 200ms;\n position: absolute;\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n }\n\n & > .spinner.body-loading {\n display: none;\n }\n }\n }\n\n & > .back {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n\n & > .pane {\n background: var(--gray-050);\n\n & > .errors {\n margin-top: 24px;\n }\n }\n }\n\n &.loading {\n & > .front {\n & > .pane {\n & > .spinner.body-loading {\n display: block;\n @include floatright;\n @include margin-left(10px);\n }\n }\n }\n }\n\n &.loading-new.new {\n & > .front {\n & > .pane {\n height: 252px;\n\n & > .spinner.body-loading {\n display: block;\n position: absolute;\n top: calc(50% - 15px);\n left: calc(50% - 12px);\n }\n }\n }\n }\n\n .widget-heading {\n margin-bottom: 15px;\n\n h2 {\n margin-bottom: 3px;\n }\n h5 {\n margin-top: 0;\n }\n }\n\n form + .errors {\n margin-top: 15px;\n }\n}\n\n/* widget lists */\nbody ol.widget__list {\n list-style-type: none;\n margin: 0;\n padding: 0;\n}\n\n.widget__list-item {\n padding: 7px 0;\n\n .craft\\\\widgets\\\\mydrafts & {\n padding: 0;\n }\n}\n\n/* Recent Entries widget */\n.craft\\\\widgets\\\\recententries .body .table {\n table-layout: fixed;\n}\n\n/* New Users Widget */\n.craft\\\\widgets\\\\newusers .chart {\n height: 200px;\n margin: 0;\n}\n\n/* New Widget Menu */\n.newwidgetmenu ul li a {\n position: relative;\n @include padding-left(40px);\n\n .icon {\n position: absolute;\n top: 11px;\n @include left(14px);\n width: 16px;\n }\n}\n\n.newwidgetmenu ul li a .icon svg,\n.widgetmanagerhud-icon svg {\n width: 16px;\n height: 16px;\n @include svg-mask(var(--ui-control-color));\n}\n\n/* New Widget Menu */\n.widgetmanagerhud {\n max-width: 400px;\n\n .body {\n min-width: 400px;\n }\n}\n\n@media only screen and (max-width: 673px) {\n .widgetmanagerhud {\n max-width: 300px;\n\n .body {\n min-width: 300px;\n\n .widgetmanagerhud-col-colspan-picker {\n display: none;\n }\n\n .widgetmanagerhud-col-move {\n display: none;\n }\n }\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/edittransform/dist/css/transforms.css.map b/src/web/assets/edittransform/dist/css/transforms.css.map index 61d8cb44c9f..cca03c12e69 100644 --- a/src/web/assets/edittransform/dist/css/transforms.css.map +++ b/src/web/assets/edittransform/dist/css/transforms.css.map @@ -1 +1 @@ -{"version":3,"file":"css/transforms.css","mappings":"AAGA,YC4PE,WAHA,WACA,cACA,SAEA,kBDzPF,YAOE,2BANA,cAEA,gBAEA,iBACA,kBAFA,WAGA,CC2ZA,qBACE,WAEF,qBACE,YD5ZJ,sBACE,8DAGF,uCACE,qEAIA,qPAGF,0DAMI,kEAEF,sBACE,0CAEF,0BACE","sources":["webpack:///./transforms.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n#mode:after {\n @include clearafter;\n}\n\n#mode label {\n display: block;\n @include floatleft;\n margin-top: -1px;\n width: 113px;\n padding-top: 85px;\n text-align: center;\n background: no-repeat 50% 0;\n}\n\n#mode label#mode-crop {\n background-image: url(images/crop.jpg);\n}\n\n#mode label#mode-fit {\n background-image: url(images/fit.jpg);\n}\n\n#mode label#mode-stretch {\n background-image: url(images/stretch.jpg);\n}\n\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5),\n only screen and (-moz-min-device-pixel-ratio: 1.5),\n only screen and (-o-min-device-pixel-ratio: 3/2),\n only screen and (min-device-pixel-ratio: 1.5),\n only screen and (min-resolution: 1.5dppx) {\n #mode label {\n background-size: 113px;\n }\n #mode label#mode-crop {\n background-image: url(images/crop_2x.jpg);\n }\n #mode label#mode-fit {\n background-image: url(images/fit_2x.jpg);\n }\n #mode label#mode-stretch {\n background-image: url(images/stretch_2x.jpg);\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/transforms.css","mappings":"AAGA,YC4PE,WAHA,WACA,cACA,SAEA,kBDzPF,YAOE,2BANA,cAEA,gBAEA,iBACA,kBAFA,WAGA,CC2ZA,qBACE,WAEF,qBACE,YD5ZJ,sBACE,8DAGF,uCACE,qEAIA,qPAGF,0DAMI,kEAEF,sBACE,0CAEF,0BACE","sources":["webpack:///./transforms.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n#mode:after {\n @include clearafter;\n}\n\n#mode label {\n display: block;\n @include floatleft;\n margin-top: -1px;\n width: 113px;\n padding-top: 85px;\n text-align: center;\n background: no-repeat 50% 0;\n}\n\n#mode label#mode-crop {\n background-image: url(images/crop.jpg);\n}\n\n#mode label#mode-fit {\n background-image: url(images/fit.jpg);\n}\n\n#mode label#mode-stretch {\n background-image: url(images/stretch.jpg);\n}\n\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5),\n only screen and (-moz-min-device-pixel-ratio: 1.5),\n only screen and (-o-min-device-pixel-ratio: 3/2),\n only screen and (min-device-pixel-ratio: 1.5),\n only screen and (min-resolution: 1.5dppx) {\n #mode label {\n background-size: 113px;\n }\n #mode label#mode-crop {\n background-image: url(images/crop_2x.jpg);\n }\n #mode label#mode-fit {\n background-image: url(images/fit_2x.jpg);\n }\n #mode label#mode-stretch {\n background-image: url(images/stretch_2x.jpg);\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/edituser/dist/css/AccountSettingsForm.css.map b/src/web/assets/edituser/dist/css/AccountSettingsForm.css.map index bee234cdeff..df526ee1cc3 100644 --- a/src/web/assets/edituser/dist/css/AccountSettingsForm.css.map +++ b/src/web/assets/edituser/dist/css/AccountSettingsForm.css.map @@ -1 +1 @@ -{"version":3,"file":"css/AccountSettingsForm.css","mappings":"AA2bE,yBACE,sCAEF,yBACE","sources":["webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/AccountSettingsForm.css","mappings":"AA2bE,yBACE,sCAEF,yBACE","sources":["webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/edituser/dist/css/profile.css.map b/src/web/assets/edituser/dist/css/profile.css.map index 04cb6b7747b..9b1f4fa70fc 100644 --- a/src/web/assets/edituser/dist/css/profile.css.map +++ b/src/web/assets/edituser/dist/css/profile.css.map @@ -1 +1 @@ -{"version":3,"file":"css/profile.css","mappings":"AAGA,eACE,kCACA,sCACA,SAGF,8BACE,kBAGF,oCASE,yCACA,iDALA,WADA,cAEA,YAEA,YALA,OAFA,kBACA,MAKA,UAGA,CAGF,kCAIE,yCADA,cADA,iBADA,eAGA,CAGF,uCACE,kCACA,oDACA,SACA,kBAGF,wCACE,8BAMA,aAJA,YACA,kBACA,MAHA,UAKA,CCqQA,iDACE,MDvQY,CCyQd,iDACE,OD1QY,CAIhB,kDACE,cAGF,wDACE,aAGF,4DACE,qBAGF,wBACE","sources":["webpack:///./profile.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\ndiv.user-photo {\n display: flex;\n flex-wrap: wrap;\n gap: 14px;\n}\n\ndiv.user-photo #current-photo {\n position: relative;\n}\n\ndiv.user-photo #current-photo:after {\n position: absolute;\n top: 0;\n left: 0;\n display: block;\n content: '';\n font-size: 0;\n width: 100%;\n height: 100%;\n border-radius: var(--large-border-radius);\n box-shadow: inset 0 0 0 1px var(--hairline-color);\n}\n\ndiv.user-photo #current-photo img {\n max-width: 100px;\n max-height: 100px;\n display: block;\n border-radius: var(--large-border-radius);\n}\n\ndiv.user-photo div.user-photo-controls {\n display: flex;\n flex-direction: column;\n gap: 14px;\n position: relative;\n}\n\ndiv.user-photo-controls .progress-shade {\n background: transparentize($white, 0.2);\n width: 100%;\n height: 100%;\n position: absolute;\n top: 0;\n @include left(0);\n display: none;\n}\n\ndiv.user-photo-controls.uploading .progress-shade {\n display: block;\n}\n\ndiv.user-photo div.user-photo-controls .upload-photo ul {\n display: none;\n}\n\ndiv.user-photo div.user-photo-controls .QqUploader-uploader {\n display: inline-block;\n}\n\ndiv.profile-image-modal {\n width: 500px;\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/profile.css","mappings":"AAGA,eACE,kCACA,sCACA,SAGF,8BACE,kBAGF,oCASE,yCACA,iDALA,WADA,cAEA,YAEA,YALA,OAFA,kBACA,MAKA,UAGA,CAGF,kCAIE,yCADA,cADA,iBADA,eAGA,CAGF,uCACE,kCACA,oDACA,SACA,kBAGF,wCACE,8BAMA,aAJA,YACA,kBACA,MAHA,UAKA,CCqQA,iDACE,MDvQY,CCyQd,iDACE,OD1QY,CAIhB,kDACE,cAGF,wDACE,aAGF,4DACE,qBAGF,wBACE","sources":["webpack:///./profile.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\ndiv.user-photo {\n display: flex;\n flex-wrap: wrap;\n gap: 14px;\n}\n\ndiv.user-photo #current-photo {\n position: relative;\n}\n\ndiv.user-photo #current-photo:after {\n position: absolute;\n top: 0;\n left: 0;\n display: block;\n content: '';\n font-size: 0;\n width: 100%;\n height: 100%;\n border-radius: var(--large-border-radius);\n box-shadow: inset 0 0 0 1px var(--hairline-color);\n}\n\ndiv.user-photo #current-photo img {\n max-width: 100px;\n max-height: 100px;\n display: block;\n border-radius: var(--large-border-radius);\n}\n\ndiv.user-photo div.user-photo-controls {\n display: flex;\n flex-direction: column;\n gap: 14px;\n position: relative;\n}\n\ndiv.user-photo-controls .progress-shade {\n background: transparentize($white, 0.2);\n width: 100%;\n height: 100%;\n position: absolute;\n top: 0;\n @include left(0);\n display: none;\n}\n\ndiv.user-photo-controls.uploading .progress-shade {\n display: block;\n}\n\ndiv.user-photo div.user-photo-controls .upload-photo ul {\n display: none;\n}\n\ndiv.user-photo div.user-photo-controls .QqUploader-uploader {\n display: inline-block;\n}\n\ndiv.profile-image-modal {\n width: 500px;\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/generalsettings/dist/css/rebrand.css.map b/src/web/assets/generalsettings/dist/css/rebrand.css.map index d092d5705ee..8b2d815595f 100644 --- a/src/web/assets/generalsettings/dist/css/rebrand.css.map +++ b/src/web/assets/generalsettings/dist/css/rebrand.css.map @@ -1 +1 @@ -{"version":3,"file":"css/rebrand.css","mappings":"AAGA,UACE,kCACA,sCACA,SAGF,kBAIE,qBAHA,yCAIA,iDAFA,aADA,WAGA,CAGF,mBACE,kCACA,oDACA,SAGF,mCACE,8BAMA,aAJA,YACA,kBACA,MAHA,UAKA,CCsRA,4CACE,MDxRY,CC0Rd,4CACE,OD3RY,CAIhB,6CACE,cAGF,gBACE","sources":["webpack:///./rebrand.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n.cp-image {\n display: flex;\n flex-wrap: wrap;\n gap: 14px;\n}\n\n.cp-current-image {\n border-radius: var(--large-border-radius);\n width: 100px;\n height: 100px;\n background: no-repeat;\n box-shadow: inset 0 0 0 1px var(--hairline-color);\n}\n\n.cp-image-controls {\n display: flex;\n flex-direction: column;\n gap: 14px;\n}\n\n.cp-image-controls .progress-shade {\n background: transparentize($white, 0.2);\n width: 100%;\n height: 100%;\n position: absolute;\n top: 0;\n @include left(0);\n display: none;\n}\n\n.cp-image-controls.uploading .progress-shade {\n display: block;\n}\n\n.cp-image-modal {\n width: 500px;\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/rebrand.css","mappings":"AAGA,UACE,kCACA,sCACA,SAGF,kBAIE,qBAHA,yCAIA,iDAFA,aADA,WAGA,CAGF,mBACE,kCACA,oDACA,SAGF,mCACE,8BAMA,aAJA,YACA,kBACA,MAHA,UAKA,CCsRA,4CACE,MDxRY,CC0Rd,4CACE,OD3RY,CAIhB,6CACE,cAGF,gBACE","sources":["webpack:///./rebrand.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n.cp-image {\n display: flex;\n flex-wrap: wrap;\n gap: 14px;\n}\n\n.cp-current-image {\n border-radius: var(--large-border-radius);\n width: 100px;\n height: 100px;\n background: no-repeat;\n box-shadow: inset 0 0 0 1px var(--hairline-color);\n}\n\n.cp-image-controls {\n display: flex;\n flex-direction: column;\n gap: 14px;\n}\n\n.cp-image-controls .progress-shade {\n background: transparentize($white, 0.2);\n width: 100%;\n height: 100%;\n position: absolute;\n top: 0;\n @include left(0);\n display: none;\n}\n\n.cp-image-controls.uploading .progress-shade {\n display: block;\n}\n\n.cp-image-modal {\n width: 500px;\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/graphiql/dist/css/graphiql.css.map b/src/web/assets/graphiql/dist/css/graphiql.css.map index 67b56615a8d..5d127e5775e 100644 --- a/src/web/assets/graphiql/dist/css/graphiql.css.map +++ b/src/web/assets/graphiql/dist/css/graphiql.css.map @@ -1 +1 @@ -{"version":3,"file":"css/graphiql.css","mappings":"AAAA,sFAGE,qJACA,eAGA,qBAGF,oBACE,CADF,YACE,2BACA,CADA,kBACA,YACA,SACA,gBACA,WACA,iCAGF,oBACE,CADF,YACE,CACA,cACA,CADA,MACA,CAFA,6BACA,CADA,qBACA,CACA,iBACA,4BAGF,cACE,+BAGF,mBACE,eACA,CAKA,4DAFF,oBACE,CADF,YACE,2BACA,CADA,kBAeA,CAdA,4BAGF,0BACE,CADF,kBACE,+CACA,CADA,2CACA,gCACA,eACA,CAEA,cACA,CADA,MACA,YACA,mBACA,qBACA,yBACA,CADA,gBACA,8BAIA,oBACA,CADA,aADF,kBAEE,uEAGF,8CAEE,CAFF,2CAEE,CACA,+BACA,CAFA,eACA,CACA,iBACA,gBACA,cACA,eACA,eACA,SACA,wBACA,sCAGF,oCACE,kCAIA,cADF,qCAEE,6CAGF,6BACE,6BACA,WACA,qBACA,WACA,oBACA,kBACA,iCACA,CADA,2BACA,CADA,wBACA,UACA,gCAGF,oBACE,CADF,YACE,CACA,cACA,CADA,MACA,CAFA,0BACA,CADA,kBACA,CACA,eACA,CAMA,+DAHF,oBACE,CADF,YACE,CACA,cACA,CADA,OADA,6BACA,CADA,qBAWA,CATA,gCAGF,6BACE,CAGA,sBACA,CADA,cACA,kBACA,2EAGF,eAEE,mCACA,kBACA,UACA,sCAGF,eACE,UACA,yCAGF,iBACE,YACA,UACA,kBACA,MACA,WACA,WACA,sCAOA,YACA,SACA,CANF,cACE,eACA,CAIA,iBAJA,uBACA,4BAIA,uCAGF,cACE,CADF,MACE,kBACA,uCAGF,oBACE,CADF,YACE,8BACA,CADA,qBACA,YACA,kBACA,6CAGF,eACE,gCACA,6BACA,WACA,wBACA,gBACA,mBACA,iBACA,uBACA,yBACA,yBACA,CADA,gBACA,CAMA,uEAGF,cACE,CADF,MACE,YACA,kBACA,6BAGF,kBACE,8BACA,6BACA,iBACA,kBACA,oCAGF,eACE,SACA,YACA,WACA,kBACA,SACA,WACA,0CAKF,kBACE,wDAGF,qBACE,qBACA,kBACA,uMAGF,gBAGE,qCAGF,kBACE,+CACA,CADA,2CACA,SACA,kBACA,sFACA,WAEA,eACA,qBACA,aACA,CAIA,gBAJA,oBACA,qBACA,0BACA,CADA,sBACA,mBAEA,4CAGF,8CACE,CADF,2CACE,sIACA,2CAKF,8CACE,CADF,2CACE,WACA,2CAGF,YACE,mBACA,6CAGF,QACE,6DAIA,6BADF,yBAEE,8DAIA,2BACA,CAFF,wBACE,CACA,gBACA,0CAGF,WACE,qBACA,kBACA,qCAQA,SACA,CANF,8CACE,CADF,2CACE,CACA,gCACA,CAFA,kBACA,CACA,uBACA,eACA,CACA,WACA,SACA,UACA,WACA,yCAGF,mBACE,4CAGF,8CACE,CADF,2CACE,kFACA,uEAIF,iBAEE,0HAGF,eAGE,8DACA,SACA,cACA,kBACA,YACA,sCAKA,UAFF,eACE,SAEA,yCAGF,QACE,gBACA,eACA,SACA,kBACA,8CAGF,kBACE,6CAGF,MACE,eACA,SACA,kBACA,kDAGF,kBACE,mIAGF,cAGE,cACA,YACA,gBACA,gBACA,0BACA,mBACA,qcAGF,kBASE,WACA,oDAIA,SACA,CAFF,cACE,CACA,mBACA,oBACA,sBACA,6KAGF,SAGE,wCAGF,wBACE,iCAGF,aACE,kEACA,eACA,YACA,OACA,kBACA,MACA,WACA,uCAGF,cACE,uCAGF,mBACE,CAMA,YACA,CAPA,aACA,qBACA,CADA,YACA,qJACA,eAGA,CACA,gBACA,gBACA,gBACA,sCACA,CADA,kCACA,qDAGF,YACE,oDAGF,eACE,wCAGF,aACE,eACA,eACA,kBACA,+BAGF,6BACE,CADF,wBACE,CADF,qBACE,qCACA,CADA,+BACA,CADA,4BACA,0CACA,kBACA,sBACA,oBACA,kCAGF,MACE,4BAEE,+BACA,SAGF,kBAEE,qBACA,EAbF,4BAGF,MACE,4BAEE,+BACA,SAGF,kBAEE,qBACA,EAbF,yBAGF,MACE,4BAEE,+BACA,SAGF,kBAEE,qBACA,8BAIJ,qBACE,CACA,QACA,CAFA,iBACA,CAEA,oCACA,CAFA,aACA,CACA,cACA,iBACA,gBACA,UACA,iBACA,2BACA,CADA,uBACA,qBACA,+BAGF,iBACE,iCAGF,eACE,iDAKA,WAFF,cACE,qBAEA,wDAGF,UACE,4CAMA,eACA,+CACA,CADA,2CACA,CAHF,iBACE,CAEA,kEACA,WACA,kBACA,eACA,cACA,aACA,kBACA,kCACA,oEAGF,UACE,0BACA,uEAGF,SACE,aAKF,UACE,iBAKF,UACE,aAKF,aACE,SAKF,aACE,cAKF,aACE,eAKF,aACE,eAKF,aACE,YAKF,aACE,YAKF,aACE,aAKF,aACE,cAKF,aACE,cAKF,aACE,UAKF,aACE,UAKF,aACE,aAKF,UAEE,sBACA,aACA,mBAKF,aACE,iBAGF,aACE,wDAGF,qBAEE,qBAMA,wBACA,CAFF,2BACE,CACA,kBACA,wBAMF,UACE,eACA,oBACA,iBACA,mBACA,0BAGF,UACE,iCAGF,UACE,gCAKF,0BACE,4CAKF,4BACE,iDAGF,eACE,SACA,WACA,kDAGF,SACE,wBAGF,+CACE,CADF,0CACE,CADF,uCACE,SACA,WACA,0BAGF,GACE,eACE,KAEF,eACE,IAEF,eACE,EAXF,oBAGF,GACE,eACE,KAEF,eACE,IAEF,eACE,EAXF,iBAGF,GACE,eACE,KAEF,eACE,IAEF,eACE,UASJ,oBACE,wBACA,mBAGF,0BACE,kBACA,2BAKF,UACE,wBAGF,UACE,0BAGF,UACE,uBAGF,UACE,8BASF,UACE,8BAGF,UACE,2BAGF,UACE,0BAGF,UACE,4BAGF,UACE,CAIA,mDAGF,UACE,2BAGF,UACE,2BAGF,UACE,uBAGF,UACE,6BAGF,UACE,0BAGF,UACE,yBAGF,UACE,sBAGF,UACE,wBAGF,UACE,cAGF,UACE,cAGF,UACE,uBAGF,eAEE,QAGF,iBACE,UAGF,yBACE,mBAGF,4BACE,CAIA,wCAGF,SACE,uBAGF,uBACE,gDAKF,UACE,mDAGF,UACE,yBAGF,6BACE,mCAGF,kBACE,aAQF,eACE,gBACA,kBACA,oBAGF,WACE,oBAGA,mBACA,aACA,0BACA,oBACA,kBACA,mBAGF,mCACE,kBACA,sGAOF,YAIE,kBACA,UACA,wBAGF,iBACE,kBACA,QACA,MACA,wBAGF,QACE,OACA,kBACA,kBACA,8BAIA,SADF,OAEE,2BAIA,SADF,MAEE,qBAKA,MACA,CAHF,eACE,kBACA,CACA,KACA,UACA,oBAGF,oBACE,YACA,oBACA,mBACA,mBACA,4BAGF,yBACE,sBACA,kBACA,UACA,+BAKA,QACA,CAHF,iBACE,MACA,CACA,SACA,wBAGF,cACE,kBACA,UACA,4BAGF,wBACE,CADF,gBACE,mBAGF,WACE,eACA,iBAGF,yCACE,CAaA,gBACA,CAdA,sBAEA,gBACA,eACA,cACA,oBACA,kBACA,oCACA,CADA,2BACA,oBACA,SACA,iBACA,kBACA,gBACA,CACA,SACA,sBAGF,oBACE,qBACA,kBACA,4BAOA,QACA,CAJA,MACA,CAFF,iBACE,CACA,OACA,MACA,CACA,SACA,wBAGF,aACE,kBACA,UACA,kBAMF,YACE,oGAKF,sBAKE,qBAGF,QACE,gBACA,kBACA,kBACA,WACA,oBAGF,iBACE,yBAGF,eACE,wBAGF,iBACE,kBACA,UACA,CAIA,sEAGF,kBACE,sBAGF,kBACE,0CAGF,kBACE,uBAGF,gBACE,oGAGF,kBAGE,mHAGF,kBAGE,eAGF,eACE,8BACA,kBAKF,kBACE,cAGF,mCAEE,iBACE,0BAMJ,UACE,8BAKF,eACE,oBAGF,kBACE,cACA,OACA,CACA,eACA,kBACA,kBACA,CAJA,OACA,CAGA,UACA,wBAGF,4BACE,MACA,2BAGF,yBACE,SACA,0BAGF,sBACE,yBACA,cACA,sBACA,aACA,WACA,2BAGF,aACE,wBAGF,UACE,eACA,kBACA,eACA,oFACA,wBAGF,UACE,2DAEF,cAEE,mCAEF,WACE,qCAEF,WACE,kBAGF,eACE,kBACA,qCACA,sBACA,WACA,qJACA,eAGA,iBACA,gBACA,gBACA,UACA,gBACA,YACA,eACA,2BACA,CADA,uBACA,WACA,+BAGF,YACE,8BAGF,eACE,oBAGF,YACE,oCAGF,UACE,iBACA,eACA,gBACA,gBACA,oCAGF,kBACE,wCACA,cACA,iBACA,CACA,oBACA,gBACA,gBACA,YACA,0CAGF,aACE,eACA,cACA,cACA,gBACA,mBACA,cACA,mBACA,yBACA,yBACA,CADA,gBACA,4CAGF,YACE,oBAGF,oBACE,0BAGF,yBACE,6BAGF,aACE,8BAGF,aACE,8BAGF,aACE,4BAGF,aACE,kCAGF,aACE,wBAIA,eADF,yBAEE,0BAIF,UACE,0BAEF,+BACE,CACA,qBACA,CAFA,6BACA,CACA,cACA,sBACA,eACA,gBACA,UACA,gBACA,gBACA,eACA,0BACA,CADA,sBACA,qBACA,YACA,2DAEF,0BAEE,2BACA,6BAEF,gTAWE,+BAEA,4UAYA,+DAEF,uBAEE,4BAEF,gDACE,wCACA,4EAGA,uBAKI,CAAJ,2BAEA,gYASA,kEAEA,oWAaA,sPACE,8BAKF,4BACA,0EACA,2BAEA,+CAGA,kCAEA,+BAGA,sBAGF,8BACE,8CAGA,0CAGA,uCAIF,CASE,mCAEA,CALF,kBACE,CAEA,kCAEA,qBAGF,8BACE,sBACA,WACA,6BAGF,iCACE,uBACA,oCACA,oIACA,yBAGA,sBAEA,iCAEA,0BACA,2DAKA,4BAEA,yBACA,oBACA,eACA,qCAEA,kEACA,gBAGF,eACE,2BAGF,gBACE,4CAIA,sFAGF,yBAEE,gCACA,CACA,0CAEA,qBACA,kCACA,wFAGF,kBAEE,UACA,0CAEA,8BACA,oCACA,+CACA,wCACA,cAGF,qJAME,eACA,iBAEA,eACA,4CAGF,iDAIA,6BACE,2CAEA,mBACA,cACA,mBACA,yBACA,6FAEA,sDAIA,qJAQA,cACA,qBACA,aACA,YACA,iBACA,sCAGF,yBACE,2GAGF,QAEE,0DAGF,CACE,2CACA,gDAGF,iBACE,2DAQA,sBALF,aACE,gBAIA,iBAJA,yCAGF,4BACE,6GAGF,mFAKE,6BACA,4CACA,mBACA,kBACA,iCACA,4BAGA,yBACA,oJAMA,qBACA,6DACA,CACA,mCACA,6DAIA,eAGF,0HAME,YACA,8CAEA,cACA,CADA,oBACA,oDAIA,yBACA,yDAIA,cAIA,wDAIA,4LAWA,oDAOF,CAEE,qBAFF,cACE,CACA,gEADA,mBACA,mBAGF,cAGE,YANA,sD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","sources":["webpack:///../../../../../node_modules/graphiql/graphiql.css","webpack:///./graphiql.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":[".graphiql-container,\n.graphiql-container button,\n.graphiql-container input {\n color: #141823;\n font-family: system, -apple-system, 'San Francisco', '.SFNSDisplay-Regular',\n 'Segoe UI', Segoe, 'Segoe WP', 'Helvetica Neue', helvetica, 'Lucida Grande',\n arial, sans-serif;\n font-size: 14px;\n}\n\n.graphiql-container {\n display: flex;\n flex-direction: row;\n height: 100%;\n margin: 0;\n overflow: hidden;\n width: 100%;\n}\n\n.graphiql-container .editorWrap {\n display: flex;\n flex-direction: column;\n flex: 1;\n overflow-x: hidden;\n}\n\n.graphiql-container .title {\n font-size: 18px;\n}\n\n.graphiql-container .title em {\n font-family: georgia;\n font-size: 19px;\n}\n\n.graphiql-container .topBarWrap {\n display: flex;\n flex-direction: row;\n}\n\n.graphiql-container .topBar {\n align-items: center;\n background: linear-gradient(#f7f7f7, #e2e2e2);\n border-bottom: 1px solid #d0d0d0;\n cursor: default;\n display: flex;\n flex-direction: row;\n flex: 1;\n height: 34px;\n overflow-y: visible;\n padding: 7px 14px 6px;\n user-select: none;\n}\n\n.graphiql-container .toolbar {\n overflow-x: visible;\n display: flex;\n}\n\n.graphiql-container .docExplorerShow,\n.graphiql-container .historyShow {\n background: linear-gradient(#f7f7f7, #e2e2e2);\n border-radius: 0;\n border-bottom: 1px solid #d0d0d0;\n border-right: none;\n border-top: none;\n color: #3b5998;\n cursor: pointer;\n font-size: 14px;\n margin: 0;\n padding: 2px 20px 0 18px;\n}\n\n.graphiql-container .docExplorerShow {\n border-left: 1px solid rgba(0, 0, 0, 0.2);\n}\n\n.graphiql-container .historyShow {\n border-right: 1px solid rgba(0, 0, 0, 0.2);\n border-left: 0;\n}\n\n.graphiql-container .docExplorerShow:before {\n border-left: 2px solid #3b5998;\n border-top: 2px solid #3b5998;\n content: '';\n display: inline-block;\n height: 9px;\n margin: 0 3px -1px 0;\n position: relative;\n transform: rotate(-45deg);\n width: 9px;\n}\n\n.graphiql-container .editorBar {\n display: flex;\n flex-direction: row;\n flex: 1;\n max-height: 100%;\n}\n\n.graphiql-container .queryWrap {\n display: flex;\n flex-direction: column;\n flex: 1;\n}\n\n.graphiql-container .resultWrap {\n border-left: solid 1px #e0e0e0;\n display: flex;\n flex-direction: column;\n flex: 1;\n flex-basis: 1em;\n position: relative;\n}\n\n.graphiql-container .docExplorerWrap,\n.graphiql-container .historyPaneWrap {\n background: white;\n box-shadow: 0 0 8px rgba(0, 0, 0, 0.15);\n position: relative;\n z-index: 3;\n}\n\n.graphiql-container .historyPaneWrap {\n min-width: 230px;\n z-index: 5;\n}\n\n.graphiql-container .docExplorerResizer {\n cursor: col-resize;\n height: 100%;\n left: -5px;\n position: absolute;\n top: 0;\n width: 10px;\n z-index: 10;\n}\n\n.graphiql-container .docExplorerHide {\n cursor: pointer;\n font-size: 18px;\n margin: -7px -8px -6px 0;\n padding: 18px 16px 15px 12px;\n background: 0;\n border: 0;\n line-height: 14px;\n}\n\n.graphiql-container div .query-editor {\n flex: 1;\n position: relative;\n}\n\n.graphiql-container .secondary-editor {\n display: flex;\n flex-direction: column;\n height: 30px;\n position: relative;\n}\n\n.graphiql-container .secondary-editor-title {\n background: #eeeeee;\n border-bottom: 1px solid #d6d6d6;\n border-top: 1px solid #e0e0e0;\n color: #777;\n font-variant: small-caps;\n font-weight: bold;\n letter-spacing: 1px;\n line-height: 14px;\n padding: 6px 0 8px 43px;\n text-transform: lowercase;\n user-select: none;\n}\n\n.graphiql-container .codemirrorWrap {\n flex: 1;\n height: 100%;\n position: relative;\n}\n\n.graphiql-container .result-window {\n flex: 1;\n height: 100%;\n position: relative;\n}\n\n.graphiql-container .footer {\n background: #f6f7f8;\n border-left: 1px solid #e0e0e0;\n border-top: 1px solid #e0e0e0;\n margin-left: 12px;\n position: relative;\n}\n\n.graphiql-container .footer:before {\n background: #eeeeee;\n bottom: 0;\n content: ' ';\n left: -13px;\n position: absolute;\n top: -1px;\n width: 12px;\n}\n\n/* No `.graphiql-container` here so themes can overwrite */\n\n.result-window .CodeMirror.cm-s-graphiql {\n background: #f6f7f8;\n}\n\n.graphiql-container .result-window .CodeMirror-gutters {\n background-color: #eeeeee;\n border-color: #e0e0e0;\n cursor: col-resize;\n}\n\n.graphiql-container .result-window .CodeMirror-foldgutter,\n.graphiql-container .result-window .CodeMirror-foldgutter-open:after,\n.graphiql-container .result-window .CodeMirror-foldgutter-folded:after {\n padding-left: 3px;\n}\n\n.graphiql-container .toolbar-button {\n background: #fdfdfd;\n background: linear-gradient(#f9f9f9, #ececec);\n border: 0;\n border-radius: 3px;\n box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2),\n 0 1px 0 rgba(255, 255, 255, 0.7), inset 0 1px #fff;\n color: #555;\n cursor: pointer;\n display: inline-block;\n margin: 0 5px;\n padding: 3px 11px 5px;\n text-decoration: none;\n text-overflow: ellipsis;\n white-space: nowrap;\n max-width: 150px;\n}\n\n.graphiql-container .toolbar-button:active {\n background: linear-gradient(#ececec, #d5d5d5);\n box-shadow: 0 1px 0 rgba(255, 255, 255, 0.7),\n inset 0 0 0 1px rgba(0, 0, 0, 0.1), inset 0 1px 1px 1px rgba(0, 0, 0, 0.12),\n inset 0 0 5px rgba(0, 0, 0, 0.1);\n}\n\n.graphiql-container .toolbar-button.error {\n background: linear-gradient(#fdf3f3, #e6d6d7);\n color: #b00;\n}\n\n.graphiql-container .toolbar-button-group {\n margin: 0 5px;\n white-space: nowrap;\n}\n\n.graphiql-container .toolbar-button-group > * {\n margin: 0;\n}\n\n.graphiql-container .toolbar-button-group > *:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.graphiql-container .toolbar-button-group > *:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n margin-left: -1px;\n}\n\n.graphiql-container .execute-button-wrap {\n height: 34px;\n margin: 0 14px 0 28px;\n position: relative;\n}\n\n.graphiql-container .execute-button {\n background: linear-gradient(#fdfdfd, #d2d3d6);\n border-radius: 17px;\n border: 1px solid rgba(0, 0, 0, 0.25);\n box-shadow: 0 1px 0 #fff;\n cursor: pointer;\n fill: #444;\n height: 34px;\n margin: 0;\n padding: 0;\n width: 34px;\n}\n\n.graphiql-container .execute-button svg {\n pointer-events: none;\n}\n\n.graphiql-container .execute-button:active {\n background: linear-gradient(#e6e6e6, #c3c3c3);\n box-shadow: 0 1px 0 #fff, inset 0 0 2px rgba(0, 0, 0, 0.2),\n inset 0 0 6px rgba(0, 0, 0, 0.1);\n}\n\n.graphiql-container .toolbar-menu,\n.graphiql-container .toolbar-select {\n position: relative;\n}\n\n.graphiql-container .execute-options,\n.graphiql-container .toolbar-menu-items,\n.graphiql-container .toolbar-select-options {\n background: #fff;\n box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.25);\n margin: 0;\n padding: 6px 0;\n position: absolute;\n z-index: 100;\n}\n\n.graphiql-container .execute-options {\n min-width: 100px;\n top: 37px;\n left: -1px;\n}\n\n.graphiql-container .toolbar-menu-items {\n left: 1px;\n margin-top: -1px;\n min-width: 110%;\n top: 100%;\n visibility: hidden;\n}\n\n.graphiql-container .toolbar-menu-items.open {\n visibility: visible;\n}\n\n.graphiql-container .toolbar-select-options {\n left: 0;\n min-width: 100%;\n top: -5px;\n visibility: hidden;\n}\n\n.graphiql-container .toolbar-select-options.open {\n visibility: visible;\n}\n\n.graphiql-container .execute-options > li,\n.graphiql-container .toolbar-menu-items > li,\n.graphiql-container .toolbar-select-options > li {\n cursor: pointer;\n display: block;\n margin: none;\n max-width: 300px;\n overflow: hidden;\n padding: 2px 20px 4px 11px;\n white-space: nowrap;\n}\n\n.graphiql-container .execute-options > li.selected,\n.graphiql-container .toolbar-menu-items > li.hover,\n.graphiql-container .toolbar-menu-items > li:active,\n.graphiql-container .toolbar-menu-items > li:hover,\n.graphiql-container .toolbar-select-options > li.hover,\n.graphiql-container .toolbar-select-options > li:active,\n.graphiql-container .toolbar-select-options > li:hover,\n.graphiql-container .history-contents > li:hover,\n.graphiql-container .history-contents > li:active {\n background: #e10098;\n color: #fff;\n}\n\n.graphiql-container .toolbar-select-options > li > svg {\n display: inline;\n fill: #666;\n margin: 0 -6px 0 6px;\n pointer-events: none;\n vertical-align: middle;\n}\n\n.graphiql-container .toolbar-select-options > li.hover > svg,\n.graphiql-container .toolbar-select-options > li:active > svg,\n.graphiql-container .toolbar-select-options > li:hover > svg {\n fill: #fff;\n}\n\n.graphiql-container .CodeMirror-scroll {\n overflow-scrolling: touch;\n}\n\n.graphiql-container .CodeMirror {\n color: #141823;\n font-family: 'Consolas', 'Inconsolata', 'Droid Sans Mono', 'Monaco', monospace;\n font-size: 13px;\n height: 100%;\n left: 0;\n position: absolute;\n top: 0;\n width: 100%;\n}\n\n.graphiql-container .CodeMirror-lines {\n padding: 20px 0;\n}\n\n.CodeMirror-hint-information .content {\n box-orient: vertical;\n color: #141823;\n display: flex;\n font-family: system, -apple-system, 'San Francisco', '.SFNSDisplay-Regular',\n 'Segoe UI', Segoe, 'Segoe WP', 'Helvetica Neue', helvetica, 'Lucida Grande',\n arial, sans-serif;\n font-size: 13px;\n line-clamp: 3;\n line-height: 16px;\n max-height: 48px;\n overflow: hidden;\n text-overflow: -o-ellipsis-lastline;\n}\n\n.CodeMirror-hint-information .content p:first-child {\n margin-top: 0;\n}\n\n.CodeMirror-hint-information .content p:last-child {\n margin-bottom: 0;\n}\n\n.CodeMirror-hint-information .infoType {\n color: #ca9800;\n cursor: pointer;\n display: inline;\n margin-right: 0.5em;\n}\n\n.autoInsertedLeaf.cm-property {\n animation-duration: 6s;\n animation-name: insertionFade;\n border-bottom: 2px solid rgba(255, 255, 255, 0);\n border-radius: 2px;\n margin: -2px -4px -1px;\n padding: 2px 4px 1px;\n}\n\n@keyframes insertionFade {\n from,\n to {\n background: rgba(255, 255, 255, 0);\n border-color: rgba(255, 255, 255, 0);\n }\n\n 15%,\n 85% {\n background: #fbffc9;\n border-color: #f0f3c0;\n }\n}\n\ndiv.CodeMirror-lint-tooltip {\n background-color: white;\n border-radius: 2px;\n border: 0;\n color: #141823;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.45);\n font-size: 13px;\n line-height: 16px;\n max-width: 430px;\n opacity: 0;\n padding: 8px 10px;\n transition: opacity 0.15s;\n white-space: pre-wrap;\n}\n\ndiv.CodeMirror-lint-tooltip > * {\n padding-left: 23px;\n}\n\ndiv.CodeMirror-lint-tooltip > * + * {\n margin-top: 12px;\n}\n\n.graphiql-container .variable-editor-title-text {\n cursor: pointer;\n display: inline-block;\n color: gray;\n}\n\n.graphiql-container .variable-editor-title-text.active {\n color: #000;\n}\n\n/* COLORS */\n\n.graphiql-container .CodeMirror-foldmarker {\n border-radius: 4px;\n background: #08f;\n background: linear-gradient(#43a8ff, #0f83e8);\n box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2), inset 0 0 0 1px rgba(0, 0, 0, 0.1);\n color: white;\n font-family: arial;\n font-size: 12px;\n line-height: 0;\n margin: 0 3px;\n padding: 0px 4px 1px;\n text-shadow: 0 -1px rgba(0, 0, 0, 0.1);\n}\n\n.graphiql-container div.CodeMirror span.CodeMirror-matchingbracket {\n color: #555;\n text-decoration: underline;\n}\n\n.graphiql-container div.CodeMirror span.CodeMirror-nonmatchingbracket {\n color: #f00;\n}\n\n/* Comment */\n\n.cm-comment {\n color: #666;\n}\n\n/* Punctuation */\n\n.cm-punctuation {\n color: #555;\n}\n\n/* Keyword */\n\n.cm-keyword {\n color: #b11a04;\n}\n\n/* OperationName, FragmentName */\n\n.cm-def {\n color: #d2054e;\n}\n\n/* FieldName */\n\n.cm-property {\n color: #1f61a0;\n}\n\n/* FieldAlias */\n\n.cm-qualifier {\n color: #1c92a9;\n}\n\n/* ArgumentName and ObjectFieldName */\n\n.cm-attribute {\n color: #8b2bb9;\n}\n\n/* Number */\n\n.cm-number {\n color: #2882f9;\n}\n\n/* String */\n\n.cm-string {\n color: #d64292;\n}\n\n/* Boolean */\n\n.cm-builtin {\n color: #d47509;\n}\n\n/* EnumValue */\n\n.cm-string-2 {\n color: #0b7fc7;\n}\n\n/* Variable */\n\n.cm-variable {\n color: #397d13;\n}\n\n/* Directive */\n\n.cm-meta {\n color: #b33086;\n}\n\n/* Type */\n\n.cm-atom {\n color: #ca9800;\n}\n\n/* BASICS */\n\n.CodeMirror {\n /* Set height, width, borders, and global font properties here */\n color: black;\n font-family: monospace;\n height: 300px;\n}\n\n/* PADDING */\n\n.CodeMirror-lines {\n padding: 4px 0; /* Vertical padding around content */\n}\n\n.CodeMirror pre {\n padding: 0 4px; /* Horizontal padding of content */\n}\n\n.CodeMirror-scrollbar-filler,\n.CodeMirror-gutter-filler {\n background-color: white; /* The little square between H and V scrollbars */\n}\n\n/* GUTTER */\n\n.CodeMirror-gutters {\n border-right: 1px solid #ddd;\n background-color: #f7f7f7;\n white-space: nowrap;\n}\n\n.CodeMirror-linenumbers {\n}\n\n.CodeMirror-linenumber {\n color: #666;\n min-width: 20px;\n padding: 0 3px 0 5px;\n text-align: right;\n white-space: nowrap;\n}\n\n.CodeMirror-guttermarker {\n color: black;\n}\n\n.CodeMirror-guttermarker-subtle {\n color: #666;\n}\n\n/* CURSOR */\n\n.CodeMirror .CodeMirror-cursor {\n border-left: 1px solid black;\n}\n\n/* Shown when moving in bi-directional text */\n\n.CodeMirror div.CodeMirror-secondarycursor {\n border-left: 1px solid silver;\n}\n\n.CodeMirror.cm-fat-cursor div.CodeMirror-cursor {\n background: #7e7;\n border: 0;\n width: auto;\n}\n\n.CodeMirror.cm-fat-cursor div.CodeMirror-cursors {\n z-index: 1;\n}\n\n.cm-animate-fat-cursor {\n animation: blink 1.06s steps(1) infinite;\n border: 0;\n width: auto;\n}\n\n@keyframes blink {\n 0% {\n background: #7e7;\n }\n 50% {\n background: none;\n }\n 100% {\n background: #7e7;\n }\n}\n\n/* Can style cursor different in overwrite (non-insert) mode */\n\ndiv.CodeMirror-overwrite div.CodeMirror-cursor {\n}\n\n.cm-tab {\n display: inline-block;\n text-decoration: inherit;\n}\n\n.CodeMirror-ruler {\n border-left: 1px solid #ccc;\n position: absolute;\n}\n\n/* DEFAULT THEME */\n\n.cm-s-default .cm-keyword {\n color: #708;\n}\n\n.cm-s-default .cm-atom {\n color: #219;\n}\n\n.cm-s-default .cm-number {\n color: #164;\n}\n\n.cm-s-default .cm-def {\n color: #00f;\n}\n\n.cm-s-default .cm-variable,\n.cm-s-default .cm-punctuation,\n.cm-s-default .cm-property,\n.cm-s-default .cm-operator {\n}\n\n.cm-s-default .cm-variable-2 {\n color: #05a;\n}\n\n.cm-s-default .cm-variable-3 {\n color: #085;\n}\n\n.cm-s-default .cm-comment {\n color: #a50;\n}\n\n.cm-s-default .cm-string {\n color: #a11;\n}\n\n.cm-s-default .cm-string-2 {\n color: #f50;\n}\n\n.cm-s-default .cm-meta {\n color: #555;\n}\n\n.cm-s-default .cm-qualifier {\n color: #555;\n}\n\n.cm-s-default .cm-builtin {\n color: #30a;\n}\n\n.cm-s-default .cm-bracket {\n color: #666;\n}\n\n.cm-s-default .cm-tag {\n color: #170;\n}\n\n.cm-s-default .cm-attribute {\n color: #00c;\n}\n\n.cm-s-default .cm-header {\n color: blue;\n}\n\n.cm-s-default .cm-quote {\n color: #090;\n}\n\n.cm-s-default .cm-hr {\n color: #666;\n}\n\n.cm-s-default .cm-link {\n color: #00c;\n}\n\n.cm-negative {\n color: #d44;\n}\n\n.cm-positive {\n color: #292;\n}\n\n.cm-header,\n.cm-strong {\n font-weight: bold;\n}\n\n.cm-em {\n font-style: italic;\n}\n\n.cm-link {\n text-decoration: underline;\n}\n\n.cm-strikethrough {\n text-decoration: line-through;\n}\n\n.cm-s-default .cm-error {\n color: #f00;\n}\n\n.cm-invalidchar {\n color: #f00;\n}\n\n.CodeMirror-composing {\n border-bottom: 2px solid;\n}\n\n/* Default styles for common addons */\n\ndiv.CodeMirror span.CodeMirror-matchingbracket {\n color: #0f0;\n}\n\ndiv.CodeMirror span.CodeMirror-nonmatchingbracket {\n color: #f22;\n}\n\n.CodeMirror-matchingtag {\n background: rgba(255, 150, 0, 0.3);\n}\n\n.CodeMirror-activeline-background {\n background: #e8f2ff;\n}\n\n/* STOP */\n\n/* The rest of this file contains styles related to the mechanics of\n the editor. You probably shouldn't touch them. */\n\n.CodeMirror {\n background: white;\n overflow: hidden;\n position: relative;\n}\n\n.CodeMirror-scroll {\n height: 100%;\n /* 30px is the magic margin used to hide the element's real scrollbars */\n /* See overflow: hidden in .CodeMirror */\n margin-bottom: -30px;\n margin-right: -30px;\n outline: none; /* Prevent dragging from highlighting the element */\n overflow: scroll !important; /* Things will break if this is overridden */\n padding-bottom: 30px;\n position: relative;\n}\n\n.CodeMirror-sizer {\n border-right: 30px solid transparent;\n position: relative;\n}\n\n/* The fake, visible scrollbars. Used to force redraw during scrolling\n before actual scrolling happens, thus preventing shaking and\n flickering artifacts. */\n\n.CodeMirror-vscrollbar,\n.CodeMirror-hscrollbar,\n.CodeMirror-scrollbar-filler,\n.CodeMirror-gutter-filler {\n display: none;\n position: absolute;\n z-index: 6;\n}\n\n.CodeMirror-vscrollbar {\n overflow-x: hidden;\n overflow-y: scroll;\n right: 0;\n top: 0;\n}\n\n.CodeMirror-hscrollbar {\n bottom: 0;\n left: 0;\n overflow-x: scroll;\n overflow-y: hidden;\n}\n\n.CodeMirror-scrollbar-filler {\n right: 0;\n bottom: 0;\n}\n\n.CodeMirror-gutter-filler {\n left: 0;\n bottom: 0;\n}\n\n.CodeMirror-gutters {\n min-height: 100%;\n position: absolute;\n left: 0;\n top: 0;\n z-index: 3;\n}\n\n.CodeMirror-gutter {\n display: inline-block;\n height: 100%;\n margin-bottom: -30px;\n vertical-align: top;\n white-space: normal;\n}\n\n.CodeMirror-gutter-wrapper {\n background: none !important;\n border: none !important;\n position: absolute;\n z-index: 4;\n}\n\n.CodeMirror-gutter-background {\n position: absolute;\n top: 0;\n bottom: 0;\n z-index: 4;\n}\n\n.CodeMirror-gutter-elt {\n cursor: default;\n position: absolute;\n z-index: 4;\n}\n\n.CodeMirror-gutter-wrapper {\n user-select: none;\n}\n\n.CodeMirror-lines {\n cursor: text;\n min-height: 1px; /* prevents collapsing before first draw */\n}\n\n.CodeMirror pre {\n -webkit-tap-highlight-color: transparent;\n /* Reset some styles that the rest of the page might have set */\n background: transparent;\n border-radius: 0;\n border-width: 0;\n color: inherit;\n font-family: inherit;\n font-size: inherit;\n font-variant-ligatures: none;\n line-height: inherit;\n margin: 0;\n overflow: visible;\n position: relative;\n white-space: pre;\n word-wrap: normal;\n z-index: 2;\n}\n\n.CodeMirror-wrap pre {\n word-wrap: break-word;\n white-space: pre-wrap;\n word-break: normal;\n}\n\n.CodeMirror-linebackground {\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n z-index: 0;\n}\n\n.CodeMirror-linewidget {\n overflow: auto;\n position: relative;\n z-index: 2;\n}\n\n.CodeMirror-widget {\n}\n\n.CodeMirror-code {\n outline: none;\n}\n\n/* Force content-box sizing for the elements where we expect it */\n\n.CodeMirror-scroll,\n.CodeMirror-sizer,\n.CodeMirror-gutter,\n.CodeMirror-gutters,\n.CodeMirror-linenumber {\n box-sizing: content-box;\n}\n\n.CodeMirror-measure {\n height: 0;\n overflow: hidden;\n position: absolute;\n visibility: hidden;\n width: 100%;\n}\n\n.CodeMirror-cursor {\n position: absolute;\n}\n\n.CodeMirror-measure pre {\n position: static;\n}\n\ndiv.CodeMirror-cursors {\n position: relative;\n visibility: hidden;\n z-index: 3;\n}\n\ndiv.CodeMirror-dragcursors {\n visibility: visible;\n}\n\n.CodeMirror-focused div.CodeMirror-cursors {\n visibility: visible;\n}\n\n.CodeMirror-selected {\n background: #d9d9d9;\n}\n\n.CodeMirror-focused .CodeMirror-selected {\n background: #d7d4f0;\n}\n\n.CodeMirror-crosshair {\n cursor: crosshair;\n}\n\n.CodeMirror-line::selection,\n.CodeMirror-line > span::selection,\n.CodeMirror-line > span > span::selection {\n background: #d7d4f0;\n}\n\n.CodeMirror-line::-moz-selection,\n.CodeMirror-line > span::-moz-selection,\n.CodeMirror-line > span > span::-moz-selection {\n background: #d7d4f0;\n}\n\n.cm-searching {\n background: #ffa;\n background: rgba(255, 255, 0, 0.4);\n}\n\n/* Used to force a border model for a node */\n\n.cm-force-border {\n padding-right: 0.1px;\n}\n\n@media print {\n /* Hide the cursor when printing */\n .CodeMirror div.CodeMirror-cursors {\n visibility: hidden;\n }\n}\n\n/* See issue #2901 */\n\n.cm-tab-wrap-hack:after {\n content: '';\n}\n\n/* Help users use markselection to safely style text background */\n\nspan.CodeMirror-selectedtext {\n background: none;\n}\n\n.CodeMirror-dialog {\n background: inherit;\n color: inherit;\n left: 0;\n right: 0;\n overflow: hidden;\n padding: 0.1em 0.8em;\n position: absolute;\n z-index: 15;\n}\n\n.CodeMirror-dialog-top {\n border-bottom: 1px solid #eee;\n top: 0;\n}\n\n.CodeMirror-dialog-bottom {\n border-top: 1px solid #eee;\n bottom: 0;\n}\n\n.CodeMirror-dialog input {\n background: transparent;\n border: 1px solid #d3d6db;\n color: inherit;\n font-family: monospace;\n outline: none;\n width: 20em;\n}\n\n.CodeMirror-dialog button {\n font-size: 70%;\n}\n\n.CodeMirror-foldmarker {\n color: blue;\n cursor: pointer;\n font-family: arial;\n line-height: 0.3;\n text-shadow: #b9f 1px 1px 2px, #b9f -1px -1px 2px, #b9f 1px -1px 2px,\n #b9f -1px 1px 2px;\n}\n.CodeMirror-foldgutter {\n width: 0.7em;\n}\n.CodeMirror-foldgutter-open,\n.CodeMirror-foldgutter-folded {\n cursor: pointer;\n}\n.CodeMirror-foldgutter-open:after {\n content: '\\25BE';\n}\n.CodeMirror-foldgutter-folded:after {\n content: '\\25B8';\n}\n\n.CodeMirror-info {\n background: white;\n border-radius: 2px;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.45);\n box-sizing: border-box;\n color: #555;\n font-family: system, -apple-system, 'San Francisco', '.SFNSDisplay-Regular',\n 'Segoe UI', Segoe, 'Segoe WP', 'Helvetica Neue', helvetica, 'Lucida Grande',\n arial, sans-serif;\n font-size: 13px;\n line-height: 16px;\n margin: 8px -8px;\n max-width: 400px;\n opacity: 0;\n overflow: hidden;\n padding: 8px 8px;\n position: fixed;\n transition: opacity 0.15s;\n z-index: 50;\n}\n\n.CodeMirror-info :first-child {\n margin-top: 0;\n}\n\n.CodeMirror-info :last-child {\n margin-bottom: 0;\n}\n\n.CodeMirror-info p {\n margin: 1em 0;\n}\n\n.CodeMirror-info .info-description {\n color: #777;\n line-height: 16px;\n margin-top: 1em;\n max-height: 80px;\n overflow: hidden;\n}\n\n.CodeMirror-info .info-deprecation {\n background: #fffae8;\n box-shadow: inset 0 1px 1px -1px #bfb063;\n color: #867f70;\n line-height: 16px;\n margin: -8px;\n margin-top: 8px;\n max-height: 80px;\n overflow: hidden;\n padding: 8px;\n}\n\n.CodeMirror-info .info-deprecation-label {\n color: #c79b2e;\n cursor: default;\n display: block;\n font-size: 9px;\n font-weight: bold;\n letter-spacing: 1px;\n line-height: 1;\n padding-bottom: 5px;\n text-transform: uppercase;\n user-select: none;\n}\n\n.CodeMirror-info .info-deprecation-label + * {\n margin-top: 0;\n}\n\n.CodeMirror-info a {\n text-decoration: none;\n}\n\n.CodeMirror-info a:hover {\n text-decoration: underline;\n}\n\n.CodeMirror-info .type-name {\n color: #ca9800;\n}\n\n.CodeMirror-info .field-name {\n color: #1f61a0;\n}\n\n.CodeMirror-info .enum-value {\n color: #0b7fc7;\n}\n\n.CodeMirror-info .arg-name {\n color: #8b2bb9;\n}\n\n.CodeMirror-info .directive-name {\n color: #b33086;\n}\n\n.CodeMirror-jump-token {\n text-decoration: underline;\n cursor: pointer;\n}\n\n/* The lint marker gutter */\n.CodeMirror-lint-markers {\n width: 16px;\n}\n.CodeMirror-lint-tooltip {\n background-color: infobackground;\n border-radius: 4px 4px 4px 4px;\n border: 1px solid black;\n color: infotext;\n font-family: monospace;\n font-size: 10pt;\n max-width: 600px;\n opacity: 0;\n overflow: hidden;\n padding: 2px 5px;\n position: fixed;\n transition: opacity 0.4s;\n white-space: pre-wrap;\n z-index: 100;\n}\n.CodeMirror-lint-mark-error,\n.CodeMirror-lint-mark-warning {\n background-position: left bottom;\n background-repeat: repeat-x;\n}\n.CodeMirror-lint-mark-error {\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAADCAYAAAC09K7GAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9sJDw4cOCW1/KIAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAHElEQVQI12NggIL/DAz/GdA5/xkY/qPKMDAwAADLZwf5rvm+LQAAAABJRU5ErkJggg==');\n}\n.CodeMirror-lint-mark-warning {\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAADCAYAAAC09K7GAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9sJFhQXEbhTg7YAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAMklEQVQI12NkgIIvJ3QXMjAwdDN+OaEbysDA4MPAwNDNwMCwiOHLCd1zX07o6kBVGQEAKBANtobskNMAAAAASUVORK5CYII=');\n}\n.CodeMirror-lint-marker-error,\n.CodeMirror-lint-marker-warning {\n background-position: center center;\n background-repeat: no-repeat;\n cursor: pointer;\n display: inline-block;\n height: 16px;\n position: relative;\n vertical-align: middle;\n width: 16px;\n}\n.CodeMirror-lint-message-error,\n.CodeMirror-lint-message-warning {\n background-position: top left;\n background-repeat: no-repeat;\n padding-left: 18px;\n}\n.CodeMirror-lint-marker-error,\n.CodeMirror-lint-message-error {\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAHlBMVEW7AAC7AACxAAC7AAC7AAAAAAC4AAC5AAD///+7AAAUdclpAAAABnRSTlMXnORSiwCK0ZKSAAAATUlEQVR42mWPOQ7AQAgDuQLx/z8csYRmPRIFIwRGnosRrpamvkKi0FTIiMASR3hhKW+hAN6/tIWhu9PDWiTGNEkTtIOucA5Oyr9ckPgAWm0GPBog6v4AAAAASUVORK5CYII=');\n}\n.CodeMirror-lint-marker-warning,\n.CodeMirror-lint-message-warning {\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAANlBMVEX/uwDvrwD/uwD/uwD/uwD/uwD/uwD/uwD/uwD6twD/uwAAAADurwD2tQD7uAD+ugAAAAD/uwDhmeTRAAAADHRSTlMJ8mN1EYcbmiixgACm7WbuAAAAVklEQVR42n3PUQqAIBBFUU1LLc3u/jdbOJoW1P08DA9Gba8+YWJ6gNJoNYIBzAA2chBth5kLmG9YUoG0NHAUwFXwO9LuBQL1giCQb8gC9Oro2vp5rncCIY8L8uEx5ZkAAAAASUVORK5CYII=');\n}\n.CodeMirror-lint-marker-multiple {\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAMAAADzjKfhAAAACVBMVEUAAAAAAAC/v7914kyHAAAAAXRSTlMAQObYZgAAACNJREFUeNo1ioEJAAAIwmz/H90iFFSGJgFMe3gaLZ0od+9/AQZ0ADosbYraAAAAAElFTkSuQmCC');\n background-position: right bottom;\n background-repeat: no-repeat;\n width: 100%;\n height: 100%;\n}\n\n.graphiql-container .spinner-container {\n height: 36px;\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%);\n width: 36px;\n z-index: 10;\n}\n\n.graphiql-container .spinner {\n animation: rotation 0.6s infinite linear;\n border-bottom: 6px solid rgba(150, 150, 150, 0.15);\n border-left: 6px solid rgba(150, 150, 150, 0.15);\n border-radius: 100%;\n border-right: 6px solid rgba(150, 150, 150, 0.15);\n border-top: 6px solid rgba(150, 150, 150, 0.8);\n display: inline-block;\n height: 24px;\n position: absolute;\n vertical-align: middle;\n width: 24px;\n}\n\n@keyframes rotation {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(359deg);\n }\n}\n\n.CodeMirror-hints {\n background: white;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.45);\n font-family: 'Consolas', 'Inconsolata', 'Droid Sans Mono', 'Monaco', monospace;\n font-size: 13px;\n list-style: none;\n margin-left: -6px;\n margin: 0;\n max-height: 14.5em;\n overflow: hidden;\n overflow-y: auto;\n padding: 0;\n position: absolute;\n z-index: 10;\n}\n\n.CodeMirror-hint {\n border-top: solid 1px #f7f7f7;\n color: #141823;\n cursor: pointer;\n margin: 0;\n max-width: 300px;\n overflow: hidden;\n padding: 2px 6px;\n white-space: pre;\n}\n\nli.CodeMirror-hint-active {\n background-color: #08f;\n border-top-color: white;\n color: white;\n}\n\n.CodeMirror-hint-information {\n border-top: solid 1px #c0c0c0;\n max-width: 300px;\n padding: 4px 6px;\n position: relative;\n z-index: 1;\n}\n\n.CodeMirror-hint-information:first-child {\n border-bottom: solid 1px #c0c0c0;\n border-top: none;\n margin-bottom: -1px;\n}\n\n.CodeMirror-hint-deprecation {\n background: #fffae8;\n box-shadow: inset 0 1px 1px -1px #bfb063;\n color: #867f70;\n font-family: system, -apple-system, 'San Francisco', '.SFNSDisplay-Regular',\n 'Segoe UI', Segoe, 'Segoe WP', 'Helvetica Neue', helvetica, 'Lucida Grande',\n arial, sans-serif;\n font-size: 13px;\n line-height: 16px;\n margin-top: 4px;\n max-height: 80px;\n overflow: hidden;\n padding: 6px;\n}\n\n.CodeMirror-hint-deprecation .deprecation-label {\n color: #c79b2e;\n cursor: default;\n display: block;\n font-size: 9px;\n font-weight: bold;\n letter-spacing: 1px;\n line-height: 1;\n padding-bottom: 5px;\n text-transform: uppercase;\n user-select: none;\n}\n\n.CodeMirror-hint-deprecation .deprecation-label + * {\n margin-top: 0;\n}\n\n.CodeMirror-hint-deprecation :last-child {\n margin-bottom: 0;\n}\n\n.graphiql-container .doc-explorer {\n background: white;\n}\n\n.graphiql-container .doc-explorer-title-bar,\n.graphiql-container .history-title-bar {\n cursor: default;\n display: flex;\n height: 34px;\n line-height: 14px;\n padding: 8px 8px 5px;\n position: relative;\n user-select: none;\n}\n\n.graphiql-container .doc-explorer-title,\n.graphiql-container .history-title {\n flex: 1;\n font-weight: bold;\n overflow-x: hidden;\n padding: 10px 0 10px 10px;\n text-align: center;\n text-overflow: ellipsis;\n user-select: text;\n white-space: nowrap;\n}\n\n.graphiql-container .doc-explorer-back {\n color: #3b5998;\n cursor: pointer;\n margin: -7px 0 -6px -8px;\n overflow-x: hidden;\n padding: 17px 12px 16px 16px;\n text-overflow: ellipsis;\n white-space: nowrap;\n background: 0;\n border: 0;\n line-height: 14px;\n}\n\n.doc-explorer-narrow .doc-explorer-back {\n width: 0;\n}\n\n.graphiql-container .doc-explorer-back:before {\n border-left: 2px solid #3b5998;\n border-top: 2px solid #3b5998;\n content: '';\n display: inline-block;\n height: 9px;\n margin: 0 3px -1px 0;\n position: relative;\n transform: rotate(-45deg);\n width: 9px;\n}\n\n.graphiql-container .doc-explorer-rhs {\n position: relative;\n}\n\n.graphiql-container .doc-explorer-contents,\n.graphiql-container .history-contents {\n background-color: #ffffff;\n border-top: 1px solid #d6d6d6;\n bottom: 0;\n left: 0;\n overflow-y: auto;\n padding: 20px 15px;\n position: absolute;\n right: 0;\n top: 47px;\n}\n\n.graphiql-container .doc-explorer-contents {\n min-width: 300px;\n}\n\n.graphiql-container .doc-type-description p:first-child,\n.graphiql-container .doc-type-description blockquote:first-child {\n margin-top: 0;\n}\n\n.graphiql-container .doc-explorer-contents a {\n cursor: pointer;\n text-decoration: none;\n}\n\n.graphiql-container .doc-explorer-contents a:hover {\n text-decoration: underline;\n}\n\n.graphiql-container .doc-value-description > :first-child {\n margin-top: 4px;\n}\n\n.graphiql-container .doc-value-description > :last-child {\n margin-bottom: 4px;\n}\n\n.graphiql-container .doc-type-description code,\n.graphiql-container .doc-type-description pre,\n.graphiql-container .doc-category code,\n.graphiql-container .doc-category pre {\n --saf-0: rgba(var(--sk_foreground_low, 29, 28, 29), 0.13);\n font-size: 12px;\n line-height: 1.50001;\n font-variant-ligatures: none;\n white-space: pre;\n white-space: pre-wrap;\n word-wrap: break-word;\n word-break: normal;\n -webkit-tab-size: 4;\n -moz-tab-size: 4;\n tab-size: 4;\n}\n\n.graphiql-container .doc-type-description code,\n.graphiql-container .doc-category code {\n padding: 2px 3px 1px;\n border: 1px solid var(--saf-0);\n border-radius: 3px;\n background-color: rgba(var(--sk_foreground_min, 29, 28, 29), 0.04);\n color: #e01e5a;\n background-color: white;\n}\n\n.graphiql-container .doc-category {\n margin: 20px 0;\n}\n\n.graphiql-container .doc-category-title {\n border-bottom: 1px solid #e0e0e0;\n color: #777;\n cursor: default;\n font-size: 14px;\n font-variant: small-caps;\n font-weight: bold;\n letter-spacing: 1px;\n margin: 0 -15px 10px 0;\n padding: 10px 0;\n user-select: none;\n}\n\n.graphiql-container .doc-category-item {\n margin: 12px 0;\n color: #555;\n}\n\n.graphiql-container .keyword {\n color: #b11a04;\n}\n\n.graphiql-container .type-name {\n color: #ca9800;\n}\n\n.graphiql-container .field-name {\n color: #1f61a0;\n}\n\n.graphiql-container .field-short-description {\n color: #666;\n margin-left: 5px;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.graphiql-container .enum-value {\n color: #0b7fc7;\n}\n\n.graphiql-container .arg-name {\n color: #8b2bb9;\n}\n\n.graphiql-container .arg {\n display: block;\n margin-left: 1em;\n}\n\n.graphiql-container .arg:first-child:last-child,\n.graphiql-container .arg:first-child:nth-last-child(2),\n.graphiql-container .arg:first-child:nth-last-child(2) ~ .arg {\n display: inherit;\n margin: inherit;\n}\n\n.graphiql-container .arg:first-child:nth-last-child(2):after {\n content: ', ';\n}\n\n.graphiql-container .arg-default-value {\n color: #43a047;\n}\n\n.graphiql-container .doc-deprecation {\n background: #fffae8;\n box-shadow: inset 0 0 1px #bfb063;\n color: #867f70;\n line-height: 16px;\n margin: 8px -8px;\n max-height: 80px;\n overflow: hidden;\n padding: 8px;\n border-radius: 3px;\n}\n\n.graphiql-container .doc-deprecation:before {\n content: 'Deprecated:';\n color: #c79b2e;\n cursor: default;\n display: block;\n font-size: 9px;\n font-weight: bold;\n letter-spacing: 1px;\n line-height: 1;\n padding-bottom: 5px;\n text-transform: uppercase;\n user-select: none;\n}\n\n.graphiql-container .doc-deprecation > :first-child {\n margin-top: 0;\n}\n\n.graphiql-container .doc-deprecation > :last-child {\n margin-bottom: 0;\n}\n\n.graphiql-container .show-btn {\n -webkit-appearance: initial;\n display: block;\n border-radius: 3px;\n border: solid 1px #ccc;\n text-align: center;\n padding: 8px 12px 10px;\n width: 100%;\n box-sizing: border-box;\n background: #fbfcfc;\n color: #555;\n cursor: pointer;\n}\n\n.graphiql-container .search-box {\n border-bottom: 1px solid #d3d6db;\n display: flex;\n align-items: center;\n font-size: 14px;\n margin: -15px -15px 12px 0;\n position: relative;\n}\n\n.graphiql-container .search-box-icon {\n cursor: pointer;\n display: block;\n font-size: 24px;\n transform: rotate(-45deg);\n user-select: none;\n}\n\n.graphiql-container .search-box .search-box-clear {\n background-color: #d0d0d0;\n border-radius: 12px;\n color: #fff;\n cursor: pointer;\n font-size: 11px;\n padding: 1px 5px 2px;\n position: absolute;\n right: 3px;\n user-select: none;\n border: 0;\n}\n\n.graphiql-container .search-box .search-box-clear:hover {\n background-color: #b9b9b9;\n}\n\n.graphiql-container .search-box > input {\n border: none;\n box-sizing: border-box;\n font-size: 14px;\n outline: none;\n padding: 6px 24px 8px 20px;\n width: 100%;\n}\n\n.graphiql-container .error-container {\n font-weight: bold;\n left: 0;\n letter-spacing: 1px;\n opacity: 0.5;\n position: absolute;\n right: 0;\n text-align: center;\n text-transform: uppercase;\n top: 50%;\n transform: translate(0, -50%);\n}\n\n.graphiql-container .history-contents {\n font-family: 'Consolas', 'Inconsolata', 'Droid Sans Mono', 'Monaco', monospace;\n}\n\n.graphiql-container .history-contents {\n margin: 0;\n padding: 0;\n}\n\n.graphiql-container .history-contents li {\n align-items: center;\n display: flex;\n font-size: 12px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n margin: 0;\n padding: 8px;\n border-bottom: 1px solid #e0e0e0;\n}\n\n.graphiql-container .history-contents li button:not(.history-label) {\n display: none;\n margin-left: 10px;\n}\n\n.graphiql-container .history-contents li:hover button:not(.history-label),\n.graphiql-container\n .history-contents\n li:focus-within\n button:not(.history-label) {\n display: inline-block;\n}\n\n.graphiql-container .history-contents input,\n.graphiql-container .history-contents button {\n padding: 0;\n background: 0;\n border: 0;\n font-size: inherit;\n font-family: inherit;\n line-height: 14px;\n color: inherit;\n}\n\n.graphiql-container .history-contents input {\n flex-grow: 1;\n}\n\n.graphiql-container .history-contents input::placeholder {\n color: inherit;\n}\n\n.graphiql-container .history-contents button {\n cursor: pointer;\n text-align: left;\n}\n\n.graphiql-container .history-contents .history-label {\n flex-grow: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\nbody,\n#graphiql {\n width: 100vw;\n height: 100vh;\n}\n\n#graphiql {\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 14px;\n line-height: 20px;\n color: var(--text-color);\n -webkit-font-smoothing: subpixel-antialiased;\n\n svg {\n display: inline-block;\n }\n\n select {\n color: var(--text-color) !important;\n background-color: transparentize($inputColor, 0.75);\n border-radius: var(--large-border-radius);\n padding: 4px;\n }\n\n .graphiql-container .topBar,\n .graphiql-container .docExplorerShow,\n .graphiql-container .historyShow,\n .graphiql-container .docExplorerWrap,\n .graphiql-container .historyPaneWrap,\n .graphiql-container .variable-editor-title,\n .graphiql-container .footer,\n .result-window .CodeMirror,\n .graphiql-container .resultWrap,\n .graphiql-container .result-window .CodeMirror-gutters,\n .graphiql-container .toolbar-button,\n .graphiql-container .toolbar-button:active,\n .graphiql-container .execute-button,\n .graphiql-container .execute-button:active,\n .graphiql-container .toolbar-menu-items,\n .graphiql-container .toolbar-select-options,\n .graphiql-container .toolbar-menu-items > li.hover,\n .graphiql-container .toolbar-menu-items > li:active,\n .graphiql-container .toolbar-menu-items > li:hover,\n .graphiql-container .toolbar-select-options > li.hover,\n .graphiql-container .toolbar-select-options > li:active,\n .graphiql-container .toolbar-select-options > li:hover,\n .CodeMirror-gutters {\n background: none;\n border: none;\n }\n\n .graphiql-container .history-contents > p:hover,\n .graphiql-container .history-contents > p:active {\n color: var(--text-color);\n background-color: var(--gray-050);\n\n span:not(.history-label) {\n font-size: 14px;\n }\n }\n .graphiql-container,\n .graphiql-container .editorWrap {\n overflow: visible;\n }\n\n .topBarWrap {\n .topBar {\n body.rtl & {\n direction: rtl;\n }\n padding: 14px 24px;\n height: 100%;\n\n .title {\n @include sans-serif-font;\n font-size: 18px;\n font-weight: bold;\n line-height: 1.2;\n color: var(--text-color);\n }\n }\n\n .docExplorerShow {\n padding: 14px 24px;\n }\n }\n\n .doc-explorer-title-bar,\n .history-title-bar {\n background: var(--white);\n box-sizing: content-box;\n }\n\n .queryWrap,\n .docExplorerWrap,\n .historyPaneWrap {\n @include pane;\n overflow: hidden;\n }\n\n .docExplorerWrap {\n z-index: 8 !important;\n }\n\n .queryWrap {\n margin: 0 0 24px 24px;\n border-radius: var(--large-border-radius);\n\n .CodeMirror-gutters {\n background: var(--gray-050);\n box-shadow: inset -1px 0 0 var(--hairline-color);\n }\n\n .CodeMirror-linenumber {\n color: var(--light-text-color);\n }\n\n .variable-editor {\n height: 28px;\n\n .variable-editor-title {\n background: var(--gray-050);\n box-shadow: 0 -1px 0 var(--hairline-color),\n 0 1px 0 var(--hairline-color);\n z-index: 4;\n color: var(--light-text-color);\n }\n }\n }\n\n .graphiql-container {\n .toolbar {\n margin-left: 16px;\n }\n .toolbar-button {\n display: inline-block;\n background-color: var(--gray-200);\n border-radius: var(--large-border-radius);\n padding: 7px 14px;\n border: none;\n text-align: center;\n white-space: nowrap;\n user-select: none;\n cursor: pointer;\n box-sizing: border-box;\n appearance: none;\n color: var(--text-color);\n height: 34px;\n max-width: 100%;\n box-shadow: none;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n svg {\n @include margin-left(5px);\n }\n }\n\n .execute-options,\n .toolbar-menu-items {\n min-width: 100%;\n margin-top: 0;\n @include menu-styles;\n\n li {\n @include menu-option-styles;\n text-align: left;\n padding-left: 24px;\n max-width: unset;\n\n &:hover {\n @include disclosure-link-hover-styles;\n }\n\n &.selected-schema {\n cursor: default;\n background: none;\n\n &:before {\n @include icon;\n content: 'check';\n @include floatleft;\n @include margin(3px, 0, 0, -17px);\n font-size: 14px;\n color: var(--light-text-color);\n }\n\n &:hover {\n background-color: var(--white);\n }\n }\n }\n }\n\n .execute-options li {\n padding-left: 14px;\n }\n\n .execute-button {\n background: linear-gradient(#fdfdfd, #cfd6dc);\n border: 1px solid #cfd6dc;\n }\n\n .graphiql-explorer-root {\n padding: 0 !important;\n\n & > div:first-child {\n padding: 7px 14px;\n }\n\n .graphiql-explorer-actions {\n margin: 0 !important;\n padding: 14px !important;\n box-sizing: border-box;\n @include sans-serif-font;\n font-weight: normal;\n font-variant-caps: normal;\n text-transform: none;\n letter-spacing: normal;\n\n & > span {\n margin-right: 7px;\n }\n\n .toolbar-button {\n margin: 0 !important;\n padding: 0 4px;\n\n &:before {\n @include icon;\n content: 'plus';\n font-size: 14.4px;\n }\n\n span {\n display: none;\n }\n }\n }\n }\n\n .spinner {\n animation: none;\n border: none;\n display: inline-flex;\n height: 24px;\n width: 24px;\n position: relative;\n }\n }\n\n .graphiql-explorer-graphql-arguments {\n select {\n padding: 2px;\n }\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/graphiql.css","mappings":"AAAA,sFAGE,qJACA,eAGA,qBAGF,oBACE,CADF,YACE,2BACA,CADA,kBACA,YACA,SACA,gBACA,WACA,iCAGF,oBACE,CADF,YACE,CACA,cACA,CADA,MACA,CAFA,6BACA,CADA,qBACA,CACA,iBACA,4BAGF,cACE,+BAGF,mBACE,eACA,CAKA,4DAFF,oBACE,CADF,YACE,2BACA,CADA,kBAeA,CAdA,4BAGF,0BACE,CADF,kBACE,+CACA,CADA,2CACA,gCACA,eACA,CAEA,cACA,CADA,MACA,YACA,mBACA,qBACA,yBACA,CADA,gBACA,8BAIA,oBACA,CADA,aADF,kBAEE,uEAGF,8CAEE,CAFF,2CAEE,CACA,+BACA,CAFA,eACA,CACA,iBACA,gBACA,cACA,eACA,eACA,SACA,wBACA,sCAGF,oCACE,kCAIA,cADF,qCAEE,6CAGF,6BACE,6BACA,WACA,qBACA,WACA,oBACA,kBACA,iCACA,CADA,2BACA,CADA,wBACA,UACA,gCAGF,oBACE,CADF,YACE,CACA,cACA,CADA,MACA,CAFA,0BACA,CADA,kBACA,CACA,eACA,CAMA,+DAHF,oBACE,CADF,YACE,CACA,cACA,CADA,OADA,6BACA,CADA,qBAWA,CATA,gCAGF,6BACE,CAGA,sBACA,CADA,cACA,kBACA,2EAGF,eAEE,mCACA,kBACA,UACA,sCAGF,eACE,UACA,yCAGF,iBACE,YACA,UACA,kBACA,MACA,WACA,WACA,sCAOA,YACA,SACA,CANF,cACE,eACA,CAIA,iBAJA,uBACA,4BAIA,uCAGF,cACE,CADF,MACE,kBACA,uCAGF,oBACE,CADF,YACE,8BACA,CADA,qBACA,YACA,kBACA,6CAGF,eACE,gCACA,6BACA,WACA,wBACA,gBACA,mBACA,iBACA,uBACA,yBACA,yBACA,CADA,gBACA,CAMA,uEAGF,cACE,CADF,MACE,YACA,kBACA,6BAGF,kBACE,8BACA,6BACA,iBACA,kBACA,oCAGF,eACE,SACA,YACA,WACA,kBACA,SACA,WACA,0CAKF,kBACE,wDAGF,qBACE,qBACA,kBACA,uMAGF,gBAGE,qCAGF,kBACE,+CACA,CADA,2CACA,SACA,kBACA,sFACA,WAEA,eACA,qBACA,aACA,CAIA,gBAJA,oBACA,qBACA,0BACA,CADA,sBACA,mBAEA,4CAGF,8CACE,CADF,2CACE,sIACA,2CAKF,8CACE,CADF,2CACE,WACA,2CAGF,YACE,mBACA,6CAGF,QACE,6DAIA,6BADF,yBAEE,8DAIA,2BACA,CAFF,wBACE,CACA,gBACA,0CAGF,WACE,qBACA,kBACA,qCAQA,SACA,CANF,8CACE,CADF,2CACE,CACA,gCACA,CAFA,kBACA,CACA,uBACA,eACA,CACA,WACA,SACA,UACA,WACA,yCAGF,mBACE,4CAGF,8CACE,CADF,2CACE,kFACA,uEAIF,iBAEE,0HAGF,eAGE,8DACA,SACA,cACA,kBACA,YACA,sCAKA,UAFF,eACE,SAEA,yCAGF,QACE,gBACA,eACA,SACA,kBACA,8CAGF,kBACE,6CAGF,MACE,eACA,SACA,kBACA,kDAGF,kBACE,mIAGF,cAGE,cACA,YACA,gBACA,gBACA,0BACA,mBACA,qcAGF,kBASE,WACA,oDAIA,SACA,CAFF,cACE,CACA,mBACA,oBACA,sBACA,6KAGF,SAGE,wCAGF,wBACE,iCAGF,aACE,kEACA,eACA,YACA,OACA,kBACA,MACA,WACA,uCAGF,cACE,uCAGF,mBACE,CAMA,YACA,CAPA,aACA,qBACA,CADA,YACA,qJACA,eAGA,CACA,gBACA,gBACA,gBACA,sCACA,CADA,kCACA,qDAGF,YACE,oDAGF,eACE,wCAGF,aACE,eACA,eACA,kBACA,+BAGF,6BACE,CADF,wBACE,CADF,qBACE,qCACA,CADA,+BACA,CADA,4BACA,0CACA,kBACA,sBACA,oBACA,kCAGF,MACE,4BAEE,+BACA,SAGF,kBAEE,qBACA,EAbF,4BAGF,MACE,4BAEE,+BACA,SAGF,kBAEE,qBACA,EAbF,yBAGF,MACE,4BAEE,+BACA,SAGF,kBAEE,qBACA,8BAIJ,qBACE,CACA,QACA,CAFA,iBACA,CAEA,oCACA,CAFA,aACA,CACA,cACA,iBACA,gBACA,UACA,iBACA,2BACA,CADA,uBACA,qBACA,+BAGF,iBACE,iCAGF,eACE,iDAKA,WAFF,cACE,qBAEA,wDAGF,UACE,4CAMA,eACA,+CACA,CADA,2CACA,CAHF,iBACE,CAEA,kEACA,WACA,kBACA,eACA,cACA,aACA,kBACA,kCACA,oEAGF,UACE,0BACA,uEAGF,SACE,aAKF,UACE,iBAKF,UACE,aAKF,aACE,SAKF,aACE,cAKF,aACE,eAKF,aACE,eAKF,aACE,YAKF,aACE,YAKF,aACE,aAKF,aACE,cAKF,aACE,cAKF,aACE,UAKF,aACE,UAKF,aACE,aAKF,UAEE,sBACA,aACA,mBAKF,aACE,iBAGF,aACE,wDAGF,qBAEE,qBAMA,wBACA,CAFF,2BACE,CACA,kBACA,wBAMF,UACE,eACA,oBACA,iBACA,mBACA,0BAGF,UACE,iCAGF,UACE,gCAKF,0BACE,4CAKF,4BACE,iDAGF,eACE,SACA,WACA,kDAGF,SACE,wBAGF,+CACE,CADF,0CACE,CADF,uCACE,SACA,WACA,0BAGF,GACE,eACE,KAEF,eACE,IAEF,eACE,EAXF,oBAGF,GACE,eACE,KAEF,eACE,IAEF,eACE,EAXF,iBAGF,GACE,eACE,KAEF,eACE,IAEF,eACE,UASJ,oBACE,wBACA,mBAGF,0BACE,kBACA,2BAKF,UACE,wBAGF,UACE,0BAGF,UACE,uBAGF,UACE,8BASF,UACE,8BAGF,UACE,2BAGF,UACE,0BAGF,UACE,4BAGF,UACE,CAIA,mDAGF,UACE,2BAGF,UACE,2BAGF,UACE,uBAGF,UACE,6BAGF,UACE,0BAGF,UACE,yBAGF,UACE,sBAGF,UACE,wBAGF,UACE,cAGF,UACE,cAGF,UACE,uBAGF,eAEE,QAGF,iBACE,UAGF,yBACE,mBAGF,4BACE,CAIA,wCAGF,SACE,uBAGF,uBACE,gDAKF,UACE,mDAGF,UACE,yBAGF,6BACE,mCAGF,kBACE,aAQF,eACE,gBACA,kBACA,oBAGF,WACE,oBAGA,mBACA,aACA,0BACA,oBACA,kBACA,mBAGF,mCACE,kBACA,sGAOF,YAIE,kBACA,UACA,wBAGF,iBACE,kBACA,QACA,MACA,wBAGF,QACE,OACA,kBACA,kBACA,8BAIA,SADF,OAEE,2BAIA,SADF,MAEE,qBAKA,MACA,CAHF,eACE,kBACA,CACA,KACA,UACA,oBAGF,oBACE,YACA,oBACA,mBACA,mBACA,4BAGF,yBACE,sBACA,kBACA,UACA,+BAKA,QACA,CAHF,iBACE,MACA,CACA,SACA,wBAGF,cACE,kBACA,UACA,4BAGF,wBACE,CADF,gBACE,mBAGF,WACE,eACA,iBAGF,yCACE,CAaA,gBACA,CAdA,sBAEA,gBACA,eACA,cACA,oBACA,kBACA,oCACA,CADA,2BACA,oBACA,SACA,iBACA,kBACA,gBACA,CACA,SACA,sBAGF,oBACE,qBACA,kBACA,4BAOA,QACA,CAJA,MACA,CAFF,iBACE,CACA,OACA,MACA,CACA,SACA,wBAGF,aACE,kBACA,UACA,kBAMF,YACE,oGAKF,sBAKE,qBAGF,QACE,gBACA,kBACA,kBACA,WACA,oBAGF,iBACE,yBAGF,eACE,wBAGF,iBACE,kBACA,UACA,CAIA,sEAGF,kBACE,sBAGF,kBACE,0CAGF,kBACE,uBAGF,gBACE,oGAGF,kBAGE,mHAGF,kBAGE,eAGF,eACE,8BACA,kBAKF,kBACE,cAGF,mCAEE,iBACE,0BAMJ,UACE,8BAKF,eACE,oBAGF,kBACE,cACA,OACA,CACA,eACA,kBACA,kBACA,CAJA,OACA,CAGA,UACA,wBAGF,4BACE,MACA,2BAGF,yBACE,SACA,0BAGF,sBACE,yBACA,cACA,sBACA,aACA,WACA,2BAGF,aACE,wBAGF,UACE,eACA,kBACA,eACA,oFACA,wBAGF,UACE,2DAEF,cAEE,mCAEF,WACE,qCAEF,WACE,kBAGF,eACE,kBACA,qCACA,sBACA,WACA,qJACA,eAGA,iBACA,gBACA,gBACA,UACA,gBACA,YACA,eACA,2BACA,CADA,uBACA,WACA,+BAGF,YACE,8BAGF,eACE,oBAGF,YACE,oCAGF,UACE,iBACA,eACA,gBACA,gBACA,oCAGF,kBACE,wCACA,cACA,iBACA,CACA,oBACA,gBACA,gBACA,YACA,0CAGF,aACE,eACA,cACA,cACA,gBACA,mBACA,cACA,mBACA,yBACA,yBACA,CADA,gBACA,4CAGF,YACE,oBAGF,oBACE,0BAGF,yBACE,6BAGF,aACE,8BAGF,aACE,8BAGF,aACE,4BAGF,aACE,kCAGF,aACE,wBAIA,eADF,yBAEE,0BAIF,UACE,0BAEF,+BACE,CACA,qBACA,CAFA,6BACA,CACA,cACA,sBACA,eACA,gBACA,UACA,gBACA,gBACA,eACA,0BACA,CADA,sBACA,qBACA,YACA,2DAEF,0BAEE,2BACA,6BAEF,gTAWE,+BAEA,4UAYA,+DAEF,uBAEE,4BAEF,gDACE,wCACA,4EAGA,uBAKI,CAAJ,2BAEA,gYASA,kEAEA,oWAaA,sPACE,8BAKF,4BACA,0EACA,2BAEA,+CAGA,kCAEA,+BAGA,sBAGF,8BACE,8CAGA,0CAGA,uCAIF,CASE,mCAEA,CALF,kBACE,CAEA,kCAEA,qBAGF,8BACE,sBACA,WACA,6BAGF,iCACE,uBACA,oCACA,oIACA,yBAGA,sBAEA,iCAEA,0BACA,2DAKA,4BAEA,yBACA,oBACA,eACA,qCAEA,kEACA,gBAGF,eACE,2BAGF,gBACE,4CAIA,sFAGF,yBAEE,gCACA,CACA,0CAEA,qBACA,kCACA,wFAGF,kBAEE,UACA,0CAEA,8BACA,oCACA,+CACA,wCACA,cAGF,qJAME,eACA,iBAEA,eACA,4CAGF,iDAIA,6BACE,2CAEA,mBACA,cACA,mBACA,yBACA,6FAEA,sDAIA,qJAQA,cACA,qBACA,aACA,YACA,iBACA,sCAGF,yBACE,2GAGF,QAEE,0DAGF,CACE,2CACA,gDAGF,iBACE,2DAQA,sBALF,aACE,gBAIA,iBAJA,yCAGF,4BACE,6GAGF,mFAKE,6BACA,4CACA,mBACA,kBACA,iCACA,4BAGA,yBACA,oJAMA,qBACA,6DACA,CACA,mCACA,6DAIA,eAGF,0HAME,YACA,8CAEA,cACA,CADA,oBACA,oDAIA,yBACA,yDAIA,cAIA,wDAIA,4LAWA,oDAOF,CAEE,qBAFF,cACE,CACA,gEADA,mBACA,mBAGF,cAGE,YANA,sD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","sources":["webpack:///../../../../../node_modules/graphiql/graphiql.css","webpack:///./graphiql.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":[".graphiql-container,\n.graphiql-container button,\n.graphiql-container input {\n color: #141823;\n font-family: system, -apple-system, 'San Francisco', '.SFNSDisplay-Regular',\n 'Segoe UI', Segoe, 'Segoe WP', 'Helvetica Neue', helvetica, 'Lucida Grande',\n arial, sans-serif;\n font-size: 14px;\n}\n\n.graphiql-container {\n display: flex;\n flex-direction: row;\n height: 100%;\n margin: 0;\n overflow: hidden;\n width: 100%;\n}\n\n.graphiql-container .editorWrap {\n display: flex;\n flex-direction: column;\n flex: 1;\n overflow-x: hidden;\n}\n\n.graphiql-container .title {\n font-size: 18px;\n}\n\n.graphiql-container .title em {\n font-family: georgia;\n font-size: 19px;\n}\n\n.graphiql-container .topBarWrap {\n display: flex;\n flex-direction: row;\n}\n\n.graphiql-container .topBar {\n align-items: center;\n background: linear-gradient(#f7f7f7, #e2e2e2);\n border-bottom: 1px solid #d0d0d0;\n cursor: default;\n display: flex;\n flex-direction: row;\n flex: 1;\n height: 34px;\n overflow-y: visible;\n padding: 7px 14px 6px;\n user-select: none;\n}\n\n.graphiql-container .toolbar {\n overflow-x: visible;\n display: flex;\n}\n\n.graphiql-container .docExplorerShow,\n.graphiql-container .historyShow {\n background: linear-gradient(#f7f7f7, #e2e2e2);\n border-radius: 0;\n border-bottom: 1px solid #d0d0d0;\n border-right: none;\n border-top: none;\n color: #3b5998;\n cursor: pointer;\n font-size: 14px;\n margin: 0;\n padding: 2px 20px 0 18px;\n}\n\n.graphiql-container .docExplorerShow {\n border-left: 1px solid rgba(0, 0, 0, 0.2);\n}\n\n.graphiql-container .historyShow {\n border-right: 1px solid rgba(0, 0, 0, 0.2);\n border-left: 0;\n}\n\n.graphiql-container .docExplorerShow:before {\n border-left: 2px solid #3b5998;\n border-top: 2px solid #3b5998;\n content: '';\n display: inline-block;\n height: 9px;\n margin: 0 3px -1px 0;\n position: relative;\n transform: rotate(-45deg);\n width: 9px;\n}\n\n.graphiql-container .editorBar {\n display: flex;\n flex-direction: row;\n flex: 1;\n max-height: 100%;\n}\n\n.graphiql-container .queryWrap {\n display: flex;\n flex-direction: column;\n flex: 1;\n}\n\n.graphiql-container .resultWrap {\n border-left: solid 1px #e0e0e0;\n display: flex;\n flex-direction: column;\n flex: 1;\n flex-basis: 1em;\n position: relative;\n}\n\n.graphiql-container .docExplorerWrap,\n.graphiql-container .historyPaneWrap {\n background: white;\n box-shadow: 0 0 8px rgba(0, 0, 0, 0.15);\n position: relative;\n z-index: 3;\n}\n\n.graphiql-container .historyPaneWrap {\n min-width: 230px;\n z-index: 5;\n}\n\n.graphiql-container .docExplorerResizer {\n cursor: col-resize;\n height: 100%;\n left: -5px;\n position: absolute;\n top: 0;\n width: 10px;\n z-index: 10;\n}\n\n.graphiql-container .docExplorerHide {\n cursor: pointer;\n font-size: 18px;\n margin: -7px -8px -6px 0;\n padding: 18px 16px 15px 12px;\n background: 0;\n border: 0;\n line-height: 14px;\n}\n\n.graphiql-container div .query-editor {\n flex: 1;\n position: relative;\n}\n\n.graphiql-container .secondary-editor {\n display: flex;\n flex-direction: column;\n height: 30px;\n position: relative;\n}\n\n.graphiql-container .secondary-editor-title {\n background: #eeeeee;\n border-bottom: 1px solid #d6d6d6;\n border-top: 1px solid #e0e0e0;\n color: #777;\n font-variant: small-caps;\n font-weight: bold;\n letter-spacing: 1px;\n line-height: 14px;\n padding: 6px 0 8px 43px;\n text-transform: lowercase;\n user-select: none;\n}\n\n.graphiql-container .codemirrorWrap {\n flex: 1;\n height: 100%;\n position: relative;\n}\n\n.graphiql-container .result-window {\n flex: 1;\n height: 100%;\n position: relative;\n}\n\n.graphiql-container .footer {\n background: #f6f7f8;\n border-left: 1px solid #e0e0e0;\n border-top: 1px solid #e0e0e0;\n margin-left: 12px;\n position: relative;\n}\n\n.graphiql-container .footer:before {\n background: #eeeeee;\n bottom: 0;\n content: ' ';\n left: -13px;\n position: absolute;\n top: -1px;\n width: 12px;\n}\n\n/* No `.graphiql-container` here so themes can overwrite */\n\n.result-window .CodeMirror.cm-s-graphiql {\n background: #f6f7f8;\n}\n\n.graphiql-container .result-window .CodeMirror-gutters {\n background-color: #eeeeee;\n border-color: #e0e0e0;\n cursor: col-resize;\n}\n\n.graphiql-container .result-window .CodeMirror-foldgutter,\n.graphiql-container .result-window .CodeMirror-foldgutter-open:after,\n.graphiql-container .result-window .CodeMirror-foldgutter-folded:after {\n padding-left: 3px;\n}\n\n.graphiql-container .toolbar-button {\n background: #fdfdfd;\n background: linear-gradient(#f9f9f9, #ececec);\n border: 0;\n border-radius: 3px;\n box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2),\n 0 1px 0 rgba(255, 255, 255, 0.7), inset 0 1px #fff;\n color: #555;\n cursor: pointer;\n display: inline-block;\n margin: 0 5px;\n padding: 3px 11px 5px;\n text-decoration: none;\n text-overflow: ellipsis;\n white-space: nowrap;\n max-width: 150px;\n}\n\n.graphiql-container .toolbar-button:active {\n background: linear-gradient(#ececec, #d5d5d5);\n box-shadow: 0 1px 0 rgba(255, 255, 255, 0.7),\n inset 0 0 0 1px rgba(0, 0, 0, 0.1), inset 0 1px 1px 1px rgba(0, 0, 0, 0.12),\n inset 0 0 5px rgba(0, 0, 0, 0.1);\n}\n\n.graphiql-container .toolbar-button.error {\n background: linear-gradient(#fdf3f3, #e6d6d7);\n color: #b00;\n}\n\n.graphiql-container .toolbar-button-group {\n margin: 0 5px;\n white-space: nowrap;\n}\n\n.graphiql-container .toolbar-button-group > * {\n margin: 0;\n}\n\n.graphiql-container .toolbar-button-group > *:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.graphiql-container .toolbar-button-group > *:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n margin-left: -1px;\n}\n\n.graphiql-container .execute-button-wrap {\n height: 34px;\n margin: 0 14px 0 28px;\n position: relative;\n}\n\n.graphiql-container .execute-button {\n background: linear-gradient(#fdfdfd, #d2d3d6);\n border-radius: 17px;\n border: 1px solid rgba(0, 0, 0, 0.25);\n box-shadow: 0 1px 0 #fff;\n cursor: pointer;\n fill: #444;\n height: 34px;\n margin: 0;\n padding: 0;\n width: 34px;\n}\n\n.graphiql-container .execute-button svg {\n pointer-events: none;\n}\n\n.graphiql-container .execute-button:active {\n background: linear-gradient(#e6e6e6, #c3c3c3);\n box-shadow: 0 1px 0 #fff, inset 0 0 2px rgba(0, 0, 0, 0.2),\n inset 0 0 6px rgba(0, 0, 0, 0.1);\n}\n\n.graphiql-container .toolbar-menu,\n.graphiql-container .toolbar-select {\n position: relative;\n}\n\n.graphiql-container .execute-options,\n.graphiql-container .toolbar-menu-items,\n.graphiql-container .toolbar-select-options {\n background: #fff;\n box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.25);\n margin: 0;\n padding: 6px 0;\n position: absolute;\n z-index: 100;\n}\n\n.graphiql-container .execute-options {\n min-width: 100px;\n top: 37px;\n left: -1px;\n}\n\n.graphiql-container .toolbar-menu-items {\n left: 1px;\n margin-top: -1px;\n min-width: 110%;\n top: 100%;\n visibility: hidden;\n}\n\n.graphiql-container .toolbar-menu-items.open {\n visibility: visible;\n}\n\n.graphiql-container .toolbar-select-options {\n left: 0;\n min-width: 100%;\n top: -5px;\n visibility: hidden;\n}\n\n.graphiql-container .toolbar-select-options.open {\n visibility: visible;\n}\n\n.graphiql-container .execute-options > li,\n.graphiql-container .toolbar-menu-items > li,\n.graphiql-container .toolbar-select-options > li {\n cursor: pointer;\n display: block;\n margin: none;\n max-width: 300px;\n overflow: hidden;\n padding: 2px 20px 4px 11px;\n white-space: nowrap;\n}\n\n.graphiql-container .execute-options > li.selected,\n.graphiql-container .toolbar-menu-items > li.hover,\n.graphiql-container .toolbar-menu-items > li:active,\n.graphiql-container .toolbar-menu-items > li:hover,\n.graphiql-container .toolbar-select-options > li.hover,\n.graphiql-container .toolbar-select-options > li:active,\n.graphiql-container .toolbar-select-options > li:hover,\n.graphiql-container .history-contents > li:hover,\n.graphiql-container .history-contents > li:active {\n background: #e10098;\n color: #fff;\n}\n\n.graphiql-container .toolbar-select-options > li > svg {\n display: inline;\n fill: #666;\n margin: 0 -6px 0 6px;\n pointer-events: none;\n vertical-align: middle;\n}\n\n.graphiql-container .toolbar-select-options > li.hover > svg,\n.graphiql-container .toolbar-select-options > li:active > svg,\n.graphiql-container .toolbar-select-options > li:hover > svg {\n fill: #fff;\n}\n\n.graphiql-container .CodeMirror-scroll {\n overflow-scrolling: touch;\n}\n\n.graphiql-container .CodeMirror {\n color: #141823;\n font-family: 'Consolas', 'Inconsolata', 'Droid Sans Mono', 'Monaco', monospace;\n font-size: 13px;\n height: 100%;\n left: 0;\n position: absolute;\n top: 0;\n width: 100%;\n}\n\n.graphiql-container .CodeMirror-lines {\n padding: 20px 0;\n}\n\n.CodeMirror-hint-information .content {\n box-orient: vertical;\n color: #141823;\n display: flex;\n font-family: system, -apple-system, 'San Francisco', '.SFNSDisplay-Regular',\n 'Segoe UI', Segoe, 'Segoe WP', 'Helvetica Neue', helvetica, 'Lucida Grande',\n arial, sans-serif;\n font-size: 13px;\n line-clamp: 3;\n line-height: 16px;\n max-height: 48px;\n overflow: hidden;\n text-overflow: -o-ellipsis-lastline;\n}\n\n.CodeMirror-hint-information .content p:first-child {\n margin-top: 0;\n}\n\n.CodeMirror-hint-information .content p:last-child {\n margin-bottom: 0;\n}\n\n.CodeMirror-hint-information .infoType {\n color: #ca9800;\n cursor: pointer;\n display: inline;\n margin-right: 0.5em;\n}\n\n.autoInsertedLeaf.cm-property {\n animation-duration: 6s;\n animation-name: insertionFade;\n border-bottom: 2px solid rgba(255, 255, 255, 0);\n border-radius: 2px;\n margin: -2px -4px -1px;\n padding: 2px 4px 1px;\n}\n\n@keyframes insertionFade {\n from,\n to {\n background: rgba(255, 255, 255, 0);\n border-color: rgba(255, 255, 255, 0);\n }\n\n 15%,\n 85% {\n background: #fbffc9;\n border-color: #f0f3c0;\n }\n}\n\ndiv.CodeMirror-lint-tooltip {\n background-color: white;\n border-radius: 2px;\n border: 0;\n color: #141823;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.45);\n font-size: 13px;\n line-height: 16px;\n max-width: 430px;\n opacity: 0;\n padding: 8px 10px;\n transition: opacity 0.15s;\n white-space: pre-wrap;\n}\n\ndiv.CodeMirror-lint-tooltip > * {\n padding-left: 23px;\n}\n\ndiv.CodeMirror-lint-tooltip > * + * {\n margin-top: 12px;\n}\n\n.graphiql-container .variable-editor-title-text {\n cursor: pointer;\n display: inline-block;\n color: gray;\n}\n\n.graphiql-container .variable-editor-title-text.active {\n color: #000;\n}\n\n/* COLORS */\n\n.graphiql-container .CodeMirror-foldmarker {\n border-radius: 4px;\n background: #08f;\n background: linear-gradient(#43a8ff, #0f83e8);\n box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2), inset 0 0 0 1px rgba(0, 0, 0, 0.1);\n color: white;\n font-family: arial;\n font-size: 12px;\n line-height: 0;\n margin: 0 3px;\n padding: 0px 4px 1px;\n text-shadow: 0 -1px rgba(0, 0, 0, 0.1);\n}\n\n.graphiql-container div.CodeMirror span.CodeMirror-matchingbracket {\n color: #555;\n text-decoration: underline;\n}\n\n.graphiql-container div.CodeMirror span.CodeMirror-nonmatchingbracket {\n color: #f00;\n}\n\n/* Comment */\n\n.cm-comment {\n color: #666;\n}\n\n/* Punctuation */\n\n.cm-punctuation {\n color: #555;\n}\n\n/* Keyword */\n\n.cm-keyword {\n color: #b11a04;\n}\n\n/* OperationName, FragmentName */\n\n.cm-def {\n color: #d2054e;\n}\n\n/* FieldName */\n\n.cm-property {\n color: #1f61a0;\n}\n\n/* FieldAlias */\n\n.cm-qualifier {\n color: #1c92a9;\n}\n\n/* ArgumentName and ObjectFieldName */\n\n.cm-attribute {\n color: #8b2bb9;\n}\n\n/* Number */\n\n.cm-number {\n color: #2882f9;\n}\n\n/* String */\n\n.cm-string {\n color: #d64292;\n}\n\n/* Boolean */\n\n.cm-builtin {\n color: #d47509;\n}\n\n/* EnumValue */\n\n.cm-string-2 {\n color: #0b7fc7;\n}\n\n/* Variable */\n\n.cm-variable {\n color: #397d13;\n}\n\n/* Directive */\n\n.cm-meta {\n color: #b33086;\n}\n\n/* Type */\n\n.cm-atom {\n color: #ca9800;\n}\n\n/* BASICS */\n\n.CodeMirror {\n /* Set height, width, borders, and global font properties here */\n color: black;\n font-family: monospace;\n height: 300px;\n}\n\n/* PADDING */\n\n.CodeMirror-lines {\n padding: 4px 0; /* Vertical padding around content */\n}\n\n.CodeMirror pre {\n padding: 0 4px; /* Horizontal padding of content */\n}\n\n.CodeMirror-scrollbar-filler,\n.CodeMirror-gutter-filler {\n background-color: white; /* The little square between H and V scrollbars */\n}\n\n/* GUTTER */\n\n.CodeMirror-gutters {\n border-right: 1px solid #ddd;\n background-color: #f7f7f7;\n white-space: nowrap;\n}\n\n.CodeMirror-linenumbers {\n}\n\n.CodeMirror-linenumber {\n color: #666;\n min-width: 20px;\n padding: 0 3px 0 5px;\n text-align: right;\n white-space: nowrap;\n}\n\n.CodeMirror-guttermarker {\n color: black;\n}\n\n.CodeMirror-guttermarker-subtle {\n color: #666;\n}\n\n/* CURSOR */\n\n.CodeMirror .CodeMirror-cursor {\n border-left: 1px solid black;\n}\n\n/* Shown when moving in bi-directional text */\n\n.CodeMirror div.CodeMirror-secondarycursor {\n border-left: 1px solid silver;\n}\n\n.CodeMirror.cm-fat-cursor div.CodeMirror-cursor {\n background: #7e7;\n border: 0;\n width: auto;\n}\n\n.CodeMirror.cm-fat-cursor div.CodeMirror-cursors {\n z-index: 1;\n}\n\n.cm-animate-fat-cursor {\n animation: blink 1.06s steps(1) infinite;\n border: 0;\n width: auto;\n}\n\n@keyframes blink {\n 0% {\n background: #7e7;\n }\n 50% {\n background: none;\n }\n 100% {\n background: #7e7;\n }\n}\n\n/* Can style cursor different in overwrite (non-insert) mode */\n\ndiv.CodeMirror-overwrite div.CodeMirror-cursor {\n}\n\n.cm-tab {\n display: inline-block;\n text-decoration: inherit;\n}\n\n.CodeMirror-ruler {\n border-left: 1px solid #ccc;\n position: absolute;\n}\n\n/* DEFAULT THEME */\n\n.cm-s-default .cm-keyword {\n color: #708;\n}\n\n.cm-s-default .cm-atom {\n color: #219;\n}\n\n.cm-s-default .cm-number {\n color: #164;\n}\n\n.cm-s-default .cm-def {\n color: #00f;\n}\n\n.cm-s-default .cm-variable,\n.cm-s-default .cm-punctuation,\n.cm-s-default .cm-property,\n.cm-s-default .cm-operator {\n}\n\n.cm-s-default .cm-variable-2 {\n color: #05a;\n}\n\n.cm-s-default .cm-variable-3 {\n color: #085;\n}\n\n.cm-s-default .cm-comment {\n color: #a50;\n}\n\n.cm-s-default .cm-string {\n color: #a11;\n}\n\n.cm-s-default .cm-string-2 {\n color: #f50;\n}\n\n.cm-s-default .cm-meta {\n color: #555;\n}\n\n.cm-s-default .cm-qualifier {\n color: #555;\n}\n\n.cm-s-default .cm-builtin {\n color: #30a;\n}\n\n.cm-s-default .cm-bracket {\n color: #666;\n}\n\n.cm-s-default .cm-tag {\n color: #170;\n}\n\n.cm-s-default .cm-attribute {\n color: #00c;\n}\n\n.cm-s-default .cm-header {\n color: blue;\n}\n\n.cm-s-default .cm-quote {\n color: #090;\n}\n\n.cm-s-default .cm-hr {\n color: #666;\n}\n\n.cm-s-default .cm-link {\n color: #00c;\n}\n\n.cm-negative {\n color: #d44;\n}\n\n.cm-positive {\n color: #292;\n}\n\n.cm-header,\n.cm-strong {\n font-weight: bold;\n}\n\n.cm-em {\n font-style: italic;\n}\n\n.cm-link {\n text-decoration: underline;\n}\n\n.cm-strikethrough {\n text-decoration: line-through;\n}\n\n.cm-s-default .cm-error {\n color: #f00;\n}\n\n.cm-invalidchar {\n color: #f00;\n}\n\n.CodeMirror-composing {\n border-bottom: 2px solid;\n}\n\n/* Default styles for common addons */\n\ndiv.CodeMirror span.CodeMirror-matchingbracket {\n color: #0f0;\n}\n\ndiv.CodeMirror span.CodeMirror-nonmatchingbracket {\n color: #f22;\n}\n\n.CodeMirror-matchingtag {\n background: rgba(255, 150, 0, 0.3);\n}\n\n.CodeMirror-activeline-background {\n background: #e8f2ff;\n}\n\n/* STOP */\n\n/* The rest of this file contains styles related to the mechanics of\n the editor. You probably shouldn't touch them. */\n\n.CodeMirror {\n background: white;\n overflow: hidden;\n position: relative;\n}\n\n.CodeMirror-scroll {\n height: 100%;\n /* 30px is the magic margin used to hide the element's real scrollbars */\n /* See overflow: hidden in .CodeMirror */\n margin-bottom: -30px;\n margin-right: -30px;\n outline: none; /* Prevent dragging from highlighting the element */\n overflow: scroll !important; /* Things will break if this is overridden */\n padding-bottom: 30px;\n position: relative;\n}\n\n.CodeMirror-sizer {\n border-right: 30px solid transparent;\n position: relative;\n}\n\n/* The fake, visible scrollbars. Used to force redraw during scrolling\n before actual scrolling happens, thus preventing shaking and\n flickering artifacts. */\n\n.CodeMirror-vscrollbar,\n.CodeMirror-hscrollbar,\n.CodeMirror-scrollbar-filler,\n.CodeMirror-gutter-filler {\n display: none;\n position: absolute;\n z-index: 6;\n}\n\n.CodeMirror-vscrollbar {\n overflow-x: hidden;\n overflow-y: scroll;\n right: 0;\n top: 0;\n}\n\n.CodeMirror-hscrollbar {\n bottom: 0;\n left: 0;\n overflow-x: scroll;\n overflow-y: hidden;\n}\n\n.CodeMirror-scrollbar-filler {\n right: 0;\n bottom: 0;\n}\n\n.CodeMirror-gutter-filler {\n left: 0;\n bottom: 0;\n}\n\n.CodeMirror-gutters {\n min-height: 100%;\n position: absolute;\n left: 0;\n top: 0;\n z-index: 3;\n}\n\n.CodeMirror-gutter {\n display: inline-block;\n height: 100%;\n margin-bottom: -30px;\n vertical-align: top;\n white-space: normal;\n}\n\n.CodeMirror-gutter-wrapper {\n background: none !important;\n border: none !important;\n position: absolute;\n z-index: 4;\n}\n\n.CodeMirror-gutter-background {\n position: absolute;\n top: 0;\n bottom: 0;\n z-index: 4;\n}\n\n.CodeMirror-gutter-elt {\n cursor: default;\n position: absolute;\n z-index: 4;\n}\n\n.CodeMirror-gutter-wrapper {\n user-select: none;\n}\n\n.CodeMirror-lines {\n cursor: text;\n min-height: 1px; /* prevents collapsing before first draw */\n}\n\n.CodeMirror pre {\n -webkit-tap-highlight-color: transparent;\n /* Reset some styles that the rest of the page might have set */\n background: transparent;\n border-radius: 0;\n border-width: 0;\n color: inherit;\n font-family: inherit;\n font-size: inherit;\n font-variant-ligatures: none;\n line-height: inherit;\n margin: 0;\n overflow: visible;\n position: relative;\n white-space: pre;\n word-wrap: normal;\n z-index: 2;\n}\n\n.CodeMirror-wrap pre {\n word-wrap: break-word;\n white-space: pre-wrap;\n word-break: normal;\n}\n\n.CodeMirror-linebackground {\n position: absolute;\n left: 0;\n right: 0;\n top: 0;\n bottom: 0;\n z-index: 0;\n}\n\n.CodeMirror-linewidget {\n overflow: auto;\n position: relative;\n z-index: 2;\n}\n\n.CodeMirror-widget {\n}\n\n.CodeMirror-code {\n outline: none;\n}\n\n/* Force content-box sizing for the elements where we expect it */\n\n.CodeMirror-scroll,\n.CodeMirror-sizer,\n.CodeMirror-gutter,\n.CodeMirror-gutters,\n.CodeMirror-linenumber {\n box-sizing: content-box;\n}\n\n.CodeMirror-measure {\n height: 0;\n overflow: hidden;\n position: absolute;\n visibility: hidden;\n width: 100%;\n}\n\n.CodeMirror-cursor {\n position: absolute;\n}\n\n.CodeMirror-measure pre {\n position: static;\n}\n\ndiv.CodeMirror-cursors {\n position: relative;\n visibility: hidden;\n z-index: 3;\n}\n\ndiv.CodeMirror-dragcursors {\n visibility: visible;\n}\n\n.CodeMirror-focused div.CodeMirror-cursors {\n visibility: visible;\n}\n\n.CodeMirror-selected {\n background: #d9d9d9;\n}\n\n.CodeMirror-focused .CodeMirror-selected {\n background: #d7d4f0;\n}\n\n.CodeMirror-crosshair {\n cursor: crosshair;\n}\n\n.CodeMirror-line::selection,\n.CodeMirror-line > span::selection,\n.CodeMirror-line > span > span::selection {\n background: #d7d4f0;\n}\n\n.CodeMirror-line::-moz-selection,\n.CodeMirror-line > span::-moz-selection,\n.CodeMirror-line > span > span::-moz-selection {\n background: #d7d4f0;\n}\n\n.cm-searching {\n background: #ffa;\n background: rgba(255, 255, 0, 0.4);\n}\n\n/* Used to force a border model for a node */\n\n.cm-force-border {\n padding-right: 0.1px;\n}\n\n@media print {\n /* Hide the cursor when printing */\n .CodeMirror div.CodeMirror-cursors {\n visibility: hidden;\n }\n}\n\n/* See issue #2901 */\n\n.cm-tab-wrap-hack:after {\n content: '';\n}\n\n/* Help users use markselection to safely style text background */\n\nspan.CodeMirror-selectedtext {\n background: none;\n}\n\n.CodeMirror-dialog {\n background: inherit;\n color: inherit;\n left: 0;\n right: 0;\n overflow: hidden;\n padding: 0.1em 0.8em;\n position: absolute;\n z-index: 15;\n}\n\n.CodeMirror-dialog-top {\n border-bottom: 1px solid #eee;\n top: 0;\n}\n\n.CodeMirror-dialog-bottom {\n border-top: 1px solid #eee;\n bottom: 0;\n}\n\n.CodeMirror-dialog input {\n background: transparent;\n border: 1px solid #d3d6db;\n color: inherit;\n font-family: monospace;\n outline: none;\n width: 20em;\n}\n\n.CodeMirror-dialog button {\n font-size: 70%;\n}\n\n.CodeMirror-foldmarker {\n color: blue;\n cursor: pointer;\n font-family: arial;\n line-height: 0.3;\n text-shadow: #b9f 1px 1px 2px, #b9f -1px -1px 2px, #b9f 1px -1px 2px,\n #b9f -1px 1px 2px;\n}\n.CodeMirror-foldgutter {\n width: 0.7em;\n}\n.CodeMirror-foldgutter-open,\n.CodeMirror-foldgutter-folded {\n cursor: pointer;\n}\n.CodeMirror-foldgutter-open:after {\n content: '\\25BE';\n}\n.CodeMirror-foldgutter-folded:after {\n content: '\\25B8';\n}\n\n.CodeMirror-info {\n background: white;\n border-radius: 2px;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.45);\n box-sizing: border-box;\n color: #555;\n font-family: system, -apple-system, 'San Francisco', '.SFNSDisplay-Regular',\n 'Segoe UI', Segoe, 'Segoe WP', 'Helvetica Neue', helvetica, 'Lucida Grande',\n arial, sans-serif;\n font-size: 13px;\n line-height: 16px;\n margin: 8px -8px;\n max-width: 400px;\n opacity: 0;\n overflow: hidden;\n padding: 8px 8px;\n position: fixed;\n transition: opacity 0.15s;\n z-index: 50;\n}\n\n.CodeMirror-info :first-child {\n margin-top: 0;\n}\n\n.CodeMirror-info :last-child {\n margin-bottom: 0;\n}\n\n.CodeMirror-info p {\n margin: 1em 0;\n}\n\n.CodeMirror-info .info-description {\n color: #777;\n line-height: 16px;\n margin-top: 1em;\n max-height: 80px;\n overflow: hidden;\n}\n\n.CodeMirror-info .info-deprecation {\n background: #fffae8;\n box-shadow: inset 0 1px 1px -1px #bfb063;\n color: #867f70;\n line-height: 16px;\n margin: -8px;\n margin-top: 8px;\n max-height: 80px;\n overflow: hidden;\n padding: 8px;\n}\n\n.CodeMirror-info .info-deprecation-label {\n color: #c79b2e;\n cursor: default;\n display: block;\n font-size: 9px;\n font-weight: bold;\n letter-spacing: 1px;\n line-height: 1;\n padding-bottom: 5px;\n text-transform: uppercase;\n user-select: none;\n}\n\n.CodeMirror-info .info-deprecation-label + * {\n margin-top: 0;\n}\n\n.CodeMirror-info a {\n text-decoration: none;\n}\n\n.CodeMirror-info a:hover {\n text-decoration: underline;\n}\n\n.CodeMirror-info .type-name {\n color: #ca9800;\n}\n\n.CodeMirror-info .field-name {\n color: #1f61a0;\n}\n\n.CodeMirror-info .enum-value {\n color: #0b7fc7;\n}\n\n.CodeMirror-info .arg-name {\n color: #8b2bb9;\n}\n\n.CodeMirror-info .directive-name {\n color: #b33086;\n}\n\n.CodeMirror-jump-token {\n text-decoration: underline;\n cursor: pointer;\n}\n\n/* The lint marker gutter */\n.CodeMirror-lint-markers {\n width: 16px;\n}\n.CodeMirror-lint-tooltip {\n background-color: infobackground;\n border-radius: 4px 4px 4px 4px;\n border: 1px solid black;\n color: infotext;\n font-family: monospace;\n font-size: 10pt;\n max-width: 600px;\n opacity: 0;\n overflow: hidden;\n padding: 2px 5px;\n position: fixed;\n transition: opacity 0.4s;\n white-space: pre-wrap;\n z-index: 100;\n}\n.CodeMirror-lint-mark-error,\n.CodeMirror-lint-mark-warning {\n background-position: left bottom;\n background-repeat: repeat-x;\n}\n.CodeMirror-lint-mark-error {\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAADCAYAAAC09K7GAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9sJDw4cOCW1/KIAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAHElEQVQI12NggIL/DAz/GdA5/xkY/qPKMDAwAADLZwf5rvm+LQAAAABJRU5ErkJggg==');\n}\n.CodeMirror-lint-mark-warning {\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAADCAYAAAC09K7GAAAAAXNSR0IArs4c6QAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9sJFhQXEbhTg7YAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAMklEQVQI12NkgIIvJ3QXMjAwdDN+OaEbysDA4MPAwNDNwMCwiOHLCd1zX07o6kBVGQEAKBANtobskNMAAAAASUVORK5CYII=');\n}\n.CodeMirror-lint-marker-error,\n.CodeMirror-lint-marker-warning {\n background-position: center center;\n background-repeat: no-repeat;\n cursor: pointer;\n display: inline-block;\n height: 16px;\n position: relative;\n vertical-align: middle;\n width: 16px;\n}\n.CodeMirror-lint-message-error,\n.CodeMirror-lint-message-warning {\n background-position: top left;\n background-repeat: no-repeat;\n padding-left: 18px;\n}\n.CodeMirror-lint-marker-error,\n.CodeMirror-lint-message-error {\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAHlBMVEW7AAC7AACxAAC7AAC7AAAAAAC4AAC5AAD///+7AAAUdclpAAAABnRSTlMXnORSiwCK0ZKSAAAATUlEQVR42mWPOQ7AQAgDuQLx/z8csYRmPRIFIwRGnosRrpamvkKi0FTIiMASR3hhKW+hAN6/tIWhu9PDWiTGNEkTtIOucA5Oyr9ckPgAWm0GPBog6v4AAAAASUVORK5CYII=');\n}\n.CodeMirror-lint-marker-warning,\n.CodeMirror-lint-message-warning {\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAANlBMVEX/uwDvrwD/uwD/uwD/uwD/uwD/uwD/uwD/uwD6twD/uwAAAADurwD2tQD7uAD+ugAAAAD/uwDhmeTRAAAADHRSTlMJ8mN1EYcbmiixgACm7WbuAAAAVklEQVR42n3PUQqAIBBFUU1LLc3u/jdbOJoW1P08DA9Gba8+YWJ6gNJoNYIBzAA2chBth5kLmG9YUoG0NHAUwFXwO9LuBQL1giCQb8gC9Oro2vp5rncCIY8L8uEx5ZkAAAAASUVORK5CYII=');\n}\n.CodeMirror-lint-marker-multiple {\n background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAMAAADzjKfhAAAACVBMVEUAAAAAAAC/v7914kyHAAAAAXRSTlMAQObYZgAAACNJREFUeNo1ioEJAAAIwmz/H90iFFSGJgFMe3gaLZ0od+9/AQZ0ADosbYraAAAAAElFTkSuQmCC');\n background-position: right bottom;\n background-repeat: no-repeat;\n width: 100%;\n height: 100%;\n}\n\n.graphiql-container .spinner-container {\n height: 36px;\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translate(-50%, -50%);\n width: 36px;\n z-index: 10;\n}\n\n.graphiql-container .spinner {\n animation: rotation 0.6s infinite linear;\n border-bottom: 6px solid rgba(150, 150, 150, 0.15);\n border-left: 6px solid rgba(150, 150, 150, 0.15);\n border-radius: 100%;\n border-right: 6px solid rgba(150, 150, 150, 0.15);\n border-top: 6px solid rgba(150, 150, 150, 0.8);\n display: inline-block;\n height: 24px;\n position: absolute;\n vertical-align: middle;\n width: 24px;\n}\n\n@keyframes rotation {\n from {\n transform: rotate(0deg);\n }\n to {\n transform: rotate(359deg);\n }\n}\n\n.CodeMirror-hints {\n background: white;\n box-shadow: 0 1px 3px rgba(0, 0, 0, 0.45);\n font-family: 'Consolas', 'Inconsolata', 'Droid Sans Mono', 'Monaco', monospace;\n font-size: 13px;\n list-style: none;\n margin-left: -6px;\n margin: 0;\n max-height: 14.5em;\n overflow: hidden;\n overflow-y: auto;\n padding: 0;\n position: absolute;\n z-index: 10;\n}\n\n.CodeMirror-hint {\n border-top: solid 1px #f7f7f7;\n color: #141823;\n cursor: pointer;\n margin: 0;\n max-width: 300px;\n overflow: hidden;\n padding: 2px 6px;\n white-space: pre;\n}\n\nli.CodeMirror-hint-active {\n background-color: #08f;\n border-top-color: white;\n color: white;\n}\n\n.CodeMirror-hint-information {\n border-top: solid 1px #c0c0c0;\n max-width: 300px;\n padding: 4px 6px;\n position: relative;\n z-index: 1;\n}\n\n.CodeMirror-hint-information:first-child {\n border-bottom: solid 1px #c0c0c0;\n border-top: none;\n margin-bottom: -1px;\n}\n\n.CodeMirror-hint-deprecation {\n background: #fffae8;\n box-shadow: inset 0 1px 1px -1px #bfb063;\n color: #867f70;\n font-family: system, -apple-system, 'San Francisco', '.SFNSDisplay-Regular',\n 'Segoe UI', Segoe, 'Segoe WP', 'Helvetica Neue', helvetica, 'Lucida Grande',\n arial, sans-serif;\n font-size: 13px;\n line-height: 16px;\n margin-top: 4px;\n max-height: 80px;\n overflow: hidden;\n padding: 6px;\n}\n\n.CodeMirror-hint-deprecation .deprecation-label {\n color: #c79b2e;\n cursor: default;\n display: block;\n font-size: 9px;\n font-weight: bold;\n letter-spacing: 1px;\n line-height: 1;\n padding-bottom: 5px;\n text-transform: uppercase;\n user-select: none;\n}\n\n.CodeMirror-hint-deprecation .deprecation-label + * {\n margin-top: 0;\n}\n\n.CodeMirror-hint-deprecation :last-child {\n margin-bottom: 0;\n}\n\n.graphiql-container .doc-explorer {\n background: white;\n}\n\n.graphiql-container .doc-explorer-title-bar,\n.graphiql-container .history-title-bar {\n cursor: default;\n display: flex;\n height: 34px;\n line-height: 14px;\n padding: 8px 8px 5px;\n position: relative;\n user-select: none;\n}\n\n.graphiql-container .doc-explorer-title,\n.graphiql-container .history-title {\n flex: 1;\n font-weight: bold;\n overflow-x: hidden;\n padding: 10px 0 10px 10px;\n text-align: center;\n text-overflow: ellipsis;\n user-select: text;\n white-space: nowrap;\n}\n\n.graphiql-container .doc-explorer-back {\n color: #3b5998;\n cursor: pointer;\n margin: -7px 0 -6px -8px;\n overflow-x: hidden;\n padding: 17px 12px 16px 16px;\n text-overflow: ellipsis;\n white-space: nowrap;\n background: 0;\n border: 0;\n line-height: 14px;\n}\n\n.doc-explorer-narrow .doc-explorer-back {\n width: 0;\n}\n\n.graphiql-container .doc-explorer-back:before {\n border-left: 2px solid #3b5998;\n border-top: 2px solid #3b5998;\n content: '';\n display: inline-block;\n height: 9px;\n margin: 0 3px -1px 0;\n position: relative;\n transform: rotate(-45deg);\n width: 9px;\n}\n\n.graphiql-container .doc-explorer-rhs {\n position: relative;\n}\n\n.graphiql-container .doc-explorer-contents,\n.graphiql-container .history-contents {\n background-color: #ffffff;\n border-top: 1px solid #d6d6d6;\n bottom: 0;\n left: 0;\n overflow-y: auto;\n padding: 20px 15px;\n position: absolute;\n right: 0;\n top: 47px;\n}\n\n.graphiql-container .doc-explorer-contents {\n min-width: 300px;\n}\n\n.graphiql-container .doc-type-description p:first-child,\n.graphiql-container .doc-type-description blockquote:first-child {\n margin-top: 0;\n}\n\n.graphiql-container .doc-explorer-contents a {\n cursor: pointer;\n text-decoration: none;\n}\n\n.graphiql-container .doc-explorer-contents a:hover {\n text-decoration: underline;\n}\n\n.graphiql-container .doc-value-description > :first-child {\n margin-top: 4px;\n}\n\n.graphiql-container .doc-value-description > :last-child {\n margin-bottom: 4px;\n}\n\n.graphiql-container .doc-type-description code,\n.graphiql-container .doc-type-description pre,\n.graphiql-container .doc-category code,\n.graphiql-container .doc-category pre {\n --saf-0: rgba(var(--sk_foreground_low, 29, 28, 29), 0.13);\n font-size: 12px;\n line-height: 1.50001;\n font-variant-ligatures: none;\n white-space: pre;\n white-space: pre-wrap;\n word-wrap: break-word;\n word-break: normal;\n -webkit-tab-size: 4;\n -moz-tab-size: 4;\n tab-size: 4;\n}\n\n.graphiql-container .doc-type-description code,\n.graphiql-container .doc-category code {\n padding: 2px 3px 1px;\n border: 1px solid var(--saf-0);\n border-radius: 3px;\n background-color: rgba(var(--sk_foreground_min, 29, 28, 29), 0.04);\n color: #e01e5a;\n background-color: white;\n}\n\n.graphiql-container .doc-category {\n margin: 20px 0;\n}\n\n.graphiql-container .doc-category-title {\n border-bottom: 1px solid #e0e0e0;\n color: #777;\n cursor: default;\n font-size: 14px;\n font-variant: small-caps;\n font-weight: bold;\n letter-spacing: 1px;\n margin: 0 -15px 10px 0;\n padding: 10px 0;\n user-select: none;\n}\n\n.graphiql-container .doc-category-item {\n margin: 12px 0;\n color: #555;\n}\n\n.graphiql-container .keyword {\n color: #b11a04;\n}\n\n.graphiql-container .type-name {\n color: #ca9800;\n}\n\n.graphiql-container .field-name {\n color: #1f61a0;\n}\n\n.graphiql-container .field-short-description {\n color: #666;\n margin-left: 5px;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.graphiql-container .enum-value {\n color: #0b7fc7;\n}\n\n.graphiql-container .arg-name {\n color: #8b2bb9;\n}\n\n.graphiql-container .arg {\n display: block;\n margin-left: 1em;\n}\n\n.graphiql-container .arg:first-child:last-child,\n.graphiql-container .arg:first-child:nth-last-child(2),\n.graphiql-container .arg:first-child:nth-last-child(2) ~ .arg {\n display: inherit;\n margin: inherit;\n}\n\n.graphiql-container .arg:first-child:nth-last-child(2):after {\n content: ', ';\n}\n\n.graphiql-container .arg-default-value {\n color: #43a047;\n}\n\n.graphiql-container .doc-deprecation {\n background: #fffae8;\n box-shadow: inset 0 0 1px #bfb063;\n color: #867f70;\n line-height: 16px;\n margin: 8px -8px;\n max-height: 80px;\n overflow: hidden;\n padding: 8px;\n border-radius: 3px;\n}\n\n.graphiql-container .doc-deprecation:before {\n content: 'Deprecated:';\n color: #c79b2e;\n cursor: default;\n display: block;\n font-size: 9px;\n font-weight: bold;\n letter-spacing: 1px;\n line-height: 1;\n padding-bottom: 5px;\n text-transform: uppercase;\n user-select: none;\n}\n\n.graphiql-container .doc-deprecation > :first-child {\n margin-top: 0;\n}\n\n.graphiql-container .doc-deprecation > :last-child {\n margin-bottom: 0;\n}\n\n.graphiql-container .show-btn {\n -webkit-appearance: initial;\n display: block;\n border-radius: 3px;\n border: solid 1px #ccc;\n text-align: center;\n padding: 8px 12px 10px;\n width: 100%;\n box-sizing: border-box;\n background: #fbfcfc;\n color: #555;\n cursor: pointer;\n}\n\n.graphiql-container .search-box {\n border-bottom: 1px solid #d3d6db;\n display: flex;\n align-items: center;\n font-size: 14px;\n margin: -15px -15px 12px 0;\n position: relative;\n}\n\n.graphiql-container .search-box-icon {\n cursor: pointer;\n display: block;\n font-size: 24px;\n transform: rotate(-45deg);\n user-select: none;\n}\n\n.graphiql-container .search-box .search-box-clear {\n background-color: #d0d0d0;\n border-radius: 12px;\n color: #fff;\n cursor: pointer;\n font-size: 11px;\n padding: 1px 5px 2px;\n position: absolute;\n right: 3px;\n user-select: none;\n border: 0;\n}\n\n.graphiql-container .search-box .search-box-clear:hover {\n background-color: #b9b9b9;\n}\n\n.graphiql-container .search-box > input {\n border: none;\n box-sizing: border-box;\n font-size: 14px;\n outline: none;\n padding: 6px 24px 8px 20px;\n width: 100%;\n}\n\n.graphiql-container .error-container {\n font-weight: bold;\n left: 0;\n letter-spacing: 1px;\n opacity: 0.5;\n position: absolute;\n right: 0;\n text-align: center;\n text-transform: uppercase;\n top: 50%;\n transform: translate(0, -50%);\n}\n\n.graphiql-container .history-contents {\n font-family: 'Consolas', 'Inconsolata', 'Droid Sans Mono', 'Monaco', monospace;\n}\n\n.graphiql-container .history-contents {\n margin: 0;\n padding: 0;\n}\n\n.graphiql-container .history-contents li {\n align-items: center;\n display: flex;\n font-size: 12px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n margin: 0;\n padding: 8px;\n border-bottom: 1px solid #e0e0e0;\n}\n\n.graphiql-container .history-contents li button:not(.history-label) {\n display: none;\n margin-left: 10px;\n}\n\n.graphiql-container .history-contents li:hover button:not(.history-label),\n.graphiql-container\n .history-contents\n li:focus-within\n button:not(.history-label) {\n display: inline-block;\n}\n\n.graphiql-container .history-contents input,\n.graphiql-container .history-contents button {\n padding: 0;\n background: 0;\n border: 0;\n font-size: inherit;\n font-family: inherit;\n line-height: 14px;\n color: inherit;\n}\n\n.graphiql-container .history-contents input {\n flex-grow: 1;\n}\n\n.graphiql-container .history-contents input::placeholder {\n color: inherit;\n}\n\n.graphiql-container .history-contents button {\n cursor: pointer;\n text-align: left;\n}\n\n.graphiql-container .history-contents .history-label {\n flex-grow: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\nbody,\n#graphiql {\n width: 100vw;\n height: 100vh;\n}\n\n#graphiql {\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: 14px;\n line-height: 20px;\n color: var(--text-color);\n -webkit-font-smoothing: subpixel-antialiased;\n\n svg {\n display: inline-block;\n }\n\n select {\n color: var(--text-color) !important;\n background-color: transparentize($inputColor, 0.75);\n border-radius: var(--large-border-radius);\n padding: 4px;\n }\n\n .graphiql-container .topBar,\n .graphiql-container .docExplorerShow,\n .graphiql-container .historyShow,\n .graphiql-container .docExplorerWrap,\n .graphiql-container .historyPaneWrap,\n .graphiql-container .variable-editor-title,\n .graphiql-container .footer,\n .result-window .CodeMirror,\n .graphiql-container .resultWrap,\n .graphiql-container .result-window .CodeMirror-gutters,\n .graphiql-container .toolbar-button,\n .graphiql-container .toolbar-button:active,\n .graphiql-container .execute-button,\n .graphiql-container .execute-button:active,\n .graphiql-container .toolbar-menu-items,\n .graphiql-container .toolbar-select-options,\n .graphiql-container .toolbar-menu-items > li.hover,\n .graphiql-container .toolbar-menu-items > li:active,\n .graphiql-container .toolbar-menu-items > li:hover,\n .graphiql-container .toolbar-select-options > li.hover,\n .graphiql-container .toolbar-select-options > li:active,\n .graphiql-container .toolbar-select-options > li:hover,\n .CodeMirror-gutters {\n background: none;\n border: none;\n }\n\n .graphiql-container .history-contents > p:hover,\n .graphiql-container .history-contents > p:active {\n color: var(--text-color);\n background-color: var(--gray-050);\n\n span:not(.history-label) {\n font-size: 14px;\n }\n }\n .graphiql-container,\n .graphiql-container .editorWrap {\n overflow: visible;\n }\n\n .topBarWrap {\n .topBar {\n body.rtl & {\n direction: rtl;\n }\n padding: 14px 24px;\n height: 100%;\n\n .title {\n @include sans-serif-font;\n font-size: 18px;\n font-weight: bold;\n line-height: 1.2;\n color: var(--text-color);\n }\n }\n\n .docExplorerShow {\n padding: 14px 24px;\n }\n }\n\n .doc-explorer-title-bar,\n .history-title-bar {\n background: var(--white);\n box-sizing: content-box;\n }\n\n .queryWrap,\n .docExplorerWrap,\n .historyPaneWrap {\n @include pane;\n overflow: hidden;\n }\n\n .docExplorerWrap {\n z-index: 8 !important;\n }\n\n .queryWrap {\n margin: 0 0 24px 24px;\n border-radius: var(--large-border-radius);\n\n .CodeMirror-gutters {\n background: var(--gray-050);\n box-shadow: inset -1px 0 0 var(--hairline-color);\n }\n\n .CodeMirror-linenumber {\n color: var(--light-text-color);\n }\n\n .variable-editor {\n height: 28px;\n\n .variable-editor-title {\n background: var(--gray-050);\n box-shadow: 0 -1px 0 var(--hairline-color),\n 0 1px 0 var(--hairline-color);\n z-index: 4;\n color: var(--light-text-color);\n }\n }\n }\n\n .graphiql-container {\n .toolbar {\n margin-left: 16px;\n }\n .toolbar-button {\n display: inline-block;\n background-color: var(--gray-200);\n border-radius: var(--large-border-radius);\n padding: 7px 14px;\n border: none;\n text-align: center;\n white-space: nowrap;\n user-select: none;\n cursor: pointer;\n box-sizing: border-box;\n appearance: none;\n color: var(--text-color);\n height: 34px;\n max-width: 100%;\n box-shadow: none;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n svg {\n @include margin-left(5px);\n }\n }\n\n .execute-options,\n .toolbar-menu-items {\n min-width: 100%;\n margin-top: 0;\n @include menu-styles;\n\n li {\n @include menu-option-styles;\n text-align: left;\n padding-left: 24px;\n max-width: unset;\n\n &:hover {\n @include disclosure-link-hover-styles;\n }\n\n &.selected-schema {\n cursor: default;\n background: none;\n\n &:before {\n @include icon;\n content: 'check';\n @include floatleft;\n @include margin(3px, 0, 0, -17px);\n font-size: 14px;\n color: var(--light-text-color);\n }\n\n &:hover {\n background-color: var(--white);\n }\n }\n }\n }\n\n .execute-options li {\n padding-left: 14px;\n }\n\n .execute-button {\n background: linear-gradient(#fdfdfd, #cfd6dc);\n border: 1px solid #cfd6dc;\n }\n\n .graphiql-explorer-root {\n padding: 0 !important;\n\n & > div:first-child {\n padding: 7px 14px;\n }\n\n .graphiql-explorer-actions {\n margin: 0 !important;\n padding: 14px !important;\n box-sizing: border-box;\n @include sans-serif-font;\n font-weight: normal;\n font-variant-caps: normal;\n text-transform: none;\n letter-spacing: normal;\n\n & > span {\n margin-right: 7px;\n }\n\n .toolbar-button {\n margin: 0 !important;\n padding: 0 4px;\n\n &:before {\n @include icon;\n content: 'plus';\n font-size: 14.4px;\n }\n\n span {\n display: none;\n }\n }\n }\n }\n\n .spinner {\n animation: none;\n border: none;\n display: inline-flex;\n height: 24px;\n width: 24px;\n position: relative;\n }\n }\n\n .graphiql-explorer-graphql-arguments {\n select {\n padding: 2px;\n }\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/installer/dist/css/install.css.map b/src/web/assets/installer/dist/css/install.css.map index 4c56f293f45..39fa3411af7 100644 --- a/src/web/assets/installer/dist/css/install.css.map +++ b/src/web/assets/installer/dist/css/install.css.map @@ -1 +1 @@ -{"version":3,"file":"css/install.css","mappings":"AAGA,UAEE,YAGF,KAEE,qGACA,uBAFA,eAEA,oBAKA,gBACA,CAHF,iBACE,CAGA,iBACA,CAJA,QAEA,UAEA,WAIA,wCACA,CAGA,yLACA,CANF,oBACE,CACA,cACA,YACA,eAEA,iBAGA,eACE,gBAKF,YACA,UACA,CAHF,WAGE,yDAKI,WACA,CAHF,UAGE,iCAKA,0BACA,+BACA,6BAHA,qBACA,CAFF,YAIE,oCAEA,sCACE,sCAGF,wCACE,oFAIA,uDAGF,kBAHE,iBAGF,CACE,qCAEA,WAGF,CAHE,SAGF,kGAKI,2CAEE,OAOV,CATQ,kBASR,iBACE,CADF,UACE,0BAMA,sCAEE,CAJF,iBAEA,CAJA,oBAEA,CAIE,UACA,CADA,SACA,uCACA,eACA,uCCkWJ,gBD/VM,CCkWN,6BD/VI,+BACE,CC8VN,iCD9VM,yBACA,CADA,eACA,UAON,WACA,CARM,iBAQN,mBAGF,UACE,mBACA,SCsMA,wBACE,kBAEF,wBAwKA,iBACE,qBAGA,sDA3SF,CACA,uCACA,uCAGA,oCACA,CAIA,kCAEA,kCAEA,CAIA,0BACA,CAVA,aACA,CAIA,qBA4RA,iBACE,CArRF,eAPA,iBAEA,CAVA,mBACA,CADA,gBAeA,WAEA,CAfA,cAeA,iBAHA,2BACA,CAPA,kBATA,iCACA,CACA,mBACA,CAUA,wBACA,iBACA,CAJA,qBACA,CAIA,UAEA,CDzFI,6BAEA,mBACA,8BCwTJ,mBACE,8BAEF,cACE,8BD3TE,cACE,cAEF,2BACE,UAON,iBACA,CARM,mBAQN,2BAIA,kBACA,0EAMI,2DAEE,uCAEA,gBAGF,0CAKF,gEAEE,wBANE,eAMF,aACA,2DAMJ,sBAEA,aACE,yCAIA,UACA,CAFF,QAEE","sources":["webpack:///./install.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\nhtml,\nbody {\n height: 100%;\n}\n\nbody {\n overflow: hidden;\n background: var(--gray-100) url(images/installer-bg.png) no-repeat 50% 50%;\n background-size: cover;\n}\n\n.beginbtncontainer {\n position: absolute;\n top: 50%;\n margin-top: -25px;\n width: 100%;\n text-align: center;\n}\n\n#beginbtn {\n display: inline-block;\n border-radius: var(--large-border-radius);\n font-size: 19px;\n height: 50px;\n padding: 0 24px;\n box-shadow: inset 0 1px #ffffff33, inset 0 -1px #00000022, 0 0 0 1px #21377066,\n 0 0 1px 2px #21377055, 0 10px 10px -10px #213770, 0 10px 20px -10px #213770;\n\n &:after {\n margin-top: -4px;\n }\n}\n\n#install-modal {\n width: 770px;\n height: 510px;\n padding: 0;\n\n #screens {\n &,\n .screen {\n width: 100%;\n height: 100%;\n }\n\n .screen {\n padding: 35px;\n box-sizing: border-box;\n background: no-repeat 0 50%;\n background-size: 368px 477px;\n\n &#db {\n background-image: url(./images/db.png);\n }\n\n &#site {\n background-image: url(./images/site.png);\n }\n\n &#account {\n background-image: url(./images/account.png);\n }\n\n h1 {\n margin-bottom: 35px;\n text-align: center;\n position: relative;\n }\n\n form {\n width: 50%;\n float: right;\n\n .select {\n &,\n select {\n width: 100%;\n }\n }\n }\n }\n }\n\n #dots {\n position: absolute;\n bottom: 10px;\n left: 0;\n width: 100%;\n text-align: center;\n\n & > div {\n display: inline-block;\n border-radius: 4px;\n border: 1px solid var(--hairline-color);\n width: 6px;\n height: 6px;\n\n & + div {\n @include margin-left(5px);\n }\n\n &.sel {\n border-color: var(--primary-color);\n background: var(--primary-color);\n }\n }\n }\n}\n\n.grid {\n margin-top: 35px;\n margin-bottom: 35px;\n}\n\n.buttons {\n position: absolute;\n bottom: 35px;\n @include right(35px);\n\n .btn {\n @include padding-right(10px);\n\n &:after {\n @include icon;\n @include margin(-2px, 0, 0, 4px);\n font-size: 20px;\n width: 20px;\n height: 20px;\n line-height: 18px;\n body.ltr & {\n content: 'rarr';\n }\n body.rtl & {\n content: 'larr';\n }\n }\n }\n}\n\ninput.hidden {\n position: absolute;\n top: 100px;\n}\n\n#license {\n padding: 0 !important;\n overflow-y: scroll;\n\n #license-content {\n padding: 70px 105px;\n\n .license {\n &,\n h1 {\n font-family: Menlo, monospace;\n font-size: 13px;\n line-height: 25px;\n }\n\n h1 {\n font-weight: bold;\n }\n }\n\n #license-accept {\n margin-top: 35px;\n display: flex;\n justify-content: center;\n }\n }\n}\n\n#installing {\n text-align: center;\n\n h1 {\n margin-top: 200px !important;\n }\n\n #spinner {\n display: block;\n margin: 0 auto;\n }\n\n .buttons {\n .btn {\n margin: 0;\n float: none;\n }\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/install.css","mappings":"AAGA,UAEE,YAGF,KAEE,qGACA,uBAFA,eAEA,oBAKA,gBACA,CAHF,iBACE,CAGA,iBACA,CAJA,QAEA,UAEA,WAIA,wCACA,CAGA,yLACA,CANF,oBACE,CACA,cACA,YACA,eAEA,iBAGA,eACE,gBAKF,YACA,UACA,CAHF,WAGE,yDAKI,WACA,CAHF,UAGE,iCAKA,0BACA,+BACA,6BAHA,qBACA,CAFF,YAIE,oCAEA,sCACE,sCAGF,wCACE,oFAIA,uDAGF,kBAHE,iBAGF,CACE,qCAEA,WAGF,CAHE,SAGF,kGAKI,2CAEE,OAOV,CATQ,kBASR,iBACE,CADF,UACE,0BAMA,sCAEE,CAJF,iBAEA,CAJA,oBAEA,CAIE,UACA,CADA,SACA,uCACA,eACA,uCCkWJ,gBD/VM,CCkWN,6BD/VI,+BACE,CC8VN,iCD9VM,yBACA,CADA,eACA,UAON,WACA,CARM,iBAQN,mBAGF,UACE,mBACA,SCsMA,wBACE,kBAEF,wBAwKA,iBACE,qBAGA,sDA3SF,CACA,uCACA,uCAGA,oCACA,CAIA,kCAEA,kCAEA,CAIA,0BACA,CAVA,aACA,CAIA,qBA4RA,iBACE,CArRF,eAPA,iBAEA,CAVA,mBACA,CADA,gBAeA,WAEA,CAfA,cAeA,iBAHA,2BACA,CAPA,kBATA,iCACA,CACA,mBACA,CAUA,wBACA,iBACA,CAJA,qBACA,CAIA,UAEA,CDzFI,6BAEA,mBACA,8BCwTJ,mBACE,8BAEF,cACE,8BD3TE,cACE,cAEF,2BACE,UAON,iBACA,CARM,mBAQN,2BAIA,kBACA,0EAMI,2DAEE,uCAEA,gBAGF,0CAKF,gEAEE,wBANE,eAMF,aACA,2DAMJ,sBAEA,aACE,yCAIA,UACA,CAFF,QAEE","sources":["webpack:///./install.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\nhtml,\nbody {\n height: 100%;\n}\n\nbody {\n overflow: hidden;\n background: var(--gray-100) url(images/installer-bg.png) no-repeat 50% 50%;\n background-size: cover;\n}\n\n.beginbtncontainer {\n position: absolute;\n top: 50%;\n margin-top: -25px;\n width: 100%;\n text-align: center;\n}\n\n#beginbtn {\n display: inline-block;\n border-radius: var(--large-border-radius);\n font-size: 19px;\n height: 50px;\n padding: 0 24px;\n box-shadow: inset 0 1px #ffffff33, inset 0 -1px #00000022, 0 0 0 1px #21377066,\n 0 0 1px 2px #21377055, 0 10px 10px -10px #213770, 0 10px 20px -10px #213770;\n\n &:after {\n margin-top: -4px;\n }\n}\n\n#install-modal {\n width: 770px;\n height: 510px;\n padding: 0;\n\n #screens {\n &,\n .screen {\n width: 100%;\n height: 100%;\n }\n\n .screen {\n padding: 35px;\n box-sizing: border-box;\n background: no-repeat 0 50%;\n background-size: 368px 477px;\n\n &#db {\n background-image: url(./images/db.png);\n }\n\n &#site {\n background-image: url(./images/site.png);\n }\n\n &#account {\n background-image: url(./images/account.png);\n }\n\n h1 {\n margin-bottom: 35px;\n text-align: center;\n position: relative;\n }\n\n form {\n width: 50%;\n float: right;\n\n .select {\n &,\n select {\n width: 100%;\n }\n }\n }\n }\n }\n\n #dots {\n position: absolute;\n bottom: 10px;\n left: 0;\n width: 100%;\n text-align: center;\n\n & > div {\n display: inline-block;\n border-radius: 4px;\n border: 1px solid var(--hairline-color);\n width: 6px;\n height: 6px;\n\n & + div {\n @include margin-left(5px);\n }\n\n &.sel {\n border-color: var(--primary-color);\n background: var(--primary-color);\n }\n }\n }\n}\n\n.grid {\n margin-top: 35px;\n margin-bottom: 35px;\n}\n\n.buttons {\n position: absolute;\n bottom: 35px;\n @include right(35px);\n\n .btn {\n @include padding-right(10px);\n\n &:after {\n @include icon;\n @include margin(-2px, 0, 0, 4px);\n font-size: 20px;\n width: 20px;\n height: 20px;\n line-height: 18px;\n body.ltr & {\n content: 'rarr';\n }\n body.rtl & {\n content: 'larr';\n }\n }\n }\n}\n\ninput.hidden {\n position: absolute;\n top: 100px;\n}\n\n#license {\n padding: 0 !important;\n overflow-y: scroll;\n\n #license-content {\n padding: 70px 105px;\n\n .license {\n &,\n h1 {\n font-family: Menlo, monospace;\n font-size: 13px;\n line-height: 25px;\n }\n\n h1 {\n font-weight: bold;\n }\n }\n\n #license-accept {\n margin-top: 35px;\n display: flex;\n justify-content: center;\n }\n }\n}\n\n#installing {\n text-align: center;\n\n h1 {\n margin-top: 200px !important;\n }\n\n #spinner {\n display: block;\n margin: 0 auto;\n }\n\n .buttons {\n .btn {\n margin: 0;\n float: none;\n }\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/login/dist/css/login.css.map b/src/web/assets/login/dist/css/login.css.map index 2c6adae68e0..7b2daa76e04 100644 --- a/src/web/assets/login/dist/css/login.css.map +++ b/src/web/assets/login/dist/css/login.css.map @@ -1 +1 @@ -{"version":3,"file":"css/login.css","mappings":"AAGA,KACE,YAGF,KAGE,8CAFA,kCACA,oDAEA,sDACA,gBAGF,OACE,YAGF,UAGE,qBADA,cADA,iBAEA,CAGF,YAEE,YADA,UACA,CAGF,gBACE,YAGF,YACE,kBAEA,mBACE,SAGF,iBACE,kCAIJ,WAIE,yCAHA,cAEA,kBADA,sBAEA,CAGF,iBACE,UAGF,mBACE,aAIA,4CAGE,qBAAoB,CADpB,wEADA,kBAEA,CAEA,kDACE,wBACA,mBAMJ,oIAGE,aAGF,8CACE,cAIJ,iBAEE,wEADA,kBACA,CAEA,uBACE,UAGF,2BAEE,sBCsXF,oCACE,4BAEF,oCACE,4BA7JF,2CACE,UD1Ne,CC4NjB,2CACE,SD7Ne,CAInB,mBACE,oBAGF,oBACE,4BAGF,kBACE,kCACA,sDC2VA,2BACE,iBDxVF,CC0VA,2BACE,gBD3VF,CAGF,oCAGE,+BADA,cACA,CAGF,gGAIE,wBAGF,oBACE,kCACA,YACA,WAGF,cAEE,yBACA,eAFA,iBAEA,CAGF,WACE,cAGA,mBADA,gBAEA,WAHA,iBAGA,CAEA,eACE,qBAIJ,oDAGE,UAGF,kBACE,YC0TA,iCACE,iBDvTF,CCyTA,iCACE,kBD1TF,CAGF,+BCsBE,WACA,4CAGA,wCACA,uCACA,oCAOA,mCACA,kCAMA,2BDlCA,wBAFA,eC4BA,cAIA,qBDpCA,cCmBA,kBDdA,eCiCA,kBATA,oBADA,gBAGA,cAYA,4BD1CA,kBCoCA,kBAVA,kCAGA,oBD5BA,SCuCA,0CAFA,qBDjCA,CCgIA,wCACE,SDpIY,CCsId,wCACE,UDvIY","sources":["webpack:///./login.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\nhtml {\n height: 100%;\n}\n\nbody {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n min-height: 100%;\n}\n\n#login {\n width: 300px;\n}\n\n#login h1 {\n text-align: center;\n font-size: 3em;\n word-wrap: break-word;\n}\n\n#login-logo {\n width: 100%;\n height: auto;\n}\n\n#login-form-top {\n padding: 1px;\n}\n\n#login-form {\n position: relative;\n\n .field {\n margin: 0;\n }\n\n .btn {\n display: flex;\n }\n}\n\n#loginName {\n margin: 0 -1px;\n width: calc(100% + 2px);\n padding: 14px 16px;\n border-radius: var(--large-border-radius);\n}\n\n#loginName-field {\n z-index: 1;\n}\n\n#remember-password {\n display: none;\n}\n\n#login-form:not(.reset-password) {\n #loginName {\n margin: -1px -1px 0;\n border-radius: var(--large-border-radius) var(--large-border-radius) 0 0;\n border-bottom-width: 0;\n\n &:focus {\n border-bottom-width: 1px;\n margin-bottom: -1px;\n }\n }\n}\n\n#login-form.reset-password {\n #password-field,\n #rememberMe-field,\n #forgot-password {\n display: none;\n }\n\n #remember-password {\n display: block;\n }\n}\n\n.passwordwrapper {\n margin: 0 -1px -1px;\n border-radius: 0 0 var(--large-border-radius) var(--large-border-radius);\n\n &.focus {\n z-index: 1;\n }\n\n #password {\n @include padding(14px, 4rem, 14px, 16px);\n border-radius: inherit;\n }\n\n .password-toggle {\n @include right(14px);\n }\n}\n\n#login-form-bottom {\n margin-top: var(--m);\n}\n\n#login-form-buttons {\n margin: var(--xl) 0 var(--s);\n}\n\n#login-form-extra {\n display: flex;\n justify-content: center;\n}\n\n#rememberMe-field {\n @include margin-right(14px);\n}\n\n#forgot-password,\n#remember-password {\n font-size: 11px;\n color: var(--medium-text-color);\n}\n\n#forgot-password:hover,\n#forgot-password:focus,\n#remember-password:hover,\n#remember-password:focus {\n color: var(--link-color);\n}\n\n#login-form .submit {\n display: flex;\n height: 44px;\n width: 100%;\n}\n\n#login-errors {\n text-align: center;\n color: var(--error-color);\n margin-top: 1em;\n}\n\n#poweredby {\n display: block;\n text-align: center;\n margin-top: 70px;\n margin-bottom: 48px;\n opacity: 0.8;\n\n > svg {\n display: inline-block;\n }\n}\n\n#poweredby:hover,\n#poweredby:focus,\n#poweredby:active {\n opacity: 1;\n}\n\n.modal.email-sent {\n width: 300px;\n}\n\n.modal.email-sent .body {\n @include padding-left(68px);\n}\n\n.modal.email-sent .body:before {\n @include icon;\n display: block;\n position: absolute;\n top: 24px;\n @include left(24px);\n content: 'mail';\n font-size: 30px;\n color: var(--link-color);\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/login.css","mappings":"AAGA,KACE,YAGF,KAGE,8CAFA,kCACA,oDAEA,sDACA,gBAGF,OACE,YAGF,UAGE,qBADA,cADA,iBAEA,CAGF,YAEE,YADA,UACA,CAGF,gBACE,YAGF,YACE,kBAEA,mBACE,SAGF,iBACE,kCAIJ,WAIE,yCAHA,cAEA,kBADA,sBAEA,CAGF,iBACE,UAGF,mBACE,aAIA,4CAGE,qBAAoB,CADpB,wEADA,kBAEA,CAEA,kDACE,wBACA,mBAMJ,oIAGE,aAGF,8CACE,cAIJ,iBAEE,wEADA,kBACA,CAEA,uBACE,UAGF,2BAEE,sBCsXF,oCACE,4BAEF,oCACE,4BA7JF,2CACE,UD1Ne,CC4NjB,2CACE,SD7Ne,CAInB,mBACE,oBAGF,oBACE,4BAGF,kBACE,kCACA,sDC2VA,2BACE,iBDxVF,CC0VA,2BACE,gBD3VF,CAGF,oCAGE,+BADA,cACA,CAGF,gGAIE,wBAGF,oBACE,kCACA,YACA,WAGF,cAEE,yBACA,eAFA,iBAEA,CAGF,WACE,cAGA,mBADA,gBAEA,WAHA,iBAGA,CAEA,eACE,qBAIJ,oDAGE,UAGF,kBACE,YC0TA,iCACE,iBDvTF,CCyTA,iCACE,kBD1TF,CAGF,+BCsBE,WACA,4CAGA,wCACA,uCACA,oCAOA,mCACA,kCAMA,2BDlCA,wBAFA,eC4BA,cAIA,qBDpCA,cCmBA,kBDdA,eCiCA,kBATA,oBADA,gBAGA,cAYA,4BD1CA,kBCoCA,kBAVA,kCAGA,oBD5BA,SCuCA,0CAFA,qBDjCA,CCgIA,wCACE,SDpIY,CCsId,wCACE,UDvIY","sources":["webpack:///./login.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\nhtml {\n height: 100%;\n}\n\nbody {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n min-height: 100%;\n}\n\n#login {\n width: 300px;\n}\n\n#login h1 {\n text-align: center;\n font-size: 3em;\n word-wrap: break-word;\n}\n\n#login-logo {\n width: 100%;\n height: auto;\n}\n\n#login-form-top {\n padding: 1px;\n}\n\n#login-form {\n position: relative;\n\n .field {\n margin: 0;\n }\n\n .btn {\n display: flex;\n }\n}\n\n#loginName {\n margin: 0 -1px;\n width: calc(100% + 2px);\n padding: 14px 16px;\n border-radius: var(--large-border-radius);\n}\n\n#loginName-field {\n z-index: 1;\n}\n\n#remember-password {\n display: none;\n}\n\n#login-form:not(.reset-password) {\n #loginName {\n margin: -1px -1px 0;\n border-radius: var(--large-border-radius) var(--large-border-radius) 0 0;\n border-bottom-width: 0;\n\n &:focus {\n border-bottom-width: 1px;\n margin-bottom: -1px;\n }\n }\n}\n\n#login-form.reset-password {\n #password-field,\n #rememberMe-field,\n #forgot-password {\n display: none;\n }\n\n #remember-password {\n display: block;\n }\n}\n\n.passwordwrapper {\n margin: 0 -1px -1px;\n border-radius: 0 0 var(--large-border-radius) var(--large-border-radius);\n\n &.focus {\n z-index: 1;\n }\n\n #password {\n @include padding(14px, 4rem, 14px, 16px);\n border-radius: inherit;\n }\n\n .password-toggle {\n @include right(14px);\n }\n}\n\n#login-form-bottom {\n margin-top: var(--m);\n}\n\n#login-form-buttons {\n margin: var(--xl) 0 var(--s);\n}\n\n#login-form-extra {\n display: flex;\n justify-content: center;\n}\n\n#rememberMe-field {\n @include margin-right(14px);\n}\n\n#forgot-password,\n#remember-password {\n font-size: 11px;\n color: var(--medium-text-color);\n}\n\n#forgot-password:hover,\n#forgot-password:focus,\n#remember-password:hover,\n#remember-password:focus {\n color: var(--link-color);\n}\n\n#login-form .submit {\n display: flex;\n height: 44px;\n width: 100%;\n}\n\n#login-errors {\n text-align: center;\n color: var(--error-color);\n margin-top: 1em;\n}\n\n#poweredby {\n display: block;\n text-align: center;\n margin-top: 70px;\n margin-bottom: 48px;\n opacity: 0.8;\n\n > svg {\n display: inline-block;\n }\n}\n\n#poweredby:hover,\n#poweredby:focus,\n#poweredby:active {\n opacity: 1;\n}\n\n.modal.email-sent {\n width: 300px;\n}\n\n.modal.email-sent .body {\n @include padding-left(68px);\n}\n\n.modal.email-sent .body:before {\n @include icon;\n display: block;\n position: absolute;\n top: 24px;\n @include left(24px);\n content: 'mail';\n font-size: 30px;\n color: var(--link-color);\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/money/dist/css/Money.css b/src/web/assets/money/dist/css/Money.css index 24ea0279267..7fd5a075241 100644 --- a/src/web/assets/money/dist/css/Money.css +++ b/src/web/assets/money/dist/css/Money.css @@ -1,2 +1,2 @@ -.money-container{-webkit-align-items:center;align-items:center;display:-webkit-inline-flex;display:inline-flex;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;gap:0}.money-container .money-currency-label{-webkit-align-items:center;align-items:center;background-clip:padding-box;background-color:#fbfcfe;background:transparent;border:1px solid rgba(96,125,159,.25);border-radius:3px;box-sizing:border-box;display:-webkit-flex;display:flex;height:100%;padding:6px 9px;white-space:nowrap}body.ltr .money-container .money-currency-label{border-right:none}body.rtl .money-container .money-currency-label{border-left:none}body.ltr .money-container .money-currency-label{border-top-right-radius:0}body.rtl .money-container .money-currency-label{border-top-left-radius:0}body.ltr .money-container .money-currency-label{border-bottom-right-radius:0}body.rtl .money-container .money-currency-label{border-bottom-left-radius:0}body.ltr .money-container .money-currency-label+.text{border-top-left-radius:0}body.rtl .money-container .money-currency-label+.text{border-top-right-radius:0}body.ltr .money-container .money-currency-label+.text{border-bottom-left-radius:0}body.rtl .money-container .money-currency-label+.text{border-bottom-right-radius:0}.money-container .money-placeholder{color:var(--light-sel-color)} +.money-container{-webkit-align-items:center;align-items:center;display:-webkit-inline-flex;display:inline-flex;-webkit-flex-wrap:nowrap;flex-wrap:nowrap;gap:0}.money-container .money-currency-label{-webkit-align-items:center;align-items:center;background-clip:padding-box;background-color:#fbfcfe;background:transparent;border:1px solid var(--input-border-color);border-radius:3px;box-sizing:border-box;display:-webkit-flex;display:flex;height:100%;padding:6px 9px;white-space:nowrap}body.ltr .money-container .money-currency-label{border-right:none}body.rtl .money-container .money-currency-label{border-left:none}body.ltr .money-container .money-currency-label{border-top-right-radius:0}body.rtl .money-container .money-currency-label{border-top-left-radius:0}body.ltr .money-container .money-currency-label{border-bottom-right-radius:0}body.rtl .money-container .money-currency-label{border-bottom-left-radius:0}body.ltr .money-container .money-currency-label+.text{border-top-left-radius:0}body.rtl .money-container .money-currency-label+.text{border-top-right-radius:0}body.ltr .money-container .money-currency-label+.text{border-bottom-left-radius:0}body.rtl .money-container .money-currency-label+.text{border-bottom-right-radius:0}.money-container .money-placeholder{color:var(--light-sel-color)} /*# sourceMappingURL=Money.css.map*/ \ No newline at end of file diff --git a/src/web/assets/money/dist/css/Money.css.map b/src/web/assets/money/dist/css/Money.css.map index 12090d174be..c660dce8ac8 100644 --- a/src/web/assets/money/dist/css/Money.css.map +++ b/src/web/assets/money/dist/css/Money.css.map @@ -1 +1 @@ -{"version":3,"file":"css/Money.css","mappings":"AAEA,iBAEE,8CADA,gDAEA,0CACA,MAEA,uCAKE,8CCqkBF,4BADA,yBDlkBE,uBCikBF,sCADA,iBA7ckB,CDpHhB,sBAEA,kCACA,YACA,gBACA,mBC8UF,gDACE,iBDxVA,CC0VF,gDACE,gBD3VA,CCoYF,gDACE,yBDpYA,CCsYF,gDACE,wBDvYA,CCqZF,gDACE,4BDrZA,CCuZF,gDACE,2BDxZA,CCyXF,sDACE,wBDhXE,CCkXJ,sDACE,yBDnXE,CCiYJ,sDACE,2BDjYE,CCmYJ,sDACE,4BDpYE,CAGJ,oCACE","sources":["webpack:///./Money.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@import '@craftcms/sass/mixins';\n\n.money-container {\n display: inline-flex;\n align-items: center;\n flex-wrap: nowrap;\n gap: 0;\n\n .money-currency-label {\n @include input-styles;\n @include border-right(none);\n @include border-top-right-radius(0);\n @include border-bottom-right-radius(0);\n align-items: center;\n box-sizing: border-box;\n background: transparent;\n display: flex;\n height: 100%;\n padding: 6px 9px;\n white-space: nowrap;\n\n & + .text {\n @include border-top-left-radius(0);\n @include border-bottom-left-radius(0);\n }\n }\n .money-placeholder {\n color: var(--light-sel-color);\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/Money.css","mappings":"AAEA,iBAEE,8CADA,gDAEA,0CACA,MAEA,uCAKE,8CCqkBF,4BADA,yBDlkBE,uBCikBF,2CADA,iBA7ckB,CDpHhB,sBAEA,kCACA,YACA,gBACA,mBC8UF,gDACE,iBDxVA,CC0VF,gDACE,gBD3VA,CCoYF,gDACE,yBDpYA,CCsYF,gDACE,wBDvYA,CCqZF,gDACE,4BDrZA,CCuZF,gDACE,2BDxZA,CCyXF,sDACE,wBDhXE,CCkXJ,sDACE,yBDnXE,CCiYJ,sDACE,2BDjYE,CCmYJ,sDACE,4BDpYE,CAGJ,oCACE","sources":["webpack:///./Money.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@import '@craftcms/sass/mixins';\n\n.money-container {\n display: inline-flex;\n align-items: center;\n flex-wrap: nowrap;\n gap: 0;\n\n .money-currency-label {\n @include input-styles;\n @include border-right(none);\n @include border-top-right-radius(0);\n @include border-bottom-right-radius(0);\n align-items: center;\n box-sizing: border-box;\n background: transparent;\n display: flex;\n height: 100%;\n padding: 6px 9px;\n white-space: nowrap;\n\n & + .text {\n @include border-top-left-radius(0);\n @include border-bottom-left-radius(0);\n }\n }\n .money-placeholder {\n color: var(--light-sel-color);\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/plugins/dist/css/PluginManager.css.map b/src/web/assets/plugins/dist/css/PluginManager.css.map index 3a5bbfe5b44..ed3f5bcad34 100644 --- a/src/web/assets/plugins/dist/css/PluginManager.css.map +++ b/src/web/assets/plugins/dist/css/PluginManager.css.map @@ -1 +1 @@ -{"version":3,"file":"css/PluginManager.css","mappings":"AAKI,oCAGE,oBADA,gBACA,CAGF,6BAEE,cADA,eACA,CAEA,gFAEE,mBAGF,mCACE,cAGA,kBAFA,kBAEA,CCqbN,4CACE,iBDvbI,CCybN,4CACE,gBD1bI,CAGA,qCACE,cACA,cAGF,8EAEE,cAEA,YADA,UACA,CAGF,uDAOE,qFACA,2BAPA,cAKA,YAJA,kBACA,SAEA,UAGA,iECsQR,SACE,iEAEF,UACE,8DDxQM,8CACE,8CAKN,qBACE,yDAGE,4BACA,sBAFF,oBACE,cAIA,sBACA,gBAJA,aACA,CADA,gBACA,kBAGA,4DAEA,iFAQE,yCACA,mBACA,2BACA,iCAPF,kBACE,SAMA,qCAEA,oCARA,wBAGA,iBAKA,2ECsXV,0FAGA,gLDvXU,cAEE,CACA,eACA,CAFA,gBACA,CAHF,aAKE,gFAGF,mCACE,qBACA,mBACA,wBACA,+BACA,6GAIA,mCACA,CACA,yBACA,CAFA,kBACA,CACA,kBACA,CALF,kBAKE,wBACA,oCACA,yIC6VZ,uHAGA,wHAwBA,wHAGA,kBACE,qGDhXY,kBAGA,CANA,WAFF,cAEE,WAEA,CACA,SALF,iBACE,CACA,MAMA,qCACA,oCALA,OAKA,+GAIE,yEACA,CAHF,yBAEE,CAFF,SAGE,+GAMA,yEACA,CAHF,yBAEE,CAFF,UAGE,yEAQN,8BACA,CAFF,oBAEE,uFAEA,uBACE,wFAGF,4BACE,sHAOI,oCACA,CAHF,yBAEE,CAFF,SAGE,sHAGF,mCACE,kEAMR,8BACE,gBACA,2EC6RV,2FAGA,kBACE,qGD5RI,oEAQE,6BACA,CAJF,oBACE,cACA,sBACA,gBAFA,kBAGA,0DAGE,0BACA,oBAFF,oBACE,aACA,qFC2QV,qGAGA,kBACE,uIDvQU,sDCEZ,wCAGA,uCACA,oCACA,CAKA,kCAEA,kCACA,CAKA,0BACA,CAGA,qBDpBc,CCOd,aACA,CAGA,oBAEA,CDjBY,kBCkBZ,kBATA,mBACA,CAFA,eACA,CAEA,cAaA,gBAFA,2BAEA,CAPA,kBAVA,iCACA,CAEA,mBACA,CAUA,wBACA,kBAHA,qBDfc,0JCwQd,0KAGA,qLDpQc,kBACE,6EAKN,+FAIA,kBACE,2DAKN,+EAII,+BAEA,0CACA,CAJF,oBAIE,4EAEA,wBAEE,CAFF,gBAGE,YACA,CAFA,mBACA,WACA,mIAKJ,+DAMF,4EAQA","sources":["webpack:///./plugins.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n#plugins {\n tbody {\n th,\n td {\n padding-top: 20px;\n padding-bottom: 20px;\n }\n\n .plugin-infos {\n font-weight: normal;\n display: table;\n\n .icon,\n .plugin-details {\n display: table-cell;\n }\n\n .icon {\n display: block;\n vertical-align: top;\n @include margin-right(14px);\n position: relative;\n\n a {\n display: block;\n line-height: 0;\n }\n\n svg,\n img {\n display: block;\n width: 44px;\n height: 44px;\n }\n\n .license-key-status {\n display: block;\n position: absolute;\n top: 26px;\n @include left(26px);\n width: 20px;\n height: 20px;\n background: no-repeat 0 0 url(images/invalid-icon.svg);\n background-size: 100% 100%;\n\n &.valid {\n background-image: url(images/valid-icon.svg);\n }\n }\n }\n\n .plugin-details {\n vertical-align: middle;\n\n .plugin-id {\n display: flex;\n align-items: baseline;\n margin-bottom: 0;\n font-size: 1em;\n white-space: nowrap;\n flex-wrap: wrap;\n\n h2 {\n margin-bottom: 0;\n }\n\n .edition {\n position: relative;\n top: -1px;\n @include margin-left(7px);\n user-select: none;\n border: 1px solid var(--medium-text-color);\n border-radius: 3px;\n display: inline-flex;\n height: 18px;\n transition: border-color linear 100ms;\n\n & > .edition-name,\n & > .edition-trial {\n padding: 0 6px;\n font-size: 11px;\n line-height: 16px;\n font-weight: normal;\n }\n\n & > .edition-name {\n color: var(--medium-dark-text-color);\n letter-spacing: 1.5px;\n padding-right: 5px;\n text-transform: uppercase;\n transition: color linear 100ms;\n }\n\n & > .edition-trial {\n position: relative;\n background: var(--medium-text-color);\n color: var(--white);\n border-radius: 0 1px 1px 0;\n letter-spacing: 1px;\n text-transform: lowercase;\n transition: background linear 100ms;\n }\n\n & .edition-name + .edition-trial {\n @include margin-left(4px);\n @include padding-left(4px);\n\n &:before {\n display: block;\n position: absolute;\n top: 0;\n content: '';\n font-size: 0;\n width: 0;\n height: 0;\n border-style: solid;\n transition: border-color linear 100ms;\n\n body.ltr & {\n left: -7px;\n border-width: 0 7px 16px 0;\n border-color: transparent var(--medium-text-color) transparent\n transparent;\n }\n\n body.rtl & {\n right: -7px;\n border-width: 0 0 16px 7px;\n border-color: transparent transparent transparent\n var(--medium-text-color);\n }\n }\n }\n }\n\n a.edition:hover {\n text-decoration: none;\n border-color: var(--link-color);\n\n & > .edition-name {\n color: var(--link-color);\n }\n\n & > .edition-trial {\n background: var(--link-color);\n }\n\n & .edition-name + .edition-trial {\n &:before {\n body.ltr & {\n left: -7px;\n border-width: 0 7px 16px 0;\n border-right-color: var(--link-color);\n }\n\n body.rtl & {\n border-left-color: var(--link-color);\n }\n }\n }\n }\n\n .version {\n color: var(--medium-text-color);\n font-weight: normal;\n @include margin-left(14px);\n }\n }\n\n p,\n ul.links {\n margin: 0.2em 0;\n }\n\n ul.links {\n display: flex;\n white-space: nowrap;\n flex-wrap: wrap;\n color: var(--light-text-color);\n\n li {\n display: flex;\n align-items: center;\n\n &:not(:first-child) {\n @include margin-left(14px);\n }\n\n a,\n span {\n &:before {\n @include icon;\n @include margin-right(4px);\n margin-top: -3px;\n color: var(--gray-300);\n }\n }\n\n &.link-developer {\n a,\n span {\n &:before {\n content: 'building';\n }\n }\n }\n\n &.link-docs a:before {\n content: 'book';\n }\n\n &.link-settings a:before {\n content: 'settings';\n }\n }\n }\n\n .license-key {\n margin-top: 1em;\n\n .pane {\n margin: 0;\n padding: 3px;\n background: transparentize($inputColor, 0.75);\n border-radius: var(--medium-border-radius);\n\n input.text {\n font-weight: bold;\n font-size: 11px !important;\n padding: 3px 7px 1px;\n width: 19em;\n min-height: 0;\n }\n }\n\n .btn,\n .spinner {\n margin: 0;\n }\n }\n\n .expired {\n margin-top: 1em;\n }\n }\n }\n\n &:not(.collapsed) {\n .plugin-infos {\n .plugin-details {\n min-width: 150px;\n }\n }\n }\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/PluginManager.css","mappings":"AAKI,oCAGE,oBADA,gBACA,CAGF,6BAEE,cADA,eACA,CAEA,gFAEE,mBAGF,mCACE,cAGA,kBAFA,kBAEA,CCqbN,4CACE,iBDvbI,CCybN,4CACE,gBD1bI,CAGA,qCACE,cACA,cAGF,8EAEE,cAEA,YADA,UACA,CAGF,uDAOE,qFACA,2BAPA,cAKA,YAJA,kBACA,SAEA,UAGA,iECsQR,SACE,iEAEF,UACE,8DDxQM,8CACE,8CAKN,qBACE,yDAGE,4BACA,sBAFF,oBACE,cAIA,sBACA,gBAJA,aACA,CADA,gBACA,kBAGA,4DAEA,iFAQE,yCACA,mBACA,2BACA,iCAPF,kBACE,SAMA,qCAEA,oCARA,wBAGA,iBAKA,2ECsXV,0FAGA,gLDvXU,cAEE,CACA,eACA,CAFA,gBACA,CAHF,aAKE,gFAGF,mCACE,qBACA,mBACA,wBACA,+BACA,6GAIA,mCACA,CACA,yBACA,CAFA,kBACA,CACA,kBACA,CALF,kBAKE,wBACA,oCACA,yIC6VZ,uHAGA,wHAwBA,wHAGA,kBACE,qGDhXY,kBAGA,CANA,WAFF,cAEE,WAEA,CACA,SALF,iBACE,CACA,MAMA,qCACA,oCALA,OAKA,+GAIE,yEACA,CAHF,yBAEE,CAFF,SAGE,+GAMA,yEACA,CAHF,yBAEE,CAFF,UAGE,yEAQN,8BACA,CAFF,oBAEE,uFAEA,uBACE,wFAGF,4BACE,sHAOI,oCACA,CAHF,yBAEE,CAFF,SAGE,sHAGF,mCACE,kEAMR,8BACE,gBACA,2EC6RV,2FAGA,kBACE,qGD5RI,oEAQE,6BACA,CAJF,oBACE,cACA,sBACA,gBAFA,kBAGA,0DAGE,0BACA,oBAFF,oBACE,aACA,qFC2QV,qGAGA,kBACE,uIDvQU,sDCEZ,wCAGA,uCACA,oCACA,CAKA,kCAEA,kCACA,CAKA,0BACA,CAGA,qBDpBc,CCOd,aACA,CAGA,oBAEA,CDjBY,kBCkBZ,kBATA,mBACA,CAFA,eACA,CAEA,cAaA,gBAFA,2BAEA,CAPA,kBAVA,iCACA,CAEA,mBACA,CAUA,wBACA,kBAHA,qBDfc,0JCwQd,0KAGA,qLDpQc,kBACE,6EAKN,+FAIA,kBACE,2DAKN,+EAII,+BAEA,0CACA,CAJF,oBAIE,4EAEA,wBAEE,CAFF,gBAGE,YACA,CAFA,mBACA,WACA,mIAKJ,+DAMF,4EAQA","sources":["webpack:///./plugins.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n#plugins {\n tbody {\n th,\n td {\n padding-top: 20px;\n padding-bottom: 20px;\n }\n\n .plugin-infos {\n font-weight: normal;\n display: table;\n\n .icon,\n .plugin-details {\n display: table-cell;\n }\n\n .icon {\n display: block;\n vertical-align: top;\n @include margin-right(14px);\n position: relative;\n\n a {\n display: block;\n line-height: 0;\n }\n\n svg,\n img {\n display: block;\n width: 44px;\n height: 44px;\n }\n\n .license-key-status {\n display: block;\n position: absolute;\n top: 26px;\n @include left(26px);\n width: 20px;\n height: 20px;\n background: no-repeat 0 0 url(images/invalid-icon.svg);\n background-size: 100% 100%;\n\n &.valid {\n background-image: url(images/valid-icon.svg);\n }\n }\n }\n\n .plugin-details {\n vertical-align: middle;\n\n .plugin-id {\n display: flex;\n align-items: baseline;\n margin-bottom: 0;\n font-size: 1em;\n white-space: nowrap;\n flex-wrap: wrap;\n\n h2 {\n margin-bottom: 0;\n }\n\n .edition {\n position: relative;\n top: -1px;\n @include margin-left(7px);\n user-select: none;\n border: 1px solid var(--medium-text-color);\n border-radius: 3px;\n display: inline-flex;\n height: 18px;\n transition: border-color linear 100ms;\n\n & > .edition-name,\n & > .edition-trial {\n padding: 0 6px;\n font-size: 11px;\n line-height: 16px;\n font-weight: normal;\n }\n\n & > .edition-name {\n color: var(--medium-dark-text-color);\n letter-spacing: 1.5px;\n padding-right: 5px;\n text-transform: uppercase;\n transition: color linear 100ms;\n }\n\n & > .edition-trial {\n position: relative;\n background: var(--medium-text-color);\n color: var(--white);\n border-radius: 0 1px 1px 0;\n letter-spacing: 1px;\n text-transform: lowercase;\n transition: background linear 100ms;\n }\n\n & .edition-name + .edition-trial {\n @include margin-left(4px);\n @include padding-left(4px);\n\n &:before {\n display: block;\n position: absolute;\n top: 0;\n content: '';\n font-size: 0;\n width: 0;\n height: 0;\n border-style: solid;\n transition: border-color linear 100ms;\n\n body.ltr & {\n left: -7px;\n border-width: 0 7px 16px 0;\n border-color: transparent var(--medium-text-color) transparent\n transparent;\n }\n\n body.rtl & {\n right: -7px;\n border-width: 0 0 16px 7px;\n border-color: transparent transparent transparent\n var(--medium-text-color);\n }\n }\n }\n }\n\n a.edition:hover {\n text-decoration: none;\n border-color: var(--link-color);\n\n & > .edition-name {\n color: var(--link-color);\n }\n\n & > .edition-trial {\n background: var(--link-color);\n }\n\n & .edition-name + .edition-trial {\n &:before {\n body.ltr & {\n left: -7px;\n border-width: 0 7px 16px 0;\n border-right-color: var(--link-color);\n }\n\n body.rtl & {\n border-left-color: var(--link-color);\n }\n }\n }\n }\n\n .version {\n color: var(--medium-text-color);\n font-weight: normal;\n @include margin-left(14px);\n }\n }\n\n p,\n ul.links {\n margin: 0.2em 0;\n }\n\n ul.links {\n display: flex;\n white-space: nowrap;\n flex-wrap: wrap;\n color: var(--light-text-color);\n\n li {\n display: flex;\n align-items: center;\n\n &:not(:first-child) {\n @include margin-left(14px);\n }\n\n a,\n span {\n &:before {\n @include icon;\n @include margin-right(4px);\n margin-top: -3px;\n color: var(--gray-300);\n }\n }\n\n &.link-developer {\n a,\n span {\n &:before {\n content: 'building';\n }\n }\n }\n\n &.link-docs a:before {\n content: 'book';\n }\n\n &.link-settings a:before {\n content: 'settings';\n }\n }\n }\n\n .license-key {\n margin-top: 1em;\n\n .pane {\n margin: 0;\n padding: 3px;\n background: transparentize($inputColor, 0.75);\n border-radius: var(--medium-border-radius);\n\n input.text {\n font-weight: bold;\n font-size: 11px !important;\n padding: 3px 7px 1px;\n width: 19em;\n min-height: 0;\n }\n }\n\n .btn,\n .spinner {\n margin: 0;\n }\n }\n\n .expired {\n margin-top: 1em;\n }\n }\n }\n\n &:not(.collapsed) {\n .plugin-infos {\n .plugin-details {\n min-width: 150px;\n }\n }\n }\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/pluginstore/dist/css/app.css b/src/web/assets/pluginstore/dist/css/app.css index a57cccc8852..33960e9e31c 100644 --- a/src/web/assets/pluginstore/dist/css/app.css +++ b/src/web/assets/pluginstore/dist/css/app.css @@ -1,2 +1,2 @@ -.edition-badge[data-v-27585133]{display:inline-block}.edition-badge.is-block[data-v-27585133]{display:block}.edition-badge[data-v-27585133]:not(.is-block){position:relative}.edition-badge.is-big .edition-badge-name[data-v-27585133]{font-size:1rem;line-height:1.5rem;padding:.25rem .75rem}.edition-badge .edition-badge-name[data-v-27585133]{--tw-border-opacity:1;--tw-text-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity));border-radius:.25rem;border-style:solid;border-width:1px;color:rgb(107 114 128/var(--tw-text-opacity));display:inline-block;font-size:.75rem;letter-spacing:1.5px;line-height:1rem;padding:.25rem .5rem;text-transform:uppercase}.plugin-details-header[data-v-28e904f0]{line-height:1.5;margin-bottom:.25rem;max-height:4.75em;overflow:hidden}.plugin-details-header .plugin-name[data-v-28e904f0]{display:-webkit-flex;display:flex;margin-bottom:.25rem}.plugin-details-header .plugin-name .edition-badge[data-v-28e904f0]{margin-left:.5rem}a.plugin-card[data-v-28e904f0]{box-sizing:border-box}a.plugin-card[data-v-28e904f0],a.plugin-card[data-v-28e904f0]:hover{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity))}a.plugin-card:hover strong[data-v-28e904f0]{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity))}a.plugin-card .installed[data-v-28e904f0]{color:#ccc;position:absolute;top:14px}body.ltr a.plugin-card .installed[data-v-28e904f0]{right:18px}body.rtl a.plugin-card .installed[data-v-28e904f0]{left:18px}.ps-grid-plugins .plugin-card[data-v-28e904f0]{height:100%}.info-hud{display:inline-block}.info-hud .v-popover{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity));display:inline-block;line-height:0}.info-hud .v-popover.open,.info-hud .v-popover:hover{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity));cursor:pointer}.info-hud .v-popover>span{outline:none}.tooltip{max-width:250px}.license-status.license-status[data-v-1b8bf069]:hover{cursor:default}.license-status.license-status.installed[data-v-1b8bf069]{--tw-border-opacity:1;--tw-text-opacity:1;border-color:rgb(21 128 61/var(--tw-border-opacity));color:rgb(21 128 61/var(--tw-text-opacity))}.license-status.license-status.licensed[data-v-1b8bf069]{--tw-border-opacity:1;--tw-text-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity));color:rgb(37 99 235/var(--tw-text-opacity))}.cms-editions-edition{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity));border-radius:.25rem;border-style:solid;border-width:1px;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;padding:2rem;text-align:center}.cms-editions-edition .description{-webkit-flex:1 1 0%;flex:1 1 0%}.cms-editions-edition .description .edition-name{--tw-border-opacity:1;--tw-text-opacity:1;border-bottom-width:1px;border-color:rgb(229 231 235/var(--tw-border-opacity));border-style:solid;color:rgb(55 65 81/var(--tw-text-opacity));display:inline-block;font-size:1.125rem;font-weight:700;line-height:1.75rem;padding-bottom:.25rem;padding-top:.25rem;text-transform:uppercase}.cms-editions-edition .description .edition-description{font-size:1.125rem;line-height:1.75rem;line-height:1.5;margin-bottom:1.5rem;margin-top:1.5rem}.cms-editions-edition .description .price{font-size:1.875rem;font-weight:700;line-height:2.25rem;margin-bottom:2rem;margin-top:2rem}.cms-editions-edition .description ul{margin-bottom:2rem;text-align:left}.cms-editions-edition .description ul li{--tw-border-opacity:1;border-bottom-width:1px;border-color:rgb(229 231 235/var(--tw-border-opacity));border-style:solid;padding-bottom:.5rem;padding-top:.5rem}.cms-editions-edition .description ul li:first-child{border-top-width:1px}.cms-editions-edition .cms-edition-actions{position:relative}.cms-editions-edition .cms-edition-actions .c-spinner{bottom:-30px;left:50%;margin-left:-11px;position:absolute}.cms-editions-edition .cms-edition-actions .c-btn{margin-top:.75rem}.status-message{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-flex:1 1 0%;flex:1 1 0%;-webkit-justify-content:center;justify-content:center;text-align:center}.status-message div .c-spinner{margin-bottom:1.5rem}.status-message div .c-icon{height:48px;margin-bottom:1.5rem;width:48px}.status-message div .message{text-align:center}.plugin-actions .c-spinner{bottom:-32px;left:50%;position:absolute}body{--chart-fill-color:#dbeafe}.changelog-release{--tw-border-opacity:1;border-bottom-width:1px;border-color:rgb(229 231 235/var(--tw-border-opacity));border-style:solid;padding-bottom:1rem;padding-top:.5rem}@media (min-width:768px){.changelog-release{display:-webkit-flex;display:flex}}.changelog-release .version{position:relative}@media (min-width:768px){.changelog-release .version{width:12rem}}.changelog-release .version .anchor{--tw-text-opacity:1;border-radius:9999px;color:rgb(255 255 255/var(--tw-text-opacity));font-size:14px;padding:.25rem;position:absolute;top:1.25rem;-webkit-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}body.ltr .changelog-release .version .anchor{left:-24px}body.rtl .changelog-release .version .anchor{right:-24px}.changelog-release .version .anchor:hover,.changelog-release .version:hover .anchor{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.changelog-release .version h2{font-size:1.125rem;line-height:1.75rem;margin-bottom:.5rem;margin-top:1.5rem}.changelog-release .version .date{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity))}.changelog-release .version .critical{--tw-border-opacity:1;--tw-text-opacity:1;border-color:rgb(220 38 38/var(--tw-border-opacity));border-radius:.25rem;border-style:solid;border-width:1px;color:rgb(220 38 38/var(--tw-text-opacity));display:inline-block;font-size:.875rem;line-height:1.25rem;margin-top:.5rem;padding:0 .25rem;text-transform:uppercase}.changelog-release .details{padding:1.5rem 0 0}@media (min-width:768px){.changelog-release .details{-webkit-flex:1 1 0%;flex:1 1 0%}}.changelog-release .details h3{font-size:1rem;line-height:1.5rem;margin-bottom:1rem;margin-top:1.5rem}.changelog-release .details ul{line-height:1.5;list-style-type:disc;margin-bottom:1rem;margin-left:1.5rem}.changelog-release .details ul li:not(:first-child){margin-top:.25rem}#pluginstore-modal{left:0;max-height:650px;max-width:850px;position:absolute;top:0;z-index:100}#pluginstore-modal .pluginstore-modal-flex{bottom:0;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;left:0;position:absolute;right:0;top:0}#pluginstore-modal .pluginstore-modal-flex header .btn-left{position:absolute;top:28px}body.ltr #pluginstore-modal .pluginstore-modal-flex header .btn-left{left:24px}body.rtl #pluginstore-modal .pluginstore-modal-flex header .btn-left{right:24px}#pluginstore-modal .pluginstore-modal-flex header h1{text-align:center}#pluginstore-modal .pluginstore-modal-flex .pluginstore-modal-main{display:-webkit-flex;display:flex;-webkit-flex-grow:1;flex-grow:1;margin-bottom:0;min-height:0;position:relative}#pluginstore-modal .pluginstore-modal-flex .pluginstore-modal-main .pluginstore-modal-content{-webkit-flex-grow:1;flex-grow:1;overflow:auto;padding:24px}.category-selector-btn[data-v-a5bf3e5a]{display:block;position:relative}@media (min-width:1024px){.category-selector-btn[data-v-a5bf3e5a]{display:none}}.category-selector-btn[data-v-a5bf3e5a]{background:#f3f7fc;border:1px solid rgba(51,64,77,.1);border-radius:4px;color:#606d7b;padding:10px 20px}.category-selector-btn[data-v-a5bf3e5a]:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;content:"downangle";direction:ltr;display:inline-block;font-family:Craft;font-size:16px;font-style:normal;font-variant:normal;font-weight:400;line-height:1;line-height:20px;opacity:var(--icon-opacity);position:absolute;right:0;text-align:center;text-rendering:optimizeLegibility;text-transform:none;top:calc(50% - 10px);-webkit-user-select:none;user-select:none;vertical-align:middle;width:43px}.category-selector-btn[data-v-a5bf3e5a]:hover{-webkit-text-decoration-line:none;text-decoration-line:none}.category-selector[data-v-a5bf3e5a]{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));-webkit-flex-direction:column;flex-direction:column;left:0;position:fixed;top:0;z-index:20}@media (min-width:1024px){.category-selector[data-v-a5bf3e5a]{display:-webkit-flex;display:flex}}.category-selector[data-v-a5bf3e5a]{box-sizing:border-box;display:none;height:100vh;width:100vw}.category-selector .category-selector-body[data-v-a5bf3e5a]{box-sizing:border-box;height:100%;overflow:auto;padding:1.5rem}.category-selector .category-selector-body .nav-items ul li:first-child a[data-v-a5bf3e5a]{border-top:0}.category-selector .category-selector-body .nav-items ul li[data-v-a5bf3e5a]:first-child:before{display:none}.category-selector .category-selector-body .nav-items ul li[data-v-a5bf3e5a]:after,.category-selector .category-selector-body .nav-items ul li[data-v-a5bf3e5a]:before{left:1rem;right:1rem}.category-selector .category-selector-body .nav-items ul li a[data-v-a5bf3e5a]{padding-left:55px}.category-selector .category-selector-body .nav-items ul li a img[data-v-a5bf3e5a]{left:24px}#screenshot-modal{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity));bottom:0;left:0;overflow:hidden;position:fixed;right:0;top:0;z-index:101}#screenshot-modal .screenshot-modal-button{background-color:rgba(209,213,219,.3)}#screenshot-modal .screenshot-modal-button:hover{background-color:rgba(209,213,219,.8)}#screenshot-modal .screenshot-modal-button{--tw-text-opacity:1;border-radius:.25rem;color:rgb(55 65 81/var(--tw-text-opacity));font-size:1.875rem;line-height:2.25rem;padding:.5rem}#screenshot-modal .close{display:inline-block;left:1rem;position:absolute;text-align:center;top:1rem;z-index:30}#screenshot-modal .close:hover{color:rgba(0,0,0,.8);-webkit-text-decoration-line:none;text-decoration-line:none}#screenshot-modal .carousel{bottom:0;left:0;position:absolute;right:0;top:0}#screenshot-modal .carousel,#screenshot-modal .carousel .swiper-container{display:-webkit-flex;display:flex}#screenshot-modal .carousel .swiper-container .swiper-wrapper{display:-webkit-flex;display:flex;-webkit-flex:1 1 0%;flex:1 1 0%;height:auto;width:auto}#screenshot-modal .carousel .swiper-container .swiper-wrapper .swiper-slide{text-align:center}#screenshot-modal .carousel .swiper-container .swiper-wrapper .swiper-slide,#screenshot-modal .carousel .swiper-container .swiper-wrapper .swiper-slide .screenshot{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-flex:1 1 0%;flex:1 1 0%;-webkit-justify-content:center;justify-content:center}#screenshot-modal .carousel .swiper-container .swiper-wrapper .swiper-slide .screenshot{box-sizing:border-box;height:100%}#screenshot-modal .carousel .swiper-container .swiper-wrapper .swiper-slide .screenshot .swiper-zoom-container{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;height:100%;-webkit-justify-content:center;justify-content:center;text-align:center;width:100%}#screenshot-modal .carousel .swiper-container .swiper-wrapper .swiper-slide .screenshot .swiper-zoom-container img{max-height:100%;max-width:100%}#screenshot-modal .carousel .ps-swiper-button-next,#screenshot-modal .carousel .ps-swiper-button-prev{-webkit-align-items:center;align-items:center;background-image:none;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center;margin-top:-3rem;position:absolute;top:50%;width:auto;z-index:10}#screenshot-modal .carousel .ps-swiper-button-next.swiper-button-disabled,#screenshot-modal .carousel .ps-swiper-button-prev.swiper-button-disabled{display:none}#screenshot-modal .carousel .ps-swiper-button-next .c-icon,#screenshot-modal .carousel .ps-swiper-button-prev .c-icon{-webkit-flex:1 1 0%;flex:1 1 0%;top:0}#screenshot-modal .carousel .ps-swiper-button-prev{left:0;margin-left:1rem}#screenshot-modal .carousel .ps-swiper-button-prev .c-icon{left:-2px}#screenshot-modal .carousel .ps-swiper-button-next{border-radius:.25rem;height:auto;margin-right:1rem;padding:.5rem;right:0}#screenshot-modal .carousel .pagination-wrapper{bottom:40px;display:-webkit-flex;display:flex;height:.5rem;padding-bottom:0;padding-top:0;position:absolute;width:100%;z-index:10}#screenshot-modal .carousel .pagination-wrapper .pagination-content{display:-webkit-flex;display:flex;-webkit-flex:1 1 0%;flex:1 1 0%;margin-left:auto;margin-right:auto;max-width:20rem;padding-left:2rem;padding-right:2rem}#screenshot-modal .carousel .pagination-wrapper .pagination-content .swiper-pagination{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity));border-radius:9999px;display:-webkit-flex;display:flex;-webkit-flex:1 1 0%;flex:1 1 0%;padding:0;position:relative}#screenshot-modal .carousel .pagination-wrapper .pagination-content .swiper-pagination .swiper-pagination-bullet{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity));border-radius:9999px;-webkit-flex:1 1 0%;flex:1 1 0%;height:.5rem}#screenshot-modal .carousel .pagination-wrapper .pagination-content .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity))}@media(min-width:700px){.carousel .swiper-container .swiper-wrapper .swiper-slide .screenshot .swiper-zoom-container img{padding-left:100px;padding-right:100px}}@media(min-height:700px){.carousel .swiper-container .swiper-wrapper .swiper-slide .screenshot .swiper-zoom-container img{padding-bottom:100px;padding-top:100px}}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::-webkit-backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}img{height:auto;max-width:100%}#main-container #main #main-content #content-container #content{display:-webkit-flex;display:flex;min-height:400px;padding:0}a{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity))}.ps-wrapper{display:-webkit-flex;display:flex;-webkit-flex:1 1 0%;flex:1 1 0%;-webkit-flex-direction:column;flex-direction:column}@media (min-width:1024px){.ps-wrapper{-webkit-flex-direction:row;flex-direction:row}}.ps-wrapper{padding-bottom:0!important}.ps-wrapper .ps-sidebar{background-color:var(--gray-050);padding:1.5rem;width:100%}@media (min-width:1024px){.ps-wrapper .ps-sidebar{border-bottom-width:0;border-right-width:1px;overflow:auto;width:16rem}}body.ltr .ps-wrapper .ps-sidebar{border-radius:var(--large-border-radius) 0 0 var(--large-border-radius)}body.rtl .ps-wrapper .ps-sidebar{border-radius:0 var(--large-border-radius) var(--large-border-radius) 0}@media (min-width:1024px){.ps-wrapper .ps-sidebar .categories{display:block}}.ps-wrapper .ps-main{-webkit-flex:1 1 0%;flex:1 1 0%;overflow:auto}.ps-wrapper .ps-main .ps-container{-webkit-flex:1 1 0%;flex:1 1 0%;margin-left:auto;margin-right:auto;max-width:1200px}.ps-container{padding:1.5rem 2.5rem}a,abbr,acronym,address,article,big,blockquote,body,caption,cite,code,dd,del,dfn,div,dl,dt,em,fieldset,font,form,h1,h2,h3,h4,h5,h6,html,iframe,img,ins,kbd,label,legend,li,main,nav,object,ol,p,pre,q,s,samp,small,span,strike,strong,sub,sup,table,tbody,td,tfoot,th,thead,tr,tt,ul,var{min-width:0}hr{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity))}h1{font-size:18px;margin-bottom:0}h2{margin-top:2rem}h2,p{margin-bottom:1rem}pre{margin-bottom:1rem;max-width:100%;min-width:0;overflow:auto;padding:1rem}code,pre{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}code{padding:.25rem}.no-line-height{line-height:0}.input.success input{border-color:var(--success-color)}.input.errors .select:not(.selectize) select{box-shadow:inset 0 0 0 1px transparent,0 0 0 1px var(--error-color),0 1px 1px rgba(0,0,0,.1)}input.error{--tw-border-opacity:1;border-color:rgb(220 38 38/var(--tw-border-opacity))}.ps-header{--tw-border-opacity:1;border-bottom-width:1px;border-color:rgb(229 231 235/var(--tw-border-opacity));border-style:solid;display:-webkit-flex;display:flex;-webkit-justify-content:space-between;justify-content:space-between;padding-bottom:.5rem;padding-top:.5rem}.swiper-wrapper{min-width:auto}#header h1{cursor:pointer}#main-container,#main-content #content{position:relative}#container{position:static!important}#pluginstore-actions{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-justify-content:space-between;justify-content:space-between}body.ltr #pluginstore-actions>*{margin-left:18px}body.rtl #pluginstore-actions>*{margin-right:18px}#pluginstore-actions #cart-button svg{display:inline-block;height:18px;line-height:0;margin-right:3px;vertical-align:middle;width:18px}#pluginstore-actions #cart-button svg circle,#pluginstore-actions #cart-button svg ellipse,#pluginstore-actions #cart-button svg line,#pluginstore-actions #cart-button svg path,#pluginstore-actions #cart-button svg polygon,#pluginstore-actions #cart-button svg polyline,#pluginstore-actions #cart-button svg rect,#pluginstore-actions #cart-button svg text{fill:var(--secondary-color);stroke-width:0}#pluginstore-actions #cart-button:hover svg circle,#pluginstore-actions #cart-button:hover svg ellipse,#pluginstore-actions #cart-button:hover svg line,#pluginstore-actions #cart-button:hover svg path,#pluginstore-actions #cart-button:hover svg polygon,#pluginstore-actions #cart-button:hover svg polyline,#pluginstore-actions #cart-button:hover svg rect,#pluginstore-actions #cart-button:hover svg text{fill:#55616d;stroke-width:0}#pluginstore-actions #cart-button .badge{--tw-text-opacity:1;background:var(--primary-color);border-radius:1em;color:rgb(255 255 255/var(--tw-text-opacity));display:inline-block;-webkit-flex-shrink:1;flex-shrink:1;font-size:11px;line-height:16px;padding:0 6px;position:relative;top:-1px}body.ltr #pluginstore-actions #cart-button .badge{margin:0 0 0 -6px}body.rtl #pluginstore-actions #cart-button .badge{margin:0 -6px 0 0}#pluginstore-actions #craftid-account:hover{-webkit-text-decoration-line:none;text-decoration-line:none}#pluginstore-actions #craftid-account .photo svg{border-radius:100%;height:22px;vertical-align:middle;width:22px}body.ltr #pluginstore-actions #craftid-account .photo svg{margin-right:7px}body.rtl #pluginstore-actions #craftid-account .photo svg{margin-left:7px}#pluginstore-actions #craftid-account:hover .label{-webkit-text-decoration-line:none;text-decoration-line:none}#pluginstore-actions #craftid-connect-form .ssl-status{display:inline-block}.nav-items ul{margin-left:-1.5rem;margin-right:-1.5rem}.nav-items ul li{position:relative}.nav-items ul li:before,.nav-items ul li:last-child:after{content:"";left:0;position:absolute;right:0}.nav-items ul li:before{top:0}.nav-items ul li:last-child:after{bottom:0}.nav-items ul li a{--tw-text-opacity:1;-webkit-align-items:center;align-items:center;color:rgb(17 24 39/var(--tw-text-opacity));display:-webkit-flex;display:flex;padding:.5rem 1.5rem;position:relative}.nav-items ul li a img,.nav-items ul li a svg{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity));height:1.5rem;margin-right:.75rem;vertical-align:middle;width:1.5rem}.nav-items ul li a:hover{background-color:var(--gray-100);-webkit-text-decoration-line:none;text-decoration-line:none;z-index:10}.nav-items ul li a.router-link-exact-active{background-color:var(--gray-200)}.tooltip{background:var(--white);box-shadow:0 25px 100px rgba(0,0,0,.5);display:block!important;padding:24px;z-index:10000}.tooltip .tooltip-arrow{border-color:#fff;border-style:solid;height:0;margin:12px;position:absolute;width:0}.tooltip[x-placement^=top]{margin-bottom:12px}.tooltip[x-placement^=top] .tooltip-arrow{border-bottom-color:transparent!important;border-left-color:transparent!important;border-right-color:transparent!important;border-width:12px 12px 0;bottom:-12px;left:calc(50% - 12px);margin-bottom:0;margin-top:0}.tooltip[x-placement^=bottom]{margin-top:12px}.tooltip[x-placement^=bottom] .tooltip-arrow{border-left-color:transparent!important;border-right-color:transparent!important;border-top-color:transparent!important;border-width:0 12px 12px;left:calc(50% - 12px);margin-bottom:0;margin-top:0;top:-12px}.tooltip[x-placement^=right]{margin-left:12px}.tooltip[x-placement^=right] .tooltip-arrow{border-bottom-color:transparent!important;border-left-color:transparent!important;border-top-color:transparent!important;border-width:12px 12px 12px 0;left:-12px;margin-left:0;margin-right:0;top:calc(50% - 12px)}.tooltip[x-placement^=left]{margin-right:12px}.tooltip[x-placement^=left] .tooltip-arrow{border-bottom-color:transparent!important;border-right-color:transparent!important;border-top-color:transparent!important;border-width:12px 0 12px 12px;margin-left:0;margin-right:0;right:-12px;top:calc(50% - 12px)}.tooltip[aria-hidden=true]{opacity:0;-o-transition:opacity .15s,visibility .15s;transition:opacity .15s,visibility .15s;visibility:hidden}.tooltip[aria-hidden=false]{opacity:1;-o-transition:opacity .15s;transition:opacity .15s;visibility:visible}.readable table{display:block;overflow:auto;width:100%}.readable table th{font-weight:600}.readable table td,.readable table th{border:1px solid #dfe2e5;padding:6px 13px}.readable table tr{background-color:var(--white);border-top:1px solid #c6cbd1}.readable table tr:nth-child(2n){background-color:var(--gray-050)}.readable table img{background-color:transparent}.tw-invisible{visibility:hidden}.tw-fixed{position:fixed}.tw-absolute{position:absolute}.tw-relative{position:relative}.tw-inset-0{left:0;right:0}.tw-inset-0,.tw-inset-y-0{bottom:0;top:0}.tw-top-0{top:0}.tw-left-0{left:0}.tw-top-4{top:1rem}.tw-right-0{right:0}.tw-bottom-0{bottom:0}.tw-z-10{z-index:10}.tw-my-4{margin-bottom:1rem;margin-top:1rem}.tw-my-1\.5{margin-bottom:.375rem;margin-top:.375rem}.tw-mx-auto{margin-left:auto;margin-right:auto}.tw-my-1{margin-bottom:.25rem;margin-top:.25rem}.tw-my-6{margin-bottom:1.5rem;margin-top:1.5rem}.tw-mr-4{margin-right:1rem}.tw-mt-8{margin-top:2rem}.tw-mb-8{margin-bottom:2rem}.tw-mt-4{margin-top:1rem}.tw-mr-2{margin-right:.5rem}.tw--mt-8{margin-top:-2rem}.tw-mr-8{margin-right:2rem}.tw-mt-1{margin-top:.25rem}.tw-ml-1{margin-left:.25rem}.tw-mt-2{margin-top:.5rem}.tw--mb-px{margin-bottom:-1px}.tw-mb-4{margin-bottom:1rem}.tw-mb-2{margin-bottom:.5rem}.tw--ml-px{margin-left:-1px}.tw-mr-1\.5{margin-right:.375rem}.tw-mt-0{margin-top:0}.tw-ml-8{margin-left:2rem}.tw-mb-1{margin-bottom:.25rem}.tw-ml-2{margin-left:.5rem}.tw-mt-6{margin-top:1.5rem}.tw-mb-6{margin-bottom:1.5rem}.tw-mb-0{margin-bottom:0}.tw-mr-1{margin-right:.25rem}.tw-mr-14{margin-right:3.5rem}.tw-ml-6{margin-left:1.5rem}.tw--mt-12{margin-top:-3rem}.tw-block{display:block}.tw-inline-block{display:inline-block}.tw-flex{display:-webkit-flex;display:flex}.tw-grid{display:grid}.tw-hidden{display:none}.tw-aspect-\[4\/3\]{aspect-ratio:4/3}.tw-h-16{height:4rem}.tw-h-7{height:1.75rem}.tw-h-5{height:1.25rem}.tw-h-full{height:100%}.tw-h-28{height:7rem}.tw-h-3{height:.75rem}.tw-h-8{height:2rem}.tw-h-10{height:2.5rem}.tw-h-14{height:3.5rem}.tw-h-6{height:1.5rem}.tw-h-4{height:1rem}.tw-h-12{height:3rem}.tw-max-h-full{max-height:100%}.tw-w-16{width:4rem}.tw-w-7{width:1.75rem}.tw-w-5{width:1.25rem}.tw-w-full{width:100%}.tw-w-28{width:7rem}.tw-w-3{width:.75rem}.tw-w-64{width:16rem}.tw-w-14{width:3.5rem}.tw-w-1\/3{width:33.333333%}.tw-w-8{width:2rem}.tw-w-3\/5{width:60%}.tw-w-10{width:2.5rem}.tw-w-24{width:6rem}.tw-w-6{width:1.5rem}.tw-w-4{width:1rem}.tw-w-12{width:3rem}.tw-w-auto{width:auto}.tw-max-w-full{max-width:100%}.tw-max-w-sm{max-width:24rem}.tw-max-w-xs{max-width:20rem}.tw-flex-1{-webkit-flex:1 1 0%;flex:1 1 0%}.tw-shrink-0{-webkit-flex-shrink:0;flex-shrink:0}.tw-flex-grow{-webkit-flex-grow:1;flex-grow:1}.tw-cursor-pointer{cursor:pointer}.tw-cursor-default{cursor:default}.tw-snap-x{-webkit-scroll-snap-type:x var(--tw-scroll-snap-strictness);scroll-snap-type:x var(--tw-scroll-snap-strictness)}.tw-snap-mandatory{--tw-scroll-snap-strictness:mandatory}.tw-snap-start{scroll-snap-align:start}.tw-grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.tw-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.tw-flex-col{-webkit-flex-direction:column;flex-direction:column}.tw-flex-nowrap{-webkit-flex-wrap:nowrap;flex-wrap:nowrap}.tw-items-start{-webkit-align-items:flex-start;align-items:flex-start}.tw-items-center{-webkit-align-items:center;align-items:center}.tw-items-baseline{-webkit-align-items:baseline;align-items:baseline}.tw-justify-center{-webkit-justify-content:center;justify-content:center}.tw-justify-between{-webkit-justify-content:space-between;justify-content:space-between}.tw-gap-6{gap:1.5rem}.tw-gap-x-8{-webkit-column-gap:2rem;column-gap:2rem}.tw-space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.tw-space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.tw-space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1.5rem*var(--tw-space-x-reverse))}.tw-space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1rem*var(--tw-space-x-reverse))}.tw-self-end{-webkit-align-self:flex-end;align-self:flex-end}.tw-self-center{-webkit-align-self:center;align-self:center}.tw-overflow-auto{overflow:auto}.tw-overflow-hidden{overflow:hidden}.tw-overflow-x-auto{overflow-x:auto}.tw-rounded-full{border-radius:9999px}.tw-rounded-md{border-radius:.375rem}.tw-rounded-lg{border-radius:.5rem}.tw-rounded{border-radius:.25rem}.tw-rounded-r-none{border-bottom-right-radius:0;border-top-right-radius:0}.tw-rounded-l-none{border-bottom-left-radius:0;border-top-left-radius:0}.tw-border{border-width:1px}.tw-border-0{border-width:0}.tw-border-b{border-bottom-width:1px}.tw-border-b-2{border-bottom-width:2px}.tw-border-t{border-top-width:1px}.tw-border-r{border-right-width:1px}.tw-border-b-0{border-bottom-width:0}.tw-border-solid{border-style:solid}.tw-border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity))}.tw-border-blue-600{--tw-border-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity))}.tw-border-transparent{border-color:transparent}.tw-border-orange-500{--tw-border-opacity:1;border-color:rgb(249 115 22/var(--tw-border-opacity))}.tw-border-green-500{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity))}.tw-border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity))}.tw-border-gray-400{--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity))}.tw-border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity))}.tw-border-red-600{--tw-border-opacity:1;border-color:rgb(220 38 38/var(--tw-border-opacity))}.tw-border-blue-800{--tw-border-opacity:1;border-color:rgb(30 64 175/var(--tw-border-opacity))}.tw-bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity))}.tw-bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity))}.tw-bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity))}.tw-bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity))}.tw-bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.tw-bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity))}.tw-bg-gray-300\/30{background-color:rgba(209,213,219,.3)}.tw-bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.tw-bg-blue-800{--tw-bg-opacity:1;background-color:rgb(30 64 175/var(--tw-bg-opacity))}.tw-bg-red-600{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity))}.tw-bg-gradient-to-b{background-image:-o-linear-gradient(top,var(--tw-gradient-stops));background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.tw-from-blue-100\/100{--tw-gradient-from:#dbeafe;--tw-gradient-to:rgba(219,234,254,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.tw-to-blue-100\/0{--tw-gradient-to:rgba(219,234,254,0)}.tw-fill-current{fill:currentColor}.tw-p-\[2px\]{padding:2px}.tw-p-8{padding:2rem}.tw-p-4{padding:1rem}.tw-p-1{padding:.25rem}.tw-p-0{padding:0}.tw-py-6{padding-bottom:1.5rem;padding-top:1.5rem}.tw-px-4{padding-left:1rem;padding-right:1rem}.tw-py-2{padding-bottom:.5rem;padding-top:.5rem}.tw-px-1{padding-left:.25rem;padding-right:.25rem}.tw-py-3{padding-bottom:.75rem;padding-top:.75rem}.tw-py-4{padding-bottom:1rem;padding-top:1rem}.tw-py-1{padding-bottom:.25rem;padding-top:.25rem}.tw-py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.tw-py-8{padding-bottom:2rem;padding-top:2rem}.tw-px-8{padding-left:2rem;padding-right:2rem}.tw-px-1\.5{padding-left:.375rem;padding-right:.375rem}.tw-px-3{padding-left:.75rem;padding-right:.75rem}.tw-py-0{padding-bottom:0;padding-top:0}.tw-px-2{padding-left:.5rem;padding-right:.5rem}.tw-pb-4{padding-bottom:1rem}.tw-pb-6{padding-bottom:1.5rem}.tw-pb-8{padding-bottom:2rem}.tw-pt-4{padding-top:1rem}.tw-pb-0{padding-bottom:0}.tw-pt-6{padding-top:1.5rem}.tw-pl-3{padding-left:.75rem}.tw-pl-9{padding-left:2.25rem}.tw-pt-2{padding-top:.5rem}.tw-text-left{text-align:left}.tw-text-center{text-align:center}.tw-text-right{text-align:right}.tw-align-middle{vertical-align:middle}.tw-font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.tw-text-base{font-size:1rem;line-height:1.5rem}.tw-text-lg{font-size:1.125rem;line-height:1.75rem}.tw-text-sm{font-size:.875rem;line-height:1.25rem}.tw-text-xl{font-size:1.25rem;line-height:1.75rem}.tw-text-xs{font-size:.75rem;line-height:1rem}.tw-text-3xl{font-size:1.875rem;line-height:2.25rem}.tw-font-bold{font-weight:700}.tw-font-medium{font-weight:500}.tw-uppercase{text-transform:uppercase}.tw-leading-3{line-height:.75rem}.tw-leading-5{line-height:1.25rem}.tw-leading-normal{line-height:1.5}.tw-text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity))}.tw-text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.tw-text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity))}.tw-text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity))}.tw-text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity))}.tw-text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity))}.tw-text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity))}.tw-text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.tw-text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity))}.tw-text-purple-500{--tw-text-opacity:1;color:rgb(168 85 247/var(--tw-text-opacity))}.tw-text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.tw-text-green-700{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity))}.tw-text-opacity-75{--tw-text-opacity:0.75}.tw-text-opacity-100{--tw-text-opacity:1}.tw-underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.tw-no-underline{-webkit-text-decoration-line:none;text-decoration-line:none}.tw-opacity-100{opacity:1}.tw-opacity-50{opacity:.5}.tw-outline-none{outline:2px solid transparent;outline-offset:2px}.tw-ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.tw-ring-red-500\/30{--tw-ring-color:rgba(239,68,68,.3)}.\[hash\:base64\]{hash:base64}.\[hash\:8\]{hash:8}.\[contenthash\:8\]{contenthash:8}.hover\:tw-cursor-pointer:hover{cursor:pointer}.hover\:tw-border-gray-200:hover{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity))}.hover\:tw-border-green-500:hover{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity))}.hover\:tw-border-blue-700:hover{--tw-border-opacity:1;border-color:rgb(29 78 216/var(--tw-border-opacity))}.hover\:tw-border-red-600:hover{--tw-border-opacity:1;border-color:rgb(220 38 38/var(--tw-border-opacity))}.hover\:tw-bg-blue-600:hover{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity))}.hover\:tw-bg-blue-700:hover{--tw-bg-opacity:1;background-color:rgb(29 78 216/var(--tw-bg-opacity))}.hover\:tw-bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity))}.hover\:tw-bg-red-500:hover{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity))}.hover\:tw-text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.hover\:tw-text-blue-600:hover{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity))}.hover\:tw-text-opacity-100:hover{--tw-text-opacity:1}.hover\:tw-underline:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}.hover\:tw-no-underline:hover{-webkit-text-decoration-line:none;text-decoration-line:none}.focus\:tw-relative:focus{position:relative}.focus\:tw-z-10:focus{z-index:10}.focus\:tw-border-red-400:focus{--tw-border-opacity:1;border-color:rgb(248 113 113/var(--tw-border-opacity))}.focus\:tw-ring-red-500\/30:focus{--tw-ring-color:rgba(239,68,68,.3)}.active\:tw-cursor-pointer:active{cursor:pointer}.active\:tw-border-green-500:active{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity))}.active\:tw-border-blue-800:active{--tw-border-opacity:1;border-color:rgb(30 64 175/var(--tw-border-opacity))}.active\:tw-border-gray-300:active{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity))}.active\:tw-bg-blue-800:active{--tw-bg-opacity:1;background-color:rgb(30 64 175/var(--tw-bg-opacity))}.active\:tw-bg-gray-100:active{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity))}.active\:tw-bg-red-600:active{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity))}.active\:tw-text-white:active{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.active\:hover\:tw-border-blue-600:hover:active{--tw-border-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity))}.active\:hover\:tw-bg-blue-600:hover:active{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity))}.disabled\:tw-cursor-default:disabled{cursor:default}.disabled\:tw-border-blue-600:disabled{--tw-border-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity))}.disabled\:tw-bg-blue-600:disabled{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity))}.disabled\:tw-opacity-50:disabled{opacity:.5}@media (min-width:640px){.sm\:tw-flex{display:-webkit-flex;display:flex}.sm\:tw-flex-1{-webkit-flex:1 1 0%;flex:1 1 0%}.sm\:tw-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:tw-text-sm{font-size:.875rem}.sm\:tw-leading-5,.sm\:tw-text-sm{line-height:1.25rem}}@media (min-width:768px){.md\:tw--mx-4{margin-left:-1rem;margin-right:-1rem}.md\:tw-mx-4{margin-left:1rem;margin-right:1rem}.md\:tw-mr-6{margin-right:1.5rem}.md\:tw-flex{display:-webkit-flex;display:flex}.md\:tw-w-1\/4{width:25%}.md\:tw-max-w-xs{max-width:20rem}.md\:tw-flex-1{-webkit-flex:1 1 0%;flex:1 1 0%}.md\:tw-items-center{-webkit-align-items:center;align-items:center}.md\:tw-justify-center{-webkit-justify-content:center;justify-content:center}.md\:tw-justify-between{-webkit-justify-content:space-between;justify-content:space-between}.md\:tw-space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0px*var(--tw-space-y-reverse));margin-top:calc(0px*(1 - var(--tw-space-y-reverse)))}.md\:tw-py-2{padding-bottom:.5rem;padding-top:.5rem}.md\:tw-px-4{padding-left:1rem;padding-right:1rem}.md\:tw-pb-4{padding-bottom:1rem}.md\:tw-text-right{text-align:right}}@media (min-width:1024px){.lg\:tw-block{display:block}.lg\:tw-flex{display:-webkit-flex;display:flex}.lg\:tw-hidden{display:none}.lg\:tw-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1200px){.xl\:tw-mr-4{margin-right:1rem}.xl\:tw-ml-4{margin-left:1rem}.xl\:tw-mt-0{margin-top:0}.xl\:tw-flex{display:-webkit-flex;display:flex}.xl\:tw-w-60{width:15rem}.xl\:tw-flex-1{-webkit-flex:1 1 0%;flex:1 1 0%}.xl\:tw-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:tw-space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0px*var(--tw-space-y-reverse));margin-top:calc(0px*(1 - var(--tw-space-y-reverse)))}.xl\:tw-space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1.5rem*var(--tw-space-x-reverse))}.xl\:tw-space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.75rem*var(--tw-space-x-reverse))}.xl\:tw-pr-8{padding-right:2rem}}@media (min-width:1536px){.\32xl\:tw-grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.fade-enter-active,.fade-leave-active{-o-transition:opacity .3s;transition:opacity .3s}.fade-enter,.fade-leave-to{opacity:0}@font-face{font-family:swiper-icons;font-style:normal;font-weight:400;src:url("data:application/font-woff;charset=utf-8;base64, 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") format("woff")}:root{--swiper-theme-color:#007aff}.swiper-container{list-style:none;margin-left:auto;margin-right:auto;overflow:hidden;padding:0;position:relative;z-index:1}.swiper-container-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{box-sizing:content-box;display:flex;height:100%;position:relative;transition-property:transform;width:100%;z-index:1}.swiper-container-android .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-container-multirow>.swiper-wrapper{flex-wrap:wrap}.swiper-container-multirow-column>.swiper-wrapper{flex-direction:column;flex-wrap:wrap}.swiper-container-free-mode>.swiper-wrapper{margin:0 auto;transition-timing-function:ease-out}.swiper-slide{flex-shrink:0;height:100%;position:relative;transition-property:transform;width:100%}.swiper-slide-invisible-blank{visibility:hidden}.swiper-container-autoheight,.swiper-container-autoheight .swiper-slide{height:auto}.swiper-container-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-container-3d{perspective:1200px}.swiper-container-3d .swiper-cube-shadow,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:10}.swiper-container-3d .swiper-slide-shadow-left{background-image:linear-gradient(270deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-right{background-image:linear-gradient(90deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-top{background-image:linear-gradient(0deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent)}.swiper-container-css-mode>.swiper-wrapper{-ms-overflow-style:none;overflow:auto;scrollbar-width:none}.swiper-container-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-container-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-container-horizontal.swiper-container-css-mode>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-container-vertical.swiper-container-css-mode>.swiper-wrapper{scroll-snap-type:y mandatory}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{align-items:center;color:var(--swiper-navigation-color,var(--swiper-theme-color));cursor:pointer;display:flex;height:var(--swiper-navigation-size);justify-content:center;margin-top:calc(var(--swiper-navigation-size)*-1/2);position:absolute;top:50%;width:calc(var(--swiper-navigation-size)/44*27);z-index:10}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{cursor:auto;opacity:.35;pointer-events:none}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);font-variant:normal;letter-spacing:0;line-height:1;text-transform:none}.swiper-button-prev,.swiper-container-rtl .swiper-button-next{left:10px;right:auto}.swiper-button-prev:after,.swiper-container-rtl .swiper-button-next:after{content:"prev"}.swiper-button-next,.swiper-container-rtl .swiper-button-prev{left:auto;right:10px}.swiper-button-next:after,.swiper-container-rtl .swiper-button-prev:after{content:"next"}.swiper-button-next.swiper-button-white,.swiper-button-prev.swiper-button-white{--swiper-navigation-color:#fff}.swiper-button-next.swiper-button-black,.swiper-button-prev.swiper-button-black{--swiper-navigation-color:#000}.swiper-button-lock{display:none}.swiper-pagination{position:absolute;text-align:center;transform:translateZ(0);transition:opacity .3s;z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-container-horizontal>.swiper-pagination-bullets,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:10px;left:0;width:100%}.swiper-pagination-bullets-dynamic{font-size:0;overflow:hidden}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{position:relative;transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{background:#000;border-radius:100%;display:inline-block;height:8px;opacity:.2;width:8px}button.swiper-pagination-bullet{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;box-shadow:none;margin:0;padding:0}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet-active{background:var(--swiper-pagination-color,var(--swiper-theme-color));opacity:1}.swiper-container-vertical>.swiper-pagination-bullets{right:10px;top:50%;transform:translate3d(0,-50%,0)}.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{display:block;margin:6px 0}.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:transform .2s,top .2s}.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 4px}.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,left .2s}.swiper-container-horizontal.swiper-container-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,right .2s}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));height:100%;left:0;position:absolute;top:0;transform:scale(0);transform-origin:left top;width:100%}.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-container-horizontal>.swiper-pagination-progressbar,.swiper-container-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{height:4px;left:0;top:0;width:100%}.swiper-container-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-container-vertical>.swiper-pagination-progressbar{height:100%;left:0;top:0;width:4px}.swiper-pagination-white{--swiper-pagination-color:#fff}.swiper-pagination-black{--swiper-pagination-color:#000}.swiper-pagination-lock{display:none}.swiper-scrollbar{background:rgba(0,0,0,.1);border-radius:10px;position:relative;-ms-touch-action:none}.swiper-container-horizontal>.swiper-scrollbar{bottom:3px;height:5px;left:1%;position:absolute;width:98%;z-index:50}.swiper-container-vertical>.swiper-scrollbar{height:98%;position:absolute;right:3px;top:1%;width:5px;z-index:50}.swiper-scrollbar-drag{background:rgba(0,0,0,.5);border-radius:10px;height:100%;left:0;position:relative;top:0;width:100%}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{align-items:center;display:flex;height:100%;justify-content:center;text-align:center;width:100%}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-height:100%;max-width:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move}.swiper-lazy-preloader{animation:swiper-preloader-spin 1s linear infinite;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top:4px solid transparent;box-sizing:border-box;height:42px;left:50%;margin-left:-21px;margin-top:-21px;position:absolute;top:50%;transform-origin:50%;width:42px;z-index:10}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{to{transform:rotate(1turn)}}.swiper-container .swiper-notification{left:0;opacity:0;pointer-events:none;position:absolute;top:0;z-index:-1000}.swiper-container-fade.swiper-container-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-container-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-container-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-fade .swiper-slide-active,.swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-container-cube{overflow:visible}.swiper-container-cube .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;height:100%;pointer-events:none;transform-origin:0 0;visibility:hidden;width:100%;z-index:1}.swiper-container-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-cube.swiper-container-rtl .swiper-slide{transform-origin:100% 0}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-next,.swiper-container-cube .swiper-slide-next+.swiper-slide,.swiper-container-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-container-cube .swiper-slide-shadow-bottom,.swiper-container-cube .swiper-slide-shadow-left,.swiper-container-cube .swiper-slide-shadow-right,.swiper-container-cube .swiper-slide-shadow-top{-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:0}.swiper-container-cube .swiper-cube-shadow{background:#000;bottom:0;-webkit-filter:blur(50px);filter:blur(50px);height:100%;left:0;opacity:.6;position:absolute;width:100%;z-index:0}.swiper-container-flip{overflow:visible}.swiper-container-flip .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;pointer-events:none;z-index:1}.swiper-container-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-flip .swiper-slide-active,.swiper-container-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-container-flip .swiper-slide-shadow-bottom,.swiper-container-flip .swiper-slide-shadow-left,.swiper-container-flip .swiper-slide-shadow-right,.swiper-container-flip .swiper-slide-shadow-top{-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:0}.c-btn:focus,a.c-btn:focus,button.c-btn:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);outline:2px solid transparent;outline-offset:2px}.c-btn.block,a.c-btn.block,button.c-btn.block{width:100%}.c-btn.small,a.c-btn.small,button.c-btn.small{line-height:1rem;padding-left:.75rem;padding-right:.75rem}.c-btn.small .c-icon,a.c-btn.small .c-icon,button.c-btn.small .c-icon{height:12px;width:12px}.c-btn.large,a.c-btn.large,button.c-btn.large{font-size:1rem;line-height:1.5rem}.c-btn.outline .c-icon,a.c-btn.outline .c-icon,button.c-btn.outline .c-icon{fill:currentColor}.c-btn.loading,a.c-btn.loading,button.c-btn.loading{position:relative}.c-btn.loading .c-spinner,a.c-btn.loading .c-spinner,button.c-btn.loading .c-spinner{-webkit-align-items:center;align-items:center;bottom:0;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center;left:0;position:absolute;right:0;top:0}.c-btn.loading .c-btn-content,a.c-btn.loading .c-btn-content,button.c-btn.loading .c-btn-content{visibility:hidden}.c-btn .c-icon,a.c-btn .c-icon,button.c-btn .c-icon{vertical-align:middle}body.ltr .c-btn:not(.c-btn-icon) .c-icon,body.ltr a.c-btn:not(.c-btn-icon) .c-icon,body.ltr button.c-btn:not(.c-btn-icon) .c-icon{margin-right:1rem}body.rtl .c-btn:not(.c-btn-icon) .c-icon,body.rtl a.c-btn:not(.c-btn-icon) .c-icon,body.rtl button.c-btn:not(.c-btn-icon) .c-icon{margin-left:1rem}.c-btn .c-btn-content,a.c-btn .c-btn-content,button.c-btn .c-btn-content{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center}.c-dropdown{display:inline-block;position:relative}.c-dropdown.disabled{opacity:.5}.c-dropdown select{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity))}.c-spinner>.animation{-webkit-animation:rotator .7s linear infinite;-o-animation:rotator .7s linear infinite;animation:rotator .7s linear infinite;border-left-color:transparent!important;border-radius:50%;border-style:solid;border-top-color:transparent!important;border-width:2px;height:20px;width:20px}.c-spinner.sm>.animation{height:16px;width:16px}.c-spinner.lg>.animation{border-width:3px;height:32px;width:32px}@-webkit-keyframes rotator{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-o-keyframes rotator{0%{-o-transform:rotate(0);transform:rotate(0)}to{-o-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes rotator{0%{-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);-o-transform:rotate(1turn);transform:rotate(1turn)}} +.edition-badge[data-v-27585133]{display:inline-block}.edition-badge.is-block[data-v-27585133]{display:block}.edition-badge[data-v-27585133]:not(.is-block){position:relative}.edition-badge.is-big .edition-badge-name[data-v-27585133]{font-size:1rem;line-height:1.5rem;padding:.25rem .75rem}.edition-badge .edition-badge-name[data-v-27585133]{--tw-border-opacity:1;--tw-text-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity));border-radius:.25rem;border-style:solid;border-width:1px;color:rgb(107 114 128/var(--tw-text-opacity));display:inline-block;font-size:.75rem;letter-spacing:1.5px;line-height:1rem;padding:.25rem .5rem;text-transform:uppercase}.plugin-details-header[data-v-28e904f0]{line-height:1.5;margin-bottom:.25rem;max-height:4.75em;overflow:hidden}.plugin-details-header .plugin-name[data-v-28e904f0]{display:-webkit-flex;display:flex;margin-bottom:.25rem}.plugin-details-header .plugin-name .edition-badge[data-v-28e904f0]{margin-left:.5rem}a.plugin-card[data-v-28e904f0]{box-sizing:border-box}a.plugin-card[data-v-28e904f0],a.plugin-card[data-v-28e904f0]:hover{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity))}a.plugin-card:hover strong[data-v-28e904f0]{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity))}a.plugin-card .installed[data-v-28e904f0]{color:#ccc;position:absolute;top:14px}body.ltr a.plugin-card .installed[data-v-28e904f0]{right:18px}body.rtl a.plugin-card .installed[data-v-28e904f0]{left:18px}.ps-grid-plugins .plugin-card[data-v-28e904f0]{height:100%}.info-hud{display:inline-block}.info-hud .v-popover{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity));display:inline-block;line-height:0}.info-hud .v-popover.open,.info-hud .v-popover:hover{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity));cursor:pointer}.info-hud .v-popover>span{outline:none}.tooltip{max-width:250px}.license-status.license-status[data-v-1b8bf069]:hover{cursor:default}.license-status.license-status.installed[data-v-1b8bf069]{--tw-border-opacity:1;--tw-text-opacity:1;border-color:rgb(21 128 61/var(--tw-border-opacity));color:rgb(21 128 61/var(--tw-text-opacity))}.license-status.license-status.licensed[data-v-1b8bf069]{--tw-border-opacity:1;--tw-text-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity));color:rgb(37 99 235/var(--tw-text-opacity))}.cms-editions-edition{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity));border-radius:.25rem;border-style:solid;border-width:1px;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;padding:2rem;text-align:center}.cms-editions-edition .description{-webkit-flex:1 1 0%;flex:1 1 0%}.cms-editions-edition .description .edition-name{--tw-border-opacity:1;--tw-text-opacity:1;border-bottom-width:1px;border-color:rgb(229 231 235/var(--tw-border-opacity));border-style:solid;color:rgb(55 65 81/var(--tw-text-opacity));display:inline-block;font-size:1.125rem;font-weight:700;line-height:1.75rem;padding-bottom:.25rem;padding-top:.25rem;text-transform:uppercase}.cms-editions-edition .description .edition-description{font-size:1.125rem;line-height:1.75rem;line-height:1.5;margin-bottom:1.5rem;margin-top:1.5rem}.cms-editions-edition .description .price{font-size:1.875rem;font-weight:700;line-height:2.25rem;margin-bottom:2rem;margin-top:2rem}.cms-editions-edition .description ul{margin-bottom:2rem;text-align:left}.cms-editions-edition .description ul li{--tw-border-opacity:1;border-bottom-width:1px;border-color:rgb(229 231 235/var(--tw-border-opacity));border-style:solid;padding-bottom:.5rem;padding-top:.5rem}.cms-editions-edition .description ul li:first-child{border-top-width:1px}.cms-editions-edition .cms-edition-actions{position:relative}.cms-editions-edition .cms-edition-actions .c-spinner{bottom:-30px;left:50%;margin-left:-11px;position:absolute}.cms-editions-edition .cms-edition-actions .c-btn{margin-top:.75rem}.status-message{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-flex:1 1 0%;flex:1 1 0%;-webkit-justify-content:center;justify-content:center;text-align:center}.status-message div .c-spinner{margin-bottom:1.5rem}.status-message div .c-icon{height:48px;margin-bottom:1.5rem;width:48px}.status-message div .message{text-align:center}.plugin-actions .c-spinner{bottom:-32px;left:50%;position:absolute}body{--chart-fill-color:#dbeafe}.changelog-release{--tw-border-opacity:1;border-bottom-width:1px;border-color:rgb(229 231 235/var(--tw-border-opacity));border-style:solid;padding-bottom:1rem;padding-top:.5rem}@media (min-width:768px){.changelog-release{display:-webkit-flex;display:flex}}.changelog-release .version{position:relative}@media (min-width:768px){.changelog-release .version{width:12rem}}.changelog-release .version .anchor{--tw-text-opacity:1;border-radius:9999px;color:rgb(255 255 255/var(--tw-text-opacity));font-size:14px;padding:.25rem;position:absolute;top:1.25rem;-webkit-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}body.ltr .changelog-release .version .anchor{left:-24px}body.rtl .changelog-release .version .anchor{right:-24px}.changelog-release .version .anchor:hover,.changelog-release .version:hover .anchor{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.changelog-release .version h2{font-size:1.125rem;line-height:1.75rem;margin-bottom:.5rem;margin-top:1.5rem}.changelog-release .version .date{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity))}.changelog-release .version .critical{--tw-border-opacity:1;--tw-text-opacity:1;border-color:rgb(220 38 38/var(--tw-border-opacity));border-radius:.25rem;border-style:solid;border-width:1px;color:rgb(220 38 38/var(--tw-text-opacity));display:inline-block;font-size:.875rem;line-height:1.25rem;margin-top:.5rem;padding:0 .25rem;text-transform:uppercase}.changelog-release .details{padding:1.5rem 0 0}@media (min-width:768px){.changelog-release .details{-webkit-flex:1 1 0%;flex:1 1 0%}}.changelog-release .details h3{font-size:1rem;line-height:1.5rem;margin-bottom:1rem;margin-top:1.5rem}.changelog-release .details ul{line-height:1.5;list-style-type:disc;margin-bottom:1rem;margin-left:1.5rem}.changelog-release .details ul li:not(:first-child){margin-top:.25rem}#pluginstore-modal{left:0;max-height:650px;max-width:850px;position:absolute;top:0;z-index:100}#pluginstore-modal .pluginstore-modal-flex{bottom:0;display:-webkit-flex;display:flex;-webkit-flex-direction:column;flex-direction:column;left:0;position:absolute;right:0;top:0}#pluginstore-modal .pluginstore-modal-flex header .btn-left{position:absolute;top:28px}body.ltr #pluginstore-modal .pluginstore-modal-flex header .btn-left{left:24px}body.rtl #pluginstore-modal .pluginstore-modal-flex header .btn-left{right:24px}#pluginstore-modal .pluginstore-modal-flex header h1{text-align:center}#pluginstore-modal .pluginstore-modal-flex .pluginstore-modal-main{display:-webkit-flex;display:flex;-webkit-flex-grow:1;flex-grow:1;margin-bottom:0;min-height:0;position:relative}#pluginstore-modal .pluginstore-modal-flex .pluginstore-modal-main .pluginstore-modal-content{-webkit-flex-grow:1;flex-grow:1;overflow:auto;padding:24px}.category-selector-btn[data-v-a5bf3e5a]{display:block;position:relative}@media (min-width:1024px){.category-selector-btn[data-v-a5bf3e5a]{display:none}}.category-selector-btn[data-v-a5bf3e5a]{background:#f3f7fc;border:1px solid rgba(51,64,77,.1);border-radius:4px;color:#606d7b;padding:10px 20px}.category-selector-btn[data-v-a5bf3e5a]:before{speak:none;-webkit-font-feature-settings:"liga","dlig";-ms-font-feature-settings:"liga","dlig";-o-font-feature-settings:"liga","dlig";font-feature-settings:"liga","dlig";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;word-wrap:normal!important;content:"downangle";direction:ltr;display:inline-block;font-family:Craft;font-size:16px;font-style:normal;font-variant:normal;font-weight:400;line-height:1;line-height:20px;opacity:var(--icon-opacity);position:absolute;right:0;text-align:center;text-rendering:optimizeLegibility;text-transform:none;top:calc(50% - 10px);-webkit-user-select:none;user-select:none;vertical-align:middle;width:43px}.category-selector-btn[data-v-a5bf3e5a]:hover{-webkit-text-decoration-line:none;text-decoration-line:none}.category-selector[data-v-a5bf3e5a]{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity));-webkit-flex-direction:column;flex-direction:column;left:0;position:fixed;top:0;z-index:20}@media (min-width:1024px){.category-selector[data-v-a5bf3e5a]{display:-webkit-flex;display:flex}}.category-selector[data-v-a5bf3e5a]{box-sizing:border-box;display:none;height:100vh;width:100vw}.category-selector .category-selector-body[data-v-a5bf3e5a]{box-sizing:border-box;height:100%;overflow:auto;padding:1.5rem}.category-selector .category-selector-body .nav-items ul li:first-child a[data-v-a5bf3e5a]{border-top:0}.category-selector .category-selector-body .nav-items ul li[data-v-a5bf3e5a]:first-child:before{display:none}.category-selector .category-selector-body .nav-items ul li[data-v-a5bf3e5a]:after,.category-selector .category-selector-body .nav-items ul li[data-v-a5bf3e5a]:before{left:1rem;right:1rem}.category-selector .category-selector-body .nav-items ul li a[data-v-a5bf3e5a]{padding-left:55px}.category-selector .category-selector-body .nav-items ul li a img[data-v-a5bf3e5a]{left:24px}#screenshot-modal{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity));bottom:0;left:0;overflow:hidden;position:fixed;right:0;top:0;z-index:101}#screenshot-modal .screenshot-modal-button{background-color:rgba(209,213,219,.3)}#screenshot-modal .screenshot-modal-button:hover{background-color:rgba(209,213,219,.8)}#screenshot-modal .screenshot-modal-button{--tw-text-opacity:1;border-radius:.25rem;color:rgb(55 65 81/var(--tw-text-opacity));font-size:1.875rem;line-height:2.25rem;padding:.5rem}#screenshot-modal .close{display:inline-block;left:1rem;position:absolute;text-align:center;top:1rem;z-index:30}#screenshot-modal .close:hover{color:rgba(0,0,0,.8);-webkit-text-decoration-line:none;text-decoration-line:none}#screenshot-modal .carousel{bottom:0;left:0;position:absolute;right:0;top:0}#screenshot-modal .carousel,#screenshot-modal .carousel .swiper-container{display:-webkit-flex;display:flex}#screenshot-modal .carousel .swiper-container .swiper-wrapper{display:-webkit-flex;display:flex;-webkit-flex:1 1 0%;flex:1 1 0%;height:auto;width:auto}#screenshot-modal .carousel .swiper-container .swiper-wrapper .swiper-slide{text-align:center}#screenshot-modal .carousel .swiper-container .swiper-wrapper .swiper-slide,#screenshot-modal .carousel .swiper-container .swiper-wrapper .swiper-slide .screenshot{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-flex:1 1 0%;flex:1 1 0%;-webkit-justify-content:center;justify-content:center}#screenshot-modal .carousel .swiper-container .swiper-wrapper .swiper-slide .screenshot{box-sizing:border-box;height:100%}#screenshot-modal .carousel .swiper-container .swiper-wrapper .swiper-slide .screenshot .swiper-zoom-container{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;height:100%;-webkit-justify-content:center;justify-content:center;text-align:center;width:100%}#screenshot-modal .carousel .swiper-container .swiper-wrapper .swiper-slide .screenshot .swiper-zoom-container img{max-height:100%;max-width:100%}#screenshot-modal .carousel .ps-swiper-button-next,#screenshot-modal .carousel .ps-swiper-button-prev{-webkit-align-items:center;align-items:center;background-image:none;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center;margin-top:-3rem;position:absolute;top:50%;width:auto;z-index:10}#screenshot-modal .carousel .ps-swiper-button-next.swiper-button-disabled,#screenshot-modal .carousel .ps-swiper-button-prev.swiper-button-disabled{display:none}#screenshot-modal .carousel .ps-swiper-button-next .c-icon,#screenshot-modal .carousel .ps-swiper-button-prev .c-icon{-webkit-flex:1 1 0%;flex:1 1 0%;top:0}#screenshot-modal .carousel .ps-swiper-button-prev{left:0;margin-left:1rem}#screenshot-modal .carousel .ps-swiper-button-prev .c-icon{left:-2px}#screenshot-modal .carousel .ps-swiper-button-next{border-radius:.25rem;height:auto;margin-right:1rem;padding:.5rem;right:0}#screenshot-modal .carousel .pagination-wrapper{bottom:40px;display:-webkit-flex;display:flex;height:.5rem;padding-bottom:0;padding-top:0;position:absolute;width:100%;z-index:10}#screenshot-modal .carousel .pagination-wrapper .pagination-content{display:-webkit-flex;display:flex;-webkit-flex:1 1 0%;flex:1 1 0%;margin-left:auto;margin-right:auto;max-width:20rem;padding-left:2rem;padding-right:2rem}#screenshot-modal .carousel .pagination-wrapper .pagination-content .swiper-pagination{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity));border-radius:9999px;display:-webkit-flex;display:flex;-webkit-flex:1 1 0%;flex:1 1 0%;padding:0;position:relative}#screenshot-modal .carousel .pagination-wrapper .pagination-content .swiper-pagination .swiper-pagination-bullet{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity));border-radius:9999px;-webkit-flex:1 1 0%;flex:1 1 0%;height:.5rem}#screenshot-modal .carousel .pagination-wrapper .pagination-content .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{--tw-bg-opacity:1;background-color:rgb(75 85 99/var(--tw-bg-opacity))}@media(min-width:700px){.carousel .swiper-container .swiper-wrapper .swiper-slide .screenshot .swiper-zoom-container img{padding-left:100px;padding-right:100px}}@media(min-height:700px){.carousel .swiper-container .swiper-wrapper .swiper-slide .screenshot .swiper-zoom-container img{padding-bottom:100px;padding-top:100px}}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::-webkit-backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}img{height:auto;max-width:100%}#main-container #main #main-content #content-container #content{display:-webkit-flex;display:flex;min-height:400px;padding:0}a{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity))}.ps-wrapper{display:-webkit-flex;display:flex;-webkit-flex:1 1 0%;flex:1 1 0%;-webkit-flex-direction:column;flex-direction:column}@media (min-width:1024px){.ps-wrapper{-webkit-flex-direction:row;flex-direction:row}}.ps-wrapper{padding-bottom:0!important}.ps-wrapper .ps-sidebar{background-color:var(--gray-050);padding:1.5rem;width:100%}@media (min-width:1024px){.ps-wrapper .ps-sidebar{border-bottom-width:0;border-right-width:1px;overflow:auto;width:16rem}}body.ltr .ps-wrapper .ps-sidebar{border-radius:var(--large-border-radius) 0 0 var(--large-border-radius)}body.rtl .ps-wrapper .ps-sidebar{border-radius:0 var(--large-border-radius) var(--large-border-radius) 0}@media (min-width:1024px){.ps-wrapper .ps-sidebar .categories{display:block}}.ps-wrapper .ps-main{-webkit-flex:1 1 0%;flex:1 1 0%;overflow:auto}.ps-wrapper .ps-main .ps-container{-webkit-flex:1 1 0%;flex:1 1 0%;margin-left:auto;margin-right:auto;max-width:1200px}.ps-container{padding:1.5rem 2.5rem}a,abbr,acronym,address,article,big,blockquote,body,caption,cite,code,dd,del,dfn,div,dl,dt,em,fieldset,font,form,h1,h2,h3,h4,h5,h6,html,iframe,img,ins,kbd,label,legend,li,main,nav,object,ol,p,pre,q,s,samp,small,span,strike,strong,sub,sup,table,tbody,td,tfoot,th,thead,tr,tt,ul,var{min-width:0}hr{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity))}h1{font-size:18px;margin-bottom:0}h2{margin-top:2rem}h2,p{margin-bottom:1rem}pre{margin-bottom:1rem;max-width:100%;min-width:0;overflow:auto;padding:1rem}code,pre{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}code{padding:.25rem}.no-line-height{line-height:0}.input.success input{border-color:var(--success-color)}.input.errors .select:not(.selectize) select{box-shadow:inset 0 0 0 1px transparent,0 0 0 1px var(--error-color),0 1px 1px rgba(0,0,0,.1)}input.error{--tw-border-opacity:1;border-color:rgb(220 38 38/var(--tw-border-opacity))}.ps-header{--tw-border-opacity:1;border-bottom-width:1px;border-color:rgb(229 231 235/var(--tw-border-opacity));border-style:solid;display:-webkit-flex;display:flex;-webkit-justify-content:space-between;justify-content:space-between;padding-bottom:.5rem;padding-top:.5rem}.swiper-wrapper{min-width:auto}#header h1{cursor:pointer}#main-container,#main-content #content{position:relative}#container{position:static!important}#pluginstore-actions{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-justify-content:space-between;justify-content:space-between}body.ltr #pluginstore-actions>*{margin-left:18px}body.rtl #pluginstore-actions>*{margin-right:18px}#pluginstore-actions #cart-button svg{display:inline-block;height:18px;line-height:0;margin-right:3px;vertical-align:middle;width:18px}#pluginstore-actions #cart-button svg circle,#pluginstore-actions #cart-button svg ellipse,#pluginstore-actions #cart-button svg line,#pluginstore-actions #cart-button svg path,#pluginstore-actions #cart-button svg polygon,#pluginstore-actions #cart-button svg polyline,#pluginstore-actions #cart-button svg rect,#pluginstore-actions #cart-button svg text{fill:var(--secondary-color);stroke-width:0}#pluginstore-actions #cart-button:hover svg circle,#pluginstore-actions #cart-button:hover svg ellipse,#pluginstore-actions #cart-button:hover svg line,#pluginstore-actions #cart-button:hover svg path,#pluginstore-actions #cart-button:hover svg polygon,#pluginstore-actions #cart-button:hover svg polyline,#pluginstore-actions #cart-button:hover svg rect,#pluginstore-actions #cart-button:hover svg text{fill:#55616d;stroke-width:0}#pluginstore-actions #cart-button .badge{--tw-text-opacity:1;background:var(--primary-color);border-radius:1em;color:rgb(255 255 255/var(--tw-text-opacity));display:inline-block;-webkit-flex-shrink:1;flex-shrink:1;font-size:11px;line-height:16px;padding:0 6px;position:relative;top:-1px}body.ltr #pluginstore-actions #cart-button .badge{margin:0 0 0 -6px}body.rtl #pluginstore-actions #cart-button .badge{margin:0 -6px 0 0}#pluginstore-actions #craftid-account:hover{-webkit-text-decoration-line:none;text-decoration-line:none}#pluginstore-actions #craftid-account .photo svg{border-radius:100%;height:22px;vertical-align:middle;width:22px}body.ltr #pluginstore-actions #craftid-account .photo svg{margin-right:7px}body.rtl #pluginstore-actions #craftid-account .photo svg{margin-left:7px}#pluginstore-actions #craftid-account:hover .label{-webkit-text-decoration-line:none;text-decoration-line:none}#pluginstore-actions #craftid-connect-form .ssl-status{display:inline-block}.nav-items ul{margin-left:-1.5rem;margin-right:-1.5rem}.nav-items ul li{position:relative}.nav-items ul li:before,.nav-items ul li:last-child:after{content:"";left:0;position:absolute;right:0}.nav-items ul li:before{top:0}.nav-items ul li:last-child:after{bottom:0}.nav-items ul li a{--tw-text-opacity:1;-webkit-align-items:center;align-items:center;color:rgb(17 24 39/var(--tw-text-opacity));display:-webkit-flex;display:flex;padding:.5rem 1.5rem;position:relative}.nav-items ul li a img,.nav-items ul li a svg{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity));height:1.5rem;margin-right:.75rem;vertical-align:middle;width:1.5rem}.nav-items ul li a:hover{background-color:var(--gray-100);-webkit-text-decoration-line:none;text-decoration-line:none;z-index:10}.nav-items ul li a.router-link-exact-active{background-color:var(--gray-200)}.tooltip{background:var(--white);box-shadow:0 25px 100px rgba(0,0,0,.5);display:block!important;padding:24px;z-index:10000}.tooltip .tooltip-arrow{border-color:#fff;border-style:solid;height:0;margin:12px;position:absolute;width:0}.tooltip[x-placement^=top]{margin-bottom:12px}.tooltip[x-placement^=top] .tooltip-arrow{border-bottom-color:transparent!important;border-left-color:transparent!important;border-right-color:transparent!important;border-width:12px 12px 0;bottom:-12px;left:calc(50% - 12px);margin-bottom:0;margin-top:0}.tooltip[x-placement^=bottom]{margin-top:12px}.tooltip[x-placement^=bottom] .tooltip-arrow{border-left-color:transparent!important;border-right-color:transparent!important;border-top-color:transparent!important;border-width:0 12px 12px;left:calc(50% - 12px);margin-bottom:0;margin-top:0;top:-12px}.tooltip[x-placement^=right]{margin-left:12px}.tooltip[x-placement^=right] .tooltip-arrow{border-bottom-color:transparent!important;border-left-color:transparent!important;border-top-color:transparent!important;border-width:12px 12px 12px 0;left:-12px;margin-left:0;margin-right:0;top:calc(50% - 12px)}.tooltip[x-placement^=left]{margin-right:12px}.tooltip[x-placement^=left] .tooltip-arrow{border-bottom-color:transparent!important;border-right-color:transparent!important;border-top-color:transparent!important;border-width:12px 0 12px 12px;margin-left:0;margin-right:0;right:-12px;top:calc(50% - 12px)}.tooltip[aria-hidden=true]{opacity:0;-o-transition:opacity .15s,visibility .15s;transition:opacity .15s,visibility .15s;visibility:hidden}.tooltip[aria-hidden=false]{opacity:1;-o-transition:opacity .15s;transition:opacity .15s;visibility:visible}.readable table{display:block;overflow:auto;width:100%}.readable table th{font-weight:600}.readable table td,.readable table th{border:1px solid #dfe2e5;padding:6px 13px}.readable table tr{background-color:var(--white);border-top:1px solid #c6cbd1}.readable table tr:nth-child(2n){background-color:var(--gray-050)}.readable table img{background-color:transparent}.tw-invisible{visibility:hidden}.tw-fixed{position:fixed}.tw-absolute{position:absolute}.tw-relative{position:relative}.tw-inset-0{left:0;right:0}.tw-inset-0,.tw-inset-y-0{bottom:0;top:0}.tw-top-0{top:0}.tw-left-0{left:0}.tw-top-4{top:1rem}.tw-right-0{right:0}.tw-bottom-0{bottom:0}.tw-z-10{z-index:10}.tw-my-4{margin-bottom:1rem;margin-top:1rem}.tw-my-1\.5{margin-bottom:.375rem;margin-top:.375rem}.tw-mx-auto{margin-left:auto;margin-right:auto}.tw-my-1{margin-bottom:.25rem;margin-top:.25rem}.tw-my-6{margin-bottom:1.5rem;margin-top:1.5rem}.tw-mr-4{margin-right:1rem}.tw-mt-8{margin-top:2rem}.tw-mb-8{margin-bottom:2rem}.tw-mt-4{margin-top:1rem}.tw-mr-2{margin-right:.5rem}.tw--mt-8{margin-top:-2rem}.tw-mr-8{margin-right:2rem}.tw-mt-1{margin-top:.25rem}.tw-ml-1{margin-left:.25rem}.tw-mt-2{margin-top:.5rem}.tw--mb-px{margin-bottom:-1px}.tw-mb-4{margin-bottom:1rem}.tw-mb-2{margin-bottom:.5rem}.tw--ml-px{margin-left:-1px}.tw-mr-1\.5{margin-right:.375rem}.tw-mt-0{margin-top:0}.tw-ml-8{margin-left:2rem}.tw-mb-1{margin-bottom:.25rem}.tw-ml-2{margin-left:.5rem}.tw-mt-6{margin-top:1.5rem}.tw-mb-6{margin-bottom:1.5rem}.tw-mb-0{margin-bottom:0}.tw-mr-1{margin-right:.25rem}.tw-mr-14{margin-right:3.5rem}.tw-ml-6{margin-left:1.5rem}.tw--mt-12{margin-top:-3rem}.tw-block{display:block}.tw-inline-block{display:inline-block}.tw-flex{display:-webkit-flex;display:flex}.tw-grid{display:grid}.tw-hidden{display:none}.tw-aspect-\[4\/3\]{aspect-ratio:4/3}.tw-h-16{height:4rem}.tw-h-7{height:1.75rem}.tw-h-5{height:1.25rem}.tw-h-full{height:100%}.tw-h-28{height:7rem}.tw-h-3{height:.75rem}.tw-h-8{height:2rem}.tw-h-10{height:2.5rem}.tw-h-14{height:3.5rem}.tw-h-6{height:1.5rem}.tw-h-4{height:1rem}.tw-h-12{height:3rem}.tw-max-h-full{max-height:100%}.tw-w-16{width:4rem}.tw-w-7{width:1.75rem}.tw-w-5{width:1.25rem}.tw-w-full{width:100%}.tw-w-28{width:7rem}.tw-w-3{width:.75rem}.tw-w-64{width:16rem}.tw-w-14{width:3.5rem}.tw-w-1\/3{width:33.333333%}.tw-w-8{width:2rem}.tw-w-3\/5{width:60%}.tw-w-10{width:2.5rem}.tw-w-24{width:6rem}.tw-w-6{width:1.5rem}.tw-w-4{width:1rem}.tw-w-12{width:3rem}.tw-w-auto{width:auto}.tw-max-w-full{max-width:100%}.tw-max-w-sm{max-width:24rem}.tw-max-w-xs{max-width:20rem}.tw-flex-1{-webkit-flex:1 1 0%;flex:1 1 0%}.tw-shrink-0{-webkit-flex-shrink:0;flex-shrink:0}.tw-flex-grow{-webkit-flex-grow:1;flex-grow:1}.tw-cursor-pointer{cursor:pointer}.tw-cursor-default{cursor:default}.tw-snap-x{-webkit-scroll-snap-type:x var(--tw-scroll-snap-strictness);scroll-snap-type:x var(--tw-scroll-snap-strictness)}.tw-snap-mandatory{--tw-scroll-snap-strictness:mandatory}.tw-snap-start{scroll-snap-align:start}.tw-grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.tw-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.tw-flex-col{-webkit-flex-direction:column;flex-direction:column}.tw-flex-nowrap{-webkit-flex-wrap:nowrap;flex-wrap:nowrap}.tw-items-start{-webkit-align-items:flex-start;align-items:flex-start}.tw-items-center{-webkit-align-items:center;align-items:center}.tw-items-baseline{-webkit-align-items:baseline;align-items:baseline}.tw-justify-center{-webkit-justify-content:center;justify-content:center}.tw-justify-between{-webkit-justify-content:space-between;justify-content:space-between}.tw-gap-6{gap:1.5rem}.tw-gap-x-8{-webkit-column-gap:2rem;column-gap:2rem}.tw-space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.tw-space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.tw-space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1.5rem*var(--tw-space-x-reverse))}.tw-space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1rem*var(--tw-space-x-reverse))}.tw-self-end{-webkit-align-self:flex-end;align-self:flex-end}.tw-self-center{-webkit-align-self:center;align-self:center}.tw-overflow-auto{overflow:auto}.tw-overflow-hidden{overflow:hidden}.tw-overflow-x-auto{overflow-x:auto}.tw-rounded-full{border-radius:9999px}.tw-rounded-md{border-radius:.375rem}.tw-rounded-lg{border-radius:.5rem}.tw-rounded{border-radius:.25rem}.tw-rounded-r-none{border-bottom-right-radius:0;border-top-right-radius:0}.tw-rounded-l-none{border-bottom-left-radius:0;border-top-left-radius:0}.tw-border{border-width:1px}.tw-border-0{border-width:0}.tw-border-b{border-bottom-width:1px}.tw-border-b-2{border-bottom-width:2px}.tw-border-t{border-top-width:1px}.tw-border-r{border-right-width:1px}.tw-border-b-0{border-bottom-width:0}.tw-border-solid{border-style:solid}.tw-border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity))}.tw-border-blue-600{--tw-border-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity))}.tw-border-transparent{border-color:transparent}.tw-border-orange-500{--tw-border-opacity:1;border-color:rgb(249 115 22/var(--tw-border-opacity))}.tw-border-green-500{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity))}.tw-border-red-500{--tw-border-opacity:1;border-color:rgb(239 68 68/var(--tw-border-opacity))}.tw-border-gray-400{--tw-border-opacity:1;border-color:rgb(156 163 175/var(--tw-border-opacity))}.tw-border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity))}.tw-border-red-600{--tw-border-opacity:1;border-color:rgb(220 38 38/var(--tw-border-opacity))}.tw-border-blue-800{--tw-border-opacity:1;border-color:rgb(30 64 175/var(--tw-border-opacity))}.tw-bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity))}.tw-bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity))}.tw-bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity))}.tw-bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity))}.tw-bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity))}.tw-bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity))}.tw-bg-gray-300\/30{background-color:rgba(209,213,219,.3)}.tw-bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity))}.tw-bg-blue-800{--tw-bg-opacity:1;background-color:rgb(30 64 175/var(--tw-bg-opacity))}.tw-bg-red-600{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity))}.tw-bg-gradient-to-b{background-image:-o-linear-gradient(top,var(--tw-gradient-stops));background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.tw-from-blue-100\/100{--tw-gradient-from:#dbeafe;--tw-gradient-to:rgba(219,234,254,0);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.tw-to-blue-100\/0{--tw-gradient-to:rgba(219,234,254,0)}.tw-fill-current{fill:currentColor}.tw-p-\[2px\]{padding:2px}.tw-p-8{padding:2rem}.tw-p-4{padding:1rem}.tw-p-1{padding:.25rem}.tw-p-0{padding:0}.tw-py-6{padding-bottom:1.5rem;padding-top:1.5rem}.tw-px-4{padding-left:1rem;padding-right:1rem}.tw-py-2{padding-bottom:.5rem;padding-top:.5rem}.tw-px-1{padding-left:.25rem;padding-right:.25rem}.tw-py-3{padding-bottom:.75rem;padding-top:.75rem}.tw-py-4{padding-bottom:1rem;padding-top:1rem}.tw-py-1{padding-bottom:.25rem;padding-top:.25rem}.tw-py-1\.5{padding-bottom:.375rem;padding-top:.375rem}.tw-py-8{padding-bottom:2rem;padding-top:2rem}.tw-px-8{padding-left:2rem;padding-right:2rem}.tw-px-1\.5{padding-left:.375rem;padding-right:.375rem}.tw-px-3{padding-left:.75rem;padding-right:.75rem}.tw-py-0{padding-bottom:0;padding-top:0}.tw-px-2{padding-left:.5rem;padding-right:.5rem}.tw-pb-4{padding-bottom:1rem}.tw-pb-6{padding-bottom:1.5rem}.tw-pb-8{padding-bottom:2rem}.tw-pt-4{padding-top:1rem}.tw-pb-0{padding-bottom:0}.tw-pt-6{padding-top:1.5rem}.tw-pl-3{padding-left:.75rem}.tw-pl-9{padding-left:2.25rem}.tw-pt-2{padding-top:.5rem}.tw-text-left{text-align:left}.tw-text-center{text-align:center}.tw-text-right{text-align:right}.tw-align-middle{vertical-align:middle}.tw-font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.tw-text-base{font-size:1rem;line-height:1.5rem}.tw-text-lg{font-size:1.125rem;line-height:1.75rem}.tw-text-sm{font-size:.875rem;line-height:1.25rem}.tw-text-xl{font-size:1.25rem;line-height:1.75rem}.tw-text-xs{font-size:.75rem;line-height:1rem}.tw-text-3xl{font-size:1.875rem;line-height:2.25rem}.tw-font-bold{font-weight:700}.tw-font-medium{font-weight:500}.tw-uppercase{text-transform:uppercase}.tw-leading-3{line-height:.75rem}.tw-leading-5{line-height:1.25rem}.tw-leading-normal{line-height:1.5}.tw-text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity))}.tw-text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity))}.tw-text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity))}.tw-text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity))}.tw-text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity))}.tw-text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity))}.tw-text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity))}.tw-text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity))}.tw-text-green-500{--tw-text-opacity:1;color:rgb(34 197 94/var(--tw-text-opacity))}.tw-text-purple-500{--tw-text-opacity:1;color:rgb(168 85 247/var(--tw-text-opacity))}.tw-text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.tw-text-green-700{--tw-text-opacity:1;color:rgb(21 128 61/var(--tw-text-opacity))}.tw-text-opacity-75{--tw-text-opacity:0.75}.tw-text-opacity-100{--tw-text-opacity:1}.tw-underline{-webkit-text-decoration-line:underline;text-decoration-line:underline}.tw-no-underline{-webkit-text-decoration-line:none;text-decoration-line:none}.tw-opacity-100{opacity:1}.tw-opacity-50{opacity:.5}.tw-outline-none{outline:2px solid transparent;outline-offset:2px}.tw-ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.tw-ring-red-500\/30{--tw-ring-color:rgba(239,68,68,.3)}.hover\:tw-cursor-pointer:hover{cursor:pointer}.hover\:tw-border-gray-200:hover{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity))}.hover\:tw-border-green-500:hover{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity))}.hover\:tw-border-blue-700:hover{--tw-border-opacity:1;border-color:rgb(29 78 216/var(--tw-border-opacity))}.hover\:tw-border-red-600:hover{--tw-border-opacity:1;border-color:rgb(220 38 38/var(--tw-border-opacity))}.hover\:tw-bg-blue-600:hover{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity))}.hover\:tw-bg-blue-700:hover{--tw-bg-opacity:1;background-color:rgb(29 78 216/var(--tw-bg-opacity))}.hover\:tw-bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity))}.hover\:tw-bg-red-500:hover{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity))}.hover\:tw-text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.hover\:tw-text-blue-600:hover{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity))}.hover\:tw-text-opacity-100:hover{--tw-text-opacity:1}.hover\:tw-underline:hover{-webkit-text-decoration-line:underline;text-decoration-line:underline}.hover\:tw-no-underline:hover{-webkit-text-decoration-line:none;text-decoration-line:none}.focus\:tw-relative:focus{position:relative}.focus\:tw-z-10:focus{z-index:10}.focus\:tw-border-red-400:focus{--tw-border-opacity:1;border-color:rgb(248 113 113/var(--tw-border-opacity))}.focus\:tw-ring-red-500\/30:focus{--tw-ring-color:rgba(239,68,68,.3)}.active\:tw-cursor-pointer:active{cursor:pointer}.active\:tw-border-green-500:active{--tw-border-opacity:1;border-color:rgb(34 197 94/var(--tw-border-opacity))}.active\:tw-border-blue-800:active{--tw-border-opacity:1;border-color:rgb(30 64 175/var(--tw-border-opacity))}.active\:tw-border-gray-300:active{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity))}.active\:tw-bg-blue-800:active{--tw-bg-opacity:1;background-color:rgb(30 64 175/var(--tw-bg-opacity))}.active\:tw-bg-gray-100:active{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity))}.active\:tw-bg-red-600:active{--tw-bg-opacity:1;background-color:rgb(220 38 38/var(--tw-bg-opacity))}.active\:tw-text-white:active{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.active\:hover\:tw-border-blue-600:hover:active{--tw-border-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity))}.active\:hover\:tw-bg-blue-600:hover:active{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity))}.disabled\:tw-cursor-default:disabled{cursor:default}.disabled\:tw-border-blue-600:disabled{--tw-border-opacity:1;border-color:rgb(37 99 235/var(--tw-border-opacity))}.disabled\:tw-bg-blue-600:disabled{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity))}.disabled\:tw-opacity-50:disabled{opacity:.5}@media (min-width:640px){.sm\:tw-flex{display:-webkit-flex;display:flex}.sm\:tw-flex-1{-webkit-flex:1 1 0%;flex:1 1 0%}.sm\:tw-grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:tw-text-sm{font-size:.875rem}.sm\:tw-leading-5,.sm\:tw-text-sm{line-height:1.25rem}}@media (min-width:768px){.md\:tw--mx-4{margin-left:-1rem;margin-right:-1rem}.md\:tw-mx-4{margin-left:1rem;margin-right:1rem}.md\:tw-mr-6{margin-right:1.5rem}.md\:tw-flex{display:-webkit-flex;display:flex}.md\:tw-w-1\/4{width:25%}.md\:tw-max-w-xs{max-width:20rem}.md\:tw-flex-1{-webkit-flex:1 1 0%;flex:1 1 0%}.md\:tw-items-center{-webkit-align-items:center;align-items:center}.md\:tw-justify-center{-webkit-justify-content:center;justify-content:center}.md\:tw-justify-between{-webkit-justify-content:space-between;justify-content:space-between}.md\:tw-space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0px*var(--tw-space-y-reverse));margin-top:calc(0px*(1 - var(--tw-space-y-reverse)))}.md\:tw-py-2{padding-bottom:.5rem;padding-top:.5rem}.md\:tw-px-4{padding-left:1rem;padding-right:1rem}.md\:tw-pb-4{padding-bottom:1rem}.md\:tw-text-right{text-align:right}}@media (min-width:1024px){.lg\:tw-block{display:block}.lg\:tw-flex{display:-webkit-flex;display:flex}.lg\:tw-hidden{display:none}.lg\:tw-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1200px){.xl\:tw-mr-4{margin-right:1rem}.xl\:tw-ml-4{margin-left:1rem}.xl\:tw-mt-0{margin-top:0}.xl\:tw-flex{display:-webkit-flex;display:flex}.xl\:tw-w-60{width:15rem}.xl\:tw-flex-1{-webkit-flex:1 1 0%;flex:1 1 0%}.xl\:tw-grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:tw-space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0px*var(--tw-space-y-reverse));margin-top:calc(0px*(1 - var(--tw-space-y-reverse)))}.xl\:tw-space-x-6>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1.5rem*var(--tw-space-x-reverse))}.xl\:tw-space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.75rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.75rem*var(--tw-space-x-reverse))}.xl\:tw-pr-8{padding-right:2rem}}@media (min-width:1536px){.\32xl\:tw-grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}.fade-enter-active,.fade-leave-active{-o-transition:opacity .3s;transition:opacity .3s}.fade-enter,.fade-leave-to{opacity:0}@font-face{font-family:swiper-icons;font-style:normal;font-weight:400;src:url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff")}:root{--swiper-theme-color:#007aff}.swiper-container{list-style:none;margin-left:auto;margin-right:auto;overflow:hidden;padding:0;position:relative;z-index:1}.swiper-container-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{box-sizing:content-box;display:flex;height:100%;position:relative;transition-property:transform;width:100%;z-index:1}.swiper-container-android .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-container-multirow>.swiper-wrapper{flex-wrap:wrap}.swiper-container-multirow-column>.swiper-wrapper{flex-direction:column;flex-wrap:wrap}.swiper-container-free-mode>.swiper-wrapper{margin:0 auto;transition-timing-function:ease-out}.swiper-slide{flex-shrink:0;height:100%;position:relative;transition-property:transform;width:100%}.swiper-slide-invisible-blank{visibility:hidden}.swiper-container-autoheight,.swiper-container-autoheight .swiper-slide{height:auto}.swiper-container-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-container-3d{perspective:1200px}.swiper-container-3d .swiper-cube-shadow,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:10}.swiper-container-3d .swiper-slide-shadow-left{background-image:linear-gradient(270deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-right{background-image:linear-gradient(90deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-top{background-image:linear-gradient(0deg,rgba(0,0,0,.5),transparent)}.swiper-container-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent)}.swiper-container-css-mode>.swiper-wrapper{-ms-overflow-style:none;overflow:auto;scrollbar-width:none}.swiper-container-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-container-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-container-horizontal.swiper-container-css-mode>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-container-vertical.swiper-container-css-mode>.swiper-wrapper{scroll-snap-type:y mandatory}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{align-items:center;color:var(--swiper-navigation-color,var(--swiper-theme-color));cursor:pointer;display:flex;height:var(--swiper-navigation-size);justify-content:center;margin-top:calc(var(--swiper-navigation-size)*-1/2);position:absolute;top:50%;width:calc(var(--swiper-navigation-size)/44*27);z-index:10}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{cursor:auto;opacity:.35;pointer-events:none}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);font-variant:normal;letter-spacing:0;line-height:1;text-transform:none}.swiper-button-prev,.swiper-container-rtl .swiper-button-next{left:10px;right:auto}.swiper-button-prev:after,.swiper-container-rtl .swiper-button-next:after{content:"prev"}.swiper-button-next,.swiper-container-rtl .swiper-button-prev{left:auto;right:10px}.swiper-button-next:after,.swiper-container-rtl .swiper-button-prev:after{content:"next"}.swiper-button-next.swiper-button-white,.swiper-button-prev.swiper-button-white{--swiper-navigation-color:#fff}.swiper-button-next.swiper-button-black,.swiper-button-prev.swiper-button-black{--swiper-navigation-color:#000}.swiper-button-lock{display:none}.swiper-pagination{position:absolute;text-align:center;transform:translateZ(0);transition:opacity .3s;z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-container-horizontal>.swiper-pagination-bullets,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:10px;left:0;width:100%}.swiper-pagination-bullets-dynamic{font-size:0;overflow:hidden}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{position:relative;transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{background:#000;border-radius:100%;display:inline-block;height:8px;opacity:.2;width:8px}button.swiper-pagination-bullet{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;box-shadow:none;margin:0;padding:0}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet-active{background:var(--swiper-pagination-color,var(--swiper-theme-color));opacity:1}.swiper-container-vertical>.swiper-pagination-bullets{right:10px;top:50%;transform:translate3d(0,-50%,0)}.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{display:block;margin:6px 0}.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:transform .2s,top .2s}.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 4px}.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,left .2s}.swiper-container-horizontal.swiper-container-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,right .2s}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));height:100%;left:0;position:absolute;top:0;transform:scale(0);transform-origin:left top;width:100%}.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-container-horizontal>.swiper-pagination-progressbar,.swiper-container-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{height:4px;left:0;top:0;width:100%}.swiper-container-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-container-vertical>.swiper-pagination-progressbar{height:100%;left:0;top:0;width:4px}.swiper-pagination-white{--swiper-pagination-color:#fff}.swiper-pagination-black{--swiper-pagination-color:#000}.swiper-pagination-lock{display:none}.swiper-scrollbar{background:rgba(0,0,0,.1);border-radius:10px;position:relative;-ms-touch-action:none}.swiper-container-horizontal>.swiper-scrollbar{bottom:3px;height:5px;left:1%;position:absolute;width:98%;z-index:50}.swiper-container-vertical>.swiper-scrollbar{height:98%;position:absolute;right:3px;top:1%;width:5px;z-index:50}.swiper-scrollbar-drag{background:rgba(0,0,0,.5);border-radius:10px;height:100%;left:0;position:relative;top:0;width:100%}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{align-items:center;display:flex;height:100%;justify-content:center;text-align:center;width:100%}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-height:100%;max-width:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move}.swiper-lazy-preloader{animation:swiper-preloader-spin 1s linear infinite;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top:4px solid transparent;box-sizing:border-box;height:42px;left:50%;margin-left:-21px;margin-top:-21px;position:absolute;top:50%;transform-origin:50%;width:42px;z-index:10}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{to{transform:rotate(1turn)}}.swiper-container .swiper-notification{left:0;opacity:0;pointer-events:none;position:absolute;top:0;z-index:-1000}.swiper-container-fade.swiper-container-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-container-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-container-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-fade .swiper-slide-active,.swiper-container-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-container-cube{overflow:visible}.swiper-container-cube .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;height:100%;pointer-events:none;transform-origin:0 0;visibility:hidden;width:100%;z-index:1}.swiper-container-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-cube.swiper-container-rtl .swiper-slide{transform-origin:100% 0}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-next,.swiper-container-cube .swiper-slide-next+.swiper-slide,.swiper-container-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-container-cube .swiper-slide-shadow-bottom,.swiper-container-cube .swiper-slide-shadow-left,.swiper-container-cube .swiper-slide-shadow-right,.swiper-container-cube .swiper-slide-shadow-top{-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:0}.swiper-container-cube .swiper-cube-shadow{background:#000;bottom:0;-webkit-filter:blur(50px);filter:blur(50px);height:100%;left:0;opacity:.6;position:absolute;width:100%;z-index:0}.swiper-container-flip{overflow:visible}.swiper-container-flip .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;pointer-events:none;z-index:1}.swiper-container-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-container-flip .swiper-slide-active,.swiper-container-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-container-flip .swiper-slide-shadow-bottom,.swiper-container-flip .swiper-slide-shadow-left,.swiper-container-flip .swiper-slide-shadow-right,.swiper-container-flip .swiper-slide-shadow-top{-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:0}.c-btn:focus,a.c-btn:focus,button.c-btn:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000);outline:2px solid transparent;outline-offset:2px}.c-btn.block,a.c-btn.block,button.c-btn.block{width:100%}.c-btn.small,a.c-btn.small,button.c-btn.small{line-height:1rem;padding-left:.75rem;padding-right:.75rem}.c-btn.small .c-icon,a.c-btn.small .c-icon,button.c-btn.small .c-icon{height:12px;width:12px}.c-btn.large,a.c-btn.large,button.c-btn.large{font-size:1rem;line-height:1.5rem}.c-btn.outline .c-icon,a.c-btn.outline .c-icon,button.c-btn.outline .c-icon{fill:currentColor}.c-btn.loading,a.c-btn.loading,button.c-btn.loading{position:relative}.c-btn.loading .c-spinner,a.c-btn.loading .c-spinner,button.c-btn.loading .c-spinner{-webkit-align-items:center;align-items:center;bottom:0;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center;left:0;position:absolute;right:0;top:0}.c-btn.loading .c-btn-content,a.c-btn.loading .c-btn-content,button.c-btn.loading .c-btn-content{visibility:hidden}.c-btn .c-icon,a.c-btn .c-icon,button.c-btn .c-icon{vertical-align:middle}body.ltr .c-btn:not(.c-btn-icon) .c-icon,body.ltr a.c-btn:not(.c-btn-icon) .c-icon,body.ltr button.c-btn:not(.c-btn-icon) .c-icon{margin-right:1rem}body.rtl .c-btn:not(.c-btn-icon) .c-icon,body.rtl a.c-btn:not(.c-btn-icon) .c-icon,body.rtl button.c-btn:not(.c-btn-icon) .c-icon{margin-left:1rem}.c-btn .c-btn-content,a.c-btn .c-btn-content,button.c-btn .c-btn-content{-webkit-align-items:center;align-items:center;display:-webkit-flex;display:flex;-webkit-justify-content:center;justify-content:center}.c-dropdown{display:inline-block;position:relative}.c-dropdown.disabled{opacity:.5}.c-dropdown select{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity))}.c-spinner>.animation{-webkit-animation:rotator .7s linear infinite;-o-animation:rotator .7s linear infinite;animation:rotator .7s linear infinite;border-left-color:transparent!important;border-radius:50%;border-style:solid;border-top-color:transparent!important;border-width:2px;height:20px;width:20px}.c-spinner.sm>.animation{height:16px;width:16px}.c-spinner.lg>.animation{border-width:3px;height:32px;width:32px}@-webkit-keyframes rotator{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@-o-keyframes rotator{0%{-o-transform:rotate(0);transform:rotate(0)}to{-o-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes rotator{0%{-webkit-transform:rotate(0);-o-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);-o-transform:rotate(1turn);transform:rotate(1turn)}} /*# sourceMappingURL=app.css.map*/ \ No newline at end of file diff --git a/src/web/assets/pluginstore/dist/css/app.css.map b/src/web/assets/pluginstore/dist/css/app.css.map index 63a6419e8d2..c082cdead0f 100644 --- a/src/web/assets/pluginstore/dist/css/app.css.map +++ b/src/web/assets/pluginstore/dist/css/app.css.map @@ -1 +1 @@ -{"version":3,"file":"css/app.css","mappings":"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","sources":["webpack:///./js/components/EditionBadge.vue","webpack:///./js/components/PluginCard.vue","webpack:///../../../../../packages/craftcms-sass/_mixins.scss","webpack:///./js/components/InfoHud.vue","webpack:///./js/components/LicenseStatus.vue","webpack:///./js/components/upgradecraft/CmsEdition.vue","webpack:///./js/components/StatusMessage.vue","webpack:///./js/components/PluginActions.vue","webpack:///./js/components/ActiveInstallsChart.vue","webpack:///./js/components/ChangelogRelease.vue","webpack:///./js/components/modal/Modal.vue","webpack:///./js/components/CategorySelector.vue","webpack:///./js/components/ScreenshotModal.vue","webpack:///./sass/main.scss","webpack:///./sass/_tailwind.scss","webpack:///./sass/_layout.scss","webpack:///./sass/_general.scss","webpack:///./sass/_nav-items.scss","webpack:///./sass/_tooltip.scss","webpack:///./sass/_readable.scss","webpack:///","webpack:///./App.vue","webpack:///../../../../../node_modules/swiper/css/swiper.css","webpack:///./js/components/ui/CBtn.vue","webpack:///./js/components/ui/CDropdown.vue","webpack:///./js/components/ui/CSpinner.vue"],"sourcesContent":["\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n@import '@craftcms/sass/mixins';\n\n.edition-badge {\n @apply tw-inline-block;\n\n &.is-block {\n @apply tw-block;\n }\n\n &:not(.is-block) {\n @apply tw-relative;\n }\n\n &.is-big {\n .edition-badge-name {\n @apply tw-text-base tw-px-3 tw-py-1;\n }\n }\n\n .edition-badge-name {\n @apply tw-inline-block tw-uppercase tw-border tw-border-solid tw-border-gray-400 tw-px-2 tw-py-1 tw-text-gray-500 tw-rounded tw-text-xs;\n letter-spacing: 1.5px;\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n@import '@craftcms/sass/mixins';\n\n.plugin-details-header {\n @apply tw-leading-normal tw-overflow-hidden tw-mb-1;\n max-height: 4.75em;\n\n .plugin-name {\n @apply tw-flex tw-mb-1;\n\n .edition-badge {\n @apply tw-ml-2;\n }\n }\n}\n\na.plugin-card {\n box-sizing: border-box;\n @apply tw-text-gray-900;\n\n &:hover {\n @apply tw-text-gray-900;\n\n strong {\n @apply tw-text-blue-600;\n }\n }\n\n .installed {\n @apply tw-absolute;\n top: 14px;\n @include right(18px);\n color: #ccc;\n }\n}\n\n.ps-grid-plugins {\n .plugin-card {\n @apply tw-h-full;\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n@import '@craftcms/sass/mixins';\n\n.info-hud {\n @apply tw-inline-block;\n\n .v-popover {\n @apply tw-text-gray-400;\n display: inline-block;\n line-height: 0;\n\n &:hover,\n &.open {\n @apply tw-cursor-pointer tw-text-blue-600;\n }\n\n & > span {\n outline: none;\n }\n }\n}\n\n.tooltip {\n max-width: 250px;\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n@import '@craftcms/sass/mixins';\n\n.license-status {\n &.license-status {\n &:hover {\n cursor: default;\n }\n\n &.installed {\n @apply tw-text-green-700 tw-border-green-700;\n }\n\n &.licensed {\n @apply tw-text-blue-600 tw-border-blue-600;\n }\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.cms-editions-edition {\n @apply tw-border tw-border-gray-200 tw-border-solid tw-p-8 tw-rounded tw-text-center tw-flex tw-flex-col;\n\n .description {\n @apply tw-flex-1;\n\n .edition-name {\n @apply tw-border-b tw-border-gray-200 tw-border-solid tw-text-gray-700 tw-inline-block tw-py-1 tw-uppercase tw-text-lg tw-font-bold;\n }\n\n .edition-description {\n @apply tw-text-lg tw-my-6 tw-leading-normal;\n }\n\n .price {\n @apply tw-text-3xl tw-font-bold tw-my-8;\n }\n\n ul {\n @apply tw-text-left tw-mb-8;\n\n li {\n @apply tw-py-2 tw-border-b tw-border-gray-200 tw-border-solid;\n\n &:first-child {\n @apply tw-border-t;\n }\n }\n }\n }\n\n .cms-edition-actions {\n position: relative;\n\n .c-spinner {\n position: absolute;\n bottom: -30px;\n left: 50%;\n margin-left: -11px;\n }\n\n .c-btn {\n @apply tw-mt-3;\n }\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.status-message {\n @apply tw-flex-1 tw-flex tw-items-center tw-justify-center tw-text-center;\n\n div {\n .c-spinner {\n @apply tw-mb-6;\n }\n\n .c-icon {\n @apply tw-mb-6;\n\n width: 48px;\n height: 48px;\n }\n\n .message {\n @apply tw-text-center;\n }\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.plugin-actions {\n .c-spinner {\n @apply tw-absolute tw-left-1/2;\n bottom: -32px;\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nbody {\n --chart-fill-color: #dbeafe;\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n@import '@craftcms/sass/mixins';\n\n.changelog-release {\n @apply tw-pt-2 tw-pb-4 tw-border-b tw-border-gray-200 tw-border-solid;\n @apply md:tw-flex;\n\n .version {\n @apply tw-relative;\n @apply md:tw-w-48;\n\n .anchor {\n @apply tw-absolute tw-text-white tw-p-1 tw-rounded-full;\n @include left(-24px);\n @apply tw-top-5;\n font-size: 14px;\n transform: rotate(45deg);\n\n &:hover {\n @apply tw-text-black;\n }\n }\n\n &:hover {\n .anchor {\n @apply tw-text-black;\n }\n }\n\n h2 {\n @apply tw-mt-6 tw-mb-2 tw-text-lg;\n }\n\n .date {\n @apply tw-text-gray-600;\n }\n\n .critical {\n @apply tw-uppercase tw-text-red-600 tw-border tw-border-red-600 tw-border-solid tw-inline-block tw-px-1 tw-py-0 tw-rounded tw-text-sm tw-mt-2;\n }\n }\n\n .details {\n @apply tw-p-0 tw-pt-6;\n @apply md:tw-flex-1;\n\n h3 {\n @apply tw-mt-6 tw-mb-4 tw-text-base;\n }\n\n ul {\n @apply tw-mb-4 tw-ml-6 tw-leading-normal;\n list-style-type: disc;\n\n li:not(:first-child) {\n @apply tw-mt-1;\n }\n }\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n@import '@craftcms/sass/mixins';\n\n#pluginstore-modal {\n @apply tw-absolute tw-top-0 tw-left-0;\n max-width: 850px;\n max-height: 650px;\n z-index: 100;\n\n .pluginstore-modal-flex {\n @apply tw-absolute tw-inset-0 tw-flex tw-flex-col;\n\n header {\n .btn-left {\n @apply tw-absolute;\n top: 28px;\n @include left(24px);\n }\n\n h1 {\n @apply tw-text-center;\n }\n }\n\n .pluginstore-modal-main {\n @apply tw-relative tw-flex tw-flex-grow tw-mb-0 tw-min-h-0;\n\n .pluginstore-modal-content {\n @apply tw-overflow-auto tw-flex-grow;\n padding: 24px;\n }\n }\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n@import '@craftcms/sass/mixins';\n\n/* Category Selector Btn */\n\n.category-selector-btn {\n @apply tw-block tw-relative;\n @apply lg:tw-hidden;\n background: $grey050;\n border: 1px solid $hairlineColor;\n padding: 10px 20px;\n border-radius: 4px;\n color: $secondaryColor;\n\n &:before {\n @include icon;\n @apply tw-absolute tw-right-0;\n top: calc(50% - 10px);\n font-size: 16px;\n width: 43px;\n line-height: 20px;\n content: 'downangle';\n }\n\n &:hover {\n @apply tw-no-underline;\n }\n}\n\n/* Category Selector */\n\n.category-selector {\n @apply lg:tw-flex tw-flex-col tw-fixed tw-top-0 tw-left-0 tw-bg-white tw-z-20;\n @apply tw-hidden;\n width: 100vw;\n height: 100vh;\n box-sizing: border-box;\n\n .category-selector-body {\n @apply tw-overflow-auto tw-h-full tw-p-6;\n box-sizing: border-box;\n\n .nav-items {\n ul {\n li {\n &:first-child a {\n border-top: 0;\n }\n\n &:first-child:before {\n @apply tw-hidden;\n }\n\n &:before,\n &:after {\n left: 1rem;\n right: 1rem;\n }\n\n a {\n padding-left: 55px;\n\n img {\n left: 24px;\n }\n }\n }\n }\n }\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n#screenshot-modal {\n @apply tw-fixed tw-inset-0 tw-bg-gray-100 tw-overflow-hidden;\n z-index: 101;\n\n .screenshot-modal-button {\n @apply tw-bg-gray-300/30 hover:tw-bg-gray-300/80;\n @apply tw-text-gray-700 tw-text-3xl;\n @apply tw-rounded tw-px-2 tw-py-2;\n }\n\n .close {\n @apply tw-inline-block tw-text-center tw-z-30;\n @apply tw-absolute tw-top-4 tw-left-4;\n\n &:hover {\n @apply tw-no-underline;\n color: rgba(0, 0, 0, 0.8);\n }\n }\n\n .carousel {\n @apply tw-absolute tw-flex tw-inset-0;\n @apply tw-absolute tw-flex tw-inset-0;\n\n .swiper-container {\n @apply tw-flex;\n\n .swiper-wrapper {\n @apply tw-flex-1 tw-flex tw-w-auto tw-h-auto;\n\n .swiper-slide {\n @apply tw-flex-1 tw-flex tw-text-center tw-justify-center tw-items-center;\n\n .screenshot {\n @apply tw-flex tw-flex-1 tw-justify-center tw-items-center tw-h-full;\n box-sizing: border-box;\n\n .swiper-zoom-container {\n @apply tw-w-full tw-h-full tw-flex tw-text-center tw-justify-center tw-items-center;\n\n img {\n @apply tw-max-w-full tw-max-h-full;\n }\n }\n }\n }\n }\n }\n\n .ps-swiper-button-prev,\n .ps-swiper-button-next {\n @apply tw-absolute tw-flex tw-justify-center tw-items-center tw-w-auto tw--mt-12 tw-z-10 tw-top-1/2;\n background-image: none;\n\n &.swiper-button-disabled {\n @apply tw-hidden;\n }\n\n .c-icon {\n @apply tw-flex-1 tw-top-0;\n }\n }\n\n .ps-swiper-button-prev {\n @apply tw-left-0 tw-ml-4;\n\n .c-icon {\n left: -2px;\n }\n }\n\n .ps-swiper-button-next {\n @apply tw-rounded tw-px-2 tw-py-2 tw-right-0 tw-mr-4 tw-h-auto;\n }\n\n .pagination-wrapper {\n @apply tw-w-full tw-absolute tw-bottom-0 tw-py-0 tw-flex tw-z-10 tw-h-2;\n bottom: 40px;\n\n .pagination-content {\n @apply tw-flex tw-flex-1 tw-px-8 tw-max-w-xs tw-mx-auto;\n\n .swiper-pagination {\n @apply tw-relative tw-flex tw-flex-1 tw-bg-gray-200 tw-p-0 tw-rounded-full;\n\n .swiper-pagination-bullet {\n @apply tw-flex-1 tw-rounded-full tw-bg-gray-200 tw-h-2;\n &.swiper-pagination-bullet-active {\n @apply tw-bg-gray-600;\n }\n }\n }\n }\n }\n }\n}\n\n@media (min-width: 700px) {\n .carousel {\n .swiper-container {\n .swiper-wrapper {\n .swiper-slide {\n .screenshot {\n .swiper-zoom-container {\n img {\n padding-left: 100px;\n padding-right: 100px;\n }\n }\n }\n }\n }\n }\n }\n}\n\n@media (min-height: 700px) {\n .carousel {\n .swiper-container {\n .swiper-wrapper {\n .swiper-slide {\n .screenshot {\n .swiper-zoom-container {\n img {\n padding-top: 100px;\n padding-bottom: 100px;\n }\n }\n }\n }\n }\n }\n }\n}\n","@tailwind base;\n\n@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n@import 'tailwind';\n@import 'layout';\n@import 'general';\n@import 'nav-items';\n@import 'tooltip';\n@import 'readable';\n\n@tailwind components;\n@tailwind utilities;\n","/* Add stuff that’s missing because we’re not using preflight */\n\nhtml {\n @apply tw-box-border;\n}\n\n*,\n:after,\n:before {\n -moz-box-sizing: inherit;\n box-sizing: inherit;\n}\n\nimg {\n @apply tw-max-w-full tw-h-auto;\n}\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n#main-container #main #main-content #content-container #content {\n display: flex;\n padding: 0;\n min-height: 400px;\n}\n\na {\n @apply tw-text-blue-600;\n}\n\n.ps-wrapper {\n @apply tw-flex tw-flex-1 tw-flex-col;\n @apply lg:tw-flex-row;\n padding-bottom: 0 !important;\n\n .ps-sidebar {\n @apply tw-px-6 tw-py-6 tw-w-full;\n background-color: var(--gray-050);\n @include border-radius(\n var(--large-border-radius),\n 0,\n 0,\n var(--large-border-radius)\n );\n @apply lg:tw-border-b-0 lg:tw-border-r lg:tw-overflow-auto lg:tw-w-64;\n\n .categories {\n @apply lg:tw-block;\n }\n }\n\n .ps-main {\n @apply tw-flex-1 tw-overflow-auto;\n\n .ps-container {\n @apply tw-flex-1 tw-max-w-screen-xl tw-mx-auto;\n }\n }\n}\n\n.ps-container {\n @apply tw-px-10 tw-py-6;\n}\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n/* Basics */\n\nhtml,\nbody,\ndiv,\nspan,\nobject,\niframe,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\ndel,\ndfn,\nem,\nfont,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\narticle,\nmain,\nnav,\nins {\n min-width: 0;\n}\n\nhr {\n @apply tw-border-gray-200;\n}\n\nh1 {\n @apply tw-mb-0;\n font-size: 18px;\n}\n\nh2 {\n @apply tw-mt-8 tw-mb-4;\n}\n\np {\n @apply tw-mb-4;\n}\n\npre {\n @apply tw-bg-gray-200 tw-p-4 tw-mb-4 tw-overflow-auto tw-max-w-full tw-min-w-0;\n}\n\ncode {\n @apply tw-bg-gray-200 tw-p-1;\n}\n\n/* Classes */\n\n.no-line-height {\n line-height: 0;\n}\n\n.input.success input {\n border-color: var(--success-color);\n}\n\n.input.errors .select:not(.selectize) select {\n box-shadow: inset 0 0 0 1px transparent, 0 0 0 1px var(--error-color),\n 0 1px 1px rgba(0, 0, 0, 0.1);\n}\n\ninput.error {\n @apply tw-border-red-600;\n}\n\n/* Header */\n\n.ps-header {\n @apply tw-border-b tw-border-solid tw-border-gray-200 tw-py-2 tw-flex tw-justify-between;\n}\n\n/* Swiper */\n\n.swiper-wrapper {\n min-width: auto;\n}\n\n/* Craft tweaks */\n\n#header h1 {\n cursor: pointer;\n}\n\n#main-container {\n @apply tw-relative;\n}\n\n#main-content #content {\n @apply tw-relative;\n}\n\n#container {\n position: static !important; /* #container hack required for modal overlays */\n}\n\n/* Plugin Store actions */\n\n#pluginstore-actions {\n @apply tw-flex tw-justify-between tw-items-center;\n\n & > * {\n @include margin-left(18px);\n }\n\n #cart-button {\n svg {\n @apply tw-inline-block;\n width: 18px;\n height: 18px;\n vertical-align: middle;\n line-height: 0;\n margin-right: 3px;\n }\n\n svg {\n @include svg-mask(var(--secondary-color));\n }\n\n &:hover svg {\n @include svg-mask(darken($secondaryColor, 5%));\n }\n\n .badge {\n @include margin(0, 0, 0, -6px);\n @apply tw-relative tw-inline-block tw-flex-shrink tw-text-white;\n top: -1px;\n padding: 0 6px;\n font-size: 11px;\n line-height: 16px;\n border-radius: 1em;\n background: var(--primary-color);\n }\n }\n\n #craftid-account {\n &:hover {\n @apply tw-no-underline;\n }\n\n .photo {\n svg {\n @apply tw-align-middle;\n @include margin-right(7px);\n width: 22px;\n height: 22px;\n border-radius: 100%;\n }\n }\n\n &:hover .label {\n @apply tw-no-underline;\n }\n }\n\n #craftid-connect-form {\n .ssl-status {\n @apply tw-inline-block;\n }\n }\n}\n",".nav-items {\n ul {\n @apply tw--mx-6;\n\n li {\n position: relative;\n\n &:before,\n &:last-child:after {\n @apply tw-absolute tw-left-0 tw-right-0;\n content: '';\n }\n\n &:before {\n @apply tw-top-0;\n }\n\n &:last-child:after {\n @apply tw-bottom-0;\n }\n\n a {\n @apply tw-relative tw-px-6 tw-py-2 tw-text-gray-900 tw-flex tw-items-center;\n\n svg,\n img {\n @apply tw-align-middle tw-mr-3 tw-text-blue-600 tw-w-6 tw-h-6;\n }\n\n &:hover {\n @apply tw-no-underline tw-z-10;\n background-color: var(--gray-100);\n }\n\n &.router-link-exact-active {\n background-color: var(--gray-200);\n }\n }\n }\n }\n}\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n.tooltip {\n display: block !important;\n z-index: 10000;\n background: var(--white);\n box-shadow: 0 25px 100px rgba(0, 0, 0, 0.5);\n padding: 24px;\n\n .tooltip-arrow {\n width: 0;\n height: 0;\n border-style: solid;\n position: absolute;\n margin: 12px;\n border-color: white;\n }\n\n &[x-placement^='top'] {\n margin-bottom: 12px;\n\n .tooltip-arrow {\n border-width: 12px 12px 0 12px;\n border-left-color: transparent !important;\n border-right-color: transparent !important;\n border-bottom-color: transparent !important;\n bottom: -12px;\n left: calc(50% - 12px);\n margin-top: 0;\n margin-bottom: 0;\n }\n }\n\n &[x-placement^='bottom'] {\n margin-top: 12px;\n\n .tooltip-arrow {\n border-width: 0 12px 12px 12px;\n border-left-color: transparent !important;\n border-right-color: transparent !important;\n border-top-color: transparent !important;\n top: -12px;\n left: calc(50% - 12px);\n margin-top: 0;\n margin-bottom: 0;\n }\n }\n\n &[x-placement^='right'] {\n margin-left: 12px;\n\n .tooltip-arrow {\n border-width: 12px 12px 12px 0;\n border-left-color: transparent !important;\n border-top-color: transparent !important;\n border-bottom-color: transparent !important;\n left: -12px;\n top: calc(50% - 12px);\n margin-left: 0;\n margin-right: 0;\n }\n }\n\n &[x-placement^='left'] {\n margin-right: 12px;\n\n .tooltip-arrow {\n border-width: 12px 0 12px 12px;\n border-top-color: transparent !important;\n border-right-color: transparent !important;\n border-bottom-color: transparent !important;\n right: -12px;\n top: calc(50% - 12px);\n margin-left: 0;\n margin-right: 0;\n }\n }\n\n &[aria-hidden='true'] {\n visibility: hidden;\n opacity: 0;\n transition: opacity 0.15s, visibility 0.15s;\n }\n\n &[aria-hidden='false'] {\n visibility: visible;\n opacity: 1;\n transition: opacity 0.15s;\n }\n}\n","/* Readable overrides */\n\n.readable {\n /* Tables */\n table {\n display: block;\n overflow: auto;\n width: 100%;\n\n th {\n font-weight: 600;\n }\n\n td,\n th {\n border: 1px solid #dfe2e5;\n padding: 6px 13px;\n }\n\n tr {\n background-color: var(--white);\n border-top: 1px solid #c6cbd1;\n }\n\n tr:nth-child(2n) {\n background-color: var(--gray-050);\n }\n\n img {\n background-color: transparent;\n }\n }\n}\n",null,"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.fade-enter-active,\n.fade-leave-active {\n transition: opacity 0.3s;\n}\n\n.fade-enter,\n.fade-leave-to {\n opacity: 0;\n}\n","/**\n * Swiper 5.4.5\n * Most modern mobile touch slider and framework with hardware accelerated transitions\n * http://swiperjs.com\n *\n * Copyright 2014-2020 Vladimir Kharlampidi\n *\n * Released under the MIT License\n *\n * Released on: June 16, 2020\n */\n\n@font-face {\n font-family: 'swiper-icons';\n src: url(\"data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA\") format(\"woff\");\n font-weight: 400;\n font-style: normal;\n}\n:root {\n --swiper-theme-color: #007aff;\n}\n.swiper-container {\n margin-left: auto;\n margin-right: auto;\n position: relative;\n overflow: hidden;\n list-style: none;\n padding: 0;\n /* Fix of Webkit flickering */\n z-index: 1;\n}\n.swiper-container-vertical > .swiper-wrapper {\n flex-direction: column;\n}\n.swiper-wrapper {\n position: relative;\n width: 100%;\n height: 100%;\n z-index: 1;\n display: flex;\n transition-property: transform;\n box-sizing: content-box;\n}\n.swiper-container-android .swiper-slide,\n.swiper-wrapper {\n transform: translate3d(0px, 0, 0);\n}\n.swiper-container-multirow > .swiper-wrapper {\n flex-wrap: wrap;\n}\n.swiper-container-multirow-column > .swiper-wrapper {\n flex-wrap: wrap;\n flex-direction: column;\n}\n.swiper-container-free-mode > .swiper-wrapper {\n transition-timing-function: ease-out;\n margin: 0 auto;\n}\n.swiper-slide {\n flex-shrink: 0;\n width: 100%;\n height: 100%;\n position: relative;\n transition-property: transform;\n}\n.swiper-slide-invisible-blank {\n visibility: hidden;\n}\n/* Auto Height */\n.swiper-container-autoheight,\n.swiper-container-autoheight .swiper-slide {\n height: auto;\n}\n.swiper-container-autoheight .swiper-wrapper {\n align-items: flex-start;\n transition-property: transform, height;\n}\n/* 3D Effects */\n.swiper-container-3d {\n perspective: 1200px;\n}\n.swiper-container-3d .swiper-wrapper,\n.swiper-container-3d .swiper-slide,\n.swiper-container-3d .swiper-slide-shadow-left,\n.swiper-container-3d .swiper-slide-shadow-right,\n.swiper-container-3d .swiper-slide-shadow-top,\n.swiper-container-3d .swiper-slide-shadow-bottom,\n.swiper-container-3d .swiper-cube-shadow {\n transform-style: preserve-3d;\n}\n.swiper-container-3d .swiper-slide-shadow-left,\n.swiper-container-3d .swiper-slide-shadow-right,\n.swiper-container-3d .swiper-slide-shadow-top,\n.swiper-container-3d .swiper-slide-shadow-bottom {\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n z-index: 10;\n}\n.swiper-container-3d .swiper-slide-shadow-left {\n background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n.swiper-container-3d .swiper-slide-shadow-right {\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n.swiper-container-3d .swiper-slide-shadow-top {\n background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n.swiper-container-3d .swiper-slide-shadow-bottom {\n background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n/* CSS Mode */\n.swiper-container-css-mode > .swiper-wrapper {\n overflow: auto;\n scrollbar-width: none;\n /* For Firefox */\n -ms-overflow-style: none;\n /* For Internet Explorer and Edge */\n}\n.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {\n display: none;\n}\n.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {\n scroll-snap-align: start start;\n}\n.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {\n scroll-snap-type: x mandatory;\n}\n.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {\n scroll-snap-type: y mandatory;\n}\n:root {\n --swiper-navigation-size: 44px;\n /*\n --swiper-navigation-color: var(--swiper-theme-color);\n */\n}\n.swiper-button-prev,\n.swiper-button-next {\n position: absolute;\n top: 50%;\n width: calc(var(--swiper-navigation-size) / 44 * 27);\n height: var(--swiper-navigation-size);\n margin-top: calc(-1 * var(--swiper-navigation-size) / 2);\n z-index: 10;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--swiper-navigation-color, var(--swiper-theme-color));\n}\n.swiper-button-prev.swiper-button-disabled,\n.swiper-button-next.swiper-button-disabled {\n opacity: 0.35;\n cursor: auto;\n pointer-events: none;\n}\n.swiper-button-prev:after,\n.swiper-button-next:after {\n font-family: swiper-icons;\n font-size: var(--swiper-navigation-size);\n text-transform: none !important;\n letter-spacing: 0;\n text-transform: none;\n font-variant: initial;\n line-height: 1;\n}\n.swiper-button-prev,\n.swiper-container-rtl .swiper-button-next {\n left: 10px;\n right: auto;\n}\n.swiper-button-prev:after,\n.swiper-container-rtl .swiper-button-next:after {\n content: 'prev';\n}\n.swiper-button-next,\n.swiper-container-rtl .swiper-button-prev {\n right: 10px;\n left: auto;\n}\n.swiper-button-next:after,\n.swiper-container-rtl .swiper-button-prev:after {\n content: 'next';\n}\n.swiper-button-prev.swiper-button-white,\n.swiper-button-next.swiper-button-white {\n --swiper-navigation-color: #ffffff;\n}\n.swiper-button-prev.swiper-button-black,\n.swiper-button-next.swiper-button-black {\n --swiper-navigation-color: #000000;\n}\n.swiper-button-lock {\n display: none;\n}\n:root {\n /*\n --swiper-pagination-color: var(--swiper-theme-color);\n */\n}\n.swiper-pagination {\n position: absolute;\n text-align: center;\n transition: 300ms opacity;\n transform: translate3d(0, 0, 0);\n z-index: 10;\n}\n.swiper-pagination.swiper-pagination-hidden {\n opacity: 0;\n}\n/* Common Styles */\n.swiper-pagination-fraction,\n.swiper-pagination-custom,\n.swiper-container-horizontal > .swiper-pagination-bullets {\n bottom: 10px;\n left: 0;\n width: 100%;\n}\n/* Bullets */\n.swiper-pagination-bullets-dynamic {\n overflow: hidden;\n font-size: 0;\n}\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n transform: scale(0.33);\n position: relative;\n}\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {\n transform: scale(1);\n}\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {\n transform: scale(1);\n}\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {\n transform: scale(0.66);\n}\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {\n transform: scale(0.33);\n}\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {\n transform: scale(0.66);\n}\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {\n transform: scale(0.33);\n}\n.swiper-pagination-bullet {\n width: 8px;\n height: 8px;\n display: inline-block;\n border-radius: 100%;\n background: #000;\n opacity: 0.2;\n}\nbutton.swiper-pagination-bullet {\n border: none;\n margin: 0;\n padding: 0;\n box-shadow: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n.swiper-pagination-clickable .swiper-pagination-bullet {\n cursor: pointer;\n}\n.swiper-pagination-bullet-active {\n opacity: 1;\n background: var(--swiper-pagination-color, var(--swiper-theme-color));\n}\n.swiper-container-vertical > .swiper-pagination-bullets {\n right: 10px;\n top: 50%;\n transform: translate3d(0px, -50%, 0);\n}\n.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {\n margin: 6px 0;\n display: block;\n}\n.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {\n top: 50%;\n transform: translateY(-50%);\n width: 8px;\n}\n.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n display: inline-block;\n transition: 200ms transform, 200ms top;\n}\n.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {\n margin: 0 4px;\n}\n.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {\n left: 50%;\n transform: translateX(-50%);\n white-space: nowrap;\n}\n.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n transition: 200ms transform, 200ms left;\n}\n.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n transition: 200ms transform, 200ms right;\n}\n/* Progress */\n.swiper-pagination-progressbar {\n background: rgba(0, 0, 0, 0.25);\n position: absolute;\n}\n.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {\n background: var(--swiper-pagination-color, var(--swiper-theme-color));\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n transform: scale(0);\n transform-origin: left top;\n}\n.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {\n transform-origin: right top;\n}\n.swiper-container-horizontal > .swiper-pagination-progressbar,\n.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {\n width: 100%;\n height: 4px;\n left: 0;\n top: 0;\n}\n.swiper-container-vertical > .swiper-pagination-progressbar,\n.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {\n width: 4px;\n height: 100%;\n left: 0;\n top: 0;\n}\n.swiper-pagination-white {\n --swiper-pagination-color: #ffffff;\n}\n.swiper-pagination-black {\n --swiper-pagination-color: #000000;\n}\n.swiper-pagination-lock {\n display: none;\n}\n/* Scrollbar */\n.swiper-scrollbar {\n border-radius: 10px;\n position: relative;\n -ms-touch-action: none;\n background: rgba(0, 0, 0, 0.1);\n}\n.swiper-container-horizontal > .swiper-scrollbar {\n position: absolute;\n left: 1%;\n bottom: 3px;\n z-index: 50;\n height: 5px;\n width: 98%;\n}\n.swiper-container-vertical > .swiper-scrollbar {\n position: absolute;\n right: 3px;\n top: 1%;\n z-index: 50;\n width: 5px;\n height: 98%;\n}\n.swiper-scrollbar-drag {\n height: 100%;\n width: 100%;\n position: relative;\n background: rgba(0, 0, 0, 0.5);\n border-radius: 10px;\n left: 0;\n top: 0;\n}\n.swiper-scrollbar-cursor-drag {\n cursor: move;\n}\n.swiper-scrollbar-lock {\n display: none;\n}\n.swiper-zoom-container {\n width: 100%;\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n text-align: center;\n}\n.swiper-zoom-container > img,\n.swiper-zoom-container > svg,\n.swiper-zoom-container > canvas {\n max-width: 100%;\n max-height: 100%;\n object-fit: contain;\n}\n.swiper-slide-zoomed {\n cursor: move;\n}\n/* Preloader */\n:root {\n /*\n --swiper-preloader-color: var(--swiper-theme-color);\n */\n}\n.swiper-lazy-preloader {\n width: 42px;\n height: 42px;\n position: absolute;\n left: 50%;\n top: 50%;\n margin-left: -21px;\n margin-top: -21px;\n z-index: 10;\n transform-origin: 50%;\n animation: swiper-preloader-spin 1s infinite linear;\n box-sizing: border-box;\n border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));\n border-radius: 50%;\n border-top-color: transparent;\n}\n.swiper-lazy-preloader-white {\n --swiper-preloader-color: #fff;\n}\n.swiper-lazy-preloader-black {\n --swiper-preloader-color: #000;\n}\n@keyframes swiper-preloader-spin {\n 100% {\n transform: rotate(360deg);\n }\n}\n/* a11y */\n.swiper-container .swiper-notification {\n position: absolute;\n left: 0;\n top: 0;\n pointer-events: none;\n opacity: 0;\n z-index: -1000;\n}\n.swiper-container-fade.swiper-container-free-mode .swiper-slide {\n transition-timing-function: ease-out;\n}\n.swiper-container-fade .swiper-slide {\n pointer-events: none;\n transition-property: opacity;\n}\n.swiper-container-fade .swiper-slide .swiper-slide {\n pointer-events: none;\n}\n.swiper-container-fade .swiper-slide-active,\n.swiper-container-fade .swiper-slide-active .swiper-slide-active {\n pointer-events: auto;\n}\n.swiper-container-cube {\n overflow: visible;\n}\n.swiper-container-cube .swiper-slide {\n pointer-events: none;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n z-index: 1;\n visibility: hidden;\n transform-origin: 0 0;\n width: 100%;\n height: 100%;\n}\n.swiper-container-cube .swiper-slide .swiper-slide {\n pointer-events: none;\n}\n.swiper-container-cube.swiper-container-rtl .swiper-slide {\n transform-origin: 100% 0;\n}\n.swiper-container-cube .swiper-slide-active,\n.swiper-container-cube .swiper-slide-active .swiper-slide-active {\n pointer-events: auto;\n}\n.swiper-container-cube .swiper-slide-active,\n.swiper-container-cube .swiper-slide-next,\n.swiper-container-cube .swiper-slide-prev,\n.swiper-container-cube .swiper-slide-next + .swiper-slide {\n pointer-events: auto;\n visibility: visible;\n}\n.swiper-container-cube .swiper-slide-shadow-top,\n.swiper-container-cube .swiper-slide-shadow-bottom,\n.swiper-container-cube .swiper-slide-shadow-left,\n.swiper-container-cube .swiper-slide-shadow-right {\n z-index: 0;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n}\n.swiper-container-cube .swiper-cube-shadow {\n position: absolute;\n left: 0;\n bottom: 0px;\n width: 100%;\n height: 100%;\n background: #000;\n opacity: 0.6;\n -webkit-filter: blur(50px);\n filter: blur(50px);\n z-index: 0;\n}\n.swiper-container-flip {\n overflow: visible;\n}\n.swiper-container-flip .swiper-slide {\n pointer-events: none;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n z-index: 1;\n}\n.swiper-container-flip .swiper-slide .swiper-slide {\n pointer-events: none;\n}\n.swiper-container-flip .swiper-slide-active,\n.swiper-container-flip .swiper-slide-active .swiper-slide-active {\n pointer-events: auto;\n}\n.swiper-container-flip .swiper-slide-shadow-top,\n.swiper-container-flip .swiper-slide-shadow-bottom,\n.swiper-container-flip .swiper-slide-shadow-left,\n.swiper-container-flip .swiper-slide-shadow-right {\n z-index: 0;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n@import '@craftcms/sass/mixins';\n\n.c-btn,\na.c-btn,\nbutton.c-btn {\n &:focus {\n @apply tw-outline-none tw-ring;\n }\n\n &.block {\n @apply tw-w-full;\n }\n\n &.small {\n @apply tw-px-3 tw-leading-4;\n\n .c-icon {\n width: 12px;\n height: 12px;\n }\n }\n\n &.large {\n @apply tw-text-base tw-leading-6;\n }\n\n &.outline {\n .c-icon {\n @apply tw-fill-current;\n }\n }\n\n &.loading {\n @apply tw-relative;\n\n .c-spinner {\n @apply tw-absolute tw-inset-0 tw-flex tw-justify-center tw-items-center;\n }\n\n .c-btn-content {\n @apply tw-invisible;\n }\n }\n\n .c-icon {\n @apply tw-align-middle;\n }\n\n &:not(.c-btn-icon) {\n .c-icon {\n @include margin-right(1rem);\n }\n }\n\n .c-btn-content {\n @apply tw-flex tw-items-center tw-justify-center;\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n@import '@craftcms/sass/mixins';\n\n.c-dropdown {\n display: inline-block;\n position: relative;\n\n &.disabled {\n @apply tw-opacity-50;\n }\n\n select {\n @apply tw-border-gray-200;\n\n /*\n TODO\n\n @include ltr() {\n background-position: right 0.5rem center;\n }\n\n @include rtl() {\n background-position: left 0.5rem center;\n }\n */\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n.c-spinner {\n & > .animation {\n animation: rotator 0.7s linear infinite;\n width: 20px;\n height: 20px;\n border-radius: 50%;\n border-width: 2px;\n border-style: solid;\n border-top-color: transparent !important;\n border-left-color: transparent !important;\n }\n\n &.sm {\n & > .animation {\n width: 16px;\n height: 16px;\n }\n }\n\n &.lg {\n & > .animation {\n width: 32px;\n height: 32px;\n border-width: 3px;\n }\n }\n}\n\n@keyframes rotator {\n 0% {\n transform: rotate(0);\n }\n\n to {\n transform: rotate(1turn);\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/app.css","mappings":"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","sources":["webpack:///./js/components/EditionBadge.vue","webpack:///./js/components/PluginCard.vue","webpack:///../../../../../packages/craftcms-sass/_mixins.scss","webpack:///./js/components/InfoHud.vue","webpack:///./js/components/LicenseStatus.vue","webpack:///./js/components/upgradecraft/CmsEdition.vue","webpack:///./js/components/StatusMessage.vue","webpack:///./js/components/PluginActions.vue","webpack:///./js/components/ActiveInstallsChart.vue","webpack:///./js/components/ChangelogRelease.vue","webpack:///./js/components/modal/Modal.vue","webpack:///./js/components/CategorySelector.vue","webpack:///./js/components/ScreenshotModal.vue","webpack:///./sass/main.scss","webpack:///./sass/_tailwind.scss","webpack:///./sass/_layout.scss","webpack:///./sass/_general.scss","webpack:///./sass/_nav-items.scss","webpack:///./sass/_tooltip.scss","webpack:///./sass/_readable.scss","webpack:///","webpack:///./App.vue","webpack:///../../../../../node_modules/swiper/css/swiper.css","webpack:///./js/components/ui/CBtn.vue","webpack:///./js/components/ui/CDropdown.vue","webpack:///./js/components/ui/CSpinner.vue"],"sourcesContent":["\n@import '@craftcms/sass/mixins';\n\n.edition-badge {\n @apply tw-inline-block;\n\n &.is-block {\n @apply tw-block;\n }\n\n &:not(.is-block) {\n @apply tw-relative;\n }\n\n &.is-big {\n .edition-badge-name {\n @apply tw-text-base tw-px-3 tw-py-1;\n }\n }\n\n .edition-badge-name {\n @apply tw-inline-block tw-uppercase tw-border tw-border-solid tw-border-gray-400 tw-px-2 tw-py-1 tw-text-gray-500 tw-rounded tw-text-xs;\n letter-spacing: 1.5px;\n }\n}\n","\n@import '@craftcms/sass/mixins';\n\n.plugin-details-header {\n @apply tw-leading-normal tw-overflow-hidden tw-mb-1;\n max-height: 4.75em;\n\n .plugin-name {\n @apply tw-flex tw-mb-1;\n\n .edition-badge {\n @apply tw-ml-2;\n }\n }\n}\n\na.plugin-card {\n box-sizing: border-box;\n @apply tw-text-gray-900;\n\n &:hover {\n @apply tw-text-gray-900;\n\n strong {\n @apply tw-text-blue-600;\n }\n }\n\n .installed {\n @apply tw-absolute;\n top: 14px;\n @include right(18px);\n color: #ccc;\n }\n}\n\n.ps-grid-plugins {\n .plugin-card {\n @apply tw-h-full;\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n","\n@import '@craftcms/sass/mixins';\n\n.info-hud {\n @apply tw-inline-block;\n\n .v-popover {\n @apply tw-text-gray-400;\n display: inline-block;\n line-height: 0;\n\n &:hover,\n &.open {\n @apply tw-cursor-pointer tw-text-blue-600;\n }\n\n & > span {\n outline: none;\n }\n }\n}\n\n.tooltip {\n max-width: 250px;\n}\n","\n@import '@craftcms/sass/mixins';\n\n.license-status {\n &.license-status {\n &:hover {\n cursor: default;\n }\n\n &.installed {\n @apply tw-text-green-700 tw-border-green-700;\n }\n\n &.licensed {\n @apply tw-text-blue-600 tw-border-blue-600;\n }\n }\n}\n","\n.cms-editions-edition {\n @apply tw-border tw-border-gray-200 tw-border-solid tw-p-8 tw-rounded tw-text-center tw-flex tw-flex-col;\n\n .description {\n @apply tw-flex-1;\n\n .edition-name {\n @apply tw-border-b tw-border-gray-200 tw-border-solid tw-text-gray-700 tw-inline-block tw-py-1 tw-uppercase tw-text-lg tw-font-bold;\n }\n\n .edition-description {\n @apply tw-text-lg tw-my-6 tw-leading-normal;\n }\n\n .price {\n @apply tw-text-3xl tw-font-bold tw-my-8;\n }\n\n ul {\n @apply tw-text-left tw-mb-8;\n\n li {\n @apply tw-py-2 tw-border-b tw-border-gray-200 tw-border-solid;\n\n &:first-child {\n @apply tw-border-t;\n }\n }\n }\n }\n\n .cms-edition-actions {\n position: relative;\n\n .c-spinner {\n position: absolute;\n bottom: -30px;\n left: 50%;\n margin-left: -11px;\n }\n\n .c-btn {\n @apply tw-mt-3;\n }\n }\n}\n","\n.status-message {\n @apply tw-flex-1 tw-flex tw-items-center tw-justify-center tw-text-center;\n\n div {\n .c-spinner {\n @apply tw-mb-6;\n }\n\n .c-icon {\n @apply tw-mb-6;\n\n width: 48px;\n height: 48px;\n }\n\n .message {\n @apply tw-text-center;\n }\n }\n}\n","\n.plugin-actions {\n .c-spinner {\n @apply tw-absolute tw-left-1/2;\n bottom: -32px;\n }\n}\n","\nbody {\n --chart-fill-color: #dbeafe;\n}\n","\n@import '@craftcms/sass/mixins';\n\n.changelog-release {\n @apply tw-pt-2 tw-pb-4 tw-border-b tw-border-gray-200 tw-border-solid;\n @apply md:tw-flex;\n\n .version {\n @apply tw-relative;\n @apply md:tw-w-48;\n\n .anchor {\n @apply tw-absolute tw-text-white tw-p-1 tw-rounded-full;\n @include left(-24px);\n @apply tw-top-5;\n font-size: 14px;\n transform: rotate(45deg);\n\n &:hover {\n @apply tw-text-black;\n }\n }\n\n &:hover {\n .anchor {\n @apply tw-text-black;\n }\n }\n\n h2 {\n @apply tw-mt-6 tw-mb-2 tw-text-lg;\n }\n\n .date {\n @apply tw-text-gray-600;\n }\n\n .critical {\n @apply tw-uppercase tw-text-red-600 tw-border tw-border-red-600 tw-border-solid tw-inline-block tw-px-1 tw-py-0 tw-rounded tw-text-sm tw-mt-2;\n }\n }\n\n .details {\n @apply tw-p-0 tw-pt-6;\n @apply md:tw-flex-1;\n\n h3 {\n @apply tw-mt-6 tw-mb-4 tw-text-base;\n }\n\n ul {\n @apply tw-mb-4 tw-ml-6 tw-leading-normal;\n list-style-type: disc;\n\n li:not(:first-child) {\n @apply tw-mt-1;\n }\n }\n }\n}\n","\n@import '@craftcms/sass/mixins';\n\n#pluginstore-modal {\n @apply tw-absolute tw-top-0 tw-left-0;\n max-width: 850px;\n max-height: 650px;\n z-index: 100;\n\n .pluginstore-modal-flex {\n @apply tw-absolute tw-inset-0 tw-flex tw-flex-col;\n\n header {\n .btn-left {\n @apply tw-absolute;\n top: 28px;\n @include left(24px);\n }\n\n h1 {\n @apply tw-text-center;\n }\n }\n\n .pluginstore-modal-main {\n @apply tw-relative tw-flex tw-flex-grow tw-mb-0 tw-min-h-0;\n\n .pluginstore-modal-content {\n @apply tw-overflow-auto tw-flex-grow;\n padding: 24px;\n }\n }\n }\n}\n","\n@import '@craftcms/sass/mixins';\n\n/* Category Selector Btn */\n\n.category-selector-btn {\n @apply tw-block tw-relative;\n @apply lg:tw-hidden;\n background: $grey050;\n border: 1px solid $hairlineColor;\n padding: 10px 20px;\n border-radius: 4px;\n color: $secondaryColor;\n\n &:before {\n @include icon;\n @apply tw-absolute tw-right-0;\n top: calc(50% - 10px);\n font-size: 16px;\n width: 43px;\n line-height: 20px;\n content: 'downangle';\n }\n\n &:hover {\n @apply tw-no-underline;\n }\n}\n\n/* Category Selector */\n\n.category-selector {\n @apply lg:tw-flex tw-flex-col tw-fixed tw-top-0 tw-left-0 tw-bg-white tw-z-20;\n @apply tw-hidden;\n width: 100vw;\n height: 100vh;\n box-sizing: border-box;\n\n .category-selector-body {\n @apply tw-overflow-auto tw-h-full tw-p-6;\n box-sizing: border-box;\n\n .nav-items {\n ul {\n li {\n &:first-child a {\n border-top: 0;\n }\n\n &:first-child:before {\n @apply tw-hidden;\n }\n\n &:before,\n &:after {\n left: 1rem;\n right: 1rem;\n }\n\n a {\n padding-left: 55px;\n\n img {\n left: 24px;\n }\n }\n }\n }\n }\n }\n}\n","\n#screenshot-modal {\n @apply tw-fixed tw-inset-0 tw-bg-gray-100 tw-overflow-hidden;\n z-index: 101;\n\n .screenshot-modal-button {\n @apply tw-bg-gray-300/30 hover:tw-bg-gray-300/80;\n @apply tw-text-gray-700 tw-text-3xl;\n @apply tw-rounded tw-px-2 tw-py-2;\n }\n\n .close {\n @apply tw-inline-block tw-text-center tw-z-30;\n @apply tw-absolute tw-top-4 tw-left-4;\n\n &:hover {\n @apply tw-no-underline;\n color: rgba(0, 0, 0, 0.8);\n }\n }\n\n .carousel {\n @apply tw-absolute tw-flex tw-inset-0;\n @apply tw-absolute tw-flex tw-inset-0;\n\n .swiper-container {\n @apply tw-flex;\n\n .swiper-wrapper {\n @apply tw-flex-1 tw-flex tw-w-auto tw-h-auto;\n\n .swiper-slide {\n @apply tw-flex-1 tw-flex tw-text-center tw-justify-center tw-items-center;\n\n .screenshot {\n @apply tw-flex tw-flex-1 tw-justify-center tw-items-center tw-h-full;\n box-sizing: border-box;\n\n .swiper-zoom-container {\n @apply tw-w-full tw-h-full tw-flex tw-text-center tw-justify-center tw-items-center;\n\n img {\n @apply tw-max-w-full tw-max-h-full;\n }\n }\n }\n }\n }\n }\n\n .ps-swiper-button-prev,\n .ps-swiper-button-next {\n @apply tw-absolute tw-flex tw-justify-center tw-items-center tw-w-auto tw--mt-12 tw-z-10 tw-top-1/2;\n background-image: none;\n\n &.swiper-button-disabled {\n @apply tw-hidden;\n }\n\n .c-icon {\n @apply tw-flex-1 tw-top-0;\n }\n }\n\n .ps-swiper-button-prev {\n @apply tw-left-0 tw-ml-4;\n\n .c-icon {\n left: -2px;\n }\n }\n\n .ps-swiper-button-next {\n @apply tw-rounded tw-px-2 tw-py-2 tw-right-0 tw-mr-4 tw-h-auto;\n }\n\n .pagination-wrapper {\n @apply tw-w-full tw-absolute tw-bottom-0 tw-py-0 tw-flex tw-z-10 tw-h-2;\n bottom: 40px;\n\n .pagination-content {\n @apply tw-flex tw-flex-1 tw-px-8 tw-max-w-xs tw-mx-auto;\n\n .swiper-pagination {\n @apply tw-relative tw-flex tw-flex-1 tw-bg-gray-200 tw-p-0 tw-rounded-full;\n\n .swiper-pagination-bullet {\n @apply tw-flex-1 tw-rounded-full tw-bg-gray-200 tw-h-2;\n &.swiper-pagination-bullet-active {\n @apply tw-bg-gray-600;\n }\n }\n }\n }\n }\n }\n}\n\n@media (min-width: 700px) {\n .carousel {\n .swiper-container {\n .swiper-wrapper {\n .swiper-slide {\n .screenshot {\n .swiper-zoom-container {\n img {\n padding-left: 100px;\n padding-right: 100px;\n }\n }\n }\n }\n }\n }\n }\n}\n\n@media (min-height: 700px) {\n .carousel {\n .swiper-container {\n .swiper-wrapper {\n .swiper-slide {\n .screenshot {\n .swiper-zoom-container {\n img {\n padding-top: 100px;\n padding-bottom: 100px;\n }\n }\n }\n }\n }\n }\n }\n}\n","@tailwind base;\n\n@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n@import 'tailwind';\n@import 'layout';\n@import 'general';\n@import 'nav-items';\n@import 'tooltip';\n@import 'readable';\n\n@tailwind components;\n@tailwind utilities;\n","/* Add stuff that’s missing because we’re not using preflight */\n\nhtml {\n @apply tw-box-border;\n}\n\n*,\n:after,\n:before {\n -moz-box-sizing: inherit;\n box-sizing: inherit;\n}\n\nimg {\n @apply tw-max-w-full tw-h-auto;\n}\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n#main-container #main #main-content #content-container #content {\n display: flex;\n padding: 0;\n min-height: 400px;\n}\n\na {\n @apply tw-text-blue-600;\n}\n\n.ps-wrapper {\n @apply tw-flex tw-flex-1 tw-flex-col;\n @apply lg:tw-flex-row;\n padding-bottom: 0 !important;\n\n .ps-sidebar {\n @apply tw-px-6 tw-py-6 tw-w-full;\n background-color: var(--gray-050);\n @include border-radius(\n var(--large-border-radius),\n 0,\n 0,\n var(--large-border-radius)\n );\n @apply lg:tw-border-b-0 lg:tw-border-r lg:tw-overflow-auto lg:tw-w-64;\n\n .categories {\n @apply lg:tw-block;\n }\n }\n\n .ps-main {\n @apply tw-flex-1 tw-overflow-auto;\n\n .ps-container {\n @apply tw-flex-1 tw-max-w-screen-xl tw-mx-auto;\n }\n }\n}\n\n.ps-container {\n @apply tw-px-10 tw-py-6;\n}\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n/* Basics */\n\nhtml,\nbody,\ndiv,\nspan,\nobject,\niframe,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\ndel,\ndfn,\nem,\nfont,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\narticle,\nmain,\nnav,\nins {\n min-width: 0;\n}\n\nhr {\n @apply tw-border-gray-200;\n}\n\nh1 {\n @apply tw-mb-0;\n font-size: 18px;\n}\n\nh2 {\n @apply tw-mt-8 tw-mb-4;\n}\n\np {\n @apply tw-mb-4;\n}\n\npre {\n @apply tw-bg-gray-200 tw-p-4 tw-mb-4 tw-overflow-auto tw-max-w-full tw-min-w-0;\n}\n\ncode {\n @apply tw-bg-gray-200 tw-p-1;\n}\n\n/* Classes */\n\n.no-line-height {\n line-height: 0;\n}\n\n.input.success input {\n border-color: var(--success-color);\n}\n\n.input.errors .select:not(.selectize) select {\n box-shadow: inset 0 0 0 1px transparent, 0 0 0 1px var(--error-color),\n 0 1px 1px rgba(0, 0, 0, 0.1);\n}\n\ninput.error {\n @apply tw-border-red-600;\n}\n\n/* Header */\n\n.ps-header {\n @apply tw-border-b tw-border-solid tw-border-gray-200 tw-py-2 tw-flex tw-justify-between;\n}\n\n/* Swiper */\n\n.swiper-wrapper {\n min-width: auto;\n}\n\n/* Craft tweaks */\n\n#header h1 {\n cursor: pointer;\n}\n\n#main-container {\n @apply tw-relative;\n}\n\n#main-content #content {\n @apply tw-relative;\n}\n\n#container {\n position: static !important; /* #container hack required for modal overlays */\n}\n\n/* Plugin Store actions */\n\n#pluginstore-actions {\n @apply tw-flex tw-justify-between tw-items-center;\n\n & > * {\n @include margin-left(18px);\n }\n\n #cart-button {\n svg {\n @apply tw-inline-block;\n width: 18px;\n height: 18px;\n vertical-align: middle;\n line-height: 0;\n margin-right: 3px;\n }\n\n svg {\n @include svg-mask(var(--secondary-color));\n }\n\n &:hover svg {\n @include svg-mask(darken($secondaryColor, 5%));\n }\n\n .badge {\n @include margin(0, 0, 0, -6px);\n @apply tw-relative tw-inline-block tw-flex-shrink tw-text-white;\n top: -1px;\n padding: 0 6px;\n font-size: 11px;\n line-height: 16px;\n border-radius: 1em;\n background: var(--primary-color);\n }\n }\n\n #craftid-account {\n &:hover {\n @apply tw-no-underline;\n }\n\n .photo {\n svg {\n @apply tw-align-middle;\n @include margin-right(7px);\n width: 22px;\n height: 22px;\n border-radius: 100%;\n }\n }\n\n &:hover .label {\n @apply tw-no-underline;\n }\n }\n\n #craftid-connect-form {\n .ssl-status {\n @apply tw-inline-block;\n }\n }\n}\n",".nav-items {\n ul {\n @apply tw--mx-6;\n\n li {\n position: relative;\n\n &:before,\n &:last-child:after {\n @apply tw-absolute tw-left-0 tw-right-0;\n content: '';\n }\n\n &:before {\n @apply tw-top-0;\n }\n\n &:last-child:after {\n @apply tw-bottom-0;\n }\n\n a {\n @apply tw-relative tw-px-6 tw-py-2 tw-text-gray-900 tw-flex tw-items-center;\n\n svg,\n img {\n @apply tw-align-middle tw-mr-3 tw-text-blue-600 tw-w-6 tw-h-6;\n }\n\n &:hover {\n @apply tw-no-underline tw-z-10;\n background-color: var(--gray-100);\n }\n\n &.router-link-exact-active {\n background-color: var(--gray-200);\n }\n }\n }\n }\n}\n","@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n.tooltip {\n display: block !important;\n z-index: 10000;\n background: var(--white);\n box-shadow: 0 25px 100px rgba(0, 0, 0, 0.5);\n padding: 24px;\n\n .tooltip-arrow {\n width: 0;\n height: 0;\n border-style: solid;\n position: absolute;\n margin: 12px;\n border-color: white;\n }\n\n &[x-placement^='top'] {\n margin-bottom: 12px;\n\n .tooltip-arrow {\n border-width: 12px 12px 0 12px;\n border-left-color: transparent !important;\n border-right-color: transparent !important;\n border-bottom-color: transparent !important;\n bottom: -12px;\n left: calc(50% - 12px);\n margin-top: 0;\n margin-bottom: 0;\n }\n }\n\n &[x-placement^='bottom'] {\n margin-top: 12px;\n\n .tooltip-arrow {\n border-width: 0 12px 12px 12px;\n border-left-color: transparent !important;\n border-right-color: transparent !important;\n border-top-color: transparent !important;\n top: -12px;\n left: calc(50% - 12px);\n margin-top: 0;\n margin-bottom: 0;\n }\n }\n\n &[x-placement^='right'] {\n margin-left: 12px;\n\n .tooltip-arrow {\n border-width: 12px 12px 12px 0;\n border-left-color: transparent !important;\n border-top-color: transparent !important;\n border-bottom-color: transparent !important;\n left: -12px;\n top: calc(50% - 12px);\n margin-left: 0;\n margin-right: 0;\n }\n }\n\n &[x-placement^='left'] {\n margin-right: 12px;\n\n .tooltip-arrow {\n border-width: 12px 0 12px 12px;\n border-top-color: transparent !important;\n border-right-color: transparent !important;\n border-bottom-color: transparent !important;\n right: -12px;\n top: calc(50% - 12px);\n margin-left: 0;\n margin-right: 0;\n }\n }\n\n &[aria-hidden='true'] {\n visibility: hidden;\n opacity: 0;\n transition: opacity 0.15s, visibility 0.15s;\n }\n\n &[aria-hidden='false'] {\n visibility: visible;\n opacity: 1;\n transition: opacity 0.15s;\n }\n}\n","/* Readable overrides */\n\n.readable {\n /* Tables */\n table {\n display: block;\n overflow: auto;\n width: 100%;\n\n th {\n font-weight: 600;\n }\n\n td,\n th {\n border: 1px solid #dfe2e5;\n padding: 6px 13px;\n }\n\n tr {\n background-color: var(--white);\n border-top: 1px solid #c6cbd1;\n }\n\n tr:nth-child(2n) {\n background-color: var(--gray-050);\n }\n\n img {\n background-color: transparent;\n }\n }\n}\n",null,"\n.fade-enter-active,\n.fade-leave-active {\n transition: opacity 0.3s;\n}\n\n.fade-enter,\n.fade-leave-to {\n opacity: 0;\n}\n","/**\n * Swiper 5.4.5\n * Most modern mobile touch slider and framework with hardware accelerated transitions\n * http://swiperjs.com\n *\n * Copyright 2014-2020 Vladimir Kharlampidi\n *\n * Released under the MIT License\n *\n * Released on: June 16, 2020\n */\n\n@font-face {\n font-family: 'swiper-icons';\n src: url(\"data:application/font-woff;charset=utf-8;base64, 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\") format(\"woff\");\n font-weight: 400;\n font-style: normal;\n}\n:root {\n --swiper-theme-color: #007aff;\n}\n.swiper-container {\n margin-left: auto;\n margin-right: auto;\n position: relative;\n overflow: hidden;\n list-style: none;\n padding: 0;\n /* Fix of Webkit flickering */\n z-index: 1;\n}\n.swiper-container-vertical > .swiper-wrapper {\n flex-direction: column;\n}\n.swiper-wrapper {\n position: relative;\n width: 100%;\n height: 100%;\n z-index: 1;\n display: flex;\n transition-property: transform;\n box-sizing: content-box;\n}\n.swiper-container-android .swiper-slide,\n.swiper-wrapper {\n transform: translate3d(0px, 0, 0);\n}\n.swiper-container-multirow > .swiper-wrapper {\n flex-wrap: wrap;\n}\n.swiper-container-multirow-column > .swiper-wrapper {\n flex-wrap: wrap;\n flex-direction: column;\n}\n.swiper-container-free-mode > .swiper-wrapper {\n transition-timing-function: ease-out;\n margin: 0 auto;\n}\n.swiper-slide {\n flex-shrink: 0;\n width: 100%;\n height: 100%;\n position: relative;\n transition-property: transform;\n}\n.swiper-slide-invisible-blank {\n visibility: hidden;\n}\n/* Auto Height */\n.swiper-container-autoheight,\n.swiper-container-autoheight .swiper-slide {\n height: auto;\n}\n.swiper-container-autoheight .swiper-wrapper {\n align-items: flex-start;\n transition-property: transform, height;\n}\n/* 3D Effects */\n.swiper-container-3d {\n perspective: 1200px;\n}\n.swiper-container-3d .swiper-wrapper,\n.swiper-container-3d .swiper-slide,\n.swiper-container-3d .swiper-slide-shadow-left,\n.swiper-container-3d .swiper-slide-shadow-right,\n.swiper-container-3d .swiper-slide-shadow-top,\n.swiper-container-3d .swiper-slide-shadow-bottom,\n.swiper-container-3d .swiper-cube-shadow {\n transform-style: preserve-3d;\n}\n.swiper-container-3d .swiper-slide-shadow-left,\n.swiper-container-3d .swiper-slide-shadow-right,\n.swiper-container-3d .swiper-slide-shadow-top,\n.swiper-container-3d .swiper-slide-shadow-bottom {\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n z-index: 10;\n}\n.swiper-container-3d .swiper-slide-shadow-left {\n background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n.swiper-container-3d .swiper-slide-shadow-right {\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n.swiper-container-3d .swiper-slide-shadow-top {\n background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n.swiper-container-3d .swiper-slide-shadow-bottom {\n background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));\n}\n/* CSS Mode */\n.swiper-container-css-mode > .swiper-wrapper {\n overflow: auto;\n scrollbar-width: none;\n /* For Firefox */\n -ms-overflow-style: none;\n /* For Internet Explorer and Edge */\n}\n.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {\n display: none;\n}\n.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {\n scroll-snap-align: start start;\n}\n.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {\n scroll-snap-type: x mandatory;\n}\n.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {\n scroll-snap-type: y mandatory;\n}\n:root {\n --swiper-navigation-size: 44px;\n /*\n --swiper-navigation-color: var(--swiper-theme-color);\n */\n}\n.swiper-button-prev,\n.swiper-button-next {\n position: absolute;\n top: 50%;\n width: calc(var(--swiper-navigation-size) / 44 * 27);\n height: var(--swiper-navigation-size);\n margin-top: calc(-1 * var(--swiper-navigation-size) / 2);\n z-index: 10;\n cursor: pointer;\n display: flex;\n align-items: center;\n justify-content: center;\n color: var(--swiper-navigation-color, var(--swiper-theme-color));\n}\n.swiper-button-prev.swiper-button-disabled,\n.swiper-button-next.swiper-button-disabled {\n opacity: 0.35;\n cursor: auto;\n pointer-events: none;\n}\n.swiper-button-prev:after,\n.swiper-button-next:after {\n font-family: swiper-icons;\n font-size: var(--swiper-navigation-size);\n text-transform: none !important;\n letter-spacing: 0;\n text-transform: none;\n font-variant: initial;\n line-height: 1;\n}\n.swiper-button-prev,\n.swiper-container-rtl .swiper-button-next {\n left: 10px;\n right: auto;\n}\n.swiper-button-prev:after,\n.swiper-container-rtl .swiper-button-next:after {\n content: 'prev';\n}\n.swiper-button-next,\n.swiper-container-rtl .swiper-button-prev {\n right: 10px;\n left: auto;\n}\n.swiper-button-next:after,\n.swiper-container-rtl .swiper-button-prev:after {\n content: 'next';\n}\n.swiper-button-prev.swiper-button-white,\n.swiper-button-next.swiper-button-white {\n --swiper-navigation-color: #ffffff;\n}\n.swiper-button-prev.swiper-button-black,\n.swiper-button-next.swiper-button-black {\n --swiper-navigation-color: #000000;\n}\n.swiper-button-lock {\n display: none;\n}\n:root {\n /*\n --swiper-pagination-color: var(--swiper-theme-color);\n */\n}\n.swiper-pagination {\n position: absolute;\n text-align: center;\n transition: 300ms opacity;\n transform: translate3d(0, 0, 0);\n z-index: 10;\n}\n.swiper-pagination.swiper-pagination-hidden {\n opacity: 0;\n}\n/* Common Styles */\n.swiper-pagination-fraction,\n.swiper-pagination-custom,\n.swiper-container-horizontal > .swiper-pagination-bullets {\n bottom: 10px;\n left: 0;\n width: 100%;\n}\n/* Bullets */\n.swiper-pagination-bullets-dynamic {\n overflow: hidden;\n font-size: 0;\n}\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n transform: scale(0.33);\n position: relative;\n}\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {\n transform: scale(1);\n}\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {\n transform: scale(1);\n}\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {\n transform: scale(0.66);\n}\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {\n transform: scale(0.33);\n}\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {\n transform: scale(0.66);\n}\n.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {\n transform: scale(0.33);\n}\n.swiper-pagination-bullet {\n width: 8px;\n height: 8px;\n display: inline-block;\n border-radius: 100%;\n background: #000;\n opacity: 0.2;\n}\nbutton.swiper-pagination-bullet {\n border: none;\n margin: 0;\n padding: 0;\n box-shadow: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n.swiper-pagination-clickable .swiper-pagination-bullet {\n cursor: pointer;\n}\n.swiper-pagination-bullet-active {\n opacity: 1;\n background: var(--swiper-pagination-color, var(--swiper-theme-color));\n}\n.swiper-container-vertical > .swiper-pagination-bullets {\n right: 10px;\n top: 50%;\n transform: translate3d(0px, -50%, 0);\n}\n.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {\n margin: 6px 0;\n display: block;\n}\n.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {\n top: 50%;\n transform: translateY(-50%);\n width: 8px;\n}\n.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n display: inline-block;\n transition: 200ms transform, 200ms top;\n}\n.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {\n margin: 0 4px;\n}\n.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {\n left: 50%;\n transform: translateX(-50%);\n white-space: nowrap;\n}\n.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n transition: 200ms transform, 200ms left;\n}\n.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {\n transition: 200ms transform, 200ms right;\n}\n/* Progress */\n.swiper-pagination-progressbar {\n background: rgba(0, 0, 0, 0.25);\n position: absolute;\n}\n.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {\n background: var(--swiper-pagination-color, var(--swiper-theme-color));\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n transform: scale(0);\n transform-origin: left top;\n}\n.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {\n transform-origin: right top;\n}\n.swiper-container-horizontal > .swiper-pagination-progressbar,\n.swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {\n width: 100%;\n height: 4px;\n left: 0;\n top: 0;\n}\n.swiper-container-vertical > .swiper-pagination-progressbar,\n.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {\n width: 4px;\n height: 100%;\n left: 0;\n top: 0;\n}\n.swiper-pagination-white {\n --swiper-pagination-color: #ffffff;\n}\n.swiper-pagination-black {\n --swiper-pagination-color: #000000;\n}\n.swiper-pagination-lock {\n display: none;\n}\n/* Scrollbar */\n.swiper-scrollbar {\n border-radius: 10px;\n position: relative;\n -ms-touch-action: none;\n background: rgba(0, 0, 0, 0.1);\n}\n.swiper-container-horizontal > .swiper-scrollbar {\n position: absolute;\n left: 1%;\n bottom: 3px;\n z-index: 50;\n height: 5px;\n width: 98%;\n}\n.swiper-container-vertical > .swiper-scrollbar {\n position: absolute;\n right: 3px;\n top: 1%;\n z-index: 50;\n width: 5px;\n height: 98%;\n}\n.swiper-scrollbar-drag {\n height: 100%;\n width: 100%;\n position: relative;\n background: rgba(0, 0, 0, 0.5);\n border-radius: 10px;\n left: 0;\n top: 0;\n}\n.swiper-scrollbar-cursor-drag {\n cursor: move;\n}\n.swiper-scrollbar-lock {\n display: none;\n}\n.swiper-zoom-container {\n width: 100%;\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n text-align: center;\n}\n.swiper-zoom-container > img,\n.swiper-zoom-container > svg,\n.swiper-zoom-container > canvas {\n max-width: 100%;\n max-height: 100%;\n object-fit: contain;\n}\n.swiper-slide-zoomed {\n cursor: move;\n}\n/* Preloader */\n:root {\n /*\n --swiper-preloader-color: var(--swiper-theme-color);\n */\n}\n.swiper-lazy-preloader {\n width: 42px;\n height: 42px;\n position: absolute;\n left: 50%;\n top: 50%;\n margin-left: -21px;\n margin-top: -21px;\n z-index: 10;\n transform-origin: 50%;\n animation: swiper-preloader-spin 1s infinite linear;\n box-sizing: border-box;\n border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));\n border-radius: 50%;\n border-top-color: transparent;\n}\n.swiper-lazy-preloader-white {\n --swiper-preloader-color: #fff;\n}\n.swiper-lazy-preloader-black {\n --swiper-preloader-color: #000;\n}\n@keyframes swiper-preloader-spin {\n 100% {\n transform: rotate(360deg);\n }\n}\n/* a11y */\n.swiper-container .swiper-notification {\n position: absolute;\n left: 0;\n top: 0;\n pointer-events: none;\n opacity: 0;\n z-index: -1000;\n}\n.swiper-container-fade.swiper-container-free-mode .swiper-slide {\n transition-timing-function: ease-out;\n}\n.swiper-container-fade .swiper-slide {\n pointer-events: none;\n transition-property: opacity;\n}\n.swiper-container-fade .swiper-slide .swiper-slide {\n pointer-events: none;\n}\n.swiper-container-fade .swiper-slide-active,\n.swiper-container-fade .swiper-slide-active .swiper-slide-active {\n pointer-events: auto;\n}\n.swiper-container-cube {\n overflow: visible;\n}\n.swiper-container-cube .swiper-slide {\n pointer-events: none;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n z-index: 1;\n visibility: hidden;\n transform-origin: 0 0;\n width: 100%;\n height: 100%;\n}\n.swiper-container-cube .swiper-slide .swiper-slide {\n pointer-events: none;\n}\n.swiper-container-cube.swiper-container-rtl .swiper-slide {\n transform-origin: 100% 0;\n}\n.swiper-container-cube .swiper-slide-active,\n.swiper-container-cube .swiper-slide-active .swiper-slide-active {\n pointer-events: auto;\n}\n.swiper-container-cube .swiper-slide-active,\n.swiper-container-cube .swiper-slide-next,\n.swiper-container-cube .swiper-slide-prev,\n.swiper-container-cube .swiper-slide-next + .swiper-slide {\n pointer-events: auto;\n visibility: visible;\n}\n.swiper-container-cube .swiper-slide-shadow-top,\n.swiper-container-cube .swiper-slide-shadow-bottom,\n.swiper-container-cube .swiper-slide-shadow-left,\n.swiper-container-cube .swiper-slide-shadow-right {\n z-index: 0;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n}\n.swiper-container-cube .swiper-cube-shadow {\n position: absolute;\n left: 0;\n bottom: 0px;\n width: 100%;\n height: 100%;\n background: #000;\n opacity: 0.6;\n -webkit-filter: blur(50px);\n filter: blur(50px);\n z-index: 0;\n}\n.swiper-container-flip {\n overflow: visible;\n}\n.swiper-container-flip .swiper-slide {\n pointer-events: none;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n z-index: 1;\n}\n.swiper-container-flip .swiper-slide .swiper-slide {\n pointer-events: none;\n}\n.swiper-container-flip .swiper-slide-active,\n.swiper-container-flip .swiper-slide-active .swiper-slide-active {\n pointer-events: auto;\n}\n.swiper-container-flip .swiper-slide-shadow-top,\n.swiper-container-flip .swiper-slide-shadow-bottom,\n.swiper-container-flip .swiper-slide-shadow-left,\n.swiper-container-flip .swiper-slide-shadow-right {\n z-index: 0;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n}\n","\n@import '@craftcms/sass/mixins';\n\n.c-btn,\na.c-btn,\nbutton.c-btn {\n &:focus {\n @apply tw-outline-none tw-ring;\n }\n\n &.block {\n @apply tw-w-full;\n }\n\n &.small {\n @apply tw-px-3 tw-leading-4;\n\n .c-icon {\n width: 12px;\n height: 12px;\n }\n }\n\n &.large {\n @apply tw-text-base tw-leading-6;\n }\n\n &.outline {\n .c-icon {\n @apply tw-fill-current;\n }\n }\n\n &.loading {\n @apply tw-relative;\n\n .c-spinner {\n @apply tw-absolute tw-inset-0 tw-flex tw-justify-center tw-items-center;\n }\n\n .c-btn-content {\n @apply tw-invisible;\n }\n }\n\n .c-icon {\n @apply tw-align-middle;\n }\n\n &:not(.c-btn-icon) {\n .c-icon {\n @include margin-right(1rem);\n }\n }\n\n .c-btn-content {\n @apply tw-flex tw-items-center tw-justify-center;\n }\n}\n","\n@import '@craftcms/sass/mixins';\n\n.c-dropdown {\n display: inline-block;\n position: relative;\n\n &.disabled {\n @apply tw-opacity-50;\n }\n\n select {\n @apply tw-border-gray-200;\n\n /*\n TODO\n\n @include ltr() {\n background-position: right 0.5rem center;\n }\n\n @include rtl() {\n background-position: left 0.5rem center;\n }\n */\n }\n}\n","\n.c-spinner {\n & > .animation {\n animation: rotator 0.7s linear infinite;\n width: 20px;\n height: 20px;\n border-radius: 50%;\n border-width: 2px;\n border-style: solid;\n border-top-color: transparent !important;\n border-left-color: transparent !important;\n }\n\n &.sm {\n & > .animation {\n width: 16px;\n height: 16px;\n }\n }\n\n &.lg {\n & > .animation {\n width: 32px;\n height: 32px;\n border-width: 3px;\n }\n }\n}\n\n@keyframes rotator {\n 0% {\n transform: rotate(0);\n }\n\n to {\n transform: rotate(1turn);\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/pluginstore/dist/js/app.js b/src/web/assets/pluginstore/dist/js/app.js index 19e8ca6db4e..f347acc4606 100644 --- a/src/web/assets/pluginstore/dist/js/app.js +++ b/src/web/assets/pluginstore/dist/js/app.js @@ -1,3 +1,3 @@ /*! For license information please see app.js.LICENSE.txt */ -!function(){var t={1394:function(t,e){!function(i,a){var n={version:"0.4.1",settings:{currency:{symbol:"$",format:"%s%v",decimal:".",thousand:",",precision:2,grouping:3},number:{precision:0,grouping:3,thousand:",",decimal:"."}}},s=Array.prototype.map,r=Array.isArray,o=Object.prototype.toString;function l(t){return!!(""===t||t&&t.charCodeAt&&t.substr)}function c(t){return r?r(t):"[object Array]"===o.call(t)}function d(t){return t&&"[object Object]"===o.call(t)}function h(t,e){var i;for(i in t=t||{},e=e||{})e.hasOwnProperty(i)&&null==t[i]&&(t[i]=e[i]);return t}function u(t,e,i){var a,n,r=[];if(!t)return r;if(s&&t.map===s)return t.map(e,i);for(a=0,n=t.length;a3?l.length%3:0;return o+(f?l.substr(0,f)+s.thousand:"")+l.substr(f).replace(/(\d{3})(?=\d)/g,"$1"+s.thousand)+(r?s.decimal+v(Math.abs(t),r).split(".")[1]:"")},x=n.formatMoney=function(t,e,i,a,s,r){if(c(t))return u(t,(function(t){return x(t,e,i,a,s,r)}));t=g(t);var o=h(d(e)?e:{symbol:e,precision:i,thousand:a,decimal:s,format:r},n.settings.currency),l=f(o.format);return(t>0?l.pos:t<0?l.neg:l.zero).replace("%s",o.symbol).replace("%v",m(Math.abs(t),p(o.precision),o.thousand,o.decimal))};n.formatColumn=function(t,e,i,a,s,r){if(!t)return[];var o=h(d(e)?e:{symbol:e,precision:i,thousand:a,decimal:s,format:r},n.settings.currency),v=f(o.format),x=v.pos.indexOf("%s")0?v.pos:t<0?v.neg:v.zero).replace("%s",o.symbol).replace("%v",m(Math.abs(t),p(o.precision),o.thousand,o.decimal));return i.length>b&&(b=i.length),i}));return u(y,(function(t,e){return l(t)&&t.lengtht.length)&&(e=t.length);for(var i=0,a=new Array(e);i>16,r=i>>8&255,o=255&i;return"#"+(16777216+65536*(Math.round((a-s)*n)+s)+256*(Math.round((a-r)*n)+r)+(Math.round((a-o)*n)+o)).toString(16).slice(1)}},{key:"shadeColor",value:function(e,i){return t.isColorHex(i)?this.shadeHexColor(e,i):this.shadeRGBColor(e,i)}}],[{key:"bind",value:function(t,e){return function(){return t.apply(e,arguments)}}},{key:"isObject",value:function(t){return t&&"object"===r(t)&&!Array.isArray(t)&&null!=t}},{key:"is",value:function(t,e){return Object.prototype.toString.call(e)==="[object "+t+"]"}},{key:"listToArray",value:function(t){var e,i=[];for(e=0;ee.length?t:e}))),t.length>e.length?t:e}),0)}},{key:"hexToRgba",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"#999999",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:.6;"#"!==t.substring(0,1)&&(t="#999999");var i=t.replace("#","");i=i.match(new RegExp("(.{"+i.length/3+"})","g"));for(var a=0;a1&&void 0!==arguments[1]?arguments[1]:"x",i=t.toString().slice();return i.replace(/[` ~!@#$%^&*()|+\=?;:'",.<>{}[\]\\/]/gi,e)}},{key:"negToZero",value:function(t){return t<0?0:t}},{key:"moveIndexInArray",value:function(t,e,i){if(i>=t.length)for(var a=i-t.length+1;a--;)t.push(void 0);return t.splice(i,0,t.splice(e,1)[0]),t}},{key:"extractNumber",value:function(t){return parseFloat(t.replace(/[^\d.]*/g,""))}},{key:"findAncestor",value:function(t,e){for(;(t=t.parentElement)&&!t.classList.contains(e););return t}},{key:"setELstyles",value:function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t.style.key=e[i])}},{key:"isNumber",value:function(t){return!isNaN(t)&&parseFloat(Number(t))===t&&!isNaN(parseInt(t,10))}},{key:"isFloat",value:function(t){return Number(t)===t&&t%1!=0}},{key:"isSafari",value:function(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}},{key:"isFirefox",value:function(){return navigator.userAgent.toLowerCase().indexOf("firefox")>-1}},{key:"isIE11",value:function(){if(-1!==window.navigator.userAgent.indexOf("MSIE")||window.navigator.appVersion.indexOf("Trident/")>-1)return!0}},{key:"isIE",value:function(){var t=window.navigator.userAgent,e=t.indexOf("MSIE ");if(e>0)return parseInt(t.substring(e+5,t.indexOf(".",e)),10);if(t.indexOf("Trident/")>0){var i=t.indexOf("rv:");return parseInt(t.substring(i+3,t.indexOf(".",i)),10)}var a=t.indexOf("Edge/");return a>0&&parseInt(t.substring(a+5,t.indexOf(".",a)),10)}}]),t}(),y=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.setEasingFunctions()}return c(t,[{key:"setEasingFunctions",value:function(){var t;if(!this.w.globals.easing){switch(this.w.config.chart.animations.easing){case"linear":t="-";break;case"easein":t="<";break;case"easeout":t=">";break;case"easeinout":default:t="<>";break;case"swing":t=function(t){var e=1.70158;return(t-=1)*t*((e+1)*t+e)+1};break;case"bounce":t=function(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375};break;case"elastic":t=function(t){return t===!!t?t:Math.pow(2,-10*t)*Math.sin((t-.075)*(2*Math.PI)/.3)+1}}this.w.globals.easing=t}}},{key:"animateLine",value:function(t,e,i,a){t.attr(e).animate(a).attr(i)}},{key:"animateMarker",value:function(t,e,i,a,n,s){e||(e=0),t.attr({r:e,width:e,height:e}).animate(a,n).attr({r:i,width:i.width,height:i.height}).afterAll((function(){s()}))}},{key:"animateCircle",value:function(t,e,i,a,n){t.attr({r:e.r,cx:e.cx,cy:e.cy}).animate(a,n).attr({r:i.r,cx:i.cx,cy:i.cy})}},{key:"animateRect",value:function(t,e,i,a,n){t.attr(e).animate(a).attr(i).afterAll((function(){return n()}))}},{key:"animatePathsGradually",value:function(t){var e=t.el,i=t.realIndex,a=t.j,n=t.fill,s=t.pathFrom,r=t.pathTo,o=t.speed,l=t.delay,c=this.w,d=0;c.config.chart.animations.animateGradually.enabled&&(d=c.config.chart.animations.animateGradually.delay),c.config.chart.animations.dynamicAnimation.enabled&&c.globals.dataChanged&&"bar"!==c.config.chart.type&&(d=0),this.morphSVG(e,i,a,"line"!==c.config.chart.type||c.globals.comboCharts?n:"stroke",s,r,o,l*d)}},{key:"showDelayedElements",value:function(){this.w.globals.delayedElements.forEach((function(t){t.el.classList.remove("apexcharts-element-hidden")}))}},{key:"animationCompleted",value:function(t){var e=this.w;e.globals.animationEnded||(e.globals.animationEnded=!0,this.showDelayedElements(),"function"==typeof e.config.chart.events.animationEnd&&e.config.chart.events.animationEnd(this.ctx,{el:t,w:e}))}},{key:"morphSVG",value:function(t,e,i,a,n,s,r,o){var l=this,c=this.w;n||(n=t.attr("pathFrom")),s||(s=t.attr("pathTo"));var d=function(t){return"radar"===c.config.chart.type&&(r=1),"M 0 ".concat(c.globals.gridHeight)};(!n||n.indexOf("undefined")>-1||n.indexOf("NaN")>-1)&&(n=d()),(!s||s.indexOf("undefined")>-1||s.indexOf("NaN")>-1)&&(s=d()),c.globals.shouldAnimate||(r=1),t.plot(n).animate(1,c.globals.easing,o).plot(n).animate(r,c.globals.easing,o).plot(s).afterAll((function(){b.isNumber(i)?i===c.globals.series[c.globals.maxValsInArrayIndex].length-2&&c.globals.shouldAnimate&&l.animationCompleted(t):"none"!==a&&c.globals.shouldAnimate&&(!c.globals.comboCharts&&e===c.globals.series.length-1||c.globals.comboCharts)&&l.animationCompleted(t),l.showDelayedElements()}))}}]),t}(),w=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"getDefaultFilter",value:function(t,e){var i=this.w;t.unfilter(!0),(new window.SVG.Filter).size("120%","180%","-5%","-40%"),"none"!==i.config.states.normal.filter?this.applyFilter(t,e,i.config.states.normal.filter.type,i.config.states.normal.filter.value):i.config.chart.dropShadow.enabled&&this.dropShadow(t,i.config.chart.dropShadow,e)}},{key:"addNormalFilter",value:function(t,e){var i=this.w;i.config.chart.dropShadow.enabled&&!t.node.classList.contains("apexcharts-marker")&&this.dropShadow(t,i.config.chart.dropShadow,e)}},{key:"addLightenFilter",value:function(t,e,i){var a=this,n=this.w,s=i.intensity;t.unfilter(!0),new window.SVG.Filter,t.filter((function(t){var i=n.config.chart.dropShadow;(i.enabled?a.addShadow(t,e,i):t).componentTransfer({rgb:{type:"linear",slope:1.5,intercept:s}})})),t.filterer.node.setAttribute("filterUnits","userSpaceOnUse"),this._scaleFilterSize(t.filterer.node)}},{key:"addDarkenFilter",value:function(t,e,i){var a=this,n=this.w,s=i.intensity;t.unfilter(!0),new window.SVG.Filter,t.filter((function(t){var i=n.config.chart.dropShadow;(i.enabled?a.addShadow(t,e,i):t).componentTransfer({rgb:{type:"linear",slope:s}})})),t.filterer.node.setAttribute("filterUnits","userSpaceOnUse"),this._scaleFilterSize(t.filterer.node)}},{key:"applyFilter",value:function(t,e,i){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:.5;switch(i){case"none":this.addNormalFilter(t,e);break;case"lighten":this.addLightenFilter(t,e,{intensity:a});break;case"darken":this.addDarkenFilter(t,e,{intensity:a})}}},{key:"addShadow",value:function(t,e,i){var a=i.blur,n=i.top,s=i.left,r=i.color,o=i.opacity,l=t.flood(Array.isArray(r)?r[e]:r,o).composite(t.sourceAlpha,"in").offset(s,n).gaussianBlur(a).merge(t.source);return t.blend(t.source,l)}},{key:"dropShadow",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,a=e.top,n=e.left,s=e.blur,r=e.color,o=e.opacity,l=e.noUserSpaceOnUse,c=this.w;return t.unfilter(!0),b.isIE()&&"radialBar"===c.config.chart.type||(r=Array.isArray(r)?r[i]:r,t.filter((function(t){var e;e=b.isSafari()||b.isFirefox()||b.isIE()?t.flood(r,o).composite(t.sourceAlpha,"in").offset(n,a).gaussianBlur(s):t.flood(r,o).composite(t.sourceAlpha,"in").offset(n,a).gaussianBlur(s).merge(t.source),t.blend(t.source,e)})),l||t.filterer.node.setAttribute("filterUnits","userSpaceOnUse"),this._scaleFilterSize(t.filterer.node)),t}},{key:"setSelectionFilter",value:function(t,e,i){var a=this.w;if(void 0!==a.globals.selectedDataPoints[e]&&a.globals.selectedDataPoints[e].indexOf(i)>-1){t.node.setAttribute("selected",!0);var n=a.config.states.active.filter;"none"!==n&&this.applyFilter(t,e,n.type,n.value)}}},{key:"_scaleFilterSize",value:function(t){!function(e){for(var i in e)e.hasOwnProperty(i)&&t.setAttribute(i,e[i])}({width:"200%",height:"200%",x:"-50%",y:"-50%"})}}]),t}(),C=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"roundPathCorners",value:function(t,e){function i(t,e,i){var n=e.x-t.x,s=e.y-t.y,r=Math.sqrt(n*n+s*s);return a(t,e,Math.min(1,i/r))}function a(t,e,i){return{x:t.x+(e.x-t.x)*i,y:t.y+(e.y-t.y)*i}}function n(t,e){t.length>2&&(t[t.length-2]=e.x,t[t.length-1]=e.y)}function s(t){return{x:parseFloat(t[t.length-2]),y:parseFloat(t[t.length-1])}}var r=t.split(/[,\s]/).reduce((function(t,e){var i=e.match("([a-zA-Z])(.+)");return i?(t.push(i[1]),t.push(i[2])):t.push(e),t}),[]).reduce((function(t,e){return parseFloat(e)==e&&t.length?t[t.length-1].push(e):t.push([e]),t}),[]),o=[];if(r.length>1){var l=s(r[0]),c=null;"Z"==r[r.length-1][0]&&r[0].length>2&&(c=["L",l.x,l.y],r[r.length-1]=c),o.push(r[0]);for(var d=1;d2&&"L"==u[0]&&p.length>2&&"L"==p[0]){var f,g,v=s(h),m=s(u),x=s(p);f=i(m,v,e),g=i(m,x,e),n(u,f),u.origPoint=m,o.push(u);var b=a(f,m,.5),y=a(m,g,.5),w=["C",b.x,b.y,y.x,y.y,g.x,g.y];w.origPoint=m,o.push(w)}else o.push(u)}if(c){var C=s(o[o.length-1]);o.push(["Z"]),n(o[0],C)}}else o=r;return o.reduce((function(t,e){return t+e.join(" ")+" "}),"")}},{key:"drawLine",value:function(t,e,i,a){var n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"#a8a8a8",s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0,r=arguments.length>6&&void 0!==arguments[6]?arguments[6]:null,o=arguments.length>7&&void 0!==arguments[7]?arguments[7]:"butt";return this.w.globals.dom.Paper.line().attr({x1:t,y1:e,x2:i,y2:a,stroke:n,"stroke-dasharray":s,"stroke-width":r,"stroke-linecap":o})}},{key:"drawRect",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"#fefefe",r=arguments.length>6&&void 0!==arguments[6]?arguments[6]:1,o=arguments.length>7&&void 0!==arguments[7]?arguments[7]:null,l=arguments.length>8&&void 0!==arguments[8]?arguments[8]:null,c=arguments.length>9&&void 0!==arguments[9]?arguments[9]:0,d=this.w.globals.dom.Paper.rect();return d.attr({x:t,y:e,width:i>0?i:0,height:a>0?a:0,rx:n,ry:n,opacity:r,"stroke-width":null!==o?o:0,stroke:null!==l?l:"none","stroke-dasharray":c}),d.node.setAttribute("fill",s),d}},{key:"drawPolygon",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"#e1e1e1",i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"none";return this.w.globals.dom.Paper.polygon(t).attr({fill:a,stroke:e,"stroke-width":i})}},{key:"drawCircle",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;t<0&&(t=0);var i=this.w.globals.dom.Paper.circle(2*t);return null!==e&&i.attr(e),i}},{key:"drawPath",value:function(t){var e=t.d,i=void 0===e?"":e,a=t.stroke,n=void 0===a?"#a8a8a8":a,s=t.strokeWidth,r=void 0===s?1:s,o=t.fill,l=t.fillOpacity,c=void 0===l?1:l,d=t.strokeOpacity,h=void 0===d?1:d,u=t.classes,p=t.strokeLinecap,f=void 0===p?null:p,g=t.strokeDashArray,v=void 0===g?0:g,m=this.w;return null===f&&(f=m.config.stroke.lineCap),(i.indexOf("undefined")>-1||i.indexOf("NaN")>-1)&&(i="M 0 ".concat(m.globals.gridHeight)),m.globals.dom.Paper.path(i).attr({fill:o,"fill-opacity":c,stroke:n,"stroke-opacity":h,"stroke-linecap":f,"stroke-width":r,"stroke-dasharray":v,class:u})}},{key:"group",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,e=this.w.globals.dom.Paper.group();return null!==t&&e.attr(t),e}},{key:"move",value:function(t,e){return["M",t,e].join(" ")}},{key:"line",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=null;return null===i?a=[" L",t,e].join(" "):"H"===i?a=[" H",t].join(" "):"V"===i&&(a=[" V",e].join(" ")),a}},{key:"curve",value:function(t,e,i,a,n,s){return["C",t,e,i,a,n,s].join(" ")}},{key:"quadraticCurve",value:function(t,e,i,a){return["Q",t,e,i,a].join(" ")}},{key:"arc",value:function(t,e,i,a,n,s,r){var o="A";return arguments.length>7&&void 0!==arguments[7]&&arguments[7]&&(o="a"),[o,t,e,i,a,n,s,r].join(" ")}},{key:"renderPaths",value:function(t){var e,i=t.j,a=t.realIndex,n=t.pathFrom,r=t.pathTo,o=t.stroke,l=t.strokeWidth,c=t.strokeLinecap,d=t.fill,h=t.animationDelay,u=t.initialSpeed,p=t.dataChangeSpeed,f=t.className,g=t.shouldClipToGrid,v=void 0===g||g,m=t.bindEventsOnPaths,x=void 0===m||m,b=t.drawShadow,C=void 0===b||b,S=this.w,k=new w(this.ctx),A=new y(this.ctx),P=this.w.config.chart.animations.enabled,E=P&&this.w.config.chart.animations.dynamicAnimation.enabled,T=!!(P&&!S.globals.resized||E&&S.globals.dataChanged&&S.globals.shouldAnimate);T?e=n:(e=r,S.globals.animationEnded=!0);var O,M=S.config.stroke.dashArray;O=Array.isArray(M)?M[a]:S.config.stroke.dashArray;var L=this.drawPath({d:e,stroke:o,strokeWidth:l,fill:d,fillOpacity:1,classes:f,strokeLinecap:c,strokeDashArray:O});if(L.attr("index",a),v&&L.attr({"clip-path":"url(#gridRectMask".concat(S.globals.cuid,")")}),"none"!==S.config.states.normal.filter.type)k.getDefaultFilter(L,a);else if(S.config.chart.dropShadow.enabled&&C&&(!S.config.chart.dropShadow.enabledOnSeries||S.config.chart.dropShadow.enabledOnSeries&&-1!==S.config.chart.dropShadow.enabledOnSeries.indexOf(a))){var I=S.config.chart.dropShadow;k.dropShadow(L,I,a)}x&&(L.node.addEventListener("mouseenter",this.pathMouseEnter.bind(this,L)),L.node.addEventListener("mouseleave",this.pathMouseLeave.bind(this,L)),L.node.addEventListener("mousedown",this.pathMouseDown.bind(this,L))),L.attr({pathTo:r,pathFrom:n});var _={el:L,j:i,realIndex:a,pathFrom:n,pathTo:r,fill:d,strokeWidth:l,delay:h};return!P||S.globals.resized||S.globals.dataChanged?!S.globals.resized&&S.globals.dataChanged||A.showDelayedElements():A.animatePathsGradually(s(s({},_),{},{speed:u})),S.globals.dataChanged&&E&&T&&A.animatePathsGradually(s(s({},_),{},{speed:p})),L}},{key:"drawPattern",value:function(t,e,i){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"#a8a8a8",n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,s=this.w.globals.dom.Paper.pattern(e,i,(function(s){"horizontalLines"===t?s.line(0,0,i,0).stroke({color:a,width:n+1}):"verticalLines"===t?s.line(0,0,0,e).stroke({color:a,width:n+1}):"slantedLines"===t?s.line(0,0,e,i).stroke({color:a,width:n}):"squares"===t?s.rect(e,i).fill("none").stroke({color:a,width:n}):"circles"===t&&s.circle(e).fill("none").stroke({color:a,width:n})}));return s}},{key:"drawGradient",value:function(t,e,i,a,n){var s,r=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null,o=arguments.length>6&&void 0!==arguments[6]?arguments[6]:null,l=arguments.length>7&&void 0!==arguments[7]?arguments[7]:null,c=arguments.length>8&&void 0!==arguments[8]?arguments[8]:0,d=this.w;e.length<9&&0===e.indexOf("#")&&(e=b.hexToRgba(e,a)),i.length<9&&0===i.indexOf("#")&&(i=b.hexToRgba(i,n));var h=0,u=1,p=1,f=null;null!==o&&(h=void 0!==o[0]?o[0]/100:0,u=void 0!==o[1]?o[1]/100:1,p=void 0!==o[2]?o[2]/100:1,f=void 0!==o[3]?o[3]/100:null);var g=!("donut"!==d.config.chart.type&&"pie"!==d.config.chart.type&&"polarArea"!==d.config.chart.type&&"bubble"!==d.config.chart.type);if(s=null===l||0===l.length?d.globals.dom.Paper.gradient(g?"radial":"linear",(function(t){t.at(h,e,a),t.at(u,i,n),t.at(p,i,n),null!==f&&t.at(f,e,a)})):d.globals.dom.Paper.gradient(g?"radial":"linear",(function(t){(Array.isArray(l[c])?l[c]:l).forEach((function(e){t.at(e.offset/100,e.color,e.opacity)}))})),g){var v=d.globals.gridWidth/2,m=d.globals.gridHeight/2;"bubble"!==d.config.chart.type?s.attr({gradientUnits:"userSpaceOnUse",cx:v,cy:m,r:r}):s.attr({cx:.5,cy:.5,r:.8,fx:.2,fy:.2})}else"vertical"===t?s.from(0,0).to(0,1):"diagonal"===t?s.from(0,0).to(1,1):"horizontal"===t?s.from(0,1).to(1,1):"diagonal2"===t&&s.from(1,0).to(0,1);return s}},{key:"getTextBasedOnMaxWidth",value:function(t){var e=t.text,i=t.maxWidth,a=t.fontSize,n=t.fontFamily,s=this.getTextRects(e,a,n),r=s.width/e.length,o=Math.floor(i/r);return i-1){var o=i.globals.selectedDataPoints[n].indexOf(s);i.globals.selectedDataPoints[n].splice(o,1)}}else{if(!i.config.states.active.allowMultipleDataPointsSelection&&i.globals.selectedDataPoints.length>0){i.globals.selectedDataPoints=[];var l=i.globals.dom.Paper.select(".apexcharts-series path").members,c=i.globals.dom.Paper.select(".apexcharts-series circle, .apexcharts-series rect").members,d=function(t){Array.prototype.forEach.call(t,(function(t){t.node.setAttribute("selected","false"),a.getDefaultFilter(t,n)}))};d(l),d(c)}t.node.setAttribute("selected","true"),r="true",void 0===i.globals.selectedDataPoints[n]&&(i.globals.selectedDataPoints[n]=[]),i.globals.selectedDataPoints[n].push(s)}if("true"===r){var h=i.config.states.active.filter;if("none"!==h)a.applyFilter(t,n,h.type,h.value);else if("none"!==i.config.states.hover.filter&&!i.globals.isTouchDevice){var u=i.config.states.hover.filter;a.applyFilter(t,n,u.type,u.value)}}else"none"!==i.config.states.active.filter.type&&("none"===i.config.states.hover.filter.type||i.globals.isTouchDevice?a.getDefaultFilter(t,n):(u=i.config.states.hover.filter,a.applyFilter(t,n,u.type,u.value)));"function"==typeof i.config.chart.events.dataPointSelection&&i.config.chart.events.dataPointSelection(e,this.ctx,{selectedDataPoints:i.globals.selectedDataPoints,seriesIndex:n,dataPointIndex:s,w:i}),e&&this.ctx.events.fireEvent("dataPointSelection",[e,this.ctx,{selectedDataPoints:i.globals.selectedDataPoints,seriesIndex:n,dataPointIndex:s,w:i}])}},{key:"rotateAroundCenter",value:function(t){var e={};return t&&"function"==typeof t.getBBox&&(e=t.getBBox()),{x:e.x+e.width/2,y:e.y+e.height/2}}},{key:"getTextRects",value:function(t,e,i,a){var n=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],s=this.w,r=this.drawText({x:-200,y:-200,text:t,textAnchor:"start",fontSize:e,fontFamily:i,foreColor:"#fff",opacity:0});a&&r.attr("transform",a),s.globals.dom.Paper.add(r);var o=r.bbox();return n||(o=r.node.getBoundingClientRect()),r.remove(),{width:o.width,height:o.height}}},{key:"placeTextWithEllipsis",value:function(t,e,i){if("function"==typeof t.getComputedTextLength&&(t.textContent=e,e.length>0&&t.getComputedTextLength()>=i/1.1)){for(var a=e.length-3;a>0;a-=3)if(t.getSubStringLength(0,a)<=i/1.1)return void(t.textContent=e.substring(0,a)+"...");t.textContent="."}}}],[{key:"setAttrs",value:function(t,e){for(var i in e)e.hasOwnProperty(i)&&t.setAttribute(i,e[i])}}]),t}(),S=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"getStackedSeriesTotals",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=this.w,i=[];if(0===e.globals.series.length)return i;for(var a=0;a0&&void 0!==arguments[0]?arguments[0]:null;return null===t?this.w.config.series.reduce((function(t,e){return t+e}),0):this.w.globals.series[t].reduce((function(t,e){return t+e}),0)}},{key:"isSeriesNull",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return 0===(null===t?this.w.config.series.filter((function(t){return null!==t})):this.w.config.series[t].data.filter((function(t){return null!==t}))).length}},{key:"seriesHaveSameValues",value:function(t){return this.w.globals.series[t].every((function(t,e,i){return t===i[0]}))}},{key:"getCategoryLabels",value:function(t){var e=this.w,i=t.slice();return e.config.xaxis.convertedCatToNumeric&&(i=t.map((function(t,i){return e.config.xaxis.labels.formatter(t-e.globals.minX+1)}))),i}},{key:"getLargestSeries",value:function(){var t=this.w;t.globals.maxValsInArrayIndex=t.globals.series.map((function(t){return t.length})).indexOf(Math.max.apply(Math,t.globals.series.map((function(t){return t.length}))))}},{key:"getLargestMarkerSize",value:function(){var t=this.w,e=0;return t.globals.markers.size.forEach((function(t){e=Math.max(e,t)})),t.config.markers.discrete&&t.config.markers.discrete.length&&t.config.markers.discrete.forEach((function(t){e=Math.max(e,t.size)})),e>0&&(e+=t.config.markers.hover.sizeOffset+1),t.globals.markers.largestSize=e,e}},{key:"getSeriesTotals",value:function(){var t=this.w;t.globals.seriesTotals=t.globals.series.map((function(t,e){var i=0;if(Array.isArray(t))for(var a=0;at&&i.globals.seriesX[n][r]0&&(e=!0),{comboBarCount:i,comboCharts:e}}},{key:"extendArrayProps",value:function(t,e,i){return e.yaxis&&(e=t.extendYAxis(e,i)),e.annotations&&(e.annotations.yaxis&&(e=t.extendYAxisAnnotations(e)),e.annotations.xaxis&&(e=t.extendXAxisAnnotations(e)),e.annotations.points&&(e=t.extendPointAnnotations(e))),e}}]),t}(),k=function(){function t(e){o(this,t),this.w=e.w,this.annoCtx=e}return c(t,[{key:"setOrientations",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,i=this.w;if("vertical"===t.label.orientation){var a=null!==e?e:0,n=i.globals.dom.baseEl.querySelector(".apexcharts-xaxis-annotations .apexcharts-xaxis-annotation-label[rel='".concat(a,"']"));if(null!==n){var s=n.getBoundingClientRect();n.setAttribute("x",parseFloat(n.getAttribute("x"))-s.height+4),"top"===t.label.position?n.setAttribute("y",parseFloat(n.getAttribute("y"))+s.width):n.setAttribute("y",parseFloat(n.getAttribute("y"))-s.width);var r=this.annoCtx.graphics.rotateAroundCenter(n),o=r.x,l=r.y;n.setAttribute("transform","rotate(-90 ".concat(o," ").concat(l,")"))}}}},{key:"addBackgroundToAnno",value:function(t,e){var i=this.w;if(!t||void 0===e.label.text||void 0!==e.label.text&&!String(e.label.text).trim())return null;var a=i.globals.dom.baseEl.querySelector(".apexcharts-grid").getBoundingClientRect(),n=t.getBoundingClientRect(),s=e.label.style.padding.left,r=e.label.style.padding.right,o=e.label.style.padding.top,l=e.label.style.padding.bottom;"vertical"===e.label.orientation&&(o=e.label.style.padding.left,l=e.label.style.padding.right,s=e.label.style.padding.top,r=e.label.style.padding.bottom);var c=n.left-a.left-s,d=n.top-a.top-o,h=this.annoCtx.graphics.drawRect(c-i.globals.barPadForNumericAxis,d,n.width+s+r,n.height+o+l,e.label.borderRadius,e.label.style.background,1,e.label.borderWidth,e.label.borderColor,0);return e.id&&h.node.classList.add(e.id),h}},{key:"annotationsBackground",value:function(){var t=this,e=this.w,i=function(i,a,n){var s=e.globals.dom.baseEl.querySelector(".apexcharts-".concat(n,"-annotations .apexcharts-").concat(n,"-annotation-label[rel='").concat(a,"']"));if(s){var r=s.parentNode,o=t.addBackgroundToAnno(s,i);o&&(r.insertBefore(o.node,s),i.label.mouseEnter&&o.node.addEventListener("mouseenter",i.label.mouseEnter.bind(t,i)),i.label.mouseLeave&&o.node.addEventListener("mouseleave",i.label.mouseLeave.bind(t,i)),i.label.click&&o.node.addEventListener("click",i.label.click.bind(t,i)))}};e.config.annotations.xaxis.map((function(t,e){i(t,e,"xaxis")})),e.config.annotations.yaxis.map((function(t,e){i(t,e,"yaxis")})),e.config.annotations.points.map((function(t,e){i(t,e,"point")}))}},{key:"getY1Y2",value:function(t,e){var i,a="y1"===t?e.y:e.y2,n=this.w;if(this.annoCtx.invertAxis){var s=n.globals.labels.indexOf(a);n.config.xaxis.convertedCatToNumeric&&(s=n.globals.categoryLabels.indexOf(a));var r=n.globals.dom.baseEl.querySelector(".apexcharts-yaxis-texts-g text:nth-child("+(s+1)+")");r&&(i=parseFloat(r.getAttribute("y")))}else{var o;o=n.config.yaxis[e.yAxisIndex].logarithmic?(a=new S(this.annoCtx.ctx).getLogVal(a,e.yAxisIndex))/n.globals.yLogRatio[e.yAxisIndex]:(a-n.globals.minYArr[e.yAxisIndex])/(n.globals.yRange[e.yAxisIndex]/n.globals.gridHeight),i=n.globals.gridHeight-o,!e.marker||void 0!==e.y&&null!==e.y||(i=0),n.config.yaxis[e.yAxisIndex]&&n.config.yaxis[e.yAxisIndex].reversed&&(i=o)}return"string"==typeof a&&a.indexOf("px")>-1&&(i=parseFloat(a)),i}},{key:"getX1X2",value:function(t,e){var i=this.w,a=this.annoCtx.invertAxis?i.globals.minY:i.globals.minX,n=this.annoCtx.invertAxis?i.globals.maxY:i.globals.maxX,s=this.annoCtx.invertAxis?i.globals.yRange[0]:i.globals.xRange,r=(e.x-a)/(s/i.globals.gridWidth);this.annoCtx.inversedReversedAxis&&(r=(n-e.x)/(s/i.globals.gridWidth)),"category"!==i.config.xaxis.type&&!i.config.xaxis.convertedCatToNumeric||this.annoCtx.invertAxis||i.globals.dataFormatXNumeric||(r=this.getStringX(e.x));var o=(e.x2-a)/(s/i.globals.gridWidth);return this.annoCtx.inversedReversedAxis&&(o=(n-e.x2)/(s/i.globals.gridWidth)),"category"!==i.config.xaxis.type&&!i.config.xaxis.convertedCatToNumeric||this.annoCtx.invertAxis||i.globals.dataFormatXNumeric||(o=this.getStringX(e.x2)),void 0!==e.x&&null!==e.x||!e.marker||(r=i.globals.gridWidth),"x1"===t&&"string"==typeof e.x&&e.x.indexOf("px")>-1&&(r=parseFloat(e.x)),"x2"===t&&"string"==typeof e.x2&&e.x2.indexOf("px")>-1&&(o=parseFloat(e.x2)),"x1"===t?r:o}},{key:"getStringX",value:function(t){var e=this.w,i=t;e.config.xaxis.convertedCatToNumeric&&e.globals.categoryLabels.length&&(t=e.globals.categoryLabels.indexOf(t)+1);var a=e.globals.labels.indexOf(t),n=e.globals.dom.baseEl.querySelector(".apexcharts-xaxis-texts-g text:nth-child("+(a+1)+")");return n&&(i=parseFloat(n.getAttribute("x"))),i}}]),t}(),A=function(){function t(e){o(this,t),this.w=e.w,this.annoCtx=e,this.invertAxis=this.annoCtx.invertAxis,this.helpers=new k(this.annoCtx)}return c(t,[{key:"addXaxisAnnotation",value:function(t,e,i){var a,n=this.w,s=this.helpers.getX1X2("x1",t),r=t.label.text,o=t.strokeDashArray;if(b.isNumber(s)){if(null===t.x2||void 0===t.x2){var l=this.annoCtx.graphics.drawLine(s+t.offsetX,0+t.offsetY,s+t.offsetX,n.globals.gridHeight+t.offsetY,t.borderColor,o,t.borderWidth);e.appendChild(l.node),t.id&&l.node.classList.add(t.id)}else{if((a=this.helpers.getX1X2("x2",t))r){var c=r;r=a,a=c}var d=this.annoCtx.graphics.drawRect(0+t.offsetX,a+t.offsetY,this._getYAxisAnnotationWidth(t),r-a,0,t.fillColor,t.opacity,1,t.borderColor,s);d.node.classList.add("apexcharts-annotation-rect"),d.attr("clip-path","url(#gridRectMask".concat(n.globals.cuid,")")),e.appendChild(d.node),t.id&&d.node.classList.add(t.id)}var h="right"===t.label.position?n.globals.gridWidth:"center"===t.label.position?n.globals.gridWidth/2:0,u=this.annoCtx.graphics.drawText({x:h+t.label.offsetX,y:(null!=a?a:r)+t.label.offsetY-3,text:o,textAnchor:t.label.textAnchor,fontSize:t.label.style.fontSize,fontFamily:t.label.style.fontFamily,fontWeight:t.label.style.fontWeight,foreColor:t.label.style.color,cssClass:"apexcharts-yaxis-annotation-label ".concat(t.label.style.cssClass," ").concat(t.id?t.id:"")});u.attr({rel:i}),e.appendChild(u.node)}},{key:"_getYAxisAnnotationWidth",value:function(t){var e=this.w;return e.globals.gridWidth,(t.width.indexOf("%")>-1?e.globals.gridWidth*parseInt(t.width,10)/100:parseInt(t.width,10))+t.offsetX}},{key:"drawYAxisAnnotations",value:function(){var t=this,e=this.w,i=this.annoCtx.graphics.group({class:"apexcharts-yaxis-annotations"});return e.config.annotations.yaxis.map((function(e,a){t.addYaxisAnnotation(e,i.node,a)})),i}}]),t}(),E=function(){function t(e){o(this,t),this.w=e.w,this.annoCtx=e,this.helpers=new k(this.annoCtx)}return c(t,[{key:"addPointAnnotation",value:function(t,e,i){this.w;var a=this.helpers.getX1X2("x1",t),n=this.helpers.getY1Y2("y1",t);if(b.isNumber(a)){var s={pSize:t.marker.size,pointStrokeWidth:t.marker.strokeWidth,pointFillColor:t.marker.fillColor,pointStrokeColor:t.marker.strokeColor,shape:t.marker.shape,pRadius:t.marker.radius,class:"apexcharts-point-annotation-marker ".concat(t.marker.cssClass," ").concat(t.id?t.id:"")},r=this.annoCtx.graphics.drawMarker(a+t.marker.offsetX,n+t.marker.offsetY,s);e.appendChild(r.node);var o=t.label.text?t.label.text:"",l=this.annoCtx.graphics.drawText({x:a+t.label.offsetX,y:n+t.label.offsetY-t.marker.size-parseFloat(t.label.style.fontSize)/1.6,text:o,textAnchor:t.label.textAnchor,fontSize:t.label.style.fontSize,fontFamily:t.label.style.fontFamily,fontWeight:t.label.style.fontWeight,foreColor:t.label.style.color,cssClass:"apexcharts-point-annotation-label ".concat(t.label.style.cssClass," ").concat(t.id?t.id:"")});if(l.attr({rel:i}),e.appendChild(l.node),t.customSVG.SVG){var c=this.annoCtx.graphics.group({class:"apexcharts-point-annotations-custom-svg "+t.customSVG.cssClass});c.attr({transform:"translate(".concat(a+t.customSVG.offsetX,", ").concat(n+t.customSVG.offsetY,")")}),c.node.innerHTML=t.customSVG.SVG,e.appendChild(c.node)}if(t.image.path){var d=t.image.width?t.image.width:20,h=t.image.height?t.image.height:20;r=this.annoCtx.addImage({x:a+t.image.offsetX-d/2,y:n+t.image.offsetY-h/2,width:d,height:h,path:t.image.path,appendTo:".apexcharts-point-annotations"})}t.mouseEnter&&r.node.addEventListener("mouseenter",t.mouseEnter.bind(this,t)),t.mouseLeave&&r.node.addEventListener("mouseleave",t.mouseLeave.bind(this,t)),t.click&&r.node.addEventListener("click",t.click.bind(this,t))}}},{key:"drawPointAnnotations",value:function(){var t=this,e=this.w,i=this.annoCtx.graphics.group({class:"apexcharts-point-annotations"});return e.config.annotations.points.map((function(e,a){t.addPointAnnotation(e,i.node,a)})),i}}]),t}(),T={name:"en",options:{months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],toolbar:{exportToSVG:"Download SVG",exportToPNG:"Download PNG",exportToCSV:"Download CSV",menu:"Menu",selection:"Selection",selectionZoom:"Selection Zoom",zoomIn:"Zoom In",zoomOut:"Zoom Out",pan:"Panning",reset:"Reset Zoom"}}},O=function(){function t(){o(this,t),this.yAxis={show:!0,showAlways:!1,showForNullSeries:!0,seriesName:void 0,opposite:!1,reversed:!1,logarithmic:!1,logBase:10,tickAmount:void 0,forceNiceScale:!1,max:void 0,min:void 0,floating:!1,decimalsInFloat:void 0,labels:{show:!0,minWidth:0,maxWidth:160,offsetX:0,offsetY:0,align:void 0,rotate:0,padding:20,style:{colors:[],fontSize:"11px",fontWeight:400,fontFamily:void 0,cssClass:""},formatter:void 0},axisBorder:{show:!1,color:"#e0e0e0",width:1,offsetX:0,offsetY:0},axisTicks:{show:!1,color:"#e0e0e0",width:6,offsetX:0,offsetY:0},title:{text:void 0,rotate:-90,offsetY:0,offsetX:0,style:{color:void 0,fontSize:"11px",fontWeight:900,fontFamily:void 0,cssClass:""}},tooltip:{enabled:!1,offsetX:0},crosshairs:{show:!0,position:"front",stroke:{color:"#b6b6b6",width:1,dashArray:0}}},this.pointAnnotation={id:void 0,x:0,y:null,yAxisIndex:0,seriesIndex:0,mouseEnter:void 0,mouseLeave:void 0,click:void 0,marker:{size:4,fillColor:"#fff",strokeWidth:2,strokeColor:"#333",shape:"circle",offsetX:0,offsetY:0,radius:2,cssClass:""},label:{borderColor:"#c2c2c2",borderWidth:1,borderRadius:2,text:void 0,textAnchor:"middle",offsetX:0,offsetY:0,mouseEnter:void 0,mouseLeave:void 0,click:void 0,style:{background:"#fff",color:void 0,fontSize:"11px",fontFamily:void 0,fontWeight:400,cssClass:"",padding:{left:5,right:5,top:2,bottom:2}}},customSVG:{SVG:void 0,cssClass:void 0,offsetX:0,offsetY:0},image:{path:void 0,width:20,height:20,offsetX:0,offsetY:0}},this.yAxisAnnotation={id:void 0,y:0,y2:null,strokeDashArray:1,fillColor:"#c2c2c2",borderColor:"#c2c2c2",borderWidth:1,opacity:.3,offsetX:0,offsetY:0,width:"100%",yAxisIndex:0,label:{borderColor:"#c2c2c2",borderWidth:1,borderRadius:2,text:void 0,textAnchor:"end",position:"right",offsetX:0,offsetY:-3,mouseEnter:void 0,mouseLeave:void 0,click:void 0,style:{background:"#fff",color:void 0,fontSize:"11px",fontFamily:void 0,fontWeight:400,cssClass:"",padding:{left:5,right:5,top:2,bottom:2}}}},this.xAxisAnnotation={id:void 0,x:0,x2:null,strokeDashArray:1,fillColor:"#c2c2c2",borderColor:"#c2c2c2",borderWidth:1,opacity:.3,offsetX:0,offsetY:0,label:{borderColor:"#c2c2c2",borderWidth:1,borderRadius:2,text:void 0,textAnchor:"middle",orientation:"vertical",position:"top",offsetX:0,offsetY:0,mouseEnter:void 0,mouseLeave:void 0,click:void 0,style:{background:"#fff",color:void 0,fontSize:"11px",fontFamily:void 0,fontWeight:400,cssClass:"",padding:{left:5,right:5,top:2,bottom:2}}}},this.text={x:0,y:0,text:"",textAnchor:"start",foreColor:void 0,fontSize:"13px",fontFamily:void 0,fontWeight:400,appendTo:".apexcharts-annotations",backgroundColor:"transparent",borderColor:"#c2c2c2",borderRadius:0,borderWidth:0,paddingLeft:4,paddingRight:4,paddingTop:2,paddingBottom:2}}return c(t,[{key:"init",value:function(){return{annotations:{position:"front",yaxis:[this.yAxisAnnotation],xaxis:[this.xAxisAnnotation],points:[this.pointAnnotation],texts:[],images:[],shapes:[]},chart:{animations:{enabled:!0,easing:"easeinout",speed:800,animateGradually:{delay:150,enabled:!0},dynamicAnimation:{enabled:!0,speed:350}},background:"transparent",locales:[T],defaultLocale:"en",dropShadow:{enabled:!1,enabledOnSeries:void 0,top:2,left:2,blur:4,color:"#000",opacity:.35},events:{animationEnd:void 0,beforeMount:void 0,mounted:void 0,updated:void 0,click:void 0,mouseMove:void 0,mouseLeave:void 0,xAxisLabelClick:void 0,legendClick:void 0,markerClick:void 0,selection:void 0,dataPointSelection:void 0,dataPointMouseEnter:void 0,dataPointMouseLeave:void 0,beforeZoom:void 0,beforeResetZoom:void 0,zoomed:void 0,scrolled:void 0,brushScrolled:void 0},foreColor:"#373d3f",fontFamily:"Helvetica, Arial, sans-serif",height:"auto",parentHeightOffset:15,redrawOnParentResize:!0,redrawOnWindowResize:!0,id:void 0,group:void 0,offsetX:0,offsetY:0,selection:{enabled:!1,type:"x",fill:{color:"#24292e",opacity:.1},stroke:{width:1,color:"#24292e",opacity:.4,dashArray:3},xaxis:{min:void 0,max:void 0},yaxis:{min:void 0,max:void 0}},sparkline:{enabled:!1},brush:{enabled:!1,autoScaleYaxis:!0,target:void 0},stacked:!1,stackType:"normal",toolbar:{show:!0,offsetX:0,offsetY:0,tools:{download:!0,selection:!0,zoom:!0,zoomin:!0,zoomout:!0,pan:!0,reset:!0,customIcons:[]},export:{csv:{filename:void 0,columnDelimiter:",",headerCategory:"category",headerValue:"value",dateFormatter:function(t){return new Date(t).toDateString()}},png:{filename:void 0},svg:{filename:void 0}},autoSelected:"zoom"},type:"line",width:"100%",zoom:{enabled:!0,type:"x",autoScaleYaxis:!1,zoomedArea:{fill:{color:"#90CAF9",opacity:.4},stroke:{color:"#0D47A1",opacity:.4,width:1}}}},plotOptions:{area:{fillTo:"origin"},bar:{horizontal:!1,columnWidth:"70%",barHeight:"70%",distributed:!1,borderRadius:0,borderRadiusApplication:"around",borderRadiusWhenStacked:"last",rangeBarOverlap:!0,rangeBarGroupRows:!1,colors:{ranges:[],backgroundBarColors:[],backgroundBarOpacity:1,backgroundBarRadius:0},dataLabels:{position:"top",maxItems:100,hideOverflowingLabels:!0,orientation:"horizontal",total:{enabled:!1,formatter:void 0,offsetX:0,offsetY:0,style:{color:"#373d3f",fontSize:"12px",fontFamily:void 0,fontWeight:600}}}},bubble:{zScaling:!0,minBubbleRadius:void 0,maxBubbleRadius:void 0},candlestick:{colors:{upward:"#00B746",downward:"#EF403C"},wick:{useFillColor:!0}},boxPlot:{colors:{upper:"#00E396",lower:"#008FFB"}},heatmap:{radius:2,enableShades:!0,shadeIntensity:.5,reverseNegativeShade:!1,distributed:!1,useFillColorAsStroke:!1,colorScale:{inverse:!1,ranges:[],min:void 0,max:void 0}},treemap:{enableShades:!0,shadeIntensity:.5,distributed:!1,reverseNegativeShade:!1,useFillColorAsStroke:!1,colorScale:{inverse:!1,ranges:[],min:void 0,max:void 0}},radialBar:{inverseOrder:!1,startAngle:0,endAngle:360,offsetX:0,offsetY:0,hollow:{margin:5,size:"50%",background:"transparent",image:void 0,imageWidth:150,imageHeight:150,imageOffsetX:0,imageOffsetY:0,imageClipped:!0,position:"front",dropShadow:{enabled:!1,top:0,left:0,blur:3,color:"#000",opacity:.5}},track:{show:!0,startAngle:void 0,endAngle:void 0,background:"#f2f2f2",strokeWidth:"97%",opacity:1,margin:5,dropShadow:{enabled:!1,top:0,left:0,blur:3,color:"#000",opacity:.5}},dataLabels:{show:!0,name:{show:!0,fontSize:"16px",fontFamily:void 0,fontWeight:600,color:void 0,offsetY:0,formatter:function(t){return t}},value:{show:!0,fontSize:"14px",fontFamily:void 0,fontWeight:400,color:void 0,offsetY:16,formatter:function(t){return t+"%"}},total:{show:!1,label:"Total",fontSize:"16px",fontWeight:600,fontFamily:void 0,color:void 0,formatter:function(t){return t.globals.seriesTotals.reduce((function(t,e){return t+e}),0)/t.globals.series.length+"%"}}}},pie:{customScale:1,offsetX:0,offsetY:0,startAngle:0,endAngle:360,expandOnClick:!0,dataLabels:{offset:0,minAngleToShowLabel:10},donut:{size:"65%",background:"transparent",labels:{show:!1,name:{show:!0,fontSize:"16px",fontFamily:void 0,fontWeight:600,color:void 0,offsetY:-10,formatter:function(t){return t}},value:{show:!0,fontSize:"20px",fontFamily:void 0,fontWeight:400,color:void 0,offsetY:10,formatter:function(t){return t}},total:{show:!1,showAlways:!1,label:"Total",fontSize:"16px",fontWeight:400,fontFamily:void 0,color:void 0,formatter:function(t){return t.globals.seriesTotals.reduce((function(t,e){return t+e}),0)}}}}},polarArea:{rings:{strokeWidth:1,strokeColor:"#e8e8e8"},spokes:{strokeWidth:1,connectorColors:"#e8e8e8"}},radar:{size:void 0,offsetX:0,offsetY:0,polygons:{strokeWidth:1,strokeColors:"#e8e8e8",connectorColors:"#e8e8e8",fill:{colors:void 0}}}},colors:void 0,dataLabels:{enabled:!0,enabledOnSeries:void 0,formatter:function(t){return null!==t?t:""},textAnchor:"middle",distributed:!1,offsetX:0,offsetY:0,style:{fontSize:"12px",fontFamily:void 0,fontWeight:600,colors:void 0},background:{enabled:!0,foreColor:"#fff",borderRadius:2,padding:4,opacity:.9,borderWidth:1,borderColor:"#fff",dropShadow:{enabled:!1,top:1,left:1,blur:1,color:"#000",opacity:.45}},dropShadow:{enabled:!1,top:1,left:1,blur:1,color:"#000",opacity:.45}},fill:{type:"solid",colors:void 0,opacity:.85,gradient:{shade:"dark",type:"horizontal",shadeIntensity:.5,gradientToColors:void 0,inverseColors:!0,opacityFrom:1,opacityTo:1,stops:[0,50,100],colorStops:[]},image:{src:[],width:void 0,height:void 0},pattern:{style:"squares",width:6,height:6,strokeWidth:2}},forecastDataPoints:{count:0,fillOpacity:.5,strokeWidth:void 0,dashArray:4},grid:{show:!0,borderColor:"#e0e0e0",strokeDashArray:0,position:"back",xaxis:{lines:{show:!1}},yaxis:{lines:{show:!0}},row:{colors:void 0,opacity:.5},column:{colors:void 0,opacity:.5},padding:{top:0,right:10,bottom:0,left:12}},labels:[],legend:{show:!0,showForSingleSeries:!1,showForNullSeries:!0,showForZeroSeries:!0,floating:!1,position:"bottom",horizontalAlign:"center",inverseOrder:!1,fontSize:"12px",fontFamily:void 0,fontWeight:400,width:void 0,height:void 0,formatter:void 0,tooltipHoverFormatter:void 0,offsetX:-20,offsetY:4,customLegendItems:[],labels:{colors:void 0,useSeriesColors:!1},markers:{width:12,height:12,strokeWidth:0,fillColors:void 0,strokeColor:"#fff",radius:12,customHTML:void 0,offsetX:0,offsetY:0,onClick:void 0},itemMargin:{horizontal:5,vertical:2},onItemClick:{toggleDataSeries:!0},onItemHover:{highlightDataSeries:!0}},markers:{discrete:[],size:0,colors:void 0,strokeColors:"#fff",strokeWidth:2,strokeOpacity:.9,strokeDashArray:0,fillOpacity:1,shape:"circle",width:8,height:8,radius:2,offsetX:0,offsetY:0,onClick:void 0,onDblClick:void 0,showNullDataPoints:!0,hover:{size:void 0,sizeOffset:3}},noData:{text:void 0,align:"center",verticalAlign:"middle",offsetX:0,offsetY:0,style:{color:void 0,fontSize:"14px",fontFamily:void 0}},responsive:[],series:void 0,states:{normal:{filter:{type:"none",value:0}},hover:{filter:{type:"lighten",value:.1}},active:{allowMultipleDataPointsSelection:!1,filter:{type:"darken",value:.5}}},title:{text:void 0,align:"left",margin:5,offsetX:0,offsetY:0,floating:!1,style:{fontSize:"14px",fontWeight:900,fontFamily:void 0,color:void 0}},subtitle:{text:void 0,align:"left",margin:5,offsetX:0,offsetY:30,floating:!1,style:{fontSize:"12px",fontWeight:400,fontFamily:void 0,color:void 0}},stroke:{show:!0,curve:"smooth",lineCap:"butt",width:2,colors:void 0,dashArray:0,fill:{type:"solid",colors:void 0,opacity:.85,gradient:{shade:"dark",type:"horizontal",shadeIntensity:.5,gradientToColors:void 0,inverseColors:!0,opacityFrom:1,opacityTo:1,stops:[0,50,100],colorStops:[]}}},tooltip:{enabled:!0,enabledOnSeries:void 0,shared:!0,followCursor:!1,intersect:!1,inverseOrder:!1,custom:void 0,fillSeriesColor:!1,theme:"light",cssClass:"",style:{fontSize:"12px",fontFamily:void 0},onDatasetHover:{highlightDataSeries:!1},x:{show:!0,format:"dd MMM",formatter:void 0},y:{formatter:void 0,title:{formatter:function(t){return t?t+": ":""}}},z:{formatter:void 0,title:"Size: "},marker:{show:!0,fillColors:void 0},items:{display:"flex"},fixed:{enabled:!1,position:"topRight",offsetX:0,offsetY:0}},xaxis:{type:"category",categories:[],convertedCatToNumeric:!1,offsetX:0,offsetY:0,overwriteCategories:void 0,labels:{show:!0,rotate:-45,rotateAlways:!1,hideOverlappingLabels:!0,trim:!1,minHeight:void 0,maxHeight:120,showDuplicates:!0,style:{colors:[],fontSize:"12px",fontWeight:400,fontFamily:void 0,cssClass:""},offsetX:0,offsetY:0,format:void 0,formatter:void 0,datetimeUTC:!0,datetimeFormatter:{year:"yyyy",month:"MMM 'yy",day:"dd MMM",hour:"HH:mm",minute:"HH:mm:ss",second:"HH:mm:ss"}},group:{groups:[],style:{colors:[],fontSize:"12px",fontWeight:400,fontFamily:void 0,cssClass:""}},axisBorder:{show:!0,color:"#e0e0e0",width:"100%",height:1,offsetX:0,offsetY:0},axisTicks:{show:!0,color:"#e0e0e0",height:6,offsetX:0,offsetY:0},tickAmount:void 0,tickPlacement:"on",min:void 0,max:void 0,range:void 0,floating:!1,decimalsInFloat:void 0,position:"bottom",title:{text:void 0,offsetX:0,offsetY:0,style:{color:void 0,fontSize:"12px",fontWeight:900,fontFamily:void 0,cssClass:""}},crosshairs:{show:!0,width:1,position:"back",opacity:.9,stroke:{color:"#b6b6b6",width:1,dashArray:3},fill:{type:"solid",color:"#B1B9C4",gradient:{colorFrom:"#D8E3F0",colorTo:"#BED1E6",stops:[0,100],opacityFrom:.4,opacityTo:.5}},dropShadow:{enabled:!1,left:0,top:0,blur:1,opacity:.4}},tooltip:{enabled:!0,offsetY:0,formatter:void 0,style:{fontSize:"12px",fontFamily:void 0}}},yaxis:this.yAxis,theme:{mode:"light",palette:"palette1",monochrome:{enabled:!1,color:"#008FFB",shadeTo:"light",shadeIntensity:.65}}}}}]),t}(),M=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.graphics=new C(this.ctx),this.w.globals.isBarHorizontal&&(this.invertAxis=!0),this.helpers=new k(this),this.xAxisAnnotations=new A(this),this.yAxisAnnotations=new P(this),this.pointsAnnotations=new E(this),this.w.globals.isBarHorizontal&&this.w.config.yaxis[0].reversed&&(this.inversedReversedAxis=!0),this.xDivision=this.w.globals.gridWidth/this.w.globals.dataPoints}return c(t,[{key:"drawAxesAnnotations",value:function(){var t=this.w;if(t.globals.axisCharts){for(var e=this.yAxisAnnotations.drawYAxisAnnotations(),i=this.xAxisAnnotations.drawXAxisAnnotations(),a=this.pointsAnnotations.drawPointAnnotations(),n=t.config.chart.animations.enabled,s=[e,i,a],r=[i.node,e.node,a.node],o=0;o<3;o++)t.globals.dom.elGraphical.add(s[o]),!n||t.globals.resized||t.globals.dataChanged||"scatter"!==t.config.chart.type&&"bubble"!==t.config.chart.type&&t.globals.dataPoints>1&&r[o].classList.add("apexcharts-element-hidden"),t.globals.delayedElements.push({el:r[o],index:0});this.helpers.annotationsBackground()}}},{key:"drawImageAnnos",value:function(){var t=this;this.w.config.annotations.images.map((function(e,i){t.addImage(e,i)}))}},{key:"drawTextAnnos",value:function(){var t=this;this.w.config.annotations.texts.map((function(e,i){t.addText(e,i)}))}},{key:"addXaxisAnnotation",value:function(t,e,i){this.xAxisAnnotations.addXaxisAnnotation(t,e,i)}},{key:"addYaxisAnnotation",value:function(t,e,i){this.yAxisAnnotations.addYaxisAnnotation(t,e,i)}},{key:"addPointAnnotation",value:function(t,e,i){this.pointsAnnotations.addPointAnnotation(t,e,i)}},{key:"addText",value:function(t,e){var i=t.x,a=t.y,n=t.text,s=t.textAnchor,r=t.foreColor,o=t.fontSize,l=t.fontFamily,c=t.fontWeight,d=t.cssClass,h=t.backgroundColor,u=t.borderWidth,p=t.strokeDashArray,f=t.borderRadius,g=t.borderColor,v=t.appendTo,m=void 0===v?".apexcharts-annotations":v,x=t.paddingLeft,b=void 0===x?4:x,y=t.paddingRight,w=void 0===y?4:y,C=t.paddingBottom,S=void 0===C?2:C,k=t.paddingTop,A=void 0===k?2:k,P=this.w,E=this.graphics.drawText({x:i,y:a,text:n,textAnchor:s||"start",fontSize:o||"12px",fontWeight:c||"regular",fontFamily:l||P.config.chart.fontFamily,foreColor:r||P.config.chart.foreColor,cssClass:d}),T=P.globals.dom.baseEl.querySelector(m);T&&T.appendChild(E.node);var O=E.bbox();if(n){var M=this.graphics.drawRect(O.x-b,O.y-A,O.width+b+w,O.height+S+A,f,h||"transparent",1,u,g,p);T.insertBefore(M.node,E.node)}}},{key:"addImage",value:function(t,e){var i=this.w,a=t.path,n=t.x,s=void 0===n?0:n,r=t.y,o=void 0===r?0:r,l=t.width,c=void 0===l?20:l,d=t.height,h=void 0===d?20:d,u=t.appendTo,p=void 0===u?".apexcharts-annotations":u,f=i.globals.dom.Paper.image(a);f.size(c,h).move(s,o);var g=i.globals.dom.baseEl.querySelector(p);return g&&g.appendChild(f.node),f}},{key:"addXaxisAnnotationExternal",value:function(t,e,i){return this.addAnnotationExternal({params:t,pushToMemory:e,context:i,type:"xaxis",contextMethod:i.addXaxisAnnotation}),i}},{key:"addYaxisAnnotationExternal",value:function(t,e,i){return this.addAnnotationExternal({params:t,pushToMemory:e,context:i,type:"yaxis",contextMethod:i.addYaxisAnnotation}),i}},{key:"addPointAnnotationExternal",value:function(t,e,i){return void 0===this.invertAxis&&(this.invertAxis=i.w.globals.isBarHorizontal),this.addAnnotationExternal({params:t,pushToMemory:e,context:i,type:"point",contextMethod:i.addPointAnnotation}),i}},{key:"addAnnotationExternal",value:function(t){var e=t.params,i=t.pushToMemory,a=t.context,n=t.type,s=t.contextMethod,r=a,o=r.w,l=o.globals.dom.baseEl.querySelector(".apexcharts-".concat(n,"-annotations")),c=l.childNodes.length+1,d=new O,h=Object.assign({},"xaxis"===n?d.xAxisAnnotation:"yaxis"===n?d.yAxisAnnotation:d.pointAnnotation),u=b.extend(h,e);switch(n){case"xaxis":this.addXaxisAnnotation(u,l,c);break;case"yaxis":this.addYaxisAnnotation(u,l,c);break;case"point":this.addPointAnnotation(u,l,c)}var p=o.globals.dom.baseEl.querySelector(".apexcharts-".concat(n,"-annotations .apexcharts-").concat(n,"-annotation-label[rel='").concat(c,"']")),f=this.helpers.addBackgroundToAnno(p,u);return f&&l.insertBefore(f.node,p),i&&o.globals.memory.methodsToExec.push({context:r,id:u.id?u.id:b.randomId(),method:s,label:"addAnnotation",params:e}),a}},{key:"clearAnnotations",value:function(t){var e=t.w,i=e.globals.dom.baseEl.querySelectorAll(".apexcharts-yaxis-annotations, .apexcharts-xaxis-annotations, .apexcharts-point-annotations");e.globals.memory.methodsToExec.map((function(t,i){"addText"!==t.label&&"addAnnotation"!==t.label||e.globals.memory.methodsToExec.splice(i,1)})),i=b.listToArray(i),Array.prototype.forEach.call(i,(function(t){for(;t.firstChild;)t.removeChild(t.firstChild)}))}},{key:"removeAnnotation",value:function(t,e){var i=t.w,a=i.globals.dom.baseEl.querySelectorAll(".".concat(e));a&&(i.globals.memory.methodsToExec.map((function(t,a){t.id===e&&i.globals.memory.methodsToExec.splice(a,1)})),Array.prototype.forEach.call(a,(function(t){t.parentElement.removeChild(t)})))}}]),t}(),L=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.months31=[1,3,5,7,8,10,12],this.months30=[2,4,6,9,11],this.daysCntOfYear=[0,31,59,90,120,151,181,212,243,273,304,334]}return c(t,[{key:"isValidDate",value:function(t){return!isNaN(this.parseDate(t))}},{key:"getTimeStamp",value:function(t){return Date.parse(t)?this.w.config.xaxis.labels.datetimeUTC?new Date(new Date(t).toISOString().substr(0,25)).getTime():new Date(t).getTime():t}},{key:"getDate",value:function(t){return this.w.config.xaxis.labels.datetimeUTC?new Date(new Date(t).toUTCString()):new Date(t)}},{key:"parseDate",value:function(t){var e=Date.parse(t);if(!isNaN(e))return this.getTimeStamp(t);var i=Date.parse(t.replace(/-/g,"/").replace(/[a-z]+/gi," "));return this.getTimeStamp(i)}},{key:"parseDateWithTimezone",value:function(t){return Date.parse(t.replace(/-/g,"/").replace(/[a-z]+/gi," "))}},{key:"formatDate",value:function(t,e){var i=this.w.globals.locale,a=this.w.config.xaxis.labels.datetimeUTC,n=["\0"].concat(v(i.months)),s=[""].concat(v(i.shortMonths)),r=[""].concat(v(i.days)),o=[""].concat(v(i.shortDays));function l(t,e){var i=t+"";for(e=e||2;i.length12?u-12:0===u?12:u;e=(e=(e=(e=e.replace(/(^|[^\\])HH+/g,"$1"+l(u))).replace(/(^|[^\\])H/g,"$1"+u)).replace(/(^|[^\\])hh+/g,"$1"+l(p))).replace(/(^|[^\\])h/g,"$1"+p);var f=a?t.getUTCMinutes():t.getMinutes();e=(e=e.replace(/(^|[^\\])mm+/g,"$1"+l(f))).replace(/(^|[^\\])m/g,"$1"+f);var g=a?t.getUTCSeconds():t.getSeconds();e=(e=e.replace(/(^|[^\\])ss+/g,"$1"+l(g))).replace(/(^|[^\\])s/g,"$1"+g);var m=a?t.getUTCMilliseconds():t.getMilliseconds();e=e.replace(/(^|[^\\])fff+/g,"$1"+l(m,3)),m=Math.round(m/10),e=e.replace(/(^|[^\\])ff/g,"$1"+l(m)),m=Math.round(m/10);var x=u<12?"AM":"PM";e=(e=(e=e.replace(/(^|[^\\])f/g,"$1"+m)).replace(/(^|[^\\])TT+/g,"$1"+x)).replace(/(^|[^\\])T/g,"$1"+x.charAt(0));var b=x.toLowerCase();e=(e=e.replace(/(^|[^\\])tt+/g,"$1"+b)).replace(/(^|[^\\])t/g,"$1"+b.charAt(0));var y=-t.getTimezoneOffset(),w=a||!y?"Z":y>0?"+":"-";if(!a){var C=(y=Math.abs(y))%60;w+=l(Math.floor(y/60))+":"+l(C)}e=e.replace(/(^|[^\\])K/g,"$1"+w);var S=(a?t.getUTCDay():t.getDay())+1;return(e=(e=(e=(e=e.replace(new RegExp(r[0],"g"),r[S])).replace(new RegExp(o[0],"g"),o[S])).replace(new RegExp(n[0],"g"),n[d])).replace(new RegExp(s[0],"g"),s[d])).replace(/\\(.)/g,"$1")}},{key:"getTimeUnitsfromTimestamp",value:function(t,e,i){var a=this.w;void 0!==a.config.xaxis.min&&(t=a.config.xaxis.min),void 0!==a.config.xaxis.max&&(e=a.config.xaxis.max);var n=this.getDate(t),s=this.getDate(e),r=this.formatDate(n,"yyyy MM dd HH mm ss fff").split(" "),o=this.formatDate(s,"yyyy MM dd HH mm ss fff").split(" ");return{minMillisecond:parseInt(r[6],10),maxMillisecond:parseInt(o[6],10),minSecond:parseInt(r[5],10),maxSecond:parseInt(o[5],10),minMinute:parseInt(r[4],10),maxMinute:parseInt(o[4],10),minHour:parseInt(r[3],10),maxHour:parseInt(o[3],10),minDate:parseInt(r[2],10),maxDate:parseInt(o[2],10),minMonth:parseInt(r[1],10)-1,maxMonth:parseInt(o[1],10)-1,minYear:parseInt(r[0],10),maxYear:parseInt(o[0],10)}}},{key:"isLeapYear",value:function(t){return t%4==0&&t%100!=0||t%400==0}},{key:"calculcateLastDaysOfMonth",value:function(t,e,i){return this.determineDaysOfMonths(t,e)-i}},{key:"determineDaysOfYear",value:function(t){var e=365;return this.isLeapYear(t)&&(e=366),e}},{key:"determineRemainingDaysOfYear",value:function(t,e,i){var a=this.daysCntOfYear[e]+i;return e>1&&this.isLeapYear()&&a++,a}},{key:"determineDaysOfMonths",value:function(t,e){var i=30;switch(t=b.monthMod(t),!0){case this.months30.indexOf(t)>-1:2===t&&(i=this.isLeapYear(e)?29:28);break;case this.months31.indexOf(t)>-1:default:i=31}return i}}]),t}(),I=function(t){var e,i=t.ctx,a=t.seriesIndex,n=t.dataPointIndex,s=t.y1,r=t.y2,o=t.w,l=o.globals.seriesRangeStart[a][n],c=o.globals.seriesRangeEnd[a][n],d=o.globals.labels[n],h=o.config.series[a].name?o.config.series[a].name:"",u=o.config.tooltip.y.formatter,p=o.config.tooltip.y.title.formatter,f={w:o,seriesIndex:a,dataPointIndex:n,start:l,end:c};"function"==typeof p&&(h=p(h,f)),null!==(e=o.config.series[a].data[n])&&void 0!==e&&e.x&&(d=o.config.series[a].data[n].x+":"),"function"==typeof u&&(d=u(d,f)),Number.isFinite(s)&&Number.isFinite(r)&&(l=s,c=r);var g="",v="",m=o.globals.colors[a];if(void 0===o.config.tooltip.x.formatter)if("datetime"===o.config.xaxis.type){var x=new L(i);g=x.formatDate(x.getDate(l),o.config.tooltip.x.format),v=x.formatDate(x.getDate(c),o.config.tooltip.x.format)}else g=l,v=c;else g=o.config.tooltip.x.formatter(l),v=o.config.tooltip.x.formatter(c);return{start:l,end:c,startVal:g,endVal:v,ylabel:d,color:m,seriesName:h}},_=function(t){var e=t.color,i=t.seriesName,a=t.ylabel,n=t.start,s=t.end,r=t.seriesIndex,o=t.dataPointIndex,l=t.ctx.tooltip.tooltipLabels.getFormatters(r);n=l.yLbFormatter(n),s=l.yLbFormatter(s);var c=l.yLbFormatter(t.w.globals.series[r][o]),d='\n '.concat(n,'\n - \n ').concat(s,"\n ");return'
'+(i||"")+'
'+a+" "+(t.w.globals.comboCharts?"rangeArea"===t.w.config.series[r].type||"rangeBar"===t.w.config.series[r].type?d:"".concat(c,""):d)+"
"},D=function(){function t(e){o(this,t),this.opts=e}return c(t,[{key:"line",value:function(){return{chart:{animations:{easing:"swing"}},dataLabels:{enabled:!1},stroke:{width:5,curve:"straight"},markers:{size:0,hover:{sizeOffset:6}},xaxis:{crosshairs:{width:1}}}}},{key:"sparkline",value:function(t){return this.opts.yaxis[0].show=!1,this.opts.yaxis[0].title.text="",this.opts.yaxis[0].axisBorder.show=!1,this.opts.yaxis[0].axisTicks.show=!1,this.opts.yaxis[0].floating=!0,b.extend(t,{grid:{show:!1,padding:{left:0,right:0,top:0,bottom:0}},legend:{show:!1},xaxis:{labels:{show:!1},tooltip:{enabled:!1},axisBorder:{show:!1},axisTicks:{show:!1}},chart:{toolbar:{show:!1},zoom:{enabled:!1}},dataLabels:{enabled:!1}})}},{key:"bar",value:function(){return{chart:{stacked:!1,animations:{easing:"swing"}},plotOptions:{bar:{dataLabels:{position:"center"}}},dataLabels:{style:{colors:["#fff"]},background:{enabled:!1}},stroke:{width:0,lineCap:"round"},fill:{opacity:.85},legend:{markers:{shape:"square",radius:2,size:8}},tooltip:{shared:!1,intersect:!0},xaxis:{tooltip:{enabled:!1},tickPlacement:"between",crosshairs:{width:"barWidth",position:"back",fill:{type:"gradient"},dropShadow:{enabled:!1},stroke:{width:0}}}}}},{key:"candlestick",value:function(){var t=this;return{stroke:{width:1,colors:["#333"]},fill:{opacity:1},dataLabels:{enabled:!1},tooltip:{shared:!0,custom:function(e){var i=e.seriesIndex,a=e.dataPointIndex,n=e.w;return t._getBoxTooltip(n,i,a,["Open","High","","Low","Close"],"candlestick")}},states:{active:{filter:{type:"none"}}},xaxis:{crosshairs:{width:1}}}}},{key:"boxPlot",value:function(){var t=this;return{chart:{animations:{dynamicAnimation:{enabled:!1}}},stroke:{width:1,colors:["#24292e"]},dataLabels:{enabled:!1},tooltip:{shared:!0,custom:function(e){var i=e.seriesIndex,a=e.dataPointIndex,n=e.w;return t._getBoxTooltip(n,i,a,["Minimum","Q1","Median","Q3","Maximum"],"boxPlot")}},markers:{size:5,strokeWidth:1,strokeColors:"#111"},xaxis:{crosshairs:{width:1}}}}},{key:"rangeBar",value:function(){return{stroke:{width:0,lineCap:"square"},plotOptions:{bar:{borderRadius:0,dataLabels:{position:"center"}}},dataLabels:{enabled:!1,formatter:function(t,e){e.ctx;var i=e.seriesIndex,a=e.dataPointIndex,n=e.w,s=function(){var t=n.globals.seriesRangeStart[i][a];return n.globals.seriesRangeEnd[i][a]-t};return n.globals.comboCharts?"rangeBar"===n.config.series[i].type||"rangeArea"===n.config.series[i].type?s():t:s()},background:{enabled:!1},style:{colors:["#fff"]}},tooltip:{shared:!1,followCursor:!0,custom:function(t){return t.w.config.plotOptions&&t.w.config.plotOptions.bar&&t.w.config.plotOptions.bar.horizontal?function(t){var e=I(t),i=e.color,a=e.seriesName,n=e.ylabel,r=e.startVal,o=e.endVal;return _(s(s({},t),{},{color:i,seriesName:a,ylabel:n,start:r,end:o}))}(t):function(t){var e=I(t),i=e.color,a=e.seriesName,n=e.ylabel,r=e.start,o=e.end;return _(s(s({},t),{},{color:i,seriesName:a,ylabel:n,start:r,end:o}))}(t)}},xaxis:{tickPlacement:"between",tooltip:{enabled:!1},crosshairs:{stroke:{width:0}}}}}},{key:"area",value:function(){return{stroke:{width:4,fill:{type:"solid",gradient:{inverseColors:!1,shade:"light",type:"vertical",opacityFrom:.65,opacityTo:.5,stops:[0,100,100]}}},fill:{type:"gradient",gradient:{inverseColors:!1,shade:"light",type:"vertical",opacityFrom:.65,opacityTo:.5,stops:[0,100,100]}},markers:{size:0,hover:{sizeOffset:6}},tooltip:{followCursor:!1}}}},{key:"rangeArea",value:function(){return{stroke:{curve:"straight",width:0},fill:{type:"solid",opacity:.6},markers:{size:0},states:{hover:{filter:{type:"none"}},active:{filter:{type:"none"}}},tooltip:{intersect:!1,shared:!0,followCursor:!0,custom:function(t){return function(t){var e=I(t),i=e.color,a=e.seriesName,n=e.ylabel,r=e.start,o=e.end;return _(s(s({},t),{},{color:i,seriesName:a,ylabel:n,start:r,end:o}))}(t)}}}}},{key:"brush",value:function(t){return b.extend(t,{chart:{toolbar:{autoSelected:"selection",show:!1},zoom:{enabled:!1}},dataLabels:{enabled:!1},stroke:{width:1},tooltip:{enabled:!1},xaxis:{tooltip:{enabled:!1}}})}},{key:"stacked100",value:function(t){t.dataLabels=t.dataLabels||{},t.dataLabels.formatter=t.dataLabels.formatter||void 0;var e=t.dataLabels.formatter;return t.yaxis.forEach((function(e,i){t.yaxis[i].min=0,t.yaxis[i].max=100})),"bar"===t.chart.type&&(t.dataLabels.formatter=e||function(t){return"number"==typeof t&&t?t.toFixed(0)+"%":t}),t}},{key:"convertCatToNumeric",value:function(t){return t.xaxis.convertedCatToNumeric=!0,t}},{key:"convertCatToNumericXaxis",value:function(t,e,i){t.xaxis.type="numeric",t.xaxis.labels=t.xaxis.labels||{},t.xaxis.labels.formatter=t.xaxis.labels.formatter||function(t){return b.isNumber(t)?Math.floor(t):t};var a=t.xaxis.labels.formatter,n=t.xaxis.categories&&t.xaxis.categories.length?t.xaxis.categories:t.labels;return i&&i.length&&(n=i.map((function(t){return Array.isArray(t)?t:String(t)}))),n&&n.length&&(t.xaxis.labels.formatter=function(t){return b.isNumber(t)?a(n[Math.floor(t)-1]):a(t)}),t.xaxis.categories=[],t.labels=[],t.xaxis.tickAmount=t.xaxis.tickAmount||"dataPoints",t}},{key:"bubble",value:function(){return{dataLabels:{style:{colors:["#fff"]}},tooltip:{shared:!1,intersect:!0},xaxis:{crosshairs:{width:0}},fill:{type:"solid",gradient:{shade:"light",inverse:!0,shadeIntensity:.55,opacityFrom:.4,opacityTo:.8}}}}},{key:"scatter",value:function(){return{dataLabels:{enabled:!1},tooltip:{shared:!1,intersect:!0},markers:{size:6,strokeWidth:1,hover:{sizeOffset:2}}}}},{key:"heatmap",value:function(){return{chart:{stacked:!1},fill:{opacity:1},dataLabels:{style:{colors:["#fff"]}},stroke:{colors:["#fff"]},tooltip:{followCursor:!0,marker:{show:!1},x:{show:!1}},legend:{position:"top",markers:{shape:"square",size:10,offsetY:2}},grid:{padding:{right:20}}}}},{key:"treemap",value:function(){return{chart:{zoom:{enabled:!1}},dataLabels:{style:{fontSize:14,fontWeight:600,colors:["#fff"]}},stroke:{show:!0,width:2,colors:["#fff"]},legend:{show:!1},fill:{gradient:{stops:[0,100]}},tooltip:{followCursor:!0,x:{show:!1}},grid:{padding:{left:0,right:0}},xaxis:{crosshairs:{show:!1},tooltip:{enabled:!1}}}}},{key:"pie",value:function(){return{chart:{toolbar:{show:!1}},plotOptions:{pie:{donut:{labels:{show:!1}}}},dataLabels:{formatter:function(t){return t.toFixed(1)+"%"},style:{colors:["#fff"]},background:{enabled:!1},dropShadow:{enabled:!0}},stroke:{colors:["#fff"]},fill:{opacity:1,gradient:{shade:"light",stops:[0,100]}},tooltip:{theme:"dark",fillSeriesColor:!0},legend:{position:"right"}}}},{key:"donut",value:function(){return{chart:{toolbar:{show:!1}},dataLabels:{formatter:function(t){return t.toFixed(1)+"%"},style:{colors:["#fff"]},background:{enabled:!1},dropShadow:{enabled:!0}},stroke:{colors:["#fff"]},fill:{opacity:1,gradient:{shade:"light",shadeIntensity:.35,stops:[80,100],opacityFrom:1,opacityTo:1}},tooltip:{theme:"dark",fillSeriesColor:!0},legend:{position:"right"}}}},{key:"polarArea",value:function(){return this.opts.yaxis[0].tickAmount=this.opts.yaxis[0].tickAmount?this.opts.yaxis[0].tickAmount:6,{chart:{toolbar:{show:!1}},dataLabels:{formatter:function(t){return t.toFixed(1)+"%"},enabled:!1},stroke:{show:!0,width:2},fill:{opacity:.7},tooltip:{theme:"dark",fillSeriesColor:!0},legend:{position:"right"}}}},{key:"radar",value:function(){return this.opts.yaxis[0].labels.offsetY=this.opts.yaxis[0].labels.offsetY?this.opts.yaxis[0].labels.offsetY:6,{dataLabels:{enabled:!1,style:{fontSize:"11px"}},stroke:{width:2},markers:{size:3,strokeWidth:1,strokeOpacity:1},fill:{opacity:.2},tooltip:{shared:!1,intersect:!0,followCursor:!0},grid:{show:!1},xaxis:{labels:{formatter:function(t){return t},style:{colors:["#a8a8a8"],fontSize:"11px"}},tooltip:{enabled:!1},crosshairs:{show:!1}}}}},{key:"radialBar",value:function(){return{chart:{animations:{dynamicAnimation:{enabled:!0,speed:800}},toolbar:{show:!1}},fill:{gradient:{shade:"dark",shadeIntensity:.4,inverseColors:!1,type:"diagonal2",opacityFrom:1,opacityTo:1,stops:[70,98,100]}},legend:{show:!1,position:"right"},tooltip:{enabled:!1,fillSeriesColor:!0}}}},{key:"_getBoxTooltip",value:function(t,e,i,a,n){var s=t.globals.seriesCandleO[e][i],r=t.globals.seriesCandleH[e][i],o=t.globals.seriesCandleM[e][i],l=t.globals.seriesCandleL[e][i],c=t.globals.seriesCandleC[e][i];return t.config.series[e].type&&t.config.series[e].type!==n?'
\n '.concat(t.config.series[e].name?t.config.series[e].name:"series-"+(e+1),": ").concat(t.globals.series[e][i],"\n
"):'
')+"
".concat(a[0],': ')+s+"
"+"
".concat(a[1],': ')+r+"
"+(o?"
".concat(a[2],': ')+o+"
":"")+"
".concat(a[3],': ')+l+"
"+"
".concat(a[4],': ')+c+"
"}}]),t}(),z=function(){function t(e){o(this,t),this.opts=e}return c(t,[{key:"init",value:function(t){var e=t.responsiveOverride,i=this.opts,a=new O,n=new D(i);this.chartType=i.chart.type,"histogram"===this.chartType&&(i.chart.type="bar",i=b.extend({plotOptions:{bar:{columnWidth:"99.99%"}}},i)),i=this.extendYAxis(i),i=this.extendAnnotations(i);var s=a.init(),o={};if(i&&"object"===r(i)){var l={};l=-1!==["line","area","bar","candlestick","boxPlot","rangeBar","rangeArea","histogram","bubble","scatter","heatmap","treemap","pie","polarArea","donut","radar","radialBar"].indexOf(i.chart.type)?n[i.chart.type]():n.line(),i.chart.brush&&i.chart.brush.enabled&&(l=n.brush(l)),i.chart.stacked&&"100%"===i.chart.stackType&&(i=n.stacked100(i)),this.checkForDarkTheme(window.Apex),this.checkForDarkTheme(i),i.xaxis=i.xaxis||window.Apex.xaxis||{},e||(i.xaxis.convertedCatToNumeric=!1),((i=this.checkForCatToNumericXAxis(this.chartType,l,i)).chart.sparkline&&i.chart.sparkline.enabled||window.Apex.chart&&window.Apex.chart.sparkline&&window.Apex.chart.sparkline.enabled)&&(l=n.sparkline(l)),o=b.extend(s,l)}var c=b.extend(o,window.Apex);return s=b.extend(c,i),this.handleUserInputErrors(s)}},{key:"checkForCatToNumericXAxis",value:function(t,e,i){var a=new D(i),n=("bar"===t||"boxPlot"===t)&&i.plotOptions&&i.plotOptions.bar&&i.plotOptions.bar.horizontal,s="pie"===t||"polarArea"===t||"donut"===t||"radar"===t||"radialBar"===t||"heatmap"===t,r="datetime"!==i.xaxis.type&&"numeric"!==i.xaxis.type,o=i.xaxis.tickPlacement?i.xaxis.tickPlacement:e.xaxis&&e.xaxis.tickPlacement;return n||s||!r||"between"===o||(i=a.convertCatToNumeric(i)),i}},{key:"extendYAxis",value:function(t,e){var i=new O;(void 0===t.yaxis||!t.yaxis||Array.isArray(t.yaxis)&&0===t.yaxis.length)&&(t.yaxis={}),t.yaxis.constructor!==Array&&window.Apex.yaxis&&window.Apex.yaxis.constructor!==Array&&(t.yaxis=b.extend(t.yaxis,window.Apex.yaxis)),t.yaxis.constructor!==Array?t.yaxis=[b.extend(i.yAxis,t.yaxis)]:t.yaxis=b.extendArray(t.yaxis,i.yAxis);var a=!1;t.yaxis.forEach((function(t){t.logarithmic&&(a=!0)}));var n=t.series;return e&&!n&&(n=e.config.series),a&&n.length!==t.yaxis.length&&n.length&&(t.yaxis=n.map((function(e,a){if(e.name||(n[a].name="series-".concat(a+1)),t.yaxis[a])return t.yaxis[a].seriesName=n[a].name,t.yaxis[a];var s=b.extend(i.yAxis,t.yaxis[0]);return s.show=!1,s}))),a&&n.length>1&&n.length!==t.yaxis.length&&console.warn("A multi-series logarithmic chart should have equal number of series and y-axes. Please make sure to equalize both."),t}},{key:"extendAnnotations",value:function(t){return void 0===t.annotations&&(t.annotations={},t.annotations.yaxis=[],t.annotations.xaxis=[],t.annotations.points=[]),t=this.extendYAxisAnnotations(t),t=this.extendXAxisAnnotations(t),this.extendPointAnnotations(t)}},{key:"extendYAxisAnnotations",value:function(t){var e=new O;return t.annotations.yaxis=b.extendArray(void 0!==t.annotations.yaxis?t.annotations.yaxis:[],e.yAxisAnnotation),t}},{key:"extendXAxisAnnotations",value:function(t){var e=new O;return t.annotations.xaxis=b.extendArray(void 0!==t.annotations.xaxis?t.annotations.xaxis:[],e.xAxisAnnotation),t}},{key:"extendPointAnnotations",value:function(t){var e=new O;return t.annotations.points=b.extendArray(void 0!==t.annotations.points?t.annotations.points:[],e.pointAnnotation),t}},{key:"checkForDarkTheme",value:function(t){t.theme&&"dark"===t.theme.mode&&(t.tooltip||(t.tooltip={}),"light"!==t.tooltip.theme&&(t.tooltip.theme="dark"),t.chart.foreColor||(t.chart.foreColor="#f6f7f8"),t.chart.background||(t.chart.background="#424242"),t.theme.palette||(t.theme.palette="palette4"))}},{key:"handleUserInputErrors",value:function(t){var e=t;if(e.tooltip.shared&&e.tooltip.intersect)throw new Error("tooltip.shared cannot be enabled when tooltip.intersect is true. Turn off any other option by setting it to false.");if("bar"===e.chart.type&&e.plotOptions.bar.horizontal){if(e.yaxis.length>1)throw new Error("Multiple Y Axis for bars are not supported. Switch to column chart by setting plotOptions.bar.horizontal=false");e.yaxis[0].reversed&&(e.yaxis[0].opposite=!0),e.xaxis.tooltip.enabled=!1,e.yaxis[0].tooltip.enabled=!1,e.chart.zoom.enabled=!1}return"bar"!==e.chart.type&&"rangeBar"!==e.chart.type||e.tooltip.shared&&"barWidth"===e.xaxis.crosshairs.width&&e.series.length>1&&(e.xaxis.crosshairs.width="tickWidth"),"candlestick"!==e.chart.type&&"boxPlot"!==e.chart.type||e.yaxis[0].reversed&&(console.warn("Reversed y-axis in ".concat(e.chart.type," chart is not supported.")),e.yaxis[0].reversed=!1),e}}]),t}(),N=function(){function t(){o(this,t)}return c(t,[{key:"initGlobalVars",value:function(t){t.series=[],t.seriesCandleO=[],t.seriesCandleH=[],t.seriesCandleM=[],t.seriesCandleL=[],t.seriesCandleC=[],t.seriesRangeStart=[],t.seriesRangeEnd=[],t.seriesRange=[],t.seriesPercent=[],t.seriesGoals=[],t.seriesX=[],t.seriesZ=[],t.seriesNames=[],t.seriesTotals=[],t.seriesLog=[],t.seriesColors=[],t.stackedSeriesTotals=[],t.seriesXvalues=[],t.seriesYvalues=[],t.labels=[],t.hasGroups=!1,t.groups=[],t.categoryLabels=[],t.timescaleLabels=[],t.noLabelsProvided=!1,t.resizeTimer=null,t.selectionResizeTimer=null,t.delayedElements=[],t.pointsArray=[],t.dataLabelsRects=[],t.isXNumeric=!1,t.xaxisLabelsCount=0,t.skipLastTimelinelabel=!1,t.skipFirstTimelinelabel=!1,t.isDataXYZ=!1,t.isMultiLineX=!1,t.isMultipleYAxis=!1,t.maxY=-Number.MAX_VALUE,t.minY=Number.MIN_VALUE,t.minYArr=[],t.maxYArr=[],t.maxX=-Number.MAX_VALUE,t.minX=Number.MAX_VALUE,t.initialMaxX=-Number.MAX_VALUE,t.initialMinX=Number.MAX_VALUE,t.maxDate=0,t.minDate=Number.MAX_VALUE,t.minZ=Number.MAX_VALUE,t.maxZ=-Number.MAX_VALUE,t.minXDiff=Number.MAX_VALUE,t.yAxisScale=[],t.xAxisScale=null,t.xAxisTicksPositions=[],t.yLabelsCoords=[],t.yTitleCoords=[],t.barPadForNumericAxis=0,t.padHorizontal=0,t.xRange=0,t.yRange=[],t.zRange=0,t.dataPoints=0,t.xTickAmount=0}},{key:"globalVars",value:function(t){return{chartID:null,cuid:null,events:{beforeMount:[],mounted:[],updated:[],clicked:[],selection:[],dataPointSelection:[],zoomed:[],scrolled:[]},colors:[],clientX:null,clientY:null,fill:{colors:[]},stroke:{colors:[]},dataLabels:{style:{colors:[]}},radarPolygons:{fill:{colors:[]}},markers:{colors:[],size:t.markers.size,largestSize:0},animationEnded:!1,isTouchDevice:"ontouchstart"in window||navigator.msMaxTouchPoints,isDirty:!1,isExecCalled:!1,initialConfig:null,initialSeries:[],lastXAxis:[],lastYAxis:[],columnSeries:null,labels:[],timescaleLabels:[],noLabelsProvided:!1,allSeriesCollapsed:!1,collapsedSeries:[],collapsedSeriesIndices:[],ancillaryCollapsedSeries:[],ancillaryCollapsedSeriesIndices:[],risingSeries:[],dataFormatXNumeric:!1,capturedSeriesIndex:-1,capturedDataPointIndex:-1,selectedDataPoints:[],goldenPadding:35,invalidLogScale:!1,ignoreYAxisIndexes:[],yAxisSameScaleIndices:[],maxValsInArrayIndex:0,radialSize:0,selection:void 0,zoomEnabled:"zoom"===t.chart.toolbar.autoSelected&&t.chart.toolbar.tools.zoom&&t.chart.zoom.enabled,panEnabled:"pan"===t.chart.toolbar.autoSelected&&t.chart.toolbar.tools.pan,selectionEnabled:"selection"===t.chart.toolbar.autoSelected&&t.chart.toolbar.tools.selection,yaxis:null,mousedown:!1,lastClientPosition:{},visibleXRange:void 0,yValueDecimal:0,total:0,SVGNS:"http://www.w3.org/2000/svg",svgWidth:0,svgHeight:0,noData:!1,locale:{},dom:{},memory:{methodsToExec:[]},shouldAnimate:!0,skipLastTimelinelabel:!1,skipFirstTimelinelabel:!1,delayedElements:[],axisCharts:!0,isDataXYZ:!1,resized:!1,resizeTimer:null,comboCharts:!1,dataChanged:!1,previousPaths:[],allSeriesHasEqualX:!0,pointsArray:[],dataLabelsRects:[],lastDrawnDataLabelsIndexes:[],hasNullValues:!1,easing:null,zoomed:!1,gridWidth:0,gridHeight:0,rotateXLabels:!1,defaultLabels:!1,xLabelFormatter:void 0,yLabelFormatters:[],xaxisTooltipFormatter:void 0,ttKeyFormatter:void 0,ttVal:void 0,ttZFormatter:void 0,LINE_HEIGHT_RATIO:1.618,xAxisLabelsHeight:0,xAxisGroupLabelsHeight:0,xAxisLabelsWidth:0,yAxisLabelsWidth:0,scaleX:1,scaleY:1,translateX:0,translateY:0,translateYAxisX:[],yAxisWidths:[],translateXAxisY:0,translateXAxisX:0,tooltip:null}}},{key:"init",value:function(t){var e=this.globalVars(t);return this.initGlobalVars(e),e.initialConfig=b.extend({},t),e.initialSeries=b.clone(t.series),e.lastXAxis=b.clone(e.initialConfig.xaxis),e.lastYAxis=b.clone(e.initialConfig.yaxis),e}}]),t}(),$=function(){function t(e){o(this,t),this.opts=e}return c(t,[{key:"init",value:function(){var t=new z(this.opts).init({responsiveOverride:!1});return{config:t,globals:(new N).init(t)}}}]),t}(),j=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.opts=null,this.seriesIndex=0}return c(t,[{key:"clippedImgArea",value:function(t){var e=this.w,i=e.config,a=parseInt(e.globals.gridWidth,10),n=parseInt(e.globals.gridHeight,10),s=a>n?a:n,r=t.image,o=0,l=0;void 0===t.width&&void 0===t.height?void 0!==i.fill.image.width&&void 0!==i.fill.image.height?(o=i.fill.image.width+1,l=i.fill.image.height):(o=s+1,l=s):(o=t.width,l=t.height);var c=document.createElementNS(e.globals.SVGNS,"pattern");C.setAttrs(c,{id:t.patternID,patternUnits:t.patternUnits?t.patternUnits:"userSpaceOnUse",width:o+"px",height:l+"px"});var d=document.createElementNS(e.globals.SVGNS,"image");c.appendChild(d),d.setAttributeNS(window.SVG.xlink,"href",r),C.setAttrs(d,{x:0,y:0,preserveAspectRatio:"none",width:o+"px",height:l+"px"}),d.style.opacity=t.opacity,e.globals.dom.elDefs.node.appendChild(c)}},{key:"getSeriesIndex",value:function(t){var e=this.w;return("bar"===e.config.chart.type||"rangeBar"===e.config.chart.type)&&e.config.plotOptions.bar.distributed||"heatmap"===e.config.chart.type||"treemap"===e.config.chart.type?this.seriesIndex=t.seriesNumber:this.seriesIndex=t.seriesNumber%e.globals.series.length,this.seriesIndex}},{key:"fillPath",value:function(t){var e=this.w;this.opts=t;var i,a,n,s=this.w.config;this.seriesIndex=this.getSeriesIndex(t);var r=this.getFillColors()[this.seriesIndex];void 0!==e.globals.seriesColors[this.seriesIndex]&&(r=e.globals.seriesColors[this.seriesIndex]),"function"==typeof r&&(r=r({seriesIndex:this.seriesIndex,dataPointIndex:t.dataPointIndex,value:t.value,w:e}));var o=t.fillType?t.fillType:this.getFillType(this.seriesIndex),l=Array.isArray(s.fill.opacity)?s.fill.opacity[this.seriesIndex]:s.fill.opacity;t.color&&(r=t.color);var c=r;if(-1===r.indexOf("rgb")?r.length<9&&(c=b.hexToRgba(r,l)):r.indexOf("rgba")>-1&&(l=b.getOpacityFromRGBA(r)),t.opacity&&(l=t.opacity),"pattern"===o&&(a=this.handlePatternFill({fillConfig:t.fillConfig,patternFill:a,fillColor:r,fillOpacity:l,defaultColor:c})),"gradient"===o&&(n=this.handleGradientFill({fillConfig:t.fillConfig,fillColor:r,fillOpacity:l,i:this.seriesIndex})),"image"===o){var d=s.fill.image.src,h=t.patternID?t.patternID:"";this.clippedImgArea({opacity:l,image:Array.isArray(d)?t.seriesNumber-1&&(p=b.getOpacityFromRGBA(u));var f=void 0===r.gradient.opacityTo?i:Array.isArray(r.gradient.opacityTo)?r.gradient.opacityTo[n]:r.gradient.opacityTo;if(void 0===r.gradient.gradientToColors||0===r.gradient.gradientToColors.length)o="dark"===r.gradient.shade?d.shadeColor(-1*parseFloat(r.gradient.shadeIntensity),e.indexOf("rgb")>-1?b.rgb2hex(e):e):d.shadeColor(parseFloat(r.gradient.shadeIntensity),e.indexOf("rgb")>-1?b.rgb2hex(e):e);else if(r.gradient.gradientToColors[l.seriesNumber]){var g=r.gradient.gradientToColors[l.seriesNumber];o=g,g.indexOf("rgba")>-1&&(f=b.getOpacityFromRGBA(g))}else o=e;if(r.gradient.gradientFrom&&(u=r.gradient.gradientFrom),r.gradient.gradientTo&&(o=r.gradient.gradientTo),r.gradient.inverseColors){var v=u;u=o,o=v}return u.indexOf("rgb")>-1&&(u=b.rgb2hex(u)),o.indexOf("rgb")>-1&&(o=b.rgb2hex(o)),c.drawGradient(h,u,o,p,f,l.size,r.gradient.stops,r.gradient.colorStops,n)}}]),t}(),H=function(){function t(e,i){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"setGlobalMarkerSize",value:function(){var t=this.w;if(t.globals.markers.size=Array.isArray(t.config.markers.size)?t.config.markers.size:[t.config.markers.size],t.globals.markers.size.length>0){if(t.globals.markers.size.length4&&void 0!==arguments[4]&&arguments[4],r=this.w,o=e,l=t,c=null,d=new C(this.ctx),h=r.config.markers.discrete&&r.config.markers.discrete.length;if((r.globals.markers.size[e]>0||s||h)&&(c=d.group({class:s||h?"":"apexcharts-series-markers"})).attr("clip-path","url(#gridRectMarkerMask".concat(r.globals.cuid,")")),Array.isArray(l.x))for(var u=0;u0:r.config.markers.size>0)||s||h){b.isNumber(l.y[u])?f+=" w".concat(b.randomId()):f="apexcharts-nullpoint";var g=this.getMarkerConfig({cssClass:f,seriesIndex:e,dataPointIndex:p});r.config.series[o].data[p]&&(r.config.series[o].data[p].fillColor&&(g.pointFillColor=r.config.series[o].data[p].fillColor),r.config.series[o].data[p].strokeColor&&(g.pointStrokeColor=r.config.series[o].data[p].strokeColor)),a&&(g.pSize=a),(n=d.drawMarker(l.x[u],l.y[u],g)).attr("rel",p),n.attr("j",p),n.attr("index",e),n.node.setAttribute("default-marker-size",g.pSize),new w(this.ctx).setSelectionFilter(n,e,p),this.addEvents(n),c&&c.add(n)}else void 0===r.globals.pointsArray[e]&&(r.globals.pointsArray[e]=[]),r.globals.pointsArray[e].push([l.x[u],l.y[u]])}return c}},{key:"getMarkerConfig",value:function(t){var e=t.cssClass,i=t.seriesIndex,a=t.dataPointIndex,n=void 0===a?null:a,s=t.finishRadius,r=void 0===s?null:s,o=this.w,l=this.getMarkerStyle(i),c=o.globals.markers.size[i],d=o.config.markers;return null!==n&&d.discrete.length&&d.discrete.map((function(t){t.seriesIndex===i&&t.dataPointIndex===n&&(l.pointStrokeColor=t.strokeColor,l.pointFillColor=t.fillColor,c=t.size,l.pointShape=t.shape)})),{pSize:null===r?c:r,pRadius:d.radius,width:Array.isArray(d.width)?d.width[i]:d.width,height:Array.isArray(d.height)?d.height[i]:d.height,pointStrokeWidth:Array.isArray(d.strokeWidth)?d.strokeWidth[i]:d.strokeWidth,pointStrokeColor:l.pointStrokeColor,pointFillColor:l.pointFillColor,shape:l.pointShape||(Array.isArray(d.shape)?d.shape[i]:d.shape),class:e,pointStrokeOpacity:Array.isArray(d.strokeOpacity)?d.strokeOpacity[i]:d.strokeOpacity,pointStrokeDashArray:Array.isArray(d.strokeDashArray)?d.strokeDashArray[i]:d.strokeDashArray,pointFillOpacity:Array.isArray(d.fillOpacity)?d.fillOpacity[i]:d.fillOpacity,seriesIndex:i}}},{key:"addEvents",value:function(t){var e=this.w,i=new C(this.ctx);t.node.addEventListener("mouseenter",i.pathMouseEnter.bind(this.ctx,t)),t.node.addEventListener("mouseleave",i.pathMouseLeave.bind(this.ctx,t)),t.node.addEventListener("mousedown",i.pathMouseDown.bind(this.ctx,t)),t.node.addEventListener("click",e.config.markers.onClick),t.node.addEventListener("dblclick",e.config.markers.onDblClick),t.node.addEventListener("touchstart",i.pathMouseDown.bind(this.ctx,t),{passive:!0})}},{key:"getMarkerStyle",value:function(t){var e=this.w,i=e.globals.markers.colors,a=e.config.markers.strokeColor||e.config.markers.strokeColors;return{pointStrokeColor:Array.isArray(a)?a[t]:a,pointFillColor:Array.isArray(i)?i[t]:i}}}]),t}(),X=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.initialAnim=this.w.config.chart.animations.enabled,this.dynamicAnim=this.initialAnim&&this.w.config.chart.animations.dynamicAnimation.enabled}return c(t,[{key:"draw",value:function(t,e,i){var a=this.w,n=new C(this.ctx),s=i.realIndex,r=i.pointsPos,o=i.zRatio,l=i.elParent,c=n.group({class:"apexcharts-series-markers apexcharts-series-".concat(a.config.chart.type)});if(c.attr("clip-path","url(#gridRectMarkerMask".concat(a.globals.cuid,")")),Array.isArray(r.x))for(var d=0;dg.maxBubbleRadius&&(f=g.maxBubbleRadius)}a.config.chart.animations.enabled||(p=f);var v=r.x[d],m=r.y[d];if(p=p||0,null!==m&&void 0!==a.globals.series[s][h]||(u=!1),u){var x=this.drawPoint(v,m,p,f,s,h,e);c.add(x)}l.add(c)}}},{key:"drawPoint",value:function(t,e,i,a,n,s,r){var o=this.w,l=n,c=new y(this.ctx),d=new w(this.ctx),h=new j(this.ctx),u=new H(this.ctx),p=new C(this.ctx),f=u.getMarkerConfig({cssClass:"apexcharts-marker",seriesIndex:l,dataPointIndex:s,finishRadius:"bubble"===o.config.chart.type||o.globals.comboCharts&&o.config.series[n]&&"bubble"===o.config.series[n].type?a:null});a=f.pSize;var g,v=h.fillPath({seriesNumber:n,dataPointIndex:s,color:f.pointFillColor,patternUnits:"objectBoundingBox",value:o.globals.series[n][r]});if("circle"===f.shape?g=p.drawCircle(i):"square"!==f.shape&&"rect"!==f.shape||(g=p.drawRect(0,0,f.width-f.pointStrokeWidth/2,f.height-f.pointStrokeWidth/2,f.pRadius)),o.config.series[l].data[s]&&o.config.series[l].data[s].fillColor&&(v=o.config.series[l].data[s].fillColor),g.attr({x:t-f.width/2-f.pointStrokeWidth/2,y:e-f.height/2-f.pointStrokeWidth/2,cx:t,cy:e,fill:v,"fill-opacity":f.pointFillOpacity,stroke:f.pointStrokeColor,r:a,"stroke-width":f.pointStrokeWidth,"stroke-dasharray":f.pointStrokeDashArray,"stroke-opacity":f.pointStrokeOpacity}),o.config.chart.dropShadow.enabled){var m=o.config.chart.dropShadow;d.dropShadow(g,m,n)}if(!this.initialAnim||o.globals.dataChanged||o.globals.resized)o.globals.animationEnded=!0;else{var x=o.config.chart.animations.speed;c.animateMarker(g,0,"circle"===f.shape?a:{width:f.width,height:f.height},x,o.globals.easing,(function(){window.setTimeout((function(){c.animationCompleted(g)}),100)}))}if(o.globals.dataChanged&&"circle"===f.shape)if(this.dynamicAnim){var b,S,k,A,P=o.config.chart.animations.dynamicAnimation.speed;null!=(A=o.globals.previousPaths[n]&&o.globals.previousPaths[n][r])&&(b=A.x,S=A.y,k=void 0!==A.r?A.r:a);for(var E=0;Eo.globals.gridHeight+h&&(e=o.globals.gridHeight+h/2),void 0===o.globals.dataLabelsRects[a]&&(o.globals.dataLabelsRects[a]=[]),o.globals.dataLabelsRects[a].push({x:t,y:e,width:d,height:h});var u=o.globals.dataLabelsRects[a].length-2,p=void 0!==o.globals.lastDrawnDataLabelsIndexes[a]?o.globals.lastDrawnDataLabelsIndexes[a][o.globals.lastDrawnDataLabelsIndexes[a].length-1]:0;if(void 0!==o.globals.dataLabelsRects[a][u]){var f=o.globals.dataLabelsRects[a][p];(t>f.x+f.width+2||e>f.y+f.height+2||t+de.globals.gridWidth+g.textRects.width+10)&&(o="");var v=e.globals.dataLabels.style.colors[s];(("bar"===e.config.chart.type||"rangeBar"===e.config.chart.type)&&e.config.plotOptions.bar.distributed||e.config.dataLabels.distributed)&&(v=e.globals.dataLabels.style.colors[r]),"function"==typeof v&&(v=v({series:e.globals.series,seriesIndex:s,dataPointIndex:r,w:e})),u&&(v=u);var m=h.offsetX,x=h.offsetY;if("bar"!==e.config.chart.type&&"rangeBar"!==e.config.chart.type||(m=0,x=0),g.drawnextLabel){var b=i.drawText({width:100,height:parseInt(h.style.fontSize,10),x:a+m,y:n+x,foreColor:v,textAnchor:l||h.textAnchor,text:o,fontSize:c||h.style.fontSize,fontFamily:h.style.fontFamily,fontWeight:h.style.fontWeight||"normal"});if(b.attr({class:"apexcharts-datalabel",cx:a,cy:n}),h.dropShadow.enabled){var y=h.dropShadow;new w(this.ctx).dropShadow(b,y)}d.add(b),void 0===e.globals.lastDrawnDataLabelsIndexes[s]&&(e.globals.lastDrawnDataLabelsIndexes[s]=[]),e.globals.lastDrawnDataLabelsIndexes[s].push(r)}}}},{key:"addBackgroundToDataLabel",value:function(t,e){var i=this.w,a=i.config.dataLabels.background,n=a.padding,s=a.padding/2,r=e.width,o=e.height,l=new C(this.ctx).drawRect(e.x-n,e.y-s/2,r+2*n,o+s,a.borderRadius,"transparent"===i.config.chart.background?"#fff":i.config.chart.background,a.opacity,a.borderWidth,a.borderColor);return a.dropShadow.enabled&&new w(this.ctx).dropShadow(l,a.dropShadow),l}},{key:"dataLabelsBackground",value:function(){var t=this.w;if("bubble"!==t.config.chart.type)for(var e=t.globals.dom.baseEl.querySelectorAll(".apexcharts-datalabels text"),i=0;i0&&void 0!==arguments[0])||arguments[0],e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=this.w,n=b.clone(a.globals.initialSeries);a.globals.previousPaths=[],i?(a.globals.collapsedSeries=[],a.globals.ancillaryCollapsedSeries=[],a.globals.collapsedSeriesIndices=[],a.globals.ancillaryCollapsedSeriesIndices=[]):n=this.emptyCollapsedSeries(n),a.config.series=n,t&&(e&&(a.globals.zoomed=!1,this.ctx.updateHelpers.revertDefaultAxisMinMax()),this.ctx.updateHelpers._updateSeries(n,a.config.chart.animations.dynamicAnimation.enabled))}},{key:"emptyCollapsedSeries",value:function(t){for(var e=this.w,i=0;i-1&&(t[i].data=[]);return t}},{key:"toggleSeriesOnHover",value:function(t,e){var i=this.w;e||(e=t.target);var a=i.globals.dom.baseEl.querySelectorAll(".apexcharts-series, .apexcharts-datalabels");if("mousemove"===t.type){var n=parseInt(e.getAttribute("rel"),10)-1,s=null,r=null;i.globals.axisCharts||"radialBar"===i.config.chart.type?i.globals.axisCharts?(s=i.globals.dom.baseEl.querySelector(".apexcharts-series[data\\:realIndex='".concat(n,"']")),r=i.globals.dom.baseEl.querySelector(".apexcharts-datalabels[data\\:realIndex='".concat(n,"']"))):s=i.globals.dom.baseEl.querySelector(".apexcharts-series[rel='".concat(n+1,"']")):s=i.globals.dom.baseEl.querySelector(".apexcharts-series[rel='".concat(n+1,"'] path"));for(var o=0;o=t.from&&a<=t.to&&n[e].classList.remove(i.legendInactiveClass)}}(a.config.plotOptions.heatmap.colorScale.ranges[r])}else"mouseout"===t.type&&s("remove")}},{key:"getActiveConfigSeriesIndex",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"asc",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=this.w,a=0;if(i.config.series.length>1)for(var n=i.config.series.map((function(t,a){return t.data&&t.data.length>0&&-1===i.globals.collapsedSeriesIndices.indexOf(a)&&(!i.globals.comboCharts||0===e.length||e.length&&e.indexOf(i.config.series[a].type)>-1)?a:-1})),s="asc"===t?0:n.length-1;"asc"===t?s=0;"asc"===t?s++:s--)if(-1!==n[s]){a=n[s];break}return a}},{key:"getBarSeriesIndices",value:function(){return this.w.globals.comboCharts?this.w.config.series.map((function(t,e){return"bar"===t.type||"column"===t.type?e:-1})).filter((function(t){return-1!==t})):this.w.config.series.map((function(t,e){return e}))}},{key:"getPreviousPaths",value:function(){var t=this.w;function e(e,i,a){for(var n=e[i].childNodes,s={type:a,paths:[],realIndex:e[i].getAttribute("data:realIndex")},r=0;r0)for(var a=function(e){for(var i=t.globals.dom.baseEl.querySelectorAll(".apexcharts-".concat(t.config.chart.type," .apexcharts-series[data\\:realIndex='").concat(e,"'] rect")),a=[],n=function(t){var e=function(e){return i[t].getAttribute(e)},n={x:parseFloat(e("x")),y:parseFloat(e("y")),width:parseFloat(e("width")),height:parseFloat(e("height"))};a.push({rect:n,color:i[t].getAttribute("color")})},s=0;s0)for(var a=0;a0?t:[]}))}}]),t}(),Y=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.twoDSeries=[],this.threeDSeries=[],this.twoDSeriesX=[],this.seriesGoals=[],this.coreUtils=new S(this.ctx)}return c(t,[{key:"isMultiFormat",value:function(){return this.isFormatXY()||this.isFormat2DArray()}},{key:"isFormatXY",value:function(){var t=this.w.config.series.slice(),e=new F(this.ctx);if(this.activeSeriesIndex=e.getActiveConfigSeriesIndex(),void 0!==t[this.activeSeriesIndex].data&&t[this.activeSeriesIndex].data.length>0&&null!==t[this.activeSeriesIndex].data[0]&&void 0!==t[this.activeSeriesIndex].data[0].x&&null!==t[this.activeSeriesIndex].data[0])return!0}},{key:"isFormat2DArray",value:function(){var t=this.w.config.series.slice(),e=new F(this.ctx);if(this.activeSeriesIndex=e.getActiveConfigSeriesIndex(),void 0!==t[this.activeSeriesIndex].data&&t[this.activeSeriesIndex].data.length>0&&void 0!==t[this.activeSeriesIndex].data[0]&&null!==t[this.activeSeriesIndex].data[0]&&t[this.activeSeriesIndex].data[0].constructor===Array)return!0}},{key:"handleFormat2DArray",value:function(t,e){for(var i=this.w.config,a=this.w.globals,n="boxPlot"===i.chart.type||"boxPlot"===i.series[e].type,s=0;s=5?this.twoDSeries.push(b.parseNumber(t[e].data[s][4])):this.twoDSeries.push(b.parseNumber(t[e].data[s][1])),a.dataFormatXNumeric=!0),"datetime"===i.xaxis.type){var r=new Date(t[e].data[s][0]);r=new Date(r).getTime(),this.twoDSeriesX.push(r)}else this.twoDSeriesX.push(t[e].data[s][0]);for(var o=0;o-1&&(s=this.activeSeriesIndex);for(var r=0;r1&&void 0!==arguments[1]?arguments[1]:this.ctx,a=this.w.config,n=this.w.globals,s=new L(i),r=a.labels.length>0?a.labels.slice():a.xaxis.categories.slice();n.isRangeBar="rangeBar"===a.chart.type&&n.isBarHorizontal,n.hasGroups="category"===a.xaxis.type&&a.xaxis.group.groups.length>0,n.hasGroups&&(n.groups=a.xaxis.group.groups);for(var o=function(){for(var t=0;t0&&(this.twoDSeriesX=r,n.seriesX.push(this.twoDSeriesX))),n.labels.push(this.twoDSeriesX);var c=t[l].data.map((function(t){return b.parseNumber(t)}));n.series.push(c)}n.seriesZ.push(this.threeDSeries),void 0!==t[l].name?n.seriesNames.push(t[l].name):n.seriesNames.push("series-"+parseInt(l+1,10)),void 0!==t[l].color?n.seriesColors.push(t[l].color):n.seriesColors.push(void 0)}return this.w}},{key:"parseDataNonAxisCharts",value:function(t){var e=this.w.globals,i=this.w.config;e.series=t.slice(),e.seriesNames=i.labels.slice();for(var a=0;a0?i.labels=e.xaxis.categories:e.labels.length>0?i.labels=e.labels.slice():this.fallbackToCategory?(i.labels=i.labels[0],i.seriesRange.length&&(i.seriesRange.map((function(t){t.forEach((function(t){i.labels.indexOf(t.x)<0&&t.x&&i.labels.push(t.x)}))})),i.labels=i.labels.filter((function(t,e,i){return i.indexOf(t)===e}))),e.xaxis.convertedCatToNumeric&&(new D(e).convertCatToNumericXaxis(e,this.ctx,i.seriesX[0]),this._generateExternalLabels(t))):this._generateExternalLabels(t)}},{key:"_generateExternalLabels",value:function(t){var e=this.w.globals,i=this.w.config,a=[];if(e.axisCharts){if(e.series.length>0)if(this.isFormatXY())for(var n=i.series.map((function(t,e){return t.data.filter((function(t,e,i){return i.findIndex((function(e){return e.x===t.x}))===e}))})),s=n.reduce((function(t,e,i,a){return a[t].length>e.length?t:i}),0),r=0;r0&&i<100?t.toFixed(1):t.toFixed(0)}return e.globals.isBarHorizontal&&e.globals.maxY-e.globals.minYArr<4?t.toFixed(1):t.toFixed(0)}return t},"function"==typeof e.config.tooltip.x.formatter?e.globals.ttKeyFormatter=e.config.tooltip.x.formatter:e.globals.ttKeyFormatter=e.globals.xLabelFormatter,"function"==typeof e.config.xaxis.tooltip.formatter&&(e.globals.xaxisTooltipFormatter=e.config.xaxis.tooltip.formatter),(Array.isArray(e.config.tooltip.y)||void 0!==e.config.tooltip.y.formatter)&&(e.globals.ttVal=e.config.tooltip.y),void 0!==e.config.tooltip.z.formatter&&(e.globals.ttZFormatter=e.config.tooltip.z.formatter),void 0!==e.config.legend.formatter&&(e.globals.legendFormatter=e.config.legend.formatter),e.config.yaxis.forEach((function(i,a){void 0!==i.labels.formatter?e.globals.yLabelFormatters[a]=i.labels.formatter:e.globals.yLabelFormatters[a]=function(n){return e.globals.xyCharts?Array.isArray(n)?n.map((function(e){return t.defaultYFormatter(e,i,a)})):t.defaultYFormatter(n,i,a):n}})),e.globals}},{key:"heatmapLabelFormatters",value:function(){var t=this.w;if("heatmap"===t.config.chart.type){t.globals.yAxisScale[0].result=t.globals.seriesNames.slice();var e=t.globals.seriesNames.reduce((function(t,e){return t.length>e.length?t:e}),0);t.globals.yAxisScale[0].niceMax=e,t.globals.yAxisScale[0].niceMin=e}}}]),t}(),W=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"getLabel",value:function(t,e,i,a){var n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[],s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"12px",r=!(arguments.length>6&&void 0!==arguments[6])||arguments[6],o=this.w,l=void 0===t[a]?"":t[a],c=l,d=o.globals.xLabelFormatter,h=o.config.xaxis.labels.formatter,u=!1,p=new B(this.ctx),f=l;r&&(c=p.xLabelFormat(d,l,f,{i:a,dateFormatter:new L(this.ctx).formatDate,w:o}),void 0!==h&&(c=h(l,t[a],{i:a,dateFormatter:new L(this.ctx).formatDate,w:o})));var g=function(t){var i=null;return e.forEach((function(t){"month"===t.unit?i="year":"day"===t.unit?i="month":"hour"===t.unit?i="day":"minute"===t.unit&&(i="hour")})),i===t};e.length>0?(u=g(e[a].unit),i=e[a].position,c=e[a].value):"datetime"===o.config.xaxis.type&&void 0===h&&(c=""),void 0===c&&(c=""),c=Array.isArray(c)?c:c.toString();var v=new C(this.ctx),m={};m=o.globals.rotateXLabels&&r?v.getTextRects(c,parseInt(s,10),null,"rotate(".concat(o.config.xaxis.labels.rotate," 0 0)"),!1):v.getTextRects(c,parseInt(s,10));var x=!o.config.xaxis.labels.showDuplicates&&this.ctx.timeScale;return!Array.isArray(c)&&(0===c.indexOf("NaN")||0===c.toLowerCase().indexOf("invalid")||c.toLowerCase().indexOf("infinity")>=0||n.indexOf(c)>=0&&x)&&(c=""),{x:i,text:c,textRect:m,isBold:u}}},{key:"checkLabelBasedOnTickamount",value:function(t,e,i){var a=this.w,n=a.config.xaxis.tickAmount;return"dataPoints"===n&&(n=Math.round(a.globals.gridWidth/120)),n>i||t%Math.round(i/(n+1))==0||(e.text=""),e}},{key:"checkForOverflowingLabels",value:function(t,e,i,a,n){var s=this.w;if(0===t&&s.globals.skipFirstTimelinelabel&&(e.text=""),t===i-1&&s.globals.skipLastTimelinelabel&&(e.text=""),s.config.xaxis.labels.hideOverlappingLabels&&a.length>0){var r=n[n.length-1];e.x0){!0===o.config.yaxis[n].opposite&&(t+=a.width);for(var d=e;d>=0;d--){var h=c+e/10+o.config.yaxis[n].labels.offsetY-1;o.globals.isBarHorizontal&&(h=s*d),"heatmap"===o.config.chart.type&&(h+=s/2);var u=l.drawLine(t+i.offsetX-a.width+a.offsetX,h+a.offsetY,t+i.offsetX+a.offsetX,h+a.offsetY,a.color);r.add(u),c+=s}}}}]),t}(),V=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"scaleSvgNode",value:function(t,e){var i=parseFloat(t.getAttributeNS(null,"width")),a=parseFloat(t.getAttributeNS(null,"height"));t.setAttributeNS(null,"width",i*e),t.setAttributeNS(null,"height",a*e),t.setAttributeNS(null,"viewBox","0 0 "+i+" "+a)}},{key:"fixSvgStringForIe11",value:function(t){if(!b.isIE11())return t.replace(/ /g," ");var e=0,i=t.replace(/xmlns="http:\/\/www.w3.org\/2000\/svg"/g,(function(t){return 2==++e?'xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.dev"':t}));return(i=i.replace(/xmlns:NS\d+=""/g,"")).replace(/NS\d+:(\w+:\w+=")/g,"$1")}},{key:"getSvgString",value:function(t){null==t&&(t=1);var e=this.w.globals.dom.Paper.svg();if(1!==t){var i=this.w.globals.dom.Paper.node.cloneNode(!0);this.scaleSvgNode(i,t),e=(new XMLSerializer).serializeToString(i)}return this.fixSvgStringForIe11(e)}},{key:"cleanup",value:function(){var t=this.w,e=t.globals.dom.baseEl.getElementsByClassName("apexcharts-xcrosshairs"),i=t.globals.dom.baseEl.getElementsByClassName("apexcharts-ycrosshairs"),a=t.globals.dom.baseEl.querySelectorAll(".apexcharts-zoom-rect, .apexcharts-selection-rect");Array.prototype.forEach.call(a,(function(t){t.setAttribute("width",0)})),e&&e[0]&&(e[0].setAttribute("x",-500),e[0].setAttribute("x1",-500),e[0].setAttribute("x2",-500)),i&&i[0]&&(i[0].setAttribute("y",-100),i[0].setAttribute("y1",-100),i[0].setAttribute("y2",-100))}},{key:"svgUrl",value:function(){this.cleanup();var t=this.getSvgString(),e=new Blob([t],{type:"image/svg+xml;charset=utf-8"});return URL.createObjectURL(e)}},{key:"dataURI",value:function(t){var e=this;return new Promise((function(i){var a=e.w,n=t?t.scale||t.width/a.globals.svgWidth:1;e.cleanup();var s=document.createElement("canvas");s.width=a.globals.svgWidth*n,s.height=parseInt(a.globals.dom.elWrap.style.height,10)*n;var r="transparent"===a.config.chart.background?"#fff":a.config.chart.background,o=s.getContext("2d");o.fillStyle=r,o.fillRect(0,0,s.width*n,s.height*n);var l=e.getSvgString(n);if(window.canvg&&b.isIE11()){var c=window.canvg.Canvg.fromString(o,l,{ignoreClear:!0,ignoreDimensions:!0});c.start();var d=s.msToBlob();c.stop(),i({blob:d})}else{var h="data:image/svg+xml,"+encodeURIComponent(l),u=new Image;u.crossOrigin="anonymous",u.onload=function(){if(o.drawImage(u,0,0),s.msToBlob){var t=s.msToBlob();i({blob:t})}else{var e=s.toDataURL("image/png");i({imgURI:e})}},u.src=h}}))}},{key:"exportToSVG",value:function(){this.triggerDownload(this.svgUrl(),this.w.config.chart.toolbar.export.svg.filename,".svg")}},{key:"exportToPng",value:function(){var t=this;this.dataURI().then((function(e){var i=e.imgURI,a=e.blob;a?navigator.msSaveOrOpenBlob(a,t.w.globals.chartID+".png"):t.triggerDownload(i,t.w.config.chart.toolbar.export.png.filename,".png")}))}},{key:"exportToCSV",value:function(t){var e=this,i=t.series,a=t.fileName,n=t.columnDelimiter,s=void 0===n?",":n,r=t.lineDelimiter,o=void 0===r?"\n":r,l=this.w;i||(i=l.config.series);var c=[],d=[],h="",u=l.globals.series.map((function(t,e){return-1===l.globals.collapsedSeriesIndices.indexOf(e)?t:[]})),p=Math.max.apply(Math,v(i.map((function(t){return t.data?t.data.length:0})))),f=new Y(this.ctx),g=new W(this.ctx),m=function(t){var i="";if(l.globals.axisCharts){if("category"===l.config.xaxis.type||l.config.xaxis.convertedCatToNumeric)if(l.globals.isBarHorizontal){var a=l.globals.yLabelFormatters[0],n=new F(e.ctx).getActiveConfigSeriesIndex();i=a(l.globals.labels[t],{seriesIndex:n,dataPointIndex:t,w:l})}else i=g.getLabel(l.globals.labels,l.globals.timescaleLabels,0,t).text;"datetime"===l.config.xaxis.type&&(l.config.xaxis.categories.length?i=l.config.xaxis.categories[t]:l.config.labels.length&&(i=l.config.labels[t]))}else i=l.config.labels[t];return Array.isArray(i)&&(i=i.join(" ")),b.isNumber(i)?i:i.split(s).join("")};c.push(l.config.chart.toolbar.export.csv.headerCategory),"boxPlot"===l.config.chart.type?(c.push("minimum"),c.push("q1"),c.push("median"),c.push("q3"),c.push("maximum")):"candlestick"===l.config.chart.type?(c.push("open"),c.push("high"),c.push("low"),c.push("close")):"rangeBar"===l.config.chart.type?(c.push("minimum"),c.push("maximum")):i.map((function(t,e){var i=t.name?t.name:"series-".concat(e);l.globals.axisCharts&&c.push(i.split(s).join("")?i.split(s).join(""):"series-".concat(e))})),l.globals.axisCharts||(c.push(l.config.chart.toolbar.export.csv.headerValue),d.push(c.join(s))),i.map((function(t,e){l.globals.axisCharts?function(t,e){if(c.length&&0===e&&d.push(c.join(s)),t.data){t.data=t.data.length&&t.data||v(Array(p)).map((function(){return""}));for(var a=0;a=10?l.config.chart.toolbar.export.csv.dateFormatter(n):b.isNumber(n)?n:n.split(s).join("")));for(var r=0;r0&&!a.globals.isBarHorizontal&&(this.xaxisLabels=a.globals.timescaleLabels.slice()),a.config.xaxis.overwriteCategories&&(this.xaxisLabels=a.config.xaxis.overwriteCategories),this.drawnLabels=[],this.drawnLabelsRects=[],"top"===a.config.xaxis.position?this.offY=0:this.offY=a.globals.gridHeight+1,this.offY=this.offY+a.config.xaxis.axisBorder.offsetY,this.isCategoryBarHorizontal="bar"===a.config.chart.type&&a.config.plotOptions.bar.horizontal,this.xaxisFontSize=a.config.xaxis.labels.style.fontSize,this.xaxisFontFamily=a.config.xaxis.labels.style.fontFamily,this.xaxisForeColors=a.config.xaxis.labels.style.colors,this.xaxisBorderWidth=a.config.xaxis.axisBorder.width,this.isCategoryBarHorizontal&&(this.xaxisBorderWidth=a.config.yaxis[0].axisBorder.width.toString()),this.xaxisBorderWidth.indexOf("%")>-1?this.xaxisBorderWidth=a.globals.gridWidth*parseInt(this.xaxisBorderWidth,10)/100:this.xaxisBorderWidth=parseInt(this.xaxisBorderWidth,10),this.xaxisBorderHeight=a.config.xaxis.axisBorder.height,this.yaxis=a.config.yaxis[0]}return c(t,[{key:"drawXaxis",value:function(){var t=this.w,e=new C(this.ctx),i=e.group({class:"apexcharts-xaxis",transform:"translate(".concat(t.config.xaxis.offsetX,", ").concat(t.config.xaxis.offsetY,")")}),a=e.group({class:"apexcharts-xaxis-texts-g",transform:"translate(".concat(t.globals.translateXAxisX,", ").concat(t.globals.translateXAxisY,")")});i.add(a);for(var n=[],s=0;s6&&void 0!==arguments[6]?arguments[6]:{},c=[],d=[],h=this.w,u=l.xaxisFontSize||this.xaxisFontSize,p=l.xaxisFontFamily||this.xaxisFontFamily,f=l.xaxisForeColors||this.xaxisForeColors,g=l.fontWeight||h.config.xaxis.labels.style.fontWeight,v=l.cssClass||h.config.xaxis.labels.style.cssClass,m=h.globals.padHorizontal,x=a.length,b="category"===h.config.xaxis.type?h.globals.dataPoints:x;if(0===b&&x>b&&(b=x),n){var y=b>1?b-1:b;r=h.globals.gridWidth/y,m=m+s(0,r)/2+h.config.xaxis.labels.offsetX}else r=h.globals.gridWidth/b,m=m+s(0,r)+h.config.xaxis.labels.offsetX;for(var w=function(n){var l=m-s(n,r)/2+h.config.xaxis.labels.offsetX;0===n&&1===x&&r/2===m&&1===b&&(l=h.globals.gridWidth/2);var y=o.axesUtils.getLabel(a,h.globals.timescaleLabels,l,n,c,u,t),w=28;if(h.globals.rotateXLabels&&t&&(w=22),h.config.xaxis.title.text&&"top"===h.config.xaxis.position&&(w+=parseFloat(h.config.xaxis.title.style.fontSize)+2),t||(w=w+parseFloat(u)+(h.globals.xAxisLabelsHeight-h.globals.xAxisGroupLabelsHeight)+(h.globals.rotateXLabels?10:0)),y=void 0!==h.config.xaxis.tickAmount&&"dataPoints"!==h.config.xaxis.tickAmount&&"datetime"!==h.config.xaxis.type?o.axesUtils.checkLabelBasedOnTickamount(n,y,x):o.axesUtils.checkForOverflowingLabels(n,y,x,c,d),t&&y.text&&h.globals.xaxisLabelsCount++,h.config.xaxis.labels.show){var C=e.drawText({x:y.x,y:o.offY+h.config.xaxis.labels.offsetY+w-("top"===h.config.xaxis.position?h.globals.xAxisHeight+h.config.xaxis.axisTicks.height-2:0),text:y.text,textAnchor:"middle",fontWeight:y.isBold?600:g,fontSize:u,fontFamily:p,foreColor:Array.isArray(f)?t&&h.config.xaxis.convertedCatToNumeric?f[h.globals.minX+n-1]:f[n]:f,isPlainText:!1,cssClass:(t?"apexcharts-xaxis-label ":"apexcharts-xaxis-group-label ")+v});if(i.add(C),C.on("click",(function(t){if("function"==typeof h.config.chart.events.xAxisLabelClick){var e=Object.assign({},h,{labelIndex:n});h.config.chart.events.xAxisLabelClick(t,o.ctx,e)}})),t){var S=document.createElementNS(h.globals.SVGNS,"title");S.textContent=Array.isArray(y.text)?y.text.join(" "):y.text,C.node.appendChild(S),""!==y.text&&(c.push(y.text),d.push(y))}}na.globals.gridWidth)){var s=this.offY+a.config.xaxis.axisTicks.offsetY;if(e=e+s+a.config.xaxis.axisTicks.height,"top"===a.config.xaxis.position&&(e=s-a.config.xaxis.axisTicks.height),a.config.xaxis.axisTicks.show){var r=new C(this.ctx).drawLine(t+a.config.xaxis.axisTicks.offsetX,s+a.config.xaxis.offsetY,n+a.config.xaxis.axisTicks.offsetX,e+a.config.xaxis.offsetY,a.config.xaxis.axisTicks.color);i.add(r),r.node.classList.add("apexcharts-xaxis-tick")}}}},{key:"getXAxisTicksPositions",value:function(){var t=this.w,e=[],i=this.xaxisLabels.length,a=t.globals.padHorizontal;if(t.globals.timescaleLabels.length>0)for(var n=0;n0){var c=n[n.length-1].getBBox(),d=n[0].getBBox();c.x<-20&&n[n.length-1].parentNode.removeChild(n[n.length-1]),d.x+d.width>t.globals.gridWidth&&!t.globals.isBarHorizontal&&n[0].parentNode.removeChild(n[0]);for(var h=0;h0&&(this.xaxisLabels=i.globals.timescaleLabels.slice())}return c(t,[{key:"drawGridArea",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,e=this.w,i=new C(this.ctx);null===t&&(t=i.group({class:"apexcharts-grid"}));var a=i.drawLine(e.globals.padHorizontal,1,e.globals.padHorizontal,e.globals.gridHeight,"transparent"),n=i.drawLine(e.globals.padHorizontal,e.globals.gridHeight,e.globals.gridWidth,e.globals.gridHeight,"transparent");return t.add(n),t.add(a),t}},{key:"drawGrid",value:function(){var t=null;return this.w.globals.axisCharts&&(t=this.renderGrid(),this.drawGridArea(t.el)),t}},{key:"createGridMask",value:function(){var t=this.w,e=t.globals,i=new C(this.ctx),a=Array.isArray(t.config.stroke.width)?0:t.config.stroke.width;if(Array.isArray(t.config.stroke.width)){var n=0;t.config.stroke.width.forEach((function(t){n=Math.max(n,t)})),a=n}e.dom.elGridRectMask=document.createElementNS(e.SVGNS,"clipPath"),e.dom.elGridRectMask.setAttribute("id","gridRectMask".concat(e.cuid)),e.dom.elGridRectMarkerMask=document.createElementNS(e.SVGNS,"clipPath"),e.dom.elGridRectMarkerMask.setAttribute("id","gridRectMarkerMask".concat(e.cuid)),e.dom.elForecastMask=document.createElementNS(e.SVGNS,"clipPath"),e.dom.elForecastMask.setAttribute("id","forecastMask".concat(e.cuid)),e.dom.elNonForecastMask=document.createElementNS(e.SVGNS,"clipPath"),e.dom.elNonForecastMask.setAttribute("id","nonForecastMask".concat(e.cuid));var s=t.config.chart.type,r=0,o=0;("bar"===s||"rangeBar"===s||"candlestick"===s||"boxPlot"===s||t.globals.comboBarCount>0)&&t.globals.isXNumeric&&!t.globals.isBarHorizontal&&(r=t.config.grid.padding.left,o=t.config.grid.padding.right,e.barPadForNumericAxis>r&&(r=e.barPadForNumericAxis,o=e.barPadForNumericAxis)),e.dom.elGridRect=i.drawRect(-a/2-r-2,-a/2,e.gridWidth+a+o+r+4,e.gridHeight+a,0,"#fff");var l=t.globals.markers.largestSize+1;e.dom.elGridRectMarker=i.drawRect(2*-l,2*-l,e.gridWidth+4*l,e.gridHeight+4*l,0,"#fff"),e.dom.elGridRectMask.appendChild(e.dom.elGridRect.node),e.dom.elGridRectMarkerMask.appendChild(e.dom.elGridRectMarker.node);var c=e.dom.baseEl.querySelector("defs");c.appendChild(e.dom.elGridRectMask),c.appendChild(e.dom.elForecastMask),c.appendChild(e.dom.elNonForecastMask),c.appendChild(e.dom.elGridRectMarkerMask)}},{key:"_drawGridLines",value:function(t){var e=t.i,i=t.x1,a=t.y1,n=t.x2,s=t.y2,r=t.xCount,o=t.parent,l=this.w;if(!(0===e&&l.globals.skipFirstTimelinelabel||e===r-1&&l.globals.skipLastTimelinelabel&&!l.config.xaxis.labels.formatter||"radar"===l.config.chart.type)){l.config.grid.xaxis.lines.show&&this._drawGridLine({i:e,x1:i,y1:a,x2:n,y2:s,xCount:r,parent:o});var c=0;if(l.globals.hasGroups&&"between"===l.config.xaxis.tickPlacement){var d=l.globals.groups;if(d){for(var h=0,u=0;h2));n++);return!t.globals.isBarHorizontal||this.isRangeBar?(i=this.xaxisLabels.length,this.isRangeBar&&(a=t.globals.labels.length,t.config.xaxis.tickAmount&&t.config.xaxis.labels.formatter&&(i=t.config.xaxis.tickAmount)),this._drawXYLines({xCount:i,tickAmount:a})):(i=a,a=t.globals.xTickAmount,this._drawInvertedXYLines({xCount:i,tickAmount:a})),this.drawGridBands(i,a),{el:this.elg,elGridBorders:this.elGridBorders,xAxisTickWidth:t.globals.gridWidth/i}}},{key:"drawGridBands",value:function(t,e){var i=this.w;if(void 0!==i.config.grid.row.colors&&i.config.grid.row.colors.length>0)for(var a=0,n=i.globals.gridHeight/e,s=i.globals.gridWidth,r=0,o=0;r=i.config.grid.row.colors.length&&(o=0),this._drawGridBandRect({c:o,x1:0,y1:a,x2:s,y2:n,type:"row"}),a+=i.globals.gridHeight/e;if(void 0!==i.config.grid.column.colors&&i.config.grid.column.colors.length>0)for(var l=i.globals.isBarHorizontal||"category"!==i.config.xaxis.type&&!i.config.xaxis.convertedCatToNumeric?t:t-1,c=i.globals.padHorizontal,d=i.globals.padHorizontal+i.globals.gridWidth/l,h=i.globals.gridHeight,u=0,p=0;u=i.config.grid.column.colors.length&&(p=0),this._drawGridBandRect({c:p,x1:c,y1:0,x2:d,y2:h,type:"column"}),c+=i.globals.gridWidth/l}}]),t}(),q=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"niceScale",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,n=arguments.length>4?arguments[4]:void 0,s=this.w,r=Math.abs(e-t);if("dataPoints"===(i=this._adjustTicksForSmallRange(i,a,r))&&(i=s.globals.dataPoints-1),t===Number.MIN_VALUE&&0===e||!b.isNumber(t)&&!b.isNumber(e)||t===Number.MIN_VALUE&&e===-Number.MAX_VALUE)return t=0,e=i,this.linearScale(t,e,i);t>e?(console.warn("axis.min cannot be greater than axis.max"),e=t+.1):t===e&&(t=0===t?0:t-.5,e=0===e?2:e+.5);var o=[];r<1&&n&&("candlestick"===s.config.chart.type||"candlestick"===s.config.series[a].type||"boxPlot"===s.config.chart.type||"boxPlot"===s.config.series[a].type||s.globals.isRangeData)&&(e*=1.01);var l=i+1;l<2?l=2:l>2&&(l-=2);var c=r/l,d=Math.floor(b.log10(c)),h=Math.pow(10,d),u=Math.round(c/h);u<1&&(u=1);var p=u*h,f=p*Math.floor(t/p),g=p*Math.ceil(e/p),v=f;if(n&&r>2){for(;o.push(v),!((v+=p)>g););return{result:o,niceMin:o[0],niceMax:o[o.length-1]}}var m=t;(o=[]).push(m);for(var x=Math.abs(e-t)/i,y=0;y<=i;y++)m+=x,o.push(m);return o[o.length-2]>=e&&o.pop(),{result:o,niceMin:o[0],niceMax:o[o.length-1]}}},{key:"linearScale",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,a=arguments.length>3?arguments[3]:void 0,n=Math.abs(e-t);"dataPoints"===(i=this._adjustTicksForSmallRange(i,a,n))&&(i=this.w.globals.dataPoints-1);var s=n/i;i===Number.MAX_VALUE&&(i=10,s=1);for(var r=[],o=t;i>=0;)r.push(o),o+=s,i-=1;return{result:r,niceMin:r[0],niceMax:r[r.length-1]}}},{key:"logarithmicScaleNice",value:function(t,e,i){e<=0&&(e=Math.max(t,i)),t<=0&&(t=Math.min(e,i));for(var a=[],n=Math.ceil(Math.log(e)/Math.log(i)+1),s=Math.floor(Math.log(t)/Math.log(i));s5)a.allSeriesCollapsed=!1,a.yAxisScale[t]=this.logarithmicScale(e,i,s.logBase),a.yAxisScale[t]=s.forceNiceScale?this.logarithmicScaleNice(e,i,s.logBase):this.logarithmicScale(e,i,s.logBase);else if(i!==-Number.MAX_VALUE&&b.isNumber(i))if(a.allSeriesCollapsed=!1,void 0===s.min&&void 0===s.max||s.forceNiceScale){var o=void 0===n.yaxis[t].max&&void 0===n.yaxis[t].min||n.yaxis[t].forceNiceScale;a.yAxisScale[t]=this.niceScale(e,i,s.tickAmount?s.tickAmount:r<5&&r>1?r+1:5,t,o)}else a.yAxisScale[t]=this.linearScale(e,i,s.tickAmount,t);else a.yAxisScale[t]=this.linearScale(0,5,5)}},{key:"setXScale",value:function(t,e){var i=this.w,a=i.globals,n=i.config.xaxis,s=Math.abs(e-t);return e!==-Number.MAX_VALUE&&b.isNumber(e)?a.xAxisScale=this.linearScale(t,e,n.tickAmount?n.tickAmount:s<5&&s>1?s+1:5,0):a.xAxisScale=this.linearScale(0,5,5),a.xAxisScale}},{key:"setMultipleYScales",value:function(){var t=this,e=this.w.globals,i=this.w.config,a=e.minYArr.concat([]),n=e.maxYArr.concat([]),s=[];i.yaxis.forEach((function(e,r){var o=r;i.series.forEach((function(t,i){t.name===e.seriesName&&(o=i,r!==i?s.push({index:i,similarIndex:r,alreadyExists:!0}):s.push({index:i}))}));var l=a[o],c=n[o];t.setYScaleForIndex(r,l,c)})),this.sameScaleInMultipleAxes(a,n,s)}},{key:"sameScaleInMultipleAxes",value:function(t,e,i){var a=this,n=this.w.config,s=this.w.globals,r=[];i.forEach((function(t){t.alreadyExists&&(void 0===r[t.index]&&(r[t.index]=[]),r[t.index].push(t.index),r[t.index].push(t.similarIndex))})),s.yAxisSameScaleIndices=r,r.forEach((function(t,e){r.forEach((function(i,a){var n,s;e!==a&&(n=t,s=i,n.filter((function(t){return-1!==s.indexOf(t)}))).length>0&&(r[e]=r[e].concat(r[a]))}))}));var o=r.map((function(t){return t.filter((function(e,i){return t.indexOf(e)===i}))})).map((function(t){return t.sort()}));r=r.filter((function(t){return!!t}));var l=o.slice(),c=l.map((function(t){return JSON.stringify(t)}));l=l.filter((function(t,e){return c.indexOf(JSON.stringify(t))===e}));var d=[],h=[];t.forEach((function(t,i){l.forEach((function(a,n){a.indexOf(i)>-1&&(void 0===d[n]&&(d[n]=[],h[n]=[]),d[n].push({key:i,value:t}),h[n].push({key:i,value:e[i]}))}))}));var u=Array.apply(null,Array(l.length)).map(Number.prototype.valueOf,Number.MIN_VALUE),p=Array.apply(null,Array(l.length)).map(Number.prototype.valueOf,-Number.MAX_VALUE);d.forEach((function(t,e){t.forEach((function(t,i){u[e]=Math.min(t.value,u[e])}))})),h.forEach((function(t,e){t.forEach((function(t,i){p[e]=Math.max(t.value,p[e])}))})),t.forEach((function(t,e){h.forEach((function(t,i){var r=u[i],o=p[i];n.chart.stacked&&(o=0,t.forEach((function(t,e){t.value!==-Number.MAX_VALUE&&(o+=t.value),r!==Number.MIN_VALUE&&(r+=d[i][e].value)}))),t.forEach((function(i,l){t[l].key===e&&(void 0!==n.yaxis[e].min&&(r="function"==typeof n.yaxis[e].min?n.yaxis[e].min(s.minY):n.yaxis[e].min),void 0!==n.yaxis[e].max&&(o="function"==typeof n.yaxis[e].max?n.yaxis[e].max(s.maxY):n.yaxis[e].max),a.setYScaleForIndex(e,r,o))}))}))}))}},{key:"autoScaleY",value:function(t,e,i){t||(t=this);var a=t.w;if(a.globals.isMultipleYAxis||a.globals.collapsedSeries.length)return console.warn("autoScaleYaxis is not supported in a multi-yaxis chart."),e;var n=a.globals.seriesX[0],s=a.config.chart.stacked;return e.forEach((function(t,r){for(var o=0,l=0;l=i.xaxis.min){o=l;break}var c,d,h=a.globals.minYArr[r],u=a.globals.maxYArr[r],p=a.globals.stackedSeriesTotals;a.globals.series.forEach((function(r,l){var f=r[o];s?(f=p[o],c=d=f,p.forEach((function(t,e){n[e]<=i.xaxis.max&&n[e]>=i.xaxis.min&&(t>d&&null!==t&&(d=t),r[e]=i.xaxis.min){var s=t,r=t;a.globals.series.forEach((function(i,a){null!==t&&(s=Math.min(i[e],s),r=Math.max(i[e],r))})),r>d&&null!==r&&(d=r),sh&&(c=h),e.length>1?(e[l].min=void 0===t.min?c:t.min,e[l].max=void 0===t.max?d:t.max):(e[0].min=void 0===t.min?c:t.min,e[0].max=void 0===t.max?d:t.max)}))})),e}}]),t}(),Z=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.scales=new q(e)}return c(t,[{key:"init",value:function(){this.setYRange(),this.setXRange(),this.setZRange()}},{key:"getMinYMaxY",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.MAX_VALUE,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:-Number.MAX_VALUE,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,n=this.w.config,s=this.w.globals,r=-Number.MAX_VALUE,o=Number.MIN_VALUE;null===a&&(a=t+1);var l=s.series,c=l,d=l;"candlestick"===n.chart.type?(c=s.seriesCandleL,d=s.seriesCandleH):"boxPlot"===n.chart.type?(c=s.seriesCandleO,d=s.seriesCandleC):s.isRangeData&&(c=s.seriesRangeStart,d=s.seriesRangeEnd);for(var h=t;hc[h][u]&&c[h][u]<0&&(o=c[h][u])):s.hasNullValues=!0}}return"rangeBar"===n.chart.type&&s.seriesRangeStart.length&&s.isBarHorizontal&&(o=e),"bar"===n.chart.type&&(o<0&&r<0&&(r=0),o===Number.MIN_VALUE&&(o=0)),{minY:o,maxY:r,lowestY:e,highestY:i}}},{key:"setYRange",value:function(){var t=this.w.globals,e=this.w.config;t.maxY=-Number.MAX_VALUE,t.minY=Number.MIN_VALUE;var i=Number.MAX_VALUE;if(t.isMultipleYAxis)for(var a=0;a=0&&i<=10||void 0!==e.yaxis[0].min||void 0!==e.yaxis[0].max)&&(r=0),t.minY=i-5*r/100,i>0&&t.minY<0&&(t.minY=0),t.maxY=t.maxY+5*r/100}return e.yaxis.forEach((function(e,i){void 0!==e.max&&("number"==typeof e.max?t.maxYArr[i]=e.max:"function"==typeof e.max&&(t.maxYArr[i]=e.max(t.isMultipleYAxis?t.maxYArr[i]:t.maxY)),t.maxY=t.maxYArr[i]),void 0!==e.min&&("number"==typeof e.min?t.minYArr[i]=e.min:"function"==typeof e.min&&(t.minYArr[i]=e.min(t.isMultipleYAxis?t.minYArr[i]===Number.MIN_VALUE?0:t.minYArr[i]:t.minY)),t.minY=t.minYArr[i])})),t.isBarHorizontal&&["min","max"].forEach((function(i){void 0!==e.xaxis[i]&&"number"==typeof e.xaxis[i]&&("min"===i?t.minY=e.xaxis[i]:t.maxY=e.xaxis[i])})),t.isMultipleYAxis?(this.scales.setMultipleYScales(),t.minY=i,t.yAxisScale.forEach((function(e,i){t.minYArr[i]=e.niceMin,t.maxYArr[i]=e.niceMax}))):(this.scales.setYScaleForIndex(0,t.minY,t.maxY),t.minY=t.yAxisScale[0].niceMin,t.maxY=t.yAxisScale[0].niceMax,t.minYArr[0]=t.yAxisScale[0].niceMin,t.maxYArr[0]=t.yAxisScale[0].niceMax),{minY:t.minY,maxY:t.maxY,minYArr:t.minYArr,maxYArr:t.maxYArr,yAxisScale:t.yAxisScale}}},{key:"setXRange",value:function(){var t=this.w.globals,e=this.w.config,i="numeric"===e.xaxis.type||"datetime"===e.xaxis.type||"category"===e.xaxis.type&&!t.noLabelsProvided||t.noLabelsProvided||t.isXNumeric;if(t.isXNumeric&&function(){for(var e=0;et.dataPoints&&0!==t.dataPoints&&(a=t.dataPoints-1)):"dataPoints"===e.xaxis.tickAmount?(t.series.length>1&&(a=t.series[t.maxValsInArrayIndex].length-1),t.isXNumeric&&(a=t.maxX-t.minX-1)):a=e.xaxis.tickAmount,t.xTickAmount=a,void 0!==e.xaxis.max&&"number"==typeof e.xaxis.max&&(t.maxX=e.xaxis.max),void 0!==e.xaxis.min&&"number"==typeof e.xaxis.min&&(t.minX=e.xaxis.min),void 0!==e.xaxis.range&&(t.minX=t.maxX-e.xaxis.range),t.minX!==Number.MAX_VALUE&&t.maxX!==-Number.MAX_VALUE)if(e.xaxis.convertedCatToNumeric&&!t.dataFormatXNumeric){for(var n=[],s=t.minX-1;s0&&(t.xAxisScale=this.scales.linearScale(1,t.labels.length,a-1),t.seriesX=t.labels.slice());i&&(t.labels=t.xAxisScale.result.slice())}return t.isBarHorizontal&&t.labels.length&&(t.xTickAmount=t.labels.length),this._handleSingleDataPoint(),this._getMinXDiff(),{minX:t.minX,maxX:t.maxX}}},{key:"setZRange",value:function(){var t=this.w.globals;if(t.isDataXYZ)for(var e=0;e0){var n=e-a[i-1];n>0&&(t.minXDiff=Math.min(n,t.minXDiff))}})),1!==t.dataPoints&&t.minXDiff!==Number.MAX_VALUE||(t.minXDiff=.5)}))}},{key:"_setStackedMinMax",value:function(){var t=this.w.globals,e=[],i=[];if(t.series.length)for(var a=0;a0?n=n+parseFloat(t.series[r][a])+1e-4:s+=parseFloat(t.series[r][a])),r===t.series.length-1&&(e.push(n),i.push(s));for(var o=0;o=0;m--)v(m);if(void 0!==i.config.yaxis[t].title.text){var x=a.group({class:"apexcharts-yaxis-title"}),b=0;i.config.yaxis[t].opposite&&(b=i.globals.translateYAxisX[t]);var y=a.drawText({x:b,y:i.globals.gridHeight/2+i.globals.translateY+i.config.yaxis[t].title.offsetY,text:i.config.yaxis[t].title.text,textAnchor:"end",foreColor:i.config.yaxis[t].title.style.color,fontSize:i.config.yaxis[t].title.style.fontSize,fontWeight:i.config.yaxis[t].title.style.fontWeight,fontFamily:i.config.yaxis[t].title.style.fontFamily,cssClass:"apexcharts-yaxis-title-text "+i.config.yaxis[t].title.style.cssClass});x.add(y),l.add(x)}var w=i.config.yaxis[t].axisBorder,S=31+w.offsetX;if(i.config.yaxis[t].opposite&&(S=-31-w.offsetX),w.show){var k=a.drawLine(S,i.globals.translateY+w.offsetY-2,S,i.globals.gridHeight+i.globals.translateY+w.offsetY+2,w.color,0,w.width);l.add(k)}return i.config.yaxis[t].axisTicks.show&&this.axesUtils.drawYAxisTicks(S,d,w,i.config.yaxis[t].axisTicks,t,h,l),l}},{key:"drawYaxisInversed",value:function(t){var e=this.w,i=new C(this.ctx),a=i.group({class:"apexcharts-xaxis apexcharts-yaxis-inversed"}),n=i.group({class:"apexcharts-xaxis-texts-g",transform:"translate(".concat(e.globals.translateXAxisX,", ").concat(e.globals.translateXAxisY,")")});a.add(n);var s=e.globals.yAxisScale[t].result.length-1,r=e.globals.gridWidth/s+.1,o=r+e.config.xaxis.labels.offsetX,l=e.globals.xLabelFormatter,c=e.globals.yAxisScale[t].result.slice(),d=e.globals.timescaleLabels;d.length>0&&(this.xaxisLabels=d.slice(),s=(c=d.slice()).length),c=this.axesUtils.checkForReversedLabels(t,c);var h=d.length;if(e.config.xaxis.labels.show)for(var u=h?0:s;h?u=0;h?u++:u--){var p=c[u];p=l(p,u,e);var f=e.globals.gridWidth+e.globals.padHorizontal-(o-r+e.config.xaxis.labels.offsetX);if(d.length){var g=this.axesUtils.getLabel(c,d,f,u,this.drawnLabels,this.xaxisFontSize);f=g.x,p=g.text,this.drawnLabels.push(g.text),0===u&&e.globals.skipFirstTimelinelabel&&(p=""),u===c.length-1&&e.globals.skipLastTimelinelabel&&(p="")}var v=i.drawText({x:f,y:this.xAxisoffX+e.config.xaxis.labels.offsetY+30-("top"===e.config.xaxis.position?e.globals.xAxisHeight+e.config.xaxis.axisTicks.height-2:0),text:p,textAnchor:"middle",foreColor:Array.isArray(this.xaxisForeColors)?this.xaxisForeColors[t]:this.xaxisForeColors,fontSize:this.xaxisFontSize,fontFamily:this.xaxisFontFamily,fontWeight:e.config.xaxis.labels.style.fontWeight,isPlainText:!1,cssClass:"apexcharts-xaxis-label "+e.config.xaxis.labels.style.cssClass});n.add(v),v.tspan(p);var m=document.createElementNS(e.globals.SVGNS,"title");m.textContent=p,v.node.appendChild(m),o+=r}return this.inversedYAxisTitleText(a),this.inversedYAxisBorder(a),a}},{key:"inversedYAxisBorder",value:function(t){var e=this.w,i=new C(this.ctx),a=e.config.xaxis.axisBorder;if(a.show){var n=0;"bar"===e.config.chart.type&&e.globals.isXNumeric&&(n-=15);var s=i.drawLine(e.globals.padHorizontal+n+a.offsetX,this.xAxisoffX,e.globals.gridWidth,this.xAxisoffX,a.color,0,a.height);this.elgrid&&this.elgrid.elGridBorders?this.elgrid.elGridBorders.add(s):t.add(s)}}},{key:"inversedYAxisTitleText",value:function(t){var e=this.w,i=new C(this.ctx);if(void 0!==e.config.xaxis.title.text){var a=i.group({class:"apexcharts-xaxis-title apexcharts-yaxis-title-inversed"}),n=i.drawText({x:e.globals.gridWidth/2+e.config.xaxis.title.offsetX,y:this.xAxisoffX+parseFloat(this.xaxisFontSize)+parseFloat(e.config.xaxis.title.style.fontSize)+e.config.xaxis.title.offsetY+20,text:e.config.xaxis.title.text,textAnchor:"middle",fontSize:e.config.xaxis.title.style.fontSize,fontFamily:e.config.xaxis.title.style.fontFamily,fontWeight:e.config.xaxis.title.style.fontWeight,foreColor:e.config.xaxis.title.style.color,cssClass:"apexcharts-xaxis-title-text "+e.config.xaxis.title.style.cssClass});a.add(n),t.add(a)}}},{key:"yAxisTitleRotate",value:function(t,e){var i=this.w,a=new C(this.ctx),n={width:0,height:0},s={width:0,height:0},r=i.globals.dom.baseEl.querySelector(" .apexcharts-yaxis[rel='".concat(t,"'] .apexcharts-yaxis-texts-g"));null!==r&&(n=r.getBoundingClientRect());var o=i.globals.dom.baseEl.querySelector(".apexcharts-yaxis[rel='".concat(t,"'] .apexcharts-yaxis-title text"));if(null!==o&&(s=o.getBoundingClientRect()),null!==o){var l=this.xPaddingForYAxisTitle(t,n,s,e);o.setAttribute("x",l.xPos-(e?10:0))}if(null!==o){var c=a.rotateAroundCenter(o);o.setAttribute("transform","rotate(".concat(e?-1*i.config.yaxis[t].title.rotate:i.config.yaxis[t].title.rotate," ").concat(c.x," ").concat(c.y,")"))}}},{key:"xPaddingForYAxisTitle",value:function(t,e,i,a){var n=this.w,s=0,r=0,o=10;return void 0===n.config.yaxis[t].title.text||t<0?{xPos:r,padd:0}:(a?(r=e.width+n.config.yaxis[t].title.offsetX+i.width/2+o/2,0===(s+=1)&&(r-=o/2)):(r=-1*e.width+n.config.yaxis[t].title.offsetX+o/2+i.width/2,n.globals.isBarHorizontal&&(o=25,r=-1*e.width-n.config.yaxis[t].title.offsetX-o)),{xPos:r,padd:o})}},{key:"setYAxisXPosition",value:function(t,e){var i=this.w,a=0,n=0,s=18,r=1;i.config.yaxis.length>1&&(this.multipleYs=!0),i.config.yaxis.map((function(o,l){var c=i.globals.ignoreYAxisIndexes.indexOf(l)>-1||!o.show||o.floating||0===t[l].width,d=t[l].width+e[l].width;o.opposite?i.globals.isBarHorizontal?(n=i.globals.gridWidth+i.globals.translateX-1,i.globals.translateYAxisX[l]=n-o.labels.offsetX):(n=i.globals.gridWidth+i.globals.translateX+r,c||(r=r+d+20),i.globals.translateYAxisX[l]=n-o.labels.offsetX+20):(a=i.globals.translateX-s,c||(s=s+d+20),i.globals.translateYAxisX[l]=a+o.labels.offsetX)}))}},{key:"setYAxisTextAlignments",value:function(){var t=this.w,e=t.globals.dom.baseEl.getElementsByClassName("apexcharts-yaxis");(e=b.listToArray(e)).forEach((function(e,i){var a=t.config.yaxis[i];if(a&&void 0!==a.labels.align){var n=t.globals.dom.baseEl.querySelector(".apexcharts-yaxis[rel='".concat(i,"'] .apexcharts-yaxis-texts-g")),s=t.globals.dom.baseEl.querySelectorAll(".apexcharts-yaxis[rel='".concat(i,"'] .apexcharts-yaxis-label"));s=b.listToArray(s);var r=n.getBoundingClientRect();"left"===a.labels.align?(s.forEach((function(t,e){t.setAttribute("text-anchor","start")})),a.opposite||n.setAttribute("transform","translate(-".concat(r.width,", 0)"))):"center"===a.labels.align?(s.forEach((function(t,e){t.setAttribute("text-anchor","middle")})),n.setAttribute("transform","translate(".concat(r.width/2*(a.opposite?1:-1),", 0)"))):"right"===a.labels.align&&(s.forEach((function(t,e){t.setAttribute("text-anchor","end")})),a.opposite&&n.setAttribute("transform","translate(".concat(r.width,", 0)")))}}))}}]),t}(),K=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.documentEvent=b.bind(this.documentEvent,this)}return c(t,[{key:"addEventListener",value:function(t,e){var i=this.w;i.globals.events.hasOwnProperty(t)?i.globals.events[t].push(e):i.globals.events[t]=[e]}},{key:"removeEventListener",value:function(t,e){var i=this.w;if(i.globals.events.hasOwnProperty(t)){var a=i.globals.events[t].indexOf(e);-1!==a&&i.globals.events[t].splice(a,1)}}},{key:"fireEvent",value:function(t,e){var i=this.w;if(i.globals.events.hasOwnProperty(t)){e&&e.length||(e=[]);for(var a=i.globals.events[t],n=a.length,s=0;s0&&(e=this.w.config.chart.locales.concat(window.Apex.chart.locales));var i=e.filter((function(e){return e.name===t}))[0];if(!i)throw new Error("Wrong locale name provided. Please make sure you set the correct locale name in options");var a=b.extend(T,i);this.w.globals.locale=a.options}}]),t}(),tt=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"drawAxis",value:function(t,e){var i,a,n=this.w.globals,s=this.w.config,r=new G(this.ctx,e),o=new Q(this.ctx,e);n.axisCharts&&"radar"!==t&&(n.isBarHorizontal?(a=o.drawYaxisInversed(0),i=r.drawXaxisInversed(0),n.dom.elGraphical.add(i),n.dom.elGraphical.add(a)):(i=r.drawXaxis(),n.dom.elGraphical.add(i),s.yaxis.map((function(t,e){-1===n.ignoreYAxisIndexes.indexOf(e)&&(a=o.drawYaxis(e),n.dom.Paper.add(a))}))))}}]),t}(),et=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"drawXCrosshairs",value:function(){var t=this.w,e=new C(this.ctx),i=new w(this.ctx),a=t.config.xaxis.crosshairs.fill.gradient,n=t.config.xaxis.crosshairs.dropShadow,s=t.config.xaxis.crosshairs.fill.type,r=a.colorFrom,o=a.colorTo,l=a.opacityFrom,c=a.opacityTo,d=a.stops,h=n.enabled,u=n.left,p=n.top,f=n.blur,g=n.color,v=n.opacity,m=t.config.xaxis.crosshairs.fill.color;if(t.config.xaxis.crosshairs.show){"gradient"===s&&(m=e.drawGradient("vertical",r,o,l,c,null,d,null));var x=e.drawRect();1===t.config.xaxis.crosshairs.width&&(x=e.drawLine());var y=t.globals.gridHeight;(!b.isNumber(y)||y<0)&&(y=0);var S=t.config.xaxis.crosshairs.width;(!b.isNumber(S)||S<0)&&(S=0),x.attr({class:"apexcharts-xcrosshairs",x:0,y:0,y2:y,width:S,height:y,fill:m,filter:"none","fill-opacity":t.config.xaxis.crosshairs.opacity,stroke:t.config.xaxis.crosshairs.stroke.color,"stroke-width":t.config.xaxis.crosshairs.stroke.width,"stroke-dasharray":t.config.xaxis.crosshairs.stroke.dashArray}),h&&(x=i.dropShadow(x,{left:u,top:p,blur:f,color:g,opacity:v})),t.globals.dom.elGraphical.add(x)}}},{key:"drawYCrosshairs",value:function(){var t=this.w,e=new C(this.ctx),i=t.config.yaxis[0].crosshairs,a=t.globals.barPadForNumericAxis;if(t.config.yaxis[0].crosshairs.show){var n=e.drawLine(-a,0,t.globals.gridWidth+a,0,i.stroke.color,i.stroke.dashArray,i.stroke.width);n.attr({class:"apexcharts-ycrosshairs"}),t.globals.dom.elGraphical.add(n)}var s=e.drawLine(-a,0,t.globals.gridWidth+a,0,i.stroke.color,0,0);s.attr({class:"apexcharts-ycrosshairs-hidden"}),t.globals.dom.elGraphical.add(s)}}]),t}(),it=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"checkResponsiveConfig",value:function(t){var e=this,i=this.w,a=i.config;if(0!==a.responsive.length){var n=a.responsive.slice();n.sort((function(t,e){return t.breakpoint>e.breakpoint?1:e.breakpoint>t.breakpoint?-1:0})).reverse();var s=new z({}),r=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},a=n[0].breakpoint,r=window.innerWidth>0?window.innerWidth:screen.width;if(r>a){var o=S.extendArrayProps(s,i.globals.initialConfig,i);t=b.extend(o,t),t=b.extend(i.config,t),e.overrideResponsiveOptions(t)}else for(var l=0;l0&&"function"==typeof e.config.colors[0]&&(e.globals.colors=e.config.series.map((function(i,a){var n=e.config.colors[a];return n||(n=e.config.colors[0]),"function"==typeof n?(t.isColorFn=!0,n({value:e.globals.axisCharts?e.globals.series[a][0]?e.globals.series[a][0]:0:e.globals.series[a],seriesIndex:a,dataPointIndex:a,w:e})):n})))),e.globals.seriesColors.map((function(t,i){t&&(e.globals.colors[i]=t)})),e.config.theme.monochrome.enabled){var a=[],n=e.globals.series.length;(this.isBarDistributed||this.isHeatmapDistributed)&&(n=e.globals.series[0].length*e.globals.series.length);for(var s=e.config.theme.monochrome.color,r=1/(n/e.config.theme.monochrome.shadeIntensity),o=e.config.theme.monochrome.shadeTo,l=0,c=0;c2&&void 0!==arguments[2]?arguments[2]:null,a=this.w,n=e||a.globals.series.length;if(null===i&&(i=this.isBarDistributed||this.isHeatmapDistributed||"heatmap"===a.config.chart.type&&a.config.plotOptions.heatmap.colorScale.inverse),i&&a.globals.series.length&&(n=a.globals.series[a.globals.maxValsInArrayIndex].length*a.globals.series.length),t.lengtht.globals.svgWidth&&(this.dCtx.lgRect.width=t.globals.svgWidth/1.5),this.dCtx.lgRect}},{key:"getLargestStringFromMultiArr",value:function(t,e){var i=t;if(this.w.globals.isMultiLineX){var a=e.map((function(t,e){return Array.isArray(t)?t.length:1})),n=Math.max.apply(Math,v(a));i=e[a.indexOf(n)]}return i}}]),t}(),rt=function(){function t(e){o(this,t),this.w=e.w,this.dCtx=e}return c(t,[{key:"getxAxisLabelsCoords",value:function(){var t,e=this.w,i=e.globals.labels.slice();if(e.config.xaxis.convertedCatToNumeric&&0===i.length&&(i=e.globals.categoryLabels),e.globals.timescaleLabels.length>0){var a=this.getxAxisTimeScaleLabelsCoords();t={width:a.width,height:a.height},e.globals.rotateXLabels=!1}else{this.dCtx.lgWidthForSideLegends="left"!==e.config.legend.position&&"right"!==e.config.legend.position||e.config.legend.floating?0:this.dCtx.lgRect.width;var n=e.globals.xLabelFormatter,s=b.getLargestStringFromArr(i),r=this.dCtx.dimHelpers.getLargestStringFromMultiArr(s,i);e.globals.isBarHorizontal&&(r=s=e.globals.yAxisScale[0].result.reduce((function(t,e){return t.length>e.length?t:e}),0));var o=new B(this.dCtx.ctx),l=s;s=o.xLabelFormat(n,s,l,{i:void 0,dateFormatter:new L(this.dCtx.ctx).formatDate,w:e}),r=o.xLabelFormat(n,r,l,{i:void 0,dateFormatter:new L(this.dCtx.ctx).formatDate,w:e}),(e.config.xaxis.convertedCatToNumeric&&void 0===s||""===String(s).trim())&&(r=s="1");var c=new C(this.dCtx.ctx),d=c.getTextRects(s,e.config.xaxis.labels.style.fontSize),h=d;if(s!==r&&(h=c.getTextRects(r,e.config.xaxis.labels.style.fontSize)),(t={width:d.width>=h.width?d.width:h.width,height:d.height>=h.height?d.height:h.height}).width*i.length>e.globals.svgWidth-this.dCtx.lgWidthForSideLegends-this.dCtx.yAxisWidth-this.dCtx.gridPad.left-this.dCtx.gridPad.right&&0!==e.config.xaxis.labels.rotate||e.config.xaxis.labels.rotateAlways){if(!e.globals.isBarHorizontal){e.globals.rotateXLabels=!0;var u=function(t){return c.getTextRects(t,e.config.xaxis.labels.style.fontSize,e.config.xaxis.labels.style.fontFamily,"rotate(".concat(e.config.xaxis.labels.rotate," 0 0)"),!1)};d=u(s),s!==r&&(h=u(r)),t.height=(d.height>h.height?d.height:h.height)/1.5,t.width=d.width>h.width?d.width:h.width}}else e.globals.rotateXLabels=!1}return e.config.xaxis.labels.show||(t={width:0,height:0}),{width:t.width,height:t.height}}},{key:"getxAxisGroupLabelsCoords",value:function(){var t,e=this.w;if(!e.globals.hasGroups)return{width:0,height:0};var i,a=(null===(t=e.config.xaxis.group.style)||void 0===t?void 0:t.fontSize)||e.config.xaxis.labels.style.fontSize,n=e.globals.groups.map((function(t){return t.title})),s=b.getLargestStringFromArr(n),r=this.dCtx.dimHelpers.getLargestStringFromMultiArr(s,n),o=new C(this.dCtx.ctx),l=o.getTextRects(s,a),c=l;return s!==r&&(c=o.getTextRects(r,a)),i={width:l.width>=c.width?l.width:c.width,height:l.height>=c.height?l.height:c.height},e.config.xaxis.labels.show||(i={width:0,height:0}),{width:i.width,height:i.height}}},{key:"getxAxisTitleCoords",value:function(){var t=this.w,e=0,i=0;if(void 0!==t.config.xaxis.title.text){var a=new C(this.dCtx.ctx).getTextRects(t.config.xaxis.title.text,t.config.xaxis.title.style.fontSize);e=a.width,i=a.height}return{width:e,height:i}}},{key:"getxAxisTimeScaleLabelsCoords",value:function(){var t,e=this.w;this.dCtx.timescaleLabels=e.globals.timescaleLabels.slice();var i=this.dCtx.timescaleLabels.map((function(t){return t.value})),a=i.reduce((function(t,e){return void 0===t?(console.error("You have possibly supplied invalid Date format. Please supply a valid JavaScript Date"),0):t.length>e.length?t:e}),0);return 1.05*(t=new C(this.dCtx.ctx).getTextRects(a,e.config.xaxis.labels.style.fontSize)).width*i.length>e.globals.gridWidth&&0!==e.config.xaxis.labels.rotate&&(e.globals.overlappingXLabels=!0),t}},{key:"additionalPaddingXLabels",value:function(t){var e=this,i=this.w,a=i.globals,n=i.config,s=n.xaxis.type,r=t.width;a.skipLastTimelinelabel=!1,a.skipFirstTimelinelabel=!1;var o=i.config.yaxis[0].opposite&&i.globals.isBarHorizontal,l=function(t,o){(function(t){return-1!==a.collapsedSeriesIndices.indexOf(t)})(o)||function(t){if(e.dCtx.timescaleLabels&&e.dCtx.timescaleLabels.length){var o=e.dCtx.timescaleLabels[0],l=e.dCtx.timescaleLabels[e.dCtx.timescaleLabels.length-1].position+r/1.75-e.dCtx.yAxisWidthRight,c=o.position-r/1.75+e.dCtx.yAxisWidthLeft,d="right"===i.config.legend.position&&e.dCtx.lgRect.width>0?e.dCtx.lgRect.width:0;l>a.svgWidth-a.translateX-d&&(a.skipLastTimelinelabel=!0),c<-(t.show&&!t.floating||"bar"!==n.chart.type&&"candlestick"!==n.chart.type&&"rangeBar"!==n.chart.type&&"boxPlot"!==n.chart.type?10:r/1.75)&&(a.skipFirstTimelinelabel=!0)}else"datetime"===s?e.dCtx.gridPad.rightString(o.niceMax).length?d:o.niceMax,u=c(h,{seriesIndex:r,dataPointIndex:-1,w:e}),p=u;if(void 0!==u&&0!==u.length||(u=h),e.globals.isBarHorizontal){a=0;var f=e.globals.labels.slice();u=c(u=b.getLargestStringFromArr(f),{seriesIndex:r,dataPointIndex:-1,w:e}),p=t.dCtx.dimHelpers.getLargestStringFromMultiArr(u,f)}var g=new C(t.dCtx.ctx),v="rotate(".concat(s.labels.rotate," 0 0)"),m=g.getTextRects(u,s.labels.style.fontSize,s.labels.style.fontFamily,v,!1),x=m;u!==p&&(x=g.getTextRects(p,s.labels.style.fontSize,s.labels.style.fontFamily,v,!1)),i.push({width:(l>x.width||l>m.width?l:x.width>m.width?x.width:m.width)+a,height:x.height>m.height?x.height:m.height})}else i.push({width:0,height:0})})),i}},{key:"getyAxisTitleCoords",value:function(){var t=this,e=this.w,i=[];return e.config.yaxis.map((function(e,a){if(e.show&&void 0!==e.title.text){var n=new C(t.dCtx.ctx),s="rotate(".concat(e.title.rotate," 0 0)"),r=n.getTextRects(e.title.text,e.title.style.fontSize,e.title.style.fontFamily,s,!1);i.push({width:r.width,height:r.height})}else i.push({width:0,height:0})})),i}},{key:"getTotalYAxisWidth",value:function(){var t=this.w,e=0,i=0,a=0,n=t.globals.yAxisScale.length>1?10:0,s=new W(this.dCtx.ctx),r=function(r,o){var l=t.config.yaxis[o].floating,c=0;r.width>0&&!l?(c=r.width+n,function(e){return t.globals.ignoreYAxisIndexes.indexOf(e)>-1}(o)&&(c=c-r.width-n)):c=l||s.isYAxisHidden(o)?0:5,t.config.yaxis[o].opposite?a+=c:i+=c,e+=c};return t.globals.yLabelsCoords.map((function(t,e){r(t,e)})),t.globals.yTitleCoords.map((function(t,e){r(t,e)})),t.globals.isBarHorizontal&&!t.config.yaxis[0].floating&&(e=t.globals.yLabelsCoords[0].width+t.globals.yTitleCoords[0].width+15),this.dCtx.yAxisWidthLeft=i,this.dCtx.yAxisWidthRight=a,e}}]),t}(),lt=function(){function t(e){o(this,t),this.w=e.w,this.dCtx=e}return c(t,[{key:"gridPadForColumnsInNumericAxis",value:function(t){var e=this.w;if(e.globals.noData||e.globals.allSeriesCollapsed)return 0;var i=function(t){return"bar"===t||"rangeBar"===t||"candlestick"===t||"boxPlot"===t},a=e.config.chart.type,n=0,s=i(a)?e.config.series.length:1;if(e.globals.comboBarCount>0&&(s=e.globals.comboBarCount),e.globals.collapsedSeries.forEach((function(t){i(t.type)&&(s-=1)})),e.config.chart.stacked&&(s=1),(i(a)||e.globals.comboBarCount>0)&&e.globals.isXNumeric&&!e.globals.isBarHorizontal&&s>0){var r,o,l=Math.abs(e.globals.initialMaxX-e.globals.initialMinX);l<=3&&(l=e.globals.dataPoints),r=l/t,e.globals.minXDiff&&e.globals.minXDiff/r>0&&(o=e.globals.minXDiff/r),o>t/2&&(o/=2),(n=o/s*parseInt(e.config.plotOptions.bar.columnWidth,10)/100)<1&&(n=1),n=n/(s>1?1:1.5)+5,e.globals.barPadForNumericAxis=n}return n}},{key:"gridPadFortitleSubtitle",value:function(){var t=this,e=this.w,i=e.globals,a=this.dCtx.isSparkline||!e.globals.axisCharts?0:10;["title","subtitle"].forEach((function(i){void 0!==e.config[i].text?a+=e.config[i].margin:a+=t.dCtx.isSparkline||!e.globals.axisCharts?0:5})),!e.config.legend.show||"bottom"!==e.config.legend.position||e.config.legend.floating||e.globals.axisCharts||(a+=10);var n=this.dCtx.dimHelpers.getTitleSubtitleCoords("title"),s=this.dCtx.dimHelpers.getTitleSubtitleCoords("subtitle");i.gridHeight=i.gridHeight-n.height-s.height-a,i.translateY=i.translateY+n.height+s.height+a}},{key:"setGridXPosForDualYAxis",value:function(t,e){var i=this.w,a=new W(this.dCtx.ctx);i.config.yaxis.map((function(n,s){-1!==i.globals.ignoreYAxisIndexes.indexOf(s)||n.floating||a.isYAxisHidden(s)||(n.opposite&&(i.globals.translateX=i.globals.translateX-(e[s].width+t[s].width)-parseInt(i.config.yaxis[s].labels.style.fontSize,10)/1.2-12),i.globals.translateX<2&&(i.globals.translateX=2))}))}}]),t}(),ct=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.lgRect={},this.yAxisWidth=0,this.yAxisWidthLeft=0,this.yAxisWidthRight=0,this.xAxisHeight=0,this.isSparkline=this.w.config.chart.sparkline.enabled,this.dimHelpers=new st(this),this.dimYAxis=new ot(this),this.dimXAxis=new rt(this),this.dimGrid=new lt(this),this.lgWidthForSideLegends=0,this.gridPad=this.w.config.grid.padding,this.xPadRight=0,this.xPadLeft=0}return c(t,[{key:"plotCoords",value:function(){var t=this,e=this.w,i=e.globals;this.lgRect=this.dimHelpers.getLegendsRect(),this.isSparkline&&(e.config.markers.discrete.length>0||e.config.markers.size>0)&&Object.entries(this.gridPad).forEach((function(e){var i=function(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var i=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=i){var a,n,s=[],r=!0,o=!1;try{for(i=i.call(t);!(r=(a=i.next()).done)&&(s.push(a.value),!e||s.length!==e);r=!0);}catch(t){o=!0,n=t}finally{try{r||null==i.return||i.return()}finally{if(o)throw n}}return s}}(t,e)||m(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(e,2),a=i[0],n=i[1];t.gridPad[a]=Math.max(n,t.w.globals.markers.largestSize/1.5)})),i.axisCharts?this.setDimensionsForAxisCharts():this.setDimensionsForNonAxisCharts(),this.dimGrid.gridPadFortitleSubtitle(),i.gridHeight=i.gridHeight-this.gridPad.top-this.gridPad.bottom,i.gridWidth=i.gridWidth-this.gridPad.left-this.gridPad.right-this.xPadRight-this.xPadLeft;var a=this.dimGrid.gridPadForColumnsInNumericAxis(i.gridWidth);i.gridWidth=i.gridWidth-2*a,i.translateX=i.translateX+this.gridPad.left+this.xPadLeft+(a>0?a+4:0),i.translateY=i.translateY+this.gridPad.top}},{key:"setDimensionsForAxisCharts",value:function(){var t=this,e=this.w,i=e.globals,a=this.dimYAxis.getyAxisLabelsCoords(),n=this.dimYAxis.getyAxisTitleCoords();e.globals.yLabelsCoords=[],e.globals.yTitleCoords=[],e.config.yaxis.map((function(t,i){e.globals.yLabelsCoords.push({width:a[i].width,index:i}),e.globals.yTitleCoords.push({width:n[i].width,index:i})})),this.yAxisWidth=this.dimYAxis.getTotalYAxisWidth();var s=this.dimXAxis.getxAxisLabelsCoords(),r=this.dimXAxis.getxAxisGroupLabelsCoords(),o=this.dimXAxis.getxAxisTitleCoords();this.conditionalChecksForAxisCoords(s,o,r),i.translateXAxisY=e.globals.rotateXLabels?this.xAxisHeight/8:-4,i.translateXAxisX=e.globals.rotateXLabels&&e.globals.isXNumeric&&e.config.xaxis.labels.rotate<=-45?-this.xAxisWidth/4:0,e.globals.isBarHorizontal&&(i.rotateXLabels=!1,i.translateXAxisY=parseInt(e.config.xaxis.labels.style.fontSize,10)/1.5*-1),i.translateXAxisY=i.translateXAxisY+e.config.xaxis.labels.offsetY,i.translateXAxisX=i.translateXAxisX+e.config.xaxis.labels.offsetX;var l=this.yAxisWidth,c=this.xAxisHeight;i.xAxisLabelsHeight=this.xAxisHeight-o.height,i.xAxisGroupLabelsHeight=i.xAxisLabelsHeight-s.height,i.xAxisLabelsWidth=this.xAxisWidth,i.xAxisHeight=this.xAxisHeight;var d=10;("radar"===e.config.chart.type||this.isSparkline)&&(l=0,c=i.goldenPadding),this.isSparkline&&(this.lgRect={height:0,width:0}),(this.isSparkline||"treemap"===e.config.chart.type)&&(l=0,c=0,d=0),this.isSparkline||this.dimXAxis.additionalPaddingXLabels(s);var h=function(){i.translateX=l,i.gridHeight=i.svgHeight-t.lgRect.height-c-(t.isSparkline||"treemap"===e.config.chart.type?0:e.globals.rotateXLabels?10:15),i.gridWidth=i.svgWidth-l};switch("top"===e.config.xaxis.position&&(d=i.xAxisHeight-e.config.xaxis.axisTicks.height-5),e.config.legend.position){case"bottom":i.translateY=d,h();break;case"top":i.translateY=this.lgRect.height+d,h();break;case"left":i.translateY=d,i.translateX=this.lgRect.width+l,i.gridHeight=i.svgHeight-c-12,i.gridWidth=i.svgWidth-this.lgRect.width-l;break;case"right":i.translateY=d,i.translateX=l,i.gridHeight=i.svgHeight-c-12,i.gridWidth=i.svgWidth-this.lgRect.width-l-5;break;default:throw new Error("Legend position not supported")}this.dimGrid.setGridXPosForDualYAxis(n,a),new Q(this.ctx).setYAxisXPosition(a,n)}},{key:"setDimensionsForNonAxisCharts",value:function(){var t=this.w,e=t.globals,i=t.config,a=0;t.config.legend.show&&!t.config.legend.floating&&(a=20);var n="pie"===i.chart.type||"polarArea"===i.chart.type||"donut"===i.chart.type?"pie":"radialBar",s=i.plotOptions[n].offsetY,r=i.plotOptions[n].offsetX;if(!i.legend.show||i.legend.floating)return e.gridHeight=e.svgHeight-i.grid.padding.left+i.grid.padding.right,e.gridWidth=e.gridHeight,e.translateY=s,void(e.translateX=r+(e.svgWidth-e.gridWidth)/2);switch(i.legend.position){case"bottom":e.gridHeight=e.svgHeight-this.lgRect.height-e.goldenPadding,e.gridWidth=e.svgWidth,e.translateY=s-10,e.translateX=r+(e.svgWidth-e.gridWidth)/2;break;case"top":e.gridHeight=e.svgHeight-this.lgRect.height-e.goldenPadding,e.gridWidth=e.svgWidth,e.translateY=this.lgRect.height+s+10,e.translateX=r+(e.svgWidth-e.gridWidth)/2;break;case"left":e.gridWidth=e.svgWidth-this.lgRect.width-a,e.gridHeight="auto"!==i.chart.height?e.svgHeight:e.gridWidth,e.translateY=s,e.translateX=r+this.lgRect.width+a;break;case"right":e.gridWidth=e.svgWidth-this.lgRect.width-a-5,e.gridHeight="auto"!==i.chart.height?e.svgHeight:e.gridWidth,e.translateY=s,e.translateX=r+10;break;default:throw new Error("Legend position not supported")}}},{key:"conditionalChecksForAxisCoords",value:function(t,e,i){var a=this.w,n=a.globals.hasGroups?2:1,s=i.height+t.height+e.height,r=a.globals.isMultiLineX?1.2:a.globals.LINE_HEIGHT_RATIO,o=a.globals.rotateXLabels?22:10,l=a.globals.rotateXLabels&&"bottom"===a.config.legend.position?10:0;this.xAxisHeight=s*r+n*o+l,this.xAxisWidth=t.width,this.xAxisHeight-e.height>a.config.xaxis.labels.maxHeight&&(this.xAxisHeight=a.config.xaxis.labels.maxHeight),a.config.xaxis.labels.minHeight&&this.xAxisHeightd&&(this.yAxisWidth=d)}}]),t}(),dt=function(){function t(e){o(this,t),this.w=e.w,this.lgCtx=e}return c(t,[{key:"getLegendStyles",value:function(){var t=document.createElement("style");t.setAttribute("type","text/css");var e=document.createTextNode("\t\n \t\n .apexcharts-legend {\t\n display: flex;\t\n overflow: auto;\t\n padding: 0 10px;\t\n }\t\n .apexcharts-legend.apx-legend-position-bottom, .apexcharts-legend.apx-legend-position-top {\t\n flex-wrap: wrap\t\n }\t\n .apexcharts-legend.apx-legend-position-right, .apexcharts-legend.apx-legend-position-left {\t\n flex-direction: column;\t\n bottom: 0;\t\n }\t\n .apexcharts-legend.apx-legend-position-bottom.apexcharts-align-left, .apexcharts-legend.apx-legend-position-top.apexcharts-align-left, .apexcharts-legend.apx-legend-position-right, .apexcharts-legend.apx-legend-position-left {\t\n justify-content: flex-start;\t\n }\t\n .apexcharts-legend.apx-legend-position-bottom.apexcharts-align-center, .apexcharts-legend.apx-legend-position-top.apexcharts-align-center {\t\n justify-content: center; \t\n }\t\n .apexcharts-legend.apx-legend-position-bottom.apexcharts-align-right, .apexcharts-legend.apx-legend-position-top.apexcharts-align-right {\t\n justify-content: flex-end;\t\n }\t\n .apexcharts-legend-series {\t\n cursor: pointer;\t\n line-height: normal;\t\n }\t\n .apexcharts-legend.apx-legend-position-bottom .apexcharts-legend-series, .apexcharts-legend.apx-legend-position-top .apexcharts-legend-series{\t\n display: flex;\t\n align-items: center;\t\n }\t\n .apexcharts-legend-text {\t\n position: relative;\t\n font-size: 14px;\t\n }\t\n .apexcharts-legend-text *, .apexcharts-legend-marker * {\t\n pointer-events: none;\t\n }\t\n .apexcharts-legend-marker {\t\n position: relative;\t\n display: inline-block;\t\n cursor: pointer;\t\n margin-right: 3px;\t\n border-style: solid;\n }\t\n \t\n .apexcharts-legend.apexcharts-align-right .apexcharts-legend-series, .apexcharts-legend.apexcharts-align-left .apexcharts-legend-series{\t\n display: inline-block;\t\n }\t\n .apexcharts-legend-series.apexcharts-no-click {\t\n cursor: auto;\t\n }\t\n .apexcharts-legend .apexcharts-hidden-zero-series, .apexcharts-legend .apexcharts-hidden-null-series {\t\n display: none !important;\t\n }\t\n .apexcharts-inactive-legend {\t\n opacity: 0.45;\t\n }");return t.appendChild(e),t}},{key:"getLegendBBox",value:function(){var t=this.w.globals.dom.baseEl.querySelector(".apexcharts-legend").getBoundingClientRect(),e=t.width;return{clwh:t.height,clww:e}}},{key:"appendToForeignObject",value:function(){var t=this.w.globals;t.dom.elLegendForeign=document.createElementNS(t.SVGNS,"foreignObject");var e=t.dom.elLegendForeign;e.setAttribute("x",0),e.setAttribute("y",0),e.setAttribute("width",t.svgWidth),e.setAttribute("height",t.svgHeight),t.dom.elLegendWrap.setAttribute("xmlns","http://www.w3.org/1999/xhtml"),e.appendChild(t.dom.elLegendWrap),e.appendChild(this.getLegendStyles()),t.dom.Paper.node.insertBefore(e,t.dom.elGraphical.node)}},{key:"toggleDataSeries",value:function(t,e){var i=this,a=this.w;if(a.globals.axisCharts||"radialBar"===a.config.chart.type){a.globals.resized=!0;var n=null,s=null;a.globals.risingSeries=[],a.globals.axisCharts?(n=a.globals.dom.baseEl.querySelector(".apexcharts-series[data\\:realIndex='".concat(t,"']")),s=parseInt(n.getAttribute("data:realIndex"),10)):(n=a.globals.dom.baseEl.querySelector(".apexcharts-series[rel='".concat(t+1,"']")),s=parseInt(n.getAttribute("rel"),10)-1),e?[{cs:a.globals.collapsedSeries,csi:a.globals.collapsedSeriesIndices},{cs:a.globals.ancillaryCollapsedSeries,csi:a.globals.ancillaryCollapsedSeriesIndices}].forEach((function(t){i.riseCollapsedSeries(t.cs,t.csi,s)})):this.hideSeries({seriesEl:n,realIndex:s})}else{var r=a.globals.dom.Paper.select(" .apexcharts-series[rel='".concat(t+1,"'] path")),o=a.config.chart.type;if("pie"===o||"polarArea"===o||"donut"===o){var l=a.config.plotOptions.pie.donut.labels;new C(this.lgCtx.ctx).pathMouseDown(r.members[0],null),this.lgCtx.ctx.pie.printDataLabelsInner(r.members[0].node,l)}r.fire("click")}}},{key:"hideSeries",value:function(t){var e=t.seriesEl,i=t.realIndex,a=this.w,n=b.clone(a.config.series);if(a.globals.axisCharts){var s=!1;if(a.config.yaxis[i]&&a.config.yaxis[i].show&&a.config.yaxis[i].showAlways&&(s=!0,a.globals.ancillaryCollapsedSeriesIndices.indexOf(i)<0&&(a.globals.ancillaryCollapsedSeries.push({index:i,data:n[i].data.slice(),type:e.parentNode.className.baseVal.split("-")[1]}),a.globals.ancillaryCollapsedSeriesIndices.push(i))),!s){a.globals.collapsedSeries.push({index:i,data:n[i].data.slice(),type:e.parentNode.className.baseVal.split("-")[1]}),a.globals.collapsedSeriesIndices.push(i);var r=a.globals.risingSeries.indexOf(i);a.globals.risingSeries.splice(r,1)}}else a.globals.collapsedSeries.push({index:i,data:n[i]}),a.globals.collapsedSeriesIndices.push(i);for(var o=e.childNodes,l=0;l0){for(var s=0;s-1&&(t[a].data=[])})):t.forEach((function(i,a){e.globals.collapsedSeriesIndices.indexOf(a)>-1&&(t[a]=0)})),t}}]),t}(),ht=function(){function t(e,i){o(this,t),this.ctx=e,this.w=e.w,this.onLegendClick=this.onLegendClick.bind(this),this.onLegendHovered=this.onLegendHovered.bind(this),this.isBarsDistributed="bar"===this.w.config.chart.type&&this.w.config.plotOptions.bar.distributed&&1===this.w.config.series.length,this.legendHelpers=new dt(this)}return c(t,[{key:"init",value:function(){var t=this.w,e=t.globals,i=t.config;if((i.legend.showForSingleSeries&&1===e.series.length||this.isBarsDistributed||e.series.length>1||!e.axisCharts)&&i.legend.show){for(;e.dom.elLegendWrap.firstChild;)e.dom.elLegendWrap.removeChild(e.dom.elLegendWrap.firstChild);this.drawLegends(),b.isIE11()?document.getElementsByTagName("head")[0].appendChild(this.legendHelpers.getLegendStyles()):this.legendHelpers.appendToForeignObject(),"bottom"===i.legend.position||"top"===i.legend.position?this.legendAlignHorizontal():"right"!==i.legend.position&&"left"!==i.legend.position||this.legendAlignVertical()}}},{key:"drawLegends",value:function(){var t=this,e=this.w,i=e.config.legend.fontFamily,a=e.globals.seriesNames,n=e.globals.colors.slice();if("heatmap"===e.config.chart.type){var s=e.config.plotOptions.heatmap.colorScale.ranges;a=s.map((function(t){return t.name?t.name:t.from+" - "+t.to})),n=s.map((function(t){return t.color}))}else this.isBarsDistributed&&(a=e.globals.labels.slice());e.config.legend.customLegendItems.length&&(a=e.config.legend.customLegendItems);for(var r=e.globals.legendFormatter,o=e.config.legend.inverseOrder,l=o?a.length-1:0;o?l>=0:l<=a.length-1;o?l--:l++){var c=r(a[l],{seriesIndex:l,w:e}),d=!1,h=!1;if(e.globals.collapsedSeries.length>0)for(var u=0;u0)for(var p=0;p0?l-10:0)+(c>0?c-10:0)}a.style.position="absolute",s=s+t+i.config.legend.offsetX,r=r+e+i.config.legend.offsetY,a.style.left=s+"px",a.style.top=r+"px","bottom"===i.config.legend.position?(a.style.top="auto",a.style.bottom=5-i.config.legend.offsetY+"px"):"right"===i.config.legend.position&&(a.style.left="auto",a.style.right=25+i.config.legend.offsetX+"px"),["width","height"].forEach((function(t){a.style[t]&&(a.style[t]=parseInt(i.config.legend[t],10)+"px")}))}},{key:"legendAlignHorizontal",value:function(){var t=this.w;t.globals.dom.baseEl.querySelector(".apexcharts-legend").style.right=0;var e=this.legendHelpers.getLegendBBox(),i=new ct(this.ctx),a=i.dimHelpers.getTitleSubtitleCoords("title"),n=i.dimHelpers.getTitleSubtitleCoords("subtitle"),s=0;"bottom"===t.config.legend.position?s=-e.clwh/1.8:"top"===t.config.legend.position&&(s=a.height+n.height+t.config.title.margin+t.config.subtitle.margin-10),this.setLegendWrapXY(20,s)}},{key:"legendAlignVertical",value:function(){var t=this.w,e=this.legendHelpers.getLegendBBox(),i=0;"left"===t.config.legend.position&&(i=20),"right"===t.config.legend.position&&(i=t.globals.svgWidth-e.clww-10),this.setLegendWrapXY(i,20)}},{key:"onLegendHovered",value:function(t){var e=this.w,i=t.target.classList.contains("apexcharts-legend-text")||t.target.classList.contains("apexcharts-legend-marker");if("heatmap"===e.config.chart.type||this.isBarsDistributed){if(i){var a=parseInt(t.target.getAttribute("rel"),10)-1;this.ctx.events.fireEvent("legendHover",[this.ctx,a,this.w]),new F(this.ctx).highlightRangeInSeries(t,t.target)}}else!t.target.classList.contains("apexcharts-inactive-legend")&&i&&new F(this.ctx).toggleSeriesOnHover(t,t.target)}},{key:"onLegendClick",value:function(t){var e=this.w;if(!e.config.legend.customLegendItems.length&&(t.target.classList.contains("apexcharts-legend-text")||t.target.classList.contains("apexcharts-legend-marker"))){var i=parseInt(t.target.getAttribute("rel"),10)-1,a="true"===t.target.getAttribute("data:collapsed"),n=this.w.config.chart.events.legendClick;"function"==typeof n&&n(this.ctx,i,this.w),this.ctx.events.fireEvent("legendClick",[this.ctx,i,this.w]);var s=this.w.config.legend.markers.onClick;"function"==typeof s&&t.target.classList.contains("apexcharts-legend-marker")&&(s(this.ctx,i,this.w),this.ctx.events.fireEvent("legendMarkerClick",[this.ctx,i,this.w])),"treemap"!==e.config.chart.type&&"heatmap"!==e.config.chart.type&&!this.isBarsDistributed&&e.config.legend.onItemClick.toggleDataSeries&&this.legendHelpers.toggleDataSeries(i,a)}}}]),t}(),ut=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w;var i=this.w;this.ev=this.w.config.chart.events,this.selectedClass="apexcharts-selected",this.localeValues=this.w.globals.locale.toolbar,this.minX=i.globals.minX,this.maxX=i.globals.maxX}return c(t,[{key:"createToolbar",value:function(){var t=this,e=this.w,i=function(){return document.createElement("div")},a=i();if(a.setAttribute("class","apexcharts-toolbar"),a.style.top=e.config.chart.toolbar.offsetY+"px",a.style.right=3-e.config.chart.toolbar.offsetX+"px",e.globals.dom.elWrap.appendChild(a),this.elZoom=i(),this.elZoomIn=i(),this.elZoomOut=i(),this.elPan=i(),this.elSelection=i(),this.elZoomReset=i(),this.elMenuIcon=i(),this.elMenu=i(),this.elCustomIcons=[],this.t=e.config.chart.toolbar.tools,Array.isArray(this.t.customIcons))for(var n=0;n\n \n \n\n'),r("zoomOut",this.elZoomOut,'\n \n \n\n');var o=function(i){t.t[i]&&e.config.chart[i].enabled&&s.push({el:"zoom"===i?t.elZoom:t.elSelection,icon:"string"==typeof t.t[i]?t.t[i]:"zoom"===i?'\n \n \n \n':'\n \n \n',title:t.localeValues["zoom"===i?"selectionZoom":"selection"],class:e.globals.isTouchDevice?"apexcharts-element-hidden":"apexcharts-".concat(i,"-icon")})};o("zoom"),o("selection"),this.t.pan&&e.config.chart.zoom.enabled&&s.push({el:this.elPan,icon:"string"==typeof this.t.pan?this.t.pan:'\n \n \n \n \n \n \n \n',title:this.localeValues.pan,class:e.globals.isTouchDevice?"apexcharts-element-hidden":"apexcharts-pan-icon"}),r("reset",this.elZoomReset,'\n \n \n'),this.t.download&&s.push({el:this.elMenuIcon,icon:"string"==typeof this.t.download?this.t.download:'',title:this.localeValues.menu,class:"apexcharts-menu-icon"});for(var l=0;l0&&e.height>0&&this.slDraggableRect.selectize({points:"l, r",pointSize:8,pointType:"rect"}).resize({constraint:{minX:0,minY:0,maxX:t.globals.gridWidth,maxY:t.globals.gridHeight}}).on("resizing",this.selectionDragging.bind(this,"resizing"))}}},{key:"preselectedSelection",value:function(){var t=this.w,e=this.xyRatios;if(!t.globals.zoomEnabled)if(void 0!==t.globals.selection&&null!==t.globals.selection)this.drawSelectionRect(t.globals.selection);else if(void 0!==t.config.chart.selection.xaxis.min&&void 0!==t.config.chart.selection.xaxis.max){var i=(t.config.chart.selection.xaxis.min-t.globals.minX)/e.xRatio,a={x:i,y:0,width:t.globals.gridWidth-(t.globals.maxX-t.config.chart.selection.xaxis.max)/e.xRatio-i,height:t.globals.gridHeight,translateX:0,translateY:0,selectionEnabled:!0};this.drawSelectionRect(a),this.makeSelectionRectDraggable(),"function"==typeof t.config.chart.events.selection&&t.config.chart.events.selection(this.ctx,{xaxis:{min:t.config.chart.selection.xaxis.min,max:t.config.chart.selection.xaxis.max},yaxis:{}})}}},{key:"drawSelectionRect",value:function(t){var e=t.x,i=t.y,a=t.width,n=t.height,s=t.translateX,r=void 0===s?0:s,o=t.translateY,l=void 0===o?0:o,c=this.w,d=this.zoomRect,h=this.selectionRect;if(this.dragged||null!==c.globals.selection){var u={transform:"translate("+r+", "+l+")"};c.globals.zoomEnabled&&this.dragged&&(a<0&&(a=1),d.attr({x:e,y:i,width:a,height:n,fill:c.config.chart.zoom.zoomedArea.fill.color,"fill-opacity":c.config.chart.zoom.zoomedArea.fill.opacity,stroke:c.config.chart.zoom.zoomedArea.stroke.color,"stroke-width":c.config.chart.zoom.zoomedArea.stroke.width,"stroke-opacity":c.config.chart.zoom.zoomedArea.stroke.opacity}),C.setAttrs(d.node,u)),c.globals.selectionEnabled&&(h.attr({x:e,y:i,width:a>0?a:0,height:n>0?n:0,fill:c.config.chart.selection.fill.color,"fill-opacity":c.config.chart.selection.fill.opacity,stroke:c.config.chart.selection.stroke.color,"stroke-width":c.config.chart.selection.stroke.width,"stroke-dasharray":c.config.chart.selection.stroke.dashArray,"stroke-opacity":c.config.chart.selection.stroke.opacity}),C.setAttrs(h.node,u))}}},{key:"hideSelectionRect",value:function(t){t&&t.attr({x:0,y:0,width:0,height:0})}},{key:"selectionDrawing",value:function(t){var e,i=t.context,a=t.zoomtype,n=this.w,s=i,r=this.gridRect.getBoundingClientRect(),o=s.startX-1,l=s.startY,c=!1,d=!1,h=s.clientX-r.left-o,u=s.clientY-r.top-l;return Math.abs(h+o)>n.globals.gridWidth?h=n.globals.gridWidth-o:s.clientX-r.left<0&&(h=o),o>s.clientX-r.left&&(c=!0,h=Math.abs(h)),l>s.clientY-r.top&&(d=!0,u=Math.abs(u)),e="x"===a?{x:c?o-h:o,y:0,width:h,height:n.globals.gridHeight}:"y"===a?{x:0,y:d?l-u:l,width:n.globals.gridWidth,height:u}:{x:c?o-h:o,y:d?l-u:l,width:h,height:u},s.drawSelectionRect(e),s.selectionDragging("resizing"),e}},{key:"selectionDragging",value:function(t,e){var i=this,a=this.w,n=this.xyRatios,s=this.selectionRect,r=0;"resizing"===t&&(r=30);var o=function(t){return parseFloat(s.node.getAttribute(t))},l={x:o("x"),y:o("y"),width:o("width"),height:o("height")};a.globals.selection=l,"function"==typeof a.config.chart.events.selection&&a.globals.selectionEnabled&&(clearTimeout(this.w.globals.selectionResizeTimer),this.w.globals.selectionResizeTimer=window.setTimeout((function(){var t=i.gridRect.getBoundingClientRect(),e=s.node.getBoundingClientRect(),r={xaxis:{min:a.globals.xAxisScale.niceMin+(e.left-t.left)*n.xRatio,max:a.globals.xAxisScale.niceMin+(e.right-t.left)*n.xRatio},yaxis:{min:a.globals.yAxisScale[0].niceMin+(t.bottom-e.bottom)*n.yRatio[0],max:a.globals.yAxisScale[0].niceMax-(e.top-t.top)*n.yRatio[0]}};a.config.chart.events.selection(i.ctx,r),a.config.chart.brush.enabled&&void 0!==a.config.chart.events.brushScrolled&&a.config.chart.events.brushScrolled(i.ctx,r)}),r))}},{key:"selectionDrawn",value:function(t){var e=t.context,i=t.zoomtype,a=this.w,n=e,s=this.xyRatios,r=this.ctx.toolbar;if(n.startX>n.endX){var o=n.startX;n.startX=n.endX,n.endX=o}if(n.startY>n.endY){var l=n.startY;n.startY=n.endY,n.endY=l}var c=void 0,d=void 0;a.globals.isRangeBar?(c=a.globals.yAxisScale[0].niceMin+n.startX*s.invertedYRatio,d=a.globals.yAxisScale[0].niceMin+n.endX*s.invertedYRatio):(c=a.globals.xAxisScale.niceMin+n.startX*s.xRatio,d=a.globals.xAxisScale.niceMin+n.endX*s.xRatio);var h=[],u=[];if(a.config.yaxis.forEach((function(t,e){h.push(a.globals.yAxisScale[e].niceMax-s.yRatio[e]*n.startY),u.push(a.globals.yAxisScale[e].niceMax-s.yRatio[e]*n.endY)})),n.dragged&&(n.dragX>10||n.dragY>10)&&c!==d)if(a.globals.zoomEnabled){var p=b.clone(a.globals.initialConfig.yaxis),f=b.clone(a.globals.initialConfig.xaxis);if(a.globals.zoomed=!0,a.config.xaxis.convertedCatToNumeric&&(c=Math.floor(c),d=Math.floor(d),c<1&&(c=1,d=a.globals.dataPoints),d-c<2&&(d=c+1)),"xy"!==i&&"x"!==i||(f={min:c,max:d}),"xy"!==i&&"y"!==i||p.forEach((function(t,e){p[e].min=u[e],p[e].max=h[e]})),a.config.chart.zoom.autoScaleYaxis){var g=new q(n.ctx);p=g.autoScaleY(n.ctx,p,{xaxis:f})}if(r){var v=r.getBeforeZoomRange(f,p);v&&(f=v.xaxis?v.xaxis:f,p=v.yaxis?v.yaxis:p)}var m={xaxis:f};a.config.chart.group||(m.yaxis=p),n.ctx.updateHelpers._updateOptions(m,!1,n.w.config.chart.animations.dynamicAnimation.enabled),"function"==typeof a.config.chart.events.zoomed&&r.zoomCallback(f,p)}else if(a.globals.selectionEnabled){var x,y=null;x={min:c,max:d},"xy"!==i&&"y"!==i||(y=b.clone(a.config.yaxis)).forEach((function(t,e){y[e].min=u[e],y[e].max=h[e]})),a.globals.selection=n.selection,"function"==typeof a.config.chart.events.selection&&a.config.chart.events.selection(n.ctx,{xaxis:x,yaxis:y})}}},{key:"panDragging",value:function(t){var e=t.context,i=this.w,a=e;if(void 0!==i.globals.lastClientPosition.x){var n=i.globals.lastClientPosition.x-a.clientX,s=i.globals.lastClientPosition.y-a.clientY;Math.abs(n)>Math.abs(s)&&n>0?this.moveDirection="left":Math.abs(n)>Math.abs(s)&&n<0?this.moveDirection="right":Math.abs(s)>Math.abs(n)&&s>0?this.moveDirection="up":Math.abs(s)>Math.abs(n)&&s<0&&(this.moveDirection="down")}i.globals.lastClientPosition={x:a.clientX,y:a.clientY};var r=i.globals.isRangeBar?i.globals.minY:i.globals.minX,o=i.globals.isRangeBar?i.globals.maxY:i.globals.maxX;i.config.xaxis.convertedCatToNumeric||a.panScrolled(r,o)}},{key:"delayedPanScrolled",value:function(){var t=this.w,e=t.globals.minX,i=t.globals.maxX,a=(t.globals.maxX-t.globals.minX)/2;"left"===this.moveDirection?(e=t.globals.minX+a,i=t.globals.maxX+a):"right"===this.moveDirection&&(e=t.globals.minX-a,i=t.globals.maxX-a),e=Math.floor(e),i=Math.floor(i),this.updateScrolledChart({xaxis:{min:e,max:i}},e,i)}},{key:"panScrolled",value:function(t,e){var i=this.w,a=this.xyRatios,n=b.clone(i.globals.initialConfig.yaxis),s=a.xRatio,r=i.globals.minX,o=i.globals.maxX;i.globals.isRangeBar&&(s=a.invertedYRatio,r=i.globals.minY,o=i.globals.maxY),"left"===this.moveDirection?(t=r+i.globals.gridWidth/15*s,e=o+i.globals.gridWidth/15*s):"right"===this.moveDirection&&(t=r-i.globals.gridWidth/15*s,e=o-i.globals.gridWidth/15*s),i.globals.isRangeBar||(ti.globals.initialMaxX)&&(t=r,e=o);var l={min:t,max:e};i.config.chart.zoom.autoScaleYaxis&&(n=new q(this.ctx).autoScaleY(this.ctx,n,{xaxis:l}));var c={xaxis:{min:t,max:e}};i.config.chart.group||(c.yaxis=n),this.updateScrolledChart(c,t,e)}},{key:"updateScrolledChart",value:function(t,e,i){var a=this.w;this.ctx.updateHelpers._updateOptions(t,!1,!1),"function"==typeof a.config.chart.events.scrolled&&a.config.chart.events.scrolled(this.ctx,{xaxis:{min:e,max:i}})}}]),i}(ut),ft=function(){function t(e){o(this,t),this.w=e.w,this.ttCtx=e,this.ctx=e.ctx}return c(t,[{key:"getNearestValues",value:function(t){var e=t.hoverArea,i=t.elGrid,a=t.clientX,n=t.clientY,s=this.w,r=i.getBoundingClientRect(),o=r.width,l=r.height,c=o/(s.globals.dataPoints-1),d=l/s.globals.dataPoints,h=this.hasBars();!s.globals.comboCharts&&!h||s.config.xaxis.convertedCatToNumeric||(c=o/s.globals.dataPoints);var u=a-r.left-s.globals.barPadForNumericAxis,p=n-r.top;u<0||p<0||u>o||p>l?(e.classList.remove("hovering-zoom"),e.classList.remove("hovering-pan")):s.globals.zoomEnabled?(e.classList.remove("hovering-pan"),e.classList.add("hovering-zoom")):s.globals.panEnabled&&(e.classList.remove("hovering-zoom"),e.classList.add("hovering-pan"));var f=Math.round(u/c),g=Math.floor(p/d);h&&!s.config.xaxis.convertedCatToNumeric&&(f=Math.ceil(u/c),f-=1);var v=null,m=null,x=[],y=[];if(s.globals.seriesXvalues.forEach((function(t){x.push([t[0]+1e-6].concat(t))})),s.globals.seriesYvalues.forEach((function(t){y.push([t[0]+1e-6].concat(t))})),x=x.map((function(t){return t.filter((function(t){return b.isNumber(t)}))})),y=y.map((function(t){return t.filter((function(t){return b.isNumber(t)}))})),s.globals.isXNumeric){var w=this.ttCtx.getElGrid().getBoundingClientRect(),C=u*(w.width/o),S=p*(w.height/l);v=(m=this.closestInMultiArray(C,S,x,y)).index,f=m.j,null!==v&&(x=s.globals.seriesXvalues[v],f=(m=this.closestInArray(C,x)).index)}return s.globals.capturedSeriesIndex=null===v?-1:v,(!f||f<1)&&(f=0),s.globals.isBarHorizontal?s.globals.capturedDataPointIndex=g:s.globals.capturedDataPointIndex=f,{capturedSeries:v,j:s.globals.isBarHorizontal?g:f,hoverX:u,hoverY:p}}},{key:"closestInMultiArray",value:function(t,e,i,a){var n=this.w,s=0,r=null,o=-1;n.globals.series.length>1?s=this.getFirstActiveXArray(i):r=0;var l=i[s][0],c=Math.abs(t-l);if(i.forEach((function(e){e.forEach((function(e,i){var a=Math.abs(t-e);a0?e:-1})),n=0;n0)for(var a=0;ai?-1:0}));var e=[];return t.forEach((function(t){e.push(t.querySelector(".apexcharts-marker"))})),e}},{key:"hasMarkers",value:function(){return this.getElMarkers().length>0}},{key:"getElBars",value:function(){return this.w.globals.dom.baseEl.querySelectorAll(".apexcharts-bar-series, .apexcharts-candlestick-series, .apexcharts-boxPlot-series, .apexcharts-rangebar-series")}},{key:"hasBars",value:function(){return this.getElBars().length>0}},{key:"getHoverMarkerSize",value:function(t){var e=this.w,i=e.config.markers.hover.size;return void 0===i&&(i=e.globals.markers.size[t]+e.config.markers.hover.sizeOffset),i}},{key:"toggleAllTooltipSeriesGroups",value:function(t){var e=this.w,i=this.ttCtx;0===i.allTooltipSeriesGroups.length&&(i.allTooltipSeriesGroups=e.globals.dom.baseEl.querySelectorAll(".apexcharts-tooltip-series-group"));for(var a=i.allTooltipSeriesGroups,n=0;n ').concat(i.attrs.name,""),e+="
".concat(i.val,"
")})),x.innerHTML=t+"",b.innerHTML=e+""};r?l.globals.seriesGoals[e][i]&&Array.isArray(l.globals.seriesGoals[e][i])?y():(x.innerHTML="",b.innerHTML=""):y()}else x.innerHTML="",b.innerHTML="";null!==f&&(a[e].querySelector(".apexcharts-tooltip-text-z-label").innerHTML=l.config.tooltip.z.title,a[e].querySelector(".apexcharts-tooltip-text-z-value").innerHTML=void 0!==f?f:""),r&&g[0]&&(null==d||l.globals.ancillaryCollapsedSeriesIndices.indexOf(e)>-1||l.globals.collapsedSeriesIndices.indexOf(e)>-1?g[0].parentNode.style.display="none":g[0].parentNode.style.display=l.config.tooltip.items.display)}},{key:"toggleActiveInactiveSeries",value:function(t){var e=this.w;if(t)this.tooltipUtil.toggleAllTooltipSeriesGroups("enable");else{this.tooltipUtil.toggleAllTooltipSeriesGroups("disable");var i=e.globals.dom.baseEl.querySelector(".apexcharts-tooltip-series-group");i&&(i.classList.add("apexcharts-active"),i.style.display=e.config.tooltip.items.display)}}},{key:"getValuesToPrint",value:function(t){var e=t.i,i=t.j,a=this.w,n=this.ctx.series.filteredSeriesX(),s="",r="",o=null,l=null,c={series:a.globals.series,seriesIndex:e,dataPointIndex:i,w:a},d=a.globals.ttZFormatter;null===i?l=a.globals.series[e]:a.globals.isXNumeric&&"treemap"!==a.config.chart.type?(s=n[e][i],0===n[e].length&&(s=n[this.tooltipUtil.getFirstActiveXArray(n)][i])):s=void 0!==a.globals.labels[i]?a.globals.labels[i]:"";var h=s;return s=a.globals.isXNumeric&&"datetime"===a.config.xaxis.type?new B(this.ctx).xLabelFormat(a.globals.ttKeyFormatter,h,h,{i:void 0,dateFormatter:new L(this.ctx).formatDate,w:this.w}):a.globals.isBarHorizontal?a.globals.yLabelFormatters[0](h,c):a.globals.xLabelFormatter(h,c),void 0!==a.config.tooltip.x.formatter&&(s=a.globals.ttKeyFormatter(h,c)),a.globals.seriesZ.length>0&&a.globals.seriesZ[e].length>0&&(o=d(a.globals.seriesZ[e][i],a)),r="function"==typeof a.config.xaxis.tooltip.formatter?a.globals.xaxisTooltipFormatter(h,c):s,{val:Array.isArray(l)?l.join(" "):l,xVal:Array.isArray(s)?s.join(" "):s,xAxisTTVal:Array.isArray(r)?r.join(" "):r,zVal:o}}},{key:"handleCustomTooltip",value:function(t){var e=t.i,i=t.j,a=t.y1,n=t.y2,s=t.w,r=this.ttCtx.getElTooltip(),o=s.config.tooltip.custom;Array.isArray(o)&&o[e]&&(o=o[e]),r.innerHTML=o({ctx:this.ctx,series:s.globals.series,seriesIndex:e,dataPointIndex:i,y1:a,y2:n,w:s})}}]),t}(),vt=function(){function t(e){o(this,t),this.ttCtx=e,this.ctx=e.ctx,this.w=e.w}return c(t,[{key:"moveXCrosshairs",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,i=this.ttCtx,a=this.w,n=i.getElXCrosshairs(),s=t-i.xcrosshairsWidth/2,r=a.globals.labels.slice().length;if(null!==e&&(s=a.globals.gridWidth/r*e),null===n||a.globals.isBarHorizontal||(n.setAttribute("x",s),n.setAttribute("x1",s),n.setAttribute("x2",s),n.setAttribute("y2",a.globals.gridHeight),n.classList.add("apexcharts-active")),s<0&&(s=0),s>a.globals.gridWidth&&(s=a.globals.gridWidth),i.isXAxisTooltipEnabled){var o=s;"tickWidth"!==a.config.xaxis.crosshairs.width&&"barWidth"!==a.config.xaxis.crosshairs.width||(o=s+i.xcrosshairsWidth/2),this.moveXAxisTooltip(o)}}},{key:"moveYCrosshairs",value:function(t){var e=this.ttCtx;null!==e.ycrosshairs&&C.setAttrs(e.ycrosshairs,{y1:t,y2:t}),null!==e.ycrosshairsHidden&&C.setAttrs(e.ycrosshairsHidden,{y1:t,y2:t})}},{key:"moveXAxisTooltip",value:function(t){var e=this.w,i=this.ttCtx;if(null!==i.xaxisTooltip&&0!==i.xcrosshairsWidth){i.xaxisTooltip.classList.add("apexcharts-active");var a,n=i.xaxisOffY+e.config.xaxis.tooltip.offsetY+e.globals.translateY+1+e.config.xaxis.offsetY;t-=i.xaxisTooltip.getBoundingClientRect().width/2,isNaN(t)||(t+=e.globals.translateX,a=new C(this.ctx).getTextRects(i.xaxisTooltipText.innerHTML),i.xaxisTooltipText.style.minWidth=a.width+"px",i.xaxisTooltip.style.left=t+"px",i.xaxisTooltip.style.top=n+"px")}}},{key:"moveYAxisTooltip",value:function(t){var e=this.w,i=this.ttCtx;null===i.yaxisTTEls&&(i.yaxisTTEls=e.globals.dom.baseEl.querySelectorAll(".apexcharts-yaxistooltip"));var a=parseInt(i.ycrosshairsHidden.getAttribute("y1"),10),n=e.globals.translateY+a,s=i.yaxisTTEls[t].getBoundingClientRect().height,r=e.globals.translateYAxisX[t]-2;e.config.yaxis[t].opposite&&(r-=26),n-=s/2,-1===e.globals.ignoreYAxisIndexes.indexOf(t)?(i.yaxisTTEls[t].classList.add("apexcharts-active"),i.yaxisTTEls[t].style.top=n+"px",i.yaxisTTEls[t].style.left=r+e.config.yaxis[t].tooltip.offsetX+"px"):i.yaxisTTEls[t].classList.remove("apexcharts-active")}},{key:"moveTooltip",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=this.w,n=this.ttCtx,s=n.getElTooltip(),r=n.tooltipRect,o=null!==i?parseFloat(i):1,l=parseFloat(t)+o+5,c=parseFloat(e)+o/2;if(l>a.globals.gridWidth/2&&(l=l-r.ttWidth-o-10),l>a.globals.gridWidth-r.ttWidth-10&&(l=a.globals.gridWidth-r.ttWidth),l<-20&&(l=-20),a.config.tooltip.followCursor){var d=n.getElGrid().getBoundingClientRect();c=n.e.clientY+a.globals.translateY-d.top-r.ttHeight/2}else a.globals.isBarHorizontal||(r.ttHeight/2+c>a.globals.gridHeight&&(c=a.globals.gridHeight-r.ttHeight+a.globals.translateY),c<0&&(c=0));isNaN(l)||(l+=a.globals.translateX,s.style.left=l+"px",s.style.top=c+"px")}},{key:"moveMarkers",value:function(t,e){var i=this.w,a=this.ttCtx;if(i.globals.markers.size[t]>0)for(var n=i.globals.dom.baseEl.querySelectorAll(" .apexcharts-series[data\\:realIndex='".concat(t,"'] .apexcharts-marker")),s=0;s0&&(c.setAttribute("r",o),c.setAttribute("cx",i),c.setAttribute("cy",a)),this.moveXCrosshairs(i),s.fixedTooltip||this.moveTooltip(i,a,o)}}},{key:"moveDynamicPointsOnHover",value:function(t){var e,i=this.ttCtx,a=i.w,n=0,s=0,r=a.globals.pointsArray;e=new F(this.ctx).getActiveConfigSeriesIndex("asc",["line","area","scatter","bubble"]);var o=i.tooltipUtil.getHoverMarkerSize(e);r[e]&&(n=r[e][t][0],s=r[e][t][1]);var l=i.tooltipUtil.getAllMarkers();if(null!==l)for(var c=0;c0?(l[c]&&l[c].setAttribute("r",o),l[c]&&l[c].setAttribute("cy",h)):l[c]&&l[c].setAttribute("r",0)}}if(this.moveXCrosshairs(n),!i.fixedTooltip){var f=s||a.globals.gridHeight;this.moveTooltip(n,f,o)}}},{key:"moveStickyTooltipOverBars",value:function(t){var e=this.w,i=this.ttCtx,a=e.globals.columnSeries?e.globals.columnSeries.length:e.globals.series.length,n=a>=2&&a%2==0?Math.floor(a/2):Math.floor(a/2)+1;e.globals.isBarHorizontal&&(n=new F(this.ctx).getActiveConfigSeriesIndex("desc")+1);var s=e.globals.dom.baseEl.querySelector(".apexcharts-bar-series .apexcharts-series[rel='".concat(n,"'] path[j='").concat(t,"'], .apexcharts-candlestick-series .apexcharts-series[rel='").concat(n,"'] path[j='").concat(t,"'], .apexcharts-boxPlot-series .apexcharts-series[rel='").concat(n,"'] path[j='").concat(t,"'], .apexcharts-rangebar-series .apexcharts-series[rel='").concat(n,"'] path[j='").concat(t,"']")),r=s?parseFloat(s.getAttribute("cx")):0,o=s?parseFloat(s.getAttribute("cy")):0,l=s?parseFloat(s.getAttribute("barWidth")):0,c=s?parseFloat(s.getAttribute("barHeight")):0,d=i.getElGrid().getBoundingClientRect(),h=s.classList.contains("apexcharts-candlestick-area")||s.classList.contains("apexcharts-boxPlot-area");if(e.globals.isXNumeric?(s&&!h&&(r-=a%2!=0?l/2:0),s&&h&&e.globals.comboCharts&&(r-=l/2)):e.globals.isBarHorizontal||(r=i.xAxisTicksPositions[t-1]+i.dataPointsDividedWidth/2,isNaN(r)&&(r=i.xAxisTicksPositions[t]-i.dataPointsDividedWidth/2)),e.globals.isBarHorizontal?(o>e.globals.gridHeight/2&&(o-=i.tooltipRect.ttHeight),(o=o+e.config.grid.padding.top+c/3)+c>e.globals.gridHeight&&(o=e.globals.gridHeight-c)):e.config.tooltip.followCursor?o=i.e.clientY-d.top-i.tooltipRect.ttHeight/2:o+i.tooltipRect.ttHeight+15>e.globals.gridHeight&&(o=e.globals.gridHeight),o<-10&&(o=-10),e.globals.isBarHorizontal||this.moveXCrosshairs(r),!i.fixedTooltip){var u=o||e.globals.gridHeight;this.moveTooltip(r,u)}}}]),t}(),mt=function(){function t(e){o(this,t),this.w=e.w,this.ttCtx=e,this.ctx=e.ctx,this.tooltipPosition=new vt(e)}return c(t,[{key:"drawDynamicPoints",value:function(){var t=this.w,e=new C(this.ctx),i=new H(this.ctx),a=t.globals.dom.baseEl.querySelectorAll(".apexcharts-series");a=v(a),t.config.chart.stacked&&a.sort((function(t,e){return parseFloat(t.getAttribute("data:realIndex"))-parseFloat(e.getAttribute("data:realIndex"))}));for(var n=0;n2&&void 0!==arguments[2]?arguments[2]:null,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,n=this.w;"bubble"!==n.config.chart.type&&this.newPointSize(t,e);var s=e.getAttribute("cx"),r=e.getAttribute("cy");if(null!==i&&null!==a&&(s=i,r=a),this.tooltipPosition.moveXCrosshairs(s),!this.fixedTooltip){if("radar"===n.config.chart.type){var o=this.ttCtx.getElGrid().getBoundingClientRect();s=this.ttCtx.e.clientX-o.left}this.tooltipPosition.moveTooltip(s,r,n.config.markers.hover.size)}}},{key:"enlargePoints",value:function(t){for(var e=this.w,i=this,a=this.ttCtx,n=t,s=e.globals.dom.baseEl.querySelectorAll(".apexcharts-series:not(.apexcharts-series-collapsed) .apexcharts-marker"),r=e.config.markers.hover.size,o=0;o=0?t[e].setAttribute("r",i):t[e].setAttribute("r",0)}}}]),t}(),xt=function(){function t(e){o(this,t),this.w=e.w,this.ttCtx=e}return c(t,[{key:"getAttr",value:function(t,e){return parseFloat(t.target.getAttribute(e))}},{key:"handleHeatTreeTooltip",value:function(t){var e=t.e,i=t.opt,a=t.x,n=t.y,s=t.type,r=this.ttCtx,o=this.w;if(e.target.classList.contains("apexcharts-".concat(s,"-rect"))){var l=this.getAttr(e,"i"),c=this.getAttr(e,"j"),d=this.getAttr(e,"cx"),h=this.getAttr(e,"cy"),u=this.getAttr(e,"width"),p=this.getAttr(e,"height");if(r.tooltipLabels.drawSeriesTexts({ttItems:i.ttItems,i:l,j:c,shared:!1,e:e}),o.globals.capturedSeriesIndex=l,o.globals.capturedDataPointIndex=c,a=d+r.tooltipRect.ttWidth/2+u,n=h+r.tooltipRect.ttHeight/2-p/2,r.tooltipPosition.moveXCrosshairs(d+u/2),a>o.globals.gridWidth/2&&(a=d-r.tooltipRect.ttWidth/2+u),r.w.config.tooltip.followCursor){var f=o.globals.dom.elWrap.getBoundingClientRect();a=o.globals.clientX-f.left-(a>o.globals.gridWidth/2?r.tooltipRect.ttWidth:0),n=o.globals.clientY-f.top-(n>o.globals.gridHeight/2?r.tooltipRect.ttHeight:0)}}return{x:a,y:n}}},{key:"handleMarkerTooltip",value:function(t){var e,i,a=t.e,n=t.opt,s=t.x,r=t.y,o=this.w,l=this.ttCtx;if(a.target.classList.contains("apexcharts-marker")){var c=parseInt(n.paths.getAttribute("cx"),10),d=parseInt(n.paths.getAttribute("cy"),10),h=parseFloat(n.paths.getAttribute("val"));if(i=parseInt(n.paths.getAttribute("rel"),10),e=parseInt(n.paths.parentNode.parentNode.parentNode.getAttribute("rel"),10)-1,l.intersect){var u=b.findAncestor(n.paths,"apexcharts-series");u&&(e=parseInt(u.getAttribute("data:realIndex"),10))}if(l.tooltipLabels.drawSeriesTexts({ttItems:n.ttItems,i:e,j:i,shared:!l.showOnIntersect&&o.config.tooltip.shared,e:a}),"mouseup"===a.type&&l.markerClick(a,e,i),o.globals.capturedSeriesIndex=e,o.globals.capturedDataPointIndex=i,s=c,r=d+o.globals.translateY-1.4*l.tooltipRect.ttHeight,l.w.config.tooltip.followCursor){var p=l.getElGrid().getBoundingClientRect();r=l.e.clientY+o.globals.translateY-p.top}h<0&&(r=d),l.marker.enlargeCurrentPoint(i,n.paths,s,r)}return{x:s,y:r}}},{key:"handleBarTooltip",value:function(t){var e,i,a=t.e,n=t.opt,s=this.w,r=this.ttCtx,o=r.getElTooltip(),l=0,c=0,d=0,h=this.getBarTooltipXY({e:a,opt:n});e=h.i;var u=h.barHeight,p=h.j;s.globals.capturedSeriesIndex=e,s.globals.capturedDataPointIndex=p,s.globals.isBarHorizontal&&r.tooltipUtil.hasBars()||!s.config.tooltip.shared?(c=h.x,d=h.y,i=Array.isArray(s.config.stroke.width)?s.config.stroke.width[e]:s.config.stroke.width,l=c):s.globals.comboCharts||s.config.tooltip.shared||(l/=2),isNaN(d)?d=s.globals.svgHeight-r.tooltipRect.ttHeight:d<0&&(d=0);var f=parseInt(n.paths.parentNode.getAttribute("data:realIndex"),10),g=s.globals.isMultipleYAxis?s.config.yaxis[f]&&s.config.yaxis[f].reversed:s.config.yaxis[0].reversed;if(c+r.tooltipRect.ttWidth>s.globals.gridWidth&&!g?c-=r.tooltipRect.ttWidth:c<0&&(c=0),r.w.config.tooltip.followCursor){var v=r.getElGrid().getBoundingClientRect();d=r.e.clientY-v.top}null===r.tooltip&&(r.tooltip=s.globals.dom.baseEl.querySelector(".apexcharts-tooltip")),s.config.tooltip.shared||(s.globals.comboBarCount>0?r.tooltipPosition.moveXCrosshairs(l+i/2):r.tooltipPosition.moveXCrosshairs(l)),!r.fixedTooltip&&(!s.config.tooltip.shared||s.globals.isBarHorizontal&&r.tooltipUtil.hasBars())&&(g&&(c-=r.tooltipRect.ttWidth)<0&&(c=0),!g||s.globals.isBarHorizontal&&r.tooltipUtil.hasBars()||(d=d+u-2*(s.globals.series[e][p]<0?u:0)),r.tooltipRect.ttHeight+d>s.globals.gridHeight?d=s.globals.gridHeight-r.tooltipRect.ttHeight+s.globals.translateY:(d=d+s.globals.translateY-r.tooltipRect.ttHeight/2)<0&&(d=0),o.style.left=c+s.globals.translateX+"px",o.style.top=d+"px")}},{key:"getBarTooltipXY",value:function(t){var e=t.e,i=t.opt,a=this.w,n=null,s=this.ttCtx,r=0,o=0,l=0,c=0,d=0,h=e.target.classList;if(h.contains("apexcharts-bar-area")||h.contains("apexcharts-candlestick-area")||h.contains("apexcharts-boxPlot-area")||h.contains("apexcharts-rangebar-area")){var u=e.target,p=u.getBoundingClientRect(),f=i.elGrid.getBoundingClientRect(),g=p.height;d=p.height;var v=p.width,m=parseInt(u.getAttribute("cx"),10),x=parseInt(u.getAttribute("cy"),10);c=parseFloat(u.getAttribute("barWidth"));var b="touchmove"===e.type?e.touches[0].clientX:e.clientX;n=parseInt(u.getAttribute("j"),10),r=parseInt(u.parentNode.getAttribute("rel"),10)-1;var y=u.getAttribute("data-range-y1"),w=u.getAttribute("data-range-y2");a.globals.comboCharts&&(r=parseInt(u.parentNode.getAttribute("data:realIndex"),10)),s.tooltipLabels.drawSeriesTexts({ttItems:i.ttItems,i:r,j:n,y1:y?parseInt(y,10):null,y2:w?parseInt(w,10):null,shared:!s.showOnIntersect&&a.config.tooltip.shared,e:e}),a.config.tooltip.followCursor?a.globals.isBarHorizontal?(o=b-f.left+15,l=x-s.dataPointsDividedHeight+g/2-s.tooltipRect.ttHeight/2):(o=a.globals.isXNumeric?m-v/2:m-s.dataPointsDividedWidth+v/2,l=e.clientY-f.top-s.tooltipRect.ttHeight/2-15):a.globals.isBarHorizontal?((o=m)0&&i.setAttribute("width",e.xcrosshairsWidth)}},{key:"handleYCrosshair",value:function(){var t=this.w,e=this.ttCtx;e.ycrosshairs=t.globals.dom.baseEl.querySelector(".apexcharts-ycrosshairs"),e.ycrosshairsHidden=t.globals.dom.baseEl.querySelector(".apexcharts-ycrosshairs-hidden")}},{key:"drawYaxisTooltipText",value:function(t,e,i){var a=this.ttCtx,n=this.w,s=n.globals.yLabelFormatters[t];if(a.yaxisTooltips[t]){var r=a.getElGrid().getBoundingClientRect(),o=(e-r.top)*i.yRatio[t],l=n.globals.maxYArr[t]-n.globals.minYArr[t],c=n.globals.minYArr[t]+(l-o);a.tooltipPosition.moveYCrosshairs(e-r.top),a.yaxisTooltipText[t].innerHTML=s(c),a.tooltipPosition.moveYAxisTooltip(t)}}}]),t}(),yt=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w;var i=this.w;this.tConfig=i.config.tooltip,this.tooltipUtil=new ft(this),this.tooltipLabels=new gt(this),this.tooltipPosition=new vt(this),this.marker=new mt(this),this.intersect=new xt(this),this.axesTooltip=new bt(this),this.showOnIntersect=this.tConfig.intersect,this.showTooltipTitle=this.tConfig.x.show,this.fixedTooltip=this.tConfig.fixed.enabled,this.xaxisTooltip=null,this.yaxisTTEls=null,this.isBarShared=!i.globals.isBarHorizontal&&this.tConfig.shared,this.lastHoverTime=Date.now()}return c(t,[{key:"getElTooltip",value:function(t){return t||(t=this),t.w.globals.dom.baseEl?t.w.globals.dom.baseEl.querySelector(".apexcharts-tooltip"):null}},{key:"getElXCrosshairs",value:function(){return this.w.globals.dom.baseEl.querySelector(".apexcharts-xcrosshairs")}},{key:"getElGrid",value:function(){return this.w.globals.dom.baseEl.querySelector(".apexcharts-grid")}},{key:"drawTooltip",value:function(t){var e=this.w;this.xyRatios=t,this.isXAxisTooltipEnabled=e.config.xaxis.tooltip.enabled&&e.globals.axisCharts,this.yaxisTooltips=e.config.yaxis.map((function(t,i){return!!(t.show&&t.tooltip.enabled&&e.globals.axisCharts)})),this.allTooltipSeriesGroups=[],e.globals.axisCharts||(this.showTooltipTitle=!1);var i=document.createElement("div");if(i.classList.add("apexcharts-tooltip"),e.config.tooltip.cssClass&&i.classList.add(e.config.tooltip.cssClass),i.classList.add("apexcharts-theme-".concat(this.tConfig.theme)),e.globals.dom.elWrap.appendChild(i),e.globals.axisCharts){this.axesTooltip.drawXaxisTooltip(),this.axesTooltip.drawYaxisTooltip(),this.axesTooltip.setXCrosshairWidth(),this.axesTooltip.handleYCrosshair();var a=new G(this.ctx);this.xAxisTicksPositions=a.getXAxisTicksPositions()}if(!e.globals.comboCharts&&!this.tConfig.intersect&&"rangeBar"!==e.config.chart.type||this.tConfig.shared||(this.showOnIntersect=!0),0!==e.config.markers.size&&0!==e.globals.markers.largestSize||this.marker.drawDynamicPoints(this),e.globals.collapsedSeries.length!==e.globals.series.length){this.dataPointsDividedHeight=e.globals.gridHeight/e.globals.dataPoints,this.dataPointsDividedWidth=e.globals.gridWidth/e.globals.dataPoints,this.showTooltipTitle&&(this.tooltipTitle=document.createElement("div"),this.tooltipTitle.classList.add("apexcharts-tooltip-title"),this.tooltipTitle.style.fontFamily=this.tConfig.style.fontFamily||e.config.chart.fontFamily,this.tooltipTitle.style.fontSize=this.tConfig.style.fontSize,i.appendChild(this.tooltipTitle));var n=e.globals.series.length;(e.globals.xyCharts||e.globals.comboCharts)&&this.tConfig.shared&&(n=this.showOnIntersect?1:e.globals.series.length),this.legendLabels=e.globals.dom.baseEl.querySelectorAll(".apexcharts-legend-text"),this.ttItems=this.createTTElements(n),this.addSVGEvents()}}},{key:"createTTElements",value:function(t){for(var e=this,i=this.w,a=[],n=this.getElTooltip(),s=function(s){var r=document.createElement("div");r.classList.add("apexcharts-tooltip-series-group"),r.style.order=i.config.tooltip.inverseOrder?t-s:s+1,e.tConfig.shared&&e.tConfig.enabledOnSeries&&Array.isArray(e.tConfig.enabledOnSeries)&&e.tConfig.enabledOnSeries.indexOf(s)<0&&r.classList.add("apexcharts-tooltip-series-group-hidden");var o=document.createElement("span");o.classList.add("apexcharts-tooltip-marker"),o.style.backgroundColor=i.globals.colors[s],r.appendChild(o);var l=document.createElement("div");l.classList.add("apexcharts-tooltip-text"),l.style.fontFamily=e.tConfig.style.fontFamily||i.config.chart.fontFamily,l.style.fontSize=e.tConfig.style.fontSize,["y","goals","z"].forEach((function(t){var e=document.createElement("div");e.classList.add("apexcharts-tooltip-".concat(t,"-group"));var i=document.createElement("span");i.classList.add("apexcharts-tooltip-text-".concat(t,"-label")),e.appendChild(i);var a=document.createElement("span");a.classList.add("apexcharts-tooltip-text-".concat(t,"-value")),e.appendChild(a),l.appendChild(e)})),r.appendChild(l),n.appendChild(r),a.push(r)},r=0;r0&&this.addPathsEventListeners(p,d),this.tooltipUtil.hasBars()&&!this.tConfig.shared&&this.addDatapointEventsListeners(d)}}},{key:"drawFixedTooltipRect",value:function(){var t=this.w,e=this.getElTooltip(),i=e.getBoundingClientRect(),a=i.width+10,n=i.height+10,s=this.tConfig.fixed.offsetX,r=this.tConfig.fixed.offsetY,o=this.tConfig.fixed.position.toLowerCase();return o.indexOf("right")>-1&&(s=s+t.globals.svgWidth-a+10),o.indexOf("bottom")>-1&&(r=r+t.globals.svgHeight-n-10),e.style.left=s+"px",e.style.top=r+"px",{x:s,y:r,ttWidth:a,ttHeight:n}}},{key:"addDatapointEventsListeners",value:function(t){var e=this.w.globals.dom.baseEl.querySelectorAll(".apexcharts-series-markers .apexcharts-marker, .apexcharts-bar-area, .apexcharts-candlestick-area, .apexcharts-boxPlot-area, .apexcharts-rangebar-area");this.addPathsEventListeners(e,t)}},{key:"addPathsEventListeners",value:function(t,e){for(var i=this,a=function(a){var n={paths:t[a],tooltipEl:e.tooltipEl,tooltipY:e.tooltipY,tooltipX:e.tooltipX,elGrid:e.elGrid,hoverArea:e.hoverArea,ttItems:e.ttItems};["mousemove","mouseup","touchmove","mouseout","touchend"].map((function(e){return t[a].addEventListener(e,i.onSeriesHover.bind(i,n),{capture:!1,passive:!0})}))},n=0;n=100?this.seriesHover(t,e):(clearTimeout(this.seriesHoverTimeout),this.seriesHoverTimeout=setTimeout((function(){i.seriesHover(t,e)}),100-a))}},{key:"seriesHover",value:function(t,e){var i=this;this.lastHoverTime=Date.now();var a=[],n=this.w;n.config.chart.group&&(a=this.ctx.getGroupedCharts()),n.globals.axisCharts&&(n.globals.minX===-1/0&&n.globals.maxX===1/0||0===n.globals.dataPoints)||(a.length?a.forEach((function(a){var n=i.getElTooltip(a),s={paths:t.paths,tooltipEl:n,tooltipY:t.tooltipY,tooltipX:t.tooltipX,elGrid:t.elGrid,hoverArea:t.hoverArea,ttItems:a.w.globals.tooltip.ttItems};a.w.globals.minX===i.w.globals.minX&&a.w.globals.maxX===i.w.globals.maxX&&a.w.globals.tooltip.seriesHoverByContext({chartCtx:a,ttCtx:a.w.globals.tooltip,opt:s,e:e})})):this.seriesHoverByContext({chartCtx:this.ctx,ttCtx:this.w.globals.tooltip,opt:t,e:e}))}},{key:"seriesHoverByContext",value:function(t){var e=t.chartCtx,i=t.ttCtx,a=t.opt,n=t.e,s=e.w,r=this.getElTooltip();r&&(i.tooltipRect={x:0,y:0,ttWidth:r.getBoundingClientRect().width,ttHeight:r.getBoundingClientRect().height},i.e=n,!i.tooltipUtil.hasBars()||s.globals.comboCharts||i.isBarShared||this.tConfig.onDatasetHover.highlightDataSeries&&new F(e).toggleSeriesOnHover(n,n.target.parentNode),i.fixedTooltip&&i.drawFixedTooltipRect(),s.globals.axisCharts?i.axisChartsTooltips({e:n,opt:a,tooltipRect:i.tooltipRect}):i.nonAxisChartsTooltips({e:n,opt:a,tooltipRect:i.tooltipRect}))}},{key:"axisChartsTooltips",value:function(t){var e,i,a=t.e,n=t.opt,s=this.w,r=n.elGrid.getBoundingClientRect(),o="touchmove"===a.type?a.touches[0].clientX:a.clientX,l="touchmove"===a.type?a.touches[0].clientY:a.clientY;if(this.clientY=l,this.clientX=o,s.globals.capturedSeriesIndex=-1,s.globals.capturedDataPointIndex=-1,lr.top+r.height)this.handleMouseOut(n);else{if(Array.isArray(this.tConfig.enabledOnSeries)&&!s.config.tooltip.shared){var c=parseInt(n.paths.getAttribute("index"),10);if(this.tConfig.enabledOnSeries.indexOf(c)<0)return void this.handleMouseOut(n)}var d=this.getElTooltip(),h=this.getElXCrosshairs(),u=s.globals.xyCharts||"bar"===s.config.chart.type&&!s.globals.isBarHorizontal&&this.tooltipUtil.hasBars()&&this.tConfig.shared||s.globals.comboCharts&&this.tooltipUtil.hasBars();if("mousemove"===a.type||"touchmove"===a.type||"mouseup"===a.type){if(s.globals.collapsedSeries.length+s.globals.ancillaryCollapsedSeries.length===s.globals.series.length)return;null!==h&&h.classList.add("apexcharts-active");var p=this.yaxisTooltips.filter((function(t){return!0===t}));if(null!==this.ycrosshairs&&p.length&&this.ycrosshairs.classList.add("apexcharts-active"),u&&!this.showOnIntersect)this.handleStickyTooltip(a,o,l,n);else if("heatmap"===s.config.chart.type||"treemap"===s.config.chart.type){var f=this.intersect.handleHeatTreeTooltip({e:a,opt:n,x:e,y:i,type:s.config.chart.type});e=f.x,i=f.y,d.style.left=e+"px",d.style.top=i+"px"}else this.tooltipUtil.hasBars()&&this.intersect.handleBarTooltip({e:a,opt:n}),this.tooltipUtil.hasMarkers()&&this.intersect.handleMarkerTooltip({e:a,opt:n,x:e,y:i});if(this.yaxisTooltips.length)for(var g=0;gl.width?this.handleMouseOut(a):null!==o?this.handleStickyCapturedSeries(t,o,a,r):(this.tooltipUtil.isXoverlap(r)||n.globals.isBarHorizontal)&&this.create(t,this,0,r,a.ttItems)}},{key:"handleStickyCapturedSeries",value:function(t,e,i,a){var n=this.w;this.tConfig.shared||null!==n.globals.series[e][a]?void 0!==n.globals.series[e][a]?this.tConfig.shared&&this.tooltipUtil.isXoverlap(a)&&this.tooltipUtil.isInitialSeriesSameLen()?this.create(t,this,e,a,i.ttItems):this.create(t,this,e,a,i.ttItems,!1):this.tooltipUtil.isXoverlap(a)&&this.create(t,this,0,a,i.ttItems):this.handleMouseOut(i)}},{key:"deactivateHoverFilter",value:function(){for(var t=this.w,e=new C(this.ctx),i=t.globals.dom.Paper.select(".apexcharts-bar-area"),a=0;a5&&void 0!==arguments[5]?arguments[5]:null,r=this.w,o=e;"mouseup"===t.type&&this.markerClick(t,i,a),null===s&&(s=this.tConfig.shared);var l=this.tooltipUtil.hasMarkers(),c=this.tooltipUtil.getElBars();if(r.config.legend.tooltipHoverFormatter){var d=r.config.legend.tooltipHoverFormatter,h=Array.from(this.legendLabels);h.forEach((function(t){var e=t.getAttribute("data:default-text");t.innerHTML=decodeURIComponent(e)}));for(var u=0;u0?o.marker.enlargePoints(a):o.tooltipPosition.moveDynamicPointsOnHover(a)),this.tooltipUtil.hasBars()&&(this.barSeriesHeight=this.tooltipUtil.getBarsHeight(c),this.barSeriesHeight>0)){var m=new C(this.ctx),x=r.globals.dom.Paper.select(".apexcharts-bar-area[j='".concat(a,"']"));this.deactivateHoverFilter(),this.tooltipPosition.moveStickyTooltipOverBars(a);for(var b=0;bn.globals.gridHeight&&(p=n.globals.gridHeight-m)),{bcx:c,bcy:l,dataLabelsX:e,dataLabelsY:p,totalDataLabelsX:a,totalDataLabelsY:i,totalDataLabelsAnchor:"middle"}}},{key:"calculateBarsDataLabelsPosition",value:function(t){var e=this.w,i=t.x,a=t.i,n=t.j,s=t.realIndex,r=t.bcy,o=t.barHeight,l=t.barWidth,c=t.textRects,d=t.dataLabelsX,h=t.strokeWidth,u=t.dataLabelsConfig,p=t.barDataLabelsConfig,f=t.barTotalDataLabelsConfig,g=t.offX,v=t.offY,m=e.globals.gridHeight/e.globals.dataPoints;l=Math.abs(l);var x,b,y=r-(this.barCtx.isRangeBar?0:m)+o/2+c.height/2+v-3,w="start",S=this.barCtx.series[a][n]<0,k=i;switch(this.barCtx.isReversed&&(k=i+l-(S?2*l:0),i=e.globals.gridWidth-l),p.position){case"center":d=S?k+l/2-g:Math.max(c.width/2,k-l/2)+g;break;case"bottom":d=S?k+l-h-Math.round(c.width/2)-g:k-l+h+Math.round(c.width/2)+g;break;case"top":d=S?k-h+Math.round(c.width/2)-g:k-h-Math.round(c.width/2)+g}if(this.barCtx.lastActiveBarSerieIndex===s&&f.enabled){var A=new C(this.barCtx.ctx).getTextRects(this.getStackedTotalDataLabel({realIndex:s,j:n}),u.fontSize);S?(x=k-h+Math.round(A.width/2)-g-f.offsetX-15,w="end"):x=k-h-Math.round(A.width/2)+g+f.offsetX+15,b=y+f.offsetY}return e.config.chart.stacked||(d<0?d=d+c.width+h:d+c.width/2>e.globals.gridWidth&&(d=e.globals.gridWidth-c.width-h)),{bcx:i,bcy:r,dataLabelsX:d,dataLabelsY:y,totalDataLabelsX:x,totalDataLabelsY:b,totalDataLabelsAnchor:w}}},{key:"drawCalculatedDataLabels",value:function(t){var e=t.x,i=t.y,a=t.val,n=t.i,r=t.j,o=t.textRects,l=t.barHeight,c=t.barWidth,d=t.dataLabelsConfig,h=this.w,u="rotate(0)";"vertical"===h.config.plotOptions.bar.dataLabels.orientation&&(u="rotate(-90, ".concat(e,", ").concat(i,")"));var p=new R(this.barCtx.ctx),f=new C(this.barCtx.ctx),g=d.formatter,v=null,m=h.globals.collapsedSeriesIndices.indexOf(n)>-1;if(d.enabled&&!m){v=f.group({class:"apexcharts-data-labels",transform:u});var x="";void 0!==a&&(x=g(a,s(s({},h),{},{seriesIndex:n,dataPointIndex:r,w:h})));var b=h.globals.series[n][r]<0,y=h.config.plotOptions.bar.dataLabels.position;"vertical"===h.config.plotOptions.bar.dataLabels.orientation&&("top"===y&&(d.textAnchor=b?"end":"start"),"center"===y&&(d.textAnchor="middle"),"bottom"===y&&(d.textAnchor=b?"end":"start")),this.barCtx.isRangeBar&&this.barCtx.barOptions.dataLabels.hideOverflowingLabels&&cMath.abs(c)&&(x=""):o.height/1.6>Math.abs(l)&&(x=""));var w=s({},d);this.barCtx.isHorizontal&&a<0&&("start"===d.textAnchor?w.textAnchor="end":"end"===d.textAnchor&&(w.textAnchor="start")),p.plotDataLabelsText({x:e,y:i,text:x,i:n,j:r,parent:v,dataLabelsConfig:w,alwaysDrawDataLabel:!0,offsetCorrection:!0})}return v}},{key:"drawTotalDataLabels",value:function(t){var e,i=t.x,a=t.y,n=t.val,s=t.realIndex,r=t.textAnchor,o=t.barTotalDataLabelsConfig,l=new C(this.barCtx.ctx);return o.enabled&&void 0!==i&&void 0!==a&&this.barCtx.lastActiveBarSerieIndex===s&&(e=l.drawText({x:i,y:a,foreColor:o.style.color,text:n,textAnchor:r,fontFamily:o.style.fontFamily,fontSize:o.style.fontSize,fontWeight:o.style.fontWeight})),e}}]),t}(),Ct=function(){function t(e){o(this,t),this.w=e.w,this.barCtx=e}return c(t,[{key:"initVariables",value:function(t){var e=this.w;this.barCtx.series=t,this.barCtx.totalItems=0,this.barCtx.seriesLen=0,this.barCtx.visibleI=-1,this.barCtx.visibleItems=1;for(var i=0;i0&&(this.barCtx.seriesLen=this.barCtx.seriesLen+1,this.barCtx.totalItems+=t[i].length),e.globals.isXNumeric)for(var a=0;ae.globals.minX&&e.globals.seriesX[i][a]0&&(a=l.globals.minXDiff/h),(s=a/this.barCtx.seriesLen*parseInt(this.barCtx.barOptions.columnWidth,10)/100)<1&&(s=1)}r=l.globals.gridHeight-this.barCtx.baseLineY[this.barCtx.yaxisIndex]-(this.barCtx.isReversed?l.globals.gridHeight:0)+(this.barCtx.isReversed?2*this.barCtx.baseLineY[this.barCtx.yaxisIndex]:0),t=l.globals.padHorizontal+(a-s*this.barCtx.seriesLen)/2}return{x:t,y:e,yDivision:i,xDivision:a,barHeight:n,barWidth:s,zeroH:r,zeroW:o}}},{key:"getPathFillColor",value:function(t,e,i,a){var n,s,r,o,l=this.w,c=new j(this.barCtx.ctx),d=null,h=this.barCtx.barOptions.distributed?i:e;return this.barCtx.barOptions.colors.ranges.length>0&&this.barCtx.barOptions.colors.ranges.map((function(a){t[e][i]>=a.from&&t[e][i]<=a.to&&(d=a.color)})),l.config.series[e].data[i]&&l.config.series[e].data[i].fillColor&&(d=l.config.series[e].data[i].fillColor),c.fillPath({seriesNumber:this.barCtx.barOptions.distributed?h:a,dataPointIndex:i,color:d,value:t[e][i],fillConfig:null===(n=l.config.series[e].data[i])||void 0===n?void 0:n.fill,fillType:null!==(s=l.config.series[e].data[i])&&void 0!==s&&null!==(r=s.fill)&&void 0!==r&&r.type?null===(o=l.config.series[e].data[i])||void 0===o?void 0:o.fill.type:l.config.fill.type})}},{key:"getStrokeWidth",value:function(t,e,i){var a=0,n=this.w;return void 0===this.barCtx.series[t][e]||null===this.barCtx.series[t][e]?this.barCtx.isNullValue=!0:this.barCtx.isNullValue=!1,n.config.stroke.show&&(this.barCtx.isNullValue||(a=Array.isArray(this.barCtx.strokeWidth)?this.barCtx.strokeWidth[i]:this.barCtx.strokeWidth)),a}},{key:"shouldApplyRadius",value:function(t){var e=this.w,i=!1;return e.config.plotOptions.bar.borderRadius>0&&(e.config.chart.stacked&&"last"===e.config.plotOptions.bar.borderRadiusWhenStacked?this.barCtx.lastActiveBarSerieIndex===t&&(i=!0):i=!0),i}},{key:"barBackground",value:function(t){var e=t.j,i=t.i,a=t.x1,n=t.x2,s=t.y1,r=t.y2,o=t.elSeries,l=this.w,c=new C(this.barCtx.ctx),d=new F(this.barCtx.ctx).getActiveConfigSeriesIndex();if(this.barCtx.barOptions.colors.backgroundBarColors.length>0&&d===i){e>=this.barCtx.barOptions.colors.backgroundBarColors.length&&(e%=this.barCtx.barOptions.colors.backgroundBarColors.length);var h=this.barCtx.barOptions.colors.backgroundBarColors[e],u=c.drawRect(void 0!==a?a:0,void 0!==s?s:0,void 0!==n?n:l.globals.gridWidth,void 0!==r?r:l.globals.gridHeight,this.barCtx.barOptions.colors.backgroundBarRadius,h,this.barCtx.barOptions.colors.backgroundBarOpacity);o.add(u),u.node.classList.add("apexcharts-backgroundBar")}}},{key:"getColumnPaths",value:function(t){var e,i=t.barWidth,a=t.barXPosition,n=t.y1,s=t.y2,r=t.strokeWidth,o=t.realIndex,l=t.i,c=t.j,d=t.w,h=new C(this.barCtx.ctx);(r=Array.isArray(r)?r[o]:r)||(r=0);var u=i,p=a;null!==(e=d.config.series[o].data[c])&&void 0!==e&&e.columnWidthOffset&&(p=a-d.config.series[o].data[c].columnWidthOffset/2,u=i+d.config.series[o].data[c].columnWidthOffset);var f=p,g=p+u;n+=.001,s+=.001;var v=h.move(f,n),m=h.move(f,n),x=h.line(g-r,n);return d.globals.previousPaths.length>0&&(m=this.barCtx.getPreviousPath(o,c,!1)),v=v+h.line(f,s)+h.line(g-r,s)+h.line(g-r,n)+("around"===d.config.plotOptions.bar.borderRadiusApplication?" Z":" z"),m=m+h.line(f,n)+x+x+x+x+x+h.line(f,n)+("around"===d.config.plotOptions.bar.borderRadiusApplication?" Z":" z"),this.shouldApplyRadius(o)&&(v=h.roundPathCorners(v,d.config.plotOptions.bar.borderRadius)),d.config.chart.stacked&&(this.barCtx.yArrj.push(s),this.barCtx.yArrjF.push(Math.abs(n-s)),this.barCtx.yArrjVal.push(this.barCtx.series[l][c])),{pathTo:v,pathFrom:m}}},{key:"getBarpaths",value:function(t){var e,i=t.barYPosition,a=t.barHeight,n=t.x1,s=t.x2,r=t.strokeWidth,o=t.realIndex,l=t.i,c=t.j,d=t.w,h=new C(this.barCtx.ctx);(r=Array.isArray(r)?r[o]:r)||(r=0);var u=i,p=a;null!==(e=d.config.series[o].data[c])&&void 0!==e&&e.barHeightOffset&&(u=i-d.config.series[o].data[c].barHeightOffset/2,p=a+d.config.series[o].data[c].barHeightOffset);var f=u,g=u+p;n+=.001,s+=.001;var v=h.move(n,f),m=h.move(n,f);d.globals.previousPaths.length>0&&(m=this.barCtx.getPreviousPath(o,c,!1));var x=h.line(n,g-r);return v=v+h.line(s,f)+h.line(s,g-r)+x+("around"===d.config.plotOptions.bar.borderRadiusApplication?" Z":" z"),m=m+h.line(n,f)+x+x+x+x+x+h.line(n,f)+("around"===d.config.plotOptions.bar.borderRadiusApplication?" Z":" z"),this.shouldApplyRadius(o)&&(v=h.roundPathCorners(v,d.config.plotOptions.bar.borderRadius)),d.config.chart.stacked&&(this.barCtx.xArrj.push(s),this.barCtx.xArrjF.push(Math.abs(n-s)),this.barCtx.xArrjVal.push(this.barCtx.series[l][c])),{pathTo:v,pathFrom:m}}},{key:"checkZeroSeries",value:function(t){for(var e=t.series,i=this.w,a=0;a=0;r--)this.barCtx.zeroSerieses.indexOf(r)>-1&&r===this.radiusOnSeriesNumber&&(this.barCtx.radiusOnSeriesNumber-=1);for(var o=e.length-1;o>=0;o--)i.globals.collapsedSeriesIndices.indexOf(this.barCtx.radiusOnSeriesNumber)>-1&&(this.barCtx.radiusOnSeriesNumber-=1)}},{key:"getXForValue",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]&&!arguments[2]?null:e;return null!=t&&(i=e+t/this.barCtx.invertedYRatio-2*(this.barCtx.isReversed?t/this.barCtx.invertedYRatio:0)),i}},{key:"getYForValue",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]&&!arguments[2]?null:e;return null!=t&&(i=e-t/this.barCtx.yRatio[this.barCtx.yaxisIndex]+2*(this.barCtx.isReversed?t/this.barCtx.yRatio[this.barCtx.yaxisIndex]:0)),i}},{key:"getGoalValues",value:function(t,e,i,a,n){var s=this,r=this.w,o=[];return r.globals.seriesGoals[a]&&r.globals.seriesGoals[a][n]&&Array.isArray(r.globals.seriesGoals[a][n])&&r.globals.seriesGoals[a][n].forEach((function(a){var n;o.push((d(n={},t,"x"===t?s.getXForValue(a.value,e,!1):s.getYForValue(a.value,i,!1)),d(n,"attrs",a),n))})),o}},{key:"drawGoalLine",value:function(t){var e=t.barXPosition,i=t.barYPosition,a=t.goalX,n=t.goalY,s=t.barWidth,r=t.barHeight,o=new C(this.barCtx.ctx),l=o.group({className:"apexcharts-bar-goals-groups"}),c=null;return this.barCtx.isHorizontal?Array.isArray(a)&&a.forEach((function(t){var e=void 0!==t.attrs.strokeHeight?t.attrs.strokeHeight:r/2,a=i+e+r/2;c=o.drawLine(t.x,a-2*e,t.x,a,t.attrs.strokeColor?t.attrs.strokeColor:void 0,t.attrs.strokeDashArray,t.attrs.strokeWidth?t.attrs.strokeWidth:2,t.attrs.strokeLineCap),l.add(c)})):Array.isArray(n)&&n.forEach((function(t){var i=void 0!==t.attrs.strokeWidth?t.attrs.strokeWidth:s/2,a=e+i+s/2;c=o.drawLine(a-2*i,t.y,a,t.y,t.attrs.strokeColor?t.attrs.strokeColor:void 0,t.attrs.strokeDashArray,t.attrs.strokeHeight?t.attrs.strokeHeight:2,t.attrs.strokeLineCap),l.add(c)})),l}}]),t}(),St=function(){function t(e,i){o(this,t),this.ctx=e,this.w=e.w;var a=this.w;this.barOptions=a.config.plotOptions.bar,this.isHorizontal=this.barOptions.horizontal,this.strokeWidth=a.config.stroke.width,this.isNullValue=!1,this.isRangeBar=a.globals.seriesRange.length&&this.isHorizontal,this.xyRatios=i,null!==this.xyRatios&&(this.xRatio=i.xRatio,this.initialXRatio=i.initialXRatio,this.yRatio=i.yRatio,this.invertedXRatio=i.invertedXRatio,this.invertedYRatio=i.invertedYRatio,this.baseLineY=i.baseLineY,this.baseLineInvertedY=i.baseLineInvertedY),this.yaxisIndex=0,this.seriesLen=0;var n=new F(this.ctx);this.lastActiveBarSerieIndex=n.getActiveConfigSeriesIndex("desc",["bar","column"]);var s=n.getBarSeriesIndices(),r=new S(this.ctx);this.stackedSeriesTotals=r.getStackedSeriesTotals(this.w.config.series.map((function(t,e){return-1===s.indexOf(e)?e:-1})).filter((function(t){return-1!==t}))),this.barHelpers=new Ct(this)}return c(t,[{key:"draw",value:function(t,e){var i=this.w,a=new C(this.ctx),n=new S(this.ctx,i);t=n.getLogSeries(t),this.series=t,this.yRatio=n.getLogYRatios(this.yRatio),this.barHelpers.initVariables(t);var r=a.group({class:"apexcharts-bar-series apexcharts-plot-series"});i.config.dataLabels.enabled&&this.totalItems>this.barOptions.dataLabels.maxItems&&console.warn("WARNING: DataLabels are enabled but there are too many to display. This may cause performance issue when rendering.");for(var o=0,l=0;o0&&(this.visibleI=this.visibleI+1);var y=0,w=0;this.yRatio.length>1&&(this.yaxisIndex=m),this.isReversed=i.config.yaxis[this.yaxisIndex]&&i.config.yaxis[this.yaxisIndex].reversed;var k=this.barHelpers.initialPositions();f=k.y,y=k.barHeight,d=k.yDivision,u=k.zeroW,p=k.x,w=k.barWidth,c=k.xDivision,h=k.zeroH,this.horizontal||v.push(p+w/2);for(var A=a.group({class:"apexcharts-datalabels","data:realIndex":m}),P=a.group({class:"apexcharts-bar-goals-markers",style:"pointer-events: none"}),E=0;E0&&v.push(p+w/2),g.push(f);var I=this.barHelpers.getPathFillColor(t,o,E,m);this.renderSeries({realIndex:m,pathFill:I,j:E,i:o,pathFrom:O.pathFrom,pathTo:O.pathTo,strokeWidth:T,elSeries:x,x:p,y:f,series:t,barHeight:y,barWidth:w,elDataLabelsWrap:A,elGoalsMarkers:P,visibleSeries:this.visibleI,type:"bar"})}i.globals.seriesXvalues[m]=v,i.globals.seriesYvalues[m]=g,r.add(x)}return r}},{key:"renderSeries",value:function(t){var e=t.realIndex,i=t.pathFill,a=t.lineFill,n=t.j,s=t.i,r=t.pathFrom,o=t.pathTo,l=t.strokeWidth,c=t.elSeries,d=t.x,h=t.y,u=t.y1,p=t.y2,f=t.series,g=t.barHeight,v=t.barWidth,m=t.barYPosition,x=t.elDataLabelsWrap,b=t.elGoalsMarkers,y=t.visibleSeries,S=t.type,k=this.w,A=new C(this.ctx);a||(a=this.barOptions.distributed?k.globals.stroke.colors[n]:k.globals.stroke.colors[e]),k.config.series[s].data[n]&&k.config.series[s].data[n].strokeColor&&(a=k.config.series[s].data[n].strokeColor),this.isNullValue&&(i="none");var P=n/k.config.chart.animations.animateGradually.delay*(k.config.chart.animations.speed/k.globals.dataPoints)/2.4,E=A.renderPaths({i:s,j:n,realIndex:e,pathFrom:r,pathTo:o,stroke:a,strokeWidth:l,strokeLineCap:k.config.stroke.lineCap,fill:i,animationDelay:P,initialSpeed:k.config.chart.animations.speed,dataChangeSpeed:k.config.chart.animations.dynamicAnimation.speed,className:"apexcharts-".concat(S,"-area")});E.attr("clip-path","url(#gridRectMask".concat(k.globals.cuid,")"));var T=k.config.forecastDataPoints;T.count>0&&n>=k.globals.dataPoints-T.count&&(E.node.setAttribute("stroke-dasharray",T.dashArray),E.node.setAttribute("stroke-width",T.strokeWidth),E.node.setAttribute("fill-opacity",T.fillOpacity)),void 0!==u&&void 0!==p&&(E.attr("data-range-y1",u),E.attr("data-range-y2",p)),new w(this.ctx).setSelectionFilter(E,e,n),c.add(E);var O=new wt(this).handleBarDataLabels({x:d,y:h,y1:u,y2:p,i:s,j:n,series:f,realIndex:e,barHeight:g,barWidth:v,barYPosition:m,renderedPath:E,visibleSeries:y});return null!==O.dataLabels&&x.add(O.dataLabels),O.totalDataLabels&&x.add(O.totalDataLabels),c.add(x),b&&c.add(b),c}},{key:"drawBarPaths",value:function(t){var e=t.indexes,i=t.barHeight,a=t.strokeWidth,n=t.zeroW,s=t.x,r=t.y,o=t.yDivision,l=t.elSeries,c=this.w,d=e.i,h=e.j;c.globals.isXNumeric&&(r=(c.globals.seriesX[d][h]-c.globals.minX)/this.invertedXRatio-i);var u=r+i*this.visibleI;s=this.barHelpers.getXForValue(this.series[d][h],n);var p=this.barHelpers.getBarpaths({barYPosition:u,barHeight:i,x1:n,x2:s,strokeWidth:a,series:this.series,realIndex:e.realIndex,i:d,j:h,w:c});return c.globals.isXNumeric||(r+=o),this.barHelpers.barBackground({j:h,i:d,y1:u-i*this.visibleI,y2:i*this.seriesLen,elSeries:l}),{pathTo:p.pathTo,pathFrom:p.pathFrom,x:s,y:r,goalX:this.barHelpers.getGoalValues("x",n,null,d,h),barYPosition:u}}},{key:"drawColumnPaths",value:function(t){var e=t.indexes,i=t.x,a=t.y,n=t.xDivision,s=t.barWidth,r=t.zeroH,o=t.strokeWidth,l=t.elSeries,c=this.w,d=e.realIndex,h=e.i,u=e.j,p=e.bc;if(c.globals.isXNumeric){var f=d;c.globals.seriesX[d].length||(f=c.globals.maxValsInArrayIndex),i=(c.globals.seriesX[f][u]-c.globals.minX)/this.xRatio-s*this.seriesLen/2}var g=i+s*this.visibleI;a=this.barHelpers.getYForValue(this.series[h][u],r);var v=this.barHelpers.getColumnPaths({barXPosition:g,barWidth:s,y1:r,y2:a,strokeWidth:o,series:this.series,realIndex:e.realIndex,i:h,j:u,w:c});return c.globals.isXNumeric||(i+=n),this.barHelpers.barBackground({bc:p,j:u,i:h,x1:g-o/2-s*this.visibleI,x2:s*this.seriesLen+o/2,elSeries:l}),{pathTo:v.pathTo,pathFrom:v.pathFrom,x:i,y:a,goalY:this.barHelpers.getGoalValues("y",null,r,h,u),barXPosition:g}}},{key:"getPreviousPath",value:function(t,e){for(var i,a=this.w,n=0;n0&&parseInt(s.realIndex,10)===parseInt(t,10)&&void 0!==a.globals.previousPaths[n].paths[e]&&(i=a.globals.previousPaths[n].paths[e].d)}return i}}]),t}(),kt=function(t){h(i,t);var e=g(i);function i(){return o(this,i),e.apply(this,arguments)}return c(i,[{key:"draw",value:function(t,e){var i=this,a=this.w;this.graphics=new C(this.ctx),this.bar=new St(this.ctx,this.xyRatios);var n=new S(this.ctx,a);t=n.getLogSeries(t),this.yRatio=n.getLogYRatios(this.yRatio),this.barHelpers.initVariables(t),"100%"===a.config.chart.stackType&&(t=a.globals.seriesPercent.slice()),this.series=t,this.totalItems=0,this.prevY=[],this.prevX=[],this.prevYF=[],this.prevXF=[],this.prevYVal=[],this.prevXVal=[],this.xArrj=[],this.xArrjF=[],this.xArrjVal=[],this.yArrj=[],this.yArrjF=[],this.yArrjVal=[];for(var r=0;r0&&(this.totalItems+=t[r].length);for(var o=this.graphics.group({class:"apexcharts-bar-series apexcharts-plot-series"}),l=0,c=0,d=function(n,r){var d=void 0,h=void 0,u=void 0,p=void 0,f=[],g=[],v=a.globals.comboCharts?e[n]:n;i.yRatio.length>1&&(i.yaxisIndex=v),i.isReversed=a.config.yaxis[i.yaxisIndex]&&a.config.yaxis[i.yaxisIndex].reversed;var m=i.graphics.group({class:"apexcharts-series",seriesName:b.escapeString(a.globals.seriesNames[v]),rel:n+1,"data:realIndex":v});i.ctx.series.addCollapsedClassToSeries(m,v);var x=i.graphics.group({class:"apexcharts-datalabels","data:realIndex":v}),y=i.graphics.group({class:"apexcharts-bar-goals-markers",style:"pointer-events: none"}),w=0,C=0,S=i.initialPositions(l,c,d,h,u,p);c=S.y,w=S.barHeight,h=S.yDivision,p=S.zeroW,l=S.x,C=S.barWidth,d=S.xDivision,u=S.zeroH,i.yArrj=[],i.yArrjF=[],i.yArrjVal=[],i.xArrj=[],i.xArrjF=[],i.xArrjVal=[],1===i.prevY.length&&i.prevY[0].every((function(t){return isNaN(t)}))&&(i.prevY[0]=i.prevY[0].map((function(t){return u})),i.prevYF[0]=i.prevYF[0].map((function(t){return 0})));for(var k=0;k1?(i=l.globals.minXDiff/this.xRatio)*parseInt(this.barOptions.columnWidth,10)/100:o*parseInt(l.config.plotOptions.bar.columnWidth,10)/100,n=l.globals.gridHeight-this.baseLineY[this.yaxisIndex]-(this.isReversed?l.globals.gridHeight:0)+(this.isReversed?2*this.baseLineY[this.yaxisIndex]:0),t=l.globals.padHorizontal+(i-o)/2),{x:t,y:e,yDivision:a,xDivision:i,barHeight:r,barWidth:o,zeroH:n,zeroW:s}}},{key:"drawStackedBarPaths",value:function(t){for(var e,i=t.indexes,a=t.barHeight,n=t.strokeWidth,s=t.zeroW,r=t.x,o=t.y,l=t.yDivision,c=t.elSeries,d=this.w,h=o,u=i.i,p=i.j,f=0,g=0;g0){var v=s;this.prevXVal[u-1][p]<0?v=this.series[u][p]>=0?this.prevX[u-1][p]+f-2*(this.isReversed?f:0):this.prevX[u-1][p]:this.prevXVal[u-1][p]>=0&&(v=this.series[u][p]>=0?this.prevX[u-1][p]:this.prevX[u-1][p]-f+2*(this.isReversed?f:0)),e=v}else e=s;r=null===this.series[u][p]?e:e+this.series[u][p]/this.invertedYRatio-2*(this.isReversed?this.series[u][p]/this.invertedYRatio:0);var m=this.barHelpers.getBarpaths({barYPosition:h,barHeight:a,x1:e,x2:r,strokeWidth:n,series:this.series,realIndex:i.realIndex,i:u,j:p,w:d});return this.barHelpers.barBackground({j:p,i:u,y1:h,y2:a,elSeries:c}),o+=l,{pathTo:m.pathTo,pathFrom:m.pathFrom,goalX:this.barHelpers.getGoalValues("x",s,null,u,p),barYPosition:h,x:r,y:o}}},{key:"drawStackedColumnPaths",value:function(t){var e=t.indexes,i=t.x,a=t.y,n=t.xDivision,s=t.barWidth,r=t.zeroH;t.strokeWidth;var o=t.elSeries,l=this.w,c=e.i,d=e.j,h=e.bc;if(l.globals.isXNumeric){var u=l.globals.seriesX[c][d];u||(u=0),i=(u-l.globals.minX)/this.xRatio-s/2}for(var p,f=i,g=0,v=0;v0&&!l.globals.isXNumeric||c>0&&l.globals.isXNumeric&&l.globals.seriesX[c-1][d]===l.globals.seriesX[c][d]){var m,x,b=Math.min(this.yRatio.length+1,c+1);if(void 0!==this.prevY[c-1])for(var y=1;y=0?x-g+2*(this.isReversed?g:0):x;break}if(this.prevYVal[c-w][d]>=0){m=this.series[c][d]>=0?x:x+g-2*(this.isReversed?g:0);break}}void 0===m&&(m=l.globals.gridHeight),p=this.prevYF[0].every((function(t){return 0===t}))&&this.prevYF.slice(1,c).every((function(t){return t.every((function(t){return isNaN(t)}))}))?r:m}else p=r;a=p-this.series[c][d]/this.yRatio[this.yaxisIndex]+2*(this.isReversed?this.series[c][d]/this.yRatio[this.yaxisIndex]:0);var C=this.barHelpers.getColumnPaths({barXPosition:f,barWidth:s,y1:p,y2:a,yRatio:this.yRatio[this.yaxisIndex],strokeWidth:this.strokeWidth,series:this.series,realIndex:e.realIndex,i:c,j:d,w:l});return this.barHelpers.barBackground({bc:h,j:d,i:c,x1:f,x2:s,elSeries:o}),i+=n,{pathTo:C.pathTo,pathFrom:C.pathFrom,goalY:this.barHelpers.getGoalValues("y",null,r,c,d),barXPosition:f,x:l.globals.isXNumeric?i-n:i,y:a}}}]),i}(St),At=function(t){h(i,t);var e=g(i);function i(){return o(this,i),e.apply(this,arguments)}return c(i,[{key:"draw",value:function(t,e){var i=this,a=this.w,n=new C(this.ctx),r=new j(this.ctx);this.candlestickOptions=this.w.config.plotOptions.candlestick,this.boxOptions=this.w.config.plotOptions.boxPlot,this.isHorizontal=a.config.plotOptions.bar.horizontal;var o=new S(this.ctx,a);t=o.getLogSeries(t),this.series=t,this.yRatio=o.getLogYRatios(this.yRatio),this.barHelpers.initVariables(t);for(var l=n.group({class:"apexcharts-".concat(a.config.chart.type,"-series apexcharts-plot-series")}),c=function(o){i.isBoxPlot="boxPlot"===a.config.chart.type||"boxPlot"===a.config.series[o].type;var c,d,h,u,p,f,g=void 0,v=void 0,m=[],x=[],y=a.globals.comboCharts?e[o]:o,w=n.group({class:"apexcharts-series",seriesName:b.escapeString(a.globals.seriesNames[y]),rel:o+1,"data:realIndex":y});i.ctx.series.addCollapsedClassToSeries(w,y),t[o].length>0&&(i.visibleI=i.visibleI+1),i.yRatio.length>1&&(i.yaxisIndex=y);var C=i.barHelpers.initialPositions();v=C.y,p=C.barHeight,d=C.yDivision,u=C.zeroW,g=C.x,f=C.barWidth,c=C.xDivision,h=C.zeroH,x.push(g+f/2);for(var S=n.group({class:"apexcharts-datalabels","data:realIndex":y}),k=function(e){var n=i.barHelpers.getStrokeWidth(o,e,y),l=null,b={indexes:{i:o,j:e,realIndex:y},x:g,y:v,strokeWidth:n,elSeries:w};l=i.isHorizontal?i.drawHorizontalBoxPaths(s(s({},b),{},{yDivision:d,barHeight:p,zeroW:u})):i.drawVerticalBoxPaths(s(s({},b),{},{xDivision:c,barWidth:f,zeroH:h})),v=l.y,g=l.x,e>0&&x.push(g+f/2),m.push(v),l.pathTo.forEach((function(s,c){var d=!i.isBoxPlot&&i.candlestickOptions.wick.useFillColor?l.color[c]:a.globals.stroke.colors[o],h=r.fillPath({seriesNumber:y,dataPointIndex:e,color:l.color[c],value:t[o][e]});i.renderSeries({realIndex:y,pathFill:h,lineFill:d,j:e,i:o,pathFrom:l.pathFrom,pathTo:s,strokeWidth:n,elSeries:w,x:g,y:v,series:t,barHeight:p,barWidth:f,elDataLabelsWrap:S,visibleSeries:i.visibleI,type:a.config.chart.type})}))},A=0;Am.c&&(h=!1);var y=Math.min(m.o,m.c),w=Math.max(m.o,m.c),S=m.m;o.globals.isXNumeric&&(i=(o.globals.seriesX[v][d]-o.globals.minX)/this.xRatio-n/2);var k=i+n*this.visibleI;void 0===this.series[c][d]||null===this.series[c][d]?(y=s,w=s):(y=s-y/g,w=s-w/g,x=s-m.h/g,b=s-m.l/g,S=s-m.m/g);var A=l.move(k,s),P=l.move(k+n/2,y);return o.globals.previousPaths.length>0&&(P=this.getPreviousPath(v,d,!0)),A=this.isBoxPlot?[l.move(k,y)+l.line(k+n/2,y)+l.line(k+n/2,x)+l.line(k+n/4,x)+l.line(k+n-n/4,x)+l.line(k+n/2,x)+l.line(k+n/2,y)+l.line(k+n,y)+l.line(k+n,S)+l.line(k,S)+l.line(k,y+r/2),l.move(k,S)+l.line(k+n,S)+l.line(k+n,w)+l.line(k+n/2,w)+l.line(k+n/2,b)+l.line(k+n-n/4,b)+l.line(k+n/4,b)+l.line(k+n/2,b)+l.line(k+n/2,w)+l.line(k,w)+l.line(k,S)+"z"]:[l.move(k,w)+l.line(k+n/2,w)+l.line(k+n/2,x)+l.line(k+n/2,w)+l.line(k+n,w)+l.line(k+n,y)+l.line(k+n/2,y)+l.line(k+n/2,b)+l.line(k+n/2,y)+l.line(k,y)+l.line(k,w-r/2)],P+=l.move(k,y),o.globals.isXNumeric||(i+=a),{pathTo:A,pathFrom:P,x:i,y:w,barXPosition:k,color:this.isBoxPlot?f:h?[u]:[p]}}},{key:"drawHorizontalBoxPaths",value:function(t){var e=t.indexes;t.x;var i=t.y,a=t.yDivision,n=t.barHeight,s=t.zeroW,r=t.strokeWidth,o=this.w,l=new C(this.ctx),c=e.i,d=e.j,h=this.boxOptions.colors.lower;this.isBoxPlot&&(h=[this.boxOptions.colors.lower,this.boxOptions.colors.upper]);var u=this.invertedYRatio,p=e.realIndex,f=this.getOHLCValue(p,d),g=s,v=s,m=Math.min(f.o,f.c),x=Math.max(f.o,f.c),b=f.m;o.globals.isXNumeric&&(i=(o.globals.seriesX[p][d]-o.globals.minX)/this.invertedXRatio-n/2);var y=i+n*this.visibleI;void 0===this.series[c][d]||null===this.series[c][d]?(m=s,x=s):(m=s+m/u,x=s+x/u,g=s+f.h/u,v=s+f.l/u,b=s+f.m/u);var w=l.move(s,y),S=l.move(m,y+n/2);return o.globals.previousPaths.length>0&&(S=this.getPreviousPath(p,d,!0)),w=[l.move(m,y)+l.line(m,y+n/2)+l.line(g,y+n/2)+l.line(g,y+n/2-n/4)+l.line(g,y+n/2+n/4)+l.line(g,y+n/2)+l.line(m,y+n/2)+l.line(m,y+n)+l.line(b,y+n)+l.line(b,y)+l.line(m+r/2,y),l.move(b,y)+l.line(b,y+n)+l.line(x,y+n)+l.line(x,y+n/2)+l.line(v,y+n/2)+l.line(v,y+n-n/4)+l.line(v,y+n/4)+l.line(v,y+n/2)+l.line(x,y+n/2)+l.line(x,y)+l.line(b,y)+"z"],S+=l.move(m,y),o.globals.isXNumeric||(i+=a),{pathTo:w,pathFrom:S,x:x,y:i,barYPosition:y,color:h}}},{key:"getOHLCValue",value:function(t,e){var i=this.w;return{o:this.isBoxPlot?i.globals.seriesCandleH[t][e]:i.globals.seriesCandleO[t][e],h:this.isBoxPlot?i.globals.seriesCandleO[t][e]:i.globals.seriesCandleH[t][e],m:i.globals.seriesCandleM[t][e],l:this.isBoxPlot?i.globals.seriesCandleC[t][e]:i.globals.seriesCandleL[t][e],c:this.isBoxPlot?i.globals.seriesCandleL[t][e]:i.globals.seriesCandleC[t][e]}}}]),i}(St),Pt=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"checkColorRange",value:function(){var t=this.w,e=!1,i=t.config.plotOptions[t.config.chart.type];return i.colorScale.ranges.length>0&&i.colorScale.ranges.map((function(t,i){t.from<=0&&(e=!0)})),e}},{key:"getShadeColor",value:function(t,e,i,a){var n=this.w,s=1,r=n.config.plotOptions[t].shadeIntensity,o=this.determineColor(t,e,i);n.globals.hasNegs||a?s=n.config.plotOptions[t].reverseNegativeShade?o.percent<0?o.percent/100*(1.25*r):(1-o.percent/100)*(1.25*r):o.percent<=0?1-(1+o.percent/100)*r:(1-o.percent/100)*r:(s=1-o.percent/100,"treemap"===t&&(s=(1-o.percent/100)*(1.25*r)));var l=o.color,c=new b;return n.config.plotOptions[t].enableShades&&(l="dark"===this.w.config.theme.mode?b.hexToRgba(c.shadeColor(-1*s,o.color),n.config.fill.opacity):b.hexToRgba(c.shadeColor(s,o.color),n.config.fill.opacity)),{color:l,colorProps:o}}},{key:"determineColor",value:function(t,e,i){var a=this.w,n=a.globals.series[e][i],s=a.config.plotOptions[t],r=s.colorScale.inverse?i:e;s.distributed&&"treemap"===a.config.chart.type&&(r=i);var o=a.globals.colors[r],l=null,c=Math.min.apply(Math,v(a.globals.series[e])),d=Math.max.apply(Math,v(a.globals.series[e]));s.distributed||"heatmap"!==t||(c=a.globals.minY,d=a.globals.maxY),void 0!==s.colorScale.min&&(c=s.colorScale.mina.globals.maxY?s.colorScale.max:a.globals.maxY);var h=Math.abs(d)+Math.abs(c),u=100*n/(0===h?h-1e-6:h);return s.colorScale.ranges.length>0&&s.colorScale.ranges.map((function(t,e){if(n>=t.from&&n<=t.to){o=t.color,l=t.foreColor?t.foreColor:null,c=t.from,d=t.to;var i=Math.abs(d)+Math.abs(c);u=100*n/(0===i?i-1e-6:i)}})),{color:o,foreColor:l,percent:u}}},{key:"calculateDataLabels",value:function(t){var e=t.text,i=t.x,a=t.y,n=t.i,s=t.j,r=t.colorProps,o=t.fontSize,l=this.w.config.dataLabels,c=new C(this.ctx),d=new R(this.ctx),h=null;if(l.enabled){h=c.group({class:"apexcharts-data-labels"});var u=l.offsetX,p=l.offsetY,f=i+u,g=a+parseFloat(l.style.fontSize)/3+p;d.plotDataLabelsText({x:f,y:g,text:e,i:n,j:s,color:r.foreColor,parent:h,fontSize:o,dataLabelsConfig:l})}return h}},{key:"addListeners",value:function(t){var e=new C(this.ctx);t.node.addEventListener("mouseenter",e.pathMouseEnter.bind(this,t)),t.node.addEventListener("mouseleave",e.pathMouseLeave.bind(this,t)),t.node.addEventListener("mousedown",e.pathMouseDown.bind(this,t))}}]),t}(),Et=function(){function t(e,i){o(this,t),this.ctx=e,this.w=e.w,this.xRatio=i.xRatio,this.yRatio=i.yRatio,this.dynamicAnim=this.w.config.chart.animations.dynamicAnimation,this.helpers=new Pt(e),this.rectRadius=this.w.config.plotOptions.heatmap.radius,this.strokeWidth=this.w.config.stroke.show?this.w.config.stroke.width:0}return c(t,[{key:"draw",value:function(t){var e=this.w,i=new C(this.ctx),a=i.group({class:"apexcharts-heatmap"});a.attr("clip-path","url(#gridRectMask".concat(e.globals.cuid,")"));var n=e.globals.gridWidth/e.globals.dataPoints,s=e.globals.gridHeight/e.globals.series.length,r=0,o=!1;this.negRange=this.helpers.checkColorRange();var l=t.slice();e.config.yaxis[0].reversed&&(o=!0,l.reverse());for(var c=o?0:l.length-1;o?c=0;o?c++:c--){var d=i.group({class:"apexcharts-series apexcharts-heatmap-series",seriesName:b.escapeString(e.globals.seriesNames[c]),rel:c+1,"data:realIndex":c});if(this.ctx.series.addCollapsedClassToSeries(d,c),e.config.chart.dropShadow.enabled){var h=e.config.chart.dropShadow;new w(this.ctx).dropShadow(d,h,c)}for(var u=0,p=e.config.plotOptions.heatmap.shadeIntensity,f=0;f-1&&this.pieClicked(h),i.config.dataLabels.enabled){var S=x.x,k=x.y,A=100*p/this.fullAngle+"%";if(0!==p&&i.config.plotOptions.pie.dataLabels.minAngleToShowLabelthis.fullAngle?e.endAngle=e.endAngle-(a+r):a+r=this.fullAngle+this.w.config.plotOptions.pie.startAngle%this.fullAngle&&(o=this.fullAngle+this.w.config.plotOptions.pie.startAngle%this.fullAngle-.01),Math.ceil(o)>this.fullAngle&&(o-=this.fullAngle);var l=Math.PI*(o-90)/180,c=e.centerX+n*Math.cos(r),d=e.centerY+n*Math.sin(r),h=e.centerX+n*Math.cos(l),u=e.centerY+n*Math.sin(l),p=b.polarToCartesian(e.centerX,e.centerY,e.donutSize,o),f=b.polarToCartesian(e.centerX,e.centerY,e.donutSize,s),g=a>180?1:0,v=["M",c,d,"A",n,n,0,g,1,h,u];return"donut"===e.chartType?[].concat(v,["L",p.x,p.y,"A",e.donutSize,e.donutSize,0,g,0,f.x,f.y,"L",c,d,"z"]).join(" "):"pie"===e.chartType||"polarArea"===e.chartType?[].concat(v,["L",e.centerX,e.centerY,"L",c,d]).join(" "):[].concat(v).join(" ")}},{key:"drawPolarElements",value:function(t){var e=this.w,i=new q(this.ctx),a=new C(this.ctx),n=new Tt(this.ctx),s=a.group(),r=a.group(),o=i.niceScale(0,Math.ceil(this.maxY),e.config.yaxis[0].tickAmount,0,!0),l=o.result.reverse(),c=o.result.length;this.maxY=o.niceMax;for(var d=e.globals.radialSize,h=d/(c-1),u=0;u1&&t.total.show&&(n=t.total.color);var r=s.globals.dom.baseEl.querySelector(".apexcharts-datalabel-label"),o=s.globals.dom.baseEl.querySelector(".apexcharts-datalabel-value");i=(0,t.value.formatter)(i,s),a||"function"!=typeof t.total.formatter||(i=t.total.formatter(s));var l=e===t.total.label;e=t.name.formatter(e,l,s),null!==r&&(r.textContent=e),null!==o&&(o.textContent=i),null!==r&&(r.style.fill=n)}},{key:"printDataLabelsInner",value:function(t,e){var i=this.w,a=t.getAttribute("data:value"),n=i.globals.seriesNames[parseInt(t.parentNode.getAttribute("rel"),10)-1];i.globals.series.length>1&&this.printInnerLabels(e,n,a,t);var s=i.globals.dom.baseEl.querySelector(".apexcharts-datalabels-group");null!==s&&(s.style.opacity=1)}},{key:"drawSpokes",value:function(t){var e=this,i=this.w,a=new C(this.ctx),n=i.config.plotOptions.polarArea.spokes;if(0!==n.strokeWidth){for(var s=[],r=360/i.globals.series.length,o=0;o1)r&&!e.total.showAlways?l({makeSliceOut:!1,printLabel:!0}):this.printInnerLabels(e,e.total.label,e.total.formatter(n));else if(l({makeSliceOut:!1,printLabel:!0}),!r)if(n.globals.selectedDataPoints.length&&n.globals.series.length>1)if(n.globals.selectedDataPoints[0].length>0){var c=n.globals.selectedDataPoints[0],d=n.globals.dom.baseEl.querySelector(".apexcharts-".concat(this.chartType.toLowerCase(),"-slice-").concat(c));this.printDataLabelsInner(d,e)}else s&&n.globals.selectedDataPoints.length&&0===n.globals.selectedDataPoints[0].length&&(s.style.opacity=0);else s&&n.globals.series.length>1&&(s.style.opacity=0)}}]),t}(),Mt=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.chartType=this.w.config.chart.type,this.initialAnim=this.w.config.chart.animations.enabled,this.dynamicAnim=this.initialAnim&&this.w.config.chart.animations.dynamicAnimation.enabled,this.animDur=0;var i=this.w;this.graphics=new C(this.ctx),this.lineColorArr=void 0!==i.globals.stroke.colors?i.globals.stroke.colors:i.globals.colors,this.defaultSize=i.globals.svgHeight0&&(g=e.getPreviousPath(o));for(var v=0;v=10?t.x>0?(i="start",a+=10):t.x<0&&(i="end",a-=10):i="middle",Math.abs(t.y)>=e-10&&(t.y<0?n-=10:t.y>0&&(n+=10)),{textAnchor:i,newX:a,newY:n}}},{key:"getPreviousPath",value:function(t){for(var e=this.w,i=null,a=0;a0&&parseInt(n.realIndex,10)===parseInt(t,10)&&void 0!==e.globals.previousPaths[a].paths[0]&&(i=e.globals.previousPaths[a].paths[0].d)}return i}},{key:"getDataPointsPos",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.dataPointsLen;t=t||[],e=e||[];for(var a=[],n=0;n=360&&(u=360-Math.abs(this.startAngle)-.1);var p=i.drawPath({d:"",stroke:d,strokeWidth:r*parseInt(c.strokeWidth,10)/100,fill:"none",strokeOpacity:c.opacity,classes:"apexcharts-radialbar-area"});if(c.dropShadow.enabled){var f=c.dropShadow;n.dropShadow(p,f)}l.add(p),p.attr("id","apexcharts-radialbarTrack-"+o),this.animatePaths(p,{centerX:t.centerX,centerY:t.centerY,endAngle:u,startAngle:h,size:t.size,i:o,totalItems:2,animBeginArr:0,dur:0,isTrack:!0,easing:e.globals.easing})}return a}},{key:"drawArcs",value:function(t){var e=this.w,i=new C(this.ctx),a=new j(this.ctx),n=new w(this.ctx),s=i.group(),r=this.getStrokeWidth(t);t.size=t.size-r/2;var o=e.config.plotOptions.radialBar.hollow.background,l=t.size-r*t.series.length-this.margin*t.series.length-r*parseInt(e.config.plotOptions.radialBar.track.strokeWidth,10)/100/2,c=l-e.config.plotOptions.radialBar.hollow.margin;void 0!==e.config.plotOptions.radialBar.hollow.image&&(o=this.drawHollowImage(t,s,l,o));var d=this.drawHollow({size:c,centerX:t.centerX,centerY:t.centerY,fill:o||"transparent"});if(e.config.plotOptions.radialBar.hollow.dropShadow.enabled){var h=e.config.plotOptions.radialBar.hollow.dropShadow;n.dropShadow(d,h)}var u=1;!this.radialDataLabels.total.show&&e.globals.series.length>1&&(u=0);var p=null;this.radialDataLabels.show&&(p=this.renderInnerDataLabels(this.radialDataLabels,{hollowSize:l,centerX:t.centerX,centerY:t.centerY,opacity:u})),"back"===e.config.plotOptions.radialBar.hollow.position&&(s.add(d),p&&s.add(p));var f=!1;e.config.plotOptions.radialBar.inverseOrder&&(f=!0);for(var g=f?t.series.length-1:0;f?g>=0:g100?100:t.series[g])/100,k=Math.round(this.totalAngle*S)+this.startAngle,A=void 0;e.globals.dataChanged&&(y=this.startAngle,A=Math.round(this.totalAngle*b.negToZero(e.globals.previousPaths[g])/100)+y),Math.abs(k)+Math.abs(x)>=360&&(k-=.01),Math.abs(A)+Math.abs(y)>=360&&(A-=.01);var P=k-x,E=Array.isArray(e.config.stroke.dashArray)?e.config.stroke.dashArray[g]:e.config.stroke.dashArray,T=i.drawPath({d:"",stroke:m,strokeWidth:r,fill:"none",fillOpacity:e.config.fill.opacity,classes:"apexcharts-radialbar-area apexcharts-radialbar-slice-"+g,strokeDashArray:E});if(C.setAttrs(T.node,{"data:angle":P,"data:value":t.series[g]}),e.config.chart.dropShadow.enabled){var O=e.config.chart.dropShadow;n.dropShadow(T,O,g)}n.setSelectionFilter(T,0,g),this.addListeners(T,this.radialDataLabels),v.add(T),T.attr({index:0,j:g});var M=0;!this.initialAnim||e.globals.resized||e.globals.dataChanged||(M=e.config.chart.animations.speed),e.globals.dataChanged&&(M=e.config.chart.animations.dynamicAnimation.speed),this.animDur=M/(1.2*t.series.length)+this.animDur,this.animBeginArr.push(this.animDur),this.animatePaths(T,{centerX:t.centerX,centerY:t.centerY,endAngle:k,startAngle:x,prevEndAngle:A,prevStartAngle:y,size:t.size,i:g,totalItems:2,animBeginArr:this.animBeginArr,dur:M,shouldSetPrevPaths:!0,easing:e.globals.easing})}return{g:s,elHollow:d,dataLabels:p}}},{key:"drawHollow",value:function(t){var e=new C(this.ctx).drawCircle(2*t.size);return e.attr({class:"apexcharts-radialbar-hollow",cx:t.centerX,cy:t.centerY,r:t.size,fill:t.fill}),e}},{key:"drawHollowImage",value:function(t,e,i,a){var n=this.w,s=new j(this.ctx),r=b.randomId(),o=n.config.plotOptions.radialBar.hollow.image;if(n.config.plotOptions.radialBar.hollow.imageClipped)s.clippedImgArea({width:i,height:i,image:o,patternID:"pattern".concat(n.globals.cuid).concat(r)}),a="url(#pattern".concat(n.globals.cuid).concat(r,")");else{var l=n.config.plotOptions.radialBar.hollow.imageWidth,c=n.config.plotOptions.radialBar.hollow.imageHeight;if(void 0===l&&void 0===c){var d=n.globals.dom.Paper.image(o).loaded((function(e){this.move(t.centerX-e.width/2+n.config.plotOptions.radialBar.hollow.imageOffsetX,t.centerY-e.height/2+n.config.plotOptions.radialBar.hollow.imageOffsetY)}));e.add(d)}else{var h=n.globals.dom.Paper.image(o).loaded((function(e){this.move(t.centerX-l/2+n.config.plotOptions.radialBar.hollow.imageOffsetX,t.centerY-c/2+n.config.plotOptions.radialBar.hollow.imageOffsetY),this.size(l,c)}));e.add(h)}}return a}},{key:"getStrokeWidth",value:function(t){var e=this.w;return t.size*(100-parseInt(e.config.plotOptions.radialBar.hollow.size,10))/100/(t.series.length+1)-this.margin}}]),i}(Ot),It=function(t){h(i,t);var e=g(i);function i(){return o(this,i),e.apply(this,arguments)}return c(i,[{key:"draw",value:function(t,e){var i=this.w,a=new C(this.ctx);this.rangeBarOptions=this.w.config.plotOptions.rangeBar,this.series=t,this.seriesRangeStart=i.globals.seriesRangeStart,this.seriesRangeEnd=i.globals.seriesRangeEnd,this.barHelpers.initVariables(t);for(var n=a.group({class:"apexcharts-rangebar-series apexcharts-plot-series"}),r=0;r0&&(this.visibleI=this.visibleI+1);var g=0,v=0;this.yRatio.length>1&&(this.yaxisIndex=p);var m=this.barHelpers.initialPositions();h=m.y,c=m.zeroW,d=m.x,v=m.barWidth,o=m.xDivision,l=m.zeroH;for(var x=a.group({class:"apexcharts-datalabels","data:realIndex":p}),y=a.group({class:"apexcharts-rangebar-goals-markers",style:"pointer-events: none"}),w=0;w0}));return a=l.config.plotOptions.bar.rangeBarGroupRows?n+r*u:n+s*this.visibleI+r*u,p>-1&&!l.config.plotOptions.bar.rangeBarOverlap&&(c=l.globals.seriesRange[e][p].overlaps).indexOf(d)>-1&&(a=(s=o.barHeight/c.length)*this.visibleI+r*(100-parseInt(this.barOptions.barHeight,10))/100/2+s*(this.visibleI+c.indexOf(d))+r*u),{barYPosition:a,barHeight:s}}},{key:"drawRangeColumnPaths",value:function(t){var e=t.indexes,i=t.x;t.strokeWidth;var a=t.xDivision,n=t.barWidth,s=t.zeroH,r=this.w,o=e.i,l=e.j,c=this.yRatio[this.yaxisIndex],d=e.realIndex,h=this.getRangeValue(d,l),u=Math.min(h.start,h.end),p=Math.max(h.start,h.end);r.globals.isXNumeric&&(i=(r.globals.seriesX[o][l]-r.globals.minX)/this.xRatio-n/2);var f=i+n*this.visibleI;void 0===this.series[o][l]||null===this.series[o][l]?u=s:(u=s-u/c,p=s-p/c);var g=Math.abs(p-u),v=this.barHelpers.getColumnPaths({barXPosition:f,barWidth:n,y1:u,y2:p,strokeWidth:this.strokeWidth,series:this.seriesRangeEnd,realIndex:e.realIndex,i:d,j:l,w:r});return r.globals.isXNumeric||(i+=a),{pathTo:v.pathTo,pathFrom:v.pathFrom,barHeight:g,x:i,y:p,goalY:this.barHelpers.getGoalValues("y",null,s,o,l),barXPosition:f}}},{key:"drawRangeBarPaths",value:function(t){var e=t.indexes,i=t.y,a=t.y1,n=t.y2,s=t.yDivision,r=t.barHeight,o=t.barYPosition,l=t.zeroW,c=this.w,d=l+a/this.invertedYRatio,h=l+n/this.invertedYRatio,u=Math.abs(h-d),p=this.barHelpers.getBarpaths({barYPosition:o,barHeight:r,x1:d,x2:h,strokeWidth:this.strokeWidth,series:this.seriesRangeEnd,i:e.realIndex,realIndex:e.realIndex,j:e.j,w:c});return c.globals.isXNumeric||(i+=s),{pathTo:p.pathTo,pathFrom:p.pathFrom,barWidth:u,x:h,goalX:this.barHelpers.getGoalValues("x",l,null,e.realIndex,e.j),y:i}}},{key:"getRangeValue",value:function(t,e){var i=this.w;return{start:i.globals.seriesRangeStart[t][e],end:i.globals.seriesRangeEnd[t][e]}}}]),i}(St),_t=function(){function t(e){o(this,t),this.w=e.w,this.lineCtx=e}return c(t,[{key:"sameValueSeriesFix",value:function(t,e){var i=this.w;if(("gradient"===i.config.fill.type||"gradient"===i.config.fill.type[t])&&new S(this.lineCtx.ctx,i).seriesHaveSameValues(t)){var a=e[t].slice();a[a.length-1]=a[a.length-1]+1e-6,e[t]=a}return e}},{key:"calculatePoints",value:function(t){var e=t.series,i=t.realIndex,a=t.x,n=t.y,s=t.i,r=t.j,o=t.prevY,l=this.w,c=[],d=[];if(0===r){var h=this.lineCtx.categoryAxisCorrection+l.config.markers.offsetX;l.globals.isXNumeric&&(h=(l.globals.seriesX[i][0]-l.globals.minX)/this.lineCtx.xRatio+l.config.markers.offsetX),c.push(h),d.push(b.isNumber(e[s][0])?o+l.config.markers.offsetY:null),c.push(a+l.config.markers.offsetX),d.push(b.isNumber(e[s][r+1])?n+l.config.markers.offsetY:null)}else c.push(a+l.config.markers.offsetX),d.push(b.isNumber(e[s][r+1])?n+l.config.markers.offsetY:null);return{x:c,y:d}}},{key:"checkPreviousPaths",value:function(t){for(var e=t.pathFromLine,i=t.pathFromArea,a=t.realIndex,n=this.w,s=0;s0&&parseInt(r.realIndex,10)===parseInt(a,10)&&("line"===r.type?(this.lineCtx.appendPathFrom=!1,e=n.globals.previousPaths[s].paths[0].d):"area"===r.type&&(this.lineCtx.appendPathFrom=!1,i=n.globals.previousPaths[s].paths[0].d,n.config.stroke.show&&n.globals.previousPaths[s].paths[1]&&(e=n.globals.previousPaths[s].paths[1].d)))}return{pathFromLine:e,pathFromArea:i}}},{key:"determineFirstPrevY",value:function(t){var e,i=t.i,a=t.series,n=t.prevY,s=t.lineYPosition,r=this.w;if(void 0!==(null===(e=a[i])||void 0===e?void 0:e[0]))n=(s=r.config.chart.stacked&&i>0?this.lineCtx.prevSeriesY[i-1][0]:this.lineCtx.zeroY)-a[i][0]/this.lineCtx.yRatio[this.lineCtx.yaxisIndex]+2*(this.lineCtx.isReversed?a[i][0]/this.lineCtx.yRatio[this.lineCtx.yaxisIndex]:0);else if(r.config.chart.stacked&&i>0&&void 0===a[i][0])for(var o=i-1;o>=0;o--)if(null!==a[o][0]&&void 0!==a[o][0]){n=s=this.lineCtx.prevSeriesY[o][0];break}return{prevY:n,lineYPosition:s}}}]),t}(),Dt=function(){function t(e,i,a){o(this,t),this.ctx=e,this.w=e.w,this.xyRatios=i,this.pointsChart=!("bubble"!==this.w.config.chart.type&&"scatter"!==this.w.config.chart.type)||a,this.scatter=new X(this.ctx),this.noNegatives=this.w.globals.minX===Number.MAX_VALUE,this.lineHelpers=new _t(this),this.markers=new H(this.ctx),this.prevSeriesY=[],this.categoryAxisCorrection=0,this.yaxisIndex=0}return c(t,[{key:"draw",value:function(t,e,i,a){var n=this.w,r=new C(this.ctx),o=n.globals.comboCharts?e:n.config.chart.type,l=r.group({class:"apexcharts-".concat(o,"-series apexcharts-plot-series")}),c=new S(this.ctx,n);this.yRatio=this.xyRatios.yRatio,this.zRatio=this.xyRatios.zRatio,this.xRatio=this.xyRatios.xRatio,this.baseLineY=this.xyRatios.baseLineY,t=c.getLogSeries(t),this.yRatio=c.getLogYRatios(this.yRatio);for(var d=[],h=0;h0&&(g=(n.globals.seriesX[u][0]-n.globals.minX)/this.xRatio),f.push(g);var v,m=g,x=void 0,b=m,y=this.zeroY,w=this.zeroY;y=this.lineHelpers.determineFirstPrevY({i:h,series:t,prevY:y,lineYPosition:0}).prevY,p.push(y),v=y,"rangeArea"===o&&(x=w=this.lineHelpers.determineFirstPrevY({i:h,series:a,prevY:w,lineYPosition:0}).prevY);var k={type:o,series:t,realIndex:u,i:h,x:g,y:1,pX:m,pY:v,pathsFrom:this._calculatePathsFrom({type:o,series:t,i:h,realIndex:u,prevX:b,prevY:y,prevY2:w}),linePaths:[],areaPaths:[],seriesIndex:i,lineYPosition:0,xArrj:f,yArrj:p,seriesRangeEnd:a},A=this._iterateOverDataPoints(s(s({},k),{},{iterations:"rangeArea"===o?t[h].length-1:void 0,isRangeStart:!0}));if("rangeArea"===o){var P=this._calculatePathsFrom({series:a,i:h,realIndex:u,prevX:b,prevY:w}),E=this._iterateOverDataPoints(s(s({},k),{},{series:a,pY:x,pathsFrom:P,iterations:a[h].length-1,isRangeStart:!1}));A.linePaths[0]=E.linePath+A.linePath,A.pathFromLine=E.pathFromLine+A.pathFromLine}this._handlePaths({type:o,realIndex:u,i:h,paths:A}),this.elSeries.add(this.elPointsMain),this.elSeries.add(this.elDataLabelsWrap),d.push(this.elSeries)}if(n.config.chart.stacked)for(var T=d.length;T>0;T--)l.add(d[T-1]);else for(var O=0;O1&&(this.yaxisIndex=i),this.isReversed=a.config.yaxis[this.yaxisIndex]&&a.config.yaxis[this.yaxisIndex].reversed,this.zeroY=a.globals.gridHeight-this.baseLineY[this.yaxisIndex]-(this.isReversed?a.globals.gridHeight:0)+(this.isReversed?2*this.baseLineY[this.yaxisIndex]:0),this.areaBottomY=this.zeroY,(this.zeroY>a.globals.gridHeight||"end"===a.config.plotOptions.area.fillTo)&&(this.areaBottomY=a.globals.gridHeight),this.categoryAxisCorrection=this.xDivision/2,this.elSeries=n.group({class:"apexcharts-series",seriesName:b.escapeString(a.globals.seriesNames[i])}),this.elPointsMain=n.group({class:"apexcharts-series-markers-wrap","data:realIndex":i}),this.elDataLabelsWrap=n.group({class:"apexcharts-datalabels","data:realIndex":i});var s=t[e].length===a.globals.dataPoints;this.elSeries.attr({"data:longestSeries":s,rel:e+1,"data:realIndex":i}),this.appendPathFrom=!0}},{key:"_calculatePathsFrom",value:function(t){var e,i,a,n,s=t.type,r=t.series,o=t.i,l=t.realIndex,c=t.prevX,d=t.prevY,h=t.prevY2,u=this.w,p=new C(this.ctx);if(null===r[o][0]){for(var f=0;f0){var g=this.lineHelpers.checkPreviousPaths({pathFromLine:a,pathFromArea:n,realIndex:l});a=g.pathFromLine,n=g.pathFromArea}return{prevX:c,prevY:d,linePath:e,areaPath:i,pathFromLine:a,pathFromArea:n}}},{key:"_handlePaths",value:function(t){var e=t.type,i=t.realIndex,a=t.i,n=t.paths,r=this.w,o=new C(this.ctx),l=new j(this.ctx);this.prevSeriesY.push(n.yArrj),r.globals.seriesXvalues[i]=n.xArrj,r.globals.seriesYvalues[i]=n.yArrj;var c=r.config.forecastDataPoints;if(c.count>0&&"rangeArea"!==e){var d=r.globals.seriesXvalues[i][r.globals.seriesXvalues[i].length-c.count-1],h=o.drawRect(d,0,r.globals.gridWidth,r.globals.gridHeight,0);r.globals.dom.elForecastMask.appendChild(h.node);var u=o.drawRect(0,0,d,r.globals.gridHeight,0);r.globals.dom.elNonForecastMask.appendChild(u.node)}this.pointsChart||r.globals.delayedElements.push({el:this.elPointsMain.node,index:i});var p={i:a,realIndex:i,animationDelay:a,initialSpeed:r.config.chart.animations.speed,dataChangeSpeed:r.config.chart.animations.dynamicAnimation.speed,className:"apexcharts-".concat(e)};if("area"===e)for(var f=l.fillPath({seriesNumber:i}),g=0;g0&&"rangeArea"!==e){var k=o.renderPaths(w);k.node.setAttribute("stroke-dasharray",c.dashArray),c.strokeWidth&&k.node.setAttribute("stroke-width",c.strokeWidth),this.elSeries.add(k),k.attr("clip-path","url(#forecastMask".concat(r.globals.cuid,")")),S.attr("clip-path","url(#nonForecastMask".concat(r.globals.cuid,")"))}}}}},{key:"_iterateOverDataPoints",value:function(t){var e=t.type,i=t.series,a=t.iterations,n=t.realIndex,s=t.i,r=t.x,o=t.y,l=t.pX,c=t.pY,d=t.pathsFrom,h=t.linePaths,u=t.areaPaths,p=t.seriesIndex,f=t.lineYPosition,g=t.xArrj,v=t.yArrj,m=t.isRangeStart,x=t.seriesRangeEnd,y=this.w,w=new C(this.ctx),S=this.yRatio,k=d.prevY,A=d.linePath,P=d.areaPath,E=d.pathFromLine,T=d.pathFromArea,O=b.isNumber(y.globals.minYArr[n])?y.globals.minYArr[n]:y.globals.minY;a||(a=y.globals.dataPoints>1?y.globals.dataPoints-1:y.globals.dataPoints);for(var M=o,L=0;L0&&y.globals.collapsedSeries.length-1){e--;break}return e>=0?e:0}(s-1)][L+1]:this.zeroY,I?o=f-O/S[this.yaxisIndex]+2*(this.isReversed?O/S[this.yaxisIndex]:0):(o=f-i[s][L+1]/S[this.yaxisIndex]+2*(this.isReversed?i[s][L+1]/S[this.yaxisIndex]:0),"rangeArea"===e&&(M=f-x[s][L+1]/S[this.yaxisIndex]+2*(this.isReversed?x[s][L+1]/S[this.yaxisIndex]:0))),g.push(r),v.push(o);var D=this.lineHelpers.calculatePoints({series:i,x:r,y:o,realIndex:n,i:s,j:L,prevY:k}),z=this._createPaths({type:e,series:i,i:s,realIndex:n,j:L,x:r,y:o,y2:M,pX:l,pY:c,linePath:A,areaPath:P,linePaths:h,areaPaths:u,seriesIndex:p,isRangeStart:m});u=z.areaPaths,h=z.linePaths,l=z.pX,c=z.pY,P=z.areaPath,A=z.linePath,this.appendPathFrom&&(E+=w.line(r,this.zeroY),T+=w.line(r,this.zeroY)),this.handleNullDataPoints(i,D,s,L,n),this._handleMarkersAndLabels({type:e,pointsPos:D,i:s,j:L,realIndex:n,isRangeStart:m})}return{yArrj:v,xArrj:g,pathFromArea:T,areaPaths:u,pathFromLine:E,linePaths:h,linePath:A,areaPath:P}}},{key:"_handleMarkersAndLabels",value:function(t){var e=t.type,i=t.pointsPos,a=t.isRangeStart,n=t.i,s=t.j,r=t.realIndex,o=this.w,l=new R(this.ctx);if(this.pointsChart)this.scatter.draw(this.elSeries,s,{realIndex:r,pointsPos:i,zRatio:this.zRatio,elParent:this.elPointsMain});else{o.globals.series[n].length>1&&this.elPointsMain.node.classList.add("apexcharts-element-hidden");var c=this.markers.plotChartMarkers(i,r,s+1);null!==c&&this.elPointsMain.add(c)}var d=l.drawDataLabel({type:e,isRangeStart:a,pos:i,i:r,j:s+1});null!==d&&this.elDataLabelsWrap.add(d)}},{key:"_createPaths",value:function(t){var e=t.type,i=t.series,a=t.i,n=t.realIndex,s=t.j,r=t.x,o=t.y,l=t.y2,c=t.pX,d=t.pY,h=t.linePath,u=t.areaPath,p=t.linePaths,f=t.areaPaths,g=t.seriesIndex,v=t.isRangeStart,m=this.w,x=new C(this.ctx),b=m.config.stroke.curve,y=this.areaBottomY;if(Array.isArray(m.config.stroke.curve)&&(b=Array.isArray(g)?m.config.stroke.curve[g[a]]:m.config.stroke.curve[a]),"smooth"===b){var w=.35*(r-c);m.globals.hasNullValues?(null!==i[a][s]&&(null!==i[a][s+1]?(h=x.move(c,d)+x.curve(c+w,d,r-w,o,r+1,o),u=x.move(c+1,d)+x.curve(c+w,d,r-w,o,r+1,o)+x.line(r,y)+x.line(c,y)+"z"):(h=x.move(c,d),u=x.move(c,d)+"z")),p.push(h),f.push(u)):(h+=x.curve(c+w,d,r-w,o,r,o),u+=x.curve(c+w,d,r-w,o,r,o)),c=r,d=o,s===i[a].length-2&&(u=u+x.curve(c,d,r,o,r,y)+x.move(r,o)+"z","rangeArea"===e&&v?h=h+x.curve(c,d,r,o,r,l)+x.move(r,l)+"z":m.globals.hasNullValues||(p.push(h),f.push(u)))}else{if(null===i[a][s+1]){h+=x.move(r,o);var S=m.globals.isXNumeric?(m.globals.seriesX[n][s]-m.globals.minX)/this.xRatio:r-this.xDivision;u=u+x.line(S,y)+x.move(r,o)+"z"}null===i[a][s]&&(h+=x.move(r,o),u+=x.move(r,y)),"stepline"===b?(h=h+x.line(r,null,"H")+x.line(null,o,"V"),u=u+x.line(r,null,"H")+x.line(null,o,"V")):"straight"===b&&(h+=x.line(r,o),u+=x.line(r,o)),s===i[a].length-2&&(u=u+x.line(r,y)+x.move(r,o)+"z","rangeArea"===e&&v?h=h+x.line(r,l)+x.move(r,l)+"z":(p.push(h),f.push(u)))}return{linePaths:p,areaPaths:f,pX:c,pY:d,linePath:h,areaPath:u}}},{key:"handleNullDataPoints",value:function(t,e,i,a,n){var s=this.w;if(null===t[i][a]&&s.config.markers.showNullDataPoints||1===t[i].length){var r=this.markers.plotChartMarkers(e,n,a+1,this.strokeWidth-s.config.markers.strokeWidth/2,!0);null!==r&&this.elPointsMain.add(r)}}}]),t}();window.TreemapSquared={},window.TreemapSquared.generate=function(){function t(e,i,a,n){this.xoffset=e,this.yoffset=i,this.height=n,this.width=a,this.shortestEdge=function(){return Math.min(this.height,this.width)},this.getCoordinates=function(t){var e,i=[],a=this.xoffset,n=this.yoffset,r=s(t)/this.height,o=s(t)/this.width;if(this.width>=this.height)for(e=0;e=this.height){var a=e/this.height,n=this.width-a;i=new t(this.xoffset+a,this.yoffset,n,this.height)}else{var s=e/this.width,r=this.height-s;i=new t(this.xoffset,this.yoffset+s,this.width,r)}return i}}function e(e,a,n,r,o){r=void 0===r?0:r,o=void 0===o?0:o;var l=i(function(t,e){var i,a=[],n=e/s(t);for(i=0;i=a(n,i))}(e,l=t[0],o)?(e.push(l),i(t.slice(1),e,n,r)):(c=n.cutArea(s(e),r),r.push(n.getCoordinates(e)),i(t,[],c,r)),r;r.push(n.getCoordinates(e))}function a(t,e){var i=Math.min.apply(Math,t),a=Math.max.apply(Math,t),n=s(t);return Math.max(Math.pow(e,2)*a/Math.pow(n,2),Math.pow(n,2)/(Math.pow(e,2)*i))}function n(t){return t&&t.constructor===Array}function s(t){var e,i=0;for(e=0;es-a&&l.width<=r-n){var c=o.rotateAroundCenter(t.node);t.node.setAttribute("transform","rotate(-90 ".concat(c.x," ").concat(c.y,")"))}}},{key:"animateTreemap",value:function(t,e,i,a){var n=new y(this.ctx);n.animateRect(t,{x:e.x,y:e.y,width:e.width,height:e.height},{x:i.x,y:i.y,width:i.width,height:i.height},a,(function(){n.animationCompleted(t)}))}}]),t}(),jt=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.timeScaleArray=[],this.utc=this.w.config.xaxis.labels.datetimeUTC}return c(t,[{key:"calculateTimeScaleTicks",value:function(t,e){var i=this,a=this.w;if(a.globals.allSeriesCollapsed)return a.globals.labels=[],a.globals.timescaleLabels=[],[];var n=new L(this.ctx),r=(e-t)/864e5;this.determineInterval(r),a.globals.disableZoomIn=!1,a.globals.disableZoomOut=!1,r<.00011574074074074075?a.globals.disableZoomIn=!0:r>5e4&&(a.globals.disableZoomOut=!0);var o=n.getTimeUnitsfromTimestamp(t,e,this.utc),l=a.globals.gridWidth/r,c=l/24,d=c/60,h=d/60,u=Math.floor(24*r),p=Math.floor(1440*r),f=Math.floor(86400*r),g=Math.floor(r),v=Math.floor(r/30),m=Math.floor(r/365),x={minMillisecond:o.minMillisecond,minSecond:o.minSecond,minMinute:o.minMinute,minHour:o.minHour,minDate:o.minDate,minMonth:o.minMonth,minYear:o.minYear},b={firstVal:x,currentMillisecond:x.minMillisecond,currentSecond:x.minSecond,currentMinute:x.minMinute,currentHour:x.minHour,currentMonthDate:x.minDate,currentDate:x.minDate,currentMonth:x.minMonth,currentYear:x.minYear,daysWidthOnXAxis:l,hoursWidthOnXAxis:c,minutesWidthOnXAxis:d,secondsWidthOnXAxis:h,numberOfSeconds:f,numberOfMinutes:p,numberOfHours:u,numberOfDays:g,numberOfMonths:v,numberOfYears:m};switch(this.tickInterval){case"years":this.generateYearScale(b);break;case"months":case"half_year":this.generateMonthScale(b);break;case"months_days":case"months_fortnight":case"days":case"week_days":this.generateDayScale(b);break;case"hours":this.generateHourScale(b);break;case"minutes_fives":case"minutes":this.generateMinuteScale(b);break;case"seconds_tens":case"seconds_fives":case"seconds":this.generateSecondScale(b)}var y=this.timeScaleArray.map((function(t){var e={position:t.position,unit:t.unit,year:t.year,day:t.day?t.day:1,hour:t.hour?t.hour:0,month:t.month+1};return"month"===t.unit?s(s({},e),{},{day:1,value:t.value+1}):"day"===t.unit||"hour"===t.unit?s(s({},e),{},{value:t.value}):"minute"===t.unit?s(s({},e),{},{value:t.value,minute:t.value}):"second"===t.unit?s(s({},e),{},{value:t.value,minute:t.minute,second:t.second}):t}));return y.filter((function(t){var e=1,n=Math.ceil(a.globals.gridWidth/120),s=t.value;void 0!==a.config.xaxis.tickAmount&&(n=a.config.xaxis.tickAmount),y.length>n&&(e=Math.floor(y.length/n));var r=!1,o=!1;switch(i.tickInterval){case"years":"year"===t.unit&&(r=!0);break;case"half_year":e=7,"year"===t.unit&&(r=!0);break;case"months":e=1,"year"===t.unit&&(r=!0);break;case"months_fortnight":e=15,"year"!==t.unit&&"month"!==t.unit||(r=!0),30===s&&(o=!0);break;case"months_days":e=10,"month"===t.unit&&(r=!0),30===s&&(o=!0);break;case"week_days":e=8,"month"===t.unit&&(r=!0);break;case"days":e=1,"month"===t.unit&&(r=!0);break;case"hours":"day"===t.unit&&(r=!0);break;case"minutes_fives":case"seconds_fives":s%5!=0&&(o=!0);break;case"seconds_tens":s%10!=0&&(o=!0)}if("hours"===i.tickInterval||"minutes_fives"===i.tickInterval||"seconds_tens"===i.tickInterval||"seconds_fives"===i.tickInterval){if(!o)return!0}else if((s%e==0||r)&&!o)return!0}))}},{key:"recalcDimensionsBasedOnFormat",value:function(t,e){var i=this.w,a=this.formatDates(t),n=this.removeOverlappingTS(a);i.globals.timescaleLabels=n.slice(),new ct(this.ctx).plotCoords()}},{key:"determineInterval",value:function(t){var e=24*t,i=60*e;switch(!0){case t/365>5:this.tickInterval="years";break;case t>800:this.tickInterval="half_year";break;case t>180:this.tickInterval="months";break;case t>90:this.tickInterval="months_fortnight";break;case t>60:this.tickInterval="months_days";break;case t>30:this.tickInterval="week_days";break;case t>2:this.tickInterval="days";break;case e>2.4:this.tickInterval="hours";break;case i>15:this.tickInterval="minutes_fives";break;case i>5:this.tickInterval="minutes";break;case i>1:this.tickInterval="seconds_tens";break;case 60*i>20:this.tickInterval="seconds_fives";break;default:this.tickInterval="seconds"}}},{key:"generateYearScale",value:function(t){var e=t.firstVal,i=t.currentMonth,a=t.currentYear,n=t.daysWidthOnXAxis,s=t.numberOfYears,r=e.minYear,o=0,l=new L(this.ctx),c="year";if(e.minDate>1||e.minMonth>0){var d=l.determineRemainingDaysOfYear(e.minYear,e.minMonth,e.minDate);o=(l.determineDaysOfYear(e.minYear)-d+1)*n,r=e.minYear+1,this.timeScaleArray.push({position:o,value:r,unit:c,year:r,month:b.monthMod(i+1)})}else 1===e.minDate&&0===e.minMonth&&this.timeScaleArray.push({position:o,value:r,unit:c,year:a,month:b.monthMod(i+1)});for(var h=r,u=o,p=0;p1){l=(c.determineDaysOfMonths(a+1,e.minYear)-i+1)*s,o=b.monthMod(a+1);var u=n+h,p=b.monthMod(o),f=o;0===o&&(d="year",f=u,p=1,u+=h+=1),this.timeScaleArray.push({position:l,value:f,unit:d,year:u,month:p})}else this.timeScaleArray.push({position:l,value:o,unit:d,year:n,month:b.monthMod(a)});for(var g=o+1,v=l,m=0,x=1;mr.determineDaysOfMonths(e+1,i)?(c=1,o="month",u=e+=1,e):e},h=(24-e.minHour)*n,u=l,p=d(c,i,a);0===e.minHour&&1===e.minDate?(h=0,u=b.monthMod(e.minMonth),o="month",c=e.minDate,s++):1!==e.minDate&&0===e.minHour&&0===e.minMinute&&(h=0,l=e.minDate,u=l,p=d(c=l,i,a)),this.timeScaleArray.push({position:h,value:u,unit:o,year:this._getYear(a,p,0),month:b.monthMod(p),day:c});for(var f=h,g=0;go.determineDaysOfMonths(e+1,n)&&(g=1,e+=1),{month:e,date:g}},d=function(t,e){return t>o.determineDaysOfMonths(e+1,n)?e+=1:e},h=60-(e.minMinute+e.minSecond/60),u=h*s,p=e.minHour+1,f=p+1;60===h&&(u=0,f=(p=e.minHour)+1);var g=i,v=d(g,a);this.timeScaleArray.push({position:u,value:p,unit:l,day:g,hour:f,year:n,month:b.monthMod(v)});for(var m=u,x=0;x=24&&(f=0,l="day",v=c(g+=1,v).month,v=d(g,v));var y=this._getYear(n,v,0);m=0===f&&0===x?h*s:60*s+m;var w=0===f?g:f;this.timeScaleArray.push({position:m,value:w,unit:l,hour:f,day:g,year:y,month:b.monthMod(v)}),f++}}},{key:"generateMinuteScale",value:function(t){for(var e=t.currentMillisecond,i=t.currentSecond,a=t.currentMinute,n=t.currentHour,s=t.currentDate,r=t.currentMonth,o=t.currentYear,l=t.minutesWidthOnXAxis,c=t.secondsWidthOnXAxis,d=t.numberOfMinutes,h=a+1,u=s,p=r,f=o,g=n,v=(60-i-e/1e3)*c,m=0;m=60&&(h=0,24===(g+=1)&&(g=0)),this.timeScaleArray.push({position:v,value:h,unit:"minute",hour:g,minute:h,day:u,year:this._getYear(f,p,0),month:b.monthMod(p)}),v+=l,h++}},{key:"generateSecondScale",value:function(t){for(var e=t.currentMillisecond,i=t.currentSecond,a=t.currentMinute,n=t.currentHour,s=t.currentDate,r=t.currentMonth,o=t.currentYear,l=t.secondsWidthOnXAxis,c=t.numberOfSeconds,d=i+1,h=a,u=s,p=r,f=o,g=n,v=(1e3-e)/1e3*l,m=0;m=60&&(d=0,++h>=60&&(h=0,24==++g&&(g=0))),this.timeScaleArray.push({position:v,value:d,unit:"second",hour:g,minute:h,second:d,day:u,year:this._getYear(f,p,0),month:b.monthMod(p)}),v+=l,d++}},{key:"createRawDateString",value:function(t,e){var i=t.year;return 0===t.month&&(t.month=1),i+="-"+("0"+t.month.toString()).slice(-2),"day"===t.unit?i+="day"===t.unit?"-"+("0"+e).slice(-2):"-01":i+="-"+("0"+(t.day?t.day:"1")).slice(-2),"hour"===t.unit?i+="hour"===t.unit?"T"+("0"+e).slice(-2):"T00":i+="T"+("0"+(t.hour?t.hour:"0")).slice(-2),"minute"===t.unit?i+=":"+("0"+e).slice(-2):i+=":"+(t.minute?("0"+t.minute).slice(-2):"00"),"second"===t.unit?i+=":"+("0"+e).slice(-2):i+=":00",this.utc&&(i+=".000Z"),i}},{key:"formatDates",value:function(t){var e=this,i=this.w;return t.map((function(t){var a=t.value.toString(),n=new L(e.ctx),s=e.createRawDateString(t,a),r=n.getDate(n.parseDate(s));if(e.utc||(r=n.getDate(n.parseDateWithTimezone(s))),void 0===i.config.xaxis.labels.format){var o="dd MMM",l=i.config.xaxis.labels.datetimeFormatter;"year"===t.unit&&(o=l.year),"month"===t.unit&&(o=l.month),"day"===t.unit&&(o=l.day),"hour"===t.unit&&(o=l.hour),"minute"===t.unit&&(o=l.minute),"second"===t.unit&&(o=l.second),a=n.formatDate(r,o)}else a=n.formatDate(r,i.config.xaxis.labels.format);return{dateString:s,position:t.position,value:a,unit:t.unit,year:t.year,month:t.month}}))}},{key:"removeOverlappingTS",value:function(t){var e,i=this,a=new C(this.ctx),n=!1;t.length>0&&t[0].value&&t.every((function(e){return e.value.length===t[0].value.length}))&&(n=!0,e=a.getTextRects(t[0].value).width);var s=0,r=t.map((function(r,o){if(o>0&&i.w.config.xaxis.labels.hideOverlappingLabels){var l=n?e:a.getTextRects(t[s].value).width,c=t[s].position;return r.position>c+l+10?(s=o,r):null}return r}));return r.filter((function(t){return null!==t}))}},{key:"_getYear",value:function(t,e,i){return t+Math.floor(e/12)+i}}]),t}(),Ht=function(){function t(e,i){o(this,t),this.ctx=i,this.w=i.w,this.el=e}return c(t,[{key:"setupElements",value:function(){var t=this.w.globals,e=this.w.config,i=e.chart.type;t.axisCharts=["line","area","bar","rangeBar","rangeArea","candlestick","boxPlot","scatter","bubble","radar","heatmap","treemap"].indexOf(i)>-1,t.xyCharts=["line","area","bar","rangeBar","rangeArea","candlestick","boxPlot","scatter","bubble"].indexOf(i)>-1,t.isBarHorizontal=("bar"===e.chart.type||"rangeBar"===e.chart.type||"boxPlot"===e.chart.type)&&e.plotOptions.bar.horizontal,t.chartClass=".apexcharts"+t.chartID,t.dom.baseEl=this.el,t.dom.elWrap=document.createElement("div"),C.setAttrs(t.dom.elWrap,{id:t.chartClass.substring(1),class:"apexcharts-canvas "+t.chartClass.substring(1)}),this.el.appendChild(t.dom.elWrap),t.dom.Paper=new window.SVG.Doc(t.dom.elWrap),t.dom.Paper.attr({class:"apexcharts-svg","xmlns:data":"ApexChartsNS",transform:"translate(".concat(e.chart.offsetX,", ").concat(e.chart.offsetY,")")}),t.dom.Paper.node.style.background=e.chart.background,this.setSVGDimensions(),t.dom.elGraphical=t.dom.Paper.group().attr({class:"apexcharts-inner apexcharts-graphical"}),t.dom.elAnnotations=t.dom.Paper.group().attr({class:"apexcharts-annotations"}),t.dom.elDefs=t.dom.Paper.defs(),t.dom.elLegendWrap=document.createElement("div"),t.dom.elLegendWrap.classList.add("apexcharts-legend"),t.dom.elWrap.appendChild(t.dom.elLegendWrap),t.dom.Paper.add(t.dom.elGraphical),t.dom.elGraphical.add(t.dom.elDefs)}},{key:"plotChartType",value:function(t,e){var i=this.w,a=i.config,n=i.globals,s={series:[],i:[]},r={series:[],i:[]},o={series:[],i:[]},l={series:[],i:[]},c={series:[],i:[]},d={series:[],i:[]},h={series:[],i:[]},u={series:[],i:[]},p={series:[],seriesRangeEnd:[],i:[]};n.series.map((function(e,f){var g=0;void 0!==t[f].type?("column"===t[f].type||"bar"===t[f].type?(n.series.length>1&&a.plotOptions.bar.horizontal&&console.warn("Horizontal bars are not supported in a mixed/combo chart. Please turn off `plotOptions.bar.horizontal`"),c.series.push(e),c.i.push(f),g++,i.globals.columnSeries=c.series):"area"===t[f].type?(r.series.push(e),r.i.push(f),g++):"line"===t[f].type?(s.series.push(e),s.i.push(f),g++):"scatter"===t[f].type?(o.series.push(e),o.i.push(f)):"bubble"===t[f].type?(l.series.push(e),l.i.push(f),g++):"candlestick"===t[f].type?(d.series.push(e),d.i.push(f),g++):"boxPlot"===t[f].type?(h.series.push(e),h.i.push(f),g++):"rangeBar"===t[f].type?(u.series.push(e),u.i.push(f),g++):"rangeArea"===t[f].type?(p.series.push(n.seriesRangeStart[f]),p.seriesRangeEnd.push(n.seriesRangeEnd[f]),p.i.push(f),g++):console.warn("You have specified an unrecognized chart type. Available types for this property are line/area/column/bar/scatter/bubble"),g>1&&(n.comboCharts=!0)):(s.series.push(e),s.i.push(f))}));var f=new Dt(this.ctx,e),g=new At(this.ctx,e);this.ctx.pie=new Ot(this.ctx);var v=new Lt(this.ctx);this.ctx.rangeBar=new It(this.ctx,e);var m=new Mt(this.ctx),x=[];if(n.comboCharts){if(r.series.length>0&&x.push(f.draw(r.series,"area",r.i)),c.series.length>0)if(i.config.chart.stacked){var b=new kt(this.ctx,e);x.push(b.draw(c.series,c.i))}else this.ctx.bar=new St(this.ctx,e),x.push(this.ctx.bar.draw(c.series,c.i));if(p.series.length>0&&x.push(f.draw(p.series,"rangeArea",p.i,p.seriesRangeEnd)),s.series.length>0&&x.push(f.draw(s.series,"line",s.i)),d.series.length>0&&x.push(g.draw(d.series,d.i)),h.series.length>0&&x.push(g.draw(h.series,h.i)),u.series.length>0&&x.push(this.ctx.rangeBar.draw(u.series,u.i)),o.series.length>0){var y=new Dt(this.ctx,e,!0);x.push(y.draw(o.series,"scatter",o.i))}if(l.series.length>0){var w=new Dt(this.ctx,e,!0);x.push(w.draw(l.series,"bubble",l.i))}}else switch(a.chart.type){case"line":x=f.draw(n.series,"line");break;case"area":x=f.draw(n.series,"area");break;case"bar":a.chart.stacked?x=new kt(this.ctx,e).draw(n.series):(this.ctx.bar=new St(this.ctx,e),x=this.ctx.bar.draw(n.series));break;case"candlestick":case"boxPlot":x=new At(this.ctx,e).draw(n.series);break;case"rangeBar":x=this.ctx.rangeBar.draw(n.series);break;case"rangeArea":x=f.draw(n.seriesRangeStart,"rangeArea",void 0,n.seriesRangeEnd);break;case"heatmap":x=new Et(this.ctx,e).draw(n.series);break;case"treemap":x=new $t(this.ctx,e).draw(n.series);break;case"pie":case"donut":case"polarArea":x=this.ctx.pie.draw(n.series);break;case"radialBar":x=v.draw(n.series);break;case"radar":x=m.draw(n.series);break;default:x=f.draw(n.series)}return x}},{key:"setSVGDimensions",value:function(){var t=this.w.globals,e=this.w.config;t.svgWidth=e.chart.width,t.svgHeight=e.chart.height;var i=b.getDimensions(this.el),a=e.chart.width.toString().split(/[0-9]+/g).pop();"%"===a?b.isNumber(i[0])&&(0===i[0].width&&(i=b.getDimensions(this.el.parentNode)),t.svgWidth=i[0]*parseInt(e.chart.width,10)/100):"px"!==a&&""!==a||(t.svgWidth=parseInt(e.chart.width,10));var n=e.chart.height.toString().split(/[0-9]+/g).pop();if("auto"!==t.svgHeight&&""!==t.svgHeight)if("%"===n){var s=b.getDimensions(this.el.parentNode);t.svgHeight=s[1]*parseInt(e.chart.height,10)/100}else t.svgHeight=parseInt(e.chart.height,10);else t.axisCharts?t.svgHeight=t.svgWidth/1.61:t.svgHeight=t.svgWidth/1.2;if(t.svgWidth<0&&(t.svgWidth=0),t.svgHeight<0&&(t.svgHeight=0),C.setAttrs(t.dom.Paper.node,{width:t.svgWidth,height:t.svgHeight}),"%"!==n){var r=e.chart.sparkline.enabled?0:t.axisCharts?e.chart.parentHeightOffset:0;t.dom.Paper.node.parentNode.parentNode.style.minHeight=t.svgHeight+r+"px"}t.dom.elWrap.style.width=t.svgWidth+"px",t.dom.elWrap.style.height=t.svgHeight+"px"}},{key:"shiftGraphPosition",value:function(){var t=this.w.globals,e=t.translateY,i={transform:"translate("+t.translateX+", "+e+")"};C.setAttrs(t.dom.elGraphical.node,i)}},{key:"resizeNonAxisCharts",value:function(){var t=this.w,e=t.globals,i=0,a=t.config.chart.sparkline.enabled?1:15;a+=t.config.grid.padding.bottom,"top"!==t.config.legend.position&&"bottom"!==t.config.legend.position||!t.config.legend.show||t.config.legend.floating||(i=new ht(this.ctx).legendHelpers.getLegendBBox().clwh+10);var n=t.globals.dom.baseEl.querySelector(".apexcharts-radialbar, .apexcharts-pie"),s=2.05*t.globals.radialSize;if(n&&!t.config.chart.sparkline.enabled&&0!==t.config.plotOptions.radialBar.startAngle){var r=b.getBoundingClientRect(n);s=r.bottom;var o=r.bottom-r.top;s=Math.max(2.05*t.globals.radialSize,o)}var l=s+e.translateY+i+a;e.dom.elLegendForeign&&e.dom.elLegendForeign.setAttribute("height",l),t.config.chart.height&&String(t.config.chart.height).indexOf("%")>0||(e.dom.elWrap.style.height=l+"px",C.setAttrs(e.dom.Paper.node,{height:l}),e.dom.Paper.node.parentNode.parentNode.style.minHeight=l+"px")}},{key:"coreCalculations",value:function(){new Z(this.ctx).init()}},{key:"resetGlobals",value:function(){var t=this,e=function(){return t.w.config.series.map((function(t){return[]}))},i=new N,a=this.w.globals;i.initGlobalVars(a),a.seriesXvalues=e(),a.seriesYvalues=e()}},{key:"isMultipleY",value:function(){if(this.w.config.yaxis.constructor===Array&&this.w.config.yaxis.length>1)return this.w.globals.isMultipleYAxis=!0,!0}},{key:"xySettings",value:function(){var t=null,e=this.w;if(e.globals.axisCharts){if("back"===e.config.xaxis.crosshairs.position&&new et(this.ctx).drawXCrosshairs(),"back"===e.config.yaxis[0].crosshairs.position&&new et(this.ctx).drawYCrosshairs(),"datetime"===e.config.xaxis.type&&void 0===e.config.xaxis.labels.formatter){this.ctx.timeScale=new jt(this.ctx);var i=[];isFinite(e.globals.minX)&&isFinite(e.globals.maxX)&&!e.globals.isBarHorizontal?i=this.ctx.timeScale.calculateTimeScaleTicks(e.globals.minX,e.globals.maxX):e.globals.isBarHorizontal&&(i=this.ctx.timeScale.calculateTimeScaleTicks(e.globals.minY,e.globals.maxY)),this.ctx.timeScale.recalcDimensionsBasedOnFormat(i)}t=new S(this.ctx).getCalculatedRatios()}return t}},{key:"updateSourceChart",value:function(t){this.ctx.w.globals.selection=void 0,this.ctx.updateHelpers._updateOptions({chart:{selection:{xaxis:{min:t.w.globals.minX,max:t.w.globals.maxX}}}},!1,!1)}},{key:"setupBrushHandler",value:function(){var t=this,e=this.w;if(e.config.chart.brush.enabled&&"function"!=typeof e.config.chart.events.selection){var i=e.config.chart.brush.targets||[e.config.chart.brush.target];i.forEach((function(e){var i=ApexCharts.getChartByID(e);i.w.globals.brushSource=t.ctx,"function"!=typeof i.w.config.chart.events.zoomed&&(i.w.config.chart.events.zoomed=function(){t.updateSourceChart(i)}),"function"!=typeof i.w.config.chart.events.scrolled&&(i.w.config.chart.events.scrolled=function(){t.updateSourceChart(i)})})),e.config.chart.events.selection=function(t,a){i.forEach((function(t){var i=ApexCharts.getChartByID(t),n=b.clone(e.config.yaxis);if(e.config.chart.brush.autoScaleYaxis&&1===i.w.globals.series.length){var r=new q(i);n=r.autoScaleY(i,n,a)}var o=i.w.config.yaxis.reduce((function(t,e,a){return[].concat(v(t),[s(s({},i.w.config.yaxis[a]),{},{min:n[0].min,max:n[0].max})])}),[]);i.ctx.updateHelpers._updateOptions({xaxis:{min:a.xaxis.min,max:a.xaxis.max},yaxis:o},!1,!1,!1,!1)}))}}}}]),t}(),Xt=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"_updateOptions",value:function(t){var e=this,i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],a=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],n=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=arguments.length>4&&void 0!==arguments[4]&&arguments[4];return new Promise((function(o){var l=[e.ctx];n&&(l=e.ctx.getSyncedCharts()),e.ctx.w.globals.isExecCalled&&(l=[e.ctx],e.ctx.w.globals.isExecCalled=!1),l.forEach((function(n,c){var d=n.w;if(d.globals.shouldAnimate=a,i||(d.globals.resized=!0,d.globals.dataChanged=!0,a&&n.series.getPreviousPaths()),t&&"object"===r(t)&&(n.config=new z(t),t=S.extendArrayProps(n.config,t,d),n.w.globals.chartID!==e.ctx.w.globals.chartID&&delete t.series,d.config=b.extend(d.config,t),s&&(d.globals.lastXAxis=t.xaxis?b.clone(t.xaxis):[],d.globals.lastYAxis=t.yaxis?b.clone(t.yaxis):[],d.globals.initialConfig=b.extend({},d.config),d.globals.initialSeries=b.clone(d.config.series),t.series))){for(var h=0;h2&&void 0!==arguments[2]&&arguments[2];return new Promise((function(n){var s,r=i.w;return r.globals.shouldAnimate=e,r.globals.dataChanged=!0,e&&i.ctx.series.getPreviousPaths(),r.globals.axisCharts?(0===(s=t.map((function(t,e){return i._extendSeries(t,e)}))).length&&(s=[{data:[]}]),r.config.series=s):r.config.series=t.slice(),a&&(r.globals.initialConfig.series=b.clone(r.config.series),r.globals.initialSeries=b.clone(r.config.series)),i.ctx.update().then((function(){n(i.ctx)}))}))}},{key:"_extendSeries",value:function(t,e){var i=this.w,a=i.config.series[e];return s(s({},i.config.series[e]),{},{name:t.name?t.name:a&&a.name,color:t.color?t.color:a&&a.color,type:t.type?t.type:a&&a.type,data:t.data?t.data:a&&a.data})}},{key:"toggleDataPointSelection",value:function(t,e){var i=this.w,a=null,n=".apexcharts-series[data\\:realIndex='".concat(t,"']");return i.globals.axisCharts?a=i.globals.dom.Paper.select("".concat(n," path[j='").concat(e,"'], ").concat(n," circle[j='").concat(e,"'], ").concat(n," rect[j='").concat(e,"']")).members[0]:void 0===e&&(a=i.globals.dom.Paper.select("".concat(n," path[j='").concat(t,"']")).members[0],"pie"!==i.config.chart.type&&"polarArea"!==i.config.chart.type&&"donut"!==i.config.chart.type||this.ctx.pie.pieClicked(t)),a?(new C(this.ctx).pathMouseDown(a,null),a.node?a.node:null):(console.warn("toggleDataPointSelection: Element not found"),null)}},{key:"forceXAxisUpdate",value:function(t){var e=this.w;if(["min","max"].forEach((function(i){void 0!==t.xaxis[i]&&(e.config.xaxis[i]=t.xaxis[i],e.globals.lastXAxis[i]=t.xaxis[i])})),t.xaxis.categories&&t.xaxis.categories.length&&(e.config.xaxis.categories=t.xaxis.categories),e.config.xaxis.convertedCatToNumeric){var i=new D(t);t=i.convertCatToNumericXaxis(t,this.ctx)}return t}},{key:"forceYAxisUpdate",value:function(t){return t.chart&&t.chart.stacked&&"100%"===t.chart.stackType&&(Array.isArray(t.yaxis)?t.yaxis.forEach((function(e,i){t.yaxis[i].min=0,t.yaxis[i].max=100})):(t.yaxis.min=0,t.yaxis.max=100)),t}},{key:"revertDefaultAxisMinMax",value:function(t){var e=this,i=this.w,a=i.globals.lastXAxis,n=i.globals.lastYAxis;t&&t.xaxis&&(a=t.xaxis),t&&t.yaxis&&(n=t.yaxis),i.config.xaxis.min=a.min,i.config.xaxis.max=a.max;i.config.yaxis.map((function(t,a){i.globals.zoomed||void 0!==n[a]?function(t){void 0!==n[t]&&(i.config.yaxis[t].min=n[t].min,i.config.yaxis[t].max=n[t].max)}(a):void 0!==e.ctx.opts.yaxis[a]&&(t.min=e.ctx.opts.yaxis[a].min,t.max=e.ctx.opts.yaxis[a].max)}))}}]),t}();zt="undefined"!=typeof window?window:void 0,Nt=function(t,e){var i=(void 0!==this?this:t).SVG=function(t){if(i.supported)return t=new i.Doc(t),i.parser.draw||i.prepare(),t};if(i.ns="http://www.w3.org/2000/svg",i.xmlns="http://www.w3.org/2000/xmlns/",i.xlink="http://www.w3.org/1999/xlink",i.svgjs="http://svgjs.dev",i.supported=!0,!i.supported)return!1;i.did=1e3,i.eid=function(t){return"Svgjs"+h(t)+i.did++},i.create=function(t){var i=e.createElementNS(this.ns,t);return i.setAttribute("id",this.eid(t)),i},i.extend=function(){var t,e;e=(t=[].slice.call(arguments)).pop();for(var a=t.length-1;a>=0;a--)if(t[a])for(var n in e)t[a].prototype[n]=e[n];i.Set&&i.Set.inherit&&i.Set.inherit()},i.invent=function(t){var e="function"==typeof t.create?t.create:function(){this.constructor.call(this,i.create(t.create))};return t.inherit&&(e.prototype=new t.inherit),t.extend&&i.extend(e,t.extend),t.construct&&i.extend(t.parent||i.Container,t.construct),e},i.adopt=function(e){return e?e.instance?e.instance:((a="svg"==e.nodeName?e.parentNode instanceof t.SVGElement?new i.Nested:new i.Doc:"linearGradient"==e.nodeName?new i.Gradient("linear"):"radialGradient"==e.nodeName?new i.Gradient("radial"):i[h(e.nodeName)]?new(i[h(e.nodeName)]):new i.Element(e)).type=e.nodeName,a.node=e,e.instance=a,a instanceof i.Doc&&a.namespace().defs(),a.setData(JSON.parse(e.getAttribute("svgjs:data"))||{}),a):null;var a},i.prepare=function(){var t=e.getElementsByTagName("body")[0],a=(t?new i.Doc(t):i.adopt(e.documentElement).nested()).size(2,0);i.parser={body:t||e.documentElement,draw:a.style("opacity:0;position:absolute;left:-100%;top:-100%;overflow:hidden").node,poly:a.polyline().node,path:a.path().node,native:i.create("svg")}},i.parser={native:i.create("svg")},e.addEventListener("DOMContentLoaded",(function(){i.parser.draw||i.prepare()}),!1),i.regex={numberAndUnit:/^([+-]?(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?)([a-z%]*)$/i,hex:/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i,rgb:/rgb\((\d+),(\d+),(\d+)\)/,reference:/#([a-z0-9\-_]+)/i,transforms:/\)\s*,?\s*/,whitespace:/\s/g,isHex:/^#[a-f0-9]{3,6}$/i,isRgb:/^rgb\(/,isCss:/[^:]+:[^;]+;?/,isBlank:/^(\s+)?$/,isNumber:/^[+-]?(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,isPercent:/^-?[\d\.]+%$/,isImage:/\.(jpg|jpeg|png|gif|svg)(\?[^=]+.*)?/i,delimiter:/[\s,]+/,hyphen:/([^e])\-/gi,pathLetters:/[MLHVCSQTAZ]/gi,isPathLetter:/[MLHVCSQTAZ]/i,numbersWithDots:/((\d?\.\d+(?:e[+-]?\d+)?)((?:\.\d+(?:e[+-]?\d+)?)+))+/gi,dots:/\./g},i.utils={map:function(t,e){for(var i=t.length,a=[],n=0;n1?1:t,new i.Color({r:~~(this.r+(this.destination.r-this.r)*t),g:~~(this.g+(this.destination.g-this.g)*t),b:~~(this.b+(this.destination.b-this.b)*t)})):this}}),i.Color.test=function(t){return t+="",i.regex.isHex.test(t)||i.regex.isRgb.test(t)},i.Color.isRgb=function(t){return t&&"number"==typeof t.r&&"number"==typeof t.g&&"number"==typeof t.b},i.Color.isColor=function(t){return i.Color.isRgb(t)||i.Color.test(t)},i.Array=function(t,e){0==(t=(t||[]).valueOf()).length&&e&&(t=e.valueOf()),this.value=this.parse(t)},i.extend(i.Array,{toString:function(){return this.value.join(" ")},valueOf:function(){return this.value},parse:function(t){return t=t.valueOf(),Array.isArray(t)?t:this.split(t)}}),i.PointArray=function(t,e){i.Array.call(this,t,e||[[0,0]])},i.PointArray.prototype=new i.Array,i.PointArray.prototype.constructor=i.PointArray;for(var a={M:function(t,e,i){return e.x=i.x=t[0],e.y=i.y=t[1],["M",e.x,e.y]},L:function(t,e){return e.x=t[0],e.y=t[1],["L",t[0],t[1]]},H:function(t,e){return e.x=t[0],["H",t[0]]},V:function(t,e){return e.y=t[0],["V",t[0]]},C:function(t,e){return e.x=t[4],e.y=t[5],["C",t[0],t[1],t[2],t[3],t[4],t[5]]},Q:function(t,e){return e.x=t[2],e.y=t[3],["Q",t[0],t[1],t[2],t[3]]},Z:function(t,e,i){return e.x=i.x,e.y=i.y,["Z"]}},n="mlhvqtcsaz".split(""),s=0,o=n.length;sl);return s},bbox:function(){return i.parser.draw||i.prepare(),i.parser.path.setAttribute("d",this.toString()),i.parser.path.getBBox()}}),i.Number=i.invent({create:function(t,e){this.value=0,this.unit=e||"","number"==typeof t?this.value=isNaN(t)?0:isFinite(t)?t:t<0?-34e37:34e37:"string"==typeof t?(e=t.match(i.regex.numberAndUnit))&&(this.value=parseFloat(e[1]),"%"==e[5]?this.value/=100:"s"==e[5]&&(this.value*=1e3),this.unit=e[5]):t instanceof i.Number&&(this.value=t.valueOf(),this.unit=t.unit)},extend:{toString:function(){return("%"==this.unit?~~(1e8*this.value)/1e6:"s"==this.unit?this.value/1e3:this.value)+this.unit},toJSON:function(){return this.toString()},valueOf:function(){return this.value},plus:function(t){return t=new i.Number(t),new i.Number(this+t,this.unit||t.unit)},minus:function(t){return t=new i.Number(t),new i.Number(this-t,this.unit||t.unit)},times:function(t){return t=new i.Number(t),new i.Number(this*t,this.unit||t.unit)},divide:function(t){return t=new i.Number(t),new i.Number(this/t,this.unit||t.unit)},to:function(t){var e=new i.Number(this);return"string"==typeof t&&(e.unit=t),e},morph:function(t){return this.destination=new i.Number(t),t.relative&&(this.destination.value+=this.value),this},at:function(t){return this.destination?new i.Number(this.destination).minus(this).times(t).plus(this):this}}}),i.Element=i.invent({create:function(t){this._stroke=i.defaults.attrs.stroke,this._event=null,this.dom={},(this.node=t)&&(this.type=t.nodeName,this.node.instance=this,this._stroke=t.getAttribute("stroke")||this._stroke)},extend:{x:function(t){return this.attr("x",t)},y:function(t){return this.attr("y",t)},cx:function(t){return null==t?this.x()+this.width()/2:this.x(t-this.width()/2)},cy:function(t){return null==t?this.y()+this.height()/2:this.y(t-this.height()/2)},move:function(t,e){return this.x(t).y(e)},center:function(t,e){return this.cx(t).cy(e)},width:function(t){return this.attr("width",t)},height:function(t){return this.attr("height",t)},size:function(t,e){var a=p(this,t,e);return this.width(new i.Number(a.width)).height(new i.Number(a.height))},clone:function(t){this.writeDataToDom();var e=v(this.node.cloneNode(!0));return t?t.add(e):this.after(e),e},remove:function(){return this.parent()&&this.parent().removeElement(this),this},replace:function(t){return this.after(t).remove(),t},addTo:function(t){return t.put(this)},putIn:function(t){return t.add(this)},id:function(t){return this.attr("id",t)},show:function(){return this.style("display","")},hide:function(){return this.style("display","none")},visible:function(){return"none"!=this.style("display")},toString:function(){return this.attr("id")},classes:function(){var t=this.attr("class");return null==t?[]:t.trim().split(i.regex.delimiter)},hasClass:function(t){return-1!=this.classes().indexOf(t)},addClass:function(t){if(!this.hasClass(t)){var e=this.classes();e.push(t),this.attr("class",e.join(" "))}return this},removeClass:function(t){return this.hasClass(t)&&this.attr("class",this.classes().filter((function(e){return e!=t})).join(" ")),this},toggleClass:function(t){return this.hasClass(t)?this.removeClass(t):this.addClass(t)},reference:function(t){return i.get(this.attr(t))},parent:function(e){var a=this;if(!a.node.parentNode)return null;if(a=i.adopt(a.node.parentNode),!e)return a;for(;a&&a.node instanceof t.SVGElement;){if("string"==typeof e?a.matches(e):a instanceof e)return a;if(!a.node.parentNode||"#document"==a.node.parentNode.nodeName)return null;a=i.adopt(a.node.parentNode)}},doc:function(){return this instanceof i.Doc?this:this.parent(i.Doc)},parents:function(t){var e=[],i=this;do{if(!(i=i.parent(t))||!i.node)break;e.push(i)}while(i.parent);return e},matches:function(t){return function(t,e){return(t.matches||t.matchesSelector||t.msMatchesSelector||t.mozMatchesSelector||t.webkitMatchesSelector||t.oMatchesSelector).call(t,e)}(this.node,t)},native:function(){return this.node},svg:function(t){var a=e.createElement("svg");if(!(t&&this instanceof i.Parent))return a.appendChild(t=e.createElement("svg")),this.writeDataToDom(),t.appendChild(this.node.cloneNode(!0)),a.innerHTML.replace(/^/,"").replace(/<\/svg>$/,"");a.innerHTML=""+t.replace(/\n/,"").replace(/<([\w:-]+)([^<]+?)\/>/g,"<$1$2>")+"";for(var n=0,s=a.firstChild.childNodes.length;n":function(t){return-Math.cos(t*Math.PI)/2+.5},">":function(t){return Math.sin(t*Math.PI/2)},"<":function(t){return 1-Math.cos(t*Math.PI/2)}},i.morph=function(t){return function(e,a){return new i.MorphObj(e,a).at(t)}},i.Situation=i.invent({create:function(t){this.init=!1,this.reversed=!1,this.reversing=!1,this.duration=new i.Number(t.duration).valueOf(),this.delay=new i.Number(t.delay).valueOf(),this.start=+new Date+this.delay,this.finish=this.start+this.duration,this.ease=t.ease,this.loop=0,this.loops=!1,this.animations={},this.attrs={},this.styles={},this.transforms=[],this.once={}}}),i.FX=i.invent({create:function(t){this._target=t,this.situations=[],this.active=!1,this.situation=null,this.paused=!1,this.lastPos=0,this.pos=0,this.absPos=0,this._speed=1},extend:{animate:function(t,e,a){"object"===r(t)&&(e=t.ease,a=t.delay,t=t.duration);var n=new i.Situation({duration:t||1e3,delay:a||0,ease:i.easing[e||"-"]||e});return this.queue(n),this},target:function(t){return t&&t instanceof i.Element?(this._target=t,this):this._target},timeToAbsPos:function(t){return(t-this.situation.start)/(this.situation.duration/this._speed)},absPosToTime:function(t){return this.situation.duration/this._speed*t+this.situation.start},startAnimFrame:function(){this.stopAnimFrame(),this.animationFrame=t.requestAnimationFrame(function(){this.step()}.bind(this))},stopAnimFrame:function(){t.cancelAnimationFrame(this.animationFrame)},start:function(){return!this.active&&this.situation&&(this.active=!0,this.startCurrent()),this},startCurrent:function(){return this.situation.start=+new Date+this.situation.delay/this._speed,this.situation.finish=this.situation.start+this.situation.duration/this._speed,this.initAnimations().step()},queue:function(t){return("function"==typeof t||t instanceof i.Situation)&&this.situations.push(t),this.situation||(this.situation=this.situations.shift()),this},dequeue:function(){return this.stop(),this.situation=this.situations.shift(),this.situation&&(this.situation instanceof i.Situation?this.start():this.situation.call(this)),this},initAnimations:function(){var t,e=this.situation;if(e.init)return this;for(var a in e.animations){t=this.target()[a](),Array.isArray(t)||(t=[t]),Array.isArray(e.animations[a])||(e.animations[a]=[e.animations[a]]);for(var n=t.length;n--;)e.animations[a][n]instanceof i.Number&&(t[n]=new i.Number(t[n])),e.animations[a][n]=t[n].morph(e.animations[a][n])}for(var a in e.attrs)e.attrs[a]=new i.MorphObj(this.target().attr(a),e.attrs[a]);for(var a in e.styles)e.styles[a]=new i.MorphObj(this.target().style(a),e.styles[a]);return e.initialTransformation=this.target().matrixify(),e.init=!0,this},clearQueue:function(){return this.situations=[],this},clearCurrent:function(){return this.situation=null,this},stop:function(t,e){var i=this.active;return this.active=!1,e&&this.clearQueue(),t&&this.situation&&(!i&&this.startCurrent(),this.atEnd()),this.stopAnimFrame(),this.clearCurrent()},after:function(t){var e=this.last();return this.target().on("finished.fx",(function i(a){a.detail.situation==e&&(t.call(this,e),this.off("finished.fx",i))})),this._callStart()},during:function(t){var e=this.last(),a=function(a){a.detail.situation==e&&t.call(this,a.detail.pos,i.morph(a.detail.pos),a.detail.eased,e)};return this.target().off("during.fx",a).on("during.fx",a),this.after((function(){this.off("during.fx",a)})),this._callStart()},afterAll:function(t){var e=function e(i){t.call(this),this.off("allfinished.fx",e)};return this.target().off("allfinished.fx",e).on("allfinished.fx",e),this._callStart()},last:function(){return this.situations.length?this.situations[this.situations.length-1]:this.situation},add:function(t,e,i){return this.last()[i||"animations"][t]=e,this._callStart()},step:function(t){var e,i,a;t||(this.absPos=this.timeToAbsPos(+new Date)),!1!==this.situation.loops?(e=Math.max(this.absPos,0),i=Math.floor(e),!0===this.situation.loops||ithis.lastPos&&s<=n&&(this.situation.once[s].call(this.target(),this.pos,n),delete this.situation.once[s]);return this.active&&this.target().fire("during",{pos:this.pos,eased:n,fx:this,situation:this.situation}),this.situation?(this.eachAt(),1==this.pos&&!this.situation.reversed||this.situation.reversed&&0==this.pos?(this.stopAnimFrame(),this.target().fire("finished",{fx:this,situation:this.situation}),this.situations.length||(this.target().fire("allfinished"),this.situations.length||(this.target().off(".fx"),this.active=!1)),this.active?this.dequeue():this.clearCurrent()):!this.paused&&this.active&&this.startAnimFrame(),this.lastPos=n,this):this},eachAt:function(){var t,e=this,a=this.target(),n=this.situation;for(var s in n.animations)t=[].concat(n.animations[s]).map((function(t){return"string"!=typeof t&&t.at?t.at(n.ease(e.pos),e.pos):t})),a[s].apply(a,t);for(var s in n.attrs)t=[s].concat(n.attrs[s]).map((function(t){return"string"!=typeof t&&t.at?t.at(n.ease(e.pos),e.pos):t})),a.attr.apply(a,t);for(var s in n.styles)t=[s].concat(n.styles[s]).map((function(t){return"string"!=typeof t&&t.at?t.at(n.ease(e.pos),e.pos):t})),a.style.apply(a,t);if(n.transforms.length){t=n.initialTransformation,s=0;for(var r=n.transforms.length;s=0;--a)this[b[a]]=null!=t[b[a]]?t[b[a]]:e[b[a]]},extend:{extract:function(){var t=f(this,0,1);f(this,1,0);var e=180/Math.PI*Math.atan2(t.y,t.x)-90;return{x:this.e,y:this.f,transformedX:(this.e*Math.cos(e*Math.PI/180)+this.f*Math.sin(e*Math.PI/180))/Math.sqrt(this.a*this.a+this.b*this.b),transformedY:(this.f*Math.cos(e*Math.PI/180)+this.e*Math.sin(-e*Math.PI/180))/Math.sqrt(this.c*this.c+this.d*this.d),rotation:e,a:this.a,b:this.b,c:this.c,d:this.d,e:this.e,f:this.f,matrix:new i.Matrix(this)}},clone:function(){return new i.Matrix(this)},morph:function(t){return this.destination=new i.Matrix(t),this},multiply:function(t){return new i.Matrix(this.native().multiply(function(t){return t instanceof i.Matrix||(t=new i.Matrix(t)),t}(t).native()))},inverse:function(){return new i.Matrix(this.native().inverse())},translate:function(t,e){return new i.Matrix(this.native().translate(t||0,e||0))},native:function(){for(var t=i.parser.native.createSVGMatrix(),e=b.length-1;e>=0;e--)t[b[e]]=this[b[e]];return t},toString:function(){return"matrix("+x(this.a)+","+x(this.b)+","+x(this.c)+","+x(this.d)+","+x(this.e)+","+x(this.f)+")"}},parent:i.Element,construct:{ctm:function(){return new i.Matrix(this.node.getCTM())},screenCTM:function(){if(this instanceof i.Nested){var t=this.rect(1,1),e=t.node.getScreenCTM();return t.remove(),new i.Matrix(e)}return new i.Matrix(this.node.getScreenCTM())}}}),i.Point=i.invent({create:function(t,e){var i;i=Array.isArray(t)?{x:t[0],y:t[1]}:"object"===r(t)?{x:t.x,y:t.y}:null!=t?{x:t,y:null!=e?e:t}:{x:0,y:0},this.x=i.x,this.y=i.y},extend:{clone:function(){return new i.Point(this)},morph:function(t,e){return this.destination=new i.Point(t,e),this}}}),i.extend(i.Element,{point:function(t,e){return new i.Point(t,e).transform(this.screenCTM().inverse())}}),i.extend(i.Element,{attr:function(t,e,a){if(null==t){for(t={},a=(e=this.node.attributes).length-1;a>=0;a--)t[e[a].nodeName]=i.regex.isNumber.test(e[a].nodeValue)?parseFloat(e[a].nodeValue):e[a].nodeValue;return t}if("object"===r(t))for(var n in t)this.attr(n,t[n]);else if(null===e)this.node.removeAttribute(t);else{if(null==e)return null==(e=this.node.getAttribute(t))?i.defaults.attrs[t]:i.regex.isNumber.test(e)?parseFloat(e):e;"stroke-width"==t?this.attr("stroke",parseFloat(e)>0?this._stroke:null):"stroke"==t&&(this._stroke=e),"fill"!=t&&"stroke"!=t||(i.regex.isImage.test(e)&&(e=this.doc().defs().image(e,0,0)),e instanceof i.Image&&(e=this.doc().defs().pattern(0,0,(function(){this.add(e)})))),"number"==typeof e?e=new i.Number(e):i.Color.isColor(e)?e=new i.Color(e):Array.isArray(e)&&(e=new i.Array(e)),"leading"==t?this.leading&&this.leading(e):"string"==typeof a?this.node.setAttributeNS(a,t,e.toString()):this.node.setAttribute(t,e.toString()),!this.rebuild||"font-size"!=t&&"x"!=t||this.rebuild(t,e)}return this}}),i.extend(i.Element,{transform:function(t,e){var a;return"object"!==r(t)?(a=new i.Matrix(this).extract(),"string"==typeof t?a[t]:a):(a=new i.Matrix(this),e=!!e||!!t.relative,null!=t.a&&(a=e?a.multiply(new i.Matrix(t)):new i.Matrix(t)),this.attr("transform",a))}}),i.extend(i.Element,{untransform:function(){return this.attr("transform",null)},matrixify:function(){return(this.attr("transform")||"").split(i.regex.transforms).slice(0,-1).map((function(t){var e=t.trim().split("(");return[e[0],e[1].split(i.regex.delimiter).map((function(t){return parseFloat(t)}))]})).reduce((function(t,e){return"matrix"==e[0]?t.multiply(g(e[1])):t[e[0]].apply(t,e[1])}),new i.Matrix)},toParent:function(t){if(this==t)return this;var e=this.screenCTM(),i=t.screenCTM().inverse();return this.addTo(t).untransform().transform(i.multiply(e)),this},toDoc:function(){return this.toParent(this.doc())}}),i.Transformation=i.invent({create:function(t,e){if(arguments.length>1&&"boolean"!=typeof e)return this.constructor.call(this,[].slice.call(arguments));if(Array.isArray(t))for(var i=0,a=this.arguments.length;i=0},index:function(t){return[].slice.call(this.node.childNodes).indexOf(t.node)},get:function(t){return i.adopt(this.node.childNodes[t])},first:function(){return this.get(0)},last:function(){return this.get(this.node.childNodes.length-1)},each:function(t,e){for(var a=this.children(),n=0,s=a.length;n=0;a--)e.childNodes[a]instanceof t.SVGElement&&v(e.childNodes[a]);return i.adopt(e).id(i.eid(e.nodeName))}function m(t){return null==t.x&&(t.x=0,t.y=0,t.width=0,t.height=0),t.w=t.width,t.h=t.height,t.x2=t.x+t.width,t.y2=t.y+t.height,t.cx=t.x+t.width/2,t.cy=t.y+t.height/2,t}function x(t){return Math.abs(t)>1e-37?t:0}["fill","stroke"].forEach((function(t){var e={};e[t]=function(e){if(void 0===e)return this;if("string"==typeof e||i.Color.isRgb(e)||e&&"function"==typeof e.fill)this.attr(t,e);else for(var a=l[t].length-1;a>=0;a--)null!=e[l[t][a]]&&this.attr(l.prefix(t,l[t][a]),e[l[t][a]]);return this},i.extend(i.Element,i.FX,e)})),i.extend(i.Element,i.FX,{translate:function(t,e){return this.transform({x:t,y:e})},matrix:function(t){return this.attr("transform",new i.Matrix(6==arguments.length?[].slice.call(arguments):t))},opacity:function(t){return this.attr("opacity",t)},dx:function(t){return this.x(new i.Number(t).plus(this instanceof i.FX?0:this.x()),!0)},dy:function(t){return this.y(new i.Number(t).plus(this instanceof i.FX?0:this.y()),!0)}}),i.extend(i.Path,{length:function(){return this.node.getTotalLength()},pointAt:function(t){return this.node.getPointAtLength(t)}}),i.Set=i.invent({create:function(t){Array.isArray(t)?this.members=t:this.clear()},extend:{add:function(){for(var t=[].slice.call(arguments),e=0,i=t.length;e-1&&this.members.splice(e,1),this},each:function(t){for(var e=0,i=this.members.length;e=0},index:function(t){return this.members.indexOf(t)},get:function(t){return this.members[t]},first:function(){return this.get(0)},last:function(){return this.get(this.members.length-1)},valueOf:function(){return this.members}},construct:{set:function(t){return new i.Set(t)}}}),i.FX.Set=i.invent({create:function(t){this.set=t}}),i.Set.inherit=function(){var t=[];for(var e in i.Shape.prototype)"function"==typeof i.Shape.prototype[e]&&"function"!=typeof i.Set.prototype[e]&&t.push(e);for(var e in t.forEach((function(t){i.Set.prototype[t]=function(){for(var e=0,a=this.members.length;e=0;t--)delete this.memory()[arguments[t]];return this},memory:function(){return this._memory||(this._memory={})}}),i.get=function(t){var a=e.getElementById(function(t){var e=(t||"").toString().match(i.regex.reference);if(e)return e[1]}(t)||t);return i.adopt(a)},i.select=function(t,a){return new i.Set(i.utils.map((a||e).querySelectorAll(t),(function(t){return i.adopt(t)})))},i.extend(i.Parent,{select:function(t){return i.select(t,this.node)}});var b="abcdef".split("");if("function"!=typeof t.CustomEvent){var y=function(t,i){i=i||{bubbles:!1,cancelable:!1,detail:void 0};var a=e.createEvent("CustomEvent");return a.initCustomEvent(t,i.bubbles,i.cancelable,i.detail),a};y.prototype=t.Event.prototype,i.CustomEvent=y}else i.CustomEvent=t.CustomEvent;return i},void 0!==(a=function(){return Nt(zt,zt.document)}.call(e,i,e,t))&&(t.exports=a),function(){SVG.Filter=SVG.invent({create:"filter",inherit:SVG.Parent,extend:{source:"SourceGraphic",sourceAlpha:"SourceAlpha",background:"BackgroundImage",backgroundAlpha:"BackgroundAlpha",fill:"FillPaint",stroke:"StrokePaint",autoSetIn:!0,put:function(t,e){return this.add(t,e),!t.attr("in")&&this.autoSetIn&&t.attr("in",this.source),t.attr("result")||t.attr("result",t),t},blend:function(t,e,i){return this.put(new SVG.BlendEffect(t,e,i))},colorMatrix:function(t,e){return this.put(new SVG.ColorMatrixEffect(t,e))},convolveMatrix:function(t){return this.put(new SVG.ConvolveMatrixEffect(t))},componentTransfer:function(t){return this.put(new SVG.ComponentTransferEffect(t))},composite:function(t,e,i){return this.put(new SVG.CompositeEffect(t,e,i))},flood:function(t,e){return this.put(new SVG.FloodEffect(t,e))},offset:function(t,e){return this.put(new SVG.OffsetEffect(t,e))},image:function(t){return this.put(new SVG.ImageEffect(t))},merge:function(){var t=[void 0];for(var e in arguments)t.push(arguments[e]);return this.put(new(SVG.MergeEffect.bind.apply(SVG.MergeEffect,t)))},gaussianBlur:function(t,e){return this.put(new SVG.GaussianBlurEffect(t,e))},morphology:function(t,e){return this.put(new SVG.MorphologyEffect(t,e))},diffuseLighting:function(t,e,i){return this.put(new SVG.DiffuseLightingEffect(t,e,i))},displacementMap:function(t,e,i,a,n){return this.put(new SVG.DisplacementMapEffect(t,e,i,a,n))},specularLighting:function(t,e,i,a){return this.put(new SVG.SpecularLightingEffect(t,e,i,a))},tile:function(){return this.put(new SVG.TileEffect)},turbulence:function(t,e,i,a,n){return this.put(new SVG.TurbulenceEffect(t,e,i,a,n))},toString:function(){return"url(#"+this.attr("id")+")"}}}),SVG.extend(SVG.Defs,{filter:function(t){var e=this.put(new SVG.Filter);return"function"==typeof t&&t.call(e,e),e}}),SVG.extend(SVG.Container,{filter:function(t){return this.defs().filter(t)}}),SVG.extend(SVG.Element,SVG.G,SVG.Nested,{filter:function(t){return this.filterer=t instanceof SVG.Element?t:this.doc().filter(t),this.doc()&&this.filterer.doc()!==this.doc()&&this.doc().defs().add(this.filterer),this.attr("filter",this.filterer),this.filterer},unfilter:function(t){return this.filterer&&!0===t&&this.filterer.remove(),delete this.filterer,this.attr("filter",null)}}),SVG.Effect=SVG.invent({create:function(){this.constructor.call(this)},inherit:SVG.Element,extend:{in:function(t){return null==t?this.parent()&&this.parent().select('[result="'+this.attr("in")+'"]').get(0)||this.attr("in"):this.attr("in",t)},result:function(t){return null==t?this.attr("result"):this.attr("result",t)},toString:function(){return this.result()}}}),SVG.ParentEffect=SVG.invent({create:function(){this.constructor.call(this)},inherit:SVG.Parent,extend:{in:function(t){return null==t?this.parent()&&this.parent().select('[result="'+this.attr("in")+'"]').get(0)||this.attr("in"):this.attr("in",t)},result:function(t){return null==t?this.attr("result"):this.attr("result",t)},toString:function(){return this.result()}}});var t={blend:function(t,e){return this.parent()&&this.parent().blend(this,t,e)},colorMatrix:function(t,e){return this.parent()&&this.parent().colorMatrix(t,e).in(this)},convolveMatrix:function(t){return this.parent()&&this.parent().convolveMatrix(t).in(this)},componentTransfer:function(t){return this.parent()&&this.parent().componentTransfer(t).in(this)},composite:function(t,e){return this.parent()&&this.parent().composite(this,t,e)},flood:function(t,e){return this.parent()&&this.parent().flood(t,e)},offset:function(t,e){return this.parent()&&this.parent().offset(t,e).in(this)},image:function(t){return this.parent()&&this.parent().image(t)},merge:function(){return this.parent()&&this.parent().merge.apply(this.parent(),[this].concat(arguments))},gaussianBlur:function(t,e){return this.parent()&&this.parent().gaussianBlur(t,e).in(this)},morphology:function(t,e){return this.parent()&&this.parent().morphology(t,e).in(this)},diffuseLighting:function(t,e,i){return this.parent()&&this.parent().diffuseLighting(t,e,i).in(this)},displacementMap:function(t,e,i,a){return this.parent()&&this.parent().displacementMap(this,t,e,i,a)},specularLighting:function(t,e,i,a){return this.parent()&&this.parent().specularLighting(t,e,i,a).in(this)},tile:function(){return this.parent()&&this.parent().tile().in(this)},turbulence:function(t,e,i,a,n){return this.parent()&&this.parent().turbulence(t,e,i,a,n).in(this)}};SVG.extend(SVG.Effect,t),SVG.extend(SVG.ParentEffect,t),SVG.ChildEffect=SVG.invent({create:function(){this.constructor.call(this)},inherit:SVG.Element,extend:{in:function(t){this.attr("in",t)}}});var e={blend:function(t,e,i){this.attr({in:t,in2:e,mode:i||"normal"})},colorMatrix:function(t,e){"matrix"==t&&(e=n(e)),this.attr({type:t,values:void 0===e?null:e})},convolveMatrix:function(t){t=n(t),this.attr({order:Math.sqrt(t.split(" ").length),kernelMatrix:t})},composite:function(t,e,i){this.attr({in:t,in2:e,operator:i})},flood:function(t,e){this.attr("flood-color",t),null!=e&&this.attr("flood-opacity",e)},offset:function(t,e){this.attr({dx:t,dy:e})},image:function(t){this.attr("href",t,SVG.xlink)},displacementMap:function(t,e,i,a,n){this.attr({in:t,in2:e,scale:i,xChannelSelector:a,yChannelSelector:n})},gaussianBlur:function(t,e){null!=t||null!=e?this.attr("stdDeviation",s(Array.prototype.slice.call(arguments))):this.attr("stdDeviation","0 0")},morphology:function(t,e){this.attr({operator:t,radius:e})},tile:function(){},turbulence:function(t,e,i,a,n){this.attr({numOctaves:e,seed:i,stitchTiles:a,baseFrequency:t,type:n})}},i={merge:function(){var t;if(arguments[0]instanceof SVG.Set){var e=this;arguments[0].each((function(t){this instanceof SVG.MergeNode?e.put(this):(this instanceof SVG.Effect||this instanceof SVG.ParentEffect)&&e.put(new SVG.MergeNode(this))}))}else{t=Array.isArray(arguments[0])?arguments[0]:arguments;for(var i=0;i1&&(T*=a=Math.sqrt(a),O*=a),n=(new SVG.Matrix).rotate(M).scale(1/T,1/O).rotate(-M),z=z.transform(n),o=(s=[(N=N.transform(n)).x-z.x,N.y-z.y])[0]*s[0]+s[1]*s[1],r=Math.sqrt(o),s[0]/=r,s[1]/=r,l=o<4?Math.sqrt(1-o/4):0,L===I&&(l*=-1),c=new SVG.Point((N.x+z.x)/2+l*-s[1],(N.y+z.y)/2+l*s[0]),d=new SVG.Point(z.x-c.x,z.y-c.y),h=new SVG.Point(N.x-c.x,N.y-c.y),u=Math.acos(d.x/Math.sqrt(d.x*d.x+d.y*d.y)),d.y<0&&(u*=-1),p=Math.acos(h.x/Math.sqrt(h.x*h.x+h.y*h.y)),h.y<0&&(p*=-1),I&&u>p&&(p+=2*Math.PI),!I&&us.maxX-e.width&&(r=(a=s.maxX-e.width)-this.startPoints.box.x),null!=s.minY&&ns.maxY-e.height&&(o=(n=s.maxY-e.height)-this.startPoints.box.y),null!=s.snapToGrid&&(a-=a%s.snapToGrid,n-=n%s.snapToGrid,r-=r%s.snapToGrid,o-=o%s.snapToGrid),this.el instanceof SVG.G?this.el.matrix(this.startPoints.transform).transform({x:r,y:o},!0):this.el.move(a,n));return i},t.prototype.end=function(t){var e=this.drag(t);this.el.fire("dragend",{event:t,p:e,m:this.m,handler:this}),SVG.off(window,"mousemove.drag"),SVG.off(window,"touchmove.drag"),SVG.off(window,"mouseup.drag"),SVG.off(window,"touchend.drag")},SVG.extend(SVG.Element,{draggable:function(e,i){"function"!=typeof e&&"object"!=typeof e||(i=e,e=!0);var a=this.remember("_draggable")||new t(this);return(e=void 0===e||e)?a.init(i||{},e):(this.off("mousedown.drag"),this.off("touchstart.drag")),this}})}.call(void 0),function(){function t(t){this.el=t,t.remember("_selectHandler",this),this.pointSelection={isSelected:!1},this.rectSelection={isSelected:!1},this.pointsList={lt:[0,0],rt:["width",0],rb:["width","height"],lb:[0,"height"],t:["width",0],r:["width","height"],b:["width","height"],l:[0,"height"]},this.pointCoord=function(t,e,i){var a="string"!=typeof t?t:e[t];return i?a/2:a},this.pointCoords=function(t,e){var i=this.pointsList[t];return{x:this.pointCoord(i[0],e,"t"===t||"b"===t),y:this.pointCoord(i[1],e,"r"===t||"l"===t)}}}t.prototype.init=function(t,e){var i=this.el.bbox();this.options={};var a=this.el.selectize.defaults.points;for(var n in this.el.selectize.defaults)this.options[n]=this.el.selectize.defaults[n],void 0!==e[n]&&(this.options[n]=e[n]);var s=["points","pointsExclude"];for(var n in s){var r=this.options[s[n]];"string"==typeof r?r=r.length>0?r.split(/\s*,\s*/i):[]:"boolean"==typeof r&&"points"===s[n]&&(r=r?a:[]),this.options[s[n]]=r}this.options.points=[a,this.options.points].reduce((function(t,e){return t.filter((function(t){return e.indexOf(t)>-1}))})),this.options.points=[this.options.points,this.options.pointsExclude].reduce((function(t,e){return t.filter((function(t){return e.indexOf(t)<0}))})),this.parent=this.el.parent(),this.nested=this.nested||this.parent.group(),this.nested.matrix(new SVG.Matrix(this.el).translate(i.x,i.y)),this.options.deepSelect&&-1!==["line","polyline","polygon"].indexOf(this.el.type)?this.selectPoints(t):this.selectRect(t),this.observe(),this.cleanup()},t.prototype.selectPoints=function(t){return this.pointSelection.isSelected=t,this.pointSelection.set||(this.pointSelection.set=this.parent.set(),this.drawPoints()),this},t.prototype.getPointArray=function(){var t=this.el.bbox();return this.el.array().valueOf().map((function(e){return[e[0]-t.x,e[1]-t.y]}))},t.prototype.drawPoints=function(){for(var t=this,e=this.getPointArray(),i=0,a=e.length;i0&&this.parameters.box.height-i[1]>0){if("text"===this.parameters.type)return this.el.move(this.parameters.box.x+i[0],this.parameters.box.y),void this.el.attr("font-size",this.parameters.fontSize-i[0]);i=this.checkAspectRatio(i),this.el.move(this.parameters.box.x+i[0],this.parameters.box.y+i[1]).size(this.parameters.box.width-i[0],this.parameters.box.height-i[1])}};break;case"rt":this.calc=function(t,e){var i=this.snapToGrid(t,e,2);if(this.parameters.box.width+i[0]>0&&this.parameters.box.height-i[1]>0){if("text"===this.parameters.type)return this.el.move(this.parameters.box.x-i[0],this.parameters.box.y),void this.el.attr("font-size",this.parameters.fontSize+i[0]);i=this.checkAspectRatio(i,!0),this.el.move(this.parameters.box.x,this.parameters.box.y+i[1]).size(this.parameters.box.width+i[0],this.parameters.box.height-i[1])}};break;case"rb":this.calc=function(t,e){var i=this.snapToGrid(t,e,0);if(this.parameters.box.width+i[0]>0&&this.parameters.box.height+i[1]>0){if("text"===this.parameters.type)return this.el.move(this.parameters.box.x-i[0],this.parameters.box.y),void this.el.attr("font-size",this.parameters.fontSize+i[0]);i=this.checkAspectRatio(i),this.el.move(this.parameters.box.x,this.parameters.box.y).size(this.parameters.box.width+i[0],this.parameters.box.height+i[1])}};break;case"lb":this.calc=function(t,e){var i=this.snapToGrid(t,e,1);if(this.parameters.box.width-i[0]>0&&this.parameters.box.height+i[1]>0){if("text"===this.parameters.type)return this.el.move(this.parameters.box.x+i[0],this.parameters.box.y),void this.el.attr("font-size",this.parameters.fontSize-i[0]);i=this.checkAspectRatio(i,!0),this.el.move(this.parameters.box.x+i[0],this.parameters.box.y).size(this.parameters.box.width-i[0],this.parameters.box.height+i[1])}};break;case"t":this.calc=function(t,e){var i=this.snapToGrid(t,e,2);if(this.parameters.box.height-i[1]>0){if("text"===this.parameters.type)return;this.el.move(this.parameters.box.x,this.parameters.box.y+i[1]).height(this.parameters.box.height-i[1])}};break;case"r":this.calc=function(t,e){var i=this.snapToGrid(t,e,0);if(this.parameters.box.width+i[0]>0){if("text"===this.parameters.type)return;this.el.move(this.parameters.box.x,this.parameters.box.y).width(this.parameters.box.width+i[0])}};break;case"b":this.calc=function(t,e){var i=this.snapToGrid(t,e,0);if(this.parameters.box.height+i[1]>0){if("text"===this.parameters.type)return;this.el.move(this.parameters.box.x,this.parameters.box.y).height(this.parameters.box.height+i[1])}};break;case"l":this.calc=function(t,e){var i=this.snapToGrid(t,e,1);if(this.parameters.box.width-i[0]>0){if("text"===this.parameters.type)return;this.el.move(this.parameters.box.x+i[0],this.parameters.box.y).width(this.parameters.box.width-i[0])}};break;case"rot":this.calc=function(t,e){var i=t+this.parameters.p.x,a=e+this.parameters.p.y,n=Math.atan2(this.parameters.p.y-this.parameters.box.y-this.parameters.box.height/2,this.parameters.p.x-this.parameters.box.x-this.parameters.box.width/2),s=Math.atan2(a-this.parameters.box.y-this.parameters.box.height/2,i-this.parameters.box.x-this.parameters.box.width/2),r=this.parameters.rotation+180*(s-n)/Math.PI+this.options.snapToAngle/2;this.el.center(this.parameters.box.cx,this.parameters.box.cy).rotate(r-r%this.options.snapToAngle,this.parameters.box.cx,this.parameters.box.cy)};break;case"point":this.calc=function(t,e){var i=this.snapToGrid(t,e,this.parameters.pointCoords[0],this.parameters.pointCoords[1]),a=this.el.array().valueOf();a[this.parameters.i][0]=this.parameters.pointCoords[0]+i[0],a[this.parameters.i][1]=this.parameters.pointCoords[1]+i[1],this.el.plot(a)}}this.el.fire("resizestart",{dx:this.parameters.x,dy:this.parameters.y,event:t}),SVG.on(window,"touchmove.resize",(function(t){e.update(t||window.event)})),SVG.on(window,"touchend.resize",(function(){e.done()})),SVG.on(window,"mousemove.resize",(function(t){e.update(t||window.event)})),SVG.on(window,"mouseup.resize",(function(){e.done()}))},t.prototype.update=function(t){if(t){var e=this._extractPosition(t),i=this.transformPoint(e.x,e.y),a=i.x-this.parameters.p.x,n=i.y-this.parameters.p.y;this.lastUpdateCall=[a,n],this.calc(a,n),this.el.fire("resizing",{dx:a,dy:n,event:t})}else this.lastUpdateCall&&this.calc(this.lastUpdateCall[0],this.lastUpdateCall[1])},t.prototype.done=function(){this.lastUpdateCall=null,SVG.off(window,"mousemove.resize"),SVG.off(window,"mouseup.resize"),SVG.off(window,"touchmove.resize"),SVG.off(window,"touchend.resize"),this.el.fire("resizedone")},t.prototype.snapToGrid=function(t,e,i,a){var n;return void 0!==a?n=[(i+t)%this.options.snapToGrid,(a+e)%this.options.snapToGrid]:(i=null==i?3:i,n=[(this.parameters.box.x+t+(1&i?0:this.parameters.box.width))%this.options.snapToGrid,(this.parameters.box.y+e+(2&i?0:this.parameters.box.height))%this.options.snapToGrid]),t<0&&(n[0]-=this.options.snapToGrid),e<0&&(n[1]-=this.options.snapToGrid),t-=Math.abs(n[0])r.maxX&&(t=r.maxX-n),void 0!==r.minY&&s+er.maxY&&(e=r.maxY-s),[t,e]},t.prototype.checkAspectRatio=function(t,e){if(!this.options.saveAspectRatio)return t;var i=t.slice(),a=this.parameters.box.width/this.parameters.box.height,n=this.parameters.box.width+t[0],s=this.parameters.box.height-t[1],r=n/s;return ra&&(i[0]=this.parameters.box.width-s*a,e&&(i[0]=-i[0])),i},SVG.extend(SVG.Element,{resize:function(e){return(this.remember("_resizeHandler")||new t(this)).init(e||{}),this}}),SVG.Element.prototype.resize.defaults={snapToAngle:.1,snapToGrid:1,constraint:{},saveAspectRatio:!1}}).call(this)}(),void 0===window.Apex&&(window.Apex={});var Rt=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"initModules",value:function(){this.ctx.publicMethods=["updateOptions","updateSeries","appendData","appendSeries","toggleSeries","showSeries","hideSeries","setLocale","resetSeries","zoomX","toggleDataPointSelection","dataURI","exportToCSV","addXaxisAnnotation","addYaxisAnnotation","addPointAnnotation","clearAnnotations","removeAnnotation","paper","destroy"],this.ctx.eventList=["click","mousedown","mousemove","mouseleave","touchstart","touchmove","touchleave","mouseup","touchend"],this.ctx.animations=new y(this.ctx),this.ctx.axes=new tt(this.ctx),this.ctx.core=new Ht(this.ctx.el,this.ctx),this.ctx.config=new z({}),this.ctx.data=new Y(this.ctx),this.ctx.grid=new U(this.ctx),this.ctx.graphics=new C(this.ctx),this.ctx.coreUtils=new S(this.ctx),this.ctx.crosshairs=new et(this.ctx),this.ctx.events=new K(this.ctx),this.ctx.exports=new V(this.ctx),this.ctx.localization=new J(this.ctx),this.ctx.options=new O,this.ctx.responsive=new it(this.ctx),this.ctx.series=new F(this.ctx),this.ctx.theme=new at(this.ctx),this.ctx.formatters=new B(this.ctx),this.ctx.titleSubtitle=new nt(this.ctx),this.ctx.legend=new ht(this.ctx),this.ctx.toolbar=new ut(this.ctx),this.ctx.tooltip=new yt(this.ctx),this.ctx.dimensions=new ct(this.ctx),this.ctx.updateHelpers=new Xt(this.ctx),this.ctx.zoomPanSelection=new pt(this.ctx),this.ctx.w.globals.tooltip=new yt(this.ctx)}}]),t}(),Ft=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"clear",value:function(t){var e=t.isUpdating;this.ctx.zoomPanSelection&&this.ctx.zoomPanSelection.destroy(),this.ctx.toolbar&&this.ctx.toolbar.destroy(),this.ctx.animations=null,this.ctx.axes=null,this.ctx.annotations=null,this.ctx.core=null,this.ctx.data=null,this.ctx.grid=null,this.ctx.series=null,this.ctx.responsive=null,this.ctx.theme=null,this.ctx.formatters=null,this.ctx.titleSubtitle=null,this.ctx.legend=null,this.ctx.dimensions=null,this.ctx.options=null,this.ctx.crosshairs=null,this.ctx.zoomPanSelection=null,this.ctx.updateHelpers=null,this.ctx.toolbar=null,this.ctx.localization=null,this.ctx.w.globals.tooltip=null,this.clearDomElements({isUpdating:e})}},{key:"killSVG",value:function(t){t.each((function(t,e){this.removeClass("*"),this.off(),this.stop()}),!0),t.ungroup(),t.clear()}},{key:"clearDomElements",value:function(t){var e=this,i=t.isUpdating,a=this.w.globals.dom.Paper.node;a.parentNode&&a.parentNode.parentNode&&!i&&(a.parentNode.parentNode.style.minHeight="unset");var n=this.w.globals.dom.baseEl;n&&this.ctx.eventList.forEach((function(t){n.removeEventListener(t,e.ctx.events.documentEvent)}));var s=this.w.globals.dom;if(null!==this.ctx.el)for(;this.ctx.el.firstChild;)this.ctx.el.removeChild(this.ctx.el.firstChild);this.killSVG(s.Paper),s.Paper.remove(),s.elWrap=null,s.elGraphical=null,s.elAnnotations=null,s.elLegendWrap=null,s.baseEl=null,s.elGridRect=null,s.elGridRectMask=null,s.elGridRectMarkerMask=null,s.elForecastMask=null,s.elNonForecastMask=null,s.elDefs=null}}]),t}(),Yt=new WeakMap,Bt=function(){function t(e,i){o(this,t),this.opts=i,this.ctx=this,this.w=new $(i).init(),this.el=e,this.w.globals.cuid=b.randomId(),this.w.globals.chartID=this.w.config.chart.id?b.escapeString(this.w.config.chart.id):this.w.globals.cuid,new Rt(this).initModules(),this.create=b.bind(this.create,this),this.windowResizeHandler=this._windowResizeHandler.bind(this),this.parentResizeHandler=this._parentResizeCallback.bind(this)}return c(t,[{key:"render",value:function(){var t=this;return new Promise((function(e,i){if(null!==t.el){void 0===Apex._chartInstances&&(Apex._chartInstances=[]),t.w.config.chart.id&&Apex._chartInstances.push({id:t.w.globals.chartID,group:t.w.config.chart.group,chart:t}),t.setLocale(t.w.config.chart.defaultLocale);var a=t.w.config.chart.events.beforeMount;if("function"==typeof a&&a(t,t.w),t.events.fireEvent("beforeMount",[t,t.w]),window.addEventListener("resize",t.windowResizeHandler),function(t,e){var i=!1;if(t.nodeType!==Node.DOCUMENT_FRAGMENT_NODE){var a=t.getBoundingClientRect();"none"!==t.style.display&&0!==a.width||(i=!0)}var n=new ResizeObserver((function(a){i&&e.call(t,a),i=!0}));t.nodeType===Node.DOCUMENT_FRAGMENT_NODE?Array.from(t.children).forEach((function(t){return n.observe(t)})):n.observe(t),Yt.set(e,n)}(t.el.parentNode,t.parentResizeHandler),!t.css){var n=t.el.getRootNode&&t.el.getRootNode(),s=b.is("ShadowRoot",n),r=t.el.ownerDocument,o=r.getElementById("apexcharts-css");!s&&o||(t.css=document.createElement("style"),t.css.id="apexcharts-css",t.css.textContent='@keyframes opaque {\n 0% {\n opacity: 0\n }\n\n to {\n opacity: 1\n }\n}\n\n@keyframes resizeanim {\n 0%,to {\n opacity: 0\n }\n}\n\n.apexcharts-canvas {\n position: relative;\n user-select: none\n}\n\n.apexcharts-canvas ::-webkit-scrollbar {\n -webkit-appearance: none;\n width: 6px\n}\n\n.apexcharts-canvas ::-webkit-scrollbar-thumb {\n border-radius: 4px;\n background-color: rgba(0,0,0,.5);\n box-shadow: 0 0 1px rgba(255,255,255,.5);\n -webkit-box-shadow: 0 0 1px rgba(255,255,255,.5)\n}\n\n.apexcharts-inner {\n position: relative\n}\n\n.apexcharts-text tspan {\n font-family: inherit\n}\n\n.legend-mouseover-inactive {\n transition: .15s ease all;\n opacity: .2\n}\n\n.apexcharts-legend-text {\n padding-left: 15px;\n margin-left: -15px;\n}\n\n.apexcharts-series-collapsed {\n opacity: 0\n}\n\n.apexcharts-tooltip {\n border-radius: 5px;\n box-shadow: 2px 2px 6px -4px #999;\n cursor: default;\n font-size: 14px;\n left: 62px;\n opacity: 0;\n pointer-events: none;\n position: absolute;\n top: 20px;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n white-space: nowrap;\n z-index: 12;\n transition: .15s ease all\n}\n\n.apexcharts-tooltip.apexcharts-active {\n opacity: 1;\n transition: .15s ease all\n}\n\n.apexcharts-tooltip.apexcharts-theme-light {\n border: 1px solid #e3e3e3;\n background: rgba(255,255,255,.96)\n}\n\n.apexcharts-tooltip.apexcharts-theme-dark {\n color: #fff;\n background: rgba(30,30,30,.8)\n}\n\n.apexcharts-tooltip * {\n font-family: inherit\n}\n\n.apexcharts-tooltip-title {\n padding: 6px;\n font-size: 15px;\n margin-bottom: 4px\n}\n\n.apexcharts-tooltip.apexcharts-theme-light .apexcharts-tooltip-title {\n background: #eceff1;\n border-bottom: 1px solid #ddd\n}\n\n.apexcharts-tooltip.apexcharts-theme-dark .apexcharts-tooltip-title {\n background: rgba(0,0,0,.7);\n border-bottom: 1px solid #333\n}\n\n.apexcharts-tooltip-text-goals-value,.apexcharts-tooltip-text-y-value,.apexcharts-tooltip-text-z-value {\n display: inline-block;\n margin-left: 5px;\n font-weight: 600\n}\n\n.apexcharts-tooltip-text-goals-label:empty,.apexcharts-tooltip-text-goals-value:empty,.apexcharts-tooltip-text-y-label:empty,.apexcharts-tooltip-text-y-value:empty,.apexcharts-tooltip-text-z-value:empty,.apexcharts-tooltip-title:empty {\n display: none\n}\n\n.apexcharts-tooltip-text-goals-label,.apexcharts-tooltip-text-goals-value {\n padding: 6px 0 5px\n}\n\n.apexcharts-tooltip-goals-group,.apexcharts-tooltip-text-goals-label,.apexcharts-tooltip-text-goals-value {\n display: flex\n}\n\n.apexcharts-tooltip-text-goals-label:not(:empty),.apexcharts-tooltip-text-goals-value:not(:empty) {\n margin-top: -6px\n}\n\n.apexcharts-tooltip-marker {\n width: 12px;\n height: 12px;\n position: relative;\n top: 0;\n margin-right: 10px;\n border-radius: 50%\n}\n\n.apexcharts-tooltip-series-group {\n padding: 0 10px;\n display: none;\n text-align: left;\n justify-content: left;\n align-items: center\n}\n\n.apexcharts-tooltip-series-group.apexcharts-active .apexcharts-tooltip-marker {\n opacity: 1\n}\n\n.apexcharts-tooltip-series-group.apexcharts-active,.apexcharts-tooltip-series-group:last-child {\n padding-bottom: 4px\n}\n\n.apexcharts-tooltip-series-group-hidden {\n opacity: 0;\n height: 0;\n line-height: 0;\n padding: 0!important\n}\n\n.apexcharts-tooltip-y-group {\n padding: 6px 0 5px\n}\n\n.apexcharts-custom-tooltip,.apexcharts-tooltip-box {\n padding: 4px 8px\n}\n\n.apexcharts-tooltip-boxPlot {\n display: flex;\n flex-direction: column-reverse\n}\n\n.apexcharts-tooltip-box>div {\n margin: 4px 0\n}\n\n.apexcharts-tooltip-box span.value {\n font-weight: 700\n}\n\n.apexcharts-tooltip-rangebar {\n padding: 5px 8px\n}\n\n.apexcharts-tooltip-rangebar .category {\n font-weight: 600;\n color: #777\n}\n\n.apexcharts-tooltip-rangebar .series-name {\n font-weight: 700;\n display: block;\n margin-bottom: 5px\n}\n\n.apexcharts-xaxistooltip,.apexcharts-yaxistooltip {\n opacity: 0;\n pointer-events: none;\n color: #373d3f;\n font-size: 13px;\n text-align: center;\n border-radius: 2px;\n position: absolute;\n z-index: 10;\n background: #eceff1;\n border: 1px solid #90a4ae\n}\n\n.apexcharts-xaxistooltip {\n padding: 9px 10px;\n transition: .15s ease all\n}\n\n.apexcharts-xaxistooltip.apexcharts-theme-dark {\n background: rgba(0,0,0,.7);\n border: 1px solid rgba(0,0,0,.5);\n color: #fff\n}\n\n.apexcharts-xaxistooltip:after,.apexcharts-xaxistooltip:before {\n left: 50%;\n border: solid transparent;\n content: " ";\n height: 0;\n width: 0;\n position: absolute;\n pointer-events: none\n}\n\n.apexcharts-xaxistooltip:after {\n border-color: transparent;\n border-width: 6px;\n margin-left: -6px\n}\n\n.apexcharts-xaxistooltip:before {\n border-color: transparent;\n border-width: 7px;\n margin-left: -7px\n}\n\n.apexcharts-xaxistooltip-bottom:after,.apexcharts-xaxistooltip-bottom:before {\n bottom: 100%\n}\n\n.apexcharts-xaxistooltip-top:after,.apexcharts-xaxistooltip-top:before {\n top: 100%\n}\n\n.apexcharts-xaxistooltip-bottom:after {\n border-bottom-color: #eceff1\n}\n\n.apexcharts-xaxistooltip-bottom:before {\n border-bottom-color: #90a4ae\n}\n\n.apexcharts-xaxistooltip-bottom.apexcharts-theme-dark:after,.apexcharts-xaxistooltip-bottom.apexcharts-theme-dark:before {\n border-bottom-color: rgba(0,0,0,.5)\n}\n\n.apexcharts-xaxistooltip-top:after {\n border-top-color: #eceff1\n}\n\n.apexcharts-xaxistooltip-top:before {\n border-top-color: #90a4ae\n}\n\n.apexcharts-xaxistooltip-top.apexcharts-theme-dark:after,.apexcharts-xaxistooltip-top.apexcharts-theme-dark:before {\n border-top-color: rgba(0,0,0,.5)\n}\n\n.apexcharts-xaxistooltip.apexcharts-active {\n opacity: 1;\n transition: .15s ease all\n}\n\n.apexcharts-yaxistooltip {\n padding: 4px 10px\n}\n\n.apexcharts-yaxistooltip.apexcharts-theme-dark {\n background: rgba(0,0,0,.7);\n border: 1px solid rgba(0,0,0,.5);\n color: #fff\n}\n\n.apexcharts-yaxistooltip:after,.apexcharts-yaxistooltip:before {\n top: 50%;\n border: solid transparent;\n content: " ";\n height: 0;\n width: 0;\n position: absolute;\n pointer-events: none\n}\n\n.apexcharts-yaxistooltip:after {\n border-color: transparent;\n border-width: 6px;\n margin-top: -6px\n}\n\n.apexcharts-yaxistooltip:before {\n border-color: transparent;\n border-width: 7px;\n margin-top: -7px\n}\n\n.apexcharts-yaxistooltip-left:after,.apexcharts-yaxistooltip-left:before {\n left: 100%\n}\n\n.apexcharts-yaxistooltip-right:after,.apexcharts-yaxistooltip-right:before {\n right: 100%\n}\n\n.apexcharts-yaxistooltip-left:after {\n border-left-color: #eceff1\n}\n\n.apexcharts-yaxistooltip-left:before {\n border-left-color: #90a4ae\n}\n\n.apexcharts-yaxistooltip-left.apexcharts-theme-dark:after,.apexcharts-yaxistooltip-left.apexcharts-theme-dark:before {\n border-left-color: rgba(0,0,0,.5)\n}\n\n.apexcharts-yaxistooltip-right:after {\n border-right-color: #eceff1\n}\n\n.apexcharts-yaxistooltip-right:before {\n border-right-color: #90a4ae\n}\n\n.apexcharts-yaxistooltip-right.apexcharts-theme-dark:after,.apexcharts-yaxistooltip-right.apexcharts-theme-dark:before {\n border-right-color: rgba(0,0,0,.5)\n}\n\n.apexcharts-yaxistooltip.apexcharts-active {\n opacity: 1\n}\n\n.apexcharts-yaxistooltip-hidden {\n display: none\n}\n\n.apexcharts-xcrosshairs,.apexcharts-ycrosshairs {\n pointer-events: none;\n opacity: 0;\n transition: .15s ease all\n}\n\n.apexcharts-xcrosshairs.apexcharts-active,.apexcharts-ycrosshairs.apexcharts-active {\n opacity: 1;\n transition: .15s ease all\n}\n\n.apexcharts-ycrosshairs-hidden {\n opacity: 0\n}\n\n.apexcharts-selection-rect {\n cursor: move\n}\n\n.svg_select_boundingRect,.svg_select_points_rot {\n pointer-events: none;\n opacity: 0;\n visibility: hidden\n}\n\n.apexcharts-selection-rect+g .svg_select_boundingRect,.apexcharts-selection-rect+g .svg_select_points_rot {\n opacity: 0;\n visibility: hidden\n}\n\n.apexcharts-selection-rect+g .svg_select_points_l,.apexcharts-selection-rect+g .svg_select_points_r {\n cursor: ew-resize;\n opacity: 1;\n visibility: visible\n}\n\n.svg_select_points {\n fill: #efefef;\n stroke: #333;\n rx: 2\n}\n\n.apexcharts-svg.apexcharts-zoomable.hovering-zoom {\n cursor: crosshair\n}\n\n.apexcharts-svg.apexcharts-zoomable.hovering-pan {\n cursor: move\n}\n\n.apexcharts-menu-icon,.apexcharts-pan-icon,.apexcharts-reset-icon,.apexcharts-selection-icon,.apexcharts-toolbar-custom-icon,.apexcharts-zoom-icon,.apexcharts-zoomin-icon,.apexcharts-zoomout-icon {\n cursor: pointer;\n width: 20px;\n height: 20px;\n line-height: 24px;\n color: #6e8192;\n text-align: center\n}\n\n.apexcharts-menu-icon svg,.apexcharts-reset-icon svg,.apexcharts-zoom-icon svg,.apexcharts-zoomin-icon svg,.apexcharts-zoomout-icon svg {\n fill: #6e8192\n}\n\n.apexcharts-selection-icon svg {\n fill: #444;\n transform: scale(.76)\n}\n\n.apexcharts-theme-dark .apexcharts-menu-icon svg,.apexcharts-theme-dark .apexcharts-pan-icon svg,.apexcharts-theme-dark .apexcharts-reset-icon svg,.apexcharts-theme-dark .apexcharts-selection-icon svg,.apexcharts-theme-dark .apexcharts-toolbar-custom-icon svg,.apexcharts-theme-dark .apexcharts-zoom-icon svg,.apexcharts-theme-dark .apexcharts-zoomin-icon svg,.apexcharts-theme-dark .apexcharts-zoomout-icon svg {\n fill: #f3f4f5\n}\n\n.apexcharts-canvas .apexcharts-reset-zoom-icon.apexcharts-selected svg,.apexcharts-canvas .apexcharts-selection-icon.apexcharts-selected svg,.apexcharts-canvas .apexcharts-zoom-icon.apexcharts-selected svg {\n fill: #008ffb\n}\n\n.apexcharts-theme-light .apexcharts-menu-icon:hover svg,.apexcharts-theme-light .apexcharts-reset-icon:hover svg,.apexcharts-theme-light .apexcharts-selection-icon:not(.apexcharts-selected):hover svg,.apexcharts-theme-light .apexcharts-zoom-icon:not(.apexcharts-selected):hover svg,.apexcharts-theme-light .apexcharts-zoomin-icon:hover svg,.apexcharts-theme-light .apexcharts-zoomout-icon:hover svg {\n fill: #333\n}\n\n.apexcharts-menu-icon,.apexcharts-selection-icon {\n position: relative\n}\n\n.apexcharts-reset-icon {\n margin-left: 5px\n}\n\n.apexcharts-menu-icon,.apexcharts-reset-icon,.apexcharts-zoom-icon {\n transform: scale(.85)\n}\n\n.apexcharts-zoomin-icon,.apexcharts-zoomout-icon {\n transform: scale(.7)\n}\n\n.apexcharts-zoomout-icon {\n margin-right: 3px\n}\n\n.apexcharts-pan-icon {\n transform: scale(.62);\n position: relative;\n left: 1px;\n top: 0\n}\n\n.apexcharts-pan-icon svg {\n fill: #fff;\n stroke: #6e8192;\n stroke-width: 2\n}\n\n.apexcharts-pan-icon.apexcharts-selected svg {\n stroke: #008ffb\n}\n\n.apexcharts-pan-icon:not(.apexcharts-selected):hover svg {\n stroke: #333\n}\n\n.apexcharts-toolbar {\n position: absolute;\n z-index: 11;\n max-width: 176px;\n text-align: right;\n border-radius: 3px;\n padding: 0 6px 2px;\n display: flex;\n justify-content: space-between;\n align-items: center\n}\n\n.apexcharts-menu {\n background: #fff;\n position: absolute;\n top: 100%;\n border: 1px solid #ddd;\n border-radius: 3px;\n padding: 3px;\n right: 10px;\n opacity: 0;\n min-width: 110px;\n transition: .15s ease all;\n pointer-events: none\n}\n\n.apexcharts-menu.apexcharts-menu-open {\n opacity: 1;\n pointer-events: all;\n transition: .15s ease all\n}\n\n.apexcharts-menu-item {\n padding: 6px 7px;\n font-size: 12px;\n cursor: pointer\n}\n\n.apexcharts-theme-light .apexcharts-menu-item:hover {\n background: #eee\n}\n\n.apexcharts-theme-dark .apexcharts-menu {\n background: rgba(0,0,0,.7);\n color: #fff\n}\n\n@media screen and (min-width:768px) {\n .apexcharts-canvas:hover .apexcharts-toolbar {\n opacity: 1\n }\n}\n\n.apexcharts-canvas .apexcharts-element-hidden,.apexcharts-datalabel.apexcharts-element-hidden,.apexcharts-hide .apexcharts-series-points {\n opacity: 0\n}\n\n.apexcharts-datalabel,.apexcharts-datalabel-label,.apexcharts-datalabel-value,.apexcharts-datalabels,.apexcharts-pie-label {\n cursor: default;\n pointer-events: none\n}\n\n.apexcharts-pie-label-delay {\n opacity: 0;\n animation-name: opaque;\n animation-duration: .3s;\n animation-fill-mode: forwards;\n animation-timing-function: ease\n}\n\n.apexcharts-annotation-rect,.apexcharts-area-series .apexcharts-area,.apexcharts-area-series .apexcharts-series-markers .apexcharts-marker.no-pointer-events,.apexcharts-gridline,.apexcharts-line,.apexcharts-line-series .apexcharts-series-markers .apexcharts-marker.no-pointer-events,.apexcharts-point-annotation-label,.apexcharts-radar-series path,.apexcharts-radar-series polygon,.apexcharts-toolbar svg,.apexcharts-tooltip .apexcharts-marker,.apexcharts-xaxis-annotation-label,.apexcharts-yaxis-annotation-label,.apexcharts-zoom-rect {\n pointer-events: none\n}\n\n.apexcharts-marker {\n transition: .15s ease all\n}\n\n.resize-triggers {\n animation: 1ms resizeanim;\n visibility: hidden;\n opacity: 0;\n height: 100%;\n width: 100%;\n overflow: hidden\n}\n\n.contract-trigger:before,.resize-triggers,.resize-triggers>div {\n content: " ";\n display: block;\n position: absolute;\n top: 0;\n left: 0\n}\n\n.resize-triggers>div {\n height: 100%;\n width: 100%;\n background: #eee;\n overflow: auto\n}\n\n.contract-trigger:before {\n overflow: hidden;\n width: 200%;\n height: 200%\n}\n',s?n.prepend(t.css):r.head.appendChild(t.css))}var l=t.create(t.w.config.series,{});if(!l)return e(t);t.mount(l).then((function(){"function"==typeof t.w.config.chart.events.mounted&&t.w.config.chart.events.mounted(t,t.w),t.events.fireEvent("mounted",[t,t.w]),e(l)})).catch((function(t){i(t)}))}else i(new Error("Element not found"))}))}},{key:"create",value:function(t,e){var i=this.w;new Rt(this).initModules();var a=this.w.globals;if(a.noData=!1,a.animationEnded=!1,this.responsive.checkResponsiveConfig(e),i.config.xaxis.convertedCatToNumeric&&new D(i.config).convertCatToNumericXaxis(i.config,this.ctx),null===this.el)return a.animationEnded=!0,null;if(this.core.setupElements(),"treemap"===i.config.chart.type&&(i.config.grid.show=!1,i.config.yaxis[0].show=!1),0===a.svgWidth)return a.animationEnded=!0,null;var n=S.checkComboSeries(t);a.comboCharts=n.comboCharts,a.comboBarCount=n.comboBarCount;var s=t.every((function(t){return t.data&&0===t.data.length}));(0===t.length||s)&&this.series.handleNoData(),this.events.setupEventHandlers(),this.data.parseData(t),this.theme.init(),new H(this).setGlobalMarkerSize(),this.formatters.setLabelFormatters(),this.titleSubtitle.draw(),a.noData&&a.collapsedSeries.length!==a.series.length&&!i.config.legend.showForSingleSeries||this.legend.init(),this.series.hasAllSeriesEqualX(),a.axisCharts&&(this.core.coreCalculations(),"category"!==i.config.xaxis.type&&this.formatters.setLabelFormatters(),this.ctx.toolbar.minX=i.globals.minX,this.ctx.toolbar.maxX=i.globals.maxX),this.formatters.heatmapLabelFormatters(),new S(this).getLargestMarkerSize(),this.dimensions.plotCoords();var r=this.core.xySettings();this.grid.createGridMask();var o=this.core.plotChartType(t,r),l=new R(this);l.bringForward(),i.config.dataLabels.background.enabled&&l.dataLabelsBackground(),this.core.shiftGraphPosition();var c={plot:{left:i.globals.translateX,top:i.globals.translateY,width:i.globals.gridWidth,height:i.globals.gridHeight}};return{elGraph:o,xyRatios:r,elInner:i.globals.dom.elGraphical,dimensions:c}}},{key:"mount",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,i=this,a=i.w;return new Promise((function(n,s){if(null===i.el)return s(new Error("Not enough data to display or target element not found"));(null===e||a.globals.allSeriesCollapsed)&&i.series.handleNoData(),i.grid=new U(i);var r=i.grid.drawGrid();"treemap"!==a.config.chart.type&&i.axes.drawAxis(a.config.chart.type,r),i.annotations=new M(i),i.annotations.drawImageAnnos(),i.annotations.drawTextAnnos(),"back"===a.config.grid.position&&r&&a.globals.dom.elGraphical.add(r.el);var o=new G(t.ctx,r),l=new Q(t.ctx,r);if(null!==r&&(o.xAxisLabelCorrections(r.xAxisTickWidth),l.setYAxisTextAlignments(),a.config.yaxis.map((function(t,e){-1===a.globals.ignoreYAxisIndexes.indexOf(e)&&l.yAxisTitleRotate(e,t.opposite)}))),"back"===a.config.annotations.position&&(a.globals.dom.Paper.add(a.globals.dom.elAnnotations),i.annotations.drawAxesAnnotations()),Array.isArray(e.elGraph))for(var c=0;c0&&a.globals.memory.methodsToExec.forEach((function(t){t.method(t.params,!1,t.context)})),a.globals.axisCharts||a.globals.noData||i.core.resizeNonAxisCharts(),n(i)}))}},{key:"destroy",value:function(){var t,e;window.removeEventListener("resize",this.windowResizeHandler),this.el.parentNode,t=this.parentResizeHandler,(e=Yt.get(t))&&(e.disconnect(),Yt.delete(t));var i=this.w.config.chart.id;i&&Apex._chartInstances.forEach((function(t,e){t.id===b.escapeString(i)&&Apex._chartInstances.splice(e,1)})),new Ft(this.ctx).clear({isUpdating:!1})}},{key:"updateOptions",value:function(t){var e=this,i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],a=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],n=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],r=this.w;return r.globals.selection=void 0,t.series&&(this.series.resetSeries(!1,!0,!1),t.series.length&&t.series[0].data&&(t.series=t.series.map((function(t,i){return e.updateHelpers._extendSeries(t,i)}))),this.updateHelpers.revertDefaultAxisMinMax()),t.xaxis&&(t=this.updateHelpers.forceXAxisUpdate(t)),t.yaxis&&(t=this.updateHelpers.forceYAxisUpdate(t)),r.globals.collapsedSeriesIndices.length>0&&this.series.clearPreviousPaths(),t.theme&&(t=this.theme.updateThemeOptions(t)),this.updateHelpers._updateOptions(t,i,a,n,s)}},{key:"updateSeries",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];return this.series.resetSeries(!1),this.updateHelpers.revertDefaultAxisMinMax(),this.updateHelpers._updateSeries(t,e,i)}},{key:"appendSeries",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=this.w.config.series.slice();return a.push(t),this.series.resetSeries(!1),this.updateHelpers.revertDefaultAxisMinMax(),this.updateHelpers._updateSeries(a,e,i)}},{key:"appendData",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=this;i.w.globals.dataChanged=!0,i.series.getPreviousPaths();for(var a=i.w.config.series.slice(),n=0;n0&&void 0!==arguments[0])||arguments[0],e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];this.series.resetSeries(t,e)}},{key:"addEventListener",value:function(t,e){this.events.addEventListener(t,e)}},{key:"removeEventListener",value:function(t,e){this.events.removeEventListener(t,e)}},{key:"addXaxisAnnotation",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,a=this;i&&(a=i),a.annotations.addXaxisAnnotationExternal(t,e,a)}},{key:"addYaxisAnnotation",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,a=this;i&&(a=i),a.annotations.addYaxisAnnotationExternal(t,e,a)}},{key:"addPointAnnotation",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,a=this;i&&(a=i),a.annotations.addPointAnnotationExternal(t,e,a)}},{key:"clearAnnotations",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0,e=this;t&&(e=t),e.annotations.clearAnnotations(e)}},{key:"removeAnnotation",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,i=this;e&&(i=e),i.annotations.removeAnnotation(i,t)}},{key:"getChartArea",value:function(){return this.w.globals.dom.baseEl.querySelector(".apexcharts-inner")}},{key:"getSeriesTotalXRange",value:function(t,e){return this.coreUtils.getSeriesTotalsXRange(t,e)}},{key:"getHighestValueInSeries",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return new Z(this.ctx).getMinYMaxY(t).highestY}},{key:"getLowestValueInSeries",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return new Z(this.ctx).getMinYMaxY(t).lowestY}},{key:"getSeriesTotal",value:function(){return this.w.globals.seriesTotals}},{key:"toggleDataPointSelection",value:function(t,e){return this.updateHelpers.toggleDataPointSelection(t,e)}},{key:"zoomX",value:function(t,e){this.ctx.toolbar.zoomUpdateOptions(t,e)}},{key:"setLocale",value:function(t){this.localization.setCurrentLocaleValues(t)}},{key:"dataURI",value:function(t){return new V(this.ctx).dataURI(t)}},{key:"exportToCSV",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new V(this.ctx).exportToCSV(t)}},{key:"paper",value:function(){return this.w.globals.dom.Paper}},{key:"_parentResizeCallback",value:function(){this.w.globals.animationEnded&&this.w.config.chart.redrawOnParentResize&&this._windowResize()}},{key:"_windowResize",value:function(){var t=this;clearTimeout(this.w.globals.resizeTimer),this.w.globals.resizeTimer=window.setTimeout((function(){t.w.globals.resized=!0,t.w.globals.dataChanged=!1,t.ctx.update()}),150)}},{key:"_windowResizeHandler",value:function(){var t=this.w.config.chart.redrawOnWindowResize;"function"==typeof t&&(t=t()),t&&this._windowResize()}}],[{key:"getChartByID",value:function(t){var e=b.escapeString(t),i=Apex._chartInstances.filter((function(t){return t.id===e}))[0];return i&&i.chart}},{key:"initOnLoad",value:function(){for(var e=document.querySelectorAll("[data-apexcharts]"),i=0;i2?n-2:0),r=2;r1?i[s-1]:void 0,o=s>2?i[2]:void 0;for(r=t.length>3&&"function"==typeof r?(s--,r):void 0,o&&n(i[0],i[1],o)&&(r=s<3?void 0:r,s=1),e=Object(e);++ad))return!1;var u=l.get(t),p=l.get(e);if(u&&p)return u==e&&p==t;var f=-1,g=!0,v=2&i?new a:void 0;for(l.set(t,e),l.set(e,t);++f-1&&t%1==0&&t-1}},2283:function(t,e,i){var a=i(3623);t.exports=function(t,e){var i=this.__data__,n=a(i,t);return n<0?(++this.size,i.push([t,e])):i[n][1]=e,this}},6071:function(t,e,i){var a=i(3619),n=i(3818),s=i(2327);t.exports=function(){this.size=0,this.__data__={hash:new a,map:new(s||n),string:new a}}},8751:function(t,e,i){var a=i(6009);t.exports=function(t){var e=a(this,t).delete(t);return this.size-=e?1:0,e}},5282:function(t,e,i){var a=i(6009);t.exports=function(t){return a(this,t).get(t)}},203:function(t,e,i){var a=i(6009);t.exports=function(t){return a(this,t).has(t)}},6455:function(t,e,i){var a=i(6009);t.exports=function(t,e){var i=a(this,t),n=i.size;return i.set(t,e),this.size+=i.size==n?0:1,this}},6563:function(t){t.exports=function(t){var e=-1,i=Array(t.size);return t.forEach((function(t,a){i[++e]=[a,t]})),i}},3161:function(t,e,i){var a=i(3885)(Object,"create");t.exports=a},4062:function(t,e,i){var a=i(1363)(Object.keys,Object);t.exports=a},6217:function(t){t.exports=function(t){var e=[];if(null!=t)for(var i in Object(t))e.push(i);return e}},5059:function(t,e,i){t=i.nmd(t);var a=i(4632),n=e&&!e.nodeType&&e,s=n&&t&&!t.nodeType&&t,r=s&&s.exports===n&&a.process,o=function(){try{return s&&s.require&&s.require("util").types||r&&r.binding&&r.binding("util")}catch(t){}}();t.exports=o},9165:function(t){var e=Object.prototype.toString;t.exports=function(t){return e.call(t)}},1363:function(t){t.exports=function(t,e){return function(i){return t(e(i))}}},2873:function(t,e,i){var a=i(8250),n=Math.max;t.exports=function(t,e,i){return e=n(void 0===e?t.length-1:e,0),function(){for(var s=arguments,r=-1,o=n(s.length-e,0),l=Array(o);++r0){if(++i>=800)return arguments[0]}else i=0;return t.apply(void 0,arguments)}}},5545:function(t,e,i){var a=i(3818);t.exports=function(){this.__data__=new a,this.size=0}},3506:function(t){t.exports=function(t){var e=this.__data__,i=e.delete(t);return this.size=e.size,i}},8911:function(t){t.exports=function(t){return this.__data__.get(t)}},8331:function(t){t.exports=function(t){return this.__data__.has(t)}},7347:function(t,e,i){var a=i(3818),n=i(2327),s=i(7157);t.exports=function(t,e){var i=this.__data__;if(i instanceof a){var r=i.__data__;if(!n||r.length<199)return r.push([t,e]),this.size=++i.size,this;i=this.__data__=new s(r)}return i.set(t,e),this.size=i.size,this}},371:function(t){var e=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return e.call(t)}catch(t){}try{return t+""}catch(t){}}return""}},2437:function(t){t.exports=function(t){return function(){return t}}},9439:function(t){t.exports=function(t,e){return t===e||t!=t&&e!=e}},8979:function(t){t.exports=function(t){return t}},5875:function(t,e,i){var a=i(706),n=i(3536),s=Object.prototype,r=s.hasOwnProperty,o=s.propertyIsEnumerable,l=a(function(){return arguments}())?a:function(t){return n(t)&&r.call(t,"callee")&&!o.call(t,"callee")};t.exports=l},9878:function(t){var e=Array.isArray;t.exports=e},641:function(t,e,i){var a=i(7949),n=i(252);t.exports=function(t){return null!=t&&n(t.length)&&!a(t)}},4792:function(t,e,i){var a=i(641),n=i(3536);t.exports=function(t){return n(t)&&a(t)}},8902:function(t,e,i){t=i.nmd(t);var a=i(6239),n=i(4589),s=e&&!e.nodeType&&e,r=s&&t&&!t.nodeType&&t,o=r&&r.exports===s?a.Buffer:void 0,l=(o?o.isBuffer:void 0)||n;t.exports=l},2387:function(t,e,i){var a=i(6495);t.exports=function(t,e){return a(t,e)}},7949:function(t,e,i){var a=i(946),n=i(886);t.exports=function(t){if(!n(t))return!1;var e=a(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}},252:function(t){t.exports=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}},886:function(t){t.exports=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},3536:function(t){t.exports=function(t){return null!=t&&"object"==typeof t}},2422:function(t,e,i){var a=i(946),n=i(5703),s=i(3536),r=Function.prototype,o=Object.prototype,l=r.toString,c=o.hasOwnProperty,d=l.call(Object);t.exports=function(t){if(!s(t)||"[object Object]"!=a(t))return!1;var e=n(t);if(null===e)return!0;var i=c.call(e,"constructor")&&e.constructor;return"function"==typeof i&&i instanceof i&&l.call(i)==d}},9251:function(t,e,i){var a=i(4881),n=i(2099),s=i(5059),r=s&&s.isTypedArray,o=r?n(r):a;t.exports=o},4236:function(t,e,i){var a=i(3142),n=i(794),s=i(641);t.exports=function(t){return s(t)?a(t):n(t)}},2250:function(t,e,i){var a=i(3142),n=i(7643),s=i(641);t.exports=function(t){return s(t)?a(t,!0):n(t)}},3079:function(t,e,i){var a=i(2324),n=i(2411)((function(t,e,i){a(t,e,i)}));t.exports=n},9353:function(t){t.exports=function(){return[]}},4589:function(t){t.exports=function(){return!1}},282:function(t,e,i){var a=i(1502),n=i(2250);t.exports=function(t){return a(t,n(t))}},111:function(){},2078:function(){},7094:function(){},3648:function(){},6567:function(){},797:function(){},3105:function(){},4848:function(){},4422:function(){},8944:function(){},2792:function(){},1842:function(){},656:function(){},2014:function(){},8701:function(){},9501:function(){},7374:function(){},2022:function(){},3918:function(t,e,i){"use strict";function a(t){return null!==t&&"object"==typeof t&&"constructor"in t&&t.constructor===Object}function n(t,e){void 0===t&&(t={}),void 0===e&&(e={}),Object.keys(e).forEach((function(i){void 0===t[i]?t[i]=e[i]:a(e[i])&&a(t[i])&&Object.keys(e[i]).length>0&&n(t[i],e[i])}))}i.r(e),i.d(e,{default:function(){return dt}});var s="undefined"!=typeof document?document:{},r={body:{},addEventListener:function(){},removeEventListener:function(){},activeElement:{blur:function(){},nodeName:""},querySelector:function(){return null},querySelectorAll:function(){return[]},getElementById:function(){return null},createEvent:function(){return{initEvent:function(){}}},createElement:function(){return{children:[],childNodes:[],style:{},setAttribute:function(){},getElementsByTagName:function(){return[]}}},createElementNS:function(){return{}},importNode:function(){return null},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""}};n(s,r);var o="undefined"!=typeof window?window:{};n(o,{document:r,navigator:{userAgent:""},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""},history:{replaceState:function(){},pushState:function(){},go:function(){},back:function(){}},CustomEvent:function(){return this},addEventListener:function(){},removeEventListener:function(){},getComputedStyle:function(){return{getPropertyValue:function(){return""}}},Image:function(){},Date:function(){},screen:{},setTimeout:function(){},clearTimeout:function(){},matchMedia:function(){return{}}});class l{constructor(t){const e=this;for(let i=0;i=0&&o.indexOf(">")>=0){let t="div";for(0===o.indexOf(":~]/)?(e||s).querySelectorAll(t.trim()):[s.getElementById(t.trim().split("#")[1])],a=0;a0&&t[0].nodeType)for(a=0;a=0;t-=1){const i=r[t];a&&i.listener===a||a&&i.listener&&i.listener.dom7proxy&&i.listener.dom7proxy===a?(s.removeEventListener(e,i.proxyListener,n),r.splice(t,1)):a||(s.removeEventListener(e,i.proxyListener,n),r.splice(t,1))}}}return this},trigger:function(...t){const e=t[0].split(" "),i=t[1];for(let a=0;ae>0)),a.dispatchEvent(r),a.dom7EventData=[],delete a.dom7EventData}}return this},transitionEnd:function(t){const e=["webkitTransitionEnd","transitionend"],i=this;let a;function n(s){if(s.target===this)for(t.call(this,s),a=0;a0){if(t){const t=this.styles();return this[0].offsetWidth+parseFloat(t.getPropertyValue("margin-right"))+parseFloat(t.getPropertyValue("margin-left"))}return this[0].offsetWidth}return null},outerHeight:function(t){if(this.length>0){if(t){const t=this.styles();return this[0].offsetHeight+parseFloat(t.getPropertyValue("margin-top"))+parseFloat(t.getPropertyValue("margin-bottom"))}return this[0].offsetHeight}return null},offset:function(){if(this.length>0){const t=this[0],e=t.getBoundingClientRect(),i=s.body,a=t.clientTop||i.clientTop||0,n=t.clientLeft||i.clientLeft||0,r=t===o?o.scrollY:t.scrollTop,l=t===o?o.scrollX:t.scrollLeft;return{top:e.top+r-a,left:e.left+l-n}}return null},css:function(t,e){let i;if(1===arguments.length){if("string"!=typeof t){for(i=0;ie-1?new l([]):t<0?(i=e+t,new l(i<0?[]:[this[i]])):new l([this[t]])},append:function(...t){let e;for(let i=0;i=0;i-=1)this[e].insertBefore(a.childNodes[i],this[e].childNodes[0])}else if(t instanceof l)for(i=0;i0?t?this[0].nextElementSibling&&c(this[0].nextElementSibling).is(t)?new l([this[0].nextElementSibling]):new l([]):this[0].nextElementSibling?new l([this[0].nextElementSibling]):new l([]):new l([])},nextAll:function(t){const e=[];let i=this[0];if(!i)return new l([]);for(;i.nextElementSibling;){const a=i.nextElementSibling;t?c(a).is(t)&&e.push(a):e.push(a),i=a}return new l(e)},prev:function(t){if(this.length>0){const e=this[0];return t?e.previousElementSibling&&c(e.previousElementSibling).is(t)?new l([e.previousElementSibling]):new l([]):e.previousElementSibling?new l([e.previousElementSibling]):new l([])}return new l([])},prevAll:function(t){const e=[];let i=this[0];if(!i)return new l([]);for(;i.previousElementSibling;){const a=i.previousElementSibling;t?c(a).is(t)&&e.push(a):e.push(a),i=a}return new l(e)},parent:function(t){const e=[];for(let i=0;i{c.fn[t]=c.fn[t]||h[t]}));const u={deleteProps(t){const e=t;Object.keys(e).forEach((t=>{try{e[t]=null}catch(t){}try{delete e[t]}catch(t){}}))},nextTick(t,e=0){return setTimeout(t,e)},now(){return Date.now()},getTranslate(t,e="x"){let i,a,n;const s=o.getComputedStyle(t,null);return o.WebKitCSSMatrix?(a=s.transform||s.webkitTransform,a.split(",").length>6&&(a=a.split(", ").map((t=>t.replace(",","."))).join(", ")),n=new o.WebKitCSSMatrix("none"===a?"":a)):(n=s.MozTransform||s.OTransform||s.MsTransform||s.msTransform||s.transform||s.getPropertyValue("transform").replace("translate(","matrix(1, 0, 0, 1,"),i=n.toString().split(",")),"x"===e&&(a=o.WebKitCSSMatrix?n.m41:16===i.length?parseFloat(i[12]):parseFloat(i[4])),"y"===e&&(a=o.WebKitCSSMatrix?n.m42:16===i.length?parseFloat(i[13]):parseFloat(i[5])),a||0},parseUrlQuery(t){const e={};let i,a,n,s,r=t||o.location.href;if("string"==typeof r&&r.length)for(r=r.indexOf("?")>-1?r.replace(/\S*\?/,""):"",a=r.split("&").filter((t=>""!==t)),s=a.length,i=0;i=0,observer:"MutationObserver"in o||"WebkitMutationObserver"in o,passiveListener:function(){let t=!1;try{const e=Object.defineProperty({},"passive",{get(){t=!0}});o.addEventListener("testPassiveListener",null,e)}catch(t){}return t}(),gestures:"ongesturestart"in o};class f{constructor(t={}){const e=this;e.params=t,e.eventsListeners={},e.params&&e.params.on&&Object.keys(e.params.on).forEach((t=>{e.on(t,e.params.on[t])}))}on(t,e,i){const a=this;if("function"!=typeof e)return a;const n=i?"unshift":"push";return t.split(" ").forEach((t=>{a.eventsListeners[t]||(a.eventsListeners[t]=[]),a.eventsListeners[t][n](e)})),a}once(t,e,i){const a=this;if("function"!=typeof e)return a;function n(...i){a.off(t,n),n.f7proxy&&delete n.f7proxy,e.apply(a,i)}return n.f7proxy=e,a.on(t,n,i)}off(t,e){const i=this;return i.eventsListeners?(t.split(" ").forEach((t=>{void 0===e?i.eventsListeners[t]=[]:i.eventsListeners[t]&&i.eventsListeners[t].length&&i.eventsListeners[t].forEach(((a,n)=>{(a===e||a.f7proxy&&a.f7proxy===e)&&i.eventsListeners[t].splice(n,1)}))})),i):i}emit(...t){const e=this;if(!e.eventsListeners)return e;let i,a,n;return"string"==typeof t[0]||Array.isArray(t[0])?(i=t[0],a=t.slice(1,t.length),n=e):(i=t[0].events,a=t[0].data,n=t[0].context||e),(Array.isArray(i)?i:i.split(" ")).forEach((t=>{if(e.eventsListeners&&e.eventsListeners[t]){const i=[];e.eventsListeners[t].forEach((t=>{i.push(t)})),i.forEach((t=>{t.apply(n,a)}))}})),e}useModulesParams(t){const e=this;e.modules&&Object.keys(e.modules).forEach((i=>{const a=e.modules[i];a.params&&u.extend(t,a.params)}))}useModules(t={}){const e=this;e.modules&&Object.keys(e.modules).forEach((i=>{const a=e.modules[i],n=t[i]||{};a.instance&&Object.keys(a.instance).forEach((t=>{const i=a.instance[t];e[t]="function"==typeof i?i.bind(e):i})),a.on&&e.on&&Object.keys(a.on).forEach((t=>{e.on(t,a.on[t])})),a.create&&a.create.bind(e)(n)}))}static set components(t){this.use&&this.use(t)}static installModule(t,...e){const i=this;i.prototype.modules||(i.prototype.modules={});const a=t.name||`${Object.keys(i.prototype.modules).length}_${u.now()}`;return i.prototype.modules[a]=t,t.proto&&Object.keys(t.proto).forEach((e=>{i.prototype[e]=t.proto[e]})),t.static&&Object.keys(t.static).forEach((e=>{i[e]=t.static[e]})),t.install&&t.install.apply(i,e),i}static use(t,...e){const i=this;return Array.isArray(t)?(t.forEach((t=>i.installModule(t))),i):i.installModule(t,...e)}}var g={updateSize:function(){const t=this;let e,i;const a=t.$el;e=void 0!==t.params.width?t.params.width:a[0].clientWidth,i=void 0!==t.params.height?t.params.height:a[0].clientHeight,0===e&&t.isHorizontal()||0===i&&t.isVertical()||(e=e-parseInt(a.css("padding-left"),10)-parseInt(a.css("padding-right"),10),i=i-parseInt(a.css("padding-top"),10)-parseInt(a.css("padding-bottom"),10),u.extend(t,{width:e,height:i,size:t.isHorizontal()?e:i}))},updateSlides:function(){const t=this,e=t.params,{$wrapperEl:i,size:a,rtlTranslate:n,wrongRTL:s}=t,r=t.virtual&&e.virtual.enabled,l=r?t.virtual.slides.length:t.slides.length,c=i.children(`.${t.params.slideClass}`),d=r?t.virtual.slides.length:c.length;let h=[];const p=[],f=[];function g(t){return!e.cssMode||t!==c.length-1}let v=e.slidesOffsetBefore;"function"==typeof v&&(v=e.slidesOffsetBefore.call(t));let m=e.slidesOffsetAfter;"function"==typeof m&&(m=e.slidesOffsetAfter.call(t));const x=t.snapGrid.length,b=t.snapGrid.length;let y,w,C=e.spaceBetween,S=-v,k=0,A=0;if(void 0===a)return;"string"==typeof C&&C.indexOf("%")>=0&&(C=parseFloat(C.replace("%",""))/100*a),t.virtualSize=-C,n?c.css({marginLeft:"",marginTop:""}):c.css({marginRight:"",marginBottom:""}),e.slidesPerColumn>1&&(y=Math.floor(d/e.slidesPerColumn)===d/t.params.slidesPerColumn?d:Math.ceil(d/e.slidesPerColumn)*e.slidesPerColumn,"auto"!==e.slidesPerView&&"row"===e.slidesPerColumnFill&&(y=Math.max(y,e.slidesPerView*e.slidesPerColumn)));const P=e.slidesPerColumn,E=y/P,T=Math.floor(d/e.slidesPerColumn);for(let i=0;i1){let a,s,r;if("row"===e.slidesPerColumnFill&&e.slidesPerGroup>1){const t=Math.floor(i/(e.slidesPerGroup*e.slidesPerColumn)),o=i-e.slidesPerColumn*e.slidesPerGroup*t,l=0===t?e.slidesPerGroup:Math.min(Math.ceil((d-t*P*e.slidesPerGroup)/P),e.slidesPerGroup);r=Math.floor(o/l),s=o-r*l+t*e.slidesPerGroup,a=s+r*y/P,n.css({"-webkit-box-ordinal-group":a,"-moz-box-ordinal-group":a,"-ms-flex-order":a,"-webkit-order":a,order:a})}else"column"===e.slidesPerColumnFill?(s=Math.floor(i/P),r=i-s*P,(s>T||s===T&&r===P-1)&&(r+=1,r>=P&&(r=0,s+=1))):(r=Math.floor(i/E),s=i-r*E);n.css("margin-"+(t.isHorizontal()?"top":"left"),0!==r&&e.spaceBetween&&`${e.spaceBetween}px`)}if("none"!==n.css("display")){if("auto"===e.slidesPerView){const i=o.getComputedStyle(n[0],null),a=n[0].style.transform,s=n[0].style.webkitTransform;if(a&&(n[0].style.transform="none"),s&&(n[0].style.webkitTransform="none"),e.roundLengths)w=t.isHorizontal()?n.outerWidth(!0):n.outerHeight(!0);else if(t.isHorizontal()){const t=parseFloat(i.getPropertyValue("width")),e=parseFloat(i.getPropertyValue("padding-left")),a=parseFloat(i.getPropertyValue("padding-right")),n=parseFloat(i.getPropertyValue("margin-left")),s=parseFloat(i.getPropertyValue("margin-right")),r=i.getPropertyValue("box-sizing");w=r&&"border-box"===r?t+n+s:t+e+a+n+s}else{const t=parseFloat(i.getPropertyValue("height")),e=parseFloat(i.getPropertyValue("padding-top")),a=parseFloat(i.getPropertyValue("padding-bottom")),n=parseFloat(i.getPropertyValue("margin-top")),s=parseFloat(i.getPropertyValue("margin-bottom")),r=i.getPropertyValue("box-sizing");w=r&&"border-box"===r?t+n+s:t+e+a+n+s}a&&(n[0].style.transform=a),s&&(n[0].style.webkitTransform=s),e.roundLengths&&(w=Math.floor(w))}else w=(a-(e.slidesPerView-1)*C)/e.slidesPerView,e.roundLengths&&(w=Math.floor(w)),c[i]&&(t.isHorizontal()?c[i].style.width=`${w}px`:c[i].style.height=`${w}px`);c[i]&&(c[i].swiperSlideSize=w),f.push(w),e.centeredSlides?(S=S+w/2+k/2+C,0===k&&0!==i&&(S=S-a/2-C),0===i&&(S=S-a/2-C),Math.abs(S)<.001&&(S=0),e.roundLengths&&(S=Math.floor(S)),A%e.slidesPerGroup==0&&h.push(S),p.push(S)):(e.roundLengths&&(S=Math.floor(S)),(A-Math.min(t.params.slidesPerGroupSkip,A))%t.params.slidesPerGroup==0&&h.push(S),p.push(S),S=S+w+C),t.virtualSize+=w+C,k=w,A+=1}}let O;if(t.virtualSize=Math.max(t.virtualSize,a)+m,n&&s&&("slide"===e.effect||"coverflow"===e.effect)&&i.css({width:`${t.virtualSize+e.spaceBetween}px`}),e.setWrapperSize&&(t.isHorizontal()?i.css({width:`${t.virtualSize+e.spaceBetween}px`}):i.css({height:`${t.virtualSize+e.spaceBetween}px`})),e.slidesPerColumn>1&&(t.virtualSize=(w+e.spaceBetween)*y,t.virtualSize=Math.ceil(t.virtualSize/e.slidesPerColumn)-e.spaceBetween,t.isHorizontal()?i.css({width:`${t.virtualSize+e.spaceBetween}px`}):i.css({height:`${t.virtualSize+e.spaceBetween}px`}),e.centeredSlides)){O=[];for(let i=0;i1&&h.push(t.virtualSize-a)}if(0===h.length&&(h=[0]),0!==e.spaceBetween&&(t.isHorizontal()?n?c.filter(g).css({marginLeft:`${C}px`}):c.filter(g).css({marginRight:`${C}px`}):c.filter(g).css({marginBottom:`${C}px`})),e.centeredSlides&&e.centeredSlidesBounds){let t=0;f.forEach((i=>{t+=i+(e.spaceBetween?e.spaceBetween:0)})),t-=e.spaceBetween;const i=t-a;h=h.map((t=>t<0?-v:t>i?i+m:t))}if(e.centerInsufficientSlides){let t=0;if(f.forEach((i=>{t+=i+(e.spaceBetween?e.spaceBetween:0)})),t-=e.spaceBetween,t{h[i]=t-e})),p.forEach(((t,i)=>{p[i]=t+e}))}}u.extend(t,{slides:c,snapGrid:h,slidesGrid:p,slidesSizesGrid:f}),d!==l&&t.emit("slidesLengthChange"),h.length!==x&&(t.params.watchOverflow&&t.checkOverflow(),t.emit("snapGridLengthChange")),p.length!==b&&t.emit("slidesGridLengthChange"),(e.watchSlidesProgress||e.watchSlidesVisibility)&&t.updateSlidesOffset()},updateAutoHeight:function(t){const e=this,i=[];let a,n=0;if("number"==typeof t?e.setTransition(t):!0===t&&e.setTransition(e.params.speed),"auto"!==e.params.slidesPerView&&e.params.slidesPerView>1)if(e.params.centeredSlides)e.visibleSlides.each(((t,e)=>{i.push(e)}));else for(a=0;ae.slides.length)break;i.push(e.slides.eq(t)[0])}else i.push(e.slides.eq(e.activeIndex)[0]);for(a=0;an?t:n}n&&e.$wrapperEl.css("height",`${n}px`)},updateSlidesOffset:function(){const t=this,e=t.slides;for(let i=0;i=0&&n1&&o<=e.size||n<=0&&o>=e.size)&&(e.visibleSlides.push(r),e.visibleSlidesIndexes.push(t),a.eq(t).addClass(i.slideVisibleClass))}r.progress=n?-o:o}e.visibleSlides=c(e.visibleSlides)},updateProgress:function(t){const e=this;if(void 0===t){const i=e.rtlTranslate?-1:1;t=e&&e.translate&&e.translate*i||0}const i=e.params,a=e.maxTranslate()-e.minTranslate();let{progress:n,isBeginning:s,isEnd:r}=e;const o=s,l=r;0===a?(n=0,s=!0,r=!0):(n=(t-e.minTranslate())/a,s=n<=0,r=n>=1),u.extend(e,{progress:n,isBeginning:s,isEnd:r}),(i.watchSlidesProgress||i.watchSlidesVisibility||i.centeredSlides&&i.autoHeight)&&e.updateSlidesProgress(t),s&&!o&&e.emit("reachBeginning toEdge"),r&&!l&&e.emit("reachEnd toEdge"),(o&&!s||l&&!r)&&e.emit("fromEdge"),e.emit("progress",n)},updateSlidesClasses:function(){const t=this,{slides:e,params:i,$wrapperEl:a,activeIndex:n,realIndex:s}=t,r=t.virtual&&i.virtual.enabled;let o;e.removeClass(`${i.slideActiveClass} ${i.slideNextClass} ${i.slidePrevClass} ${i.slideDuplicateActiveClass} ${i.slideDuplicateNextClass} ${i.slideDuplicatePrevClass}`),o=r?t.$wrapperEl.find(`.${i.slideClass}[data-swiper-slide-index="${n}"]`):e.eq(n),o.addClass(i.slideActiveClass),i.loop&&(o.hasClass(i.slideDuplicateClass)?a.children(`.${i.slideClass}:not(.${i.slideDuplicateClass})[data-swiper-slide-index="${s}"]`).addClass(i.slideDuplicateActiveClass):a.children(`.${i.slideClass}.${i.slideDuplicateClass}[data-swiper-slide-index="${s}"]`).addClass(i.slideDuplicateActiveClass));let l=o.nextAll(`.${i.slideClass}`).eq(0).addClass(i.slideNextClass);i.loop&&0===l.length&&(l=e.eq(0),l.addClass(i.slideNextClass));let c=o.prevAll(`.${i.slideClass}`).eq(0).addClass(i.slidePrevClass);i.loop&&0===c.length&&(c=e.eq(-1),c.addClass(i.slidePrevClass)),i.loop&&(l.hasClass(i.slideDuplicateClass)?a.children(`.${i.slideClass}:not(.${i.slideDuplicateClass})[data-swiper-slide-index="${l.attr("data-swiper-slide-index")}"]`).addClass(i.slideDuplicateNextClass):a.children(`.${i.slideClass}.${i.slideDuplicateClass}[data-swiper-slide-index="${l.attr("data-swiper-slide-index")}"]`).addClass(i.slideDuplicateNextClass),c.hasClass(i.slideDuplicateClass)?a.children(`.${i.slideClass}:not(.${i.slideDuplicateClass})[data-swiper-slide-index="${c.attr("data-swiper-slide-index")}"]`).addClass(i.slideDuplicatePrevClass):a.children(`.${i.slideClass}.${i.slideDuplicateClass}[data-swiper-slide-index="${c.attr("data-swiper-slide-index")}"]`).addClass(i.slideDuplicatePrevClass))},updateActiveIndex:function(t){const e=this,i=e.rtlTranslate?e.translate:-e.translate,{slidesGrid:a,snapGrid:n,params:s,activeIndex:r,realIndex:o,snapIndex:l}=e;let c,d=t;if(void 0===d){for(let t=0;t=a[t]&&i=a[t]&&i=a[t]&&(d=t);s.normalizeSlideIndex&&(d<0||void 0===d)&&(d=0)}if(n.indexOf(i)>=0)c=n.indexOf(i);else{const t=Math.min(s.slidesPerGroupSkip,d);c=t+Math.floor((d-t)/s.slidesPerGroup)}if(c>=n.length&&(c=n.length-1),d===r)return void(c!==l&&(e.snapIndex=c,e.emit("snapIndexChange")));const h=parseInt(e.slides.eq(d).attr("data-swiper-slide-index")||d,10);u.extend(e,{snapIndex:c,realIndex:h,previousIndex:r,activeIndex:d}),e.emit("activeIndexChange"),e.emit("snapIndexChange"),o!==h&&e.emit("realIndexChange"),(e.initialized||e.params.runCallbacksOnInit)&&e.emit("slideChange")},updateClickedSlide:function(t){const e=this,i=e.params,a=c(t.target).closest(`.${i.slideClass}`)[0];let n=!1;if(a)for(let t=0;tl?l:a&&t=o.length&&(f=o.length-1),(d||r.initialSlide||0)===(c||0)&&i&&n.emit("beforeSlideChangeStart");const g=-o[f];if(n.updateProgress(g),r.normalizeSlideIndex)for(let t=0;t=Math.floor(100*l[t])&&(s=t);if(n.initialized&&s!==d){if(!n.allowSlideNext&&gn.translate&&g>n.maxTranslate()&&(d||0)!==s)return!1}let v;if(v=s>d?"next":sc(t)));o.map((t=>c(t))),r[h.indexOf(d)];let u,p=r[h.indexOf(d)-1];return void 0===p&&n.cssMode&&r.forEach((t=>{!p&&d>=t&&(p=t)})),void 0!==p&&(u=o.indexOf(p),u<0&&(u=a.activeIndex-1)),a.slideTo(u,t,e,i)},slideReset:function(t=this.params.speed,e=!0,i){return this.slideTo(this.activeIndex,t,e,i)},slideToClosest:function(t=this.params.speed,e=!0,i,a=.5){const n=this;let s=n.activeIndex;const r=Math.min(n.params.slidesPerGroupSkip,s),o=r+Math.floor((s-r)/n.params.slidesPerGroup),l=n.rtlTranslate?n.translate:-n.translate;if(l>=n.snapGrid[o]){const t=n.snapGrid[o];l-t>(n.snapGrid[o+1]-t)*a&&(s+=n.params.slidesPerGroup)}else{const t=n.snapGrid[o-1];l-t<=(n.snapGrid[o]-t)*a&&(s-=n.params.slidesPerGroup)}return s=Math.max(s,0),s=Math.min(s,n.slidesGrid.length-1),n.slideTo(s,t,e,i)},slideToClickedSlide:function(){const t=this,{params:e,$wrapperEl:i}=t,a="auto"===e.slidesPerView?t.slidesPerViewDynamic():e.slidesPerView;let n,s=t.clickedIndex;if(e.loop){if(t.animating)return;n=parseInt(c(t.clickedSlide).attr("data-swiper-slide-index"),10),e.centeredSlides?st.slides.length-t.loopedSlides+a/2?(t.loopFix(),s=i.children(`.${e.slideClass}[data-swiper-slide-index="${n}"]:not(.${e.slideDuplicateClass})`).eq(0).index(),u.nextTick((()=>{t.slideTo(s)}))):t.slideTo(s):s>t.slides.length-a?(t.loopFix(),s=i.children(`.${e.slideClass}[data-swiper-slide-index="${n}"]:not(.${e.slideDuplicateClass})`).eq(0).index(),u.nextTick((()=>{t.slideTo(s)}))):t.slideTo(s)}else t.slideTo(s)}},x={loopCreate:function(){const t=this,{params:e,$wrapperEl:i}=t;i.children(`.${e.slideClass}.${e.slideDuplicateClass}`).remove();let a=i.children(`.${e.slideClass}`);if(e.loopFillGroupWithBlank){const t=e.slidesPerGroup-a.length%e.slidesPerGroup;if(t!==e.slidesPerGroup){for(let a=0;aa.length&&(t.loopedSlides=a.length);const n=[],r=[];a.each(((e,i)=>{const s=c(i);e=a.length-t.loopedSlides&&n.push(i),s.attr("data-swiper-slide-index",e)}));for(let t=0;t=0;t-=1)i.prepend(c(n[t].cloneNode(!0)).addClass(e.slideDuplicateClass))},loopFix:function(){const t=this;t.emit("beforeLoopFix");const{activeIndex:e,slides:i,loopedSlides:a,allowSlidePrev:n,allowSlideNext:s,snapGrid:r,rtlTranslate:o}=t;let l;t.allowSlidePrev=!0,t.allowSlideNext=!0;const c=-r[e]-t.getTranslate();e=i.length-a&&(l=-i.length+e+a,l+=a,t.slideTo(l,0,!1,!0)&&0!==c&&t.setTranslate((o?-t.translate:t.translate)-c)),t.allowSlidePrev=n,t.allowSlideNext=s,t.emit("loopFix")},loopDestroy:function(){const{$wrapperEl:t,params:e,slides:i}=this;t.children(`.${e.slideClass}.${e.slideDuplicateClass},.${e.slideClass}.${e.slideBlankClass}`).remove(),i.removeAttr("data-swiper-slide-index")}},b={setGrabCursor:function(t){const e=this;if(p.touch||!e.params.simulateTouch||e.params.watchOverflow&&e.isLocked||e.params.cssMode)return;const i=e.el;i.style.cursor="move",i.style.cursor=t?"-webkit-grabbing":"-webkit-grab",i.style.cursor=t?"-moz-grabbin":"-moz-grab",i.style.cursor=t?"grabbing":"grab"},unsetGrabCursor:function(){const t=this;p.touch||t.params.watchOverflow&&t.isLocked||t.params.cssMode||(t.el.style.cursor="")}},y={appendSlide:function(t){const e=this,{$wrapperEl:i,params:a}=e;if(a.loop&&e.loopDestroy(),"object"==typeof t&&"length"in t)for(let e=0;e=o)return void i.appendSlide(e);let l=r>t?r+1:r;const c=[];for(let e=o-1;e>=t;e-=1){const t=i.slides.eq(e);t.remove(),c.unshift(t)}if("object"==typeof e&&"length"in e){for(let t=0;tt?r+e.length:r}else a.append(e);for(let t=0;t=0||e.indexOf("Trident/")>=0,h=e.indexOf("Edge/")>=0,u=e.indexOf("Gecko/")>=0&&e.indexOf("Firefox/")>=0,f="Win32"===t,g=e.toLowerCase().indexOf("electron")>=0;let v="MacIntel"===t;return!r&&v&&p.touch&&(1024===a&&1366===n||834===a&&1194===n||834===a&&1112===n||768===a&&1024===n)&&(r=e.match(/(Version)\/([\d.]+)/),v=!1),i.ie=d,i.edge=h,i.firefox=u,s&&!f&&(i.os="android",i.osVersion=s[2],i.android=!0,i.androidChrome=e.toLowerCase().indexOf("chrome")>=0),(r||c||l)&&(i.os="ios",i.ios=!0),c&&!l&&(i.osVersion=c[2].replace(/_/g,"."),i.iphone=!0),r&&(i.osVersion=r[2].replace(/_/g,"."),i.ipad=!0),l&&(i.osVersion=l[3]?l[3].replace(/_/g,"."):null,i.ipod=!0),i.ios&&i.osVersion&&e.indexOf("Version/")>=0&&"10"===i.osVersion.split(".")[0]&&(i.osVersion=e.toLowerCase().split("version/")[1].split(" ")[0]),i.webView=!(!(c||r||l)||!e.match(/.*AppleWebKit(?!.*Safari)/i)&&!o.navigator.standalone)||o.matchMedia&&o.matchMedia("(display-mode: standalone)").matches,i.webview=i.webView,i.standalone=i.webView,i.desktop=!(i.ios||i.android)||g,i.desktop&&(i.electron=g,i.macos=v,i.windows=f,i.macos&&(i.os="macos"),i.windows&&(i.os="windows")),i.pixelRatio=o.devicePixelRatio||1,i}();function C(t){const e=this,i=e.touchEventsData,{params:a,touches:n}=e;if(e.animating&&a.preventInteractionOnTransition)return;let r=t;r.originalEvent&&(r=r.originalEvent);const l=c(r.target);if("wrapper"===a.touchEventsTarget&&!l.closest(e.wrapperEl).length)return;if(i.isTouchEvent="touchstart"===r.type,!i.isTouchEvent&&"which"in r&&3===r.which)return;if(!i.isTouchEvent&&"button"in r&&r.button>0)return;if(i.isTouched&&i.isMoved)return;if(a.noSwiping&&l.closest(a.noSwipingSelector?a.noSwipingSelector:`.${a.noSwipingClass}`)[0])return void(e.allowClick=!0);if(a.swipeHandler&&!l.closest(a.swipeHandler)[0])return;n.currentX="touchstart"===r.type?r.targetTouches[0].pageX:r.pageX,n.currentY="touchstart"===r.type?r.targetTouches[0].pageY:r.pageY;const d=n.currentX,h=n.currentY,p=a.edgeSwipeDetection||a.iOSEdgeSwipeDetection,f=a.edgeSwipeThreshold||a.iOSEdgeSwipeThreshold;if(!p||!(d<=f||d>=o.screen.width-f)){if(u.extend(i,{isTouched:!0,isMoved:!1,allowTouchCallbacks:!0,isScrolling:void 0,startMoving:void 0}),n.startX=d,n.startY=h,i.touchStartTime=u.now(),e.allowClick=!0,e.updateSize(),e.swipeDirection=void 0,a.threshold>0&&(i.allowThresholdMove=!1),"touchstart"!==r.type){let t=!0;l.is(i.formElements)&&(t=!1),s.activeElement&&c(s.activeElement).is(i.formElements)&&s.activeElement!==l[0]&&s.activeElement.blur();const n=t&&e.allowTouchMove&&a.touchStartPreventDefault;(a.touchStartForcePreventDefault||n)&&r.preventDefault()}e.emit("touchStart",r)}}function S(t){const e=this,i=e.touchEventsData,{params:a,touches:n,rtlTranslate:r}=e;let o=t;if(o.originalEvent&&(o=o.originalEvent),!i.isTouched)return void(i.startMoving&&i.isScrolling&&e.emit("touchMoveOpposite",o));if(i.isTouchEvent&&"touchmove"!==o.type)return;const l="touchmove"===o.type&&o.targetTouches&&(o.targetTouches[0]||o.changedTouches[0]),d="touchmove"===o.type?l.pageX:o.pageX,h="touchmove"===o.type?l.pageY:o.pageY;if(o.preventedByNestedSwiper)return n.startX=d,void(n.startY=h);if(!e.allowTouchMove)return e.allowClick=!1,void(i.isTouched&&(u.extend(n,{startX:d,startY:h,currentX:d,currentY:h}),i.touchStartTime=u.now()));if(i.isTouchEvent&&a.touchReleaseOnEdges&&!a.loop)if(e.isVertical()){if(hn.startY&&e.translate>=e.minTranslate())return i.isTouched=!1,void(i.isMoved=!1)}else if(dn.startX&&e.translate>=e.minTranslate())return;if(i.isTouchEvent&&s.activeElement&&o.target===s.activeElement&&c(o.target).is(i.formElements))return i.isMoved=!0,void(e.allowClick=!1);if(i.allowTouchCallbacks&&e.emit("touchMove",o),o.targetTouches&&o.targetTouches.length>1)return;n.currentX=d,n.currentY=h;const p=n.currentX-n.startX,f=n.currentY-n.startY;if(e.params.threshold&&Math.sqrt(p**2+f**2)=25&&(t=180*Math.atan2(Math.abs(f),Math.abs(p))/Math.PI,i.isScrolling=e.isHorizontal()?t>a.touchAngle:90-t>a.touchAngle)}if(i.isScrolling&&e.emit("touchMoveOpposite",o),void 0===i.startMoving&&(n.currentX===n.startX&&n.currentY===n.startY||(i.startMoving=!0)),i.isScrolling)return void(i.isTouched=!1);if(!i.startMoving)return;e.allowClick=!1,!a.cssMode&&o.cancelable&&o.preventDefault(),a.touchMoveStopPropagation&&!a.nested&&o.stopPropagation(),i.isMoved||(a.loop&&e.loopFix(),i.startTranslate=e.getTranslate(),e.setTransition(0),e.animating&&e.$wrapperEl.trigger("webkitTransitionEnd transitionend"),i.allowMomentumBounce=!1,!a.grabCursor||!0!==e.allowSlideNext&&!0!==e.allowSlidePrev||e.setGrabCursor(!0),e.emit("sliderFirstMove",o)),e.emit("sliderMove",o),i.isMoved=!0;let g=e.isHorizontal()?p:f;n.diff=g,g*=a.touchRatio,r&&(g=-g),e.swipeDirection=g>0?"prev":"next",i.currentTranslate=g+i.startTranslate;let v=!0,m=a.resistanceRatio;if(a.touchReleaseOnEdges&&(m=0),g>0&&i.currentTranslate>e.minTranslate()?(v=!1,a.resistance&&(i.currentTranslate=e.minTranslate()-1+(-e.minTranslate()+i.startTranslate+g)**m)):g<0&&i.currentTranslatei.startTranslate&&(i.currentTranslate=i.startTranslate),a.threshold>0){if(!(Math.abs(g)>a.threshold||i.allowThresholdMove))return void(i.currentTranslate=i.startTranslate);if(!i.allowThresholdMove)return i.allowThresholdMove=!0,n.startX=n.currentX,n.startY=n.currentY,i.currentTranslate=i.startTranslate,void(n.diff=e.isHorizontal()?n.currentX-n.startX:n.currentY-n.startY)}a.followFinger&&!a.cssMode&&((a.freeMode||a.watchSlidesProgress||a.watchSlidesVisibility)&&(e.updateActiveIndex(),e.updateSlidesClasses()),a.freeMode&&(0===i.velocities.length&&i.velocities.push({position:n[e.isHorizontal()?"startX":"startY"],time:i.touchStartTime}),i.velocities.push({position:n[e.isHorizontal()?"currentX":"currentY"],time:u.now()})),e.updateProgress(i.currentTranslate),e.setTranslate(i.currentTranslate))}function k(t){const e=this,i=e.touchEventsData,{params:a,touches:n,rtlTranslate:s,$wrapperEl:r,slidesGrid:o,snapGrid:l}=e;let c=t;if(c.originalEvent&&(c=c.originalEvent),i.allowTouchCallbacks&&e.emit("touchEnd",c),i.allowTouchCallbacks=!1,!i.isTouched)return i.isMoved&&a.grabCursor&&e.setGrabCursor(!1),i.isMoved=!1,void(i.startMoving=!1);a.grabCursor&&i.isMoved&&i.isTouched&&(!0===e.allowSlideNext||!0===e.allowSlidePrev)&&e.setGrabCursor(!1);const d=u.now(),h=d-i.touchStartTime;if(e.allowClick&&(e.updateClickedSlide(c),e.emit("tap click",c),h<300&&d-i.lastClickTime<300&&e.emit("doubleTap doubleClick",c)),i.lastClickTime=u.now(),u.nextTick((()=>{e.destroyed||(e.allowClick=!0)})),!i.isTouched||!i.isMoved||!e.swipeDirection||0===n.diff||i.currentTranslate===i.startTranslate)return i.isTouched=!1,i.isMoved=!1,void(i.startMoving=!1);let p;if(i.isTouched=!1,i.isMoved=!1,i.startMoving=!1,p=a.followFinger?s?e.translate:-e.translate:-i.currentTranslate,a.cssMode)return;if(a.freeMode){if(p<-e.minTranslate())return void e.slideTo(e.activeIndex);if(p>-e.maxTranslate())return void(e.slides.length1){const t=i.velocities.pop(),n=i.velocities.pop(),s=t.position-n.position,r=t.time-n.time;e.velocity=s/r,e.velocity/=2,Math.abs(e.velocity)150||u.now()-t.time>300)&&(e.velocity=0)}else e.velocity=0;e.velocity*=a.freeModeMomentumVelocityRatio,i.velocities.length=0;let t=1e3*a.freeModeMomentumRatio;const n=e.velocity*t;let o=e.translate+n;s&&(o=-o);let c,d=!1;const h=20*Math.abs(e.velocity)*a.freeModeMomentumBounceRatio;let p;if(oe.minTranslate())a.freeModeMomentumBounce?(o-e.minTranslate()>h&&(o=e.minTranslate()+h),c=e.minTranslate(),d=!0,i.allowMomentumBounce=!0):o=e.minTranslate(),a.loop&&a.centeredSlides&&(p=!0);else if(a.freeModeSticky){let t;for(let e=0;e-o){t=e;break}o=Math.abs(l[t]-o){e.loopFix()})),0!==e.velocity){if(t=s?Math.abs((-o-e.translate)/e.velocity):Math.abs((o-e.translate)/e.velocity),a.freeModeSticky){const i=Math.abs((s?-o:o)-e.translate),n=e.slidesSizesGrid[e.activeIndex];t=i{e&&!e.destroyed&&i.allowMomentumBounce&&(e.emit("momentumBounce"),e.setTransition(a.speed),setTimeout((()=>{e.setTranslate(c),r.transitionEnd((()=>{e&&!e.destroyed&&e.transitionEnd()}))}),0))}))):e.velocity?(e.updateProgress(o),e.setTransition(t),e.setTranslate(o),e.transitionStart(!0,e.swipeDirection),e.animating||(e.animating=!0,r.transitionEnd((()=>{e&&!e.destroyed&&e.transitionEnd()})))):e.updateProgress(o),e.updateActiveIndex(),e.updateSlidesClasses()}else if(a.freeModeSticky)return void e.slideToClosest();return void((!a.freeModeMomentum||h>=a.longSwipesMs)&&(e.updateProgress(),e.updateActiveIndex(),e.updateSlidesClasses()))}let f=0,g=e.slidesSizesGrid[0];for(let t=0;t=o[t]&&p=o[t]&&(f=t,g=o[o.length-1]-o[o.length-2])}const v=(p-o[f])/g,m=fa.longSwipesMs){if(!a.longSwipes)return void e.slideTo(e.activeIndex);"next"===e.swipeDirection&&(v>=a.longSwipesRatio?e.slideTo(f+m):e.slideTo(f)),"prev"===e.swipeDirection&&(v>1-a.longSwipesRatio?e.slideTo(f+m):e.slideTo(f))}else{if(!a.shortSwipes)return void e.slideTo(e.activeIndex);!e.navigation||c.target!==e.navigation.nextEl&&c.target!==e.navigation.prevEl?("next"===e.swipeDirection&&e.slideTo(f+m),"prev"===e.swipeDirection&&e.slideTo(f)):c.target===e.navigation.nextEl?e.slideTo(f+m):e.slideTo(f)}}function A(){const t=this,{params:e,el:i}=t;if(i&&0===i.offsetWidth)return;e.breakpoints&&t.setBreakpoint();const{allowSlideNext:a,allowSlidePrev:n,snapGrid:s}=t;t.allowSlideNext=!0,t.allowSlidePrev=!0,t.updateSize(),t.updateSlides(),t.updateSlidesClasses(),("auto"===e.slidesPerView||e.slidesPerView>1)&&t.isEnd&&!t.isBeginning&&!t.params.centeredSlides?t.slideTo(t.slides.length-1,0,!1,!0):t.slideTo(t.activeIndex,0,!1,!0),t.autoplay&&t.autoplay.running&&t.autoplay.paused&&t.autoplay.run(),t.allowSlidePrev=n,t.allowSlideNext=a,t.params.watchOverflow&&s!==t.snapGrid&&t.checkOverflow()}function P(t){const e=this;e.allowClick||(e.params.preventClicks&&t.preventDefault(),e.params.preventClicksPropagation&&e.animating&&(t.stopPropagation(),t.stopImmediatePropagation()))}function E(){const t=this,{wrapperEl:e,rtlTranslate:i}=t;let a;t.previousTranslate=t.translate,t.isHorizontal()?t.translate=i?e.scrollWidth-e.offsetWidth-e.scrollLeft:-e.scrollLeft:t.translate=-e.scrollTop,-0===t.translate&&(t.translate=0),t.updateActiveIndex(),t.updateSlidesClasses();const n=t.maxTranslate()-t.minTranslate();a=0===n?0:(t.translate-t.minTranslate())/n,a!==t.progress&&t.updateProgress(i?-t.translate:t.translate),t.emit("setTranslate",t.translate,!1)}let T=!1;function O(){}var M={init:!0,direction:"horizontal",touchEventsTarget:"container",initialSlide:0,speed:300,cssMode:!1,updateOnWindowResize:!0,preventInteractionOnTransition:!1,edgeSwipeDetection:!1,edgeSwipeThreshold:20,freeMode:!1,freeModeMomentum:!0,freeModeMomentumRatio:1,freeModeMomentumBounce:!0,freeModeMomentumBounceRatio:1,freeModeMomentumVelocityRatio:1,freeModeSticky:!1,freeModeMinimumVelocity:.02,autoHeight:!1,setWrapperSize:!1,virtualTranslate:!1,effect:"slide",breakpoints:void 0,spaceBetween:0,slidesPerView:1,slidesPerColumn:1,slidesPerColumnFill:"column",slidesPerGroup:1,slidesPerGroupSkip:0,centeredSlides:!1,centeredSlidesBounds:!1,slidesOffsetBefore:0,slidesOffsetAfter:0,normalizeSlideIndex:!0,centerInsufficientSlides:!1,watchOverflow:!1,roundLengths:!1,touchRatio:1,touchAngle:45,simulateTouch:!0,shortSwipes:!0,longSwipes:!0,longSwipesRatio:.5,longSwipesMs:300,followFinger:!0,allowTouchMove:!0,threshold:0,touchMoveStopPropagation:!1,touchStartPreventDefault:!0,touchStartForcePreventDefault:!1,touchReleaseOnEdges:!1,uniqueNavElements:!0,resistance:!0,resistanceRatio:.85,watchSlidesProgress:!1,watchSlidesVisibility:!1,grabCursor:!1,preventClicks:!0,preventClicksPropagation:!0,slideToClickedSlide:!1,preloadImages:!0,updateOnImagesReady:!0,loop:!1,loopAdditionalSlides:0,loopedSlides:null,loopFillGroupWithBlank:!1,allowSlidePrev:!0,allowSlideNext:!0,swipeHandler:null,noSwiping:!0,noSwipingClass:"swiper-no-swiping",noSwipingSelector:null,passiveListeners:!0,containerModifierClass:"swiper-container-",slideClass:"swiper-slide",slideBlankClass:"swiper-slide-invisible-blank",slideActiveClass:"swiper-slide-active",slideDuplicateActiveClass:"swiper-slide-duplicate-active",slideVisibleClass:"swiper-slide-visible",slideDuplicateClass:"swiper-slide-duplicate",slideNextClass:"swiper-slide-next",slideDuplicateNextClass:"swiper-slide-duplicate-next",slidePrevClass:"swiper-slide-prev",slideDuplicatePrevClass:"swiper-slide-duplicate-prev",wrapperClass:"swiper-wrapper",runCallbacksOnInit:!0};const L={update:g,translate:v,transition:{setTransition:function(t,e){const i=this;i.params.cssMode||i.$wrapperEl.transition(t),i.emit("setTransition",t,e)},transitionStart:function(t=!0,e){const i=this,{activeIndex:a,params:n,previousIndex:s}=i;if(n.cssMode)return;n.autoHeight&&i.updateAutoHeight();let r=e;if(r||(r=a>s?"next":an?"next":a{const e=l[t];void 0!==e&&(l[t]="slidesPerView"!==t||"AUTO"!==e&&"auto"!==e?"slidesPerView"===t?parseFloat(e):parseInt(e,10):"auto")}));const c=l||t.originalParams,d=n.slidesPerColumn>1,h=c.slidesPerColumn>1;d&&!h?s.removeClass(`${n.containerModifierClass}multirow ${n.containerModifierClass}multirow-column`):!d&&h&&(s.addClass(`${n.containerModifierClass}multirow`),"column"===c.slidesPerColumnFill&&s.addClass(`${n.containerModifierClass}multirow-column`));const p=c.direction&&c.direction!==n.direction,f=n.loop&&(c.slidesPerView!==n.slidesPerView||p);p&&i&&t.changeDirection(),u.extend(t.params,c),u.extend(t,{allowTouchMove:t.params.allowTouchMove,allowSlideNext:t.params.allowSlideNext,allowSlidePrev:t.params.allowSlidePrev}),t.currentBreakpoint=o,f&&i&&(t.loopDestroy(),t.loopCreate(),t.updateSlides(),t.slideTo(e-a+t.loopedSlides,0,!1)),t.emit("breakpoint",c)}},getBreakpoint:function(t){if(!t)return;let e=!1;const i=Object.keys(t).map((t=>{if("string"==typeof t&&0===t.indexOf("@")){const e=parseFloat(t.substr(1));return{value:o.innerHeight*e,point:t}}return{value:t,point:t}}));i.sort(((t,e)=>parseInt(t.value,10)-parseInt(e.value,10)));for(let t=0;t0&&e.slidesOffsetBefore+e.spaceBetween*(t.slides.length-1)+t.slides[0].offsetWidth*t.slides.length;e.slidesOffsetBefore&&e.slidesOffsetAfter&&a?t.isLocked=a<=t.size:t.isLocked=1===t.snapGrid.length,t.allowSlideNext=!t.isLocked,t.allowSlidePrev=!t.isLocked,i!==t.isLocked&&t.emit(t.isLocked?"lock":"unlock"),i&&i!==t.isLocked&&(t.isEnd=!1,t.navigation&&t.navigation.update())}},classes:{addClasses:function(){const{classNames:t,params:e,rtl:i,$el:a}=this,n=[];n.push("initialized"),n.push(e.direction),e.freeMode&&n.push("free-mode"),e.autoHeight&&n.push("autoheight"),i&&n.push("rtl"),e.slidesPerColumn>1&&(n.push("multirow"),"column"===e.slidesPerColumnFill&&n.push("multirow-column")),w.android&&n.push("android"),w.ios&&n.push("ios"),e.cssMode&&n.push("css-mode"),n.forEach((i=>{t.push(e.containerModifierClass+i)})),a.addClass(t.join(" "))},removeClasses:function(){const{$el:t,classNames:e}=this;t.removeClass(e.join(" "))}},images:{loadImage:function(t,e,i,a,n,s){let r;function l(){s&&s()}c(t).parent("picture")[0]||t.complete&&n?l():e?(r=new o.Image,r.onload=l,r.onerror=l,a&&(r.sizes=a),i&&(r.srcset=i),e&&(r.src=e)):l()},preloadImages:function(){const t=this;function e(){null!=t&&t&&!t.destroyed&&(void 0!==t.imagesLoaded&&(t.imagesLoaded+=1),t.imagesLoaded===t.imagesToLoad.length&&(t.params.updateOnImagesReady&&t.update(),t.emit("imagesReady")))}t.imagesToLoad=t.$el.find("img");for(let i=0;i{Object.keys(L[t]).forEach((e=>{_.prototype[e]||(_.prototype[e]=L[t][e])}))}));const a=this;void 0===a.modules&&(a.modules={}),Object.keys(a.modules).forEach((t=>{const e=a.modules[t];if(e.params){const t=Object.keys(e.params)[0],a=e.params[t];if("object"!=typeof a||null===a)return;if(!(t in i)||!("enabled"in a))return;!0===i[t]&&(i[t]={enabled:!0}),"object"!=typeof i[t]||"enabled"in i[t]||(i[t].enabled=!0),i[t]||(i[t]={enabled:!1})}}));const n=u.extend({},M);a.useModulesParams(n),a.params=u.extend({},n,I,i),a.originalParams=u.extend({},a.params),a.passedParams=u.extend({},i),a.$=c;const s=c(a.params.el);if(e=s[0],!e)return;if(s.length>1){const t=[];return s.each(((e,a)=>{const n=u.extend({},i,{el:a});t.push(new _(n))})),t}let r;return e.swiper=a,s.data("swiper",a),e&&e.shadowRoot&&e.shadowRoot.querySelector?(r=c(e.shadowRoot.querySelector(`.${a.params.wrapperClass}`)),r.children=t=>s.children(t)):r=s.children(`.${a.params.wrapperClass}`),u.extend(a,{$el:s,el:e,$wrapperEl:r,wrapperEl:r[0],classNames:[],slides:c(),slidesGrid:[],snapGrid:[],slidesSizesGrid:[],isHorizontal(){return"horizontal"===a.params.direction},isVertical(){return"vertical"===a.params.direction},rtl:"rtl"===e.dir.toLowerCase()||"rtl"===s.css("direction"),rtlTranslate:"horizontal"===a.params.direction&&("rtl"===e.dir.toLowerCase()||"rtl"===s.css("direction")),wrongRTL:"-webkit-box"===r.css("display"),activeIndex:0,realIndex:0,isBeginning:!0,isEnd:!1,translate:0,previousTranslate:0,progress:0,velocity:0,animating:!1,allowSlideNext:a.params.allowSlideNext,allowSlidePrev:a.params.allowSlidePrev,touchEvents:function(){const t=["touchstart","touchmove","touchend","touchcancel"];let e=["mousedown","mousemove","mouseup"];return p.pointerEvents&&(e=["pointerdown","pointermove","pointerup"]),a.touchEventsTouch={start:t[0],move:t[1],end:t[2],cancel:t[3]},a.touchEventsDesktop={start:e[0],move:e[1],end:e[2]},p.touch||!a.params.simulateTouch?a.touchEventsTouch:a.touchEventsDesktop}(),touchEventsData:{isTouched:void 0,isMoved:void 0,allowTouchCallbacks:void 0,touchStartTime:void 0,isScrolling:void 0,currentTranslate:void 0,startTranslate:void 0,allowThresholdMove:void 0,formElements:"input, select, option, textarea, button, video, label",lastClickTime:u.now(),clickTimeout:void 0,velocities:[],allowMomentumBounce:void 0,isTouchEvent:void 0,startMoving:void 0},allowClick:!0,allowTouchMove:a.params.allowTouchMove,touches:{startX:0,startY:0,currentX:0,currentY:0,diff:0},imagesToLoad:[],imagesLoaded:0}),a.useModules(),a.params.init&&a.init(),a}slidesPerViewDynamic(){const{params:t,slides:e,slidesGrid:i,size:a,activeIndex:n}=this;let s=1;if(t.centeredSlides){let t,i=e[n].swiperSlideSize;for(let r=n+1;ra&&(t=!0));for(let r=n-1;r>=0;r-=1)e[r]&&!t&&(i+=e[r].swiperSlideSize,s+=1,i>a&&(t=!0))}else for(let t=n+1;t1)&&t.isEnd&&!t.params.centeredSlides?t.slideTo(t.slides.length-1,0,!1,!0):t.slideTo(t.activeIndex,0,!1,!0),n||a()),i.watchOverflow&&e!==t.snapGrid&&t.checkOverflow(),t.emit("update")}changeDirection(t,e=!0){const i=this,a=i.params.direction;return t||(t="horizontal"===a?"vertical":"horizontal"),t===a||"horizontal"!==t&&"vertical"!==t||(i.$el.removeClass(`${i.params.containerModifierClass}${a}`).addClass(`${i.params.containerModifierClass}${t}`),i.params.direction=t,i.slides.each(((e,i)=>{"vertical"===t?i.style.width="":i.style.height=""})),i.emit("changeDirection"),e&&i.update()),i}init(){const t=this;t.initialized||(t.emit("beforeInit"),t.params.breakpoints&&t.setBreakpoint(),t.addClasses(),t.params.loop&&t.loopCreate(),t.updateSize(),t.updateSlides(),t.params.watchOverflow&&t.checkOverflow(),t.params.grabCursor&&t.setGrabCursor(),t.params.preloadImages&&t.preloadImages(),t.params.loop?t.slideTo(t.params.initialSlide+t.loopedSlides,0,t.params.runCallbacksOnInit):t.slideTo(t.params.initialSlide,0,t.params.runCallbacksOnInit),t.attachEvents(),t.initialized=!0,t.emit("init"))}destroy(t=!0,e=!0){const i=this,{params:a,$el:n,$wrapperEl:s,slides:r}=i;return void 0===i.params||i.destroyed||(i.emit("beforeDestroy"),i.initialized=!1,i.detachEvents(),a.loop&&i.loopDestroy(),e&&(i.removeClasses(),n.removeAttr("style"),s.removeAttr("style"),r&&r.length&&r.removeClass([a.slideVisibleClass,a.slideActiveClass,a.slideNextClass,a.slidePrevClass].join(" ")).removeAttr("style").removeAttr("data-swiper-slide-index")),i.emit("destroy"),Object.keys(i.eventsListeners).forEach((t=>{i.off(t)})),!1!==t&&(i.$el[0].swiper=null,i.$el.data("swiper",null),u.deleteProps(i)),i.destroyed=!0),null}static extendDefaults(t){u.extend(I,t)}static get extendedDefaults(){return I}static get defaults(){return M}static get Class(){return f}static get $(){return c}}var D={name:"device",proto:{device:w},static:{device:w}},z={name:"support",proto:{support:p},static:{support:p}};const N={isEdge:!!o.navigator.userAgent.match(/Edge/g),isSafari:function(){const t=o.navigator.userAgent.toLowerCase();return t.indexOf("safari")>=0&&t.indexOf("chrome")<0&&t.indexOf("android")<0}(),isWebView:/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(o.navigator.userAgent)};var $={name:"browser",proto:{browser:N},static:{browser:N}},j={name:"resize",create(){const t=this;u.extend(t,{resize:{resizeHandler(){t&&!t.destroyed&&t.initialized&&(t.emit("beforeResize"),t.emit("resize"))},orientationChangeHandler(){t&&!t.destroyed&&t.initialized&&t.emit("orientationchange")}}})},on:{init(){o.addEventListener("resize",this.resize.resizeHandler),o.addEventListener("orientationchange",this.resize.orientationChangeHandler)},destroy(){o.removeEventListener("resize",this.resize.resizeHandler),o.removeEventListener("orientationchange",this.resize.orientationChangeHandler)}}};const H={func:o.MutationObserver||o.WebkitMutationObserver,attach(t,e={}){const i=this,a=new(0,H.func)((t=>{if(1===t.length)return void i.emit("observerUpdate",t[0]);const e=function(){i.emit("observerUpdate",t[0])};o.requestAnimationFrame?o.requestAnimationFrame(e):o.setTimeout(e,0)}));a.observe(t,{attributes:void 0===e.attributes||e.attributes,childList:void 0===e.childList||e.childList,characterData:void 0===e.characterData||e.characterData}),i.observer.observers.push(a)},init(){const t=this;if(p.observer&&t.params.observer){if(t.params.observeParents){const e=t.$el.parents();for(let i=0;i{t.disconnect()})),this.observer.observers=[]}};var X={name:"observer",params:{observer:!1,observeParents:!1,observeSlideChildren:!1},create(){const t=this;u.extend(t,{observer:{init:H.init.bind(t),attach:H.attach.bind(t),destroy:H.destroy.bind(t),observers:[]}})},on:{init(){this.observer.init()},destroy(){this.observer.destroy()}}};const R={update(t){const e=this,{slidesPerView:i,slidesPerGroup:a,centeredSlides:n}=e.params,{addSlidesBefore:s,addSlidesAfter:r}=e.params.virtual,{from:o,to:l,slides:c,slidesGrid:d,renderSlide:h,offset:p}=e.virtual;e.updateActiveIndex();const f=e.activeIndex||0;let g,v,m;g=e.rtlTranslate?"right":e.isHorizontal()?"left":"top",n?(v=Math.floor(i/2)+a+s,m=Math.floor(i/2)+a+r):(v=i+(a-1)+s,m=a+r);const x=Math.max((f||0)-m,0),b=Math.min((f||0)+v,c.length-1),y=(e.slidesGrid[x]||0)-(e.slidesGrid[0]||0);function w(){e.updateSlides(),e.updateProgress(),e.updateSlidesClasses(),e.lazy&&e.params.lazy.enabled&&e.lazy.load()}if(u.extend(e.virtual,{from:x,to:b,offset:y,slidesGrid:e.slidesGrid}),o===x&&l===b&&!t)return e.slidesGrid!==d&&y!==p&&e.slides.css(g,`${y}px`),void e.updateProgress();if(e.params.virtual.renderExternal)return e.params.virtual.renderExternal.call(e,{offset:y,from:x,to:b,slides:function(){const t=[];for(let e=x;e<=b;e+=1)t.push(c[e]);return t}()}),void w();const C=[],S=[];if(t)e.$wrapperEl.find(`.${e.params.slideClass}`).remove();else for(let t=o;t<=l;t+=1)(tb)&&e.$wrapperEl.find(`.${e.params.slideClass}[data-swiper-slide-index="${t}"]`).remove();for(let e=0;e=x&&e<=b&&(void 0===l||t?S.push(e):(e>l&&S.push(e),e{e.$wrapperEl.append(h(c[t],t))})),C.sort(((t,e)=>e-t)).forEach((t=>{e.$wrapperEl.prepend(h(c[t],t))})),e.$wrapperEl.children(".swiper-slide").css(g,`${y}px`),w()},renderSlide(t,e){const i=this,a=i.params.virtual;if(a.cache&&i.virtual.cache[e])return i.virtual.cache[e];const n=a.renderSlide?c(a.renderSlide.call(i,t,e)):c(`
${t}
`);return n.attr("data-swiper-slide-index")||n.attr("data-swiper-slide-index",e),a.cache&&(i.virtual.cache[e]=n),n},appendSlide(t){const e=this;if("object"==typeof t&&"length"in t)for(let i=0;i{const a=t[e],s=a.attr("data-swiper-slide-index");s&&a.attr("data-swiper-slide-index",parseInt(s,10)+1),i[parseInt(e,10)+n]=a})),e.virtual.cache=i}e.virtual.update(!0),e.slideTo(a,0)},removeSlide(t){const e=this;if(null==t)return;let i=e.activeIndex;if(Array.isArray(t))for(let a=t.length-1;a>=0;a-=1)e.virtual.slides.splice(t[a],1),e.params.virtual.cache&&delete e.virtual.cache[t[a]],t[a]0&&0===e.$el.parents(`.${e.params.slideActiveClass}`).length)return;const a=o.innerWidth,n=o.innerHeight,s=e.$el.offset();i&&(s.left-=e.$el[0].scrollLeft);const r=[[s.left,s.top],[s.left+e.width,s.top],[s.left,s.top+e.height],[s.left+e.width,s.top+e.height]];for(let e=0;e=0&&i[0]<=a&&i[1]>=0&&i[1]<=n&&(t=!0)}if(!t)return}e.isHorizontal()?((l||c||d||h)&&(a.preventDefault?a.preventDefault():a.returnValue=!1),((c||h)&&!i||(l||d)&&i)&&e.slideNext(),((l||d)&&!i||(c||h)&&i)&&e.slidePrev()):((l||c||u||p)&&(a.preventDefault?a.preventDefault():a.returnValue=!1),(c||p)&&e.slideNext(),(l||u)&&e.slidePrev()),e.emit("keyPress",n)}},enable(){const t=this;t.keyboard.enabled||(c(s).on("keydown",t.keyboard.handle),t.keyboard.enabled=!0)},disable(){const t=this;t.keyboard.enabled&&(c(s).off("keydown",t.keyboard.handle),t.keyboard.enabled=!1)}};var B={name:"keyboard",params:{keyboard:{enabled:!1,onlyInViewport:!0,pageUpDown:!0}},create(){const t=this;u.extend(t,{keyboard:{enabled:!1,enable:Y.enable.bind(t),disable:Y.disable.bind(t),handle:Y.handle.bind(t)}})},on:{init(){this.params.keyboard.enabled&&this.keyboard.enable()},destroy(){this.keyboard.enabled&&this.keyboard.disable()}}};const W={lastScrollTime:u.now(),lastEventBeforeSnap:void 0,recentWheelEvents:[],event(){return o.navigator.userAgent.indexOf("firefox")>-1?"DOMMouseScroll":function(){const t="onwheel";let e=t in s;if(!e){const i=s.createElement("div");i.setAttribute(t,"return;"),e="function"==typeof i.onwheel}return!e&&s.implementation&&s.implementation.hasFeature&&!0!==s.implementation.hasFeature("","")&&(e=s.implementation.hasFeature("Events.wheel","3.0")),e}()?"wheel":"mousewheel"},normalize(t){let e=0,i=0,a=0,n=0;return"detail"in t&&(i=t.detail),"wheelDelta"in t&&(i=-t.wheelDelta/120),"wheelDeltaY"in t&&(i=-t.wheelDeltaY/120),"wheelDeltaX"in t&&(e=-t.wheelDeltaX/120),"axis"in t&&t.axis===t.HORIZONTAL_AXIS&&(e=i,i=0),a=10*e,n=10*i,"deltaY"in t&&(n=t.deltaY),"deltaX"in t&&(a=t.deltaX),t.shiftKey&&!a&&(a=n,n=0),(a||n)&&t.deltaMode&&(1===t.deltaMode?(a*=40,n*=40):(a*=800,n*=800)),a&&!e&&(e=a<1?-1:1),n&&!i&&(i=n<1?-1:1),{spinX:e,spinY:i,pixelX:a,pixelY:n}},handleMouseEnter(){this.mouseEntered=!0},handleMouseLeave(){this.mouseEntered=!1},handle(t){let e=t;const i=this,a=i.params.mousewheel;i.params.cssMode&&e.preventDefault();let n=i.$el;if("container"!==i.params.mousewheel.eventsTarged&&(n=c(i.params.mousewheel.eventsTarged)),!i.mouseEntered&&!n[0].contains(e.target)&&!a.releaseOnEdges)return!0;e.originalEvent&&(e=e.originalEvent);let s=0;const r=i.rtlTranslate?-1:1,o=W.normalize(e);if(a.forceToAxis)if(i.isHorizontal()){if(!(Math.abs(o.pixelX)>Math.abs(o.pixelY)))return!0;s=-o.pixelX*r}else{if(!(Math.abs(o.pixelY)>Math.abs(o.pixelX)))return!0;s=-o.pixelY}else s=Math.abs(o.pixelX)>Math.abs(o.pixelY)?-o.pixelX*r:-o.pixelY;if(0===s)return!0;if(a.invert&&(s=-s),i.params.freeMode){const t={time:u.now(),delta:Math.abs(s),direction:Math.sign(s)},{lastEventBeforeSnap:n}=i.mousewheel,r=n&&t.time=i.minTranslate()&&(n=i.minTranslate()),n<=i.maxTranslate()&&(n=i.maxTranslate()),i.setTransition(0),i.setTranslate(n),i.updateProgress(),i.updateActiveIndex(),i.updateSlidesClasses(),(!o&&i.isBeginning||!l&&i.isEnd)&&i.updateSlidesClasses(),i.params.freeModeSticky){clearTimeout(i.mousewheel.timeout),i.mousewheel.timeout=void 0;const e=i.mousewheel.recentWheelEvents;e.length>=15&&e.shift();const a=e.length?e[e.length-1]:void 0,n=e[0];if(e.push(t),a&&(t.delta>a.delta||t.direction!==a.direction))e.splice(0);else if(e.length>=15&&t.time-n.time<500&&n.delta-t.delta>=1&&t.delta<=6){const a=s>0?.8:.2;i.mousewheel.lastEventBeforeSnap=t,e.splice(0),i.mousewheel.timeout=u.nextTick((()=>{i.slideToClosest(i.params.speed,!0,void 0,a)}),0)}i.mousewheel.timeout||(i.mousewheel.timeout=u.nextTick((()=>{i.mousewheel.lastEventBeforeSnap=t,e.splice(0),i.slideToClosest(i.params.speed,!0,void 0,.5)}),500))}if(r||i.emit("scroll",e),i.params.autoplay&&i.params.autoplayDisableOnInteraction&&i.autoplay.stop(),n===i.minTranslate()||n===i.maxTranslate())return!0}}else{const e={time:u.now(),delta:Math.abs(s),direction:Math.sign(s),raw:t},a=i.mousewheel.recentWheelEvents;a.length>=2&&a.shift();const n=a.length?a[a.length-1]:void 0;if(a.push(e),n?(e.direction!==n.direction||e.delta>n.delta||e.time>n.time+150)&&i.mousewheel.animateSlider(e):i.mousewheel.animateSlider(e),i.mousewheel.releaseScroll(e))return!0}return e.preventDefault?e.preventDefault():e.returnValue=!1,!1},animateSlider(t){const e=this;return t.delta>=6&&u.now()-e.mousewheel.lastScrollTime<60||(t.direction<0?e.isEnd&&!e.params.loop||e.animating||(e.slideNext(),e.emit("scroll",t.raw)):e.isBeginning&&!e.params.loop||e.animating||(e.slidePrev(),e.emit("scroll",t.raw)),e.mousewheel.lastScrollTime=(new o.Date).getTime(),!1)},releaseScroll(t){const e=this,i=e.params.mousewheel;if(t.direction<0){if(e.isEnd&&!e.params.loop&&i.releaseOnEdges)return!0}else if(e.isBeginning&&!e.params.loop&&i.releaseOnEdges)return!0;return!1},enable(){const t=this,e=W.event();if(t.params.cssMode)return t.wrapperEl.removeEventListener(e,t.mousewheel.handle),!0;if(!e)return!1;if(t.mousewheel.enabled)return!1;let i=t.$el;return"container"!==t.params.mousewheel.eventsTarged&&(i=c(t.params.mousewheel.eventsTarged)),i.on("mouseenter",t.mousewheel.handleMouseEnter),i.on("mouseleave",t.mousewheel.handleMouseLeave),i.on(e,t.mousewheel.handle),t.mousewheel.enabled=!0,!0},disable(){const t=this,e=W.event();if(t.params.cssMode)return t.wrapperEl.addEventListener(e,t.mousewheel.handle),!0;if(!e)return!1;if(!t.mousewheel.enabled)return!1;let i=t.$el;return"container"!==t.params.mousewheel.eventsTarged&&(i=c(t.params.mousewheel.eventsTarged)),i.off(e,t.mousewheel.handle),t.mousewheel.enabled=!1,!0}},V={update(){const t=this,e=t.params.navigation;if(t.params.loop)return;const{$nextEl:i,$prevEl:a}=t.navigation;a&&a.length>0&&(t.isBeginning?a.addClass(e.disabledClass):a.removeClass(e.disabledClass),a[t.params.watchOverflow&&t.isLocked?"addClass":"removeClass"](e.lockClass)),i&&i.length>0&&(t.isEnd?i.addClass(e.disabledClass):i.removeClass(e.disabledClass),i[t.params.watchOverflow&&t.isLocked?"addClass":"removeClass"](e.lockClass))},onPrevClick(t){const e=this;t.preventDefault(),e.isBeginning&&!e.params.loop||e.slidePrev()},onNextClick(t){const e=this;t.preventDefault(),e.isEnd&&!e.params.loop||e.slideNext()},init(){const t=this,e=t.params.navigation;if(!e.nextEl&&!e.prevEl)return;let i,a;e.nextEl&&(i=c(e.nextEl),t.params.uniqueNavElements&&"string"==typeof e.nextEl&&i.length>1&&1===t.$el.find(e.nextEl).length&&(i=t.$el.find(e.nextEl))),e.prevEl&&(a=c(e.prevEl),t.params.uniqueNavElements&&"string"==typeof e.prevEl&&a.length>1&&1===t.$el.find(e.prevEl).length&&(a=t.$el.find(e.prevEl))),i&&i.length>0&&i.on("click",t.navigation.onNextClick),a&&a.length>0&&a.on("click",t.navigation.onPrevClick),u.extend(t.navigation,{$nextEl:i,nextEl:i&&i[0],$prevEl:a,prevEl:a&&a[0]})},destroy(){const t=this,{$nextEl:e,$prevEl:i}=t.navigation;e&&e.length&&(e.off("click",t.navigation.onNextClick),e.removeClass(t.params.navigation.disabledClass)),i&&i.length&&(i.off("click",t.navigation.onPrevClick),i.removeClass(t.params.navigation.disabledClass))}},G={update(){const t=this,e=t.rtl,i=t.params.pagination;if(!i.el||!t.pagination.el||!t.pagination.$el||0===t.pagination.$el.length)return;const a=t.virtual&&t.params.virtual.enabled?t.virtual.slides.length:t.slides.length,n=t.pagination.$el;let s;const r=t.params.loop?Math.ceil((a-2*t.loopedSlides)/t.params.slidesPerGroup):t.snapGrid.length;if(t.params.loop?(s=Math.ceil((t.activeIndex-t.loopedSlides)/t.params.slidesPerGroup),s>a-1-2*t.loopedSlides&&(s-=a-2*t.loopedSlides),s>r-1&&(s-=r),s<0&&"bullets"!==t.params.paginationType&&(s=r+s)):s=void 0!==t.snapIndex?t.snapIndex:t.activeIndex||0,"bullets"===i.type&&t.pagination.bullets&&t.pagination.bullets.length>0){const a=t.pagination.bullets;let r,o,l;if(i.dynamicBullets&&(t.pagination.bulletSize=a.eq(0)[t.isHorizontal()?"outerWidth":"outerHeight"](!0),n.css(t.isHorizontal()?"width":"height",t.pagination.bulletSize*(i.dynamicMainBullets+4)+"px"),i.dynamicMainBullets>1&&void 0!==t.previousIndex&&(t.pagination.dynamicBulletIndex+=s-t.previousIndex,t.pagination.dynamicBulletIndex>i.dynamicMainBullets-1?t.pagination.dynamicBulletIndex=i.dynamicMainBullets-1:t.pagination.dynamicBulletIndex<0&&(t.pagination.dynamicBulletIndex=0)),r=s-t.pagination.dynamicBulletIndex,o=r+(Math.min(a.length,i.dynamicMainBullets)-1),l=(o+r)/2),a.removeClass(`${i.bulletActiveClass} ${i.bulletActiveClass}-next ${i.bulletActiveClass}-next-next ${i.bulletActiveClass}-prev ${i.bulletActiveClass}-prev-prev ${i.bulletActiveClass}-main`),n.length>1)a.each(((t,e)=>{const a=c(e),n=a.index();n===s&&a.addClass(i.bulletActiveClass),i.dynamicBullets&&(n>=r&&n<=o&&a.addClass(`${i.bulletActiveClass}-main`),n===r&&a.prev().addClass(`${i.bulletActiveClass}-prev`).prev().addClass(`${i.bulletActiveClass}-prev-prev`),n===o&&a.next().addClass(`${i.bulletActiveClass}-next`).next().addClass(`${i.bulletActiveClass}-next-next`))}));else{const e=a.eq(s),n=e.index();if(e.addClass(i.bulletActiveClass),i.dynamicBullets){const e=a.eq(r),s=a.eq(o);for(let t=r;t<=o;t+=1)a.eq(t).addClass(`${i.bulletActiveClass}-main`);if(t.params.loop)if(n>=a.length-i.dynamicMainBullets){for(let t=i.dynamicMainBullets;t>=0;t-=1)a.eq(a.length-t).addClass(`${i.bulletActiveClass}-main`);a.eq(a.length-i.dynamicMainBullets-1).addClass(`${i.bulletActiveClass}-prev`)}else e.prev().addClass(`${i.bulletActiveClass}-prev`).prev().addClass(`${i.bulletActiveClass}-prev-prev`),s.next().addClass(`${i.bulletActiveClass}-next`).next().addClass(`${i.bulletActiveClass}-next-next`);else e.prev().addClass(`${i.bulletActiveClass}-prev`).prev().addClass(`${i.bulletActiveClass}-prev-prev`),s.next().addClass(`${i.bulletActiveClass}-next`).next().addClass(`${i.bulletActiveClass}-next-next`)}}if(i.dynamicBullets){const n=Math.min(a.length,i.dynamicMainBullets+4),s=(t.pagination.bulletSize*n-t.pagination.bulletSize)/2-l*t.pagination.bulletSize,r=e?"right":"left";a.css(t.isHorizontal()?r:"top",`${s}px`)}}if("fraction"===i.type&&(n.find(`.${i.currentClass}`).text(i.formatFractionCurrent(s+1)),n.find(`.${i.totalClass}`).text(i.formatFractionTotal(r))),"progressbar"===i.type){let e;e=i.progressbarOpposite?t.isHorizontal()?"vertical":"horizontal":t.isHorizontal()?"horizontal":"vertical";const a=(s+1)/r;let o=1,l=1;"horizontal"===e?o=a:l=a,n.find(`.${i.progressbarFillClass}`).transform(`translate3d(0,0,0) scaleX(${o}) scaleY(${l})`).transition(t.params.speed)}"custom"===i.type&&i.renderCustom?(n.html(i.renderCustom(t,s+1,r)),t.emit("paginationRender",t,n[0])):t.emit("paginationUpdate",t,n[0]),n[t.params.watchOverflow&&t.isLocked?"addClass":"removeClass"](i.lockClass)},render(){const t=this,e=t.params.pagination;if(!e.el||!t.pagination.el||!t.pagination.$el||0===t.pagination.$el.length)return;const i=t.virtual&&t.params.virtual.enabled?t.virtual.slides.length:t.slides.length,a=t.pagination.$el;let n="";if("bullets"===e.type){const s=t.params.loop?Math.ceil((i-2*t.loopedSlides)/t.params.slidesPerGroup):t.snapGrid.length;for(let i=0;i`;a.html(n),t.pagination.bullets=a.find(`.${e.bulletClass}`)}"fraction"===e.type&&(n=e.renderFraction?e.renderFraction.call(t,e.currentClass,e.totalClass):` / `,a.html(n)),"progressbar"===e.type&&(n=e.renderProgressbar?e.renderProgressbar.call(t,e.progressbarFillClass):``,a.html(n)),"custom"!==e.type&&t.emit("paginationRender",t.pagination.$el[0])},init(){const t=this,e=t.params.pagination;if(!e.el)return;let i=c(e.el);0!==i.length&&(t.params.uniqueNavElements&&"string"==typeof e.el&&i.length>1&&(i=t.$el.find(e.el)),"bullets"===e.type&&e.clickable&&i.addClass(e.clickableClass),i.addClass(e.modifierClass+e.type),"bullets"===e.type&&e.dynamicBullets&&(i.addClass(`${e.modifierClass}${e.type}-dynamic`),t.pagination.dynamicBulletIndex=0,e.dynamicMainBullets<1&&(e.dynamicMainBullets=1)),"progressbar"===e.type&&e.progressbarOpposite&&i.addClass(e.progressbarOppositeClass),e.clickable&&i.on("click",`.${e.bulletClass}`,(function(e){e.preventDefault();let i=c(this).index()*t.params.slidesPerGroup;t.params.loop&&(i+=t.loopedSlides),t.slideTo(i)})),u.extend(t.pagination,{$el:i,el:i[0]}))},destroy(){const t=this,e=t.params.pagination;if(!e.el||!t.pagination.el||!t.pagination.$el||0===t.pagination.$el.length)return;const i=t.pagination.$el;i.removeClass(e.hiddenClass),i.removeClass(e.modifierClass+e.type),t.pagination.bullets&&t.pagination.bullets.removeClass(e.bulletActiveClass),e.clickable&&i.off("click",`.${e.bulletClass}`)}},U={setTranslate(){const t=this;if(!t.params.scrollbar.el||!t.scrollbar.el)return;const{scrollbar:e,rtlTranslate:i,progress:a}=t,{dragSize:n,trackSize:s,$dragEl:r,$el:o}=e,l=t.params.scrollbar;let c=n,d=(s-n)*a;i?(d=-d,d>0?(c=n-d,d=0):-d+n>s&&(c=s+d)):d<0?(c=n+d,d=0):d+n>s&&(c=s-d),t.isHorizontal()?(r.transform(`translate3d(${d}px, 0, 0)`),r[0].style.width=`${c}px`):(r.transform(`translate3d(0px, ${d}px, 0)`),r[0].style.height=`${c}px`),l.hide&&(clearTimeout(t.scrollbar.timeout),o[0].style.opacity=1,t.scrollbar.timeout=setTimeout((()=>{o[0].style.opacity=0,o.transition(400)}),1e3))},setTransition(t){const e=this;e.params.scrollbar.el&&e.scrollbar.el&&e.scrollbar.$dragEl.transition(t)},updateSize(){const t=this;if(!t.params.scrollbar.el||!t.scrollbar.el)return;const{scrollbar:e}=t,{$dragEl:i,$el:a}=e;i[0].style.width="",i[0].style.height="";const n=t.isHorizontal()?a[0].offsetWidth:a[0].offsetHeight,s=t.size/t.virtualSize,r=s*(n/t.size);let o;o="auto"===t.params.scrollbar.dragSize?n*s:parseInt(t.params.scrollbar.dragSize,10),t.isHorizontal()?i[0].style.width=`${o}px`:i[0].style.height=`${o}px`,a[0].style.display=s>=1?"none":"",t.params.scrollbar.hide&&(a[0].style.opacity=0),u.extend(e,{trackSize:n,divider:s,moveDivider:r,dragSize:o}),e.$el[t.params.watchOverflow&&t.isLocked?"addClass":"removeClass"](t.params.scrollbar.lockClass)},getPointerPosition(t){return this.isHorizontal()?"touchstart"===t.type||"touchmove"===t.type?t.targetTouches[0].clientX:t.clientX:"touchstart"===t.type||"touchmove"===t.type?t.targetTouches[0].clientY:t.clientY},setDragPosition(t){const e=this,{scrollbar:i,rtlTranslate:a}=e,{$el:n,dragSize:s,trackSize:r,dragStartPos:o}=i;let l;l=(i.getPointerPosition(t)-n.offset()[e.isHorizontal()?"left":"top"]-(null!==o?o:s/2))/(r-s),l=Math.max(Math.min(l,1),0),a&&(l=1-l);const c=e.minTranslate()+(e.maxTranslate()-e.minTranslate())*l;e.updateProgress(c),e.setTranslate(c),e.updateActiveIndex(),e.updateSlidesClasses()},onDragStart(t){const e=this,i=e.params.scrollbar,{scrollbar:a,$wrapperEl:n}=e,{$el:s,$dragEl:r}=a;e.scrollbar.isTouched=!0,e.scrollbar.dragStartPos=t.target===r[0]||t.target===r?a.getPointerPosition(t)-t.target.getBoundingClientRect()[e.isHorizontal()?"left":"top"]:null,t.preventDefault(),t.stopPropagation(),n.transition(100),r.transition(100),a.setDragPosition(t),clearTimeout(e.scrollbar.dragTimeout),s.transition(0),i.hide&&s.css("opacity",1),e.params.cssMode&&e.$wrapperEl.css("scroll-snap-type","none"),e.emit("scrollbarDragStart",t)},onDragMove(t){const e=this,{scrollbar:i,$wrapperEl:a}=e,{$el:n,$dragEl:s}=i;e.scrollbar.isTouched&&(t.preventDefault?t.preventDefault():t.returnValue=!1,i.setDragPosition(t),a.transition(0),n.transition(0),s.transition(0),e.emit("scrollbarDragMove",t))},onDragEnd(t){const e=this,i=e.params.scrollbar,{scrollbar:a,$wrapperEl:n}=e,{$el:s}=a;e.scrollbar.isTouched&&(e.scrollbar.isTouched=!1,e.params.cssMode&&(e.$wrapperEl.css("scroll-snap-type",""),n.transition("")),i.hide&&(clearTimeout(e.scrollbar.dragTimeout),e.scrollbar.dragTimeout=u.nextTick((()=>{s.css("opacity",0),s.transition(400)}),1e3)),e.emit("scrollbarDragEnd",t),i.snapOnRelease&&e.slideToClosest())},enableDraggable(){const t=this;if(!t.params.scrollbar.el)return;const{scrollbar:e,touchEventsTouch:i,touchEventsDesktop:a,params:n}=t,r=e.$el[0],o=!(!p.passiveListener||!n.passiveListeners)&&{passive:!1,capture:!1},l=!(!p.passiveListener||!n.passiveListeners)&&{passive:!0,capture:!1};p.touch?(r.addEventListener(i.start,t.scrollbar.onDragStart,o),r.addEventListener(i.move,t.scrollbar.onDragMove,o),r.addEventListener(i.end,t.scrollbar.onDragEnd,l)):(r.addEventListener(a.start,t.scrollbar.onDragStart,o),s.addEventListener(a.move,t.scrollbar.onDragMove,o),s.addEventListener(a.end,t.scrollbar.onDragEnd,l))},disableDraggable(){const t=this;if(!t.params.scrollbar.el)return;const{scrollbar:e,touchEventsTouch:i,touchEventsDesktop:a,params:n}=t,r=e.$el[0],o=!(!p.passiveListener||!n.passiveListeners)&&{passive:!1,capture:!1},l=!(!p.passiveListener||!n.passiveListeners)&&{passive:!0,capture:!1};p.touch?(r.removeEventListener(i.start,t.scrollbar.onDragStart,o),r.removeEventListener(i.move,t.scrollbar.onDragMove,o),r.removeEventListener(i.end,t.scrollbar.onDragEnd,l)):(r.removeEventListener(a.start,t.scrollbar.onDragStart,o),s.removeEventListener(a.move,t.scrollbar.onDragMove,o),s.removeEventListener(a.end,t.scrollbar.onDragEnd,l))},init(){const t=this;if(!t.params.scrollbar.el)return;const{scrollbar:e,$el:i}=t,a=t.params.scrollbar;let n=c(a.el);t.params.uniqueNavElements&&"string"==typeof a.el&&n.length>1&&1===i.find(a.el).length&&(n=i.find(a.el));let s=n.find(`.${t.params.scrollbar.dragClass}`);0===s.length&&(s=c(`
`),n.append(s)),u.extend(e,{$el:n,el:n[0],$dragEl:s,dragEl:s[0]}),a.draggable&&e.enableDraggable()},destroy(){this.scrollbar.disableDraggable()}},q={setTransform(t,e){const{rtl:i}=this,a=c(t),n=i?-1:1,s=a.attr("data-swiper-parallax")||"0";let r=a.attr("data-swiper-parallax-x"),o=a.attr("data-swiper-parallax-y");const l=a.attr("data-swiper-parallax-scale"),d=a.attr("data-swiper-parallax-opacity");if(r||o?(r=r||"0",o=o||"0"):this.isHorizontal()?(r=s,o="0"):(o=s,r="0"),r=r.indexOf("%")>=0?parseInt(r,10)*e*n+"%":r*e*n+"px",o=o.indexOf("%")>=0?parseInt(o,10)*e+"%":o*e+"px",null!=d){const t=d-(d-1)*(1-Math.abs(e));a[0].style.opacity=t}if(null==l)a.transform(`translate3d(${r}, ${o}, 0px)`);else{const t=l-(l-1)*(1-Math.abs(e));a.transform(`translate3d(${r}, ${o}, 0px) scale(${t})`)}},setTranslate(){const t=this,{$el:e,slides:i,progress:a,snapGrid:n}=t;e.children("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]").each(((e,i)=>{t.parallax.setTransform(i,a)})),i.each(((e,i)=>{let s=i.progress;t.params.slidesPerGroup>1&&"auto"!==t.params.slidesPerView&&(s+=Math.ceil(e/2)-a*(n.length-1)),s=Math.min(Math.max(s,-1),1),c(i).find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]").each(((e,i)=>{t.parallax.setTransform(i,s)}))}))},setTransition(t=this.params.speed){const{$el:e}=this;e.find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]").each(((e,i)=>{const a=c(i);let n=parseInt(a.attr("data-swiper-parallax-duration"),10)||t;0===t&&(n=0),a.transition(n)}))}},Z={getDistanceBetweenTouches(t){if(t.targetTouches.length<2)return 1;const e=t.targetTouches[0].pageX,i=t.targetTouches[0].pageY,a=t.targetTouches[1].pageX,n=t.targetTouches[1].pageY;return Math.sqrt((a-e)**2+(n-i)**2)},onGestureStart(t){const e=this,i=e.params.zoom,a=e.zoom,{gesture:n}=a;if(a.fakeGestureTouched=!1,a.fakeGestureMoved=!1,!p.gestures){if("touchstart"!==t.type||"touchstart"===t.type&&t.targetTouches.length<2)return;a.fakeGestureTouched=!0,n.scaleStart=Z.getDistanceBetweenTouches(t)}n.$slideEl&&n.$slideEl.length||(n.$slideEl=c(t.target).closest(`.${e.params.slideClass}`),0===n.$slideEl.length&&(n.$slideEl=e.slides.eq(e.activeIndex)),n.$imageEl=n.$slideEl.find("img, svg, canvas, picture, .swiper-zoom-target"),n.$imageWrapEl=n.$imageEl.parent(`.${i.containerClass}`),n.maxRatio=n.$imageWrapEl.attr("data-swiper-zoom")||i.maxRatio,0!==n.$imageWrapEl.length)?(n.$imageEl&&n.$imageEl.transition(0),e.zoom.isScaling=!0):n.$imageEl=void 0},onGestureChange(t){const e=this.params.zoom,i=this.zoom,{gesture:a}=i;if(!p.gestures){if("touchmove"!==t.type||"touchmove"===t.type&&t.targetTouches.length<2)return;i.fakeGestureMoved=!0,a.scaleMove=Z.getDistanceBetweenTouches(t)}a.$imageEl&&0!==a.$imageEl.length&&(i.scale=p.gestures?t.scale*i.currentScale:a.scaleMove/a.scaleStart*i.currentScale,i.scale>a.maxRatio&&(i.scale=a.maxRatio-1+(i.scale-a.maxRatio+1)**.5),i.scalen.touchesStart.x))return void(n.isTouched=!1);if(!e.isHorizontal()&&(Math.floor(n.minY)===Math.floor(n.startY)&&n.touchesCurrent.yn.touchesStart.y))return void(n.isTouched=!1)}t.cancelable&&t.preventDefault(),t.stopPropagation(),n.isMoved=!0,n.currentX=n.touchesCurrent.x-n.touchesStart.x+n.startX,n.currentY=n.touchesCurrent.y-n.touchesStart.y+n.startY,n.currentXn.maxX&&(n.currentX=n.maxX-1+(n.currentX-n.maxX+1)**.8),n.currentYn.maxY&&(n.currentY=n.maxY-1+(n.currentY-n.maxY+1)**.8),s.prevPositionX||(s.prevPositionX=n.touchesCurrent.x),s.prevPositionY||(s.prevPositionY=n.touchesCurrent.y),s.prevTime||(s.prevTime=Date.now()),s.x=(n.touchesCurrent.x-s.prevPositionX)/(Date.now()-s.prevTime)/2,s.y=(n.touchesCurrent.y-s.prevPositionY)/(Date.now()-s.prevTime)/2,Math.abs(n.touchesCurrent.x-s.prevPositionX)<2&&(s.x=0),Math.abs(n.touchesCurrent.y-s.prevPositionY)<2&&(s.y=0),s.prevPositionX=n.touchesCurrent.x,s.prevPositionY=n.touchesCurrent.y,s.prevTime=Date.now(),a.$imageWrapEl.transform(`translate3d(${n.currentX}px, ${n.currentY}px,0)`)}},onTouchEnd(){const t=this.zoom,{gesture:e,image:i,velocity:a}=t;if(!e.$imageEl||0===e.$imageEl.length)return;if(!i.isTouched||!i.isMoved)return i.isTouched=!1,void(i.isMoved=!1);i.isTouched=!1,i.isMoved=!1;let n=300,s=300;const r=a.x*n,o=i.currentX+r,l=a.y*s,c=i.currentY+l;0!==a.x&&(n=Math.abs((o-i.currentX)/a.x)),0!==a.y&&(s=Math.abs((c-i.currentY)/a.y));const d=Math.max(n,s);i.currentX=o,i.currentY=c;const h=i.width*t.scale,u=i.height*t.scale;i.minX=Math.min(e.slideWidth/2-h/2,0),i.maxX=-i.minX,i.minY=Math.min(e.slideHeight/2-u/2,0),i.maxY=-i.minY,i.currentX=Math.max(Math.min(i.currentX,i.maxX),i.minX),i.currentY=Math.max(Math.min(i.currentY,i.maxY),i.minY),e.$imageWrapEl.transition(d).transform(`translate3d(${i.currentX}px, ${i.currentY}px,0)`)},onTransitionEnd(){const t=this,e=t.zoom,{gesture:i}=e;i.$slideEl&&t.previousIndex!==t.activeIndex&&(i.$imageEl&&i.$imageEl.transform("translate3d(0,0,0) scale(1)"),i.$imageWrapEl&&i.$imageWrapEl.transform("translate3d(0,0,0)"),e.scale=1,e.currentScale=1,i.$slideEl=void 0,i.$imageEl=void 0,i.$imageWrapEl=void 0)},toggle(t){const e=this.zoom;e.scale&&1!==e.scale?e.out():e.in(t)},in(t){const e=this,i=e.zoom,a=e.params.zoom,{gesture:n,image:s}=i;if(n.$slideEl||(e.params.virtual&&e.params.virtual.enabled&&e.virtual?n.$slideEl=e.$wrapperEl.children(`.${e.params.slideActiveClass}`):n.$slideEl=e.slides.eq(e.activeIndex),n.$imageEl=n.$slideEl.find("img, svg, canvas, picture, .swiper-zoom-target"),n.$imageWrapEl=n.$imageEl.parent(`.${a.containerClass}`)),!n.$imageEl||0===n.$imageEl.length)return;let r,o,l,c,d,h,u,p,f,g,v,m,x,b,y,w,C,S;n.$slideEl.addClass(`${a.zoomedSlideClass}`),void 0===s.touchesStart.x&&t?(r="touchend"===t.type?t.changedTouches[0].pageX:t.pageX,o="touchend"===t.type?t.changedTouches[0].pageY:t.pageY):(r=s.touchesStart.x,o=s.touchesStart.y),i.scale=n.$imageWrapEl.attr("data-swiper-zoom")||a.maxRatio,i.currentScale=n.$imageWrapEl.attr("data-swiper-zoom")||a.maxRatio,t?(C=n.$slideEl[0].offsetWidth,S=n.$slideEl[0].offsetHeight,l=n.$slideEl.offset().left,c=n.$slideEl.offset().top,d=l+C/2-r,h=c+S/2-o,f=n.$imageEl[0].offsetWidth,g=n.$imageEl[0].offsetHeight,v=f*i.scale,m=g*i.scale,x=Math.min(C/2-v/2,0),b=Math.min(S/2-m/2,0),y=-x,w=-b,u=d*i.scale,p=h*i.scale,uy&&(u=y),pw&&(p=w)):(u=0,p=0),n.$imageWrapEl.transition(300).transform(`translate3d(${u}px, ${p}px,0)`),n.$imageEl.transition(300).transform(`translate3d(0,0,0) scale(${i.scale})`)},out(){const t=this,e=t.zoom,i=t.params.zoom,{gesture:a}=e;a.$slideEl||(t.params.virtual&&t.params.virtual.enabled&&t.virtual?a.$slideEl=t.$wrapperEl.children(`.${t.params.slideActiveClass}`):a.$slideEl=t.slides.eq(t.activeIndex),a.$imageEl=a.$slideEl.find("img, svg, canvas, picture, .swiper-zoom-target"),a.$imageWrapEl=a.$imageEl.parent(`.${i.containerClass}`)),a.$imageEl&&0!==a.$imageEl.length&&(e.scale=1,e.currentScale=1,a.$imageWrapEl.transition(300).transform("translate3d(0,0,0)"),a.$imageEl.transition(300).transform("translate3d(0,0,0) scale(1)"),a.$slideEl.removeClass(`${i.zoomedSlideClass}`),a.$slideEl=void 0)},enable(){const t=this,e=t.zoom;if(e.enabled)return;e.enabled=!0;const i=!("touchstart"!==t.touchEvents.start||!p.passiveListener||!t.params.passiveListeners)&&{passive:!0,capture:!1},a=!p.passiveListener||{passive:!1,capture:!0},n=`.${t.params.slideClass}`;p.gestures?(t.$wrapperEl.on("gesturestart",n,e.onGestureStart,i),t.$wrapperEl.on("gesturechange",n,e.onGestureChange,i),t.$wrapperEl.on("gestureend",n,e.onGestureEnd,i)):"touchstart"===t.touchEvents.start&&(t.$wrapperEl.on(t.touchEvents.start,n,e.onGestureStart,i),t.$wrapperEl.on(t.touchEvents.move,n,e.onGestureChange,a),t.$wrapperEl.on(t.touchEvents.end,n,e.onGestureEnd,i),t.touchEvents.cancel&&t.$wrapperEl.on(t.touchEvents.cancel,n,e.onGestureEnd,i)),t.$wrapperEl.on(t.touchEvents.move,`.${t.params.zoom.containerClass}`,e.onTouchMove,a)},disable(){const t=this,e=t.zoom;if(!e.enabled)return;t.zoom.enabled=!1;const i=!("touchstart"!==t.touchEvents.start||!p.passiveListener||!t.params.passiveListeners)&&{passive:!0,capture:!1},a=!p.passiveListener||{passive:!1,capture:!0},n=`.${t.params.slideClass}`;p.gestures?(t.$wrapperEl.off("gesturestart",n,e.onGestureStart,i),t.$wrapperEl.off("gesturechange",n,e.onGestureChange,i),t.$wrapperEl.off("gestureend",n,e.onGestureEnd,i)):"touchstart"===t.touchEvents.start&&(t.$wrapperEl.off(t.touchEvents.start,n,e.onGestureStart,i),t.$wrapperEl.off(t.touchEvents.move,n,e.onGestureChange,a),t.$wrapperEl.off(t.touchEvents.end,n,e.onGestureEnd,i),t.touchEvents.cancel&&t.$wrapperEl.off(t.touchEvents.cancel,n,e.onGestureEnd,i)),t.$wrapperEl.off(t.touchEvents.move,`.${t.params.zoom.containerClass}`,e.onTouchMove,a)}},Q={loadInSlide(t,e=!0){const i=this,a=i.params.lazy;if(void 0===t)return;if(0===i.slides.length)return;const n=i.virtual&&i.params.virtual.enabled?i.$wrapperEl.children(`.${i.params.slideClass}[data-swiper-slide-index="${t}"]`):i.slides.eq(t);let s=n.find(`.${a.elementClass}:not(.${a.loadedClass}):not(.${a.loadingClass})`);!n.hasClass(a.elementClass)||n.hasClass(a.loadedClass)||n.hasClass(a.loadingClass)||(s=s.add(n[0])),0!==s.length&&s.each(((t,s)=>{const r=c(s);r.addClass(a.loadingClass);const o=r.attr("data-background"),l=r.attr("data-src"),d=r.attr("data-srcset"),h=r.attr("data-sizes"),u=r.parent("picture");i.loadImage(r[0],l||o,d,h,!1,(()=>{if(null!=i&&i&&(!i||i.params)&&!i.destroyed){if(o?(r.css("background-image",`url("${o}")`),r.removeAttr("data-background")):(d&&(r.attr("srcset",d),r.removeAttr("data-srcset")),h&&(r.attr("sizes",h),r.removeAttr("data-sizes")),u.length&&u.children("source").each(((t,e)=>{const i=c(e);i.attr("data-srcset")&&(i.attr("srcset",i.attr("data-srcset")),i.removeAttr("data-srcset"))})),l&&(r.attr("src",l),r.removeAttr("data-src"))),r.addClass(a.loadedClass).removeClass(a.loadingClass),n.find(`.${a.preloaderClass}`).remove(),i.params.loop&&e){const t=n.attr("data-swiper-slide-index");if(n.hasClass(i.params.slideDuplicateClass)){const e=i.$wrapperEl.children(`[data-swiper-slide-index="${t}"]:not(.${i.params.slideDuplicateClass})`);i.lazy.loadInSlide(e.index(),!1)}else{const e=i.$wrapperEl.children(`.${i.params.slideDuplicateClass}[data-swiper-slide-index="${t}"]`);i.lazy.loadInSlide(e.index(),!1)}}i.emit("lazyImageReady",n[0],r[0]),i.params.autoHeight&&i.updateAutoHeight()}})),i.emit("lazyImageLoad",n[0],r[0])}))},load(){const t=this,{$wrapperEl:e,params:i,slides:a,activeIndex:n}=t,s=t.virtual&&i.virtual.enabled,r=i.lazy;let o=i.slidesPerView;function l(t){if(s){if(e.children(`.${i.slideClass}[data-swiper-slide-index="${t}"]`).length)return!0}else if(a[t])return!0;return!1}function d(t){return s?c(t).attr("data-swiper-slide-index"):c(t).index()}if("auto"===o&&(o=0),t.lazy.initialImageLoaded||(t.lazy.initialImageLoaded=!0),t.params.watchSlidesVisibility)e.children(`.${i.slideVisibleClass}`).each(((e,i)=>{const a=s?c(i).attr("data-swiper-slide-index"):c(i).index();t.lazy.loadInSlide(a)}));else if(o>1)for(let e=n;e1||r.loadPrevNextAmount&&r.loadPrevNextAmount>1){const e=r.loadPrevNextAmount,i=o,s=Math.min(n+i+Math.max(e,i),a.length),c=Math.max(n-Math.max(i,e),0);for(let e=n+o;e0&&t.lazy.loadInSlide(d(a));const n=e.children(`.${i.slidePrevClass}`);n.length>0&&t.lazy.loadInSlide(d(n))}}},K={LinearSpline:function(t,e){const i=function(){let t,e,i;return(a,n)=>{for(e=-1,t=a.length;t-e>1;)i=t+e>>1,a[i]<=n?e=i:t=i;return t}}();let a,n;return this.x=t,this.y=e,this.lastIndex=t.length-1,this.interpolate=function(t){return t?(n=i(this.x,t),a=n-1,(t-this.x[a])*(this.y[n]-this.y[a])/(this.x[n]-this.x[a])+this.y[a]):0},this},getInterpolateFunction(t){const e=this;e.controller.spline||(e.controller.spline=e.params.loop?new K.LinearSpline(e.slidesGrid,t.slidesGrid):new K.LinearSpline(e.snapGrid,t.snapGrid))},setTranslate(t,e){const i=this,a=i.controller.control;let n,s;function r(t){const e=i.rtlTranslate?-i.translate:i.translate;"slide"===i.params.controller.by&&(i.controller.getInterpolateFunction(t),s=-i.controller.spline.interpolate(-e)),s&&"container"!==i.params.controller.by||(n=(t.maxTranslate()-t.minTranslate())/(i.maxTranslate()-i.minTranslate()),s=(e-i.minTranslate())*n+t.minTranslate()),i.params.controller.inverse&&(s=t.maxTranslate()-s),t.updateProgress(s),t.setTranslate(s,i),t.updateActiveIndex(),t.updateSlidesClasses()}if(Array.isArray(a))for(let t=0;t{e.updateAutoHeight()})),e.$wrapperEl.transitionEnd((()=>{a&&(e.params.loop&&"slide"===i.params.controller.by&&e.loopFix(),e.transitionEnd())})))}if(Array.isArray(a))for(n=0;n0&&(t.isBeginning?(t.a11y.disableEl(i),t.a11y.makeElNotFocusable(i)):(t.a11y.enableEl(i),t.a11y.makeElFocusable(i))),e&&e.length>0&&(t.isEnd?(t.a11y.disableEl(e),t.a11y.makeElNotFocusable(e)):(t.a11y.enableEl(e),t.a11y.makeElFocusable(e)))},updatePagination(){const t=this,e=t.params.a11y;t.pagination&&t.params.pagination.clickable&&t.pagination.bullets&&t.pagination.bullets.length&&t.pagination.bullets.each(((i,a)=>{const n=c(a);t.a11y.makeElFocusable(n),t.a11y.addElRole(n,"button"),t.a11y.addElLabel(n,e.paginationBulletMessage.replace(/\{\{index\}\}/,n.index()+1))}))},init(){const t=this;t.$el.append(t.a11y.liveRegion);const e=t.params.a11y;let i,a;t.navigation&&t.navigation.$nextEl&&(i=t.navigation.$nextEl),t.navigation&&t.navigation.$prevEl&&(a=t.navigation.$prevEl),i&&(t.a11y.makeElFocusable(i),t.a11y.addElRole(i,"button"),t.a11y.addElLabel(i,e.nextSlideMessage),i.on("keydown",t.a11y.onEnterKey)),a&&(t.a11y.makeElFocusable(a),t.a11y.addElRole(a,"button"),t.a11y.addElLabel(a,e.prevSlideMessage),a.on("keydown",t.a11y.onEnterKey)),t.pagination&&t.params.pagination.clickable&&t.pagination.bullets&&t.pagination.bullets.length&&t.pagination.$el.on("keydown",`.${t.params.pagination.bulletClass}`,t.a11y.onEnterKey)},destroy(){const t=this;let e,i;t.a11y.liveRegion&&t.a11y.liveRegion.length>0&&t.a11y.liveRegion.remove(),t.navigation&&t.navigation.$nextEl&&(e=t.navigation.$nextEl),t.navigation&&t.navigation.$prevEl&&(i=t.navigation.$prevEl),e&&e.off("keydown",t.a11y.onEnterKey),i&&i.off("keydown",t.a11y.onEnterKey),t.pagination&&t.params.pagination.clickable&&t.pagination.bullets&&t.pagination.bullets.length&&t.pagination.$el.off("keydown",`.${t.params.pagination.bulletClass}`,t.a11y.onEnterKey)}},et={init(){const t=this;if(!t.params.history)return;if(!o.history||!o.history.pushState)return t.params.history.enabled=!1,void(t.params.hashNavigation.enabled=!0);const e=t.history;e.initialized=!0,e.paths=et.getPathValues(),(e.paths.key||e.paths.value)&&(e.scrollToSlide(0,e.paths.value,t.params.runCallbacksOnInit),t.params.history.replaceState||o.addEventListener("popstate",t.history.setHistoryPopState))},destroy(){this.params.history.replaceState||o.removeEventListener("popstate",this.history.setHistoryPopState)},setHistoryPopState(){const t=this;t.history.paths=et.getPathValues(),t.history.scrollToSlide(t.params.speed,t.history.paths.value,!1)},getPathValues(){const t=o.location.pathname.slice(1).split("/").filter((t=>""!==t)),e=t.length;return{key:t[e-2],value:t[e-1]}},setHistory(t,e){const i=this;if(!i.history.initialized||!i.params.history.enabled)return;const a=i.slides.eq(e);let n=et.slugify(a.attr("data-history"));o.location.pathname.includes(t)||(n=`${t}/${n}`);const s=o.history.state;s&&s.value===n||(i.params.history.replaceState?o.history.replaceState({value:n},null,n):o.history.pushState({value:n},null,n))},slugify(t){return t.toString().replace(/\s+/g,"-").replace(/[^\w-]+/g,"").replace(/--+/g,"-").replace(/^-+/,"").replace(/-+$/,"")},scrollToSlide(t,e,i){const a=this;if(e)for(let n=0,s=a.slides.length;n{t.params.autoplay.reverseDirection?t.params.loop?(t.loopFix(),t.slidePrev(t.params.speed,!0,!0),t.emit("autoplay")):t.isBeginning?t.params.autoplay.stopOnLastSlide?t.autoplay.stop():(t.slideTo(t.slides.length-1,t.params.speed,!0,!0),t.emit("autoplay")):(t.slidePrev(t.params.speed,!0,!0),t.emit("autoplay")):t.params.loop?(t.loopFix(),t.slideNext(t.params.speed,!0,!0),t.emit("autoplay")):t.isEnd?t.params.autoplay.stopOnLastSlide?t.autoplay.stop():(t.slideTo(0,t.params.speed,!0,!0),t.emit("autoplay")):(t.slideNext(t.params.speed,!0,!0),t.emit("autoplay")),t.params.cssMode&&t.autoplay.running&&t.autoplay.run()}),i)},start(){const t=this;return void 0===t.autoplay.timeout&&!t.autoplay.running&&(t.autoplay.running=!0,t.emit("autoplayStart"),t.autoplay.run(),!0)},stop(){const t=this;return!!t.autoplay.running&&void 0!==t.autoplay.timeout&&(t.autoplay.timeout&&(clearTimeout(t.autoplay.timeout),t.autoplay.timeout=void 0),t.autoplay.running=!1,t.emit("autoplayStop"),!0)},pause(t){const e=this;e.autoplay.running&&(e.autoplay.paused||(e.autoplay.timeout&&clearTimeout(e.autoplay.timeout),e.autoplay.paused=!0,0!==t&&e.params.autoplay.waitForTransition?(e.$wrapperEl[0].addEventListener("transitionend",e.autoplay.onTransitionEnd),e.$wrapperEl[0].addEventListener("webkitTransitionEnd",e.autoplay.onTransitionEnd)):(e.autoplay.paused=!1,e.autoplay.run())))}},nt={setTranslate(){const t=this,{slides:e}=t;for(let i=0;i{if(t)return;if(!e||e.destroyed)return;t=!0,e.animating=!1;const i=["webkitTransitionEnd","transitionend"];for(let t=0;t'),i.append(u)),u.css({height:`${n}px`})):(u=e.find(".swiper-cube-shadow"),0===u.length&&(u=c('
'),e.append(u))));for(let t=0;t-1&&(p=90*i+90*u,r&&(p=90*-i-90*u)),e.transform(m),l.slideShadows){let t=d?e.find(".swiper-slide-shadow-left"):e.find(".swiper-slide-shadow-top"),i=d?e.find(".swiper-slide-shadow-right"):e.find(".swiper-slide-shadow-bottom");0===t.length&&(t=c(`
`),e.append(t)),0===i.length&&(i=c(`
`),e.append(i)),t.length&&(t[0].style.opacity=Math.max(-u,0)),i.length&&(i[0].style.opacity=Math.max(u,0))}}if(i.css({"-webkit-transform-origin":`50% 50% -${o/2}px`,"-moz-transform-origin":`50% 50% -${o/2}px`,"-ms-transform-origin":`50% 50% -${o/2}px`,"transform-origin":`50% 50% -${o/2}px`}),l.shadow)if(d)u.transform(`translate3d(0px, ${n/2+l.shadowOffset}px, ${-n/2}px) rotateX(90deg) rotateZ(0deg) scale(${l.shadowScale})`);else{const t=Math.abs(p)-90*Math.floor(Math.abs(p)/90),e=1.5-(Math.sin(2*t*Math.PI/360)/2+Math.cos(2*t*Math.PI/360)/2),i=l.shadowScale,a=l.shadowScale/e,n=l.shadowOffset;u.transform(`scale3d(${i}, 1, ${a}) translate3d(0px, ${s/2+n}px, ${-s/2/a}px) rotateX(-90deg)`)}const f=N.isSafari||N.isWebView?-o/2:0;i.transform(`translate3d(0px,0,${f}px) rotateX(${t.isHorizontal()?0:p}deg) rotateY(${t.isHorizontal()?-p:0}deg)`)},setTransition(t){const e=this,{$el:i,slides:a}=e;a.transition(t).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(t),e.params.cubeEffect.shadow&&!e.isHorizontal()&&i.find(".swiper-cube-shadow").transition(t)}},rt={setTranslate(){const t=this,{slides:e,rtlTranslate:i}=t;for(let a=0;a`),n.append(e)),0===i.length&&(i=c(`
`),n.append(i)),e.length&&(e[0].style.opacity=Math.max(-s,0)),i.length&&(i[0].style.opacity=Math.max(s,0))}n.transform(`translate3d(${l}px, ${d}px, 0px) rotateX(${o}deg) rotateY(${r}deg)`)}},setTransition(t){const e=this,{slides:i,activeIndex:a,$wrapperEl:n}=e;if(i.transition(t).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(t),e.params.virtualTranslate&&0!==t){let t=!1;i.eq(a).transitionEnd((function(){if(t)return;if(!e||e.destroyed)return;t=!0,e.animating=!1;const i=["webkitTransitionEnd","transitionend"];for(let t=0;t`),e.append(t)),0===i.length&&(i=c(`
`),e.append(i)),t.length&&(t[0].style.opacity=n>0?n:0),i.length&&(i[0].style.opacity=-n>0?-n:0)}}(p.pointerEvents||p.prefixedPointerEvents)&&(n[0].style.perspectiveOrigin=`${d}px 50%`)},setTransition(t){this.slides.transition(t).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(t)}},lt={init(){const t=this,{thumbs:e}=t.params,i=t.constructor;e.swiper instanceof i?(t.thumbs.swiper=e.swiper,u.extend(t.thumbs.swiper.originalParams,{watchSlidesProgress:!0,slideToClickedSlide:!1}),u.extend(t.thumbs.swiper.params,{watchSlidesProgress:!0,slideToClickedSlide:!1})):u.isObject(e.swiper)&&(t.thumbs.swiper=new i(u.extend({},e.swiper,{watchSlidesVisibility:!0,watchSlidesProgress:!0,slideToClickedSlide:!1})),t.thumbs.swiperCreated=!0),t.thumbs.swiper.$el.addClass(t.params.thumbs.thumbsContainerClass),t.thumbs.swiper.on("tap",t.thumbs.onThumbClick)},onThumbClick(){const t=this,e=t.thumbs.swiper;if(!e)return;const i=e.clickedIndex,a=e.clickedSlide;if(a&&c(a).hasClass(t.params.thumbs.slideThumbActiveClass))return;if(null==i)return;let n;if(n=e.params.loop?parseInt(c(e.clickedSlide).attr("data-swiper-slide-index"),10):i,t.params.loop){let e=t.activeIndex;t.slides.eq(e).hasClass(t.params.slideDuplicateClass)&&(t.loopFix(),t._clientLeft=t.$wrapperEl[0].clientLeft,e=t.activeIndex);const i=t.slides.eq(e).prevAll(`[data-swiper-slide-index="${n}"]`).eq(0).index(),a=t.slides.eq(e).nextAll(`[data-swiper-slide-index="${n}"]`).eq(0).index();n=void 0===i?a:void 0===a?i:a-ee.previousIndex?"next":"prev"}else r=e.realIndex,o=r>e.previousIndex?"next":"prev";s&&(r+="next"===o?n:-1*n),i.visibleSlidesIndexes&&i.visibleSlidesIndexes.indexOf(r)<0&&(i.params.centeredSlides?r=r>l?r-Math.floor(a/2)+1:r+Math.floor(a/2)-1:r>l&&(r=r-a+1),i.slideTo(r,t?0:void 0))}let r=1;const o=e.params.thumbs.slideThumbActiveClass;if(e.params.slidesPerView>1&&!e.params.centeredSlides&&(r=e.params.slidesPerView),e.params.thumbs.multipleActiveThumbs||(r=1),r=Math.floor(r),i.slides.removeClass(o),i.params.loop||i.params.virtual&&i.params.virtual.enabled)for(let t=0;tt,formatFractionTotal:t=>t,bulletClass:"swiper-pagination-bullet",bulletActiveClass:"swiper-pagination-bullet-active",modifierClass:"swiper-pagination-",currentClass:"swiper-pagination-current",totalClass:"swiper-pagination-total",hiddenClass:"swiper-pagination-hidden",progressbarFillClass:"swiper-pagination-progressbar-fill",progressbarOppositeClass:"swiper-pagination-progressbar-opposite",clickableClass:"swiper-pagination-clickable",lockClass:"swiper-pagination-lock"}},create(){const t=this;u.extend(t,{pagination:{init:G.init.bind(t),render:G.render.bind(t),update:G.update.bind(t),destroy:G.destroy.bind(t),dynamicBulletIndex:0}})},on:{init(){const t=this;t.pagination.init(),t.pagination.render(),t.pagination.update()},activeIndexChange(){const t=this;(t.params.loop||void 0===t.snapIndex)&&t.pagination.update()},snapIndexChange(){this.params.loop||this.pagination.update()},slidesLengthChange(){const t=this;t.params.loop&&(t.pagination.render(),t.pagination.update())},snapGridLengthChange(){const t=this;t.params.loop||(t.pagination.render(),t.pagination.update())},destroy(){this.pagination.destroy()},click(t){const e=this;e.params.pagination.el&&e.params.pagination.hideOnClick&&e.pagination.$el.length>0&&!c(t.target).hasClass(e.params.pagination.bulletClass)&&(!0===e.pagination.$el.hasClass(e.params.pagination.hiddenClass)?e.emit("paginationShow",e):e.emit("paginationHide",e),e.pagination.$el.toggleClass(e.params.pagination.hiddenClass))}}},{name:"scrollbar",params:{scrollbar:{el:null,dragSize:"auto",hide:!1,draggable:!1,snapOnRelease:!0,lockClass:"swiper-scrollbar-lock",dragClass:"swiper-scrollbar-drag"}},create(){const t=this;u.extend(t,{scrollbar:{init:U.init.bind(t),destroy:U.destroy.bind(t),updateSize:U.updateSize.bind(t),setTranslate:U.setTranslate.bind(t),setTransition:U.setTransition.bind(t),enableDraggable:U.enableDraggable.bind(t),disableDraggable:U.disableDraggable.bind(t),setDragPosition:U.setDragPosition.bind(t),getPointerPosition:U.getPointerPosition.bind(t),onDragStart:U.onDragStart.bind(t),onDragMove:U.onDragMove.bind(t),onDragEnd:U.onDragEnd.bind(t),isTouched:!1,timeout:null,dragTimeout:null}})},on:{init(){const t=this;t.scrollbar.init(),t.scrollbar.updateSize(),t.scrollbar.setTranslate()},update(){this.scrollbar.updateSize()},resize(){this.scrollbar.updateSize()},observerUpdate(){this.scrollbar.updateSize()},setTranslate(){this.scrollbar.setTranslate()},setTransition(t){this.scrollbar.setTransition(t)},destroy(){this.scrollbar.destroy()}}},{name:"parallax",params:{parallax:{enabled:!1}},create(){const t=this;u.extend(t,{parallax:{setTransform:q.setTransform.bind(t),setTranslate:q.setTranslate.bind(t),setTransition:q.setTransition.bind(t)}})},on:{beforeInit(){const t=this;t.params.parallax.enabled&&(t.params.watchSlidesProgress=!0,t.originalParams.watchSlidesProgress=!0)},init(){this.params.parallax.enabled&&this.parallax.setTranslate()},setTranslate(){this.params.parallax.enabled&&this.parallax.setTranslate()},setTransition(t){this.params.parallax.enabled&&this.parallax.setTransition(t)}}},{name:"zoom",params:{zoom:{enabled:!1,maxRatio:3,minRatio:1,toggle:!0,containerClass:"swiper-zoom-container",zoomedSlideClass:"swiper-slide-zoomed"}},create(){const t=this,e={enabled:!1,scale:1,currentScale:1,isScaling:!1,gesture:{$slideEl:void 0,slideWidth:void 0,slideHeight:void 0,$imageEl:void 0,$imageWrapEl:void 0,maxRatio:3},image:{isTouched:void 0,isMoved:void 0,currentX:void 0,currentY:void 0,minX:void 0,minY:void 0,maxX:void 0,maxY:void 0,width:void 0,height:void 0,startX:void 0,startY:void 0,touchesStart:{},touchesCurrent:{}},velocity:{x:void 0,y:void 0,prevPositionX:void 0,prevPositionY:void 0,prevTime:void 0}};"onGestureStart onGestureChange onGestureEnd onTouchStart onTouchMove onTouchEnd onTransitionEnd toggle enable disable in out".split(" ").forEach((i=>{e[i]=Z[i].bind(t)})),u.extend(t,{zoom:e});let i=1;Object.defineProperty(t.zoom,"scale",{get(){return i},set(e){if(i!==e){const i=t.zoom.gesture.$imageEl?t.zoom.gesture.$imageEl[0]:void 0,a=t.zoom.gesture.$slideEl?t.zoom.gesture.$slideEl[0]:void 0;t.emit("zoomChange",e,i,a)}i=e}})},on:{init(){this.params.zoom.enabled&&this.zoom.enable()},destroy(){this.zoom.disable()},touchStart(t){this.zoom.enabled&&this.zoom.onTouchStart(t)},touchEnd(t){this.zoom.enabled&&this.zoom.onTouchEnd(t)},doubleTap(t){const e=this;e.params.zoom.enabled&&e.zoom.enabled&&e.params.zoom.toggle&&e.zoom.toggle(t)},transitionEnd(){const t=this;t.zoom.enabled&&t.params.zoom.enabled&&t.zoom.onTransitionEnd()},slideChange(){const t=this;t.zoom.enabled&&t.params.zoom.enabled&&t.params.cssMode&&t.zoom.onTransitionEnd()}}},{name:"lazy",params:{lazy:{enabled:!1,loadPrevNext:!1,loadPrevNextAmount:1,loadOnTransitionStart:!1,elementClass:"swiper-lazy",loadingClass:"swiper-lazy-loading",loadedClass:"swiper-lazy-loaded",preloaderClass:"swiper-lazy-preloader"}},create(){const t=this;u.extend(t,{lazy:{initialImageLoaded:!1,load:Q.load.bind(t),loadInSlide:Q.loadInSlide.bind(t)}})},on:{beforeInit(){const t=this;t.params.lazy.enabled&&t.params.preloadImages&&(t.params.preloadImages=!1)},init(){const t=this;t.params.lazy.enabled&&!t.params.loop&&0===t.params.initialSlide&&t.lazy.load()},scroll(){const t=this;t.params.freeMode&&!t.params.freeModeSticky&&t.lazy.load()},resize(){this.params.lazy.enabled&&this.lazy.load()},scrollbarDragMove(){this.params.lazy.enabled&&this.lazy.load()},transitionStart(){const t=this;t.params.lazy.enabled&&(t.params.lazy.loadOnTransitionStart||!t.params.lazy.loadOnTransitionStart&&!t.lazy.initialImageLoaded)&&t.lazy.load()},transitionEnd(){const t=this;t.params.lazy.enabled&&!t.params.lazy.loadOnTransitionStart&&t.lazy.load()},slideChange(){const t=this;t.params.lazy.enabled&&t.params.cssMode&&t.lazy.load()}}},J,{name:"a11y",params:{a11y:{enabled:!0,notificationClass:"swiper-notification",prevSlideMessage:"Previous slide",nextSlideMessage:"Next slide",firstSlideMessage:"This is the first slide",lastSlideMessage:"This is the last slide",paginationBulletMessage:"Go to slide {{index}}"}},create(){const t=this;u.extend(t,{a11y:{liveRegion:c(``)}}),Object.keys(tt).forEach((e=>{t.a11y[e]=tt[e].bind(t)}))},on:{init(){const t=this;t.params.a11y.enabled&&(t.a11y.init(),t.a11y.updateNavigation())},toEdge(){this.params.a11y.enabled&&this.a11y.updateNavigation()},fromEdge(){this.params.a11y.enabled&&this.a11y.updateNavigation()},paginationUpdate(){this.params.a11y.enabled&&this.a11y.updatePagination()},destroy(){this.params.a11y.enabled&&this.a11y.destroy()}}},{name:"history",params:{history:{enabled:!1,replaceState:!1,key:"slides"}},create(){const t=this;u.extend(t,{history:{init:et.init.bind(t),setHistory:et.setHistory.bind(t),setHistoryPopState:et.setHistoryPopState.bind(t),scrollToSlide:et.scrollToSlide.bind(t),destroy:et.destroy.bind(t)}})},on:{init(){this.params.history.enabled&&this.history.init()},destroy(){this.params.history.enabled&&this.history.destroy()},transitionEnd(){const t=this;t.history.initialized&&t.history.setHistory(t.params.history.key,t.activeIndex)},slideChange(){const t=this;t.history.initialized&&t.params.cssMode&&t.history.setHistory(t.params.history.key,t.activeIndex)}}},{name:"hash-navigation",params:{hashNavigation:{enabled:!1,replaceState:!1,watchState:!1}},create(){const t=this;u.extend(t,{hashNavigation:{initialized:!1,init:it.init.bind(t),destroy:it.destroy.bind(t),setHash:it.setHash.bind(t),onHashCange:it.onHashCange.bind(t)}})},on:{init(){this.params.hashNavigation.enabled&&this.hashNavigation.init()},destroy(){this.params.hashNavigation.enabled&&this.hashNavigation.destroy()},transitionEnd(){this.hashNavigation.initialized&&this.hashNavigation.setHash()},slideChange(){const t=this;t.hashNavigation.initialized&&t.params.cssMode&&t.hashNavigation.setHash()}}},{name:"autoplay",params:{autoplay:{enabled:!1,delay:3e3,waitForTransition:!0,disableOnInteraction:!0,stopOnLastSlide:!1,reverseDirection:!1}},create(){const t=this;u.extend(t,{autoplay:{running:!1,paused:!1,run:at.run.bind(t),start:at.start.bind(t),stop:at.stop.bind(t),pause:at.pause.bind(t),onVisibilityChange(){"hidden"===document.visibilityState&&t.autoplay.running&&t.autoplay.pause(),"visible"===document.visibilityState&&t.autoplay.paused&&(t.autoplay.run(),t.autoplay.paused=!1)},onTransitionEnd(e){t&&!t.destroyed&&t.$wrapperEl&&e.target===this&&(t.$wrapperEl[0].removeEventListener("transitionend",t.autoplay.onTransitionEnd),t.$wrapperEl[0].removeEventListener("webkitTransitionEnd",t.autoplay.onTransitionEnd),t.autoplay.paused=!1,t.autoplay.running?t.autoplay.run():t.autoplay.stop())}}})},on:{init(){const t=this;t.params.autoplay.enabled&&(t.autoplay.start(),document.addEventListener("visibilitychange",t.autoplay.onVisibilityChange))},beforeTransitionStart(t,e){const i=this;i.autoplay.running&&(e||!i.params.autoplay.disableOnInteraction?i.autoplay.pause(t):i.autoplay.stop())},sliderFirstMove(){const t=this;t.autoplay.running&&(t.params.autoplay.disableOnInteraction?t.autoplay.stop():t.autoplay.pause())},touchEnd(){const t=this;t.params.cssMode&&t.autoplay.paused&&!t.params.autoplay.disableOnInteraction&&t.autoplay.run()},destroy(){const t=this;t.autoplay.running&&t.autoplay.stop(),document.removeEventListener("visibilitychange",t.autoplay.onVisibilityChange)}}},{name:"effect-fade",params:{fadeEffect:{crossFade:!1}},create(){const t=this;u.extend(t,{fadeEffect:{setTranslate:nt.setTranslate.bind(t),setTransition:nt.setTransition.bind(t)}})},on:{beforeInit(){const t=this;if("fade"!==t.params.effect)return;t.classNames.push(`${t.params.containerModifierClass}fade`);const e={slidesPerView:1,slidesPerColumn:1,slidesPerGroup:1,watchSlidesProgress:!0,spaceBetween:0,virtualTranslate:!0};u.extend(t.params,e),u.extend(t.originalParams,e)},setTranslate(){"fade"===this.params.effect&&this.fadeEffect.setTranslate()},setTransition(t){"fade"===this.params.effect&&this.fadeEffect.setTransition(t)}}},{name:"effect-cube",params:{cubeEffect:{slideShadows:!0,shadow:!0,shadowOffset:20,shadowScale:.94}},create(){const t=this;u.extend(t,{cubeEffect:{setTranslate:st.setTranslate.bind(t),setTransition:st.setTransition.bind(t)}})},on:{beforeInit(){const t=this;if("cube"!==t.params.effect)return;t.classNames.push(`${t.params.containerModifierClass}cube`),t.classNames.push(`${t.params.containerModifierClass}3d`);const e={slidesPerView:1,slidesPerColumn:1,slidesPerGroup:1,watchSlidesProgress:!0,resistanceRatio:0,spaceBetween:0,centeredSlides:!1,virtualTranslate:!0};u.extend(t.params,e),u.extend(t.originalParams,e)},setTranslate(){"cube"===this.params.effect&&this.cubeEffect.setTranslate()},setTransition(t){"cube"===this.params.effect&&this.cubeEffect.setTransition(t)}}},{name:"effect-flip",params:{flipEffect:{slideShadows:!0,limitRotation:!0}},create(){const t=this;u.extend(t,{flipEffect:{setTranslate:rt.setTranslate.bind(t),setTransition:rt.setTransition.bind(t)}})},on:{beforeInit(){const t=this;if("flip"!==t.params.effect)return;t.classNames.push(`${t.params.containerModifierClass}flip`),t.classNames.push(`${t.params.containerModifierClass}3d`);const e={slidesPerView:1,slidesPerColumn:1,slidesPerGroup:1,watchSlidesProgress:!0,spaceBetween:0,virtualTranslate:!0};u.extend(t.params,e),u.extend(t.originalParams,e)},setTranslate(){"flip"===this.params.effect&&this.flipEffect.setTranslate()},setTransition(t){"flip"===this.params.effect&&this.flipEffect.setTransition(t)}}},{name:"effect-coverflow",params:{coverflowEffect:{rotate:50,stretch:0,depth:100,scale:1,modifier:1,slideShadows:!0}},create(){const t=this;u.extend(t,{coverflowEffect:{setTranslate:ot.setTranslate.bind(t),setTransition:ot.setTransition.bind(t)}})},on:{beforeInit(){const t=this;"coverflow"===t.params.effect&&(t.classNames.push(`${t.params.containerModifierClass}coverflow`),t.classNames.push(`${t.params.containerModifierClass}3d`),t.params.watchSlidesProgress=!0,t.originalParams.watchSlidesProgress=!0)},setTranslate(){"coverflow"===this.params.effect&&this.coverflowEffect.setTranslate()},setTransition(t){"coverflow"===this.params.effect&&this.coverflowEffect.setTransition(t)}}},{name:"thumbs",params:{thumbs:{swiper:null,multipleActiveThumbs:!0,autoScrollOffset:0,slideThumbActiveClass:"swiper-slide-thumb-active",thumbsContainerClass:"swiper-container-thumbs"}},create(){const t=this;u.extend(t,{thumbs:{swiper:null,init:lt.init.bind(t),update:lt.update.bind(t),onThumbClick:lt.onThumbClick.bind(t)}})},on:{beforeInit(){const t=this,{thumbs:e}=t.params;e&&e.swiper&&(t.thumbs.init(),t.thumbs.update(!0))},slideChange(){this.thumbs.swiper&&this.thumbs.update()},update(){this.thumbs.swiper&&this.thumbs.update()},resize(){this.thumbs.swiper&&this.thumbs.update()},observerUpdate(){this.thumbs.swiper&&this.thumbs.update()},setTransition(t){const e=this.thumbs.swiper;e&&e.setTransition(t)},beforeDestroy(){const t=this.thumbs.swiper;t&&this.thumbs.swiperCreated&&t&&t.destroy()}}}];void 0===_.use&&(_.use=_.Class.use,_.installModule=_.Class.installModule),_.use(ct);var dt=_},8197:function(t,e,i){t.exports=function(t){"use strict";function e(t){return e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},e(t)}t=t&&t.hasOwnProperty("default")?t.default:t;var i={props:{options:{type:Object},type:{type:String},series:{type:Array,required:!0,default:function(){return[]}},width:{default:"100%"},height:{default:"auto"}},data:function(){return{chart:null}},beforeMount:function(){window.ApexCharts=t},mounted:function(){this.init()},created:function(){var t=this;this.$watch("options",(function(e){!t.chart&&e?t.init():t.chart.updateOptions(t.options)})),this.$watch("series",(function(e){!t.chart&&e?t.init():t.chart.updateSeries(t.series)})),["type","width","height"].forEach((function(e){t.$watch(e,(function(){t.refresh()}))}))},beforeDestroy:function(){this.chart&&this.destroy()},render:function(t){return t("div")},methods:{init:function(){var e=this,i={chart:{type:this.type||this.options.chart.type||"line",height:this.height,width:this.width,events:{}},series:this.series};Object.keys(this.$listeners).forEach((function(t){i.chart.events[t]=e.$listeners[t]}));var a=this.extend(this.options,i);return this.chart=new t(this.$el,a),this.chart.render()},isObject:function(t){return t&&"object"===e(t)&&!Array.isArray(t)&&null!=t},extend:function(t,e){var i=this;"function"!=typeof Object.assign&&(Object.assign=function(t){if(null==t)throw new TypeError("Cannot convert undefined or null to object");for(var e=Object(t),i=1;ii.parts.length&&(a.parts.length=i.parts.length)}else{var r=[];for(n=0;ni&&(i=s)}return{min:e,max:i}},fullPriceLabel:function(){var t=this.priceRange,e=t.min,i=t.max;return e!==i?"".concat(this.priceLabel(e),"–").concat(this.priceLabel(i)):this.priceLabel(e)}}),methods:{priceLabel:function(t){return t>0?this.$options.filters.currency(t):Craft.t("app","Free")}}},x=m,b=(i(3106),u(x,(function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.plugin?i("router-link",{staticClass:"plugin-card tw-relative tw-flex tw-flex-no-wrap tw-items-start tw-py-6 tw-border-b tw-border-gray-200 tw-border-solid tw-no-underline hover:tw-no-underline tw-text-gray-900",attrs:{to:"/"+t.plugin.handle,title:t.plugin.name}},[i("div",{staticClass:"plugin-icon tw-mr-4 tw-w-16 tw-shrink-0"},[t.plugin.iconUrl?[i("img",{staticClass:"tw-w-16 tw-h-16",attrs:{src:t.plugin.iconUrl}})]:[i("div",{staticClass:"tw-bg-gray-100 tw-w-16 tw-h-16 tw-flex tw-items-center tw-justify-center tw-rounded-full"},[i("c-icon",{staticClass:"tw-w-7 tw-h-7 tw-text-gray-400",attrs:{icon:"plug"}})],1)]],2),t._v(" "),i("div",[i("div",{staticClass:"plugin-details-header"},[i("div",{staticClass:"plugin-name tw-flex tw-items-center"},[i("strong",[t._v(t._s(t.plugin.name))]),t._v(" "),t.trialMode&&t.activeTrialPluginEdition&&t.plugin.editions.length>1?i("edition-badge",{attrs:{name:t.activeTrialPluginEdition.name}}):t._e()],1),t._v(" "),i("div",[t._v(t._s(t.plugin.shortDescription))])]),t._v(" "),t.plugin.abandoned?[i("div",{staticClass:"error"},[t._v(t._s(t._f("t")("Abandoned","app")))])]:[i("div",{staticClass:"light"},[t._v("\n "+t._s(t.fullPriceLabel)+"\n ")])],t._v(" "),t.isPluginInstalled(t.plugin.handle)?i("div",{staticClass:"installed",attrs:{"data-icon":"check"}}):t._e()],2)]):t._e()}),[],!1,null,"28e904f0",null)),y=u({components:{PluginCard:b.exports},props:["plugins","trialMode","autoLimit"],data:function(){return{winWidth:null}},computed:{computedPlugins:function(){var t=this;return this.plugins.filter((function(e,i){return!(t.autoLimit&&!(t.autoLimit&&i1536?8:6}},methods:{onWindowResize:function(){this.winWidth=window.innerWidth}},mounted:function(){this.winWidth=window.innerWidth,this.$root.$on("windowResize",this.onWindowResize)},beforeDestroy:function(){this.$root.$off("windowResize",this.onWindowResize)}},(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",[t.plugins&&t.plugins.length>0?i("div",{staticClass:"tw-grid-plugins tw-grid tw-grid-cols-1 sm:tw-grid-cols-2 xl:tw-grid-cols-3 2xl:tw-grid-cols-4 tw-gap-x-8"},t._l(t.computedPlugins,(function(e,a){return i("div",{key:a,staticClass:"tw-grid-box sm:tw-flex"},[i("plugin-card",{staticClass:"sm:tw-flex-1",attrs:{plugin:e,trialMode:t.trialMode}})],1)})),0):t._e()])}),[],!1,null,null,null).exports;function w(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function C(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}var S={components:{PluginGrid:y},data:function(){return{activeTrialsError:null,activeTrialsLoaded:!1,featuredSectionsLoaded:!1,loading:!1}},computed:function(t){for(var e=1;e0}},[i("h2",[t._v(t._s(e.title))]),t._v(" "),i("router-link",{staticClass:"tw-right",attrs:{to:"/featured/"+e.slug}},[t._v(t._s(t._f("t")("See all","app"))+"\n ")])],1),t._v(" "),i("plugin-grid",{attrs:{plugins:e.plugins,"auto-limit":!0}})],1)})),t._v(" "),t.activeTrialPlugins.length>0||t.activeTrialsError?[i("h2",[t._v(t._s(t._f("t")("Active Trials","app")))]),t._v(" "),t.activeTrialPlugins.length>0?[i("plugin-grid",{attrs:{plugins:t.activeTrialPlugins,trialMode:!0}})]:t._e(),t._v(" "),t.activeTrialsError?[i("div",{staticClass:"tw-mb-8"},[i("p",{staticClass:"error"},[t._v(t._s(t.activeTrialsError))])])]:t._e()]:t._e()]],2)}),[],!1,null,null,null).exports;function A(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function P(t){for(var e=1;e0?this.loading=!0:this.loadingBottom=!0):this.loadingBottom=!0,void this.$store.dispatch(this.action,L(L({},this.requestActionData),{},{appendData:!t})).then((function(t){if(t&&t.error)throw t.error;i.loading=!1,i.loadingBottom=!1,t.currentPage=975?"view":"window"},viewHasScrollbar:function(){var t=this.scrollContainer();return t.clientHeight=0)return 1;return 0}(),V=B&&window.Promise?function(t){var e=!1;return function(){e||(e=!0,window.Promise.resolve().then((function(){e=!1,t()})))}}:function(t){var e=!1;return function(){e||(e=!0,setTimeout((function(){e=!1,t()}),W))}};function G(t){return t&&"[object Function]"==={}.toString.call(t)}function U(t,e){if(1!==t.nodeType)return[];var i=t.ownerDocument.defaultView.getComputedStyle(t,null);return e?i[e]:i}function q(t){return"HTML"===t.nodeName?t:t.parentNode||t.host}function Z(t){if(!t)return document.body;switch(t.nodeName){case"HTML":case"BODY":return t.ownerDocument.body;case"#document":return t.body}var e=U(t),i=e.overflow,a=e.overflowX,n=e.overflowY;return/(auto|scroll|overlay)/.test(i+n+a)?t:Z(q(t))}function Q(t){return t&&t.referenceNode?t.referenceNode:t}var K=B&&!(!window.MSInputMethodContext||!document.documentMode),J=B&&/MSIE 10/.test(navigator.userAgent);function tt(t){return 11===t?K:10===t?J:K||J}function et(t){if(!t)return document.documentElement;for(var e=tt(10)?document.body:null,i=t.offsetParent||null;i===e&&t.nextElementSibling;)i=(t=t.nextElementSibling).offsetParent;var a=i&&i.nodeName;return a&&"BODY"!==a&&"HTML"!==a?-1!==["TH","TD","TABLE"].indexOf(i.nodeName)&&"static"===U(i,"position")?et(i):i:t?t.ownerDocument.documentElement:document.documentElement}function it(t){return null!==t.parentNode?it(t.parentNode):t}function at(t,e){if(!(t&&t.nodeType&&e&&e.nodeType))return document.documentElement;var i=t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_FOLLOWING,a=i?t:e,n=i?e:t,s=document.createRange();s.setStart(a,0),s.setEnd(n,0);var r,o,l=s.commonAncestorContainer;if(t!==l&&e!==l||a.contains(n))return"BODY"===(o=(r=l).nodeName)||"HTML"!==o&&et(r.firstElementChild)!==r?et(l):l;var c=it(t);return c.host?at(c.host,e):at(t,it(e).host)}function nt(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"top",i="top"===e?"scrollTop":"scrollLeft",a=t.nodeName;if("BODY"===a||"HTML"===a){var n=t.ownerDocument.documentElement,s=t.ownerDocument.scrollingElement||n;return s[i]}return t[i]}function st(t,e){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],a=nt(e,"top"),n=nt(e,"left"),s=i?-1:1;return t.top+=a*s,t.bottom+=a*s,t.left+=n*s,t.right+=n*s,t}function rt(t,e){var i="x"===e?"Left":"Top",a="Left"===i?"Right":"Bottom";return parseFloat(t["border"+i+"Width"])+parseFloat(t["border"+a+"Width"])}function ot(t,e,i,a){return Math.max(e["offset"+t],e["scroll"+t],i["client"+t],i["offset"+t],i["scroll"+t],tt(10)?parseInt(i["offset"+t])+parseInt(a["margin"+("Height"===t?"Top":"Left")])+parseInt(a["margin"+("Height"===t?"Bottom":"Right")]):0)}function lt(t){var e=t.body,i=t.documentElement,a=tt(10)&&getComputedStyle(i);return{height:ot("Height",e,i,a),width:ot("Width",e,i,a)}}var ct=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},dt=function(){function t(t,e){for(var i=0;i2&&void 0!==arguments[2]&&arguments[2],a=tt(10),n="HTML"===e.nodeName,s=ft(t),r=ft(e),o=Z(t),l=U(e),c=parseFloat(l.borderTopWidth),d=parseFloat(l.borderLeftWidth);i&&n&&(r.top=Math.max(r.top,0),r.left=Math.max(r.left,0));var h=pt({top:s.top-r.top-c,left:s.left-r.left-d,width:s.width,height:s.height});if(h.marginTop=0,h.marginLeft=0,!a&&n){var u=parseFloat(l.marginTop),p=parseFloat(l.marginLeft);h.top-=c-u,h.bottom-=c-u,h.left-=d-p,h.right-=d-p,h.marginTop=u,h.marginLeft=p}return(a&&!i?e.contains(o):e===o&&"BODY"!==o.nodeName)&&(h=st(h,e)),h}function vt(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=t.ownerDocument.documentElement,a=gt(t,i),n=Math.max(i.clientWidth,window.innerWidth||0),s=Math.max(i.clientHeight,window.innerHeight||0),r=e?0:nt(i),o=e?0:nt(i,"left"),l={top:r-a.top+a.marginTop,left:o-a.left+a.marginLeft,width:n,height:s};return pt(l)}function mt(t){var e=t.nodeName;if("BODY"===e||"HTML"===e)return!1;if("fixed"===U(t,"position"))return!0;var i=q(t);return!!i&&mt(i)}function xt(t){if(!t||!t.parentElement||tt())return document.documentElement;for(var e=t.parentElement;e&&"none"===U(e,"transform");)e=e.parentElement;return e||document.documentElement}function bt(t,e,i,a){var n=arguments.length>4&&void 0!==arguments[4]&&arguments[4],s={top:0,left:0},r=n?xt(t):at(t,Q(e));if("viewport"===a)s=vt(r,n);else{var o=void 0;"scrollParent"===a?"BODY"===(o=Z(q(e))).nodeName&&(o=t.ownerDocument.documentElement):o="window"===a?t.ownerDocument.documentElement:a;var l=gt(o,r,n);if("HTML"!==o.nodeName||mt(r))s=l;else{var c=lt(t.ownerDocument),d=c.height,h=c.width;s.top+=l.top-l.marginTop,s.bottom=d+l.top,s.left+=l.left-l.marginLeft,s.right=h+l.left}}var u="number"==typeof(i=i||0);return s.left+=u?i:i.left||0,s.top+=u?i:i.top||0,s.right-=u?i:i.right||0,s.bottom-=u?i:i.bottom||0,s}function yt(t){return t.width*t.height}function wt(t,e,i,a,n){var s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;if(-1===t.indexOf("auto"))return t;var r=bt(i,a,s,n),o={top:{width:r.width,height:e.top-r.top},right:{width:r.right-e.right,height:r.height},bottom:{width:r.width,height:r.bottom-e.bottom},left:{width:e.left-r.left,height:r.height}},l=Object.keys(o).map((function(t){return ut({key:t},o[t],{area:yt(o[t])})})).sort((function(t,e){return e.area-t.area})),c=l.filter((function(t){var e=t.width,a=t.height;return e>=i.clientWidth&&a>=i.clientHeight})),d=c.length>0?c[0].key:l[0].key,h=t.split("-")[1];return d+(h?"-"+h:"")}function Ct(t,e,i){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,n=a?xt(e):at(e,Q(i));return gt(i,n,a)}function St(t){var e=t.ownerDocument.defaultView.getComputedStyle(t),i=parseFloat(e.marginTop||0)+parseFloat(e.marginBottom||0),a=parseFloat(e.marginLeft||0)+parseFloat(e.marginRight||0);return{width:t.offsetWidth+a,height:t.offsetHeight+i}}function kt(t){var e={left:"right",right:"left",bottom:"top",top:"bottom"};return t.replace(/left|right|bottom|top/g,(function(t){return e[t]}))}function At(t,e,i){i=i.split("-")[0];var a=St(t),n={width:a.width,height:a.height},s=-1!==["right","left"].indexOf(i),r=s?"top":"left",o=s?"left":"top",l=s?"height":"width",c=s?"width":"height";return n[r]=e[r]+e[l]/2-a[l]/2,n[o]=i===o?e[o]-a[c]:e[kt(o)],n}function Pt(t,e){return Array.prototype.find?t.find(e):t.filter(e)[0]}function Et(t,e,i){return(void 0===i?t:t.slice(0,function(t,e,i){if(Array.prototype.findIndex)return t.findIndex((function(t){return t.name===i}));var a=Pt(t,(function(t){return t.name===i}));return t.indexOf(a)}(t,0,i))).forEach((function(t){t.function&&console.warn("`modifier.function` is deprecated, use `modifier.fn`!");var i=t.function||t.fn;t.enabled&&G(i)&&(e.offsets.popper=pt(e.offsets.popper),e.offsets.reference=pt(e.offsets.reference),e=i(e,t))})),e}function Tt(){if(!this.state.isDestroyed){var t={instance:this,styles:{},arrowStyles:{},attributes:{},flipped:!1,offsets:{}};t.offsets.reference=Ct(this.state,this.popper,this.reference,this.options.positionFixed),t.placement=wt(this.options.placement,t.offsets.reference,this.popper,this.reference,this.options.modifiers.flip.boundariesElement,this.options.modifiers.flip.padding),t.originalPlacement=t.placement,t.positionFixed=this.options.positionFixed,t.offsets.popper=At(this.popper,t.offsets.reference,t.placement),t.offsets.popper.position=this.options.positionFixed?"fixed":"absolute",t=Et(this.modifiers,t),this.state.isCreated?this.options.onUpdate(t):(this.state.isCreated=!0,this.options.onCreate(t))}}function Ot(t,e){return t.some((function(t){var i=t.name;return t.enabled&&i===e}))}function Mt(t){for(var e=[!1,"ms","Webkit","Moz","O"],i=t.charAt(0).toUpperCase()+t.slice(1),a=0;a1&&void 0!==arguments[1]&&arguments[1],i=Ft.indexOf(t),a=Ft.slice(i+1).concat(Ft.slice(0,i));return e?a.reverse():a}var Bt={shift:{order:100,enabled:!0,fn:function(t){var e=t.placement,i=e.split("-")[0],a=e.split("-")[1];if(a){var n=t.offsets,s=n.reference,r=n.popper,o=-1!==["bottom","top"].indexOf(i),l=o?"left":"top",c=o?"width":"height",d={start:ht({},l,s[l]),end:ht({},l,s[l]+s[c]-r[c])};t.offsets.popper=ut({},r,d[a])}return t}},offset:{order:200,enabled:!0,fn:function(t,e){var i,a=e.offset,n=t.placement,s=t.offsets,r=s.popper,o=s.reference,l=n.split("-")[0];return i=$t(+a)?[+a,0]:function(t,e,i,a){var n=[0,0],s=-1!==["right","left"].indexOf(a),r=t.split(/(\+|\-)/).map((function(t){return t.trim()})),o=r.indexOf(Pt(r,(function(t){return-1!==t.search(/,|\s/)})));r[o]&&-1===r[o].indexOf(",")&&console.warn("Offsets separated by white space(s) are deprecated, use a comma (,) instead.");var l=/\s*,\s*|\s+/,c=-1!==o?[r.slice(0,o).concat([r[o].split(l)[0]]),[r[o].split(l)[1]].concat(r.slice(o+1))]:[r];return c=c.map((function(t,a){var n=(1===a?!s:s)?"height":"width",r=!1;return t.reduce((function(t,e){return""===t[t.length-1]&&-1!==["+","-"].indexOf(e)?(t[t.length-1]=e,r=!0,t):r?(t[t.length-1]+=e,r=!1,t):t.concat(e)}),[]).map((function(t){return function(t,e,i,a){var n=t.match(/((?:\-|\+)?\d*\.?\d*)(.*)/),s=+n[1],r=n[2];return s?0===r.indexOf("%")?pt("%p"===r?i:a)[e]/100*s:"vh"===r||"vw"===r?("vh"===r?Math.max(document.documentElement.clientHeight,window.innerHeight||0):Math.max(document.documentElement.clientWidth,window.innerWidth||0))/100*s:s:t}(t,n,e,i)}))})),c.forEach((function(t,e){t.forEach((function(i,a){$t(i)&&(n[e]+=i*("-"===t[a-1]?-1:1))}))})),n}(a,r,o,l),"left"===l?(r.top+=i[0],r.left-=i[1]):"right"===l?(r.top+=i[0],r.left+=i[1]):"top"===l?(r.left+=i[0],r.top-=i[1]):"bottom"===l&&(r.left+=i[0],r.top+=i[1]),t.popper=r,t},offset:0},preventOverflow:{order:300,enabled:!0,fn:function(t,e){var i=e.boundariesElement||et(t.instance.popper);t.instance.reference===i&&(i=et(i));var a=Mt("transform"),n=t.instance.popper.style,s=n.top,r=n.left,o=n[a];n.top="",n.left="",n[a]="";var l=bt(t.instance.popper,t.instance.reference,e.padding,i,t.positionFixed);n.top=s,n.left=r,n[a]=o,e.boundaries=l;var c=e.priority,d=t.offsets.popper,h={primary:function(t){var i=d[t];return d[t]l[t]&&!e.escapeWithReference&&(a=Math.min(d[i],l[t]-("right"===t?d.width:d.height))),ht({},i,a)}};return c.forEach((function(t){var e=-1!==["left","top"].indexOf(t)?"primary":"secondary";d=ut({},d,h[e](t))})),t.offsets.popper=d,t},priority:["left","right","top","bottom"],padding:5,boundariesElement:"scrollParent"},keepTogether:{order:400,enabled:!0,fn:function(t){var e=t.offsets,i=e.popper,a=e.reference,n=t.placement.split("-")[0],s=Math.floor,r=-1!==["top","bottom"].indexOf(n),o=r?"right":"bottom",l=r?"left":"top",c=r?"width":"height";return i[o]s(a[o])&&(t.offsets.popper[l]=s(a[o])),t}},arrow:{order:500,enabled:!0,fn:function(t,e){var i;if(!Xt(t.instance.modifiers,"arrow","keepTogether"))return t;var a=e.element;if("string"==typeof a){if(!(a=t.instance.popper.querySelector(a)))return t}else if(!t.instance.popper.contains(a))return console.warn("WARNING: `arrow.element` must be child of its popper element!"),t;var n=t.placement.split("-")[0],s=t.offsets,r=s.popper,o=s.reference,l=-1!==["left","right"].indexOf(n),c=l?"height":"width",d=l?"Top":"Left",h=d.toLowerCase(),u=l?"left":"top",p=l?"bottom":"right",f=St(a)[c];o[p]-fr[p]&&(t.offsets.popper[h]+=o[h]+f-r[p]),t.offsets.popper=pt(t.offsets.popper);var g=o[h]+o[c]/2-f/2,v=U(t.instance.popper),m=parseFloat(v["margin"+d]),x=parseFloat(v["border"+d+"Width"]),b=g-t.offsets.popper[h]-m-x;return b=Math.max(Math.min(r[c]-f,b),0),t.arrowElement=a,t.offsets.arrow=(ht(i={},h,Math.round(b)),ht(i,u,""),i),t},element:"[x-arrow]"},flip:{order:600,enabled:!0,fn:function(t,e){if(Ot(t.instance.modifiers,"inner"))return t;if(t.flipped&&t.placement===t.originalPlacement)return t;var i=bt(t.instance.popper,t.instance.reference,e.padding,e.boundariesElement,t.positionFixed),a=t.placement.split("-")[0],n=kt(a),s=t.placement.split("-")[1]||"",r=[];switch(e.behavior){case"flip":r=[a,n];break;case"clockwise":r=Yt(a);break;case"counterclockwise":r=Yt(a,!0);break;default:r=e.behavior}return r.forEach((function(o,l){if(a!==o||r.length===l+1)return t;a=t.placement.split("-")[0],n=kt(a);var c=t.offsets.popper,d=t.offsets.reference,h=Math.floor,u="left"===a&&h(c.right)>h(d.left)||"right"===a&&h(c.left)h(d.top)||"bottom"===a&&h(c.top)h(i.right),g=h(c.top)h(i.bottom),m="left"===a&&p||"right"===a&&f||"top"===a&&g||"bottom"===a&&v,x=-1!==["top","bottom"].indexOf(a),b=!!e.flipVariations&&(x&&"start"===s&&p||x&&"end"===s&&f||!x&&"start"===s&&g||!x&&"end"===s&&v),y=!!e.flipVariationsByContent&&(x&&"start"===s&&f||x&&"end"===s&&p||!x&&"start"===s&&v||!x&&"end"===s&&g),w=b||y;(u||m||w)&&(t.flipped=!0,(u||m)&&(a=r[l+1]),w&&(s=function(t){return"end"===t?"start":"start"===t?"end":t}(s)),t.placement=a+(s?"-"+s:""),t.offsets.popper=ut({},t.offsets.popper,At(t.instance.popper,t.offsets.reference,t.placement)),t=Et(t.instance.modifiers,t,"flip"))})),t},behavior:"flip",padding:5,boundariesElement:"viewport",flipVariations:!1,flipVariationsByContent:!1},inner:{order:700,enabled:!1,fn:function(t){var e=t.placement,i=e.split("-")[0],a=t.offsets,n=a.popper,s=a.reference,r=-1!==["left","right"].indexOf(i),o=-1===["top","left"].indexOf(i);return n[r?"left":"top"]=s[i]-(o?n[r?"width":"height"]:0),t.placement=kt(e),t.offsets.popper=pt(n),t}},hide:{order:800,enabled:!0,fn:function(t){if(!Xt(t.instance.modifiers,"hide","preventOverflow"))return t;var e=t.offsets.reference,i=Pt(t.instance.modifiers,(function(t){return"preventOverflow"===t.name})).boundaries;if(e.bottomi.right||e.top>i.bottom||e.right2&&void 0!==arguments[2]?arguments[2]:{};ct(this,t),this.scheduleUpdate=function(){return requestAnimationFrame(a.update)},this.update=V(this.update.bind(this)),this.options=ut({},t.Defaults,n),this.state={isDestroyed:!1,isCreated:!1,scrollParents:[]},this.reference=e&&e.jquery?e[0]:e,this.popper=i&&i.jquery?i[0]:i,this.options.modifiers={},Object.keys(ut({},t.Defaults.modifiers,n.modifiers)).forEach((function(e){a.options.modifiers[e]=ut({},t.Defaults.modifiers[e]||{},n.modifiers?n.modifiers[e]:{})})),this.modifiers=Object.keys(this.options.modifiers).map((function(t){return ut({name:t},a.options.modifiers[t])})).sort((function(t,e){return t.order-e.order})),this.modifiers.forEach((function(t){t.enabled&&G(t.onLoad)&&t.onLoad(a.reference,a.popper,a.options,t,a.state)})),this.update();var s=this.options.eventsEnabled;s&&this.enableEventListeners(),this.state.eventsEnabled=s}return dt(t,[{key:"update",value:function(){return Tt.call(this)}},{key:"destroy",value:function(){return Lt.call(this)}},{key:"enableEventListeners",value:function(){return zt.call(this)}},{key:"disableEventListeners",value:function(){return Nt.call(this)}}]),t}();Vt.Utils=("undefined"!=typeof window?window:i.g).PopperUtils,Vt.placements=Rt,Vt.Defaults=Wt;var Gt,Ut=Vt,qt=i(2387),Zt=i.n(qt);function Qt(){Qt.init||(Qt.init=!0,Gt=-1!==function(){var t=window.navigator.userAgent,e=t.indexOf("MSIE ");if(e>0)return parseInt(t.substring(e+5,t.indexOf(".",e)),10);if(t.indexOf("Trident/")>0){var i=t.indexOf("rv:");return parseInt(t.substring(i+3,t.indexOf(".",i)),10)}var a=t.indexOf("Edge/");return a>0?parseInt(t.substring(a+5,t.indexOf(".",a)),10):-1}())}function Kt(t,e,i,a,n,s,r,o,l,c){"boolean"!=typeof r&&(l=o,o=r,r=!1);var d,h="function"==typeof i?i.options:i;if(t&&t.render&&(h.render=t.render,h.staticRenderFns=t.staticRenderFns,h._compiled=!0,n&&(h.functional=!0)),a&&(h._scopeId=a),s?(d=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),e&&e.call(this,l(t)),t&&t._registeredComponents&&t._registeredComponents.add(s)},h._ssrRegister=d):e&&(d=r?function(t){e.call(this,c(t,this.$root.$options.shadowRoot))}:function(t){e.call(this,o(t))}),d)if(h.functional){var u=h.render;h.render=function(t,e){return d.call(e),u(t,e)}}else{var p=h.beforeCreate;h.beforeCreate=p?[].concat(p,d):[d]}return i}var Jt={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},mounted:function(){var t=this;Qt(),this.$nextTick((function(){t._w=t.$el.offsetWidth,t._h=t.$el.offsetHeight,t.emitOnMount&&t.emitSize()}));var e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",Gt&&this.$el.appendChild(e),e.data="about:blank",Gt||this.$el.appendChild(e)},beforeDestroy:function(){this.removeResizeHandlers()},methods:{compareAndNotify:function(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize:function(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers:function(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers:function(){this._resizeObject&&this._resizeObject.onload&&(!Gt&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}},te=function(){var t=this.$createElement;return(this._self._c||t)("div",{staticClass:"resize-observer",attrs:{tabindex:"-1"}})};te._withStripped=!0;var ee=Kt({render:te,staticRenderFns:[]},void 0,Jt,"data-v-8859cc6c",!1,void 0,!1,void 0,void 0,void 0),ie={version:"1.0.1",install:function(t){t.component("resize-observer",ee),t.component("ResizeObserver",ee)}},ae=null;"undefined"!=typeof window?ae=window.Vue:void 0!==i.g&&(ae=i.g.Vue),ae&&ae.use(ie);var ne=i(3079),se=i.n(ne),re=function(){};function oe(t){return"string"==typeof t&&(t=t.split(" ")),t}function le(t,e){var i,a=oe(e);i=t.className instanceof re?oe(t.className.baseVal):oe(t.className),a.forEach((function(t){-1===i.indexOf(t)&&i.push(t)})),t instanceof SVGElement?t.setAttribute("class",i.join(" ")):t.className=i.join(" ")}function ce(t,e){var i,a=oe(e);i=t.className instanceof re?oe(t.className.baseVal):oe(t.className),a.forEach((function(t){var e=i.indexOf(t);-1!==e&&i.splice(e,1)})),t instanceof SVGElement?t.setAttribute("class",i.join(" ")):t.className=i.join(" ")}"undefined"!=typeof window&&(re=window.SVGAnimatedString);var de=!1;if("undefined"!=typeof window){de=!1;try{var he=Object.defineProperty({},"passive",{get:function(){de=!0}});window.addEventListener("test",null,he)}catch(t){}}function ue(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function pe(t){for(var e=1;e
',trigger:"hover focus",offset:0},ge=[],ve=function(){function t(e,i){var a=this;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),F(this,"_events",[]),F(this,"_setTooltipNodeEvent",(function(t,e,i,n){var s=t.relatedreference||t.toElement||t.relatedTarget;return!!a._tooltipNode.contains(s)&&(a._tooltipNode.addEventListener(t.type,(function i(s){var r=s.relatedreference||s.toElement||s.relatedTarget;a._tooltipNode.removeEventListener(t.type,i),e.contains(r)||a._scheduleHide(e,n.delay,n,s)})),!0)})),i=pe(pe({},fe),i),e.jquery&&(e=e[0]),this.show=this.show.bind(this),this.hide=this.hide.bind(this),this.reference=e,this.options=i,this._isOpen=!1,this._init()}var e,i;return e=t,(i=[{key:"show",value:function(){this._show(this.reference,this.options)}},{key:"hide",value:function(){this._hide()}},{key:"dispose",value:function(){this._dispose()}},{key:"toggle",value:function(){return this._isOpen?this.hide():this.show()}},{key:"setClasses",value:function(t){this._classes=t}},{key:"setContent",value:function(t){this.options.title=t,this._tooltipNode&&this._setContent(t,this.options)}},{key:"setOptions",value:function(t){var e=!1,i=t&&t.classes||Ee.options.defaultClass;Zt()(this._classes,i)||(this.setClasses(i),e=!0),t=Ce(t);var a=!1,n=!1;for(var s in this.options.offset===t.offset&&this.options.placement===t.placement||(a=!0),(this.options.template!==t.template||this.options.trigger!==t.trigger||this.options.container!==t.container||e)&&(n=!0),t)this.options[s]=t[s];if(this._tooltipNode)if(n){var r=this._isOpen;this.dispose(),this._init(),r&&this.show()}else a&&this.popperInstance.update()}},{key:"_init",value:function(){var t="string"==typeof this.options.trigger?this.options.trigger.split(" "):[];this._isDisposed=!1,this._enableDocumentTouch=-1===t.indexOf("manual"),t=t.filter((function(t){return-1!==["click","hover","focus"].indexOf(t)})),this._setEventListeners(this.reference,t,this.options),this.$_originalTitle=this.reference.getAttribute("title"),this.reference.removeAttribute("title"),this.reference.setAttribute("data-original-title",this.$_originalTitle)}},{key:"_create",value:function(t,e){var i=this,a=window.document.createElement("div");a.innerHTML=e.trim();var n=a.childNodes[0];return n.id=this.options.ariaId||"tooltip_".concat(Math.random().toString(36).substr(2,10)),n.setAttribute("aria-hidden","true"),this.options.autoHide&&-1!==this.options.trigger.indexOf("hover")&&(n.addEventListener("mouseenter",(function(e){return i._scheduleHide(t,i.options.delay,i.options,e)})),n.addEventListener("click",(function(e){return i._scheduleHide(t,i.options.delay,i.options,e)}))),n}},{key:"_setContent",value:function(t,e){var i=this;this.asyncContent=!1,this._applyContent(t,e).then((function(){i.popperInstance&&i.popperInstance.update()}))}},{key:"_applyContent",value:function(t,e){var i=this;return new Promise((function(a,n){var s=e.html,r=i._tooltipNode;if(r){var o=r.querySelector(i.options.innerSelector);if(1===t.nodeType){if(s){for(;o.firstChild;)o.removeChild(o.firstChild);o.appendChild(t)}}else{if("function"==typeof t){var l=t();return void(l&&"function"==typeof l.then?(i.asyncContent=!0,e.loadingClass&&le(r,e.loadingClass),e.loadingContent&&i._applyContent(e.loadingContent,e),l.then((function(t){return e.loadingClass&&ce(r,e.loadingClass),i._applyContent(t,e)})).then(a).catch(n)):i._applyContent(l,e).then(a).catch(n))}s?o.innerHTML=t:o.innerText=t}a()}}))}},{key:"_show",value:function(t,e){if(!e||"string"!=typeof e.container||document.querySelector(e.container)){clearTimeout(this._disposeTimer),delete(e=Object.assign({},e)).offset;var i=!0;this._tooltipNode&&(le(this._tooltipNode,this._classes),i=!1);var a=this._ensureShown(t,e);return i&&this._tooltipNode&&le(this._tooltipNode,this._classes),le(t,["v-tooltip-open"]),a}}},{key:"_ensureShown",value:function(t,e){var i=this;if(this._isOpen)return this;if(this._isOpen=!0,ge.push(this),this._tooltipNode)return this._tooltipNode.style.display="",this._tooltipNode.setAttribute("aria-hidden","false"),this.popperInstance.enableEventListeners(),this.popperInstance.update(),this.asyncContent&&this._setContent(e.title,e),this;var a=t.getAttribute("title")||e.title;if(!a)return this;var n=this._create(t,e.template);this._tooltipNode=n,t.setAttribute("aria-describedby",n.id);var s=this._findContainer(e.container,t);this._append(n,s);var r=pe(pe({},e.popperOptions),{},{placement:e.placement});return r.modifiers=pe(pe({},r.modifiers),{},{arrow:{element:this.options.arrowSelector}}),e.boundariesElement&&(r.modifiers.preventOverflow={boundariesElement:e.boundariesElement}),this.popperInstance=new Ut(t,n,r),this._setContent(a,e),requestAnimationFrame((function(){!i._isDisposed&&i.popperInstance?(i.popperInstance.update(),requestAnimationFrame((function(){i._isDisposed?i.dispose():i._isOpen&&n.setAttribute("aria-hidden","false")}))):i.dispose()})),this}},{key:"_noLongerOpen",value:function(){var t=ge.indexOf(this);-1!==t&&ge.splice(t,1)}},{key:"_hide",value:function(){var t=this;if(!this._isOpen)return this;this._isOpen=!1,this._noLongerOpen(),this._tooltipNode.style.display="none",this._tooltipNode.setAttribute("aria-hidden","true"),this.popperInstance&&this.popperInstance.disableEventListeners(),clearTimeout(this._disposeTimer);var e=Ee.options.disposeTimeout;return null!==e&&(this._disposeTimer=setTimeout((function(){t._tooltipNode&&(t._tooltipNode.removeEventListener("mouseenter",t.hide),t._tooltipNode.removeEventListener("click",t.hide),t._removeTooltipNode())}),e)),ce(this.reference,["v-tooltip-open"]),this}},{key:"_removeTooltipNode",value:function(){if(this._tooltipNode){var t=this._tooltipNode.parentNode;t&&(t.removeChild(this._tooltipNode),this.reference.removeAttribute("aria-describedby")),this._tooltipNode=null}}},{key:"_dispose",value:function(){var t=this;return this._isDisposed=!0,this.reference.removeAttribute("data-original-title"),this.$_originalTitle&&this.reference.setAttribute("title",this.$_originalTitle),this._events.forEach((function(e){var i=e.func,a=e.event;t.reference.removeEventListener(a,i)})),this._events=[],this._tooltipNode?(this._hide(),this._tooltipNode.removeEventListener("mouseenter",this.hide),this._tooltipNode.removeEventListener("click",this.hide),this.popperInstance.destroy(),this.popperInstance.options.removeOnDestroy||this._removeTooltipNode()):this._noLongerOpen(),this}},{key:"_findContainer",value:function(t,e){return"string"==typeof t?t=window.document.querySelector(t):!1===t&&(t=e.parentNode),t}},{key:"_append",value:function(t,e){e.appendChild(t)}},{key:"_setEventListeners",value:function(t,e,i){var a=this,n=[],s=[];e.forEach((function(t){switch(t){case"hover":n.push("mouseenter"),s.push("mouseleave"),a.options.hideOnTargetClick&&s.push("click");break;case"focus":n.push("focus"),s.push("blur"),a.options.hideOnTargetClick&&s.push("click");break;case"click":n.push("click"),s.push("click")}})),n.forEach((function(e){var n=function(e){!0!==a._isOpen&&(e.usedByTooltip=!0,a._scheduleShow(t,i.delay,i,e))};a._events.push({event:e,func:n}),t.addEventListener(e,n)})),s.forEach((function(e){var n=function(e){!0!==e.usedByTooltip&&a._scheduleHide(t,i.delay,i,e)};a._events.push({event:e,func:n}),t.addEventListener(e,n)}))}},{key:"_onDocumentTouch",value:function(t){this._enableDocumentTouch&&this._scheduleHide(this.reference,this.options.delay,this.options,t)}},{key:"_scheduleShow",value:function(t,e,i){var a=this,n=e&&e.show||e||0;clearTimeout(this._scheduleTimer),this._scheduleTimer=window.setTimeout((function(){return a._show(t,i)}),n)}},{key:"_scheduleHide",value:function(t,e,i,a){var n=this,s=e&&e.hide||e||0;clearTimeout(this._scheduleTimer),this._scheduleTimer=window.setTimeout((function(){if(!1!==n._isOpen&&n._tooltipNode.ownerDocument.body.contains(n._tooltipNode)){if("mouseleave"===a.type&&n._setTooltipNodeEvent(a,t,e,i))return;n._hide(t,i)}}),s)}}])&&Y(e.prototype,i),Object.defineProperty(e,"prototype",{writable:!1}),t}();function me(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function xe(t){for(var e=1;e
',defaultArrowSelector:".tooltip-arrow, .tooltip__arrow",defaultInnerSelector:".tooltip-inner, .tooltip__inner",defaultDelay:0,defaultTrigger:"hover focus",defaultOffset:0,defaultContainer:"body",defaultBoundariesElement:void 0,defaultPopperOptions:{},defaultLoadingClass:"tooltip-loading",defaultLoadingContent:"...",autoHide:!0,defaultHideOnTargetClick:!0,disposeTimeout:5e3,popover:{defaultPlacement:"bottom",defaultClass:"vue-popover-theme",defaultBaseClass:"tooltip popover",defaultWrapperClass:"wrapper",defaultInnerClass:"tooltip-inner popover-inner",defaultArrowClass:"tooltip-arrow popover-arrow",defaultOpenClass:"open",defaultDelay:0,defaultTrigger:"click",defaultOffset:0,defaultContainer:"body",defaultBoundariesElement:void 0,defaultPopperOptions:{},defaultAutoHide:!0,defaultHandleResize:!0}};function Ce(t){var e={placement:void 0!==t.placement?t.placement:Ee.options.defaultPlacement,delay:void 0!==t.delay?t.delay:Ee.options.defaultDelay,html:void 0!==t.html?t.html:Ee.options.defaultHtml,template:void 0!==t.template?t.template:Ee.options.defaultTemplate,arrowSelector:void 0!==t.arrowSelector?t.arrowSelector:Ee.options.defaultArrowSelector,innerSelector:void 0!==t.innerSelector?t.innerSelector:Ee.options.defaultInnerSelector,trigger:void 0!==t.trigger?t.trigger:Ee.options.defaultTrigger,offset:void 0!==t.offset?t.offset:Ee.options.defaultOffset,container:void 0!==t.container?t.container:Ee.options.defaultContainer,boundariesElement:void 0!==t.boundariesElement?t.boundariesElement:Ee.options.defaultBoundariesElement,autoHide:void 0!==t.autoHide?t.autoHide:Ee.options.autoHide,hideOnTargetClick:void 0!==t.hideOnTargetClick?t.hideOnTargetClick:Ee.options.defaultHideOnTargetClick,loadingClass:void 0!==t.loadingClass?t.loadingClass:Ee.options.defaultLoadingClass,loadingContent:void 0!==t.loadingContent?t.loadingContent:Ee.options.defaultLoadingContent,popperOptions:xe({},void 0!==t.popperOptions?t.popperOptions:Ee.options.defaultPopperOptions)};if(e.offset){var i=R(e.offset),a=e.offset;("number"===i||"string"===i&&-1===a.indexOf(","))&&(a="0, ".concat(a)),e.popperOptions.modifiers||(e.popperOptions.modifiers={}),e.popperOptions.modifiers.offset={offset:a}}return e.trigger&&-1!==e.trigger.indexOf("click")&&(e.hideOnTargetClick=!1),e}function Se(t,e){for(var i=t.placement,a=0;a2&&void 0!==arguments[2]?arguments[2]:{},a=ke(e),n=void 0!==e.classes?e.classes:Ee.options.defaultClass,s=xe({title:a},Ce(xe(xe({},"object"===R(e)?e:{}),{},{placement:Se(e,i)}))),r=t._tooltip=new ve(t,s);r.setClasses(n),r._vueEl=t;var o=void 0!==e.targetClasses?e.targetClasses:Ee.options.defaultTargetClass;return t._tooltipTargetClasses=o,le(t,o),r}(t,i,n),void 0!==i.show&&i.show!==t._tooltipOldShow&&(t._tooltipOldShow=i.show,i.show?a.show():a.hide())):Ae(t)}var Ee={options:we,bind:Pe,update:Pe,unbind:function(t){Ae(t)}};function Te(t){t.addEventListener("click",Me),t.addEventListener("touchstart",Le,!!de&&{passive:!0})}function Oe(t){t.removeEventListener("click",Me),t.removeEventListener("touchstart",Le),t.removeEventListener("touchend",Ie),t.removeEventListener("touchcancel",_e)}function Me(t){var e=t.currentTarget;t.closePopover=!e.$_vclosepopover_touch,t.closeAllPopover=e.$_closePopoverModifiers&&!!e.$_closePopoverModifiers.all}function Le(t){if(1===t.changedTouches.length){var e=t.currentTarget;e.$_vclosepopover_touch=!0;var i=t.changedTouches[0];e.$_vclosepopover_touchPoint=i,e.addEventListener("touchend",Ie),e.addEventListener("touchcancel",_e)}}function Ie(t){var e=t.currentTarget;if(e.$_vclosepopover_touch=!1,1===t.changedTouches.length){var i=t.changedTouches[0],a=e.$_vclosepopover_touchPoint;t.closePopover=Math.abs(i.screenY-a.screenY)<20&&Math.abs(i.screenX-a.screenX)<20,t.closeAllPopover=e.$_closePopoverModifiers&&!!e.$_closePopoverModifiers.all}}function _e(t){t.currentTarget.$_vclosepopover_touch=!1}var De={bind:function(t,e){var i=e.value,a=e.modifiers;t.$_closePopoverModifiers=a,(void 0===i||i)&&Te(t)},update:function(t,e){var i=e.value,a=e.oldValue,n=e.modifiers;t.$_closePopoverModifiers=n,i!==a&&(void 0===i||i?Te(t):Oe(t))},unbind:function(t){Oe(t)}};function ze(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function Ne(t){for(var e=1;e0&&void 0!==arguments[0]?arguments[0]:{},i=e.event;e.skipDelay;var a=e.force,n=void 0!==a&&a;!n&&this.disabled||(this.$_scheduleShow(i),this.$emit("show")),this.$emit("update:open",!0),this.$_beingShowed=!0,requestAnimationFrame((function(){t.$_beingShowed=!1}))},hide:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.event;t.skipDelay,this.$_scheduleHide(e),this.$emit("hide"),this.$emit("update:open",!1)},dispose:function(){if(this.$_isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.popperInstance&&(this.popperInstance.destroy(),!this.popperInstance.options.removeOnDestroy)){var t=this.$refs.popover;t.parentNode&&t.parentNode.removeChild(t)}this.$_mounted=!1,this.popperInstance=null,this.isOpen=!1,this.$emit("dispose")},$_init:function(){-1===this.trigger.indexOf("manual")&&this.$_addEventListeners()},$_show:function(){var t=this,e=this.$refs.trigger,i=this.$refs.popover;if(clearTimeout(this.$_disposeTimer),!this.isOpen){if(this.popperInstance&&(this.isOpen=!0,this.popperInstance.enableEventListeners(),this.popperInstance.scheduleUpdate()),!this.$_mounted){var a=this.$_findContainer(this.container,e);if(!a)return void console.warn("No container for popover",this);a.appendChild(i),this.$_mounted=!0,this.isOpen=!1,this.popperInstance&&requestAnimationFrame((function(){t.hidden||(t.isOpen=!0)}))}if(!this.popperInstance){var n=Ne(Ne({},this.popperOptions),{},{placement:this.placement});if(n.modifiers=Ne(Ne({},n.modifiers),{},{arrow:Ne(Ne({},n.modifiers&&n.modifiers.arrow),{},{element:this.$refs.arrow})}),this.offset){var s=this.$_getOffset();n.modifiers.offset=Ne(Ne({},n.modifiers&&n.modifiers.offset),{},{offset:s})}this.boundariesElement&&(n.modifiers.preventOverflow=Ne(Ne({},n.modifiers&&n.modifiers.preventOverflow),{},{boundariesElement:this.boundariesElement})),this.popperInstance=new Ut(e,i,n),requestAnimationFrame((function(){if(t.hidden)return t.hidden=!1,void t.$_hide();!t.$_isDisposed&&t.popperInstance?(t.popperInstance.scheduleUpdate(),requestAnimationFrame((function(){if(t.hidden)return t.hidden=!1,void t.$_hide();t.$_isDisposed?t.dispose():t.isOpen=!0}))):t.dispose()}))}var r=this.openGroup;if(r)for(var o,l=0;l1&&void 0!==arguments[1]&&arguments[1];if(clearTimeout(this.$_scheduleTimer),t)this.$_show();else{var e=parseInt(this.delay&&this.delay.show||this.delay||0);this.$_scheduleTimer=setTimeout(this.$_show.bind(this),e)}},$_scheduleHide:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,i=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(clearTimeout(this.$_scheduleTimer),i)this.$_hide();else{var a=parseInt(this.delay&&this.delay.hide||this.delay||0);this.$_scheduleTimer=setTimeout((function(){if(t.isOpen){if(e&&"mouseleave"===e.type&&t.$_setTooltipNodeEvent(e))return;t.$_hide()}}),a)}},$_setTooltipNodeEvent:function(t){var e=this,i=this.$refs.trigger,a=this.$refs.popover,n=t.relatedreference||t.toElement||t.relatedTarget;return!!a.contains(n)&&(a.addEventListener(t.type,(function n(s){var r=s.relatedreference||s.toElement||s.relatedTarget;a.removeEventListener(t.type,n),i.contains(r)||e.hide({event:s})})),!0)},$_removeEventListeners:function(){var t=this.$refs.trigger;this.$_events.forEach((function(e){var i=e.func,a=e.event;t.removeEventListener(a,i)})),this.$_events=[]},$_updatePopper:function(t){this.popperInstance&&(t(),this.isOpen&&this.popperInstance.scheduleUpdate())},$_restartPopper:function(){if(this.popperInstance){var t=this.isOpen;this.dispose(),this.$_isDisposed=!1,this.$_init(),t&&this.show({skipDelay:!0,force:!0})}},$_handleGlobalClose:function(t){var e=this,i=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.$_beingShowed||(this.hide({event:t}),t.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),i&&(this.$_preventOpen=!0,setTimeout((function(){e.$_preventOpen=!1}),300)))},$_handleResize:function(){this.isOpen&&this.popperInstance&&(this.popperInstance.scheduleUpdate(),this.$emit("resize"))}}};function Fe(t){for(var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=function(i){var a=He[i];if(a.$refs.popover){var n=a.$refs.popover.contains(t.target);requestAnimationFrame((function(){(t.closeAllPopover||t.closePopover&&n||a.autoHide&&!n)&&a.$_handleGlobalClose(t,e)}))}},a=0;a1&&void 0!==arguments[1]?arguments[1]:{};if(!t.installed){t.installed=!0;var a={};se()(a,we,i),Ge.options=a,Ee.options=a,e.directive("tooltip",Ee),e.directive("close-popover",De),e.component("VPopover",Ve)}},get enabled(){return be.enabled},set enabled(t){be.enabled=t}},Ue=null;"undefined"!=typeof window?Ue=window.Vue:void 0!==i.g&&(Ue=i.g.Vue),Ue&&Ue.use(Ge);var qe=Ge;e().use(qe),qe.options.autoHide=!1;var Ze=(i(7344),u({},(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"info-hud"},[i("v-popover",{attrs:{placement:"right"}},[i("c-icon",{attrs:{icon:"info-circle"}}),t._v(" "),i("template",{slot:"popover"},[t._t("default")],2)],2)],1)}),[],!1,null,null,null).exports);function Qe(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function Ke(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}i(3212);var Je={props:["edition"],components:{LicenseStatus:u({props:["status","description"]},(function(){var t,e=this,i=e.$createElement,a=e._self._c||i;return a("div",{staticClass:"license-status",class:(t={"tw-border tw-border-solid tw-px-4 tw-py-2 tw-rounded-md tw-text-base tw-opacity-100 tw-flex tw-items-center tw-justify-center tw-cursor-pointer":!0},t[e.status]=!0,t)},[a("c-icon",{staticClass:"tw-mr-2",attrs:{icon:"check"}}),e._v("\n "+e._s(e.description)+"\n")],1)}),[],!1,null,"1b8bf069",null).exports},computed:function(t){for(var e=1;e=t.edition?[i("license-status",{attrs:{status:"installed",description:t._f("t")("Installed","app")}})]:[i("license-status",{attrs:{status:"installed",description:t._f("t")("Installed as a trial","app")}})]]:t.licensedEdition==t.edition?[i("license-status",{attrs:{status:"licensed",description:t._f("t")("Licensed","app")}})]:t._e()],2)}),[],!1,null,null,null).exports;function ei(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function ii(t){for(var e=1;et.licensedEdition?[t.isCmsEditionInCart(t.editionHandle)?[i("c-btn",{attrs:{block:"",large:"",submit:"",disabled:""}},[t._v(t._s(t._f("t")("Added to cart","app"))+"\n ")])]:[i("c-btn",{attrs:{kind:"primary",block:"",large:""},on:{click:function(e){return t.buyCraft(t.editionHandle)}}},[t._v(t._s(t._f("t")("Buy now","app"))+"\n ")])]]:t._e(),t._v(" "),t.canTestEditions&&t.edition!=t.CraftEdition&&t.edition>t.licensedEdition?[i("c-btn",{attrs:{block:"",large:""},on:{click:function(e){return t.installCraft(t.editionHandle)}}},[t._v(t._s(t._f("t")("Try for free","app"))+"\n ")])]:t._e(),t._v(" "),t.edition==t.licensedEdition&&t.edition!=t.CraftEdition?[i("c-btn",{attrs:{block:"",large:""},on:{click:function(e){return t.installCraft(t.editionHandle)}}},[t._v(t._s(t._f("t")("Reactivate","app"))+"\n ")])]:t._e(),t._v(" "),t.loading?i("c-spinner"):t._e()],2)}),[],!1,null,null,null).exports,EditionBadge:p},computed:ri(ri({},(0,c.mapGetters)({getCmsEditionFeatures:"craft/getCmsEditionFeatures",getCmsEditionIndex:"craft/getCmsEditionIndex"})),{},{editionDescription:function(){switch(this.edition.handle){case"solo":return this.$options.filters.t("For when you’re building a website for yourself or a friend.","app");case"pro":return this.$options.filters.t("For when you’re building something professionally for a client or team.","app");default:return null}},editionIndex:function(){return this.getCmsEditionIndex(this.edition.handle)},features:function(){return this.getCmsEditionFeatures(this.edition.handle)}})};function ci(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function di(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}i(7880);var hi={components:{CmsEdition:u(li,(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"cms-editions-edition"},[i("div",{staticClass:"description"},[i("edition-badge",{attrs:{name:t.edition.name,block:!0,big:!0}}),t._v(" "),i("p",{staticClass:"edition-description"},[t._v(t._s(t.editionDescription))]),t._v(" "),i("div",{staticClass:"price"},[t.edition.price&&t.edition.price>0?[t._v("\n "+t._s(t._f("currency")(t.edition.price))+"\n ")]:[t._v("\n "+t._s(t._f("t")("Free","app"))+"\n ")]],2),t._v(" "),t.edition.price&&t.edition.price>0?i("p",{staticClass:"tw--mt-8 tw-py-6 tw-text-gray-700"},[t._v("\n "+t._s(t._f("t")("Price includes 1 year of updates.","app"))),i("br"),t._v("\n "+t._s(t._f("t")("{renewalPrice}/year per site for updates after that.","app",{renewalPrice:t.$options.filters.currency(t.edition.renewalPrice)}))+"\n ")]):t._e(),t._v(" "),i("ul",t._l(t.features,(function(e,a){return i("li",{key:a},[i("c-icon",{attrs:{icon:"check"}}),t._v("\n "+t._s(e.name)+"\n\n "),e.description?i("info-hud",[t._v("\n "+t._s(e.description)+"\n ")]):t._e()],1)})),0)],1),t._v(" "),i("div",{staticClass:"cms-edition-actions"},[i("status-badge",{attrs:{edition:t.editionIndex}}),t._v(" "),i("buy-btn",{attrs:{edition:t.editionIndex,"edition-handle":t.edition.handle}})],1)])}),[],!1,null,null,null).exports},data:function(){return{loading:!1}},computed:function(t){for(var e=1;etest'})}},mounted:function(){this.modal=new Garnish.Modal(this.$refs.garnishmodalcontent,{autoShow:!1,resizable:!0})},methods:{openModal:function(){this.modal.show()}}},(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",[i("h2",[t._v("Translations")]),t._v(" "),i("p",[t._v(t._s(t._f("currency")(t.somePrice))+" per year for updates")]),t._v(" "),i("p",[t._v("\n "+t._s(t._f("t")("{price} per year for updates","app",{price:t.$root.$options.filters.currency(t.somePrice)}))+"\n ")]),t._v(" "),t._m(0),t._v(" "),i("p",{domProps:{innerHTML:t._s(t.craftTranslation)}}),t._v(" "),i("h2",[t._v("Modal")]),t._v(" "),i("p",[i("a",{on:{click:function(e){return t.openModal()}}},[t._v("Open Garnish Modal")])]),t._v(" "),i("div",{staticClass:"tw-hidden"},[i("div",{ref:"garnishmodalcontent",staticClass:"modal"},[i("div",{staticClass:"body"},[t._v("Hello World")])])])])}),[function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("p",[t._v("{{ \"Go to {link}\"|t('app', {link: '"),i("a",{attrs:{href:"#"}},[t._v("test")]),t._v("' }) }}")])}],!1,null,null,null).exports,Ri=u({components:{StatusMessage:Li},computed:{message:function(){return this.$options.filters.t("Page not found.","app")}}},(function(){var t=this,e=t.$createElement;return(t._self._c||e)("status-message",{attrs:{error:!0,message:t.message}})}),[],!1,null,null,null).exports,Fi=u({props:{activeTab:{type:String,required:!0}},data:function(){return{tabs:[{name:"Plugins",handle:"plugins"}]}}},(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"search-tabs tw-mt-2"},[i("ul",{staticClass:"tw--mb-px tw-flex tw-space-x-6"},t._l(t.tabs,(function(e,a){return i("li",{key:a},[i("button",{class:{"tw-text-base tw-inline-block tw-px-1 tw-py-3 tw-border-0 tw-border-b-2 tw-border-solid tw-text-gray-500 tw-text-opacity-75 hover:tw-text-opacity-100":!0,"tw-border-transparent hover:tw-border-separator hover:tw-border-gray-200":e.handle!==t.activeTab,"tw-text-blue-600 tw-border-blue-600 tw-text-opacity-100":e.handle===t.activeTab},on:{click:function(i){return t.$emit("tab-click",e.handle)}}},[t._v("\n "+t._s(e.name)+"\n ")])])})),0)])}),[],!1,null,null,null).exports;function Yi(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function Bi(t){for(var e=1;ei&&(i=s)}return{min:e,max:i}}(t.editions),i=e.min,a=e.max;return 0===i&&0===a};function ia(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function aa(t){for(var e=1;e0&&t.licenseValidOrAstray?[i("del",[t._v(t._s(t._f("currency")(t.edition.price)))]),t._v("\n "+t._s(t._f("currency")(t.edition.price-t.licensedEdition.price))+"\n ")]:[t._v("\n "+t._s(t._f("currency")(t.edition.price))+"\n ")]]],2)}),[],!1,null,null,null).exports},mixins:[Ji],props:{edition:{type:Object,required:!0},plugin:{type:Object,required:!0}},data:function(){return{loading:!1,addToCartloading:!1}},computed:ra(ra({},(0,c.mapGetters)({getPluginLicenseInfo:"craft/getPluginLicenseInfo",isInCart:"cart/isInCart"})),{},{pluginLicenseInfo:function(){return this.getPluginLicenseInfo(this.plugin.handle)},isPluginEditionFree:function(){return this.$store.getters["pluginStore/isPluginEditionFree"](this.edition)},isPluginInstalled:function(){return this.$store.getters["craft/isPluginInstalled"](this.plugin.handle)},isEditionMoreExpensiveThanLicensed:function(){if(!this.edition)return!1;if(this.pluginLicenseInfo){var t=this.licensedEdition,e=this.plugin.editions.find((function(e){return e.handle===t}));if(e&&this.edition.price&&parseFloat(this.edition.price)<=parseFloat(e.price))return!1}return!0},licensedEdition:function(){return this.pluginLicenseInfo?this.pluginLicenseInfo.licensedEdition:null},currentEdition:function(){return this.pluginLicenseInfo?this.pluginLicenseInfo.edition:null},allowUpdates:function(){return Craft.allowUpdates&&Craft.allowAdminChanges},csrfTokenName:function(){return Craft.csrfTokenName},csrfTokenValue:function(){return Craft.csrfTokenValue}}),methods:{addEditionToCart:function(t){var e=this;this.addToCartloading=!0;var i={type:"plugin-edition",plugin:this.plugin.handle,edition:t};this.$store.dispatch("cart/addToCart",[i]).then((function(){e.addToCartloading=!1,e.$root.openModal("cart")})).catch((function(){e.addToCartloading=!1}))},onSwitchOrInstallSubmit:function(t){var e=this;if(this.loading=!0,this.isPluginInstalled)return t.preventDefault(),this.$store.dispatch("craft/switchPluginEdition",{pluginHandle:this.plugin.handle,edition:this.edition.handle}).then((function(){e.loading=!1,e.$root.displayNotice("Plugin edition changed.")})),!1},phpVersion:function(){return window.phpVersion},composerPhpVersion:function(){return window.composerPhpVersion}}},ca=(i(309),u(la,(function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.plugin?i("div",{staticClass:"plugin-actions tw-relative tw-space-y-2"},[t.isPluginEditionFree?t._e():[t.isInCart(t.plugin,t.edition)?[t.allowUpdates?i("c-btn",{attrs:{kind:"primary",icon:"check",block:"",large:"",disabled:""},on:{click:function(e){return t.$root.openModal("cart")}}},[t._v(t._s(t._f("t")("Already in your cart","app"))+"\n ")]):t._e()]:[t.allowUpdates&&t.isEditionMoreExpensiveThanLicensed?i("c-btn",{attrs:{kind:"primary",loading:t.addToCartloading,disabled:t.addToCartloading||!t.plugin.latestCompatibleVersion||!t.plugin.phpVersionCompatible||t.licenseMismatched||t.plugin.abandoned,block:"",large:""},on:{click:function(e){return t.addEditionToCart(t.edition.handle)}}},[i("plugin-edition-price",{attrs:{edition:t.edition}})],1):t.licensedEdition===t.edition.handle?i("c-btn",{attrs:{kind:"primary",block:"",large:"",disabled:""}},[t._v(t._s(t._f("t")("Licensed","app"))+"\n ")]):t._e()]],t._v(" "),t.isPluginInstalled&&t.currentEdition===t.edition.handle?[t.currentEdition===t.licensedEdition||t.isPluginEditionFree?[i("c-btn",{attrs:{icon:"check",disabled:!0,block:"",large:""}},[t._v("\n "+t._s(t._f("t")("Installed","app"))+"\n ")])]:[i("c-btn",{attrs:{icon:"check",disabled:!0,large:"",block:""}},[t._v("\n "+t._s(t._f("t")("Installed as a trial","app"))+"\n ")])]]:[t.allowUpdates||t.isPluginInstalled?i("form",{attrs:{method:"post"},on:{submit:t.onSwitchOrInstallSubmit}},[i("input",{attrs:{type:"hidden",name:t.csrfTokenName},domProps:{value:t.csrfTokenValue}}),t._v(" "),t.isPluginInstalled?[i("input",{attrs:{type:"hidden",name:"action",value:"plugins/switch-edition"}}),t._v(" "),i("input",{attrs:{type:"hidden",name:"pluginHandle"},domProps:{value:t.plugin.handle}}),t._v(" "),i("input",{attrs:{type:"hidden",name:"edition"},domProps:{value:t.edition.handle}})]:[i("input",{attrs:{type:"hidden",name:"action",value:"pluginstore/install"}}),t._v(" "),i("input",{attrs:{type:"hidden",name:"packageName"},domProps:{value:t.plugin.packageName}}),t._v(" "),i("input",{attrs:{type:"hidden",name:"handle"},domProps:{value:t.plugin.handle}}),t._v(" "),i("input",{attrs:{type:"hidden",name:"edition"},domProps:{value:t.edition.handle}}),t._v(" "),i("input",{attrs:{type:"hidden",name:"version"},domProps:{value:t.plugin.latestCompatibleVersion}})],t._v(" "),t.isPluginEditionFree?[i("c-btn",{attrs:{kind:"primary",type:"submit",loading:t.loading,disabled:!t.plugin.latestCompatibleVersion||!t.plugin.phpVersionCompatible,block:"",large:""}},[t._v(t._s(t._f("t")("Install","app"))+"\n ")])]:[t.isEditionMoreExpensiveThanLicensed&&t.currentEdition===t.edition.handle||t.licensedEdition===t.edition.handle&&!t.currentEdition?[i("c-btn",{attrs:{type:"submit",loading:t.loading,disabled:!t.plugin.latestCompatibleVersion||!t.plugin.phpVersionCompatible,block:"",large:""}},[t._v(t._s(t._f("t")("Install","app"))+"\n ")])]:t.isEditionMoreExpensiveThanLicensed&&t.currentEdition!==t.edition.handle?[i("c-btn",{attrs:{type:"submit",disabled:!(t.pluginLicenseInfo&&t.pluginLicenseInfo.isInstalled&&t.pluginLicenseInfo.isEnabled||!t.pluginLicenseInfo)||!t.plugin.latestCompatibleVersion||!t.plugin.phpVersionCompatible,loading:t.loading,block:"",large:""}},[t._v(t._s(t._f("t")("Try","app"))+"\n ")])]:t.currentEdition&&t.licensedEdition===t.edition.handle&&t.currentEdition!==t.edition.handle?[i("c-btn",{attrs:{type:"submit",loading:t.loading,block:"",large:""}},[t._v(t._s(t._f("t")("Reactivate","app"))+"\n ")])]:t._e()]],2):t._e()],t._v(" "),t.plugin.latestCompatibleVersion&&t.plugin.latestCompatibleVersion!=t.plugin.version?[i("div",{staticClass:"tw-text-gray-600 tw-mt-4"},[i("p",[t._v("\n "+t._s(t._f("t")("Only up to {version} is compatible with your version of Craft.","app",{version:t.plugin.latestCompatibleVersion}))+"\n ")])])]:t.plugin.latestCompatibleVersion?t.plugin.phpVersionCompatible?!t.isPluginEditionFree&&t.plugin.abandoned?[i("div",{staticClass:"tw-text-gray-600 tw-mt-4"},[i("p",[t._v(t._s(t._f("t")("This plugin is no longer maintained.","app")))])])]:t._e():[i("div",{staticClass:"tw-text-gray-600 tw-mt-4"},["php"===t.plugin.incompatiblePhpVersion?i("p",[t._v("\n "+t._s(t._f("t")("This plugin requires PHP {v1}, but your environment is currently running {v2}.","app",{v1:t.plugin.phpConstraint,v2:t.phpVersion()}))+"\n ")]):i("p",[t._v("\n "+t._s(t._f("t")("This plugin requires PHP {v1}, but your composer.json file is currently set to {v2}.","app",{v1:t.plugin.phpConstraint,v2:t.composerPhpVersion()}))+"\n ")])])]:[i("div",{staticClass:"tw-text-gray-600 tw-mt-4"},[i("p",[t._v("\n "+t._s(t._f("t")("This plugin isn’t compatible with your version of Craft.","app"))+"\n ")])])]],2):t._e()}),[],!1,null,null,null).exports);function da(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function ha(t){for(var e=1;e1||!t.isPluginEditionFree(t.edition),"tw-p-8 tw-text-center":"meta"!==t.context,"tw-p-4":"meta"===t.context&&(t.plugin.editions.length>1||!t.isPluginEditionFree(t.edition))}},[i("div",{staticClass:"description tw-flex-1"},[t.plugin.editions.length>1?[i("div",{staticClass:"tw-text-xl tw-font-bold tw-mb-4"},[t._v("\n "+t._s(t.edition.name)+"\n ")])]:t._e(),t._v(" "),"meta"!==t.context?[t.plugin.editions.length>1&&t.edition.features&&t.edition.features.length>0?i("ul",{staticClass:"tw-text-left tw-mt-8 tw-mb-8"},t._l(t.edition.features,(function(e,a){return i("li",{key:a,staticClass:"tw-py-2 tw-border-b tw-border-gray-200 tw-border-solid",class:{"tw-border-t":0===a}},[i("c-icon",{attrs:{icon:"check"}}),t._v("\n "+t._s(e.name)+"\n\n "),e.description?i("info-hud",[t._v("\n "+t._s(e.description)+"\n ")]):t._e()],1)})),0):t._e()]:t._e()],2),t._v(" "),i("plugin-actions",{attrs:{plugin:t.plugin,edition:t.edition}}),t._v(" "),t.isPluginEditionFree(t.edition)?t._e():i("p",{staticClass:"tw-text-gray-700"},[t._v("\n "+t._s(t._f("t")("Price includes 1 year of updates.","app"))+"\n "+t._s(t._f("t")("{renewalPrice}/year per site for updates after that.","app",{renewalPrice:t.$options.filters.currency(t.edition.renewalPrice)}))+"\n ")])],1)}),[],!1,null,null,null).exports,ga=u({components:{PluginEdition:fa},props:{plugin:{type:Object,required:!0}},methods:{isPluginFree:ea}},(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{class:{"tw-space-y-2 tw-mb-2":t.isPluginFree(t.plugin),"tw-space-y-4 tw-mb-4":!t.isPluginFree(t.plugin)}},[t._l(t.plugin.editions,(function(e,a){return[i("div",{key:a},[i("plugin-edition",{attrs:{plugin:t.plugin,edition:e,context:"meta"}})],1)]}))],2)}),[],!1,null,null,null).exports,va=u({components:{MetaStat:ta},props:{plugin:{type:Object,required:!0}},data:function(){return{copyTimeout:null,showSuccess:!1,currentInstallModeHandle:"shell"}},computed:{currentInstallMode:function(){var t=this;return this.installModes.find((function(e){return e.handle===t.currentInstallModeHandle}))},installModes:function(){return[{name:"Shell",handle:"shell",copyValue:"composer require ".concat(this.plugin.packageName," -w && php craft plugin/install ").concat(this.plugin.handle)},{name:"DDEV",handle:"ddev",copyValue:"ddev composer require ".concat(this.plugin.packageName," -w && ddev craft plugin/install ").concat(this.plugin.handle)}]}},methods:{select:function(){this.$refs.input.$el.select()},copy:function(){var t=this;this.showSuccess||(this.select(),window.document.execCommand("copy"),this.showSuccess=!0,setTimeout((function(){t.showSuccess=!1}),3e3))},changeInstallMode:function(t){clearTimeout(this.copyTimeout),this.showSuccess=!1,this.currentInstallModeHandle=t}}},(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",[i("meta-stat",{scopedSlots:t._u([{key:"title",fn:function(){return[t._v("\n "+t._s(t._f("t")("Installation Instructions","app"))+"\n ")]},proxy:!0},{key:"content",fn:function(){return[i("div",[i("ul",{staticClass:"tw-flex tw-space-x-4 tw-text-sm"},t._l(t.installModes,(function(e,a){return i("li",{key:a,staticClass:"tw-py-1"},[i("button",{class:{"tw-text-gray-700":!(e.handle===t.currentInstallModeHandle),"tw-font-medium tw-text-black tw-border-b-2 tw-border-orange-500":e.handle===t.currentInstallModeHandle},on:{click:function(i){return t.changeInstallMode(e.handle)}}},[t._v("\n "+t._s(e.name)+"\n ")])])})),0)]),t._v(" "),i("div",{staticClass:"copy-package"},[i("div",{staticClass:"tw-mt-2 tw-flex"},[i("c-textbox",{ref:"input",staticClass:"tw-w-full tw-flex tw-rounded-r-none tw-font-mono focus:tw-relative focus:tw-z-10 tw-text-sm",attrs:{readonly:"readonly",type:"text",value:t.currentInstallMode.copyValue},on:{focus:t.select}}),t._v(" "),i("c-btn",{staticClass:"tw--ml-px tw-w-14 tw-rounded-l-none",class:{"tw-border-green-500 hover:tw-border-green-500 active:tw-border-green-500":t.showSuccess},attrs:{"disable-shadow":!0},on:{click:t.copy}},[t.showSuccess?[i("c-icon",{staticClass:"tw-text-green-500",attrs:{icon:"check"}})]:[i("c-icon",{staticClass:"tw-text-black",attrs:{icon:"clipboard-copy"}})]],2)],1),t._v(" "),i("div",{staticClass:"tw-mt-4 tw-text-sm tw-text-gray-500"},[i("p",[t._v("\n "+t._s(t._f("t")("To install this plugin with composer, copy the command above to your terminal.","app"))+"\n ")])])])]},proxy:!0}])})],1)}),[],!1,null,null,null).exports,ma=u({},(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"tw-p-4 tw-text-center"},[i("div",{staticClass:"tw-inline-block"},[i("div",{staticClass:"tw-flex tw-items-center"},[i("div",{staticClass:"tw-mr-1.5"},[t._t("icon")],2),t._v(" "),i("div",[t._t("count")],2)])]),t._v(" "),i("div",{staticClass:"tw-mt-1 tw-text-xs tw-text-gray-500"},[t._t("title")],2)])}),[],!1,null,null,null),xa=u({components:{ActivityStat:ma.exports,MetaStat:ta},props:{plugin:{type:Object,required:!0}},computed:{githubActivityTitle:function(){return this.$options.filters.t("Activity ({period} days)","app",{period:this.issueStats.period})},issueStats:function(){return this.plugin&&this.plugin.issueStats?this.plugin.issueStats.find((function(t){return 30===t.period})):null}}},(function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.issueStats?i("meta-stat",{staticClass:"tw-pt-4",attrs:{border:!1},scopedSlots:t._u([{key:"title",fn:function(){return[i("span",{domProps:{innerHTML:t._s(t.githubActivityTitle)}})]},proxy:!0},{key:"content",fn:function(){return[i("div",{staticClass:"tw-mt-4 tw-border tw-border-solid tw-border-gray-200 tw-rounded-lg"},[i("div",{staticClass:"tw-grid tw-grid-cols-2"},[i("activity-stat",{staticClass:"tw-border-r tw-border-solid tw-border-gray-200",scopedSlots:t._u([{key:"icon",fn:function(){return[i("svg",{staticClass:"tw-text-purple-500",attrs:{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",fill:"currentColor"}},[i("path",{attrs:{d:"M11.28 6.78a.75.75 0 00-1.06-1.06L7.25 8.69 5.78 7.22a.75.75 0 00-1.06 1.06l2 2a.75.75 0 001.06 0l3.5-3.5z"}}),t._v(" "),i("path",{attrs:{"fill-rule":"evenodd",d:"M16 8A8 8 0 110 8a8 8 0 0116 0zm-1.5 0a6.5 6.5 0 11-13 0 6.5 6.5 0 0113 0z"}})])]},proxy:!0},{key:"count",fn:function(){return[t._v("\n "+t._s(t.issueStats.closedIssues)+"\n ")]},proxy:!0},{key:"title",fn:function(){return[t._v("\n "+t._s(t._f("t")("Closed Issues","app"))+"\n ")]},proxy:!0}],null,!1,2809335390)}),t._v(" "),i("activity-stat",{scopedSlots:t._u([{key:"icon",fn:function(){return[i("svg",{staticClass:"tw-text-green-500",attrs:{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",fill:"currentColor"}},[i("path",{attrs:{d:"M8 9.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"}}),t._v(" "),i("path",{attrs:{"fill-rule":"evenodd",d:"M8 0a8 8 0 100 16A8 8 0 008 0zM1.5 8a6.5 6.5 0 1113 0 6.5 6.5 0 01-13 0z"}})])]},proxy:!0},{key:"count",fn:function(){return[t._v("\n "+t._s(t.issueStats.openIssues)+"\n ")]},proxy:!0},{key:"title",fn:function(){return[t._v("\n "+t._s(t._f("t")("New Issues","app"))+"\n ")]},proxy:!0}],null,!1,1949602571)}),t._v(" "),i("activity-stat",{staticClass:"tw-border-t tw-border-r tw-border-solid tw-border-gray-200",scopedSlots:t._u([{key:"icon",fn:function(){return[i("svg",{staticClass:"tw-text-purple-500",attrs:{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",fill:"currentColor"}},[i("path",{attrs:{"fill-rule":"evenodd",d:"M5 3.254V3.25v.005a.75.75 0 110-.005v.004zm.45 1.9a2.25 2.25 0 10-1.95.218v5.256a2.25 2.25 0 101.5 0V7.123A5.735 5.735 0 009.25 9h1.378a2.251 2.251 0 100-1.5H9.25a4.25 4.25 0 01-3.8-2.346zM12.75 9a.75.75 0 100-1.5.75.75 0 000 1.5zm-8.5 4.5a.75.75 0 100-1.5.75.75 0 000 1.5z"}})])]},proxy:!0},{key:"count",fn:function(){return[t._v("\n "+t._s(t.issueStats.mergedPulls)+"\n ")]},proxy:!0},{key:"title",fn:function(){return[t._v("\n "+t._s(t._f("t")("Merged PRs","app"))+"\n ")]},proxy:!0}],null,!1,3605081137)}),t._v(" "),i("activity-stat",{staticClass:"tw-border-t tw-border-solid tw-border-gray-200",scopedSlots:t._u([{key:"icon",fn:function(){return[i("svg",{staticClass:"tw-text-green-500",attrs:{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",fill:"currentColor"}},[i("path",{attrs:{"fill-rule":"evenodd",d:"M7.177 3.073L9.573.677A.25.25 0 0110 .854v4.792a.25.25 0 01-.427.177L7.177 3.427a.25.25 0 010-.354zM3.75 2.5a.75.75 0 100 1.5.75.75 0 000-1.5zm-2.25.75a2.25 2.25 0 113 2.122v5.256a2.251 2.251 0 11-1.5 0V5.372A2.25 2.25 0 011.5 3.25zM11 2.5h-1V4h1a1 1 0 011 1v5.628a2.251 2.251 0 101.5 0V5A2.5 2.5 0 0011 2.5zm1 10.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0zM3.75 12a.75.75 0 100 1.5.75.75 0 000-1.5z"}})])]},proxy:!0},{key:"count",fn:function(){return[t._v("\n "+t._s(t.issueStats.openPulls)+"\n ")]},proxy:!0},{key:"title",fn:function(){return[t._v("\n "+t._s(t._f("t")("Open PRs","app"))+"\n ")]},proxy:!0}],null,!1,3930490208)})],1)])]},proxy:!0}],null,!1,4069964360)}):t._e()}),[],!1,null,null,null).exports,ba={props:{plugin:{type:Object,required:!0}},data:function(){return{chartMounted:!1}},computed:{chartOptions:function(){return{fill:{opacity:1,type:"solid",colors:["var(--chart-fill-color)"],gradient:null},chart:{animations:{enabled:!1},sparkline:{enabled:!0},zoom:{enabled:!1},type:"area",events:{mounted:function(){this.chartMounted=!0}.bind(this),mouseLeave:function(){this.$emit("updateCurrentDataPoint",null)}.bind(this),mouseMove:function(t,e,i){var a=null,n=null;i.globals.series&&i.globals.series[0]&&i.globals.series[0][i.dataPointIndex]&&(a=i.globals.series[0][i.dataPointIndex]),i.globals.seriesX&&i.globals.seriesX[0]&&i.globals.seriesX[0][i.dataPointIndex]&&(n=new Date(i.globals.seriesX[0][i.dataPointIndex]).toISOString()),this.$emit("updateCurrentDataPoint",{value:a,date:n})}.bind(this)}},dataLabels:{enabled:!1},stroke:{curve:"straight"},grid:{xaxis:{lines:{show:!1}},yaxis:{lines:{show:!1}}},xaxis:{type:"datetime"},yaxis:{show:!1},tooltip:{enabled:!0,intersect:!1,shared:!0,x:{format:"dd/MM/yy"},custom:function(){return""}}}},series:function(){return[{name:"Active Installs",data:this.chartData}]},chartData:function(){if(!this.plugin.installHistory)return[];var t=[];return this.plugin.installHistory.forEach((function(e){t.push({x:new Date(e.date),y:e.activeInstalls})})),t}}},ya=(i(3438),u(ba,(function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.plugin.installHistory?i("div",[i("ClientOnly",[i("div",[i("apex-chart",{attrs:{type:"area",height:"40",options:t.chartOptions,series:t.series}}),t._v(" "),t.chartMounted?i("div",{staticClass:"tw-h-3 tw-bg-gradient-to-b tw-from-blue-100/100 tw-to-blue-100/0"}):t._e()],1)])],1):t._e()}),[],!1,null,null,null));function wa(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function Ca(t){for(var e=1;e0?i("ul",[t._l(t.pluginCategories,(function(e,a){return[i("li",{key:a,staticClass:"tw-inline-block tw-mr-2 tw-my-1.5"},[i("router-link",{key:a,staticClass:"tw-px-4 tw-py-1.5 tw-text-xs tw-font-medium tw-rounded-full tw-cursor-pointer hover:tw-no-underline",class:{"tw-bg-blue-50 hover:tw-bg-blue-600":!0,"hover:tw-text-white":!0},attrs:{to:"/categories/"+e.id,title:e.title+" plugins for Craft CMS"}},[t._v("\n "+t._s(e.title)+"\n ")])],1)]}))],2):t._e()]},proxy:!0}])}),t._v(" "),i("github-activity",{attrs:{plugin:t.plugin}}),t._v(" "),i("ul",{staticClass:"tw-list-reset tw-space-y-2 tw-mt-8"},[i("li",[i("c-btn",{attrs:{kind:"danger",href:"mailto:issues@craftcms.com?subject="+encodeURIComponent("Issue with "+t.plugin.name)+"&body="+encodeURIComponent("I would like to report the following issue with "+t.plugin.name+" (https://plugins.craftcms.com/"+t.plugin.handle+"):\n\n")}},[i("c-icon",{staticClass:"tw-mr-1.5",attrs:{icon:"flag",set:"solid"}}),t._v("\n "+t._s(t._f("t")("Report plugin","app"))+"\n ")],1)],1)])],1)])}),[],!1,null,null,null).exports;function Pa(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function Ea(t){for(var e=1;e1&&t.push({name:this.$options.filters.t("Editions","app"),slug:"editions"}),t.push({name:this.$options.filters.t("Changelog","app"),slug:"changelog"}),t},pluginId:function(){return this.plugin?this.plugin.id:null}}),methods:{isPluginFree:ea},mounted:function(){var t=this,e=this.$route.params.handle;this.plugin&&this.plugin.handle===e||(this.loading=!0,this.$store.commit("pluginStore/updatePluginDetails",null),this.$store.dispatch("pluginStore/getPluginDetailsByHandle",e).then((function(){t.loading=!1})).catch((function(){t.loading=!1})))}},Ma=u(Oa,(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"plugin-layout"},[t.plugin?[i("div",{ref:"pluginDetailsHeader",staticClass:"plugin-details-header tw-mt-0"},[t.plugin?[i("div",{staticClass:"ps-container tw-pb-0"},[i("div",{staticClass:"description tw-flex"},[i("div",{staticClass:"icon tw-w-28"},[t.plugin.iconUrl?i("img",{attrs:{alt:t.plugin.name+" icon",src:t.plugin.iconUrl}}):i("img",{attrs:{alt:"Default plugin icon",src:t.defaultPluginSvg}})]),t._v(" "),i("div",{staticClass:"name tw-ml-8 tw-self-center"},[i("h1",{staticClass:"self-center tw-pb-0 tw-border-b-0 tw-mt-0 tw-mb-1 align-middle"},[t._v("\n "+t._s(t.plugin.name)+"\n ")]),t._v(" "),i("div",{staticClass:"developer tw-flex tw-items-center"},[i("router-link",{attrs:{to:"/developer/"+t.plugin.developerId,title:t.plugin.developerName}},[t._v("\n "+t._s(t.plugin.developerName)+"\n ")]),t._v(" "),t.plugin.developerPartner?[i("partner-badge",{staticClass:"tw-ml-2",attrs:{kind:"craft"}})]:t._e()],2)])]),t._v(" "),i("div",{staticClass:"tabs tw-mt-6 tw-border-b tw-border-solid tw-border-gray-200"},[i("ul",{staticClass:"tw--mb-px tw-flex tw-space-x-6"},t._l(t.tabs,(function(e,a){return i("li",{key:a},[i("router-link",{class:{"tw-inline-block tw-px-1 tw-py-3 tw-border-solid tw-border-b-2 tw-text-opacity-75 hover:tw-text-opacity-100 hover:tw-no-underline":!0,"tw-border-transparent hover:tw-border-separator hover:tw-border-gray-200 tw-text-gray-500":t.$route.path!=="/"+t.plugin.handle+(e.slug?"/"+e.slug:""),"tw-text-blue-600 tw-border-blue-600 tw-text-opacity-100":t.$route.path==="/"+t.plugin.handle+(e.slug?"/"+e.slug:"")},attrs:{to:"/"+t.plugin.handle+(e.slug?"/"+e.slug:"")}},[t._v("\n "+t._s(e.name)+"\n ")])],1)})),0)])])]:t._e()],2),t._v(" "),i("div",{staticClass:"ps-container tw-py-8"},[t._t("default")],2)]:[i("div",{staticClass:"ps-container tw-py-8"},[i("c-spinner")],1)]],2)}),[],!1,null,null,null).exports;function La(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function Ia(t){for(var e=1;e0?this.plugin.longDescription:null},pluginCategories:function(){var t=this;return this.categories.filter((function(e){return t.plugin.categoryIds.find((function(t){return t==e.id}))}))},licenseLabel:function(){switch(this.plugin.license){case"craft":return"Craft";case"mit":return"MIT"}return null},lastUpdate:function(){var t=new Date(this.plugin.lastUpdate.replace(/\s/,"T"));return Craft.formatDate(t)},pluginLicenseInfo:function(){return this.plugin?this.getPluginLicenseInfo(this.plugin.handle):null},licenseMismatchedMessage:function(){return this.$options.filters.t("This license is tied to another Craft install. Visit {accountLink} to detach it, or buy a new license.","app",{accountLink:'id.craftcms.com'})},recommendedLabel:function(){return this.plugin.replacementHandle?this.$options.filters.t('The developer recommends using {name} instead.',"app",{name:this.plugin.replacementName,url:Craft.getCpUrl("plugin-store/"+this.plugin.replacementHandle)}):null}}),methods:Ia({},(0,c.mapActions)({addToCart:"cart/addToCart"})),mounted:function(){var t=this,e=this.$route.params.handle;this.plugin&&this.plugin.handle===e||(this.loading=!0,this.$store.dispatch("pluginStore/getPluginDetailsByHandle",e).then((function(){t.loading=!1})).catch((function(){t.loading=!1})))},beforeDestroy:function(){this.$store.dispatch("pluginStore/cancelRequests")},beforeRouteLeave:function(t,e,i){this.showingScreenshotModal?this.$store.commit("app/updateShowingScreenshotModal",!1):i()}},za=u(Da,(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("plugin-layout",[i("div",{staticClass:"plugin-details"},[!t.loading&&t.plugin?[i("div",{staticClass:"plugin-details-body"},[t.loading?[i("c-spinner")]:[t.plugin.abandoned?[i("div",{staticClass:"error tw-mb-6 tw-px-4 tw-py-3 tw-rounded tw-border tw-border-solid tw-border-red-500 tw-flex tw-flex-nowrap tw-text-base tw-items-center"},[i("c-icon",{staticClass:"tw-w-8 tw-h-8 tw-mr-2",attrs:{icon:"alert"}}),t._v(" "),i("div",{staticClass:"tw-flex-1 tw-mb-0"},[i("strong",[t._v(t._s(t._f("t")("This plugin is no longer maintained.","app"))+"\n ")]),t._v(" "),t.recommendedLabel?i("span",{domProps:{innerHTML:t._s(t.recommendedLabel)}}):t._e()])],1)]:t._e(),t._v(" "),t.plugin.thumbnailUrls.length?[i("div",{staticClass:"tw-border-b tw-border-solid tw-border-gray-200 tw-mb-8"},[i("plugin-screenshots",{attrs:{thumbnails:t.plugin.thumbnailUrls,images:t.plugin.screenshotUrls}})],1)]:t._e(),t._v(" "),i("div",{staticClass:"xl:tw-flex"},[i("div",{staticClass:"xl:tw-flex-1 xl:tw-pr-8 xl:tw-mr-4"},[t.longDescription?i("div",{staticClass:"readable",domProps:{innerHTML:t._s(t.longDescription)}}):t.plugin.shortDescription?i("div",{staticClass:"readable",domProps:{innerHTML:t._s(t.plugin.shortDescription)}}):i("p",[t._v("No description.")])]),t._v(" "),i("div",{staticClass:"xl:tw-ml-4 xl:tw-w-60 tw-mt-8 xl:tw-mt-0"},[i("plugin-meta",{attrs:{plugin:t.plugin}})],1)]),t._v(" "),t.licenseMismatched?[i("hr"),t._v(" "),i("div",{staticClass:"tw-py-8"},[i("div",{staticClass:"tw-mx-auto tw-max-w-sm tw-px-8"},[i("div",{staticClass:"tw-flex items-center"},[i("svg",{staticClass:"tw-text-blue-600 tw-fill-current tw-w-8 tw-h-8 tw-mr-4 tw-flex tw-items-center tw-shrink-0",attrs:{version:"1.1",xmlns:"http://www.w3.org/2000/svg",x:"0px",y:"0px",viewBox:"0 0 256 448","xml:space":"preserve"}},[i("path",{attrs:{fill:"currentColor",d:"M184,144c0,4.2-3.8,8-8,8s-8-3.8-8-8c0-17.2-26.8-24-40-24c-4.2,0-8-3.8-8-8s3.8-8,8-8C151.2,104,184,116.2,184,144z\n M224,144c0-50-50.8-80-96-80s-96,30-96,80c0,16,6.5,32.8,17,45c4.8,5.5,10.2,10.8,15.2,16.5C82,226.8,97,251.8,99.5,280h57\n c2.5-28.2,17.5-53.2,35.2-74.5c5-5.8,10.5-11,15.2-16.5C217.5,176.8,224,160,224,144z M256,144c0,25.8-8.5,48-25.8,67\n s-40,45.8-42,72.5c7.2,4.2,11.8,12.2,11.8,20.5c0,6-2.2,11.8-6.2,16c4,4.2,6.2,10,6.2,16c0,8.2-4.2,15.8-11.2,20.2\n c2,3.5,3.2,7.8,3.2,11.8c0,16.2-12.8,24-27.2,24c-6.5,14.5-21,24-36.8,24s-30.2-9.5-36.8-24c-14.5,0-27.2-7.8-27.2-24\n c0-4,1.2-8.2,3.2-11.8c-7-4.5-11.2-12-11.2-20.2c0-6,2.2-11.8,6.2-16c-4-4.2-6.2-10-6.2-16c0-8.2,4.5-16.2,11.8-20.5\n c-2-26.8-24.8-53.5-42-72.5S0,169.8,0,144C0,76,64.8,32,128,32S256,76,256,144z"}})]),t._v(" "),i("div",[i("div",{domProps:{innerHTML:t._s(t.licenseMismatchedMessage)}})])])])])]:t._e()]],2)]:[i("c-spinner")]],2)])}),[],!1,null,null,null).exports;function Na(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function $a(t){for(var e=1;e0&&w&&(S=b.price-y.price);var A=b&&v.editions.length>1,P=v.id;h.push({type:"plugin-edition",name:v.name,iconUrl:v.iconUrl,editionHandle:m.edition,editionName:b.name,pluginHandle:v.handle,licenseMismatched:x,discountPrice:S,price:k,navigateTo:C,showEditionBadge:A,pluginId:P})}}return h},pendingActiveTrials:function(t,e){var i=e.activeTrials,a=t.cart,n=e.isCmsEditionInCart;return i.filter((function(t){switch(t.type){case"cms-edition":return!n(t.editionHandle);case"plugin-edition":return!a.lineItems.find((function(e){return e.purchasable.pluginId==t.pluginId}));default:return!1}}))}},Qa={addToCart:function(t,e){var i=t.state,a=t.dispatch,n=t.rootGetters;return new Promise((function(t,s){var r=JSON.parse(JSON.stringify(i.cart)),o=Ka.getCartItemsData(r);e.forEach((function(t){var e=o.find((function(e){return e.plugin===t.plugin}));if(!e){var i=function(t){for(var e=1;e0&&a.licenseIssues.forEach((function(t){"wrong_edition"!==t&&"astray"!==t&&"no_trials"!==t&&(s=!0)})),s||(i.licenseKey=a.licenseKey)}i.cmsLicenseKey=window.cmsLicenseKey;break;case"cms-edition":i.licenseKey=window.cmsLicenseKey}o.push(i)}}));var l={items:o},c=r.number;a("updateCart",{cartNumber:c,data:l}).then((function(e){if(void 0!==e.errors)return s(e);t(e)})).catch((function(t){return s(t)}))}))},addAllTrialsToCart:function(t){var e=t.dispatch,i=t.getters,a=[];return i.pendingActiveTrials.forEach((function(t){var e={type:t.type,edition:t.editionHandle};"plugin-edition"===t.type&&(e.plugin=t.pluginHandle),a.push(e)})),e("addToCart",a)},createCart:function(t){var e=t.dispatch,i=t.rootState;return new Promise((function(t,a){(function(t){return new Promise((function(e,i){Craft.sendApiRequest("POST","carts",{data:t}).then((function(t){e(t)})).catch((function(t){i(t)}))}))})({email:i.craft.currentUser.email}).then((function(i){e("updateCartPlugins",{cartResponseData:i}).then((function(){e("saveOrderNumber",{orderNumber:i.cart.number}),t(i)})).catch((function(t){a(t)}))})).catch((function(t){a(t)}))}))},getActiveTrials:function(t){var e=t.dispatch;return new Promise((function(t,i){e("pluginStore/getCmsEditions",null,{root:!0}).then((function(){e("getActiveTrialPlugins").then((function(){t()})).catch((function(t){i(t)}))})).catch((function(t){i(t)}))}))},getActiveTrialPlugins:function(t){var e=t.commit,i=t.rootState,a=t.rootGetters;return new Promise((function(t,n){var s=[],r=i.craft.pluginLicenseInfo;for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&r[o].isEnabled&&s.push(o);Mi.getPluginsByHandles(s).then((function(i){if(i&&i.error)throw i.error;for(var n=i,s=[],o=function(t){var e=n[t];if(!e)return"continue";var i=r[e.handle];if(!i)return"continue";if(i.licenseKey&&i.edition===i.licensedEdition)return"continue";if(i.edition){var o=e.editions.find((function(t){return t.handle===i.edition}));if(o&&a["pluginStore/isPluginEditionFree"](o))return"continue"}if(!a["craft/isPluginInstalled"](e.handle))return"continue";s.push(e)},l=0;l0)Mi.getPluginsByIds(s).then((function(e){i("updateCart",{cartResponseData:a}),i("updateCartPlugins",{pluginsResponseData:e}),t(e)})).catch((function(t){e(t)}));else{var r=[];i("updateCart",{cartResponseData:a}),i("updateCartPlugins",{pluginsResponseData:r}),t(r)}}))},updateItem:function(t,e){var i=t.dispatch,a=t.state,n=e.itemKey,s=e.item;return new Promise((function(t,e){var r=a.cart,o=r.number,l=Ka.getCartItemsData(r);l[n]=s,i("updateCart",{cartNumber:o,data:{items:l}}).then((function(e){t(e)})).catch((function(t){e(t)}))}))}},Ka={getCartData:function(t){var e={email:t.email,billingAddress:{firstName:t.billingAddress.firstName,lastName:t.billingAddress.lastName},items:[]};return e.items=this.getCartItemsData(t),e},getCartItemsData:function(t){if(!t)return[];for(var e=[],i=0;it.length)&&(e=t.length);for(var i=0,a=new Array(e);it.length)&&(e=t.length);for(var i=0,a=new Array(e);i0}))}}},actions:{cancelRequests:function(){return Mi.cancelRequests()},getCoreData:function(t){var e=t.commit;return new Promise((function(t,i){Mi.getCoreData().then((function(i){e("updateCoreData",{responseData:i}),t(i)})).catch((function(t){i(t)}))}))},getCmsEditions:function(t,e){var i=t.commit,a=!(!e||!e.force)&&e.force;return new Promise((function(t,e){cn.cmsEditions&&!0!==a?t():Mi.getCmsEditions().then((function(e){i("updateCmsEditions",{responseData:e}),t(e)})).catch((function(t){e(t)}))}))},getDeveloper:function(t,e){var i=t.commit;return Mi.getDeveloper(e).then((function(t){i("updateDeveloper",t)}))},getFeaturedSectionByHandle:function(t,e){var i=t.commit;return Mi.getFeaturedSectionByHandle(e).then((function(t){i("updateFeaturedSection",t)}))},getFeaturedSections:function(t){var e=t.commit;return Mi.getFeaturedSections().then((function(t){e("updateFeaturedSections",t)}))},getPluginChangelog:function(t,e){var i=t.commit;return new Promise((function(t,a){Mi.getPluginChangelog(e).then((function(a){i("updatePluginChangelog",{pluginId:e,changelog:a}),t(a)})).catch((function(t){a(t)}))}))},getPluginDetails:function(t,e){var i=t.commit;return new Promise((function(t,a){Mi.getPluginDetails(e).then((function(e){i("updatePluginDetails",e),t(e)})).catch((function(t){a(t)}))}))},getPluginDetailsByHandle:function(t,e){var i=t.commit;return Mi.getPluginDetailsByHandle(e).then((function(t){i("updatePluginDetails",t)}))},getPluginsByCategory:function(t,e){var i=t.getters,a=t.dispatch;return new Promise((function(t,n){var s=i.getPluginIndexParams(e);Mi.getPluginsByCategory(e.categoryId,s).then((function(i){a("updatePluginIndex",{context:e,responseData:i}),t(i)})).catch((function(t){n(t)}))}))},getPluginsByDeveloperId:function(t,e){var i=t.getters,a=t.dispatch;return new Promise((function(t,n){var s=i.getPluginIndexParams(e);Mi.getPluginsByDeveloperId(e.developerId,s).then((function(i){a("updatePluginIndex",{context:e,responseData:i}),t(i)})).catch((function(t){n(t)}))}))},getPluginsByFeaturedSectionHandle:function(t,e){var i=t.getters,a=t.dispatch;return new Promise((function(t,n){var s=i.getPluginIndexParams(e);return Mi.getPluginsByFeaturedSectionHandle(e.featuredSectionHandle,s).then((function(i){a("updatePluginIndex",{context:e,responseData:i}),t(i)})).catch((function(t){n(t)}))}))},searchPlugins:function(t,e){var i=t.getters,a=t.dispatch;return new Promise((function(t,n){var s=i.getPluginIndexParams(e);Mi.searchPlugins(e.searchQuery,s).then((function(i){a("updatePluginIndex",{context:e,responseData:i}),t(i)})).catch((function(t){n(t)}))}))},updatePluginIndex:function(t,e){var i=t.commit,a=e.context,n=e.responseData;a.appendData&&!0===a.appendData?i("appendPlugins",n.plugins):i("updatePlugins",n.plugins)}},mutations:dn},un={namespaced:!0,state:{canTestEditions:null,countries:null,craftId:null,craftLogo:null,currentUser:null,licensedEdition:null,pluginLicenseInfo:{},CraftEdition:null,CraftPro:null,CraftSolo:null},getters:{getCmsEditionFeatures:function(){return function(t){var e={solo:[{name:"Ultra-flexible content modeling",description:"Define custom content types, fields, and relations needed to perfectly contain your unique content requirements."},{name:"Powerful front-end tools",description:"Develop custom front-end templates with Twig, or use Craft as a headless CMS."},{name:"Multi-Site",description:"Run multiple related sites from a single installation, with shared content and user accounts."},{name:"Localization",description:"Cater to distinct audiences from around the world with Craft’s best-in-class localization capabilities."},{name:"Single admin account",description:"The Solo edition is limited to a single admin account."}],pro:[{name:"Unlimited user accounts",description:"Create unlimited user accounts, user groups, user permissions, and public user registration."},{name:"Enhanced content previewing",description:"Preview your content from multiple targets, including single-page applications."},{name:"GraphQL API",description:"Make your content available to other applications with a self-generating GraphQL API."},{name:"System branding",description:"Personalize the control panel for your brand."},{name:"Basic developer support",description:"Get developer-to-developer support right from the Craft core development team."}]};return e[t]?e[t]:null}},getPluginLicenseInfo:function(t){return function(e){return t.pluginLicenseInfo&&t.pluginLicenseInfo[e]?t.pluginLicenseInfo[e]:null}},isPluginInstalled:function(t){return function(e){return!!t.pluginLicenseInfo&&!!t.pluginLicenseInfo[e]&&!!t.pluginLicenseInfo[e].isInstalled}},getCmsEditionIndex:function(t){return function(e){switch(e){case"solo":return t.CraftSolo;case"pro":return t.CraftPro;default:return null}}}},actions:{cancelRequests:function(){Oi.cancelRequests()},getCraftData:function(t){var e=t.commit;return new Promise((function(t,i){new Promise((function(t,e){Oi.sendActionRequest("GET","plugin-store/craft-data").then((function(e){t(e)})).catch((function(t){n().isCancel(t)||e(t)}))})).then((function(a){e("updateCraftData",{response:a}),new Promise((function(t,e){Oi.sendApiRequest("GET","countries").then((function(e){t(e)})).catch((function(t){n().isCancel(t)||e(t)}))})).then((function(i){e("updateCountries",{responseData:i}),t()})).catch((function(t){i(t)}))})).catch((function(t){i(t)}))}))},getCraftIdData:function(t,e){var i=t.commit,a=e.accessToken;return new Promise((function(t,e){(function(t){var e=t.accessToken;return new Promise((function(t,i){Oi.sendApiRequest("GET","account",{headers:{Authorization:"Bearer "+e}}).then((function(e){t(e)})).catch((function(t){n().isCancel(t)||i(t)}))}))})({accessToken:a}).then((function(e){i("updateCraftIdData",{responseData:e}),t()})).catch((function(t){e(t)}))}))},getPluginLicenseInfo:function(t){var e=t.commit;return new Promise((function(t,i){new Promise((function(t,e){Oi.sendApiRequest("GET","cms-licenses",{params:{include:"plugins"}}).then((function(i){Oi.sendActionRequest("POST","app/get-plugin-license-info",{data:{pluginLicenses:i.license.pluginLicenses||[]},headers:{"X-CSRF-Token":Craft.csrfTokenValue}}).then((function(e){t(e)})).catch((function(t){n().isCancel(t)||e(t)}))}))})).then((function(i){e("updatePluginLicenseInfo",{response:i}),t(i)})).catch((function(t){i(t)}))}))},switchPluginEdition:function(t,e){var i=t.dispatch,a=e.pluginHandle,s=e.edition;return new Promise((function(t,e){(function(t,e){return new Promise((function(i,a){var s="pluginHandle="+t+"&edition="+e;Oi.sendActionRequest("POST","plugins/switch-edition",{data:s,headers:{"X-CSRF-Token":Craft.csrfTokenValue}}).then((function(t){Craft.clearCachedApiHeaders(),i(t)})).catch((function(t){n().isCancel(t)||a(t)}))}))})(a,s).then((function(a){i("getPluginLicenseInfo").then((function(e){t({switchPluginEditionResponse:a,getPluginLicenseInfoResponse:e})})).catch((function(t){return e(t)}))})).catch((function(t){return e(t)}))}))},tryEdition:function(t,e){return new Promise((function(t,i){(function(t){return new Promise((function(e,i){Oi.sendActionRequest("POST","app/try-edition",{data:"edition="+t,headers:{"X-CSRF-Token":Craft.csrfTokenValue}}).then((function(t){Craft.clearCachedApiHeaders(),e(t)})).catch((function(t){n().isCancel(t)||i(t)}))}))})(e).then((function(e){t(e)})).catch((function(t){i(t)}))}))}},mutations:{updateCraftData:function(t,e){var i=e.response;t.canTestEditions=i.data.canTestEditions,t.craftLogo=i.data.craftLogo,t.currentUser=i.data.currentUser,t.licensedEdition=i.data.licensedEdition,t.CraftEdition=i.data.CraftEdition,t.CraftPro=i.data.CraftPro,t.CraftSolo=i.data.CraftSolo},updateCraftIdData:function(t,e){var i=e.responseData;t.craftId=i},updateCountries:function(t,e){var i=e.responseData;t.countries=i.countries},updateCraftId:function(t,e){t.craftId=e},updatePluginLicenseInfo:function(t,e){var i=e.response;t.pluginLicenseInfo=i.data}}};e().use(d());var pn=new(d().Store)({strict:!0,modules:{app:{namespaced:!0,state:{searchQuery:"",showingScreenshotModal:!1,screenshotModalImages:null,screenshotModalImageKey:0},getters:{},actions:{},mutations:{updateSearchQuery:function(t,e){t.searchQuery=e},updateShowingScreenshotModal:function(t,e){t.showingScreenshotModal=e},updateScreenshotModalImages:function(t,e){t.screenshotModalImages=e},updateScreenshotModalImageKey:function(t,e){t.screenshotModalImageKey=e}}},cart:Ja,developerIndex:rn,pluginStore:hn,craft:un}}),fn=u({},(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"pluginstore-modal-flex"},[t.$slots.body?[t._t("body")]:[t.$slots.header?i("header",{staticClass:"header"},[t._t("header")],2):t._e(),t._v(" "),i("div",{staticClass:"pluginstore-modal-main"},[i("div",{staticClass:"pluginstore-modal-content"},[t._t("main")],2)])]],2)}),[],!1,null,null,null).exports,gn=u({components:{EditionBadge:p},props:{activeTrial:{type:Object,required:!0},loading:{type:Boolean,default:!1}},data:function(){return{addToCartLoading:!1}},methods:{addToCart:function(){var t=this;this.addToCartLoading=!0;var e={type:this.activeTrial.type,edition:this.activeTrial.editionHandle};"plugin-edition"===this.activeTrial.type&&(e.plugin=this.activeTrial.pluginHandle),this.$store.dispatch("cart/addToCart",[e]).then((function(){t.addToCartLoading=!1})).catch((function(e){t.addToCartLoading=!1;var i=e.errors&&e.errors[0]&&e.errors[0].message?e.errors[0].message:"Couldn’t add item to cart.";t.$root.displayError(i)}))},navigateToPlugin:function(){var t=this.activeTrial.navigateTo;this.$root.closeModal(),this.$route.path!==t&&this.$router.push({path:t})}}},(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"tw-border-t tw-border-solid tw-border-gray-200 md:tw-flex md:tw-justify-between md:tw-items-center tw-py-4 md:tw-py-2 tw-space-y-2 md:tw-space-y-0"},[i("div",{staticClass:"tw-flex tw-items-center tw-w-3/5"},[i("div",{staticClass:"tw-mr-4 tw-leading-3"},[t.activeTrial.iconUrl?i("img",{staticClass:"tw-w-10 tw-h-10",attrs:{src:t.activeTrial.iconUrl}}):i("div",{staticClass:"default-icon"})]),t._v(" "),i("div",{staticClass:"item-name"},[i("a",{staticClass:"tw-mr-2",attrs:{title:t.activeTrial.name},on:{click:function(e){return e.preventDefault(),t.navigateToPlugin.apply(null,arguments)}}},[i("strong",[t._v(t._s(t.activeTrial.name))])]),t._v(" "),t.activeTrial.editionName&&t.activeTrial.showEditionBadge?i("edition-badge",{attrs:{name:t.activeTrial.editionName}}):t._e()],1)]),t._v(" "),i("div",{staticClass:"tw-flex-1"},[t.activeTrial.price?[t.activeTrial.discountPrice?[i("del",{staticClass:"tw-mr-1"},[t._v(t._s(t._f("currency")(t.activeTrial.price)))]),t._v(" "),i("strong",[t._v(t._s(t._f("currency")(t.activeTrial.discountPrice)))])]:[i("strong",[t._v(t._s(t._f("currency")(t.activeTrial.price)))])]]:t._e()],2),t._v(" "),i("div",{staticClass:"md:tw-w-1/4"},[i("div",{staticClass:"md:tw-text-right"},[t.addToCartLoading||t.loading?[i("c-spinner",{attrs:{size:"sm"}})]:[i("button",{class:{"tw-text-blue-600 hover:tw-underline":!0,"disabled hover:tw-no-underline":t.activeTrial.licenseMismatched},attrs:{loading:t.addToCartLoading,disabled:t.loading},on:{click:function(e){return t.addToCart()}}},[t._v("\n "+t._s(t._f("t")("Add to cart","app"))+"\n ")])]],2)])])}),[],!1,null,null,null),vn=gn.exports;function mn(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function xn(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}var bn={mixins:[Ji],components:{ActiveTrial:vn},data:function(){return{loading:!1}},computed:function(t){for(var e=1;e0?i("div",{staticClass:"tw-border-t tw-border-solid tw-border-gray-200 tw-mt-6 tw-pt-6"},[t.pendingActiveTrials.length>1?i("div",{staticClass:"right"},[i("a",{class:{"tw-opacity-50 tw-cursor-default":t.loading},on:{click:function(e){return t.addAllTrialsToCart()}}},[t._v(t._s(t._f("t")("Add all to cart","app")))])]):t._e(),t._v(" "),i("h2",[t._v(t._s(t._f("t")("Active Trials","app")))]),t._v(" "),i("div",{staticClass:"cart-data"},t._l(t.pendingActiveTrials,(function(e,a){return i("div",{key:a},[i("active-trial",{attrs:{loading:t.loading,activeTrial:e}})],1)})),0)]):t._e()}),[],!1,null,null,null).exports;function wn(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function Cn(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}var Sn={props:{item:Object},computed:function(t){for(var e=1;e1?i("edition-badge",{attrs:{name:t.item.lineItem.purchasable.name}}):t._e()]:t._e()],2)}),[],!1,null,null,null).exports;function Pn(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function En(t){for(var e=1;e0&&(h="+"),d=this.$options.filters.currency(d),c=this.$options.filters.t("Updates until {date} ({sign}{price})","app",{date:l,sign:h,price:d})}a.push({label:c,value:o})}return a},itemLoading:function(t){return!!this.loadingItems[t]},onSelectedExpiryDateChange:function(t){var e=this;this.$set(this.loadingItems,t,!0);var i=this.cartItemsData[t];i.expiryDate=this.selectedExpiryDates[t],this.$store.dispatch("cart/updateItem",{itemKey:t,item:i}).then((function(){e.$delete(e.loadingItems,t)}))},payment:function(){this.$store.dispatch("cart/getOrderNumber").then((function(t){window.location.href="".concat(window.craftIdEndpoint,"/cart?orderNumber=").concat(t)}))},removeFromCart:function(t){var e=this;this.$set(this.loadingRemoveFromCart,t,!0),this.$store.dispatch("cart/removeFromCart",t).then((function(){e.$delete(e.loadingRemoveFromCart,t)})).catch((function(i){e.$delete(e.loadingRemoveFromCart,t);var a=i.errors&&i.errors[0]&&i.errors[0].message?i.errors[0].message:"Couldn’t remove item from cart.";e.$root.displayError(a)}))},removeFromCartLoading:function(t){return!!this.loadingRemoveFromCart[t]},pluginLicenseInfo:function(t){return this.getPluginLicenseInfo(t)}}),mounted:function(){var t=this;this.$store.dispatch("cart/getActiveTrials").then((function(){t.activeTrialsLoading=!1})).catch((function(){t.activeTrialsLoading=!1}))}},Mn={components:{Cart:u(On,(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("step",[i("template",{slot:"header"},[i("h1",[t._v(t._s(t._f("t")("Cart","app")))])]),t._v(" "),i("template",{slot:"main"},[t.activeTrialsLoading?[i("c-spinner")]:[i("h2",[t._v(t._s(t._f("t")("Items in your cart","app")))]),t._v(" "),t.cart?[t.cartItems.length?[i("div",{staticClass:"cart-data tw-border-t tw-border-solid tw-border-gray-200"},[t._l(t.cartItems,(function(e,a){return i("div",{key:"item"+a,staticClass:"tw-border-b tw-border-solid tw-border-gray-200 md:tw-flex"},[i("div",{staticClass:"md:tw-mr-6 tw-pt-4 md:tw-pb-4 md:tw-px-4"},[i("item-icon",{attrs:{item:e}})],1),t._v(" "),i("div",{staticClass:"tw-flex-1"},[i("div",{staticClass:"tw-flex tw-py-4"},[i("item-name",{staticClass:"tw-flex-1",attrs:{item:e}}),t._v(" "),i("div",{staticClass:"price tw-w-24 tw-text-right"},[i("strong",[t._v(t._s(t._f("currency")(e.lineItem.price)))])])],1),t._v(" "),i("div",{staticClass:"tw-border-t tw-border-solid tw-border-gray-200 tw-flex tw-justify-between tw-py-4"},[i("div",{staticClass:"expiry-date"},["cms-edition"===e.lineItem.purchasable.type||"plugin-edition"===e.lineItem.purchasable.type&&("new:"===e.lineItem.options.licenseKey.substring(0,4)||t.pluginLicenseInfo(e.plugin.handle)&&t.pluginLicenseInfo(e.plugin.handle).isTrial)?[i("c-dropdown",{attrs:{options:t.itemExpiryDateOptions(a)},on:{input:function(e){return t.onSelectedExpiryDateChange(a)}},model:{value:t.selectedExpiryDates[a],callback:function(e){t.$set(t.selectedExpiryDates,a,e)},expression:"selectedExpiryDates[itemKey]"}})]:t._e(),t._v(" "),t.itemLoading(a)?i("c-spinner"):t._e()],2),t._v(" "),t._l(e.lineItem.adjustments.filter((function(t){return"extendedUpdates"===t.sourceSnapshot.type})),(function(e,n){return[i("div",{key:a+"adjustment-"+n},[t._v("\n "+t._s(t._f("currency")(e.amount))+"\n ")])]}))],2),t._v(" "),i("item-adjustments",{attrs:{item:e}}),t._v(" "),i("div",{staticClass:"tw-py-4 tw-text-right tw-border-t tw-border-solid tw-border-gray-200"},[t.removeFromCartLoading(a)?[i("c-spinner",{staticClass:"sm"})]:[i("a",{attrs:{role:"button"},on:{click:function(e){return t.removeFromCart(a)}}},[t._v(t._s(t._f("t")("Remove","app")))])]],2)],1)])})),t._v(" "),i("div",{staticClass:"tw-flex tw-mt-4 tw-text-lg"},[i("div",{staticClass:"tw-w-14 tw-mr-14"}),t._v(" "),i("div",{staticClass:"tw-flex-1 tw-flex tw-justify-between"},[i("div",[i("strong",[t._v(t._s(t._f("t")("Total Price","app")))])]),t._v(" "),i("div",[i("strong",[t._v(t._s(t._f("currency")(t.cart.totalPrice)))])])])])],2),t._v(" "),i("div",{staticClass:"tw-mt-4 tw-py-4 tw-text-right"},[i("c-btn",{attrs:{kind:"primary",loading:t.loadingCheckout},on:{click:function(e){return t.payment()}}},[t._v(t._s(t._f("t")("Checkout","app"))+"\n ")])],1)]:i("div",[i("p",[t._v("\n "+t._s(t._f("t")("Your cart is empty.","app"))+"\n "),i("a",{on:{click:function(e){return t.$emit("continue-shopping")}}},[t._v(t._s(t._f("t")("Continue shopping","app")))])])])]:t._e(),t._v(" "),i("active-trials")]],2)],2)}),[],!1,null,null,null).exports},props:["pluginId","show"],data:function(){return{modal:null}},computed:{modalStep:function(){return this.$root.modalStep}},watch:{show:function(t){t?this.modal.show():this.modal.hide()}},mounted:function(){var t=this;this.modal=new Garnish.Modal(this.$refs.pluginstoremodal,{autoShow:!1,resizable:!0,onHide:function(){t.$emit("update:show",!1)}})}},Ln=(i(9139),u(Mn,(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"tw-hidden"},[i("div",{ref:"pluginstoremodal",staticClass:"pluginstore-modal modal",class:"step-"+t.modalStep,attrs:{id:"pluginstore-modal"}},["cart"===t.modalStep?i("cart",{on:{"continue-shopping":function(e){return t.$root.closeModal()}}}):t._e()],1)])}),[],!1,null,null,null).exports);function In(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function _n(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}var Dn={computed:function(t){for(var e=1;er?s*a/i:r*i/a,r>0&&t>r&&(t=r));for(var l=0;l1?[i("div",{staticClass:"ps-swiper-button-prev screenshot-modal-button"},[i("c-icon",{attrs:{icon:"chevron-left",size:"8"}})],1),t._v(" "),i("div",{staticClass:"ps-swiper-button-next screenshot-modal-button"},[i("c-icon",{attrs:{icon:"chevron-right",size:"8"}})],1),t._v(" "),i("div",{staticClass:"pagination-wrapper"},[i("div",{staticClass:"pagination-content"},[i("div",{class:"swiper-pagination",attrs:{slot:"pagination"},slot:"pagination"})])])]:t._e()],2):t._e()])}),[],!1,null,null,null)),qn=Un.exports;function Zn(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function Qn(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}var Kn={components:{Sidebar:Fn,Modal:Ln,StatusMessage:Li,ScreenshotModal:qn},computed:function(t){for(var e=1;e0?a("c-icon",{staticClass:"tw-mr-1",attrs:{icon:e.icon,size:"3"}}):e._e(),e._v(" "),e._t("default"),e._v(" "),e.trailingIcon&&e.trailingIcon.length>0?a("c-icon",{staticClass:"tw-ml-1",attrs:{icon:e.trailingIcon,size:"3"}}):e._e()],2)],2)}),[],!1,null,null,null).exports),ls={props:{disabled:{type:Boolean,default:!1},invalid:{type:Boolean,default:!1},fullwidth:{type:Boolean,default:!1},id:{type:String,default:function(){return"c-dropdown-id-"+Math.random().toString(36).substring(2,11)}},options:{type:Array,default:null},value:{type:[String,Number],default:null}}},cs=(i(3061),u(ls,(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"c-dropdown",class:{"is-invalid":t.invalid,"tw-w-full":t.fullwidth,disabled:t.disabled}},[i("select",{class:{"form-select sm:tw-text-sm sm:tw-leading-5 tw-ps-3 tw-pe-10 tw-rounded-md":!0,"tw-w-full":t.fullwidth,"tw-border-danger":t.invalid,"tw-border-field":!t.invalid},attrs:{disabled:t.disabled},domProps:{value:t.value},on:{input:function(e){return t.$emit("input",e.target.value)}}},t._l(t.options,(function(e,a){return i("option",{key:a,domProps:{value:e.value}},[t._v("\n "+t._s(e.label)+"\n ")])})),0)])}),[],!1,null,null,null).exports),ds=u({},(function(){var t=this.$createElement,e=this._self._c||t;return e("svg",{attrs:{version:"1.1",id:"alert",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 448 448",fill:"currentColor","xml:space":"preserve"}},[e("path",{attrs:{d:"M256,343.8v-47.5c0-4.5-3.5-8.2-8-8.2h-48c-4.5,0-8,3.8-8,8.2v47.5c0,4.5,3.5,8.2,8,8.2h48C252.5,352,256,348.2,256,343.8z\nM255.5,250.2l4.5-114.8c0-1.5-0.8-3.5-2.5-4.8c-1.5-1.2-3.8-2.8-6-2.8h-55c-2.2,0-4.5,1.5-6,2.8c-1.8,1.2-2.5,3.8-2.5,5.2\nl4.2,114.2c0,3.2,3.8,5.8,8.5,5.8H247C251.5,256,255.2,253.5,255.5,250.2z M252,16.8l192,352c5.5,9.8,5.2,21.8-0.5,31.5\nS427.2,416,416,416H32c-11.2,0-21.8-6-27.5-15.8s-6-21.8-0.5-31.5l192-352C201.5,6.5,212.2,0,224,0S246.5,6.5,252,16.8z"}})])}),[],!1,null,null,null).exports,hs=u({},(function(){var t=this.$createElement,e=this._self._c||t;return e("svg",{staticStyle:{"enable-background":"new 0 0 417 448"},attrs:{version:"1.1",id:"Layer_1",xmlns:"http://www.w3.org/2000/svg",x:"0px",y:"0px",viewBox:"0 0 417 448","xml:space":"preserve",fill:"currentColor"}},[e("path",{attrs:{d:"M409.8,119.5c6.2,9,8,20.8,4.5,32.3l-68.8,226.5c-6.2,21.2-28.2,37.8-49.8,37.8H65c-25.5,0-52.8-20.2-62-46.2\n\tc-4-11.2-4-22.2-0.5-31.8c0.5-5,1.5-10,1.8-16c0.2-4-2-7.2-1.5-10.2c1-6,6.2-10.2,10.2-17c7.5-12.5,16-32.8,18.8-45.8\n\tc1.2-4.8-1.2-10.2,0-14.5c1.2-4.8,6-8.2,8.5-12.8C47,210.2,55.8,188,57,176.2c0.5-5.2-2-11-0.5-15c1.8-5.8,7.2-8.2,11-13.2\n\tc6-8.2,16-32,17.5-45.3c0.5-4.2-2-8.5-1.2-13c1-4.8,7-9.8,11-15.5c10.5-15.5,12.5-49.8,44.2-40.8l-0.2,0.8c4.2-1,8.5-2.2,12.8-2.2\n\th190.2c11.8,0,22.2,5.2,28.5,14c6.5,9,8,20.8,4.5,32.5L306.2,305c-11.8,38.5-18.2,47-50,47H39c-3.2,0-7.2,0.8-9.5,3.8\n\tc-2,3-2.2,5.2-0.2,10.8c5,14.5,22.2,17.5,36,17.5H296c9.2,0,20-5.2,22.8-14.2l75-246.8c1.5-4.8,1.5-9.8,1.2-14.2\n\tC400.8,111,406,114.5,409.8,119.5z M143.8,120c-1.5,4.5,1,8,5.5,8h152c4.2,0,9-3.5,10.5-8l5.2-16c1.5-4.5-1-8-5.5-8h-152\n\tc-4.2,0-9,3.5-10.5,8L143.8,120z M123,184c-1.5,4.5,1,8,5.5,8h152c4.2,0,9-3.5,10.5-8l5.2-16c1.5-4.5-1-8-5.5-8h-152\n\tc-4.2,0-9,3.5-10.5,8L123,184z"}})])}),[],!1,null,null,null).exports,us=u({},(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("svg",{attrs:{version:"1.1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 28 28",fill:"currentColor"}},[i("title",[t._v("check")]),t._v(" "),i("path",{attrs:{d:"M26.109 8.844c0 0.391-0.156 0.781-0.438 1.062l-13.438 13.438c-0.281 0.281-0.672 0.438-1.062 0.438s-0.781-0.156-1.062-0.438l-7.781-7.781c-0.281-0.281-0.438-0.672-0.438-1.062s0.156-0.781 0.438-1.062l2.125-2.125c0.281-0.281 0.672-0.438 1.062-0.438s0.781 0.156 1.062 0.438l4.594 4.609 10.25-10.266c0.281-0.281 0.672-0.438 1.062-0.438s0.781 0.156 1.062 0.438l2.125 2.125c0.281 0.281 0.438 0.672 0.438 1.062z"}})])}),[],!1,null,null,null).exports,ps=u({},(function(){var t=this.$createElement,e=this._self._c||t;return e("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor"}},[e("path",{attrs:{"fill-rule":"evenodd",d:"M12.707 5.293a1 1 0 010 1.414L9.414 10l3.293 3.293a1 1 0 01-1.414 1.414l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 0z","clip-rule":"evenodd"}})])}),[],!1,null,null,null).exports,fs=u({},(function(){var t=this.$createElement,e=this._self._c||t;return e("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor"}},[e("path",{attrs:{"fill-rule":"evenodd",d:"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z","clip-rule":"evenodd"}})])}),[],!1,null,null,null).exports,gs=u({},(function(){var t=this.$createElement,e=this._self._c||t;return e("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"}},[e("path",{attrs:{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 5H6a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2v-1M8 5a2 2 0 002 2h2a2 2 0 002-2M8 5a2 2 0 012-2h2a2 2 0 012 2m0 0h2a2 2 0 012 2v3m2 4H10m0 0l3-3m-3 3l3 3"}})])}),[],!1,null,null,null).exports,vs=u({},(function(){var t=this.$createElement,e=this._self._c||t;return e("svg",{attrs:{"aria-hidden":"true",focusable:"false","data-prefix":"fas","data-icon":"copy",role:"img",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512"}},[e("path",{attrs:{fill:"currentColor",d:"M320 448v40c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24V120c0-13.255 10.745-24 24-24h72v296c0 30.879 25.121 56 56 56h168zm0-344V0H152c-13.255 0-24 10.745-24 24v368c0 13.255 10.745 24 24 24h272c13.255 0 24-10.745 24-24V128H344c-13.2 0-24-10.8-24-24zm120.971-31.029L375.029 7.029A24 24 0 0 0 358.059 0H352v96h96v-6.059a24 24 0 0 0-7.029-16.97z"}})])}),[],!1,null,null,null).exports,ms=u({},(function(){var t=this.$createElement,e=this._self._c||t;return e("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor"}},[e("path",{attrs:{"fill-rule":"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7 4a1 1 0 11-2 0 1 1 0 012 0zm-1-9a1 1 0 00-1 1v4a1 1 0 102 0V6a1 1 0 00-1-1z","clip-rule":"evenodd"}})])}),[],!1,null,null,null).exports,xs=u({},(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("svg",{attrs:{version:"1.1",xmlns:"http://www.w3.org/2000/svg",width:"28",height:"28",viewBox:"0 0 28 28",fill:"currentColor"}},[i("title",[t._v("exclamation-triangle")]),t._v(" "),i("path",{attrs:{d:"M16 21.484v-2.969c0-0.281-0.219-0.516-0.5-0.516h-3c-0.281 0-0.5 0.234-0.5 0.516v2.969c0 0.281 0.219 0.516 0.5 0.516h3c0.281 0 0.5-0.234 0.5-0.516zM15.969 15.641l0.281-7.172c0-0.094-0.047-0.219-0.156-0.297-0.094-0.078-0.234-0.172-0.375-0.172h-3.437c-0.141 0-0.281 0.094-0.375 0.172-0.109 0.078-0.156 0.234-0.156 0.328l0.266 7.141c0 0.203 0.234 0.359 0.531 0.359h2.891c0.281 0 0.516-0.156 0.531-0.359zM15.75 1.047l12 22c0.344 0.609 0.328 1.359-0.031 1.969s-1.016 0.984-1.719 0.984h-24c-0.703 0-1.359-0.375-1.719-0.984s-0.375-1.359-0.031-1.969l12-22c0.344-0.641 1.016-1.047 1.75-1.047s1.406 0.406 1.75 1.047z"}})])}),[],!1,null,null,null).exports,bs=u({},(function(){var t=this.$createElement,e=this._self._c||t;return e("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"}},[e("path",{attrs:{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14"}})])}),[],!1,null,null,null).exports,ys=u({},(function(){var t=this.$createElement,e=this._self._c||t;return e("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor"}},[e("path",{attrs:{"fill-rule":"evenodd",d:"M3 6a3 3 0 013-3h10a1 1 0 01.8 1.6L14.25 8l2.55 3.4A1 1 0 0116 13H6a1 1 0 00-1 1v3a1 1 0 11-2 0V6z","clip-rule":"evenodd"}})])}),[],!1,null,null,null).exports,ws=u({},(function(){var t=this.$createElement,e=this._self._c||t;return e("svg",{attrs:{"aria-hidden":"true",focusable:"false","data-prefix":"fab","data-icon":"github",role:"img",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 496 512"}},[e("path",{attrs:{fill:"currentColor",d:"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3 .3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5 .3-6.2 2.3zm44.2-1.7c-2.9 .7-4.9 2.6-4.6 4.9 .3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3 .7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3 .3 2.9 2.3 3.9 1.6 1 3.6 .7 4.3-.7 .7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3 .7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3 .7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"}})])}),[],!1,null,null,null).exports,Cs=u({},(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("svg",{attrs:{viewBox:"0 0 100 100",version:"1.1",xmlns:"http://www.w3.org/2000/svg"}},[i("title",[t._v("info-circle")]),t._v(" "),i("desc",[t._v("Created with Sketch.")]),t._v(" "),i("defs"),t._v(" "),i("g",{attrs:{id:"Page-1",stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"}},[i("g",{attrs:{id:"info-circle",fill:"currentColor"}},[i("path",{attrs:{d:"M66.6666667,81.25 L66.6666667,70.8333333 C66.6666667,69.6614583 65.7552083,68.75 64.5833333,68.75 L58.3333333,68.75 L58.3333333,35.4166667 C58.3333333,34.2447917 57.421875,33.3333333 56.25,33.3333333 L35.4166667,33.3333333 C34.2447917,33.3333333 33.3333333,34.2447917 33.3333333,35.4166667 L33.3333333,45.8333333 C33.3333333,47.0052083 34.2447917,47.9166667 35.4166667,47.9166667 L41.6666667,47.9166667 L41.6666667,68.75 L35.4166667,68.75 C34.2447917,68.75 33.3333333,69.6614583 33.3333333,70.8333333 L33.3333333,81.25 C33.3333333,82.421875 34.2447917,83.3333333 35.4166667,83.3333333 L64.5833333,83.3333333 C65.7552083,83.3333333 66.6666667,82.421875 66.6666667,81.25 Z M58.3333333,22.9166667 L58.3333333,12.5 C58.3333333,11.328125 57.421875,10.4166667 56.25,10.4166667 L43.75,10.4166667 C42.578125,10.4166667 41.6666667,11.328125 41.6666667,12.5 L41.6666667,22.9166667 C41.6666667,24.0885417 42.578125,25 43.75,25 L56.25,25 C57.421875,25 58.3333333,24.0885417 58.3333333,22.9166667 Z M100,50 C100,77.6041667 77.6041667,100 50,100 C22.3958333,100 0,77.6041667 0,50 C0,22.3958333 22.3958333,0 50,0 C77.6041667,0 100,22.3958333 100,50 Z",id:"Shape"}})])])])}),[],!1,null,null,null).exports,Ss=u({},(function(){var t=this.$createElement,e=this._self._c||t;return e("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor"}},[e("path",{attrs:{"fill-rule":"evenodd",d:"M12.586 4.586a2 2 0 112.828 2.828l-3 3a2 2 0 01-2.828 0 1 1 0 00-1.414 1.414 4 4 0 005.656 0l3-3a4 4 0 00-5.656-5.656l-1.5 1.5a1 1 0 101.414 1.414l1.5-1.5zm-5 5a2 2 0 012.828 0 1 1 0 101.414-1.414 4 4 0 00-5.656 0l-3 3a4 4 0 105.656 5.656l1.5-1.5a1 1 0 10-1.414-1.414l-1.5 1.5a2 2 0 11-2.828-2.828l3-3z","clip-rule":"evenodd"}})])}),[],!1,null,null,null).exports,ks=u({},(function(){var t=this.$createElement,e=this._self._c||t;return e("svg",{attrs:{"aria-hidden":"true",focusable:"false","data-prefix":"fas","data-icon":"plug",role:"img",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 384 512"}},[e("path",{attrs:{fill:"currentColor",d:"M320 32c0-17.62-14.38-32-32-32s-32 14.38-32 32v96h64V32zM368 159.1h-352c-8.875 0-16 7.125-16 16v32c0 8.875 7.125 16 16 16H32V256c0 76 53.5 141.6 128 156.8V512h64v-99.25C298.5 397.6 352 332 352 256V223.1h16c8.875 0 16-7.125 16-16v-32C384 167.1 376.9 159.1 368 159.1zM128 32c0-17.62-14.38-32-32-32S64 14.38 64 32v96h64V32z"}})])}),[],!1,null,null,null).exports,As=u({},(function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("svg",{attrs:{version:"1.1",xmlns:"http://www.w3.org/2000/svg",width:"26",height:"28",viewBox:"0 0 26 28",fill:"currentColor"}},[i("title",[t._v("search")]),t._v(" "),i("path",{attrs:{d:"M18 13c0-3.859-3.141-7-7-7s-7 3.141-7 7 3.141 7 7 7 7-3.141 7-7zM26 26c0 1.094-0.906 2-2 2-0.531 0-1.047-0.219-1.406-0.594l-5.359-5.344c-1.828 1.266-4.016 1.937-6.234 1.937-6.078 0-11-4.922-11-11s4.922-11 11-11 11 4.922 11 11c0 2.219-0.672 4.406-1.937 6.234l5.359 5.359c0.359 0.359 0.578 0.875 0.578 1.406z"}})])}),[],!1,null,null,null).exports,Ps=u({},(function(){var t=this.$createElement,e=this._self._c||t;return e("svg",{attrs:{"aria-hidden":"true",focusable:"false","data-prefix":"fal","data-icon":"star-sharp",role:"img",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 576 512"}},[e("path",{attrs:{fill:"currentColor",d:"M537.8 181.6h-177.6l-54.89-169.1C302.6 4.19 295.3 0 288 0S273.4 4.19 270.7 12.57L215.8 181.6H38.21c-17.6 0-24.92 22.54-10.68 32.9l143.7 104.5L116.3 488.1C112.2 500.9 122.3 512 133.7 512c3.553 0 7.227-1.09 10.62-3.556L288 403.1l143.7 104.5C435.1 510.9 438.8 512 442.3 512c11.36 0 21.49-11.13 17.35-23.89l-54.89-169.1l143.7-104.5C562.7 204.2 555.4 181.6 537.8 181.6zM370.8 317.9l45.34 139.7l-118.7-86.3c-5.61-4.079-13.21-4.079-18.82 0l-118.7 86.3l45.34-139.7c2.139-6.589-.2054-13.81-5.808-17.88L80.7 213.6h146.8c6.933 0 13.08-4.465 15.22-11.06L288 62.96l45.33 139.6c2.141 6.594 8.285 11.06 15.22 11.06h146.8l-118.7 86.35C370.1 304.1 368.6 311.3 370.8 317.9z"}})])}),[],!1,null,null,null).exports,Es=u({},(function(){var t=this.$createElement,e=this._self._c||t;return e("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"}},[e("path",{attrs:{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M21 12a9 9 0 01-9 9m9-9a9 9 0 00-9-9m9 9H3m9 9a9 9 0 01-9-9m9 9c1.657 0 3-4.03 3-9s-1.343-9-3-9m0 18c-1.657 0-3-4.03-3-9s1.343-9 3-9m-9 9a9 9 0 019-9"}})])}),[],!1,null,null,null).exports,Ts=u({},(function(){var t=this.$createElement,e=this._self._c||t;return e("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"}},[e("path",{attrs:{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"}})])}),[],!1,null,null,null).exports,Os=u({props:{icon:String,size:{type:[String,Number],default:4}},components:{AlertIcon:ds,BookIcon:hs,CheckIcon:us,ChevronLeftIcon:ps,ChevronRightIcon:fs,ClipboardCopyIcon:gs,CopyIcon:vs,ExclamationCircleIcon:ms,ExclamationTriangleIcon:xs,ExternalLinkIcon:bs,FlagIcon:ys,GithubIcon:ws,InfoCircleIcon:Cs,PlugIcon:ks,LinkIcon:Ss,SearchIcon:As,StarIcon:Ps,WorldIcon:Es,XIcon:Ts},computed:{computedComponent:function(){return this.icon+"-icon"}}},(function(){var t=this,e=t.$createElement;return(t._self._c||e)(t.computedComponent,{tag:"component",staticClass:"tw-align-middle tw-inline-block",class:{"tw-w-3 tw-h-3":3===parseInt(t.size),"tw-w-4 tw-h-4":4===parseInt(t.size),"tw-w-5 tw-h-5":5===parseInt(t.size),"tw-w-6 tw-h-6":6===parseInt(t.size),"tw-w-7 tw-h-7":7===parseInt(t.size),"tw-w-8 tw-h-8":8===parseInt(t.size),"tw-w-10 tw-h-10":10===parseInt(t.size),"tw-w-12 tw-h-12":12===parseInt(t.size),"tw-w-16 tw-h-16":16===parseInt(t.size)}})}),[],!1,null,null,null).exports,Ms={props:{animationClass:{type:String},size:{type:String,default:"base"}}},Ls=(i(2888),u(Ms,(function(){var t,e,i=this,a=i.$createElement,n=i._self._c||a;return n("div",{staticClass:"c-spinner",class:(t={"tw-inline-block":!0},t[i.size]=!0,t)},[n("div",{staticClass:"animation",class:[(e={"tw-border-gray-400":!i.animationClass},e[i.animationClass]=i.animationClass,e)]})])}),[],!1,null,null,null).exports),Is=u({name:"TextboxComponent",props:{type:{type:String,default:"text"},value:{type:[String,Number],default:""}},computed:{computedType:function(){return"textarea"===this.type?null:this.type}}},(function(){var t=this,e=t.$createElement;return(t._self._c||e)("input",{staticClass:"tw-rounded-md tw-bg-gray-50 tw-border tw-border-solid tw-px-3 tw-py-2 tw-border-gray-300 tw-text-sm",attrs:{type:t.computedType},domProps:{value:t.value},on:{blur:function(e){return t.$emit("blur",e)},focus:function(e){return t.$emit("focus",e.target.value)},change:function(e){return t.$emit("change",e)},input:function(e){return t.$emit("input",e.target.value)},keydown:function(e){return t.$emit("keydown",e)},keypress:function(e){return t.$emit("keypress",e)},keyup:function(e){return t.$emit("keyup",e)}}})}),[],!1,null,null,null).exports;function _s(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function Ds(t){for(var e=1;e1&&void 0!==arguments[1]?arguments[1]:",.0f";return Craft.formatNumber(t,e)})),e().filter("t",(function(t,e,i){return Craft.t(e,t,i)})),e().component("c-btn",os),e().component("c-dropdown",cs),e().component("c-icon",Os),e().component("c-spinner",Ls),e().component("c-textbox",Is),Garnish.$doc.ready((function(){Craft.initUiElements(),window.pluginStoreApp=new(e())({router:Ga,store:pn,render:function(t){return t(es)},components:{Modal:Ln,StatusMessage:Li,App:es},data:function(){return{allDataLoaded:!1,cartDataLoaded:!1,coreDataLoaded:!1,craftDataLoaded:!1,craftIdDataLoaded:!1,modalStep:null,pageTitle:"Plugin Store",plugin:null,pluginId:null,pluginLicenseInfoLoaded:!1,pluginStoreDataError:!1,showModal:!1,statusMessage:null}},computed:Ds(Ds({},(0,c.mapState)({cart:function(t){return t.cart.cart},craftId:function(t){return t.craft.craftId}})),{},{pluginStoreDataLoaded:function(){return this.coreDataLoaded&&this.pluginLicenseInfoLoaded}}),watch:{cart:function(t){this.$emit("cartChange",t)},craftId:function(){this.$emit("craftIdChange")}},methods:{displayNotice:function(t,e){Craft.cp.displayNotice(t,e)},displaySuccess:function(t,e){Craft.cp.displaySuccess(t,e)},displayError:function(t,e){Craft.cp.displayError(t,e)},openModal:function(t){this.modalStep=t,this.showModal=!0},closeModal:function(){this.showModal=!1},updateCraftId:function(t,e){var i=this;if(this.$store.commit("craft/updateCraftId",t),this.craftId&&this.craftId.email!==this.cart.email){var a={email:this.craftId.email};this.$store.dispatch("cart/saveCart",a).then((function(){i.$emit("craftIdUpdated"),e&&e()})).catch((function(t){throw i.$root.displayError("Couldn’t update cart’s email."),e&&e(),t}))}else this.$emit("craftIdUpdated"),e&&e()},initializeOuterComponents:function(){var t=this;$("#header h1").on("click",(function(){t.$router.push({path:"/"})}));var e=$("#cart-button");e.on("click",(function(e){e.preventDefault(),t.openModal("cart")})),e.keydown((function(e){switch(e.which){case 13:case 32:e.preventDefault(),t.openModal("cart")}})),this.$on("cartChange",(function(t){var i=0;t&&(i=t.totalQty),$(".badge",e).html(i)}));var i=$("#pluginstore-actions"),a=$("#pluginstore-actions-spinner");this.$on("dataLoaded",(function(){!t.pluginStoreDataLoaded||t.craftDataLoaded&&t.cartDataLoaded&&t.craftIdDataLoaded||a.removeClass("hidden")})),this.$on("allDataLoaded",(function(){i.removeClass("hidden"),a.addClass("hidden")}));var n=$("#craftid-account"),s=$("#craftid-connect-form"),r=$("#craftid-disconnect-form");this.$on("craftIdChange",(function(){this.craftId?($(".label",n).text(this.craftId.username),n.removeClass("hidden"),s.addClass("hidden"),r.removeClass("hidden")):(n.addClass("hidden"),s.removeClass("hidden"),r.addClass("hidden"))})),$("a[href]").on("click",(function(){t.$store.dispatch("craft/cancelRequests"),t.$store.dispatch("pluginStore/cancelRequests")}))},loadCartData:function(){var t=this;this.$store.dispatch("cart/getCart").then((function(){t.cartDataLoaded=!0,t.$emit("dataLoaded")}))},loadCraftData:function(t){var e=this;this.$store.dispatch("craft/getCraftData").then((function(){e.craftDataLoaded=!0,e.$emit("dataLoaded"),"function"==typeof t&&t()})).catch((function(){e.craftDataLoaded=!0}))},loadCraftIdData:function(){var t=this;if(window.craftIdAccessToken){var e=window.craftIdAccessToken;this.$store.dispatch("craft/getCraftIdData",{accessToken:e}).then((function(){t.craftIdDataLoaded=!0,t.$emit("dataLoaded")}))}else this.craftIdDataLoaded=!0,this.$emit("dataLoaded")},loadData:function(){var t=this;this.loadPluginStoreData(),this.loadCraftData((function(){t.loadCraftIdData(),t.loadCartData()}))},loadPluginStoreData:function(){var t=this;this.$store.dispatch("pluginStore/getCoreData").then((function(){t.coreDataLoaded=!0,t.$emit("dataLoaded")})).catch((function(e){if(!n().isCancel(e))throw t.pluginStoreDataError=!0,t.statusMessage=t.$options.filters.t("The Plugin Store is not available, please try again later.","app"),e})),this.$store.dispatch("craft/getPluginLicenseInfo").then((function(){t.pluginLicenseInfoLoaded=!0,t.$emit("dataLoaded")})).catch((function(t){if(!n().isCancel(t))throw t}))},onDataLoaded:function(){return this.pluginStoreDataLoaded&&this.craftDataLoaded&&this.cartDataLoaded&&this.craftIdDataLoaded?(this.allDataLoaded=!0,void this.$emit("allDataLoaded")):null}},created:function(){this.pageTitle=this.$options.filters.t("Plugin Store","app"),this.statusMessage=this.$options.filters.t("Loading Plugin Store…","app"),this.initializeOuterComponents(),this.$on("dataLoaded",this.onDataLoaded),this.loadData()}}).$mount("#app")}))}()}(); +!function(){var t={1394:function(t,e){!function(i,a){var n={version:"0.4.1",settings:{currency:{symbol:"$",format:"%s%v",decimal:".",thousand:",",precision:2,grouping:3},number:{precision:0,grouping:3,thousand:",",decimal:"."}}},s=Array.prototype.map,r=Array.isArray,o=Object.prototype.toString;function l(t){return!!(""===t||t&&t.charCodeAt&&t.substr)}function c(t){return r?r(t):"[object Array]"===o.call(t)}function d(t){return t&&"[object Object]"===o.call(t)}function h(t,e){var i;for(i in t=t||{},e=e||{})e.hasOwnProperty(i)&&null==t[i]&&(t[i]=e[i]);return t}function u(t,e,i){var a,n,r=[];if(!t)return r;if(s&&t.map===s)return t.map(e,i);for(a=0,n=t.length;a3?l.length%3:0;return o+(f?l.substr(0,f)+s.thousand:"")+l.substr(f).replace(/(\d{3})(?=\d)/g,"$1"+s.thousand)+(r?s.decimal+v(Math.abs(t),r).split(".")[1]:"")},x=n.formatMoney=function(t,e,i,a,s,r){if(c(t))return u(t,(function(t){return x(t,e,i,a,s,r)}));t=g(t);var o=h(d(e)?e:{symbol:e,precision:i,thousand:a,decimal:s,format:r},n.settings.currency),l=f(o.format);return(t>0?l.pos:t<0?l.neg:l.zero).replace("%s",o.symbol).replace("%v",m(Math.abs(t),p(o.precision),o.thousand,o.decimal))};n.formatColumn=function(t,e,i,a,s,r){if(!t)return[];var o=h(d(e)?e:{symbol:e,precision:i,thousand:a,decimal:s,format:r},n.settings.currency),v=f(o.format),x=v.pos.indexOf("%s")0?v.pos:t<0?v.neg:v.zero).replace("%s",o.symbol).replace("%v",m(Math.abs(t),p(o.precision),o.thousand,o.decimal));return i.length>b&&(b=i.length),i}));return u(y,(function(t,e){return l(t)&&t.lengtht.length)&&(e=t.length);for(var i=0,a=new Array(e);i>16,r=i>>8&255,o=255&i;return"#"+(16777216+65536*(Math.round((a-s)*n)+s)+256*(Math.round((a-r)*n)+r)+(Math.round((a-o)*n)+o)).toString(16).slice(1)}},{key:"shadeColor",value:function(e,i){return t.isColorHex(i)?this.shadeHexColor(e,i):this.shadeRGBColor(e,i)}}],[{key:"bind",value:function(t,e){return function(){return t.apply(e,arguments)}}},{key:"isObject",value:function(t){return t&&"object"===r(t)&&!Array.isArray(t)&&null!=t}},{key:"is",value:function(t,e){return Object.prototype.toString.call(e)==="[object "+t+"]"}},{key:"listToArray",value:function(t){var e,i=[];for(e=0;ee.length?t:e}))),t.length>e.length?t:e}),0)}},{key:"hexToRgba",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"#999999",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:.6;"#"!==t.substring(0,1)&&(t="#999999");var i=t.replace("#","");i=i.match(new RegExp("(.{"+i.length/3+"})","g"));for(var a=0;a1&&void 0!==arguments[1]?arguments[1]:"x",i=t.toString().slice();return i.replace(/[` ~!@#$%^&*()|+\=?;:'",.<>{}[\]\\/]/gi,e)}},{key:"negToZero",value:function(t){return t<0?0:t}},{key:"moveIndexInArray",value:function(t,e,i){if(i>=t.length)for(var a=i-t.length+1;a--;)t.push(void 0);return t.splice(i,0,t.splice(e,1)[0]),t}},{key:"extractNumber",value:function(t){return parseFloat(t.replace(/[^\d.]*/g,""))}},{key:"findAncestor",value:function(t,e){for(;(t=t.parentElement)&&!t.classList.contains(e););return t}},{key:"setELstyles",value:function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t.style.key=e[i])}},{key:"isNumber",value:function(t){return!isNaN(t)&&parseFloat(Number(t))===t&&!isNaN(parseInt(t,10))}},{key:"isFloat",value:function(t){return Number(t)===t&&t%1!=0}},{key:"isSafari",value:function(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}},{key:"isFirefox",value:function(){return navigator.userAgent.toLowerCase().indexOf("firefox")>-1}},{key:"isIE11",value:function(){if(-1!==window.navigator.userAgent.indexOf("MSIE")||window.navigator.appVersion.indexOf("Trident/")>-1)return!0}},{key:"isIE",value:function(){var t=window.navigator.userAgent,e=t.indexOf("MSIE ");if(e>0)return parseInt(t.substring(e+5,t.indexOf(".",e)),10);if(t.indexOf("Trident/")>0){var i=t.indexOf("rv:");return parseInt(t.substring(i+3,t.indexOf(".",i)),10)}var a=t.indexOf("Edge/");return a>0&&parseInt(t.substring(a+5,t.indexOf(".",a)),10)}}]),t}(),y=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.setEasingFunctions()}return c(t,[{key:"setEasingFunctions",value:function(){var t;if(!this.w.globals.easing){switch(this.w.config.chart.animations.easing){case"linear":t="-";break;case"easein":t="<";break;case"easeout":t=">";break;case"easeinout":default:t="<>";break;case"swing":t=function(t){var e=1.70158;return(t-=1)*t*((e+1)*t+e)+1};break;case"bounce":t=function(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375};break;case"elastic":t=function(t){return t===!!t?t:Math.pow(2,-10*t)*Math.sin((t-.075)*(2*Math.PI)/.3)+1}}this.w.globals.easing=t}}},{key:"animateLine",value:function(t,e,i,a){t.attr(e).animate(a).attr(i)}},{key:"animateMarker",value:function(t,e,i,a,n,s){e||(e=0),t.attr({r:e,width:e,height:e}).animate(a,n).attr({r:i,width:i.width,height:i.height}).afterAll((function(){s()}))}},{key:"animateCircle",value:function(t,e,i,a,n){t.attr({r:e.r,cx:e.cx,cy:e.cy}).animate(a,n).attr({r:i.r,cx:i.cx,cy:i.cy})}},{key:"animateRect",value:function(t,e,i,a,n){t.attr(e).animate(a).attr(i).afterAll((function(){return n()}))}},{key:"animatePathsGradually",value:function(t){var e=t.el,i=t.realIndex,a=t.j,n=t.fill,s=t.pathFrom,r=t.pathTo,o=t.speed,l=t.delay,c=this.w,d=0;c.config.chart.animations.animateGradually.enabled&&(d=c.config.chart.animations.animateGradually.delay),c.config.chart.animations.dynamicAnimation.enabled&&c.globals.dataChanged&&"bar"!==c.config.chart.type&&(d=0),this.morphSVG(e,i,a,"line"!==c.config.chart.type||c.globals.comboCharts?n:"stroke",s,r,o,l*d)}},{key:"showDelayedElements",value:function(){this.w.globals.delayedElements.forEach((function(t){t.el.classList.remove("apexcharts-element-hidden")}))}},{key:"animationCompleted",value:function(t){var e=this.w;e.globals.animationEnded||(e.globals.animationEnded=!0,this.showDelayedElements(),"function"==typeof e.config.chart.events.animationEnd&&e.config.chart.events.animationEnd(this.ctx,{el:t,w:e}))}},{key:"morphSVG",value:function(t,e,i,a,n,s,r,o){var l=this,c=this.w;n||(n=t.attr("pathFrom")),s||(s=t.attr("pathTo"));var d=function(t){return"radar"===c.config.chart.type&&(r=1),"M 0 ".concat(c.globals.gridHeight)};(!n||n.indexOf("undefined")>-1||n.indexOf("NaN")>-1)&&(n=d()),(!s||s.indexOf("undefined")>-1||s.indexOf("NaN")>-1)&&(s=d()),c.globals.shouldAnimate||(r=1),t.plot(n).animate(1,c.globals.easing,o).plot(n).animate(r,c.globals.easing,o).plot(s).afterAll((function(){b.isNumber(i)?i===c.globals.series[c.globals.maxValsInArrayIndex].length-2&&c.globals.shouldAnimate&&l.animationCompleted(t):"none"!==a&&c.globals.shouldAnimate&&(!c.globals.comboCharts&&e===c.globals.series.length-1||c.globals.comboCharts)&&l.animationCompleted(t),l.showDelayedElements()}))}}]),t}(),w=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"getDefaultFilter",value:function(t,e){var i=this.w;t.unfilter(!0),(new window.SVG.Filter).size("120%","180%","-5%","-40%"),"none"!==i.config.states.normal.filter?this.applyFilter(t,e,i.config.states.normal.filter.type,i.config.states.normal.filter.value):i.config.chart.dropShadow.enabled&&this.dropShadow(t,i.config.chart.dropShadow,e)}},{key:"addNormalFilter",value:function(t,e){var i=this.w;i.config.chart.dropShadow.enabled&&!t.node.classList.contains("apexcharts-marker")&&this.dropShadow(t,i.config.chart.dropShadow,e)}},{key:"addLightenFilter",value:function(t,e,i){var a=this,n=this.w,s=i.intensity;t.unfilter(!0),new window.SVG.Filter,t.filter((function(t){var i=n.config.chart.dropShadow;(i.enabled?a.addShadow(t,e,i):t).componentTransfer({rgb:{type:"linear",slope:1.5,intercept:s}})})),t.filterer.node.setAttribute("filterUnits","userSpaceOnUse"),this._scaleFilterSize(t.filterer.node)}},{key:"addDarkenFilter",value:function(t,e,i){var a=this,n=this.w,s=i.intensity;t.unfilter(!0),new window.SVG.Filter,t.filter((function(t){var i=n.config.chart.dropShadow;(i.enabled?a.addShadow(t,e,i):t).componentTransfer({rgb:{type:"linear",slope:s}})})),t.filterer.node.setAttribute("filterUnits","userSpaceOnUse"),this._scaleFilterSize(t.filterer.node)}},{key:"applyFilter",value:function(t,e,i){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:.5;switch(i){case"none":this.addNormalFilter(t,e);break;case"lighten":this.addLightenFilter(t,e,{intensity:a});break;case"darken":this.addDarkenFilter(t,e,{intensity:a})}}},{key:"addShadow",value:function(t,e,i){var a=i.blur,n=i.top,s=i.left,r=i.color,o=i.opacity,l=t.flood(Array.isArray(r)?r[e]:r,o).composite(t.sourceAlpha,"in").offset(s,n).gaussianBlur(a).merge(t.source);return t.blend(t.source,l)}},{key:"dropShadow",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,a=e.top,n=e.left,s=e.blur,r=e.color,o=e.opacity,l=e.noUserSpaceOnUse,c=this.w;return t.unfilter(!0),b.isIE()&&"radialBar"===c.config.chart.type||(r=Array.isArray(r)?r[i]:r,t.filter((function(t){var e;e=b.isSafari()||b.isFirefox()||b.isIE()?t.flood(r,o).composite(t.sourceAlpha,"in").offset(n,a).gaussianBlur(s):t.flood(r,o).composite(t.sourceAlpha,"in").offset(n,a).gaussianBlur(s).merge(t.source),t.blend(t.source,e)})),l||t.filterer.node.setAttribute("filterUnits","userSpaceOnUse"),this._scaleFilterSize(t.filterer.node)),t}},{key:"setSelectionFilter",value:function(t,e,i){var a=this.w;if(void 0!==a.globals.selectedDataPoints[e]&&a.globals.selectedDataPoints[e].indexOf(i)>-1){t.node.setAttribute("selected",!0);var n=a.config.states.active.filter;"none"!==n&&this.applyFilter(t,e,n.type,n.value)}}},{key:"_scaleFilterSize",value:function(t){!function(e){for(var i in e)e.hasOwnProperty(i)&&t.setAttribute(i,e[i])}({width:"200%",height:"200%",x:"-50%",y:"-50%"})}}]),t}(),C=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"roundPathCorners",value:function(t,e){function i(t,e,i){var n=e.x-t.x,s=e.y-t.y,r=Math.sqrt(n*n+s*s);return a(t,e,Math.min(1,i/r))}function a(t,e,i){return{x:t.x+(e.x-t.x)*i,y:t.y+(e.y-t.y)*i}}function n(t,e){t.length>2&&(t[t.length-2]=e.x,t[t.length-1]=e.y)}function s(t){return{x:parseFloat(t[t.length-2]),y:parseFloat(t[t.length-1])}}var r=t.split(/[,\s]/).reduce((function(t,e){var i=e.match("([a-zA-Z])(.+)");return i?(t.push(i[1]),t.push(i[2])):t.push(e),t}),[]).reduce((function(t,e){return parseFloat(e)==e&&t.length?t[t.length-1].push(e):t.push([e]),t}),[]),o=[];if(r.length>1){var l=s(r[0]),c=null;"Z"==r[r.length-1][0]&&r[0].length>2&&(c=["L",l.x,l.y],r[r.length-1]=c),o.push(r[0]);for(var d=1;d2&&"L"==u[0]&&p.length>2&&"L"==p[0]){var f,g,v=s(h),m=s(u),x=s(p);f=i(m,v,e),g=i(m,x,e),n(u,f),u.origPoint=m,o.push(u);var b=a(f,m,.5),y=a(m,g,.5),w=["C",b.x,b.y,y.x,y.y,g.x,g.y];w.origPoint=m,o.push(w)}else o.push(u)}if(c){var C=s(o[o.length-1]);o.push(["Z"]),n(o[0],C)}}else o=r;return o.reduce((function(t,e){return t+e.join(" ")+" "}),"")}},{key:"drawLine",value:function(t,e,i,a){var n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"#a8a8a8",s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0,r=arguments.length>6&&void 0!==arguments[6]?arguments[6]:null,o=arguments.length>7&&void 0!==arguments[7]?arguments[7]:"butt";return this.w.globals.dom.Paper.line().attr({x1:t,y1:e,x2:i,y2:a,stroke:n,"stroke-dasharray":s,"stroke-width":r,"stroke-linecap":o})}},{key:"drawRect",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"#fefefe",r=arguments.length>6&&void 0!==arguments[6]?arguments[6]:1,o=arguments.length>7&&void 0!==arguments[7]?arguments[7]:null,l=arguments.length>8&&void 0!==arguments[8]?arguments[8]:null,c=arguments.length>9&&void 0!==arguments[9]?arguments[9]:0,d=this.w.globals.dom.Paper.rect();return d.attr({x:t,y:e,width:i>0?i:0,height:a>0?a:0,rx:n,ry:n,opacity:r,"stroke-width":null!==o?o:0,stroke:null!==l?l:"none","stroke-dasharray":c}),d.node.setAttribute("fill",s),d}},{key:"drawPolygon",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"#e1e1e1",i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"none";return this.w.globals.dom.Paper.polygon(t).attr({fill:a,stroke:e,"stroke-width":i})}},{key:"drawCircle",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;t<0&&(t=0);var i=this.w.globals.dom.Paper.circle(2*t);return null!==e&&i.attr(e),i}},{key:"drawPath",value:function(t){var e=t.d,i=void 0===e?"":e,a=t.stroke,n=void 0===a?"#a8a8a8":a,s=t.strokeWidth,r=void 0===s?1:s,o=t.fill,l=t.fillOpacity,c=void 0===l?1:l,d=t.strokeOpacity,h=void 0===d?1:d,u=t.classes,p=t.strokeLinecap,f=void 0===p?null:p,g=t.strokeDashArray,v=void 0===g?0:g,m=this.w;return null===f&&(f=m.config.stroke.lineCap),(i.indexOf("undefined")>-1||i.indexOf("NaN")>-1)&&(i="M 0 ".concat(m.globals.gridHeight)),m.globals.dom.Paper.path(i).attr({fill:o,"fill-opacity":c,stroke:n,"stroke-opacity":h,"stroke-linecap":f,"stroke-width":r,"stroke-dasharray":v,class:u})}},{key:"group",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,e=this.w.globals.dom.Paper.group();return null!==t&&e.attr(t),e}},{key:"move",value:function(t,e){return["M",t,e].join(" ")}},{key:"line",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=null;return null===i?a=[" L",t,e].join(" "):"H"===i?a=[" H",t].join(" "):"V"===i&&(a=[" V",e].join(" ")),a}},{key:"curve",value:function(t,e,i,a,n,s){return["C",t,e,i,a,n,s].join(" ")}},{key:"quadraticCurve",value:function(t,e,i,a){return["Q",t,e,i,a].join(" ")}},{key:"arc",value:function(t,e,i,a,n,s,r){var o="A";return arguments.length>7&&void 0!==arguments[7]&&arguments[7]&&(o="a"),[o,t,e,i,a,n,s,r].join(" ")}},{key:"renderPaths",value:function(t){var e,i=t.j,a=t.realIndex,n=t.pathFrom,r=t.pathTo,o=t.stroke,l=t.strokeWidth,c=t.strokeLinecap,d=t.fill,h=t.animationDelay,u=t.initialSpeed,p=t.dataChangeSpeed,f=t.className,g=t.shouldClipToGrid,v=void 0===g||g,m=t.bindEventsOnPaths,x=void 0===m||m,b=t.drawShadow,C=void 0===b||b,S=this.w,k=new w(this.ctx),A=new y(this.ctx),P=this.w.config.chart.animations.enabled,T=P&&this.w.config.chart.animations.dynamicAnimation.enabled,E=!!(P&&!S.globals.resized||T&&S.globals.dataChanged&&S.globals.shouldAnimate);E?e=n:(e=r,S.globals.animationEnded=!0);var O,M=S.config.stroke.dashArray;O=Array.isArray(M)?M[a]:S.config.stroke.dashArray;var L=this.drawPath({d:e,stroke:o,strokeWidth:l,fill:d,fillOpacity:1,classes:f,strokeLinecap:c,strokeDashArray:O});if(L.attr("index",a),v&&L.attr({"clip-path":"url(#gridRectMask".concat(S.globals.cuid,")")}),"none"!==S.config.states.normal.filter.type)k.getDefaultFilter(L,a);else if(S.config.chart.dropShadow.enabled&&C&&(!S.config.chart.dropShadow.enabledOnSeries||S.config.chart.dropShadow.enabledOnSeries&&-1!==S.config.chart.dropShadow.enabledOnSeries.indexOf(a))){var I=S.config.chart.dropShadow;k.dropShadow(L,I,a)}x&&(L.node.addEventListener("mouseenter",this.pathMouseEnter.bind(this,L)),L.node.addEventListener("mouseleave",this.pathMouseLeave.bind(this,L)),L.node.addEventListener("mousedown",this.pathMouseDown.bind(this,L))),L.attr({pathTo:r,pathFrom:n});var _={el:L,j:i,realIndex:a,pathFrom:n,pathTo:r,fill:d,strokeWidth:l,delay:h};return!P||S.globals.resized||S.globals.dataChanged?!S.globals.resized&&S.globals.dataChanged||A.showDelayedElements():A.animatePathsGradually(s(s({},_),{},{speed:u})),S.globals.dataChanged&&T&&E&&A.animatePathsGradually(s(s({},_),{},{speed:p})),L}},{key:"drawPattern",value:function(t,e,i){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"#a8a8a8",n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,s=this.w.globals.dom.Paper.pattern(e,i,(function(s){"horizontalLines"===t?s.line(0,0,i,0).stroke({color:a,width:n+1}):"verticalLines"===t?s.line(0,0,0,e).stroke({color:a,width:n+1}):"slantedLines"===t?s.line(0,0,e,i).stroke({color:a,width:n}):"squares"===t?s.rect(e,i).fill("none").stroke({color:a,width:n}):"circles"===t&&s.circle(e).fill("none").stroke({color:a,width:n})}));return s}},{key:"drawGradient",value:function(t,e,i,a,n){var s,r=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null,o=arguments.length>6&&void 0!==arguments[6]?arguments[6]:null,l=arguments.length>7&&void 0!==arguments[7]?arguments[7]:null,c=arguments.length>8&&void 0!==arguments[8]?arguments[8]:0,d=this.w;e.length<9&&0===e.indexOf("#")&&(e=b.hexToRgba(e,a)),i.length<9&&0===i.indexOf("#")&&(i=b.hexToRgba(i,n));var h=0,u=1,p=1,f=null;null!==o&&(h=void 0!==o[0]?o[0]/100:0,u=void 0!==o[1]?o[1]/100:1,p=void 0!==o[2]?o[2]/100:1,f=void 0!==o[3]?o[3]/100:null);var g=!("donut"!==d.config.chart.type&&"pie"!==d.config.chart.type&&"polarArea"!==d.config.chart.type&&"bubble"!==d.config.chart.type);if(s=null===l||0===l.length?d.globals.dom.Paper.gradient(g?"radial":"linear",(function(t){t.at(h,e,a),t.at(u,i,n),t.at(p,i,n),null!==f&&t.at(f,e,a)})):d.globals.dom.Paper.gradient(g?"radial":"linear",(function(t){(Array.isArray(l[c])?l[c]:l).forEach((function(e){t.at(e.offset/100,e.color,e.opacity)}))})),g){var v=d.globals.gridWidth/2,m=d.globals.gridHeight/2;"bubble"!==d.config.chart.type?s.attr({gradientUnits:"userSpaceOnUse",cx:v,cy:m,r:r}):s.attr({cx:.5,cy:.5,r:.8,fx:.2,fy:.2})}else"vertical"===t?s.from(0,0).to(0,1):"diagonal"===t?s.from(0,0).to(1,1):"horizontal"===t?s.from(0,1).to(1,1):"diagonal2"===t&&s.from(1,0).to(0,1);return s}},{key:"getTextBasedOnMaxWidth",value:function(t){var e=t.text,i=t.maxWidth,a=t.fontSize,n=t.fontFamily,s=this.getTextRects(e,a,n),r=s.width/e.length,o=Math.floor(i/r);return i-1){var o=i.globals.selectedDataPoints[n].indexOf(s);i.globals.selectedDataPoints[n].splice(o,1)}}else{if(!i.config.states.active.allowMultipleDataPointsSelection&&i.globals.selectedDataPoints.length>0){i.globals.selectedDataPoints=[];var l=i.globals.dom.Paper.select(".apexcharts-series path").members,c=i.globals.dom.Paper.select(".apexcharts-series circle, .apexcharts-series rect").members,d=function(t){Array.prototype.forEach.call(t,(function(t){t.node.setAttribute("selected","false"),a.getDefaultFilter(t,n)}))};d(l),d(c)}t.node.setAttribute("selected","true"),r="true",void 0===i.globals.selectedDataPoints[n]&&(i.globals.selectedDataPoints[n]=[]),i.globals.selectedDataPoints[n].push(s)}if("true"===r){var h=i.config.states.active.filter;if("none"!==h)a.applyFilter(t,n,h.type,h.value);else if("none"!==i.config.states.hover.filter&&!i.globals.isTouchDevice){var u=i.config.states.hover.filter;a.applyFilter(t,n,u.type,u.value)}}else"none"!==i.config.states.active.filter.type&&("none"===i.config.states.hover.filter.type||i.globals.isTouchDevice?a.getDefaultFilter(t,n):(u=i.config.states.hover.filter,a.applyFilter(t,n,u.type,u.value)));"function"==typeof i.config.chart.events.dataPointSelection&&i.config.chart.events.dataPointSelection(e,this.ctx,{selectedDataPoints:i.globals.selectedDataPoints,seriesIndex:n,dataPointIndex:s,w:i}),e&&this.ctx.events.fireEvent("dataPointSelection",[e,this.ctx,{selectedDataPoints:i.globals.selectedDataPoints,seriesIndex:n,dataPointIndex:s,w:i}])}},{key:"rotateAroundCenter",value:function(t){var e={};return t&&"function"==typeof t.getBBox&&(e=t.getBBox()),{x:e.x+e.width/2,y:e.y+e.height/2}}},{key:"getTextRects",value:function(t,e,i,a){var n=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],s=this.w,r=this.drawText({x:-200,y:-200,text:t,textAnchor:"start",fontSize:e,fontFamily:i,foreColor:"#fff",opacity:0});a&&r.attr("transform",a),s.globals.dom.Paper.add(r);var o=r.bbox();return n||(o=r.node.getBoundingClientRect()),r.remove(),{width:o.width,height:o.height}}},{key:"placeTextWithEllipsis",value:function(t,e,i){if("function"==typeof t.getComputedTextLength&&(t.textContent=e,e.length>0&&t.getComputedTextLength()>=i/1.1)){for(var a=e.length-3;a>0;a-=3)if(t.getSubStringLength(0,a)<=i/1.1)return void(t.textContent=e.substring(0,a)+"...");t.textContent="."}}}],[{key:"setAttrs",value:function(t,e){for(var i in e)e.hasOwnProperty(i)&&t.setAttribute(i,e[i])}}]),t}(),S=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"getStackedSeriesTotals",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=this.w,i=[];if(0===e.globals.series.length)return i;for(var a=0;a0&&void 0!==arguments[0]?arguments[0]:null;return null===t?this.w.config.series.reduce((function(t,e){return t+e}),0):this.w.globals.series[t].reduce((function(t,e){return t+e}),0)}},{key:"isSeriesNull",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return 0===(null===t?this.w.config.series.filter((function(t){return null!==t})):this.w.config.series[t].data.filter((function(t){return null!==t}))).length}},{key:"seriesHaveSameValues",value:function(t){return this.w.globals.series[t].every((function(t,e,i){return t===i[0]}))}},{key:"getCategoryLabels",value:function(t){var e=this.w,i=t.slice();return e.config.xaxis.convertedCatToNumeric&&(i=t.map((function(t,i){return e.config.xaxis.labels.formatter(t-e.globals.minX+1)}))),i}},{key:"getLargestSeries",value:function(){var t=this.w;t.globals.maxValsInArrayIndex=t.globals.series.map((function(t){return t.length})).indexOf(Math.max.apply(Math,t.globals.series.map((function(t){return t.length}))))}},{key:"getLargestMarkerSize",value:function(){var t=this.w,e=0;return t.globals.markers.size.forEach((function(t){e=Math.max(e,t)})),t.config.markers.discrete&&t.config.markers.discrete.length&&t.config.markers.discrete.forEach((function(t){e=Math.max(e,t.size)})),e>0&&(e+=t.config.markers.hover.sizeOffset+1),t.globals.markers.largestSize=e,e}},{key:"getSeriesTotals",value:function(){var t=this.w;t.globals.seriesTotals=t.globals.series.map((function(t,e){var i=0;if(Array.isArray(t))for(var a=0;at&&i.globals.seriesX[n][r]0&&(e=!0),{comboBarCount:i,comboCharts:e}}},{key:"extendArrayProps",value:function(t,e,i){return e.yaxis&&(e=t.extendYAxis(e,i)),e.annotations&&(e.annotations.yaxis&&(e=t.extendYAxisAnnotations(e)),e.annotations.xaxis&&(e=t.extendXAxisAnnotations(e)),e.annotations.points&&(e=t.extendPointAnnotations(e))),e}}]),t}(),k=function(){function t(e){o(this,t),this.w=e.w,this.annoCtx=e}return c(t,[{key:"setOrientations",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,i=this.w;if("vertical"===t.label.orientation){var a=null!==e?e:0,n=i.globals.dom.baseEl.querySelector(".apexcharts-xaxis-annotations .apexcharts-xaxis-annotation-label[rel='".concat(a,"']"));if(null!==n){var s=n.getBoundingClientRect();n.setAttribute("x",parseFloat(n.getAttribute("x"))-s.height+4),"top"===t.label.position?n.setAttribute("y",parseFloat(n.getAttribute("y"))+s.width):n.setAttribute("y",parseFloat(n.getAttribute("y"))-s.width);var r=this.annoCtx.graphics.rotateAroundCenter(n),o=r.x,l=r.y;n.setAttribute("transform","rotate(-90 ".concat(o," ").concat(l,")"))}}}},{key:"addBackgroundToAnno",value:function(t,e){var i=this.w;if(!t||void 0===e.label.text||void 0!==e.label.text&&!String(e.label.text).trim())return null;var a=i.globals.dom.baseEl.querySelector(".apexcharts-grid").getBoundingClientRect(),n=t.getBoundingClientRect(),s=e.label.style.padding.left,r=e.label.style.padding.right,o=e.label.style.padding.top,l=e.label.style.padding.bottom;"vertical"===e.label.orientation&&(o=e.label.style.padding.left,l=e.label.style.padding.right,s=e.label.style.padding.top,r=e.label.style.padding.bottom);var c=n.left-a.left-s,d=n.top-a.top-o,h=this.annoCtx.graphics.drawRect(c-i.globals.barPadForNumericAxis,d,n.width+s+r,n.height+o+l,e.label.borderRadius,e.label.style.background,1,e.label.borderWidth,e.label.borderColor,0);return e.id&&h.node.classList.add(e.id),h}},{key:"annotationsBackground",value:function(){var t=this,e=this.w,i=function(i,a,n){var s=e.globals.dom.baseEl.querySelector(".apexcharts-".concat(n,"-annotations .apexcharts-").concat(n,"-annotation-label[rel='").concat(a,"']"));if(s){var r=s.parentNode,o=t.addBackgroundToAnno(s,i);o&&(r.insertBefore(o.node,s),i.label.mouseEnter&&o.node.addEventListener("mouseenter",i.label.mouseEnter.bind(t,i)),i.label.mouseLeave&&o.node.addEventListener("mouseleave",i.label.mouseLeave.bind(t,i)),i.label.click&&o.node.addEventListener("click",i.label.click.bind(t,i)))}};e.config.annotations.xaxis.map((function(t,e){i(t,e,"xaxis")})),e.config.annotations.yaxis.map((function(t,e){i(t,e,"yaxis")})),e.config.annotations.points.map((function(t,e){i(t,e,"point")}))}},{key:"getY1Y2",value:function(t,e){var i,a="y1"===t?e.y:e.y2,n=this.w;if(this.annoCtx.invertAxis){var s=n.globals.labels.indexOf(a);n.config.xaxis.convertedCatToNumeric&&(s=n.globals.categoryLabels.indexOf(a));var r=n.globals.dom.baseEl.querySelector(".apexcharts-yaxis-texts-g text:nth-child("+(s+1)+")");r&&(i=parseFloat(r.getAttribute("y")))}else{var o;o=n.config.yaxis[e.yAxisIndex].logarithmic?(a=new S(this.annoCtx.ctx).getLogVal(a,e.yAxisIndex))/n.globals.yLogRatio[e.yAxisIndex]:(a-n.globals.minYArr[e.yAxisIndex])/(n.globals.yRange[e.yAxisIndex]/n.globals.gridHeight),i=n.globals.gridHeight-o,!e.marker||void 0!==e.y&&null!==e.y||(i=0),n.config.yaxis[e.yAxisIndex]&&n.config.yaxis[e.yAxisIndex].reversed&&(i=o)}return"string"==typeof a&&a.indexOf("px")>-1&&(i=parseFloat(a)),i}},{key:"getX1X2",value:function(t,e){var i=this.w,a=this.annoCtx.invertAxis?i.globals.minY:i.globals.minX,n=this.annoCtx.invertAxis?i.globals.maxY:i.globals.maxX,s=this.annoCtx.invertAxis?i.globals.yRange[0]:i.globals.xRange,r=(e.x-a)/(s/i.globals.gridWidth);this.annoCtx.inversedReversedAxis&&(r=(n-e.x)/(s/i.globals.gridWidth)),"category"!==i.config.xaxis.type&&!i.config.xaxis.convertedCatToNumeric||this.annoCtx.invertAxis||i.globals.dataFormatXNumeric||(r=this.getStringX(e.x));var o=(e.x2-a)/(s/i.globals.gridWidth);return this.annoCtx.inversedReversedAxis&&(o=(n-e.x2)/(s/i.globals.gridWidth)),"category"!==i.config.xaxis.type&&!i.config.xaxis.convertedCatToNumeric||this.annoCtx.invertAxis||i.globals.dataFormatXNumeric||(o=this.getStringX(e.x2)),void 0!==e.x&&null!==e.x||!e.marker||(r=i.globals.gridWidth),"x1"===t&&"string"==typeof e.x&&e.x.indexOf("px")>-1&&(r=parseFloat(e.x)),"x2"===t&&"string"==typeof e.x2&&e.x2.indexOf("px")>-1&&(o=parseFloat(e.x2)),"x1"===t?r:o}},{key:"getStringX",value:function(t){var e=this.w,i=t;e.config.xaxis.convertedCatToNumeric&&e.globals.categoryLabels.length&&(t=e.globals.categoryLabels.indexOf(t)+1);var a=e.globals.labels.indexOf(t),n=e.globals.dom.baseEl.querySelector(".apexcharts-xaxis-texts-g text:nth-child("+(a+1)+")");return n&&(i=parseFloat(n.getAttribute("x"))),i}}]),t}(),A=function(){function t(e){o(this,t),this.w=e.w,this.annoCtx=e,this.invertAxis=this.annoCtx.invertAxis,this.helpers=new k(this.annoCtx)}return c(t,[{key:"addXaxisAnnotation",value:function(t,e,i){var a,n=this.w,s=this.helpers.getX1X2("x1",t),r=t.label.text,o=t.strokeDashArray;if(b.isNumber(s)){if(null===t.x2||void 0===t.x2){var l=this.annoCtx.graphics.drawLine(s+t.offsetX,0+t.offsetY,s+t.offsetX,n.globals.gridHeight+t.offsetY,t.borderColor,o,t.borderWidth);e.appendChild(l.node),t.id&&l.node.classList.add(t.id)}else{if((a=this.helpers.getX1X2("x2",t))r){var c=r;r=a,a=c}var d=this.annoCtx.graphics.drawRect(0+t.offsetX,a+t.offsetY,this._getYAxisAnnotationWidth(t),r-a,0,t.fillColor,t.opacity,1,t.borderColor,s);d.node.classList.add("apexcharts-annotation-rect"),d.attr("clip-path","url(#gridRectMask".concat(n.globals.cuid,")")),e.appendChild(d.node),t.id&&d.node.classList.add(t.id)}var h="right"===t.label.position?n.globals.gridWidth:"center"===t.label.position?n.globals.gridWidth/2:0,u=this.annoCtx.graphics.drawText({x:h+t.label.offsetX,y:(null!=a?a:r)+t.label.offsetY-3,text:o,textAnchor:t.label.textAnchor,fontSize:t.label.style.fontSize,fontFamily:t.label.style.fontFamily,fontWeight:t.label.style.fontWeight,foreColor:t.label.style.color,cssClass:"apexcharts-yaxis-annotation-label ".concat(t.label.style.cssClass," ").concat(t.id?t.id:"")});u.attr({rel:i}),e.appendChild(u.node)}},{key:"_getYAxisAnnotationWidth",value:function(t){var e=this.w;return e.globals.gridWidth,(t.width.indexOf("%")>-1?e.globals.gridWidth*parseInt(t.width,10)/100:parseInt(t.width,10))+t.offsetX}},{key:"drawYAxisAnnotations",value:function(){var t=this,e=this.w,i=this.annoCtx.graphics.group({class:"apexcharts-yaxis-annotations"});return e.config.annotations.yaxis.map((function(e,a){t.addYaxisAnnotation(e,i.node,a)})),i}}]),t}(),T=function(){function t(e){o(this,t),this.w=e.w,this.annoCtx=e,this.helpers=new k(this.annoCtx)}return c(t,[{key:"addPointAnnotation",value:function(t,e,i){this.w;var a=this.helpers.getX1X2("x1",t),n=this.helpers.getY1Y2("y1",t);if(b.isNumber(a)){var s={pSize:t.marker.size,pointStrokeWidth:t.marker.strokeWidth,pointFillColor:t.marker.fillColor,pointStrokeColor:t.marker.strokeColor,shape:t.marker.shape,pRadius:t.marker.radius,class:"apexcharts-point-annotation-marker ".concat(t.marker.cssClass," ").concat(t.id?t.id:"")},r=this.annoCtx.graphics.drawMarker(a+t.marker.offsetX,n+t.marker.offsetY,s);e.appendChild(r.node);var o=t.label.text?t.label.text:"",l=this.annoCtx.graphics.drawText({x:a+t.label.offsetX,y:n+t.label.offsetY-t.marker.size-parseFloat(t.label.style.fontSize)/1.6,text:o,textAnchor:t.label.textAnchor,fontSize:t.label.style.fontSize,fontFamily:t.label.style.fontFamily,fontWeight:t.label.style.fontWeight,foreColor:t.label.style.color,cssClass:"apexcharts-point-annotation-label ".concat(t.label.style.cssClass," ").concat(t.id?t.id:"")});if(l.attr({rel:i}),e.appendChild(l.node),t.customSVG.SVG){var c=this.annoCtx.graphics.group({class:"apexcharts-point-annotations-custom-svg "+t.customSVG.cssClass});c.attr({transform:"translate(".concat(a+t.customSVG.offsetX,", ").concat(n+t.customSVG.offsetY,")")}),c.node.innerHTML=t.customSVG.SVG,e.appendChild(c.node)}if(t.image.path){var d=t.image.width?t.image.width:20,h=t.image.height?t.image.height:20;r=this.annoCtx.addImage({x:a+t.image.offsetX-d/2,y:n+t.image.offsetY-h/2,width:d,height:h,path:t.image.path,appendTo:".apexcharts-point-annotations"})}t.mouseEnter&&r.node.addEventListener("mouseenter",t.mouseEnter.bind(this,t)),t.mouseLeave&&r.node.addEventListener("mouseleave",t.mouseLeave.bind(this,t)),t.click&&r.node.addEventListener("click",t.click.bind(this,t))}}},{key:"drawPointAnnotations",value:function(){var t=this,e=this.w,i=this.annoCtx.graphics.group({class:"apexcharts-point-annotations"});return e.config.annotations.points.map((function(e,a){t.addPointAnnotation(e,i.node,a)})),i}}]),t}(),E={name:"en",options:{months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],toolbar:{exportToSVG:"Download SVG",exportToPNG:"Download PNG",exportToCSV:"Download CSV",menu:"Menu",selection:"Selection",selectionZoom:"Selection Zoom",zoomIn:"Zoom In",zoomOut:"Zoom Out",pan:"Panning",reset:"Reset Zoom"}}},O=function(){function t(){o(this,t),this.yAxis={show:!0,showAlways:!1,showForNullSeries:!0,seriesName:void 0,opposite:!1,reversed:!1,logarithmic:!1,logBase:10,tickAmount:void 0,forceNiceScale:!1,max:void 0,min:void 0,floating:!1,decimalsInFloat:void 0,labels:{show:!0,minWidth:0,maxWidth:160,offsetX:0,offsetY:0,align:void 0,rotate:0,padding:20,style:{colors:[],fontSize:"11px",fontWeight:400,fontFamily:void 0,cssClass:""},formatter:void 0},axisBorder:{show:!1,color:"#e0e0e0",width:1,offsetX:0,offsetY:0},axisTicks:{show:!1,color:"#e0e0e0",width:6,offsetX:0,offsetY:0},title:{text:void 0,rotate:-90,offsetY:0,offsetX:0,style:{color:void 0,fontSize:"11px",fontWeight:900,fontFamily:void 0,cssClass:""}},tooltip:{enabled:!1,offsetX:0},crosshairs:{show:!0,position:"front",stroke:{color:"#b6b6b6",width:1,dashArray:0}}},this.pointAnnotation={id:void 0,x:0,y:null,yAxisIndex:0,seriesIndex:0,mouseEnter:void 0,mouseLeave:void 0,click:void 0,marker:{size:4,fillColor:"#fff",strokeWidth:2,strokeColor:"#333",shape:"circle",offsetX:0,offsetY:0,radius:2,cssClass:""},label:{borderColor:"#c2c2c2",borderWidth:1,borderRadius:2,text:void 0,textAnchor:"middle",offsetX:0,offsetY:0,mouseEnter:void 0,mouseLeave:void 0,click:void 0,style:{background:"#fff",color:void 0,fontSize:"11px",fontFamily:void 0,fontWeight:400,cssClass:"",padding:{left:5,right:5,top:2,bottom:2}}},customSVG:{SVG:void 0,cssClass:void 0,offsetX:0,offsetY:0},image:{path:void 0,width:20,height:20,offsetX:0,offsetY:0}},this.yAxisAnnotation={id:void 0,y:0,y2:null,strokeDashArray:1,fillColor:"#c2c2c2",borderColor:"#c2c2c2",borderWidth:1,opacity:.3,offsetX:0,offsetY:0,width:"100%",yAxisIndex:0,label:{borderColor:"#c2c2c2",borderWidth:1,borderRadius:2,text:void 0,textAnchor:"end",position:"right",offsetX:0,offsetY:-3,mouseEnter:void 0,mouseLeave:void 0,click:void 0,style:{background:"#fff",color:void 0,fontSize:"11px",fontFamily:void 0,fontWeight:400,cssClass:"",padding:{left:5,right:5,top:2,bottom:2}}}},this.xAxisAnnotation={id:void 0,x:0,x2:null,strokeDashArray:1,fillColor:"#c2c2c2",borderColor:"#c2c2c2",borderWidth:1,opacity:.3,offsetX:0,offsetY:0,label:{borderColor:"#c2c2c2",borderWidth:1,borderRadius:2,text:void 0,textAnchor:"middle",orientation:"vertical",position:"top",offsetX:0,offsetY:0,mouseEnter:void 0,mouseLeave:void 0,click:void 0,style:{background:"#fff",color:void 0,fontSize:"11px",fontFamily:void 0,fontWeight:400,cssClass:"",padding:{left:5,right:5,top:2,bottom:2}}}},this.text={x:0,y:0,text:"",textAnchor:"start",foreColor:void 0,fontSize:"13px",fontFamily:void 0,fontWeight:400,appendTo:".apexcharts-annotations",backgroundColor:"transparent",borderColor:"#c2c2c2",borderRadius:0,borderWidth:0,paddingLeft:4,paddingRight:4,paddingTop:2,paddingBottom:2}}return c(t,[{key:"init",value:function(){return{annotations:{position:"front",yaxis:[this.yAxisAnnotation],xaxis:[this.xAxisAnnotation],points:[this.pointAnnotation],texts:[],images:[],shapes:[]},chart:{animations:{enabled:!0,easing:"easeinout",speed:800,animateGradually:{delay:150,enabled:!0},dynamicAnimation:{enabled:!0,speed:350}},background:"transparent",locales:[E],defaultLocale:"en",dropShadow:{enabled:!1,enabledOnSeries:void 0,top:2,left:2,blur:4,color:"#000",opacity:.35},events:{animationEnd:void 0,beforeMount:void 0,mounted:void 0,updated:void 0,click:void 0,mouseMove:void 0,mouseLeave:void 0,xAxisLabelClick:void 0,legendClick:void 0,markerClick:void 0,selection:void 0,dataPointSelection:void 0,dataPointMouseEnter:void 0,dataPointMouseLeave:void 0,beforeZoom:void 0,beforeResetZoom:void 0,zoomed:void 0,scrolled:void 0,brushScrolled:void 0},foreColor:"#373d3f",fontFamily:"Helvetica, Arial, sans-serif",height:"auto",parentHeightOffset:15,redrawOnParentResize:!0,redrawOnWindowResize:!0,id:void 0,group:void 0,offsetX:0,offsetY:0,selection:{enabled:!1,type:"x",fill:{color:"#24292e",opacity:.1},stroke:{width:1,color:"#24292e",opacity:.4,dashArray:3},xaxis:{min:void 0,max:void 0},yaxis:{min:void 0,max:void 0}},sparkline:{enabled:!1},brush:{enabled:!1,autoScaleYaxis:!0,target:void 0},stacked:!1,stackType:"normal",toolbar:{show:!0,offsetX:0,offsetY:0,tools:{download:!0,selection:!0,zoom:!0,zoomin:!0,zoomout:!0,pan:!0,reset:!0,customIcons:[]},export:{csv:{filename:void 0,columnDelimiter:",",headerCategory:"category",headerValue:"value",dateFormatter:function(t){return new Date(t).toDateString()}},png:{filename:void 0},svg:{filename:void 0}},autoSelected:"zoom"},type:"line",width:"100%",zoom:{enabled:!0,type:"x",autoScaleYaxis:!1,zoomedArea:{fill:{color:"#90CAF9",opacity:.4},stroke:{color:"#0D47A1",opacity:.4,width:1}}}},plotOptions:{area:{fillTo:"origin"},bar:{horizontal:!1,columnWidth:"70%",barHeight:"70%",distributed:!1,borderRadius:0,borderRadiusApplication:"around",borderRadiusWhenStacked:"last",rangeBarOverlap:!0,rangeBarGroupRows:!1,colors:{ranges:[],backgroundBarColors:[],backgroundBarOpacity:1,backgroundBarRadius:0},dataLabels:{position:"top",maxItems:100,hideOverflowingLabels:!0,orientation:"horizontal",total:{enabled:!1,formatter:void 0,offsetX:0,offsetY:0,style:{color:"#373d3f",fontSize:"12px",fontFamily:void 0,fontWeight:600}}}},bubble:{zScaling:!0,minBubbleRadius:void 0,maxBubbleRadius:void 0},candlestick:{colors:{upward:"#00B746",downward:"#EF403C"},wick:{useFillColor:!0}},boxPlot:{colors:{upper:"#00E396",lower:"#008FFB"}},heatmap:{radius:2,enableShades:!0,shadeIntensity:.5,reverseNegativeShade:!1,distributed:!1,useFillColorAsStroke:!1,colorScale:{inverse:!1,ranges:[],min:void 0,max:void 0}},treemap:{enableShades:!0,shadeIntensity:.5,distributed:!1,reverseNegativeShade:!1,useFillColorAsStroke:!1,colorScale:{inverse:!1,ranges:[],min:void 0,max:void 0}},radialBar:{inverseOrder:!1,startAngle:0,endAngle:360,offsetX:0,offsetY:0,hollow:{margin:5,size:"50%",background:"transparent",image:void 0,imageWidth:150,imageHeight:150,imageOffsetX:0,imageOffsetY:0,imageClipped:!0,position:"front",dropShadow:{enabled:!1,top:0,left:0,blur:3,color:"#000",opacity:.5}},track:{show:!0,startAngle:void 0,endAngle:void 0,background:"#f2f2f2",strokeWidth:"97%",opacity:1,margin:5,dropShadow:{enabled:!1,top:0,left:0,blur:3,color:"#000",opacity:.5}},dataLabels:{show:!0,name:{show:!0,fontSize:"16px",fontFamily:void 0,fontWeight:600,color:void 0,offsetY:0,formatter:function(t){return t}},value:{show:!0,fontSize:"14px",fontFamily:void 0,fontWeight:400,color:void 0,offsetY:16,formatter:function(t){return t+"%"}},total:{show:!1,label:"Total",fontSize:"16px",fontWeight:600,fontFamily:void 0,color:void 0,formatter:function(t){return t.globals.seriesTotals.reduce((function(t,e){return t+e}),0)/t.globals.series.length+"%"}}}},pie:{customScale:1,offsetX:0,offsetY:0,startAngle:0,endAngle:360,expandOnClick:!0,dataLabels:{offset:0,minAngleToShowLabel:10},donut:{size:"65%",background:"transparent",labels:{show:!1,name:{show:!0,fontSize:"16px",fontFamily:void 0,fontWeight:600,color:void 0,offsetY:-10,formatter:function(t){return t}},value:{show:!0,fontSize:"20px",fontFamily:void 0,fontWeight:400,color:void 0,offsetY:10,formatter:function(t){return t}},total:{show:!1,showAlways:!1,label:"Total",fontSize:"16px",fontWeight:400,fontFamily:void 0,color:void 0,formatter:function(t){return t.globals.seriesTotals.reduce((function(t,e){return t+e}),0)}}}}},polarArea:{rings:{strokeWidth:1,strokeColor:"#e8e8e8"},spokes:{strokeWidth:1,connectorColors:"#e8e8e8"}},radar:{size:void 0,offsetX:0,offsetY:0,polygons:{strokeWidth:1,strokeColors:"#e8e8e8",connectorColors:"#e8e8e8",fill:{colors:void 0}}}},colors:void 0,dataLabels:{enabled:!0,enabledOnSeries:void 0,formatter:function(t){return null!==t?t:""},textAnchor:"middle",distributed:!1,offsetX:0,offsetY:0,style:{fontSize:"12px",fontFamily:void 0,fontWeight:600,colors:void 0},background:{enabled:!0,foreColor:"#fff",borderRadius:2,padding:4,opacity:.9,borderWidth:1,borderColor:"#fff",dropShadow:{enabled:!1,top:1,left:1,blur:1,color:"#000",opacity:.45}},dropShadow:{enabled:!1,top:1,left:1,blur:1,color:"#000",opacity:.45}},fill:{type:"solid",colors:void 0,opacity:.85,gradient:{shade:"dark",type:"horizontal",shadeIntensity:.5,gradientToColors:void 0,inverseColors:!0,opacityFrom:1,opacityTo:1,stops:[0,50,100],colorStops:[]},image:{src:[],width:void 0,height:void 0},pattern:{style:"squares",width:6,height:6,strokeWidth:2}},forecastDataPoints:{count:0,fillOpacity:.5,strokeWidth:void 0,dashArray:4},grid:{show:!0,borderColor:"#e0e0e0",strokeDashArray:0,position:"back",xaxis:{lines:{show:!1}},yaxis:{lines:{show:!0}},row:{colors:void 0,opacity:.5},column:{colors:void 0,opacity:.5},padding:{top:0,right:10,bottom:0,left:12}},labels:[],legend:{show:!0,showForSingleSeries:!1,showForNullSeries:!0,showForZeroSeries:!0,floating:!1,position:"bottom",horizontalAlign:"center",inverseOrder:!1,fontSize:"12px",fontFamily:void 0,fontWeight:400,width:void 0,height:void 0,formatter:void 0,tooltipHoverFormatter:void 0,offsetX:-20,offsetY:4,customLegendItems:[],labels:{colors:void 0,useSeriesColors:!1},markers:{width:12,height:12,strokeWidth:0,fillColors:void 0,strokeColor:"#fff",radius:12,customHTML:void 0,offsetX:0,offsetY:0,onClick:void 0},itemMargin:{horizontal:5,vertical:2},onItemClick:{toggleDataSeries:!0},onItemHover:{highlightDataSeries:!0}},markers:{discrete:[],size:0,colors:void 0,strokeColors:"#fff",strokeWidth:2,strokeOpacity:.9,strokeDashArray:0,fillOpacity:1,shape:"circle",width:8,height:8,radius:2,offsetX:0,offsetY:0,onClick:void 0,onDblClick:void 0,showNullDataPoints:!0,hover:{size:void 0,sizeOffset:3}},noData:{text:void 0,align:"center",verticalAlign:"middle",offsetX:0,offsetY:0,style:{color:void 0,fontSize:"14px",fontFamily:void 0}},responsive:[],series:void 0,states:{normal:{filter:{type:"none",value:0}},hover:{filter:{type:"lighten",value:.1}},active:{allowMultipleDataPointsSelection:!1,filter:{type:"darken",value:.5}}},title:{text:void 0,align:"left",margin:5,offsetX:0,offsetY:0,floating:!1,style:{fontSize:"14px",fontWeight:900,fontFamily:void 0,color:void 0}},subtitle:{text:void 0,align:"left",margin:5,offsetX:0,offsetY:30,floating:!1,style:{fontSize:"12px",fontWeight:400,fontFamily:void 0,color:void 0}},stroke:{show:!0,curve:"smooth",lineCap:"butt",width:2,colors:void 0,dashArray:0,fill:{type:"solid",colors:void 0,opacity:.85,gradient:{shade:"dark",type:"horizontal",shadeIntensity:.5,gradientToColors:void 0,inverseColors:!0,opacityFrom:1,opacityTo:1,stops:[0,50,100],colorStops:[]}}},tooltip:{enabled:!0,enabledOnSeries:void 0,shared:!0,followCursor:!1,intersect:!1,inverseOrder:!1,custom:void 0,fillSeriesColor:!1,theme:"light",cssClass:"",style:{fontSize:"12px",fontFamily:void 0},onDatasetHover:{highlightDataSeries:!1},x:{show:!0,format:"dd MMM",formatter:void 0},y:{formatter:void 0,title:{formatter:function(t){return t?t+": ":""}}},z:{formatter:void 0,title:"Size: "},marker:{show:!0,fillColors:void 0},items:{display:"flex"},fixed:{enabled:!1,position:"topRight",offsetX:0,offsetY:0}},xaxis:{type:"category",categories:[],convertedCatToNumeric:!1,offsetX:0,offsetY:0,overwriteCategories:void 0,labels:{show:!0,rotate:-45,rotateAlways:!1,hideOverlappingLabels:!0,trim:!1,minHeight:void 0,maxHeight:120,showDuplicates:!0,style:{colors:[],fontSize:"12px",fontWeight:400,fontFamily:void 0,cssClass:""},offsetX:0,offsetY:0,format:void 0,formatter:void 0,datetimeUTC:!0,datetimeFormatter:{year:"yyyy",month:"MMM 'yy",day:"dd MMM",hour:"HH:mm",minute:"HH:mm:ss",second:"HH:mm:ss"}},group:{groups:[],style:{colors:[],fontSize:"12px",fontWeight:400,fontFamily:void 0,cssClass:""}},axisBorder:{show:!0,color:"#e0e0e0",width:"100%",height:1,offsetX:0,offsetY:0},axisTicks:{show:!0,color:"#e0e0e0",height:6,offsetX:0,offsetY:0},tickAmount:void 0,tickPlacement:"on",min:void 0,max:void 0,range:void 0,floating:!1,decimalsInFloat:void 0,position:"bottom",title:{text:void 0,offsetX:0,offsetY:0,style:{color:void 0,fontSize:"12px",fontWeight:900,fontFamily:void 0,cssClass:""}},crosshairs:{show:!0,width:1,position:"back",opacity:.9,stroke:{color:"#b6b6b6",width:1,dashArray:3},fill:{type:"solid",color:"#B1B9C4",gradient:{colorFrom:"#D8E3F0",colorTo:"#BED1E6",stops:[0,100],opacityFrom:.4,opacityTo:.5}},dropShadow:{enabled:!1,left:0,top:0,blur:1,opacity:.4}},tooltip:{enabled:!0,offsetY:0,formatter:void 0,style:{fontSize:"12px",fontFamily:void 0}}},yaxis:this.yAxis,theme:{mode:"light",palette:"palette1",monochrome:{enabled:!1,color:"#008FFB",shadeTo:"light",shadeIntensity:.65}}}}}]),t}(),M=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.graphics=new C(this.ctx),this.w.globals.isBarHorizontal&&(this.invertAxis=!0),this.helpers=new k(this),this.xAxisAnnotations=new A(this),this.yAxisAnnotations=new P(this),this.pointsAnnotations=new T(this),this.w.globals.isBarHorizontal&&this.w.config.yaxis[0].reversed&&(this.inversedReversedAxis=!0),this.xDivision=this.w.globals.gridWidth/this.w.globals.dataPoints}return c(t,[{key:"drawAxesAnnotations",value:function(){var t=this.w;if(t.globals.axisCharts){for(var e=this.yAxisAnnotations.drawYAxisAnnotations(),i=this.xAxisAnnotations.drawXAxisAnnotations(),a=this.pointsAnnotations.drawPointAnnotations(),n=t.config.chart.animations.enabled,s=[e,i,a],r=[i.node,e.node,a.node],o=0;o<3;o++)t.globals.dom.elGraphical.add(s[o]),!n||t.globals.resized||t.globals.dataChanged||"scatter"!==t.config.chart.type&&"bubble"!==t.config.chart.type&&t.globals.dataPoints>1&&r[o].classList.add("apexcharts-element-hidden"),t.globals.delayedElements.push({el:r[o],index:0});this.helpers.annotationsBackground()}}},{key:"drawImageAnnos",value:function(){var t=this;this.w.config.annotations.images.map((function(e,i){t.addImage(e,i)}))}},{key:"drawTextAnnos",value:function(){var t=this;this.w.config.annotations.texts.map((function(e,i){t.addText(e,i)}))}},{key:"addXaxisAnnotation",value:function(t,e,i){this.xAxisAnnotations.addXaxisAnnotation(t,e,i)}},{key:"addYaxisAnnotation",value:function(t,e,i){this.yAxisAnnotations.addYaxisAnnotation(t,e,i)}},{key:"addPointAnnotation",value:function(t,e,i){this.pointsAnnotations.addPointAnnotation(t,e,i)}},{key:"addText",value:function(t,e){var i=t.x,a=t.y,n=t.text,s=t.textAnchor,r=t.foreColor,o=t.fontSize,l=t.fontFamily,c=t.fontWeight,d=t.cssClass,h=t.backgroundColor,u=t.borderWidth,p=t.strokeDashArray,f=t.borderRadius,g=t.borderColor,v=t.appendTo,m=void 0===v?".apexcharts-annotations":v,x=t.paddingLeft,b=void 0===x?4:x,y=t.paddingRight,w=void 0===y?4:y,C=t.paddingBottom,S=void 0===C?2:C,k=t.paddingTop,A=void 0===k?2:k,P=this.w,T=this.graphics.drawText({x:i,y:a,text:n,textAnchor:s||"start",fontSize:o||"12px",fontWeight:c||"regular",fontFamily:l||P.config.chart.fontFamily,foreColor:r||P.config.chart.foreColor,cssClass:d}),E=P.globals.dom.baseEl.querySelector(m);E&&E.appendChild(T.node);var O=T.bbox();if(n){var M=this.graphics.drawRect(O.x-b,O.y-A,O.width+b+w,O.height+S+A,f,h||"transparent",1,u,g,p);E.insertBefore(M.node,T.node)}}},{key:"addImage",value:function(t,e){var i=this.w,a=t.path,n=t.x,s=void 0===n?0:n,r=t.y,o=void 0===r?0:r,l=t.width,c=void 0===l?20:l,d=t.height,h=void 0===d?20:d,u=t.appendTo,p=void 0===u?".apexcharts-annotations":u,f=i.globals.dom.Paper.image(a);f.size(c,h).move(s,o);var g=i.globals.dom.baseEl.querySelector(p);return g&&g.appendChild(f.node),f}},{key:"addXaxisAnnotationExternal",value:function(t,e,i){return this.addAnnotationExternal({params:t,pushToMemory:e,context:i,type:"xaxis",contextMethod:i.addXaxisAnnotation}),i}},{key:"addYaxisAnnotationExternal",value:function(t,e,i){return this.addAnnotationExternal({params:t,pushToMemory:e,context:i,type:"yaxis",contextMethod:i.addYaxisAnnotation}),i}},{key:"addPointAnnotationExternal",value:function(t,e,i){return void 0===this.invertAxis&&(this.invertAxis=i.w.globals.isBarHorizontal),this.addAnnotationExternal({params:t,pushToMemory:e,context:i,type:"point",contextMethod:i.addPointAnnotation}),i}},{key:"addAnnotationExternal",value:function(t){var e=t.params,i=t.pushToMemory,a=t.context,n=t.type,s=t.contextMethod,r=a,o=r.w,l=o.globals.dom.baseEl.querySelector(".apexcharts-".concat(n,"-annotations")),c=l.childNodes.length+1,d=new O,h=Object.assign({},"xaxis"===n?d.xAxisAnnotation:"yaxis"===n?d.yAxisAnnotation:d.pointAnnotation),u=b.extend(h,e);switch(n){case"xaxis":this.addXaxisAnnotation(u,l,c);break;case"yaxis":this.addYaxisAnnotation(u,l,c);break;case"point":this.addPointAnnotation(u,l,c)}var p=o.globals.dom.baseEl.querySelector(".apexcharts-".concat(n,"-annotations .apexcharts-").concat(n,"-annotation-label[rel='").concat(c,"']")),f=this.helpers.addBackgroundToAnno(p,u);return f&&l.insertBefore(f.node,p),i&&o.globals.memory.methodsToExec.push({context:r,id:u.id?u.id:b.randomId(),method:s,label:"addAnnotation",params:e}),a}},{key:"clearAnnotations",value:function(t){var e=t.w,i=e.globals.dom.baseEl.querySelectorAll(".apexcharts-yaxis-annotations, .apexcharts-xaxis-annotations, .apexcharts-point-annotations");e.globals.memory.methodsToExec.map((function(t,i){"addText"!==t.label&&"addAnnotation"!==t.label||e.globals.memory.methodsToExec.splice(i,1)})),i=b.listToArray(i),Array.prototype.forEach.call(i,(function(t){for(;t.firstChild;)t.removeChild(t.firstChild)}))}},{key:"removeAnnotation",value:function(t,e){var i=t.w,a=i.globals.dom.baseEl.querySelectorAll(".".concat(e));a&&(i.globals.memory.methodsToExec.map((function(t,a){t.id===e&&i.globals.memory.methodsToExec.splice(a,1)})),Array.prototype.forEach.call(a,(function(t){t.parentElement.removeChild(t)})))}}]),t}(),L=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.months31=[1,3,5,7,8,10,12],this.months30=[2,4,6,9,11],this.daysCntOfYear=[0,31,59,90,120,151,181,212,243,273,304,334]}return c(t,[{key:"isValidDate",value:function(t){return!isNaN(this.parseDate(t))}},{key:"getTimeStamp",value:function(t){return Date.parse(t)?this.w.config.xaxis.labels.datetimeUTC?new Date(new Date(t).toISOString().substr(0,25)).getTime():new Date(t).getTime():t}},{key:"getDate",value:function(t){return this.w.config.xaxis.labels.datetimeUTC?new Date(new Date(t).toUTCString()):new Date(t)}},{key:"parseDate",value:function(t){var e=Date.parse(t);if(!isNaN(e))return this.getTimeStamp(t);var i=Date.parse(t.replace(/-/g,"/").replace(/[a-z]+/gi," "));return this.getTimeStamp(i)}},{key:"parseDateWithTimezone",value:function(t){return Date.parse(t.replace(/-/g,"/").replace(/[a-z]+/gi," "))}},{key:"formatDate",value:function(t,e){var i=this.w.globals.locale,a=this.w.config.xaxis.labels.datetimeUTC,n=["\0"].concat(v(i.months)),s=[""].concat(v(i.shortMonths)),r=[""].concat(v(i.days)),o=[""].concat(v(i.shortDays));function l(t,e){var i=t+"";for(e=e||2;i.length12?u-12:0===u?12:u;e=(e=(e=(e=e.replace(/(^|[^\\])HH+/g,"$1"+l(u))).replace(/(^|[^\\])H/g,"$1"+u)).replace(/(^|[^\\])hh+/g,"$1"+l(p))).replace(/(^|[^\\])h/g,"$1"+p);var f=a?t.getUTCMinutes():t.getMinutes();e=(e=e.replace(/(^|[^\\])mm+/g,"$1"+l(f))).replace(/(^|[^\\])m/g,"$1"+f);var g=a?t.getUTCSeconds():t.getSeconds();e=(e=e.replace(/(^|[^\\])ss+/g,"$1"+l(g))).replace(/(^|[^\\])s/g,"$1"+g);var m=a?t.getUTCMilliseconds():t.getMilliseconds();e=e.replace(/(^|[^\\])fff+/g,"$1"+l(m,3)),m=Math.round(m/10),e=e.replace(/(^|[^\\])ff/g,"$1"+l(m)),m=Math.round(m/10);var x=u<12?"AM":"PM";e=(e=(e=e.replace(/(^|[^\\])f/g,"$1"+m)).replace(/(^|[^\\])TT+/g,"$1"+x)).replace(/(^|[^\\])T/g,"$1"+x.charAt(0));var b=x.toLowerCase();e=(e=e.replace(/(^|[^\\])tt+/g,"$1"+b)).replace(/(^|[^\\])t/g,"$1"+b.charAt(0));var y=-t.getTimezoneOffset(),w=a||!y?"Z":y>0?"+":"-";if(!a){var C=(y=Math.abs(y))%60;w+=l(Math.floor(y/60))+":"+l(C)}e=e.replace(/(^|[^\\])K/g,"$1"+w);var S=(a?t.getUTCDay():t.getDay())+1;return(e=(e=(e=(e=e.replace(new RegExp(r[0],"g"),r[S])).replace(new RegExp(o[0],"g"),o[S])).replace(new RegExp(n[0],"g"),n[d])).replace(new RegExp(s[0],"g"),s[d])).replace(/\\(.)/g,"$1")}},{key:"getTimeUnitsfromTimestamp",value:function(t,e,i){var a=this.w;void 0!==a.config.xaxis.min&&(t=a.config.xaxis.min),void 0!==a.config.xaxis.max&&(e=a.config.xaxis.max);var n=this.getDate(t),s=this.getDate(e),r=this.formatDate(n,"yyyy MM dd HH mm ss fff").split(" "),o=this.formatDate(s,"yyyy MM dd HH mm ss fff").split(" ");return{minMillisecond:parseInt(r[6],10),maxMillisecond:parseInt(o[6],10),minSecond:parseInt(r[5],10),maxSecond:parseInt(o[5],10),minMinute:parseInt(r[4],10),maxMinute:parseInt(o[4],10),minHour:parseInt(r[3],10),maxHour:parseInt(o[3],10),minDate:parseInt(r[2],10),maxDate:parseInt(o[2],10),minMonth:parseInt(r[1],10)-1,maxMonth:parseInt(o[1],10)-1,minYear:parseInt(r[0],10),maxYear:parseInt(o[0],10)}}},{key:"isLeapYear",value:function(t){return t%4==0&&t%100!=0||t%400==0}},{key:"calculcateLastDaysOfMonth",value:function(t,e,i){return this.determineDaysOfMonths(t,e)-i}},{key:"determineDaysOfYear",value:function(t){var e=365;return this.isLeapYear(t)&&(e=366),e}},{key:"determineRemainingDaysOfYear",value:function(t,e,i){var a=this.daysCntOfYear[e]+i;return e>1&&this.isLeapYear()&&a++,a}},{key:"determineDaysOfMonths",value:function(t,e){var i=30;switch(t=b.monthMod(t),!0){case this.months30.indexOf(t)>-1:2===t&&(i=this.isLeapYear(e)?29:28);break;case this.months31.indexOf(t)>-1:default:i=31}return i}}]),t}(),I=function(t){var e,i=t.ctx,a=t.seriesIndex,n=t.dataPointIndex,s=t.y1,r=t.y2,o=t.w,l=o.globals.seriesRangeStart[a][n],c=o.globals.seriesRangeEnd[a][n],d=o.globals.labels[n],h=o.config.series[a].name?o.config.series[a].name:"",u=o.config.tooltip.y.formatter,p=o.config.tooltip.y.title.formatter,f={w:o,seriesIndex:a,dataPointIndex:n,start:l,end:c};"function"==typeof p&&(h=p(h,f)),null!==(e=o.config.series[a].data[n])&&void 0!==e&&e.x&&(d=o.config.series[a].data[n].x+":"),"function"==typeof u&&(d=u(d,f)),Number.isFinite(s)&&Number.isFinite(r)&&(l=s,c=r);var g="",v="",m=o.globals.colors[a];if(void 0===o.config.tooltip.x.formatter)if("datetime"===o.config.xaxis.type){var x=new L(i);g=x.formatDate(x.getDate(l),o.config.tooltip.x.format),v=x.formatDate(x.getDate(c),o.config.tooltip.x.format)}else g=l,v=c;else g=o.config.tooltip.x.formatter(l),v=o.config.tooltip.x.formatter(c);return{start:l,end:c,startVal:g,endVal:v,ylabel:d,color:m,seriesName:h}},_=function(t){var e=t.color,i=t.seriesName,a=t.ylabel,n=t.start,s=t.end,r=t.seriesIndex,o=t.dataPointIndex,l=t.ctx.tooltip.tooltipLabels.getFormatters(r);n=l.yLbFormatter(n),s=l.yLbFormatter(s);var c=l.yLbFormatter(t.w.globals.series[r][o]),d='\n '.concat(n,'\n - \n ').concat(s,"\n ");return'
'+(i||"")+'
'+a+" "+(t.w.globals.comboCharts?"rangeArea"===t.w.config.series[r].type||"rangeBar"===t.w.config.series[r].type?d:"".concat(c,""):d)+"
"},D=function(){function t(e){o(this,t),this.opts=e}return c(t,[{key:"line",value:function(){return{chart:{animations:{easing:"swing"}},dataLabels:{enabled:!1},stroke:{width:5,curve:"straight"},markers:{size:0,hover:{sizeOffset:6}},xaxis:{crosshairs:{width:1}}}}},{key:"sparkline",value:function(t){return this.opts.yaxis[0].show=!1,this.opts.yaxis[0].title.text="",this.opts.yaxis[0].axisBorder.show=!1,this.opts.yaxis[0].axisTicks.show=!1,this.opts.yaxis[0].floating=!0,b.extend(t,{grid:{show:!1,padding:{left:0,right:0,top:0,bottom:0}},legend:{show:!1},xaxis:{labels:{show:!1},tooltip:{enabled:!1},axisBorder:{show:!1},axisTicks:{show:!1}},chart:{toolbar:{show:!1},zoom:{enabled:!1}},dataLabels:{enabled:!1}})}},{key:"bar",value:function(){return{chart:{stacked:!1,animations:{easing:"swing"}},plotOptions:{bar:{dataLabels:{position:"center"}}},dataLabels:{style:{colors:["#fff"]},background:{enabled:!1}},stroke:{width:0,lineCap:"round"},fill:{opacity:.85},legend:{markers:{shape:"square",radius:2,size:8}},tooltip:{shared:!1,intersect:!0},xaxis:{tooltip:{enabled:!1},tickPlacement:"between",crosshairs:{width:"barWidth",position:"back",fill:{type:"gradient"},dropShadow:{enabled:!1},stroke:{width:0}}}}}},{key:"candlestick",value:function(){var t=this;return{stroke:{width:1,colors:["#333"]},fill:{opacity:1},dataLabels:{enabled:!1},tooltip:{shared:!0,custom:function(e){var i=e.seriesIndex,a=e.dataPointIndex,n=e.w;return t._getBoxTooltip(n,i,a,["Open","High","","Low","Close"],"candlestick")}},states:{active:{filter:{type:"none"}}},xaxis:{crosshairs:{width:1}}}}},{key:"boxPlot",value:function(){var t=this;return{chart:{animations:{dynamicAnimation:{enabled:!1}}},stroke:{width:1,colors:["#24292e"]},dataLabels:{enabled:!1},tooltip:{shared:!0,custom:function(e){var i=e.seriesIndex,a=e.dataPointIndex,n=e.w;return t._getBoxTooltip(n,i,a,["Minimum","Q1","Median","Q3","Maximum"],"boxPlot")}},markers:{size:5,strokeWidth:1,strokeColors:"#111"},xaxis:{crosshairs:{width:1}}}}},{key:"rangeBar",value:function(){return{stroke:{width:0,lineCap:"square"},plotOptions:{bar:{borderRadius:0,dataLabels:{position:"center"}}},dataLabels:{enabled:!1,formatter:function(t,e){e.ctx;var i=e.seriesIndex,a=e.dataPointIndex,n=e.w,s=function(){var t=n.globals.seriesRangeStart[i][a];return n.globals.seriesRangeEnd[i][a]-t};return n.globals.comboCharts?"rangeBar"===n.config.series[i].type||"rangeArea"===n.config.series[i].type?s():t:s()},background:{enabled:!1},style:{colors:["#fff"]}},tooltip:{shared:!1,followCursor:!0,custom:function(t){return t.w.config.plotOptions&&t.w.config.plotOptions.bar&&t.w.config.plotOptions.bar.horizontal?function(t){var e=I(t),i=e.color,a=e.seriesName,n=e.ylabel,r=e.startVal,o=e.endVal;return _(s(s({},t),{},{color:i,seriesName:a,ylabel:n,start:r,end:o}))}(t):function(t){var e=I(t),i=e.color,a=e.seriesName,n=e.ylabel,r=e.start,o=e.end;return _(s(s({},t),{},{color:i,seriesName:a,ylabel:n,start:r,end:o}))}(t)}},xaxis:{tickPlacement:"between",tooltip:{enabled:!1},crosshairs:{stroke:{width:0}}}}}},{key:"area",value:function(){return{stroke:{width:4,fill:{type:"solid",gradient:{inverseColors:!1,shade:"light",type:"vertical",opacityFrom:.65,opacityTo:.5,stops:[0,100,100]}}},fill:{type:"gradient",gradient:{inverseColors:!1,shade:"light",type:"vertical",opacityFrom:.65,opacityTo:.5,stops:[0,100,100]}},markers:{size:0,hover:{sizeOffset:6}},tooltip:{followCursor:!1}}}},{key:"rangeArea",value:function(){return{stroke:{curve:"straight",width:0},fill:{type:"solid",opacity:.6},markers:{size:0},states:{hover:{filter:{type:"none"}},active:{filter:{type:"none"}}},tooltip:{intersect:!1,shared:!0,followCursor:!0,custom:function(t){return function(t){var e=I(t),i=e.color,a=e.seriesName,n=e.ylabel,r=e.start,o=e.end;return _(s(s({},t),{},{color:i,seriesName:a,ylabel:n,start:r,end:o}))}(t)}}}}},{key:"brush",value:function(t){return b.extend(t,{chart:{toolbar:{autoSelected:"selection",show:!1},zoom:{enabled:!1}},dataLabels:{enabled:!1},stroke:{width:1},tooltip:{enabled:!1},xaxis:{tooltip:{enabled:!1}}})}},{key:"stacked100",value:function(t){t.dataLabels=t.dataLabels||{},t.dataLabels.formatter=t.dataLabels.formatter||void 0;var e=t.dataLabels.formatter;return t.yaxis.forEach((function(e,i){t.yaxis[i].min=0,t.yaxis[i].max=100})),"bar"===t.chart.type&&(t.dataLabels.formatter=e||function(t){return"number"==typeof t&&t?t.toFixed(0)+"%":t}),t}},{key:"convertCatToNumeric",value:function(t){return t.xaxis.convertedCatToNumeric=!0,t}},{key:"convertCatToNumericXaxis",value:function(t,e,i){t.xaxis.type="numeric",t.xaxis.labels=t.xaxis.labels||{},t.xaxis.labels.formatter=t.xaxis.labels.formatter||function(t){return b.isNumber(t)?Math.floor(t):t};var a=t.xaxis.labels.formatter,n=t.xaxis.categories&&t.xaxis.categories.length?t.xaxis.categories:t.labels;return i&&i.length&&(n=i.map((function(t){return Array.isArray(t)?t:String(t)}))),n&&n.length&&(t.xaxis.labels.formatter=function(t){return b.isNumber(t)?a(n[Math.floor(t)-1]):a(t)}),t.xaxis.categories=[],t.labels=[],t.xaxis.tickAmount=t.xaxis.tickAmount||"dataPoints",t}},{key:"bubble",value:function(){return{dataLabels:{style:{colors:["#fff"]}},tooltip:{shared:!1,intersect:!0},xaxis:{crosshairs:{width:0}},fill:{type:"solid",gradient:{shade:"light",inverse:!0,shadeIntensity:.55,opacityFrom:.4,opacityTo:.8}}}}},{key:"scatter",value:function(){return{dataLabels:{enabled:!1},tooltip:{shared:!1,intersect:!0},markers:{size:6,strokeWidth:1,hover:{sizeOffset:2}}}}},{key:"heatmap",value:function(){return{chart:{stacked:!1},fill:{opacity:1},dataLabels:{style:{colors:["#fff"]}},stroke:{colors:["#fff"]},tooltip:{followCursor:!0,marker:{show:!1},x:{show:!1}},legend:{position:"top",markers:{shape:"square",size:10,offsetY:2}},grid:{padding:{right:20}}}}},{key:"treemap",value:function(){return{chart:{zoom:{enabled:!1}},dataLabels:{style:{fontSize:14,fontWeight:600,colors:["#fff"]}},stroke:{show:!0,width:2,colors:["#fff"]},legend:{show:!1},fill:{gradient:{stops:[0,100]}},tooltip:{followCursor:!0,x:{show:!1}},grid:{padding:{left:0,right:0}},xaxis:{crosshairs:{show:!1},tooltip:{enabled:!1}}}}},{key:"pie",value:function(){return{chart:{toolbar:{show:!1}},plotOptions:{pie:{donut:{labels:{show:!1}}}},dataLabels:{formatter:function(t){return t.toFixed(1)+"%"},style:{colors:["#fff"]},background:{enabled:!1},dropShadow:{enabled:!0}},stroke:{colors:["#fff"]},fill:{opacity:1,gradient:{shade:"light",stops:[0,100]}},tooltip:{theme:"dark",fillSeriesColor:!0},legend:{position:"right"}}}},{key:"donut",value:function(){return{chart:{toolbar:{show:!1}},dataLabels:{formatter:function(t){return t.toFixed(1)+"%"},style:{colors:["#fff"]},background:{enabled:!1},dropShadow:{enabled:!0}},stroke:{colors:["#fff"]},fill:{opacity:1,gradient:{shade:"light",shadeIntensity:.35,stops:[80,100],opacityFrom:1,opacityTo:1}},tooltip:{theme:"dark",fillSeriesColor:!0},legend:{position:"right"}}}},{key:"polarArea",value:function(){return this.opts.yaxis[0].tickAmount=this.opts.yaxis[0].tickAmount?this.opts.yaxis[0].tickAmount:6,{chart:{toolbar:{show:!1}},dataLabels:{formatter:function(t){return t.toFixed(1)+"%"},enabled:!1},stroke:{show:!0,width:2},fill:{opacity:.7},tooltip:{theme:"dark",fillSeriesColor:!0},legend:{position:"right"}}}},{key:"radar",value:function(){return this.opts.yaxis[0].labels.offsetY=this.opts.yaxis[0].labels.offsetY?this.opts.yaxis[0].labels.offsetY:6,{dataLabels:{enabled:!1,style:{fontSize:"11px"}},stroke:{width:2},markers:{size:3,strokeWidth:1,strokeOpacity:1},fill:{opacity:.2},tooltip:{shared:!1,intersect:!0,followCursor:!0},grid:{show:!1},xaxis:{labels:{formatter:function(t){return t},style:{colors:["#a8a8a8"],fontSize:"11px"}},tooltip:{enabled:!1},crosshairs:{show:!1}}}}},{key:"radialBar",value:function(){return{chart:{animations:{dynamicAnimation:{enabled:!0,speed:800}},toolbar:{show:!1}},fill:{gradient:{shade:"dark",shadeIntensity:.4,inverseColors:!1,type:"diagonal2",opacityFrom:1,opacityTo:1,stops:[70,98,100]}},legend:{show:!1,position:"right"},tooltip:{enabled:!1,fillSeriesColor:!0}}}},{key:"_getBoxTooltip",value:function(t,e,i,a,n){var s=t.globals.seriesCandleO[e][i],r=t.globals.seriesCandleH[e][i],o=t.globals.seriesCandleM[e][i],l=t.globals.seriesCandleL[e][i],c=t.globals.seriesCandleC[e][i];return t.config.series[e].type&&t.config.series[e].type!==n?'
\n '.concat(t.config.series[e].name?t.config.series[e].name:"series-"+(e+1),": ").concat(t.globals.series[e][i],"\n
"):'
')+"
".concat(a[0],': ')+s+"
"+"
".concat(a[1],': ')+r+"
"+(o?"
".concat(a[2],': ')+o+"
":"")+"
".concat(a[3],': ')+l+"
"+"
".concat(a[4],': ')+c+"
"}}]),t}(),z=function(){function t(e){o(this,t),this.opts=e}return c(t,[{key:"init",value:function(t){var e=t.responsiveOverride,i=this.opts,a=new O,n=new D(i);this.chartType=i.chart.type,"histogram"===this.chartType&&(i.chart.type="bar",i=b.extend({plotOptions:{bar:{columnWidth:"99.99%"}}},i)),i=this.extendYAxis(i),i=this.extendAnnotations(i);var s=a.init(),o={};if(i&&"object"===r(i)){var l={};l=-1!==["line","area","bar","candlestick","boxPlot","rangeBar","rangeArea","histogram","bubble","scatter","heatmap","treemap","pie","polarArea","donut","radar","radialBar"].indexOf(i.chart.type)?n[i.chart.type]():n.line(),i.chart.brush&&i.chart.brush.enabled&&(l=n.brush(l)),i.chart.stacked&&"100%"===i.chart.stackType&&(i=n.stacked100(i)),this.checkForDarkTheme(window.Apex),this.checkForDarkTheme(i),i.xaxis=i.xaxis||window.Apex.xaxis||{},e||(i.xaxis.convertedCatToNumeric=!1),((i=this.checkForCatToNumericXAxis(this.chartType,l,i)).chart.sparkline&&i.chart.sparkline.enabled||window.Apex.chart&&window.Apex.chart.sparkline&&window.Apex.chart.sparkline.enabled)&&(l=n.sparkline(l)),o=b.extend(s,l)}var c=b.extend(o,window.Apex);return s=b.extend(c,i),this.handleUserInputErrors(s)}},{key:"checkForCatToNumericXAxis",value:function(t,e,i){var a=new D(i),n=("bar"===t||"boxPlot"===t)&&i.plotOptions&&i.plotOptions.bar&&i.plotOptions.bar.horizontal,s="pie"===t||"polarArea"===t||"donut"===t||"radar"===t||"radialBar"===t||"heatmap"===t,r="datetime"!==i.xaxis.type&&"numeric"!==i.xaxis.type,o=i.xaxis.tickPlacement?i.xaxis.tickPlacement:e.xaxis&&e.xaxis.tickPlacement;return n||s||!r||"between"===o||(i=a.convertCatToNumeric(i)),i}},{key:"extendYAxis",value:function(t,e){var i=new O;(void 0===t.yaxis||!t.yaxis||Array.isArray(t.yaxis)&&0===t.yaxis.length)&&(t.yaxis={}),t.yaxis.constructor!==Array&&window.Apex.yaxis&&window.Apex.yaxis.constructor!==Array&&(t.yaxis=b.extend(t.yaxis,window.Apex.yaxis)),t.yaxis.constructor!==Array?t.yaxis=[b.extend(i.yAxis,t.yaxis)]:t.yaxis=b.extendArray(t.yaxis,i.yAxis);var a=!1;t.yaxis.forEach((function(t){t.logarithmic&&(a=!0)}));var n=t.series;return e&&!n&&(n=e.config.series),a&&n.length!==t.yaxis.length&&n.length&&(t.yaxis=n.map((function(e,a){if(e.name||(n[a].name="series-".concat(a+1)),t.yaxis[a])return t.yaxis[a].seriesName=n[a].name,t.yaxis[a];var s=b.extend(i.yAxis,t.yaxis[0]);return s.show=!1,s}))),a&&n.length>1&&n.length!==t.yaxis.length&&console.warn("A multi-series logarithmic chart should have equal number of series and y-axes. Please make sure to equalize both."),t}},{key:"extendAnnotations",value:function(t){return void 0===t.annotations&&(t.annotations={},t.annotations.yaxis=[],t.annotations.xaxis=[],t.annotations.points=[]),t=this.extendYAxisAnnotations(t),t=this.extendXAxisAnnotations(t),this.extendPointAnnotations(t)}},{key:"extendYAxisAnnotations",value:function(t){var e=new O;return t.annotations.yaxis=b.extendArray(void 0!==t.annotations.yaxis?t.annotations.yaxis:[],e.yAxisAnnotation),t}},{key:"extendXAxisAnnotations",value:function(t){var e=new O;return t.annotations.xaxis=b.extendArray(void 0!==t.annotations.xaxis?t.annotations.xaxis:[],e.xAxisAnnotation),t}},{key:"extendPointAnnotations",value:function(t){var e=new O;return t.annotations.points=b.extendArray(void 0!==t.annotations.points?t.annotations.points:[],e.pointAnnotation),t}},{key:"checkForDarkTheme",value:function(t){t.theme&&"dark"===t.theme.mode&&(t.tooltip||(t.tooltip={}),"light"!==t.tooltip.theme&&(t.tooltip.theme="dark"),t.chart.foreColor||(t.chart.foreColor="#f6f7f8"),t.chart.background||(t.chart.background="#424242"),t.theme.palette||(t.theme.palette="palette4"))}},{key:"handleUserInputErrors",value:function(t){var e=t;if(e.tooltip.shared&&e.tooltip.intersect)throw new Error("tooltip.shared cannot be enabled when tooltip.intersect is true. Turn off any other option by setting it to false.");if("bar"===e.chart.type&&e.plotOptions.bar.horizontal){if(e.yaxis.length>1)throw new Error("Multiple Y Axis for bars are not supported. Switch to column chart by setting plotOptions.bar.horizontal=false");e.yaxis[0].reversed&&(e.yaxis[0].opposite=!0),e.xaxis.tooltip.enabled=!1,e.yaxis[0].tooltip.enabled=!1,e.chart.zoom.enabled=!1}return"bar"!==e.chart.type&&"rangeBar"!==e.chart.type||e.tooltip.shared&&"barWidth"===e.xaxis.crosshairs.width&&e.series.length>1&&(e.xaxis.crosshairs.width="tickWidth"),"candlestick"!==e.chart.type&&"boxPlot"!==e.chart.type||e.yaxis[0].reversed&&(console.warn("Reversed y-axis in ".concat(e.chart.type," chart is not supported.")),e.yaxis[0].reversed=!1),e}}]),t}(),N=function(){function t(){o(this,t)}return c(t,[{key:"initGlobalVars",value:function(t){t.series=[],t.seriesCandleO=[],t.seriesCandleH=[],t.seriesCandleM=[],t.seriesCandleL=[],t.seriesCandleC=[],t.seriesRangeStart=[],t.seriesRangeEnd=[],t.seriesRange=[],t.seriesPercent=[],t.seriesGoals=[],t.seriesX=[],t.seriesZ=[],t.seriesNames=[],t.seriesTotals=[],t.seriesLog=[],t.seriesColors=[],t.stackedSeriesTotals=[],t.seriesXvalues=[],t.seriesYvalues=[],t.labels=[],t.hasGroups=!1,t.groups=[],t.categoryLabels=[],t.timescaleLabels=[],t.noLabelsProvided=!1,t.resizeTimer=null,t.selectionResizeTimer=null,t.delayedElements=[],t.pointsArray=[],t.dataLabelsRects=[],t.isXNumeric=!1,t.xaxisLabelsCount=0,t.skipLastTimelinelabel=!1,t.skipFirstTimelinelabel=!1,t.isDataXYZ=!1,t.isMultiLineX=!1,t.isMultipleYAxis=!1,t.maxY=-Number.MAX_VALUE,t.minY=Number.MIN_VALUE,t.minYArr=[],t.maxYArr=[],t.maxX=-Number.MAX_VALUE,t.minX=Number.MAX_VALUE,t.initialMaxX=-Number.MAX_VALUE,t.initialMinX=Number.MAX_VALUE,t.maxDate=0,t.minDate=Number.MAX_VALUE,t.minZ=Number.MAX_VALUE,t.maxZ=-Number.MAX_VALUE,t.minXDiff=Number.MAX_VALUE,t.yAxisScale=[],t.xAxisScale=null,t.xAxisTicksPositions=[],t.yLabelsCoords=[],t.yTitleCoords=[],t.barPadForNumericAxis=0,t.padHorizontal=0,t.xRange=0,t.yRange=[],t.zRange=0,t.dataPoints=0,t.xTickAmount=0}},{key:"globalVars",value:function(t){return{chartID:null,cuid:null,events:{beforeMount:[],mounted:[],updated:[],clicked:[],selection:[],dataPointSelection:[],zoomed:[],scrolled:[]},colors:[],clientX:null,clientY:null,fill:{colors:[]},stroke:{colors:[]},dataLabels:{style:{colors:[]}},radarPolygons:{fill:{colors:[]}},markers:{colors:[],size:t.markers.size,largestSize:0},animationEnded:!1,isTouchDevice:"ontouchstart"in window||navigator.msMaxTouchPoints,isDirty:!1,isExecCalled:!1,initialConfig:null,initialSeries:[],lastXAxis:[],lastYAxis:[],columnSeries:null,labels:[],timescaleLabels:[],noLabelsProvided:!1,allSeriesCollapsed:!1,collapsedSeries:[],collapsedSeriesIndices:[],ancillaryCollapsedSeries:[],ancillaryCollapsedSeriesIndices:[],risingSeries:[],dataFormatXNumeric:!1,capturedSeriesIndex:-1,capturedDataPointIndex:-1,selectedDataPoints:[],goldenPadding:35,invalidLogScale:!1,ignoreYAxisIndexes:[],yAxisSameScaleIndices:[],maxValsInArrayIndex:0,radialSize:0,selection:void 0,zoomEnabled:"zoom"===t.chart.toolbar.autoSelected&&t.chart.toolbar.tools.zoom&&t.chart.zoom.enabled,panEnabled:"pan"===t.chart.toolbar.autoSelected&&t.chart.toolbar.tools.pan,selectionEnabled:"selection"===t.chart.toolbar.autoSelected&&t.chart.toolbar.tools.selection,yaxis:null,mousedown:!1,lastClientPosition:{},visibleXRange:void 0,yValueDecimal:0,total:0,SVGNS:"http://www.w3.org/2000/svg",svgWidth:0,svgHeight:0,noData:!1,locale:{},dom:{},memory:{methodsToExec:[]},shouldAnimate:!0,skipLastTimelinelabel:!1,skipFirstTimelinelabel:!1,delayedElements:[],axisCharts:!0,isDataXYZ:!1,resized:!1,resizeTimer:null,comboCharts:!1,dataChanged:!1,previousPaths:[],allSeriesHasEqualX:!0,pointsArray:[],dataLabelsRects:[],lastDrawnDataLabelsIndexes:[],hasNullValues:!1,easing:null,zoomed:!1,gridWidth:0,gridHeight:0,rotateXLabels:!1,defaultLabels:!1,xLabelFormatter:void 0,yLabelFormatters:[],xaxisTooltipFormatter:void 0,ttKeyFormatter:void 0,ttVal:void 0,ttZFormatter:void 0,LINE_HEIGHT_RATIO:1.618,xAxisLabelsHeight:0,xAxisGroupLabelsHeight:0,xAxisLabelsWidth:0,yAxisLabelsWidth:0,scaleX:1,scaleY:1,translateX:0,translateY:0,translateYAxisX:[],yAxisWidths:[],translateXAxisY:0,translateXAxisX:0,tooltip:null}}},{key:"init",value:function(t){var e=this.globalVars(t);return this.initGlobalVars(e),e.initialConfig=b.extend({},t),e.initialSeries=b.clone(t.series),e.lastXAxis=b.clone(e.initialConfig.xaxis),e.lastYAxis=b.clone(e.initialConfig.yaxis),e}}]),t}(),j=function(){function t(e){o(this,t),this.opts=e}return c(t,[{key:"init",value:function(){var t=new z(this.opts).init({responsiveOverride:!1});return{config:t,globals:(new N).init(t)}}}]),t}(),H=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.opts=null,this.seriesIndex=0}return c(t,[{key:"clippedImgArea",value:function(t){var e=this.w,i=e.config,a=parseInt(e.globals.gridWidth,10),n=parseInt(e.globals.gridHeight,10),s=a>n?a:n,r=t.image,o=0,l=0;void 0===t.width&&void 0===t.height?void 0!==i.fill.image.width&&void 0!==i.fill.image.height?(o=i.fill.image.width+1,l=i.fill.image.height):(o=s+1,l=s):(o=t.width,l=t.height);var c=document.createElementNS(e.globals.SVGNS,"pattern");C.setAttrs(c,{id:t.patternID,patternUnits:t.patternUnits?t.patternUnits:"userSpaceOnUse",width:o+"px",height:l+"px"});var d=document.createElementNS(e.globals.SVGNS,"image");c.appendChild(d),d.setAttributeNS(window.SVG.xlink,"href",r),C.setAttrs(d,{x:0,y:0,preserveAspectRatio:"none",width:o+"px",height:l+"px"}),d.style.opacity=t.opacity,e.globals.dom.elDefs.node.appendChild(c)}},{key:"getSeriesIndex",value:function(t){var e=this.w;return("bar"===e.config.chart.type||"rangeBar"===e.config.chart.type)&&e.config.plotOptions.bar.distributed||"heatmap"===e.config.chart.type||"treemap"===e.config.chart.type?this.seriesIndex=t.seriesNumber:this.seriesIndex=t.seriesNumber%e.globals.series.length,this.seriesIndex}},{key:"fillPath",value:function(t){var e=this.w;this.opts=t;var i,a,n,s=this.w.config;this.seriesIndex=this.getSeriesIndex(t);var r=this.getFillColors()[this.seriesIndex];void 0!==e.globals.seriesColors[this.seriesIndex]&&(r=e.globals.seriesColors[this.seriesIndex]),"function"==typeof r&&(r=r({seriesIndex:this.seriesIndex,dataPointIndex:t.dataPointIndex,value:t.value,w:e}));var o=t.fillType?t.fillType:this.getFillType(this.seriesIndex),l=Array.isArray(s.fill.opacity)?s.fill.opacity[this.seriesIndex]:s.fill.opacity;t.color&&(r=t.color);var c=r;if(-1===r.indexOf("rgb")?r.length<9&&(c=b.hexToRgba(r,l)):r.indexOf("rgba")>-1&&(l=b.getOpacityFromRGBA(r)),t.opacity&&(l=t.opacity),"pattern"===o&&(a=this.handlePatternFill({fillConfig:t.fillConfig,patternFill:a,fillColor:r,fillOpacity:l,defaultColor:c})),"gradient"===o&&(n=this.handleGradientFill({fillConfig:t.fillConfig,fillColor:r,fillOpacity:l,i:this.seriesIndex})),"image"===o){var d=s.fill.image.src,h=t.patternID?t.patternID:"";this.clippedImgArea({opacity:l,image:Array.isArray(d)?t.seriesNumber-1&&(p=b.getOpacityFromRGBA(u));var f=void 0===r.gradient.opacityTo?i:Array.isArray(r.gradient.opacityTo)?r.gradient.opacityTo[n]:r.gradient.opacityTo;if(void 0===r.gradient.gradientToColors||0===r.gradient.gradientToColors.length)o="dark"===r.gradient.shade?d.shadeColor(-1*parseFloat(r.gradient.shadeIntensity),e.indexOf("rgb")>-1?b.rgb2hex(e):e):d.shadeColor(parseFloat(r.gradient.shadeIntensity),e.indexOf("rgb")>-1?b.rgb2hex(e):e);else if(r.gradient.gradientToColors[l.seriesNumber]){var g=r.gradient.gradientToColors[l.seriesNumber];o=g,g.indexOf("rgba")>-1&&(f=b.getOpacityFromRGBA(g))}else o=e;if(r.gradient.gradientFrom&&(u=r.gradient.gradientFrom),r.gradient.gradientTo&&(o=r.gradient.gradientTo),r.gradient.inverseColors){var v=u;u=o,o=v}return u.indexOf("rgb")>-1&&(u=b.rgb2hex(u)),o.indexOf("rgb")>-1&&(o=b.rgb2hex(o)),c.drawGradient(h,u,o,p,f,l.size,r.gradient.stops,r.gradient.colorStops,n)}}]),t}(),X=function(){function t(e,i){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"setGlobalMarkerSize",value:function(){var t=this.w;if(t.globals.markers.size=Array.isArray(t.config.markers.size)?t.config.markers.size:[t.config.markers.size],t.globals.markers.size.length>0){if(t.globals.markers.size.length4&&void 0!==arguments[4]&&arguments[4],r=this.w,o=e,l=t,c=null,d=new C(this.ctx),h=r.config.markers.discrete&&r.config.markers.discrete.length;if((r.globals.markers.size[e]>0||s||h)&&(c=d.group({class:s||h?"":"apexcharts-series-markers"})).attr("clip-path","url(#gridRectMarkerMask".concat(r.globals.cuid,")")),Array.isArray(l.x))for(var u=0;u0:r.config.markers.size>0)||s||h){b.isNumber(l.y[u])?f+=" w".concat(b.randomId()):f="apexcharts-nullpoint";var g=this.getMarkerConfig({cssClass:f,seriesIndex:e,dataPointIndex:p});r.config.series[o].data[p]&&(r.config.series[o].data[p].fillColor&&(g.pointFillColor=r.config.series[o].data[p].fillColor),r.config.series[o].data[p].strokeColor&&(g.pointStrokeColor=r.config.series[o].data[p].strokeColor)),a&&(g.pSize=a),(n=d.drawMarker(l.x[u],l.y[u],g)).attr("rel",p),n.attr("j",p),n.attr("index",e),n.node.setAttribute("default-marker-size",g.pSize),new w(this.ctx).setSelectionFilter(n,e,p),this.addEvents(n),c&&c.add(n)}else void 0===r.globals.pointsArray[e]&&(r.globals.pointsArray[e]=[]),r.globals.pointsArray[e].push([l.x[u],l.y[u]])}return c}},{key:"getMarkerConfig",value:function(t){var e=t.cssClass,i=t.seriesIndex,a=t.dataPointIndex,n=void 0===a?null:a,s=t.finishRadius,r=void 0===s?null:s,o=this.w,l=this.getMarkerStyle(i),c=o.globals.markers.size[i],d=o.config.markers;return null!==n&&d.discrete.length&&d.discrete.map((function(t){t.seriesIndex===i&&t.dataPointIndex===n&&(l.pointStrokeColor=t.strokeColor,l.pointFillColor=t.fillColor,c=t.size,l.pointShape=t.shape)})),{pSize:null===r?c:r,pRadius:d.radius,width:Array.isArray(d.width)?d.width[i]:d.width,height:Array.isArray(d.height)?d.height[i]:d.height,pointStrokeWidth:Array.isArray(d.strokeWidth)?d.strokeWidth[i]:d.strokeWidth,pointStrokeColor:l.pointStrokeColor,pointFillColor:l.pointFillColor,shape:l.pointShape||(Array.isArray(d.shape)?d.shape[i]:d.shape),class:e,pointStrokeOpacity:Array.isArray(d.strokeOpacity)?d.strokeOpacity[i]:d.strokeOpacity,pointStrokeDashArray:Array.isArray(d.strokeDashArray)?d.strokeDashArray[i]:d.strokeDashArray,pointFillOpacity:Array.isArray(d.fillOpacity)?d.fillOpacity[i]:d.fillOpacity,seriesIndex:i}}},{key:"addEvents",value:function(t){var e=this.w,i=new C(this.ctx);t.node.addEventListener("mouseenter",i.pathMouseEnter.bind(this.ctx,t)),t.node.addEventListener("mouseleave",i.pathMouseLeave.bind(this.ctx,t)),t.node.addEventListener("mousedown",i.pathMouseDown.bind(this.ctx,t)),t.node.addEventListener("click",e.config.markers.onClick),t.node.addEventListener("dblclick",e.config.markers.onDblClick),t.node.addEventListener("touchstart",i.pathMouseDown.bind(this.ctx,t),{passive:!0})}},{key:"getMarkerStyle",value:function(t){var e=this.w,i=e.globals.markers.colors,a=e.config.markers.strokeColor||e.config.markers.strokeColors;return{pointStrokeColor:Array.isArray(a)?a[t]:a,pointFillColor:Array.isArray(i)?i[t]:i}}}]),t}(),R=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.initialAnim=this.w.config.chart.animations.enabled,this.dynamicAnim=this.initialAnim&&this.w.config.chart.animations.dynamicAnimation.enabled}return c(t,[{key:"draw",value:function(t,e,i){var a=this.w,n=new C(this.ctx),s=i.realIndex,r=i.pointsPos,o=i.zRatio,l=i.elParent,c=n.group({class:"apexcharts-series-markers apexcharts-series-".concat(a.config.chart.type)});if(c.attr("clip-path","url(#gridRectMarkerMask".concat(a.globals.cuid,")")),Array.isArray(r.x))for(var d=0;dg.maxBubbleRadius&&(f=g.maxBubbleRadius)}a.config.chart.animations.enabled||(p=f);var v=r.x[d],m=r.y[d];if(p=p||0,null!==m&&void 0!==a.globals.series[s][h]||(u=!1),u){var x=this.drawPoint(v,m,p,f,s,h,e);c.add(x)}l.add(c)}}},{key:"drawPoint",value:function(t,e,i,a,n,s,r){var o=this.w,l=n,c=new y(this.ctx),d=new w(this.ctx),h=new H(this.ctx),u=new X(this.ctx),p=new C(this.ctx),f=u.getMarkerConfig({cssClass:"apexcharts-marker",seriesIndex:l,dataPointIndex:s,finishRadius:"bubble"===o.config.chart.type||o.globals.comboCharts&&o.config.series[n]&&"bubble"===o.config.series[n].type?a:null});a=f.pSize;var g,v=h.fillPath({seriesNumber:n,dataPointIndex:s,color:f.pointFillColor,patternUnits:"objectBoundingBox",value:o.globals.series[n][r]});if("circle"===f.shape?g=p.drawCircle(i):"square"!==f.shape&&"rect"!==f.shape||(g=p.drawRect(0,0,f.width-f.pointStrokeWidth/2,f.height-f.pointStrokeWidth/2,f.pRadius)),o.config.series[l].data[s]&&o.config.series[l].data[s].fillColor&&(v=o.config.series[l].data[s].fillColor),g.attr({x:t-f.width/2-f.pointStrokeWidth/2,y:e-f.height/2-f.pointStrokeWidth/2,cx:t,cy:e,fill:v,"fill-opacity":f.pointFillOpacity,stroke:f.pointStrokeColor,r:a,"stroke-width":f.pointStrokeWidth,"stroke-dasharray":f.pointStrokeDashArray,"stroke-opacity":f.pointStrokeOpacity}),o.config.chart.dropShadow.enabled){var m=o.config.chart.dropShadow;d.dropShadow(g,m,n)}if(!this.initialAnim||o.globals.dataChanged||o.globals.resized)o.globals.animationEnded=!0;else{var x=o.config.chart.animations.speed;c.animateMarker(g,0,"circle"===f.shape?a:{width:f.width,height:f.height},x,o.globals.easing,(function(){window.setTimeout((function(){c.animationCompleted(g)}),100)}))}if(o.globals.dataChanged&&"circle"===f.shape)if(this.dynamicAnim){var b,S,k,A,P=o.config.chart.animations.dynamicAnimation.speed;null!=(A=o.globals.previousPaths[n]&&o.globals.previousPaths[n][r])&&(b=A.x,S=A.y,k=void 0!==A.r?A.r:a);for(var T=0;To.globals.gridHeight+h&&(e=o.globals.gridHeight+h/2),void 0===o.globals.dataLabelsRects[a]&&(o.globals.dataLabelsRects[a]=[]),o.globals.dataLabelsRects[a].push({x:t,y:e,width:d,height:h});var u=o.globals.dataLabelsRects[a].length-2,p=void 0!==o.globals.lastDrawnDataLabelsIndexes[a]?o.globals.lastDrawnDataLabelsIndexes[a][o.globals.lastDrawnDataLabelsIndexes[a].length-1]:0;if(void 0!==o.globals.dataLabelsRects[a][u]){var f=o.globals.dataLabelsRects[a][p];(t>f.x+f.width+2||e>f.y+f.height+2||t+de.globals.gridWidth+g.textRects.width+10)&&(o="");var v=e.globals.dataLabels.style.colors[s];(("bar"===e.config.chart.type||"rangeBar"===e.config.chart.type)&&e.config.plotOptions.bar.distributed||e.config.dataLabels.distributed)&&(v=e.globals.dataLabels.style.colors[r]),"function"==typeof v&&(v=v({series:e.globals.series,seriesIndex:s,dataPointIndex:r,w:e})),u&&(v=u);var m=h.offsetX,x=h.offsetY;if("bar"!==e.config.chart.type&&"rangeBar"!==e.config.chart.type||(m=0,x=0),g.drawnextLabel){var b=i.drawText({width:100,height:parseInt(h.style.fontSize,10),x:a+m,y:n+x,foreColor:v,textAnchor:l||h.textAnchor,text:o,fontSize:c||h.style.fontSize,fontFamily:h.style.fontFamily,fontWeight:h.style.fontWeight||"normal"});if(b.attr({class:"apexcharts-datalabel",cx:a,cy:n}),h.dropShadow.enabled){var y=h.dropShadow;new w(this.ctx).dropShadow(b,y)}d.add(b),void 0===e.globals.lastDrawnDataLabelsIndexes[s]&&(e.globals.lastDrawnDataLabelsIndexes[s]=[]),e.globals.lastDrawnDataLabelsIndexes[s].push(r)}}}},{key:"addBackgroundToDataLabel",value:function(t,e){var i=this.w,a=i.config.dataLabels.background,n=a.padding,s=a.padding/2,r=e.width,o=e.height,l=new C(this.ctx).drawRect(e.x-n,e.y-s/2,r+2*n,o+s,a.borderRadius,"transparent"===i.config.chart.background?"#fff":i.config.chart.background,a.opacity,a.borderWidth,a.borderColor);return a.dropShadow.enabled&&new w(this.ctx).dropShadow(l,a.dropShadow),l}},{key:"dataLabelsBackground",value:function(){var t=this.w;if("bubble"!==t.config.chart.type)for(var e=t.globals.dom.baseEl.querySelectorAll(".apexcharts-datalabels text"),i=0;i0&&void 0!==arguments[0])||arguments[0],e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=this.w,n=b.clone(a.globals.initialSeries);a.globals.previousPaths=[],i?(a.globals.collapsedSeries=[],a.globals.ancillaryCollapsedSeries=[],a.globals.collapsedSeriesIndices=[],a.globals.ancillaryCollapsedSeriesIndices=[]):n=this.emptyCollapsedSeries(n),a.config.series=n,t&&(e&&(a.globals.zoomed=!1,this.ctx.updateHelpers.revertDefaultAxisMinMax()),this.ctx.updateHelpers._updateSeries(n,a.config.chart.animations.dynamicAnimation.enabled))}},{key:"emptyCollapsedSeries",value:function(t){for(var e=this.w,i=0;i-1&&(t[i].data=[]);return t}},{key:"toggleSeriesOnHover",value:function(t,e){var i=this.w;e||(e=t.target);var a=i.globals.dom.baseEl.querySelectorAll(".apexcharts-series, .apexcharts-datalabels");if("mousemove"===t.type){var n=parseInt(e.getAttribute("rel"),10)-1,s=null,r=null;i.globals.axisCharts||"radialBar"===i.config.chart.type?i.globals.axisCharts?(s=i.globals.dom.baseEl.querySelector(".apexcharts-series[data\\:realIndex='".concat(n,"']")),r=i.globals.dom.baseEl.querySelector(".apexcharts-datalabels[data\\:realIndex='".concat(n,"']"))):s=i.globals.dom.baseEl.querySelector(".apexcharts-series[rel='".concat(n+1,"']")):s=i.globals.dom.baseEl.querySelector(".apexcharts-series[rel='".concat(n+1,"'] path"));for(var o=0;o=t.from&&a<=t.to&&n[e].classList.remove(i.legendInactiveClass)}}(a.config.plotOptions.heatmap.colorScale.ranges[r])}else"mouseout"===t.type&&s("remove")}},{key:"getActiveConfigSeriesIndex",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"asc",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=this.w,a=0;if(i.config.series.length>1)for(var n=i.config.series.map((function(t,a){return t.data&&t.data.length>0&&-1===i.globals.collapsedSeriesIndices.indexOf(a)&&(!i.globals.comboCharts||0===e.length||e.length&&e.indexOf(i.config.series[a].type)>-1)?a:-1})),s="asc"===t?0:n.length-1;"asc"===t?s=0;"asc"===t?s++:s--)if(-1!==n[s]){a=n[s];break}return a}},{key:"getBarSeriesIndices",value:function(){return this.w.globals.comboCharts?this.w.config.series.map((function(t,e){return"bar"===t.type||"column"===t.type?e:-1})).filter((function(t){return-1!==t})):this.w.config.series.map((function(t,e){return e}))}},{key:"getPreviousPaths",value:function(){var t=this.w;function e(e,i,a){for(var n=e[i].childNodes,s={type:a,paths:[],realIndex:e[i].getAttribute("data:realIndex")},r=0;r0)for(var a=function(e){for(var i=t.globals.dom.baseEl.querySelectorAll(".apexcharts-".concat(t.config.chart.type," .apexcharts-series[data\\:realIndex='").concat(e,"'] rect")),a=[],n=function(t){var e=function(e){return i[t].getAttribute(e)},n={x:parseFloat(e("x")),y:parseFloat(e("y")),width:parseFloat(e("width")),height:parseFloat(e("height"))};a.push({rect:n,color:i[t].getAttribute("color")})},s=0;s0)for(var a=0;a0?t:[]}))}}]),t}(),Y=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.twoDSeries=[],this.threeDSeries=[],this.twoDSeriesX=[],this.seriesGoals=[],this.coreUtils=new S(this.ctx)}return c(t,[{key:"isMultiFormat",value:function(){return this.isFormatXY()||this.isFormat2DArray()}},{key:"isFormatXY",value:function(){var t=this.w.config.series.slice(),e=new F(this.ctx);if(this.activeSeriesIndex=e.getActiveConfigSeriesIndex(),void 0!==t[this.activeSeriesIndex].data&&t[this.activeSeriesIndex].data.length>0&&null!==t[this.activeSeriesIndex].data[0]&&void 0!==t[this.activeSeriesIndex].data[0].x&&null!==t[this.activeSeriesIndex].data[0])return!0}},{key:"isFormat2DArray",value:function(){var t=this.w.config.series.slice(),e=new F(this.ctx);if(this.activeSeriesIndex=e.getActiveConfigSeriesIndex(),void 0!==t[this.activeSeriesIndex].data&&t[this.activeSeriesIndex].data.length>0&&void 0!==t[this.activeSeriesIndex].data[0]&&null!==t[this.activeSeriesIndex].data[0]&&t[this.activeSeriesIndex].data[0].constructor===Array)return!0}},{key:"handleFormat2DArray",value:function(t,e){for(var i=this.w.config,a=this.w.globals,n="boxPlot"===i.chart.type||"boxPlot"===i.series[e].type,s=0;s=5?this.twoDSeries.push(b.parseNumber(t[e].data[s][4])):this.twoDSeries.push(b.parseNumber(t[e].data[s][1])),a.dataFormatXNumeric=!0),"datetime"===i.xaxis.type){var r=new Date(t[e].data[s][0]);r=new Date(r).getTime(),this.twoDSeriesX.push(r)}else this.twoDSeriesX.push(t[e].data[s][0]);for(var o=0;o-1&&(s=this.activeSeriesIndex);for(var r=0;r1&&void 0!==arguments[1]?arguments[1]:this.ctx,a=this.w.config,n=this.w.globals,s=new L(i),r=a.labels.length>0?a.labels.slice():a.xaxis.categories.slice();n.isRangeBar="rangeBar"===a.chart.type&&n.isBarHorizontal,n.hasGroups="category"===a.xaxis.type&&a.xaxis.group.groups.length>0,n.hasGroups&&(n.groups=a.xaxis.group.groups);for(var o=function(){for(var t=0;t0&&(this.twoDSeriesX=r,n.seriesX.push(this.twoDSeriesX))),n.labels.push(this.twoDSeriesX);var c=t[l].data.map((function(t){return b.parseNumber(t)}));n.series.push(c)}n.seriesZ.push(this.threeDSeries),void 0!==t[l].name?n.seriesNames.push(t[l].name):n.seriesNames.push("series-"+parseInt(l+1,10)),void 0!==t[l].color?n.seriesColors.push(t[l].color):n.seriesColors.push(void 0)}return this.w}},{key:"parseDataNonAxisCharts",value:function(t){var e=this.w.globals,i=this.w.config;e.series=t.slice(),e.seriesNames=i.labels.slice();for(var a=0;a0?i.labels=e.xaxis.categories:e.labels.length>0?i.labels=e.labels.slice():this.fallbackToCategory?(i.labels=i.labels[0],i.seriesRange.length&&(i.seriesRange.map((function(t){t.forEach((function(t){i.labels.indexOf(t.x)<0&&t.x&&i.labels.push(t.x)}))})),i.labels=i.labels.filter((function(t,e,i){return i.indexOf(t)===e}))),e.xaxis.convertedCatToNumeric&&(new D(e).convertCatToNumericXaxis(e,this.ctx,i.seriesX[0]),this._generateExternalLabels(t))):this._generateExternalLabels(t)}},{key:"_generateExternalLabels",value:function(t){var e=this.w.globals,i=this.w.config,a=[];if(e.axisCharts){if(e.series.length>0)if(this.isFormatXY())for(var n=i.series.map((function(t,e){return t.data.filter((function(t,e,i){return i.findIndex((function(e){return e.x===t.x}))===e}))})),s=n.reduce((function(t,e,i,a){return a[t].length>e.length?t:i}),0),r=0;r0&&i<100?t.toFixed(1):t.toFixed(0)}return e.globals.isBarHorizontal&&e.globals.maxY-e.globals.minYArr<4?t.toFixed(1):t.toFixed(0)}return t},"function"==typeof e.config.tooltip.x.formatter?e.globals.ttKeyFormatter=e.config.tooltip.x.formatter:e.globals.ttKeyFormatter=e.globals.xLabelFormatter,"function"==typeof e.config.xaxis.tooltip.formatter&&(e.globals.xaxisTooltipFormatter=e.config.xaxis.tooltip.formatter),(Array.isArray(e.config.tooltip.y)||void 0!==e.config.tooltip.y.formatter)&&(e.globals.ttVal=e.config.tooltip.y),void 0!==e.config.tooltip.z.formatter&&(e.globals.ttZFormatter=e.config.tooltip.z.formatter),void 0!==e.config.legend.formatter&&(e.globals.legendFormatter=e.config.legend.formatter),e.config.yaxis.forEach((function(i,a){void 0!==i.labels.formatter?e.globals.yLabelFormatters[a]=i.labels.formatter:e.globals.yLabelFormatters[a]=function(n){return e.globals.xyCharts?Array.isArray(n)?n.map((function(e){return t.defaultYFormatter(e,i,a)})):t.defaultYFormatter(n,i,a):n}})),e.globals}},{key:"heatmapLabelFormatters",value:function(){var t=this.w;if("heatmap"===t.config.chart.type){t.globals.yAxisScale[0].result=t.globals.seriesNames.slice();var e=t.globals.seriesNames.reduce((function(t,e){return t.length>e.length?t:e}),0);t.globals.yAxisScale[0].niceMax=e,t.globals.yAxisScale[0].niceMin=e}}}]),t}(),W=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"getLabel",value:function(t,e,i,a){var n=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[],s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"12px",r=!(arguments.length>6&&void 0!==arguments[6])||arguments[6],o=this.w,l=void 0===t[a]?"":t[a],c=l,d=o.globals.xLabelFormatter,h=o.config.xaxis.labels.formatter,u=!1,p=new B(this.ctx),f=l;r&&(c=p.xLabelFormat(d,l,f,{i:a,dateFormatter:new L(this.ctx).formatDate,w:o}),void 0!==h&&(c=h(l,t[a],{i:a,dateFormatter:new L(this.ctx).formatDate,w:o})));var g=function(t){var i=null;return e.forEach((function(t){"month"===t.unit?i="year":"day"===t.unit?i="month":"hour"===t.unit?i="day":"minute"===t.unit&&(i="hour")})),i===t};e.length>0?(u=g(e[a].unit),i=e[a].position,c=e[a].value):"datetime"===o.config.xaxis.type&&void 0===h&&(c=""),void 0===c&&(c=""),c=Array.isArray(c)?c:c.toString();var v=new C(this.ctx),m={};m=o.globals.rotateXLabels&&r?v.getTextRects(c,parseInt(s,10),null,"rotate(".concat(o.config.xaxis.labels.rotate," 0 0)"),!1):v.getTextRects(c,parseInt(s,10));var x=!o.config.xaxis.labels.showDuplicates&&this.ctx.timeScale;return!Array.isArray(c)&&(0===c.indexOf("NaN")||0===c.toLowerCase().indexOf("invalid")||c.toLowerCase().indexOf("infinity")>=0||n.indexOf(c)>=0&&x)&&(c=""),{x:i,text:c,textRect:m,isBold:u}}},{key:"checkLabelBasedOnTickamount",value:function(t,e,i){var a=this.w,n=a.config.xaxis.tickAmount;return"dataPoints"===n&&(n=Math.round(a.globals.gridWidth/120)),n>i||t%Math.round(i/(n+1))==0||(e.text=""),e}},{key:"checkForOverflowingLabels",value:function(t,e,i,a,n){var s=this.w;if(0===t&&s.globals.skipFirstTimelinelabel&&(e.text=""),t===i-1&&s.globals.skipLastTimelinelabel&&(e.text=""),s.config.xaxis.labels.hideOverlappingLabels&&a.length>0){var r=n[n.length-1];e.x0){!0===o.config.yaxis[n].opposite&&(t+=a.width);for(var d=e;d>=0;d--){var h=c+e/10+o.config.yaxis[n].labels.offsetY-1;o.globals.isBarHorizontal&&(h=s*d),"heatmap"===o.config.chart.type&&(h+=s/2);var u=l.drawLine(t+i.offsetX-a.width+a.offsetX,h+a.offsetY,t+i.offsetX+a.offsetX,h+a.offsetY,a.color);r.add(u),c+=s}}}}]),t}(),V=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"scaleSvgNode",value:function(t,e){var i=parseFloat(t.getAttributeNS(null,"width")),a=parseFloat(t.getAttributeNS(null,"height"));t.setAttributeNS(null,"width",i*e),t.setAttributeNS(null,"height",a*e),t.setAttributeNS(null,"viewBox","0 0 "+i+" "+a)}},{key:"fixSvgStringForIe11",value:function(t){if(!b.isIE11())return t.replace(/ /g," ");var e=0,i=t.replace(/xmlns="http:\/\/www.w3.org\/2000\/svg"/g,(function(t){return 2==++e?'xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.dev"':t}));return(i=i.replace(/xmlns:NS\d+=""/g,"")).replace(/NS\d+:(\w+:\w+=")/g,"$1")}},{key:"getSvgString",value:function(t){null==t&&(t=1);var e=this.w.globals.dom.Paper.svg();if(1!==t){var i=this.w.globals.dom.Paper.node.cloneNode(!0);this.scaleSvgNode(i,t),e=(new XMLSerializer).serializeToString(i)}return this.fixSvgStringForIe11(e)}},{key:"cleanup",value:function(){var t=this.w,e=t.globals.dom.baseEl.getElementsByClassName("apexcharts-xcrosshairs"),i=t.globals.dom.baseEl.getElementsByClassName("apexcharts-ycrosshairs"),a=t.globals.dom.baseEl.querySelectorAll(".apexcharts-zoom-rect, .apexcharts-selection-rect");Array.prototype.forEach.call(a,(function(t){t.setAttribute("width",0)})),e&&e[0]&&(e[0].setAttribute("x",-500),e[0].setAttribute("x1",-500),e[0].setAttribute("x2",-500)),i&&i[0]&&(i[0].setAttribute("y",-100),i[0].setAttribute("y1",-100),i[0].setAttribute("y2",-100))}},{key:"svgUrl",value:function(){this.cleanup();var t=this.getSvgString(),e=new Blob([t],{type:"image/svg+xml;charset=utf-8"});return URL.createObjectURL(e)}},{key:"dataURI",value:function(t){var e=this;return new Promise((function(i){var a=e.w,n=t?t.scale||t.width/a.globals.svgWidth:1;e.cleanup();var s=document.createElement("canvas");s.width=a.globals.svgWidth*n,s.height=parseInt(a.globals.dom.elWrap.style.height,10)*n;var r="transparent"===a.config.chart.background?"#fff":a.config.chart.background,o=s.getContext("2d");o.fillStyle=r,o.fillRect(0,0,s.width*n,s.height*n);var l=e.getSvgString(n);if(window.canvg&&b.isIE11()){var c=window.canvg.Canvg.fromString(o,l,{ignoreClear:!0,ignoreDimensions:!0});c.start();var d=s.msToBlob();c.stop(),i({blob:d})}else{var h="data:image/svg+xml,"+encodeURIComponent(l),u=new Image;u.crossOrigin="anonymous",u.onload=function(){if(o.drawImage(u,0,0),s.msToBlob){var t=s.msToBlob();i({blob:t})}else{var e=s.toDataURL("image/png");i({imgURI:e})}},u.src=h}}))}},{key:"exportToSVG",value:function(){this.triggerDownload(this.svgUrl(),this.w.config.chart.toolbar.export.svg.filename,".svg")}},{key:"exportToPng",value:function(){var t=this;this.dataURI().then((function(e){var i=e.imgURI,a=e.blob;a?navigator.msSaveOrOpenBlob(a,t.w.globals.chartID+".png"):t.triggerDownload(i,t.w.config.chart.toolbar.export.png.filename,".png")}))}},{key:"exportToCSV",value:function(t){var e=this,i=t.series,a=t.fileName,n=t.columnDelimiter,s=void 0===n?",":n,r=t.lineDelimiter,o=void 0===r?"\n":r,l=this.w;i||(i=l.config.series);var c=[],d=[],h="",u=l.globals.series.map((function(t,e){return-1===l.globals.collapsedSeriesIndices.indexOf(e)?t:[]})),p=Math.max.apply(Math,v(i.map((function(t){return t.data?t.data.length:0})))),f=new Y(this.ctx),g=new W(this.ctx),m=function(t){var i="";if(l.globals.axisCharts){if("category"===l.config.xaxis.type||l.config.xaxis.convertedCatToNumeric)if(l.globals.isBarHorizontal){var a=l.globals.yLabelFormatters[0],n=new F(e.ctx).getActiveConfigSeriesIndex();i=a(l.globals.labels[t],{seriesIndex:n,dataPointIndex:t,w:l})}else i=g.getLabel(l.globals.labels,l.globals.timescaleLabels,0,t).text;"datetime"===l.config.xaxis.type&&(l.config.xaxis.categories.length?i=l.config.xaxis.categories[t]:l.config.labels.length&&(i=l.config.labels[t]))}else i=l.config.labels[t];return Array.isArray(i)&&(i=i.join(" ")),b.isNumber(i)?i:i.split(s).join("")};c.push(l.config.chart.toolbar.export.csv.headerCategory),"boxPlot"===l.config.chart.type?(c.push("minimum"),c.push("q1"),c.push("median"),c.push("q3"),c.push("maximum")):"candlestick"===l.config.chart.type?(c.push("open"),c.push("high"),c.push("low"),c.push("close")):"rangeBar"===l.config.chart.type?(c.push("minimum"),c.push("maximum")):i.map((function(t,e){var i=t.name?t.name:"series-".concat(e);l.globals.axisCharts&&c.push(i.split(s).join("")?i.split(s).join(""):"series-".concat(e))})),l.globals.axisCharts||(c.push(l.config.chart.toolbar.export.csv.headerValue),d.push(c.join(s))),i.map((function(t,e){l.globals.axisCharts?function(t,e){if(c.length&&0===e&&d.push(c.join(s)),t.data){t.data=t.data.length&&t.data||v(Array(p)).map((function(){return""}));for(var a=0;a=10?l.config.chart.toolbar.export.csv.dateFormatter(n):b.isNumber(n)?n:n.split(s).join("")));for(var r=0;r0&&!a.globals.isBarHorizontal&&(this.xaxisLabels=a.globals.timescaleLabels.slice()),a.config.xaxis.overwriteCategories&&(this.xaxisLabels=a.config.xaxis.overwriteCategories),this.drawnLabels=[],this.drawnLabelsRects=[],"top"===a.config.xaxis.position?this.offY=0:this.offY=a.globals.gridHeight+1,this.offY=this.offY+a.config.xaxis.axisBorder.offsetY,this.isCategoryBarHorizontal="bar"===a.config.chart.type&&a.config.plotOptions.bar.horizontal,this.xaxisFontSize=a.config.xaxis.labels.style.fontSize,this.xaxisFontFamily=a.config.xaxis.labels.style.fontFamily,this.xaxisForeColors=a.config.xaxis.labels.style.colors,this.xaxisBorderWidth=a.config.xaxis.axisBorder.width,this.isCategoryBarHorizontal&&(this.xaxisBorderWidth=a.config.yaxis[0].axisBorder.width.toString()),this.xaxisBorderWidth.indexOf("%")>-1?this.xaxisBorderWidth=a.globals.gridWidth*parseInt(this.xaxisBorderWidth,10)/100:this.xaxisBorderWidth=parseInt(this.xaxisBorderWidth,10),this.xaxisBorderHeight=a.config.xaxis.axisBorder.height,this.yaxis=a.config.yaxis[0]}return c(t,[{key:"drawXaxis",value:function(){var t=this.w,e=new C(this.ctx),i=e.group({class:"apexcharts-xaxis",transform:"translate(".concat(t.config.xaxis.offsetX,", ").concat(t.config.xaxis.offsetY,")")}),a=e.group({class:"apexcharts-xaxis-texts-g",transform:"translate(".concat(t.globals.translateXAxisX,", ").concat(t.globals.translateXAxisY,")")});i.add(a);for(var n=[],s=0;s6&&void 0!==arguments[6]?arguments[6]:{},c=[],d=[],h=this.w,u=l.xaxisFontSize||this.xaxisFontSize,p=l.xaxisFontFamily||this.xaxisFontFamily,f=l.xaxisForeColors||this.xaxisForeColors,g=l.fontWeight||h.config.xaxis.labels.style.fontWeight,v=l.cssClass||h.config.xaxis.labels.style.cssClass,m=h.globals.padHorizontal,x=a.length,b="category"===h.config.xaxis.type?h.globals.dataPoints:x;if(0===b&&x>b&&(b=x),n){var y=b>1?b-1:b;r=h.globals.gridWidth/y,m=m+s(0,r)/2+h.config.xaxis.labels.offsetX}else r=h.globals.gridWidth/b,m=m+s(0,r)+h.config.xaxis.labels.offsetX;for(var w=function(n){var l=m-s(n,r)/2+h.config.xaxis.labels.offsetX;0===n&&1===x&&r/2===m&&1===b&&(l=h.globals.gridWidth/2);var y=o.axesUtils.getLabel(a,h.globals.timescaleLabels,l,n,c,u,t),w=28;if(h.globals.rotateXLabels&&t&&(w=22),h.config.xaxis.title.text&&"top"===h.config.xaxis.position&&(w+=parseFloat(h.config.xaxis.title.style.fontSize)+2),t||(w=w+parseFloat(u)+(h.globals.xAxisLabelsHeight-h.globals.xAxisGroupLabelsHeight)+(h.globals.rotateXLabels?10:0)),y=void 0!==h.config.xaxis.tickAmount&&"dataPoints"!==h.config.xaxis.tickAmount&&"datetime"!==h.config.xaxis.type?o.axesUtils.checkLabelBasedOnTickamount(n,y,x):o.axesUtils.checkForOverflowingLabels(n,y,x,c,d),t&&y.text&&h.globals.xaxisLabelsCount++,h.config.xaxis.labels.show){var C=e.drawText({x:y.x,y:o.offY+h.config.xaxis.labels.offsetY+w-("top"===h.config.xaxis.position?h.globals.xAxisHeight+h.config.xaxis.axisTicks.height-2:0),text:y.text,textAnchor:"middle",fontWeight:y.isBold?600:g,fontSize:u,fontFamily:p,foreColor:Array.isArray(f)?t&&h.config.xaxis.convertedCatToNumeric?f[h.globals.minX+n-1]:f[n]:f,isPlainText:!1,cssClass:(t?"apexcharts-xaxis-label ":"apexcharts-xaxis-group-label ")+v});if(i.add(C),C.on("click",(function(t){if("function"==typeof h.config.chart.events.xAxisLabelClick){var e=Object.assign({},h,{labelIndex:n});h.config.chart.events.xAxisLabelClick(t,o.ctx,e)}})),t){var S=document.createElementNS(h.globals.SVGNS,"title");S.textContent=Array.isArray(y.text)?y.text.join(" "):y.text,C.node.appendChild(S),""!==y.text&&(c.push(y.text),d.push(y))}}na.globals.gridWidth)){var s=this.offY+a.config.xaxis.axisTicks.offsetY;if(e=e+s+a.config.xaxis.axisTicks.height,"top"===a.config.xaxis.position&&(e=s-a.config.xaxis.axisTicks.height),a.config.xaxis.axisTicks.show){var r=new C(this.ctx).drawLine(t+a.config.xaxis.axisTicks.offsetX,s+a.config.xaxis.offsetY,n+a.config.xaxis.axisTicks.offsetX,e+a.config.xaxis.offsetY,a.config.xaxis.axisTicks.color);i.add(r),r.node.classList.add("apexcharts-xaxis-tick")}}}},{key:"getXAxisTicksPositions",value:function(){var t=this.w,e=[],i=this.xaxisLabels.length,a=t.globals.padHorizontal;if(t.globals.timescaleLabels.length>0)for(var n=0;n0){var c=n[n.length-1].getBBox(),d=n[0].getBBox();c.x<-20&&n[n.length-1].parentNode.removeChild(n[n.length-1]),d.x+d.width>t.globals.gridWidth&&!t.globals.isBarHorizontal&&n[0].parentNode.removeChild(n[0]);for(var h=0;h0&&(this.xaxisLabels=i.globals.timescaleLabels.slice())}return c(t,[{key:"drawGridArea",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,e=this.w,i=new C(this.ctx);null===t&&(t=i.group({class:"apexcharts-grid"}));var a=i.drawLine(e.globals.padHorizontal,1,e.globals.padHorizontal,e.globals.gridHeight,"transparent"),n=i.drawLine(e.globals.padHorizontal,e.globals.gridHeight,e.globals.gridWidth,e.globals.gridHeight,"transparent");return t.add(n),t.add(a),t}},{key:"drawGrid",value:function(){var t=null;return this.w.globals.axisCharts&&(t=this.renderGrid(),this.drawGridArea(t.el)),t}},{key:"createGridMask",value:function(){var t=this.w,e=t.globals,i=new C(this.ctx),a=Array.isArray(t.config.stroke.width)?0:t.config.stroke.width;if(Array.isArray(t.config.stroke.width)){var n=0;t.config.stroke.width.forEach((function(t){n=Math.max(n,t)})),a=n}e.dom.elGridRectMask=document.createElementNS(e.SVGNS,"clipPath"),e.dom.elGridRectMask.setAttribute("id","gridRectMask".concat(e.cuid)),e.dom.elGridRectMarkerMask=document.createElementNS(e.SVGNS,"clipPath"),e.dom.elGridRectMarkerMask.setAttribute("id","gridRectMarkerMask".concat(e.cuid)),e.dom.elForecastMask=document.createElementNS(e.SVGNS,"clipPath"),e.dom.elForecastMask.setAttribute("id","forecastMask".concat(e.cuid)),e.dom.elNonForecastMask=document.createElementNS(e.SVGNS,"clipPath"),e.dom.elNonForecastMask.setAttribute("id","nonForecastMask".concat(e.cuid));var s=t.config.chart.type,r=0,o=0;("bar"===s||"rangeBar"===s||"candlestick"===s||"boxPlot"===s||t.globals.comboBarCount>0)&&t.globals.isXNumeric&&!t.globals.isBarHorizontal&&(r=t.config.grid.padding.left,o=t.config.grid.padding.right,e.barPadForNumericAxis>r&&(r=e.barPadForNumericAxis,o=e.barPadForNumericAxis)),e.dom.elGridRect=i.drawRect(-a/2-r-2,-a/2,e.gridWidth+a+o+r+4,e.gridHeight+a,0,"#fff");var l=t.globals.markers.largestSize+1;e.dom.elGridRectMarker=i.drawRect(2*-l,2*-l,e.gridWidth+4*l,e.gridHeight+4*l,0,"#fff"),e.dom.elGridRectMask.appendChild(e.dom.elGridRect.node),e.dom.elGridRectMarkerMask.appendChild(e.dom.elGridRectMarker.node);var c=e.dom.baseEl.querySelector("defs");c.appendChild(e.dom.elGridRectMask),c.appendChild(e.dom.elForecastMask),c.appendChild(e.dom.elNonForecastMask),c.appendChild(e.dom.elGridRectMarkerMask)}},{key:"_drawGridLines",value:function(t){var e=t.i,i=t.x1,a=t.y1,n=t.x2,s=t.y2,r=t.xCount,o=t.parent,l=this.w;if(!(0===e&&l.globals.skipFirstTimelinelabel||e===r-1&&l.globals.skipLastTimelinelabel&&!l.config.xaxis.labels.formatter||"radar"===l.config.chart.type)){l.config.grid.xaxis.lines.show&&this._drawGridLine({i:e,x1:i,y1:a,x2:n,y2:s,xCount:r,parent:o});var c=0;if(l.globals.hasGroups&&"between"===l.config.xaxis.tickPlacement){var d=l.globals.groups;if(d){for(var h=0,u=0;h2));n++);return!t.globals.isBarHorizontal||this.isRangeBar?(i=this.xaxisLabels.length,this.isRangeBar&&(a=t.globals.labels.length,t.config.xaxis.tickAmount&&t.config.xaxis.labels.formatter&&(i=t.config.xaxis.tickAmount)),this._drawXYLines({xCount:i,tickAmount:a})):(i=a,a=t.globals.xTickAmount,this._drawInvertedXYLines({xCount:i,tickAmount:a})),this.drawGridBands(i,a),{el:this.elg,elGridBorders:this.elGridBorders,xAxisTickWidth:t.globals.gridWidth/i}}},{key:"drawGridBands",value:function(t,e){var i=this.w;if(void 0!==i.config.grid.row.colors&&i.config.grid.row.colors.length>0)for(var a=0,n=i.globals.gridHeight/e,s=i.globals.gridWidth,r=0,o=0;r=i.config.grid.row.colors.length&&(o=0),this._drawGridBandRect({c:o,x1:0,y1:a,x2:s,y2:n,type:"row"}),a+=i.globals.gridHeight/e;if(void 0!==i.config.grid.column.colors&&i.config.grid.column.colors.length>0)for(var l=i.globals.isBarHorizontal||"category"!==i.config.xaxis.type&&!i.config.xaxis.convertedCatToNumeric?t:t-1,c=i.globals.padHorizontal,d=i.globals.padHorizontal+i.globals.gridWidth/l,h=i.globals.gridHeight,u=0,p=0;u=i.config.grid.column.colors.length&&(p=0),this._drawGridBandRect({c:p,x1:c,y1:0,x2:d,y2:h,type:"column"}),c+=i.globals.gridWidth/l}}]),t}(),q=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"niceScale",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,n=arguments.length>4?arguments[4]:void 0,s=this.w,r=Math.abs(e-t);if("dataPoints"===(i=this._adjustTicksForSmallRange(i,a,r))&&(i=s.globals.dataPoints-1),t===Number.MIN_VALUE&&0===e||!b.isNumber(t)&&!b.isNumber(e)||t===Number.MIN_VALUE&&e===-Number.MAX_VALUE)return t=0,e=i,this.linearScale(t,e,i);t>e?(console.warn("axis.min cannot be greater than axis.max"),e=t+.1):t===e&&(t=0===t?0:t-.5,e=0===e?2:e+.5);var o=[];r<1&&n&&("candlestick"===s.config.chart.type||"candlestick"===s.config.series[a].type||"boxPlot"===s.config.chart.type||"boxPlot"===s.config.series[a].type||s.globals.isRangeData)&&(e*=1.01);var l=i+1;l<2?l=2:l>2&&(l-=2);var c=r/l,d=Math.floor(b.log10(c)),h=Math.pow(10,d),u=Math.round(c/h);u<1&&(u=1);var p=u*h,f=p*Math.floor(t/p),g=p*Math.ceil(e/p),v=f;if(n&&r>2){for(;o.push(v),!((v+=p)>g););return{result:o,niceMin:o[0],niceMax:o[o.length-1]}}var m=t;(o=[]).push(m);for(var x=Math.abs(e-t)/i,y=0;y<=i;y++)m+=x,o.push(m);return o[o.length-2]>=e&&o.pop(),{result:o,niceMin:o[0],niceMax:o[o.length-1]}}},{key:"linearScale",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,a=arguments.length>3?arguments[3]:void 0,n=Math.abs(e-t);"dataPoints"===(i=this._adjustTicksForSmallRange(i,a,n))&&(i=this.w.globals.dataPoints-1);var s=n/i;i===Number.MAX_VALUE&&(i=10,s=1);for(var r=[],o=t;i>=0;)r.push(o),o+=s,i-=1;return{result:r,niceMin:r[0],niceMax:r[r.length-1]}}},{key:"logarithmicScaleNice",value:function(t,e,i){e<=0&&(e=Math.max(t,i)),t<=0&&(t=Math.min(e,i));for(var a=[],n=Math.ceil(Math.log(e)/Math.log(i)+1),s=Math.floor(Math.log(t)/Math.log(i));s5)a.allSeriesCollapsed=!1,a.yAxisScale[t]=this.logarithmicScale(e,i,s.logBase),a.yAxisScale[t]=s.forceNiceScale?this.logarithmicScaleNice(e,i,s.logBase):this.logarithmicScale(e,i,s.logBase);else if(i!==-Number.MAX_VALUE&&b.isNumber(i))if(a.allSeriesCollapsed=!1,void 0===s.min&&void 0===s.max||s.forceNiceScale){var o=void 0===n.yaxis[t].max&&void 0===n.yaxis[t].min||n.yaxis[t].forceNiceScale;a.yAxisScale[t]=this.niceScale(e,i,s.tickAmount?s.tickAmount:r<5&&r>1?r+1:5,t,o)}else a.yAxisScale[t]=this.linearScale(e,i,s.tickAmount,t);else a.yAxisScale[t]=this.linearScale(0,5,5)}},{key:"setXScale",value:function(t,e){var i=this.w,a=i.globals,n=i.config.xaxis,s=Math.abs(e-t);return e!==-Number.MAX_VALUE&&b.isNumber(e)?a.xAxisScale=this.linearScale(t,e,n.tickAmount?n.tickAmount:s<5&&s>1?s+1:5,0):a.xAxisScale=this.linearScale(0,5,5),a.xAxisScale}},{key:"setMultipleYScales",value:function(){var t=this,e=this.w.globals,i=this.w.config,a=e.minYArr.concat([]),n=e.maxYArr.concat([]),s=[];i.yaxis.forEach((function(e,r){var o=r;i.series.forEach((function(t,i){t.name===e.seriesName&&(o=i,r!==i?s.push({index:i,similarIndex:r,alreadyExists:!0}):s.push({index:i}))}));var l=a[o],c=n[o];t.setYScaleForIndex(r,l,c)})),this.sameScaleInMultipleAxes(a,n,s)}},{key:"sameScaleInMultipleAxes",value:function(t,e,i){var a=this,n=this.w.config,s=this.w.globals,r=[];i.forEach((function(t){t.alreadyExists&&(void 0===r[t.index]&&(r[t.index]=[]),r[t.index].push(t.index),r[t.index].push(t.similarIndex))})),s.yAxisSameScaleIndices=r,r.forEach((function(t,e){r.forEach((function(i,a){var n,s;e!==a&&(n=t,s=i,n.filter((function(t){return-1!==s.indexOf(t)}))).length>0&&(r[e]=r[e].concat(r[a]))}))}));var o=r.map((function(t){return t.filter((function(e,i){return t.indexOf(e)===i}))})).map((function(t){return t.sort()}));r=r.filter((function(t){return!!t}));var l=o.slice(),c=l.map((function(t){return JSON.stringify(t)}));l=l.filter((function(t,e){return c.indexOf(JSON.stringify(t))===e}));var d=[],h=[];t.forEach((function(t,i){l.forEach((function(a,n){a.indexOf(i)>-1&&(void 0===d[n]&&(d[n]=[],h[n]=[]),d[n].push({key:i,value:t}),h[n].push({key:i,value:e[i]}))}))}));var u=Array.apply(null,Array(l.length)).map(Number.prototype.valueOf,Number.MIN_VALUE),p=Array.apply(null,Array(l.length)).map(Number.prototype.valueOf,-Number.MAX_VALUE);d.forEach((function(t,e){t.forEach((function(t,i){u[e]=Math.min(t.value,u[e])}))})),h.forEach((function(t,e){t.forEach((function(t,i){p[e]=Math.max(t.value,p[e])}))})),t.forEach((function(t,e){h.forEach((function(t,i){var r=u[i],o=p[i];n.chart.stacked&&(o=0,t.forEach((function(t,e){t.value!==-Number.MAX_VALUE&&(o+=t.value),r!==Number.MIN_VALUE&&(r+=d[i][e].value)}))),t.forEach((function(i,l){t[l].key===e&&(void 0!==n.yaxis[e].min&&(r="function"==typeof n.yaxis[e].min?n.yaxis[e].min(s.minY):n.yaxis[e].min),void 0!==n.yaxis[e].max&&(o="function"==typeof n.yaxis[e].max?n.yaxis[e].max(s.maxY):n.yaxis[e].max),a.setYScaleForIndex(e,r,o))}))}))}))}},{key:"autoScaleY",value:function(t,e,i){t||(t=this);var a=t.w;if(a.globals.isMultipleYAxis||a.globals.collapsedSeries.length)return console.warn("autoScaleYaxis is not supported in a multi-yaxis chart."),e;var n=a.globals.seriesX[0],s=a.config.chart.stacked;return e.forEach((function(t,r){for(var o=0,l=0;l=i.xaxis.min){o=l;break}var c,d,h=a.globals.minYArr[r],u=a.globals.maxYArr[r],p=a.globals.stackedSeriesTotals;a.globals.series.forEach((function(r,l){var f=r[o];s?(f=p[o],c=d=f,p.forEach((function(t,e){n[e]<=i.xaxis.max&&n[e]>=i.xaxis.min&&(t>d&&null!==t&&(d=t),r[e]=i.xaxis.min){var s=t,r=t;a.globals.series.forEach((function(i,a){null!==t&&(s=Math.min(i[e],s),r=Math.max(i[e],r))})),r>d&&null!==r&&(d=r),sh&&(c=h),e.length>1?(e[l].min=void 0===t.min?c:t.min,e[l].max=void 0===t.max?d:t.max):(e[0].min=void 0===t.min?c:t.min,e[0].max=void 0===t.max?d:t.max)}))})),e}}]),t}(),Z=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.scales=new q(e)}return c(t,[{key:"init",value:function(){this.setYRange(),this.setXRange(),this.setZRange()}},{key:"getMinYMaxY",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.MAX_VALUE,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:-Number.MAX_VALUE,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,n=this.w.config,s=this.w.globals,r=-Number.MAX_VALUE,o=Number.MIN_VALUE;null===a&&(a=t+1);var l=s.series,c=l,d=l;"candlestick"===n.chart.type?(c=s.seriesCandleL,d=s.seriesCandleH):"boxPlot"===n.chart.type?(c=s.seriesCandleO,d=s.seriesCandleC):s.isRangeData&&(c=s.seriesRangeStart,d=s.seriesRangeEnd);for(var h=t;hc[h][u]&&c[h][u]<0&&(o=c[h][u])):s.hasNullValues=!0}}return"rangeBar"===n.chart.type&&s.seriesRangeStart.length&&s.isBarHorizontal&&(o=e),"bar"===n.chart.type&&(o<0&&r<0&&(r=0),o===Number.MIN_VALUE&&(o=0)),{minY:o,maxY:r,lowestY:e,highestY:i}}},{key:"setYRange",value:function(){var t=this.w.globals,e=this.w.config;t.maxY=-Number.MAX_VALUE,t.minY=Number.MIN_VALUE;var i=Number.MAX_VALUE;if(t.isMultipleYAxis)for(var a=0;a=0&&i<=10||void 0!==e.yaxis[0].min||void 0!==e.yaxis[0].max)&&(r=0),t.minY=i-5*r/100,i>0&&t.minY<0&&(t.minY=0),t.maxY=t.maxY+5*r/100}return e.yaxis.forEach((function(e,i){void 0!==e.max&&("number"==typeof e.max?t.maxYArr[i]=e.max:"function"==typeof e.max&&(t.maxYArr[i]=e.max(t.isMultipleYAxis?t.maxYArr[i]:t.maxY)),t.maxY=t.maxYArr[i]),void 0!==e.min&&("number"==typeof e.min?t.minYArr[i]=e.min:"function"==typeof e.min&&(t.minYArr[i]=e.min(t.isMultipleYAxis?t.minYArr[i]===Number.MIN_VALUE?0:t.minYArr[i]:t.minY)),t.minY=t.minYArr[i])})),t.isBarHorizontal&&["min","max"].forEach((function(i){void 0!==e.xaxis[i]&&"number"==typeof e.xaxis[i]&&("min"===i?t.minY=e.xaxis[i]:t.maxY=e.xaxis[i])})),t.isMultipleYAxis?(this.scales.setMultipleYScales(),t.minY=i,t.yAxisScale.forEach((function(e,i){t.minYArr[i]=e.niceMin,t.maxYArr[i]=e.niceMax}))):(this.scales.setYScaleForIndex(0,t.minY,t.maxY),t.minY=t.yAxisScale[0].niceMin,t.maxY=t.yAxisScale[0].niceMax,t.minYArr[0]=t.yAxisScale[0].niceMin,t.maxYArr[0]=t.yAxisScale[0].niceMax),{minY:t.minY,maxY:t.maxY,minYArr:t.minYArr,maxYArr:t.maxYArr,yAxisScale:t.yAxisScale}}},{key:"setXRange",value:function(){var t=this.w.globals,e=this.w.config,i="numeric"===e.xaxis.type||"datetime"===e.xaxis.type||"category"===e.xaxis.type&&!t.noLabelsProvided||t.noLabelsProvided||t.isXNumeric;if(t.isXNumeric&&function(){for(var e=0;et.dataPoints&&0!==t.dataPoints&&(a=t.dataPoints-1)):"dataPoints"===e.xaxis.tickAmount?(t.series.length>1&&(a=t.series[t.maxValsInArrayIndex].length-1),t.isXNumeric&&(a=t.maxX-t.minX-1)):a=e.xaxis.tickAmount,t.xTickAmount=a,void 0!==e.xaxis.max&&"number"==typeof e.xaxis.max&&(t.maxX=e.xaxis.max),void 0!==e.xaxis.min&&"number"==typeof e.xaxis.min&&(t.minX=e.xaxis.min),void 0!==e.xaxis.range&&(t.minX=t.maxX-e.xaxis.range),t.minX!==Number.MAX_VALUE&&t.maxX!==-Number.MAX_VALUE)if(e.xaxis.convertedCatToNumeric&&!t.dataFormatXNumeric){for(var n=[],s=t.minX-1;s0&&(t.xAxisScale=this.scales.linearScale(1,t.labels.length,a-1),t.seriesX=t.labels.slice());i&&(t.labels=t.xAxisScale.result.slice())}return t.isBarHorizontal&&t.labels.length&&(t.xTickAmount=t.labels.length),this._handleSingleDataPoint(),this._getMinXDiff(),{minX:t.minX,maxX:t.maxX}}},{key:"setZRange",value:function(){var t=this.w.globals;if(t.isDataXYZ)for(var e=0;e0){var n=e-a[i-1];n>0&&(t.minXDiff=Math.min(n,t.minXDiff))}})),1!==t.dataPoints&&t.minXDiff!==Number.MAX_VALUE||(t.minXDiff=.5)}))}},{key:"_setStackedMinMax",value:function(){var t=this.w.globals,e=[],i=[];if(t.series.length)for(var a=0;a0?n=n+parseFloat(t.series[r][a])+1e-4:s+=parseFloat(t.series[r][a])),r===t.series.length-1&&(e.push(n),i.push(s));for(var o=0;o=0;m--)v(m);if(void 0!==i.config.yaxis[t].title.text){var x=a.group({class:"apexcharts-yaxis-title"}),b=0;i.config.yaxis[t].opposite&&(b=i.globals.translateYAxisX[t]);var y=a.drawText({x:b,y:i.globals.gridHeight/2+i.globals.translateY+i.config.yaxis[t].title.offsetY,text:i.config.yaxis[t].title.text,textAnchor:"end",foreColor:i.config.yaxis[t].title.style.color,fontSize:i.config.yaxis[t].title.style.fontSize,fontWeight:i.config.yaxis[t].title.style.fontWeight,fontFamily:i.config.yaxis[t].title.style.fontFamily,cssClass:"apexcharts-yaxis-title-text "+i.config.yaxis[t].title.style.cssClass});x.add(y),l.add(x)}var w=i.config.yaxis[t].axisBorder,S=31+w.offsetX;if(i.config.yaxis[t].opposite&&(S=-31-w.offsetX),w.show){var k=a.drawLine(S,i.globals.translateY+w.offsetY-2,S,i.globals.gridHeight+i.globals.translateY+w.offsetY+2,w.color,0,w.width);l.add(k)}return i.config.yaxis[t].axisTicks.show&&this.axesUtils.drawYAxisTicks(S,d,w,i.config.yaxis[t].axisTicks,t,h,l),l}},{key:"drawYaxisInversed",value:function(t){var e=this.w,i=new C(this.ctx),a=i.group({class:"apexcharts-xaxis apexcharts-yaxis-inversed"}),n=i.group({class:"apexcharts-xaxis-texts-g",transform:"translate(".concat(e.globals.translateXAxisX,", ").concat(e.globals.translateXAxisY,")")});a.add(n);var s=e.globals.yAxisScale[t].result.length-1,r=e.globals.gridWidth/s+.1,o=r+e.config.xaxis.labels.offsetX,l=e.globals.xLabelFormatter,c=e.globals.yAxisScale[t].result.slice(),d=e.globals.timescaleLabels;d.length>0&&(this.xaxisLabels=d.slice(),s=(c=d.slice()).length),c=this.axesUtils.checkForReversedLabels(t,c);var h=d.length;if(e.config.xaxis.labels.show)for(var u=h?0:s;h?u=0;h?u++:u--){var p=c[u];p=l(p,u,e);var f=e.globals.gridWidth+e.globals.padHorizontal-(o-r+e.config.xaxis.labels.offsetX);if(d.length){var g=this.axesUtils.getLabel(c,d,f,u,this.drawnLabels,this.xaxisFontSize);f=g.x,p=g.text,this.drawnLabels.push(g.text),0===u&&e.globals.skipFirstTimelinelabel&&(p=""),u===c.length-1&&e.globals.skipLastTimelinelabel&&(p="")}var v=i.drawText({x:f,y:this.xAxisoffX+e.config.xaxis.labels.offsetY+30-("top"===e.config.xaxis.position?e.globals.xAxisHeight+e.config.xaxis.axisTicks.height-2:0),text:p,textAnchor:"middle",foreColor:Array.isArray(this.xaxisForeColors)?this.xaxisForeColors[t]:this.xaxisForeColors,fontSize:this.xaxisFontSize,fontFamily:this.xaxisFontFamily,fontWeight:e.config.xaxis.labels.style.fontWeight,isPlainText:!1,cssClass:"apexcharts-xaxis-label "+e.config.xaxis.labels.style.cssClass});n.add(v),v.tspan(p);var m=document.createElementNS(e.globals.SVGNS,"title");m.textContent=p,v.node.appendChild(m),o+=r}return this.inversedYAxisTitleText(a),this.inversedYAxisBorder(a),a}},{key:"inversedYAxisBorder",value:function(t){var e=this.w,i=new C(this.ctx),a=e.config.xaxis.axisBorder;if(a.show){var n=0;"bar"===e.config.chart.type&&e.globals.isXNumeric&&(n-=15);var s=i.drawLine(e.globals.padHorizontal+n+a.offsetX,this.xAxisoffX,e.globals.gridWidth,this.xAxisoffX,a.color,0,a.height);this.elgrid&&this.elgrid.elGridBorders?this.elgrid.elGridBorders.add(s):t.add(s)}}},{key:"inversedYAxisTitleText",value:function(t){var e=this.w,i=new C(this.ctx);if(void 0!==e.config.xaxis.title.text){var a=i.group({class:"apexcharts-xaxis-title apexcharts-yaxis-title-inversed"}),n=i.drawText({x:e.globals.gridWidth/2+e.config.xaxis.title.offsetX,y:this.xAxisoffX+parseFloat(this.xaxisFontSize)+parseFloat(e.config.xaxis.title.style.fontSize)+e.config.xaxis.title.offsetY+20,text:e.config.xaxis.title.text,textAnchor:"middle",fontSize:e.config.xaxis.title.style.fontSize,fontFamily:e.config.xaxis.title.style.fontFamily,fontWeight:e.config.xaxis.title.style.fontWeight,foreColor:e.config.xaxis.title.style.color,cssClass:"apexcharts-xaxis-title-text "+e.config.xaxis.title.style.cssClass});a.add(n),t.add(a)}}},{key:"yAxisTitleRotate",value:function(t,e){var i=this.w,a=new C(this.ctx),n={width:0,height:0},s={width:0,height:0},r=i.globals.dom.baseEl.querySelector(" .apexcharts-yaxis[rel='".concat(t,"'] .apexcharts-yaxis-texts-g"));null!==r&&(n=r.getBoundingClientRect());var o=i.globals.dom.baseEl.querySelector(".apexcharts-yaxis[rel='".concat(t,"'] .apexcharts-yaxis-title text"));if(null!==o&&(s=o.getBoundingClientRect()),null!==o){var l=this.xPaddingForYAxisTitle(t,n,s,e);o.setAttribute("x",l.xPos-(e?10:0))}if(null!==o){var c=a.rotateAroundCenter(o);o.setAttribute("transform","rotate(".concat(e?-1*i.config.yaxis[t].title.rotate:i.config.yaxis[t].title.rotate," ").concat(c.x," ").concat(c.y,")"))}}},{key:"xPaddingForYAxisTitle",value:function(t,e,i,a){var n=this.w,s=0,r=0,o=10;return void 0===n.config.yaxis[t].title.text||t<0?{xPos:r,padd:0}:(a?(r=e.width+n.config.yaxis[t].title.offsetX+i.width/2+o/2,0===(s+=1)&&(r-=o/2)):(r=-1*e.width+n.config.yaxis[t].title.offsetX+o/2+i.width/2,n.globals.isBarHorizontal&&(o=25,r=-1*e.width-n.config.yaxis[t].title.offsetX-o)),{xPos:r,padd:o})}},{key:"setYAxisXPosition",value:function(t,e){var i=this.w,a=0,n=0,s=18,r=1;i.config.yaxis.length>1&&(this.multipleYs=!0),i.config.yaxis.map((function(o,l){var c=i.globals.ignoreYAxisIndexes.indexOf(l)>-1||!o.show||o.floating||0===t[l].width,d=t[l].width+e[l].width;o.opposite?i.globals.isBarHorizontal?(n=i.globals.gridWidth+i.globals.translateX-1,i.globals.translateYAxisX[l]=n-o.labels.offsetX):(n=i.globals.gridWidth+i.globals.translateX+r,c||(r=r+d+20),i.globals.translateYAxisX[l]=n-o.labels.offsetX+20):(a=i.globals.translateX-s,c||(s=s+d+20),i.globals.translateYAxisX[l]=a+o.labels.offsetX)}))}},{key:"setYAxisTextAlignments",value:function(){var t=this.w,e=t.globals.dom.baseEl.getElementsByClassName("apexcharts-yaxis");(e=b.listToArray(e)).forEach((function(e,i){var a=t.config.yaxis[i];if(a&&void 0!==a.labels.align){var n=t.globals.dom.baseEl.querySelector(".apexcharts-yaxis[rel='".concat(i,"'] .apexcharts-yaxis-texts-g")),s=t.globals.dom.baseEl.querySelectorAll(".apexcharts-yaxis[rel='".concat(i,"'] .apexcharts-yaxis-label"));s=b.listToArray(s);var r=n.getBoundingClientRect();"left"===a.labels.align?(s.forEach((function(t,e){t.setAttribute("text-anchor","start")})),a.opposite||n.setAttribute("transform","translate(-".concat(r.width,", 0)"))):"center"===a.labels.align?(s.forEach((function(t,e){t.setAttribute("text-anchor","middle")})),n.setAttribute("transform","translate(".concat(r.width/2*(a.opposite?1:-1),", 0)"))):"right"===a.labels.align&&(s.forEach((function(t,e){t.setAttribute("text-anchor","end")})),a.opposite&&n.setAttribute("transform","translate(".concat(r.width,", 0)")))}}))}}]),t}(),K=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.documentEvent=b.bind(this.documentEvent,this)}return c(t,[{key:"addEventListener",value:function(t,e){var i=this.w;i.globals.events.hasOwnProperty(t)?i.globals.events[t].push(e):i.globals.events[t]=[e]}},{key:"removeEventListener",value:function(t,e){var i=this.w;if(i.globals.events.hasOwnProperty(t)){var a=i.globals.events[t].indexOf(e);-1!==a&&i.globals.events[t].splice(a,1)}}},{key:"fireEvent",value:function(t,e){var i=this.w;if(i.globals.events.hasOwnProperty(t)){e&&e.length||(e=[]);for(var a=i.globals.events[t],n=a.length,s=0;s0&&(e=this.w.config.chart.locales.concat(window.Apex.chart.locales));var i=e.filter((function(e){return e.name===t}))[0];if(!i)throw new Error("Wrong locale name provided. Please make sure you set the correct locale name in options");var a=b.extend(E,i);this.w.globals.locale=a.options}}]),t}(),tt=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"drawAxis",value:function(t,e){var i,a,n=this.w.globals,s=this.w.config,r=new G(this.ctx,e),o=new Q(this.ctx,e);n.axisCharts&&"radar"!==t&&(n.isBarHorizontal?(a=o.drawYaxisInversed(0),i=r.drawXaxisInversed(0),n.dom.elGraphical.add(i),n.dom.elGraphical.add(a)):(i=r.drawXaxis(),n.dom.elGraphical.add(i),s.yaxis.map((function(t,e){-1===n.ignoreYAxisIndexes.indexOf(e)&&(a=o.drawYaxis(e),n.dom.Paper.add(a))}))))}}]),t}(),et=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"drawXCrosshairs",value:function(){var t=this.w,e=new C(this.ctx),i=new w(this.ctx),a=t.config.xaxis.crosshairs.fill.gradient,n=t.config.xaxis.crosshairs.dropShadow,s=t.config.xaxis.crosshairs.fill.type,r=a.colorFrom,o=a.colorTo,l=a.opacityFrom,c=a.opacityTo,d=a.stops,h=n.enabled,u=n.left,p=n.top,f=n.blur,g=n.color,v=n.opacity,m=t.config.xaxis.crosshairs.fill.color;if(t.config.xaxis.crosshairs.show){"gradient"===s&&(m=e.drawGradient("vertical",r,o,l,c,null,d,null));var x=e.drawRect();1===t.config.xaxis.crosshairs.width&&(x=e.drawLine());var y=t.globals.gridHeight;(!b.isNumber(y)||y<0)&&(y=0);var S=t.config.xaxis.crosshairs.width;(!b.isNumber(S)||S<0)&&(S=0),x.attr({class:"apexcharts-xcrosshairs",x:0,y:0,y2:y,width:S,height:y,fill:m,filter:"none","fill-opacity":t.config.xaxis.crosshairs.opacity,stroke:t.config.xaxis.crosshairs.stroke.color,"stroke-width":t.config.xaxis.crosshairs.stroke.width,"stroke-dasharray":t.config.xaxis.crosshairs.stroke.dashArray}),h&&(x=i.dropShadow(x,{left:u,top:p,blur:f,color:g,opacity:v})),t.globals.dom.elGraphical.add(x)}}},{key:"drawYCrosshairs",value:function(){var t=this.w,e=new C(this.ctx),i=t.config.yaxis[0].crosshairs,a=t.globals.barPadForNumericAxis;if(t.config.yaxis[0].crosshairs.show){var n=e.drawLine(-a,0,t.globals.gridWidth+a,0,i.stroke.color,i.stroke.dashArray,i.stroke.width);n.attr({class:"apexcharts-ycrosshairs"}),t.globals.dom.elGraphical.add(n)}var s=e.drawLine(-a,0,t.globals.gridWidth+a,0,i.stroke.color,0,0);s.attr({class:"apexcharts-ycrosshairs-hidden"}),t.globals.dom.elGraphical.add(s)}}]),t}(),it=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"checkResponsiveConfig",value:function(t){var e=this,i=this.w,a=i.config;if(0!==a.responsive.length){var n=a.responsive.slice();n.sort((function(t,e){return t.breakpoint>e.breakpoint?1:e.breakpoint>t.breakpoint?-1:0})).reverse();var s=new z({}),r=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},a=n[0].breakpoint,r=window.innerWidth>0?window.innerWidth:screen.width;if(r>a){var o=S.extendArrayProps(s,i.globals.initialConfig,i);t=b.extend(o,t),t=b.extend(i.config,t),e.overrideResponsiveOptions(t)}else for(var l=0;l0&&"function"==typeof e.config.colors[0]&&(e.globals.colors=e.config.series.map((function(i,a){var n=e.config.colors[a];return n||(n=e.config.colors[0]),"function"==typeof n?(t.isColorFn=!0,n({value:e.globals.axisCharts?e.globals.series[a][0]?e.globals.series[a][0]:0:e.globals.series[a],seriesIndex:a,dataPointIndex:a,w:e})):n})))),e.globals.seriesColors.map((function(t,i){t&&(e.globals.colors[i]=t)})),e.config.theme.monochrome.enabled){var a=[],n=e.globals.series.length;(this.isBarDistributed||this.isHeatmapDistributed)&&(n=e.globals.series[0].length*e.globals.series.length);for(var s=e.config.theme.monochrome.color,r=1/(n/e.config.theme.monochrome.shadeIntensity),o=e.config.theme.monochrome.shadeTo,l=0,c=0;c2&&void 0!==arguments[2]?arguments[2]:null,a=this.w,n=e||a.globals.series.length;if(null===i&&(i=this.isBarDistributed||this.isHeatmapDistributed||"heatmap"===a.config.chart.type&&a.config.plotOptions.heatmap.colorScale.inverse),i&&a.globals.series.length&&(n=a.globals.series[a.globals.maxValsInArrayIndex].length*a.globals.series.length),t.lengtht.globals.svgWidth&&(this.dCtx.lgRect.width=t.globals.svgWidth/1.5),this.dCtx.lgRect}},{key:"getLargestStringFromMultiArr",value:function(t,e){var i=t;if(this.w.globals.isMultiLineX){var a=e.map((function(t,e){return Array.isArray(t)?t.length:1})),n=Math.max.apply(Math,v(a));i=e[a.indexOf(n)]}return i}}]),t}(),rt=function(){function t(e){o(this,t),this.w=e.w,this.dCtx=e}return c(t,[{key:"getxAxisLabelsCoords",value:function(){var t,e=this.w,i=e.globals.labels.slice();if(e.config.xaxis.convertedCatToNumeric&&0===i.length&&(i=e.globals.categoryLabels),e.globals.timescaleLabels.length>0){var a=this.getxAxisTimeScaleLabelsCoords();t={width:a.width,height:a.height},e.globals.rotateXLabels=!1}else{this.dCtx.lgWidthForSideLegends="left"!==e.config.legend.position&&"right"!==e.config.legend.position||e.config.legend.floating?0:this.dCtx.lgRect.width;var n=e.globals.xLabelFormatter,s=b.getLargestStringFromArr(i),r=this.dCtx.dimHelpers.getLargestStringFromMultiArr(s,i);e.globals.isBarHorizontal&&(r=s=e.globals.yAxisScale[0].result.reduce((function(t,e){return t.length>e.length?t:e}),0));var o=new B(this.dCtx.ctx),l=s;s=o.xLabelFormat(n,s,l,{i:void 0,dateFormatter:new L(this.dCtx.ctx).formatDate,w:e}),r=o.xLabelFormat(n,r,l,{i:void 0,dateFormatter:new L(this.dCtx.ctx).formatDate,w:e}),(e.config.xaxis.convertedCatToNumeric&&void 0===s||""===String(s).trim())&&(r=s="1");var c=new C(this.dCtx.ctx),d=c.getTextRects(s,e.config.xaxis.labels.style.fontSize),h=d;if(s!==r&&(h=c.getTextRects(r,e.config.xaxis.labels.style.fontSize)),(t={width:d.width>=h.width?d.width:h.width,height:d.height>=h.height?d.height:h.height}).width*i.length>e.globals.svgWidth-this.dCtx.lgWidthForSideLegends-this.dCtx.yAxisWidth-this.dCtx.gridPad.left-this.dCtx.gridPad.right&&0!==e.config.xaxis.labels.rotate||e.config.xaxis.labels.rotateAlways){if(!e.globals.isBarHorizontal){e.globals.rotateXLabels=!0;var u=function(t){return c.getTextRects(t,e.config.xaxis.labels.style.fontSize,e.config.xaxis.labels.style.fontFamily,"rotate(".concat(e.config.xaxis.labels.rotate," 0 0)"),!1)};d=u(s),s!==r&&(h=u(r)),t.height=(d.height>h.height?d.height:h.height)/1.5,t.width=d.width>h.width?d.width:h.width}}else e.globals.rotateXLabels=!1}return e.config.xaxis.labels.show||(t={width:0,height:0}),{width:t.width,height:t.height}}},{key:"getxAxisGroupLabelsCoords",value:function(){var t,e=this.w;if(!e.globals.hasGroups)return{width:0,height:0};var i,a=(null===(t=e.config.xaxis.group.style)||void 0===t?void 0:t.fontSize)||e.config.xaxis.labels.style.fontSize,n=e.globals.groups.map((function(t){return t.title})),s=b.getLargestStringFromArr(n),r=this.dCtx.dimHelpers.getLargestStringFromMultiArr(s,n),o=new C(this.dCtx.ctx),l=o.getTextRects(s,a),c=l;return s!==r&&(c=o.getTextRects(r,a)),i={width:l.width>=c.width?l.width:c.width,height:l.height>=c.height?l.height:c.height},e.config.xaxis.labels.show||(i={width:0,height:0}),{width:i.width,height:i.height}}},{key:"getxAxisTitleCoords",value:function(){var t=this.w,e=0,i=0;if(void 0!==t.config.xaxis.title.text){var a=new C(this.dCtx.ctx).getTextRects(t.config.xaxis.title.text,t.config.xaxis.title.style.fontSize);e=a.width,i=a.height}return{width:e,height:i}}},{key:"getxAxisTimeScaleLabelsCoords",value:function(){var t,e=this.w;this.dCtx.timescaleLabels=e.globals.timescaleLabels.slice();var i=this.dCtx.timescaleLabels.map((function(t){return t.value})),a=i.reduce((function(t,e){return void 0===t?(console.error("You have possibly supplied invalid Date format. Please supply a valid JavaScript Date"),0):t.length>e.length?t:e}),0);return 1.05*(t=new C(this.dCtx.ctx).getTextRects(a,e.config.xaxis.labels.style.fontSize)).width*i.length>e.globals.gridWidth&&0!==e.config.xaxis.labels.rotate&&(e.globals.overlappingXLabels=!0),t}},{key:"additionalPaddingXLabels",value:function(t){var e=this,i=this.w,a=i.globals,n=i.config,s=n.xaxis.type,r=t.width;a.skipLastTimelinelabel=!1,a.skipFirstTimelinelabel=!1;var o=i.config.yaxis[0].opposite&&i.globals.isBarHorizontal,l=function(t,o){(function(t){return-1!==a.collapsedSeriesIndices.indexOf(t)})(o)||function(t){if(e.dCtx.timescaleLabels&&e.dCtx.timescaleLabels.length){var o=e.dCtx.timescaleLabels[0],l=e.dCtx.timescaleLabels[e.dCtx.timescaleLabels.length-1].position+r/1.75-e.dCtx.yAxisWidthRight,c=o.position-r/1.75+e.dCtx.yAxisWidthLeft,d="right"===i.config.legend.position&&e.dCtx.lgRect.width>0?e.dCtx.lgRect.width:0;l>a.svgWidth-a.translateX-d&&(a.skipLastTimelinelabel=!0),c<-(t.show&&!t.floating||"bar"!==n.chart.type&&"candlestick"!==n.chart.type&&"rangeBar"!==n.chart.type&&"boxPlot"!==n.chart.type?10:r/1.75)&&(a.skipFirstTimelinelabel=!0)}else"datetime"===s?e.dCtx.gridPad.rightString(o.niceMax).length?d:o.niceMax,u=c(h,{seriesIndex:r,dataPointIndex:-1,w:e}),p=u;if(void 0!==u&&0!==u.length||(u=h),e.globals.isBarHorizontal){a=0;var f=e.globals.labels.slice();u=c(u=b.getLargestStringFromArr(f),{seriesIndex:r,dataPointIndex:-1,w:e}),p=t.dCtx.dimHelpers.getLargestStringFromMultiArr(u,f)}var g=new C(t.dCtx.ctx),v="rotate(".concat(s.labels.rotate," 0 0)"),m=g.getTextRects(u,s.labels.style.fontSize,s.labels.style.fontFamily,v,!1),x=m;u!==p&&(x=g.getTextRects(p,s.labels.style.fontSize,s.labels.style.fontFamily,v,!1)),i.push({width:(l>x.width||l>m.width?l:x.width>m.width?x.width:m.width)+a,height:x.height>m.height?x.height:m.height})}else i.push({width:0,height:0})})),i}},{key:"getyAxisTitleCoords",value:function(){var t=this,e=this.w,i=[];return e.config.yaxis.map((function(e,a){if(e.show&&void 0!==e.title.text){var n=new C(t.dCtx.ctx),s="rotate(".concat(e.title.rotate," 0 0)"),r=n.getTextRects(e.title.text,e.title.style.fontSize,e.title.style.fontFamily,s,!1);i.push({width:r.width,height:r.height})}else i.push({width:0,height:0})})),i}},{key:"getTotalYAxisWidth",value:function(){var t=this.w,e=0,i=0,a=0,n=t.globals.yAxisScale.length>1?10:0,s=new W(this.dCtx.ctx),r=function(r,o){var l=t.config.yaxis[o].floating,c=0;r.width>0&&!l?(c=r.width+n,function(e){return t.globals.ignoreYAxisIndexes.indexOf(e)>-1}(o)&&(c=c-r.width-n)):c=l||s.isYAxisHidden(o)?0:5,t.config.yaxis[o].opposite?a+=c:i+=c,e+=c};return t.globals.yLabelsCoords.map((function(t,e){r(t,e)})),t.globals.yTitleCoords.map((function(t,e){r(t,e)})),t.globals.isBarHorizontal&&!t.config.yaxis[0].floating&&(e=t.globals.yLabelsCoords[0].width+t.globals.yTitleCoords[0].width+15),this.dCtx.yAxisWidthLeft=i,this.dCtx.yAxisWidthRight=a,e}}]),t}(),lt=function(){function t(e){o(this,t),this.w=e.w,this.dCtx=e}return c(t,[{key:"gridPadForColumnsInNumericAxis",value:function(t){var e=this.w;if(e.globals.noData||e.globals.allSeriesCollapsed)return 0;var i=function(t){return"bar"===t||"rangeBar"===t||"candlestick"===t||"boxPlot"===t},a=e.config.chart.type,n=0,s=i(a)?e.config.series.length:1;if(e.globals.comboBarCount>0&&(s=e.globals.comboBarCount),e.globals.collapsedSeries.forEach((function(t){i(t.type)&&(s-=1)})),e.config.chart.stacked&&(s=1),(i(a)||e.globals.comboBarCount>0)&&e.globals.isXNumeric&&!e.globals.isBarHorizontal&&s>0){var r,o,l=Math.abs(e.globals.initialMaxX-e.globals.initialMinX);l<=3&&(l=e.globals.dataPoints),r=l/t,e.globals.minXDiff&&e.globals.minXDiff/r>0&&(o=e.globals.minXDiff/r),o>t/2&&(o/=2),(n=o/s*parseInt(e.config.plotOptions.bar.columnWidth,10)/100)<1&&(n=1),n=n/(s>1?1:1.5)+5,e.globals.barPadForNumericAxis=n}return n}},{key:"gridPadFortitleSubtitle",value:function(){var t=this,e=this.w,i=e.globals,a=this.dCtx.isSparkline||!e.globals.axisCharts?0:10;["title","subtitle"].forEach((function(i){void 0!==e.config[i].text?a+=e.config[i].margin:a+=t.dCtx.isSparkline||!e.globals.axisCharts?0:5})),!e.config.legend.show||"bottom"!==e.config.legend.position||e.config.legend.floating||e.globals.axisCharts||(a+=10);var n=this.dCtx.dimHelpers.getTitleSubtitleCoords("title"),s=this.dCtx.dimHelpers.getTitleSubtitleCoords("subtitle");i.gridHeight=i.gridHeight-n.height-s.height-a,i.translateY=i.translateY+n.height+s.height+a}},{key:"setGridXPosForDualYAxis",value:function(t,e){var i=this.w,a=new W(this.dCtx.ctx);i.config.yaxis.map((function(n,s){-1!==i.globals.ignoreYAxisIndexes.indexOf(s)||n.floating||a.isYAxisHidden(s)||(n.opposite&&(i.globals.translateX=i.globals.translateX-(e[s].width+t[s].width)-parseInt(i.config.yaxis[s].labels.style.fontSize,10)/1.2-12),i.globals.translateX<2&&(i.globals.translateX=2))}))}}]),t}(),ct=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.lgRect={},this.yAxisWidth=0,this.yAxisWidthLeft=0,this.yAxisWidthRight=0,this.xAxisHeight=0,this.isSparkline=this.w.config.chart.sparkline.enabled,this.dimHelpers=new st(this),this.dimYAxis=new ot(this),this.dimXAxis=new rt(this),this.dimGrid=new lt(this),this.lgWidthForSideLegends=0,this.gridPad=this.w.config.grid.padding,this.xPadRight=0,this.xPadLeft=0}return c(t,[{key:"plotCoords",value:function(){var t=this,e=this.w,i=e.globals;this.lgRect=this.dimHelpers.getLegendsRect(),this.isSparkline&&(e.config.markers.discrete.length>0||e.config.markers.size>0)&&Object.entries(this.gridPad).forEach((function(e){var i=function(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var i=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=i){var a,n,s=[],r=!0,o=!1;try{for(i=i.call(t);!(r=(a=i.next()).done)&&(s.push(a.value),!e||s.length!==e);r=!0);}catch(t){o=!0,n=t}finally{try{r||null==i.return||i.return()}finally{if(o)throw n}}return s}}(t,e)||m(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(e,2),a=i[0],n=i[1];t.gridPad[a]=Math.max(n,t.w.globals.markers.largestSize/1.5)})),i.axisCharts?this.setDimensionsForAxisCharts():this.setDimensionsForNonAxisCharts(),this.dimGrid.gridPadFortitleSubtitle(),i.gridHeight=i.gridHeight-this.gridPad.top-this.gridPad.bottom,i.gridWidth=i.gridWidth-this.gridPad.left-this.gridPad.right-this.xPadRight-this.xPadLeft;var a=this.dimGrid.gridPadForColumnsInNumericAxis(i.gridWidth);i.gridWidth=i.gridWidth-2*a,i.translateX=i.translateX+this.gridPad.left+this.xPadLeft+(a>0?a+4:0),i.translateY=i.translateY+this.gridPad.top}},{key:"setDimensionsForAxisCharts",value:function(){var t=this,e=this.w,i=e.globals,a=this.dimYAxis.getyAxisLabelsCoords(),n=this.dimYAxis.getyAxisTitleCoords();e.globals.yLabelsCoords=[],e.globals.yTitleCoords=[],e.config.yaxis.map((function(t,i){e.globals.yLabelsCoords.push({width:a[i].width,index:i}),e.globals.yTitleCoords.push({width:n[i].width,index:i})})),this.yAxisWidth=this.dimYAxis.getTotalYAxisWidth();var s=this.dimXAxis.getxAxisLabelsCoords(),r=this.dimXAxis.getxAxisGroupLabelsCoords(),o=this.dimXAxis.getxAxisTitleCoords();this.conditionalChecksForAxisCoords(s,o,r),i.translateXAxisY=e.globals.rotateXLabels?this.xAxisHeight/8:-4,i.translateXAxisX=e.globals.rotateXLabels&&e.globals.isXNumeric&&e.config.xaxis.labels.rotate<=-45?-this.xAxisWidth/4:0,e.globals.isBarHorizontal&&(i.rotateXLabels=!1,i.translateXAxisY=parseInt(e.config.xaxis.labels.style.fontSize,10)/1.5*-1),i.translateXAxisY=i.translateXAxisY+e.config.xaxis.labels.offsetY,i.translateXAxisX=i.translateXAxisX+e.config.xaxis.labels.offsetX;var l=this.yAxisWidth,c=this.xAxisHeight;i.xAxisLabelsHeight=this.xAxisHeight-o.height,i.xAxisGroupLabelsHeight=i.xAxisLabelsHeight-s.height,i.xAxisLabelsWidth=this.xAxisWidth,i.xAxisHeight=this.xAxisHeight;var d=10;("radar"===e.config.chart.type||this.isSparkline)&&(l=0,c=i.goldenPadding),this.isSparkline&&(this.lgRect={height:0,width:0}),(this.isSparkline||"treemap"===e.config.chart.type)&&(l=0,c=0,d=0),this.isSparkline||this.dimXAxis.additionalPaddingXLabels(s);var h=function(){i.translateX=l,i.gridHeight=i.svgHeight-t.lgRect.height-c-(t.isSparkline||"treemap"===e.config.chart.type?0:e.globals.rotateXLabels?10:15),i.gridWidth=i.svgWidth-l};switch("top"===e.config.xaxis.position&&(d=i.xAxisHeight-e.config.xaxis.axisTicks.height-5),e.config.legend.position){case"bottom":i.translateY=d,h();break;case"top":i.translateY=this.lgRect.height+d,h();break;case"left":i.translateY=d,i.translateX=this.lgRect.width+l,i.gridHeight=i.svgHeight-c-12,i.gridWidth=i.svgWidth-this.lgRect.width-l;break;case"right":i.translateY=d,i.translateX=l,i.gridHeight=i.svgHeight-c-12,i.gridWidth=i.svgWidth-this.lgRect.width-l-5;break;default:throw new Error("Legend position not supported")}this.dimGrid.setGridXPosForDualYAxis(n,a),new Q(this.ctx).setYAxisXPosition(a,n)}},{key:"setDimensionsForNonAxisCharts",value:function(){var t=this.w,e=t.globals,i=t.config,a=0;t.config.legend.show&&!t.config.legend.floating&&(a=20);var n="pie"===i.chart.type||"polarArea"===i.chart.type||"donut"===i.chart.type?"pie":"radialBar",s=i.plotOptions[n].offsetY,r=i.plotOptions[n].offsetX;if(!i.legend.show||i.legend.floating)return e.gridHeight=e.svgHeight-i.grid.padding.left+i.grid.padding.right,e.gridWidth=e.gridHeight,e.translateY=s,void(e.translateX=r+(e.svgWidth-e.gridWidth)/2);switch(i.legend.position){case"bottom":e.gridHeight=e.svgHeight-this.lgRect.height-e.goldenPadding,e.gridWidth=e.svgWidth,e.translateY=s-10,e.translateX=r+(e.svgWidth-e.gridWidth)/2;break;case"top":e.gridHeight=e.svgHeight-this.lgRect.height-e.goldenPadding,e.gridWidth=e.svgWidth,e.translateY=this.lgRect.height+s+10,e.translateX=r+(e.svgWidth-e.gridWidth)/2;break;case"left":e.gridWidth=e.svgWidth-this.lgRect.width-a,e.gridHeight="auto"!==i.chart.height?e.svgHeight:e.gridWidth,e.translateY=s,e.translateX=r+this.lgRect.width+a;break;case"right":e.gridWidth=e.svgWidth-this.lgRect.width-a-5,e.gridHeight="auto"!==i.chart.height?e.svgHeight:e.gridWidth,e.translateY=s,e.translateX=r+10;break;default:throw new Error("Legend position not supported")}}},{key:"conditionalChecksForAxisCoords",value:function(t,e,i){var a=this.w,n=a.globals.hasGroups?2:1,s=i.height+t.height+e.height,r=a.globals.isMultiLineX?1.2:a.globals.LINE_HEIGHT_RATIO,o=a.globals.rotateXLabels?22:10,l=a.globals.rotateXLabels&&"bottom"===a.config.legend.position?10:0;this.xAxisHeight=s*r+n*o+l,this.xAxisWidth=t.width,this.xAxisHeight-e.height>a.config.xaxis.labels.maxHeight&&(this.xAxisHeight=a.config.xaxis.labels.maxHeight),a.config.xaxis.labels.minHeight&&this.xAxisHeightd&&(this.yAxisWidth=d)}}]),t}(),dt=function(){function t(e){o(this,t),this.w=e.w,this.lgCtx=e}return c(t,[{key:"getLegendStyles",value:function(){var t=document.createElement("style");t.setAttribute("type","text/css");var e=document.createTextNode("\t\n \t\n .apexcharts-legend {\t\n display: flex;\t\n overflow: auto;\t\n padding: 0 10px;\t\n }\t\n .apexcharts-legend.apx-legend-position-bottom, .apexcharts-legend.apx-legend-position-top {\t\n flex-wrap: wrap\t\n }\t\n .apexcharts-legend.apx-legend-position-right, .apexcharts-legend.apx-legend-position-left {\t\n flex-direction: column;\t\n bottom: 0;\t\n }\t\n .apexcharts-legend.apx-legend-position-bottom.apexcharts-align-left, .apexcharts-legend.apx-legend-position-top.apexcharts-align-left, .apexcharts-legend.apx-legend-position-right, .apexcharts-legend.apx-legend-position-left {\t\n justify-content: flex-start;\t\n }\t\n .apexcharts-legend.apx-legend-position-bottom.apexcharts-align-center, .apexcharts-legend.apx-legend-position-top.apexcharts-align-center {\t\n justify-content: center; \t\n }\t\n .apexcharts-legend.apx-legend-position-bottom.apexcharts-align-right, .apexcharts-legend.apx-legend-position-top.apexcharts-align-right {\t\n justify-content: flex-end;\t\n }\t\n .apexcharts-legend-series {\t\n cursor: pointer;\t\n line-height: normal;\t\n }\t\n .apexcharts-legend.apx-legend-position-bottom .apexcharts-legend-series, .apexcharts-legend.apx-legend-position-top .apexcharts-legend-series{\t\n display: flex;\t\n align-items: center;\t\n }\t\n .apexcharts-legend-text {\t\n position: relative;\t\n font-size: 14px;\t\n }\t\n .apexcharts-legend-text *, .apexcharts-legend-marker * {\t\n pointer-events: none;\t\n }\t\n .apexcharts-legend-marker {\t\n position: relative;\t\n display: inline-block;\t\n cursor: pointer;\t\n margin-right: 3px;\t\n border-style: solid;\n }\t\n \t\n .apexcharts-legend.apexcharts-align-right .apexcharts-legend-series, .apexcharts-legend.apexcharts-align-left .apexcharts-legend-series{\t\n display: inline-block;\t\n }\t\n .apexcharts-legend-series.apexcharts-no-click {\t\n cursor: auto;\t\n }\t\n .apexcharts-legend .apexcharts-hidden-zero-series, .apexcharts-legend .apexcharts-hidden-null-series {\t\n display: none !important;\t\n }\t\n .apexcharts-inactive-legend {\t\n opacity: 0.45;\t\n }");return t.appendChild(e),t}},{key:"getLegendBBox",value:function(){var t=this.w.globals.dom.baseEl.querySelector(".apexcharts-legend").getBoundingClientRect(),e=t.width;return{clwh:t.height,clww:e}}},{key:"appendToForeignObject",value:function(){var t=this.w.globals;t.dom.elLegendForeign=document.createElementNS(t.SVGNS,"foreignObject");var e=t.dom.elLegendForeign;e.setAttribute("x",0),e.setAttribute("y",0),e.setAttribute("width",t.svgWidth),e.setAttribute("height",t.svgHeight),t.dom.elLegendWrap.setAttribute("xmlns","http://www.w3.org/1999/xhtml"),e.appendChild(t.dom.elLegendWrap),e.appendChild(this.getLegendStyles()),t.dom.Paper.node.insertBefore(e,t.dom.elGraphical.node)}},{key:"toggleDataSeries",value:function(t,e){var i=this,a=this.w;if(a.globals.axisCharts||"radialBar"===a.config.chart.type){a.globals.resized=!0;var n=null,s=null;a.globals.risingSeries=[],a.globals.axisCharts?(n=a.globals.dom.baseEl.querySelector(".apexcharts-series[data\\:realIndex='".concat(t,"']")),s=parseInt(n.getAttribute("data:realIndex"),10)):(n=a.globals.dom.baseEl.querySelector(".apexcharts-series[rel='".concat(t+1,"']")),s=parseInt(n.getAttribute("rel"),10)-1),e?[{cs:a.globals.collapsedSeries,csi:a.globals.collapsedSeriesIndices},{cs:a.globals.ancillaryCollapsedSeries,csi:a.globals.ancillaryCollapsedSeriesIndices}].forEach((function(t){i.riseCollapsedSeries(t.cs,t.csi,s)})):this.hideSeries({seriesEl:n,realIndex:s})}else{var r=a.globals.dom.Paper.select(" .apexcharts-series[rel='".concat(t+1,"'] path")),o=a.config.chart.type;if("pie"===o||"polarArea"===o||"donut"===o){var l=a.config.plotOptions.pie.donut.labels;new C(this.lgCtx.ctx).pathMouseDown(r.members[0],null),this.lgCtx.ctx.pie.printDataLabelsInner(r.members[0].node,l)}r.fire("click")}}},{key:"hideSeries",value:function(t){var e=t.seriesEl,i=t.realIndex,a=this.w,n=b.clone(a.config.series);if(a.globals.axisCharts){var s=!1;if(a.config.yaxis[i]&&a.config.yaxis[i].show&&a.config.yaxis[i].showAlways&&(s=!0,a.globals.ancillaryCollapsedSeriesIndices.indexOf(i)<0&&(a.globals.ancillaryCollapsedSeries.push({index:i,data:n[i].data.slice(),type:e.parentNode.className.baseVal.split("-")[1]}),a.globals.ancillaryCollapsedSeriesIndices.push(i))),!s){a.globals.collapsedSeries.push({index:i,data:n[i].data.slice(),type:e.parentNode.className.baseVal.split("-")[1]}),a.globals.collapsedSeriesIndices.push(i);var r=a.globals.risingSeries.indexOf(i);a.globals.risingSeries.splice(r,1)}}else a.globals.collapsedSeries.push({index:i,data:n[i]}),a.globals.collapsedSeriesIndices.push(i);for(var o=e.childNodes,l=0;l0){for(var s=0;s-1&&(t[a].data=[])})):t.forEach((function(i,a){e.globals.collapsedSeriesIndices.indexOf(a)>-1&&(t[a]=0)})),t}}]),t}(),ht=function(){function t(e,i){o(this,t),this.ctx=e,this.w=e.w,this.onLegendClick=this.onLegendClick.bind(this),this.onLegendHovered=this.onLegendHovered.bind(this),this.isBarsDistributed="bar"===this.w.config.chart.type&&this.w.config.plotOptions.bar.distributed&&1===this.w.config.series.length,this.legendHelpers=new dt(this)}return c(t,[{key:"init",value:function(){var t=this.w,e=t.globals,i=t.config;if((i.legend.showForSingleSeries&&1===e.series.length||this.isBarsDistributed||e.series.length>1||!e.axisCharts)&&i.legend.show){for(;e.dom.elLegendWrap.firstChild;)e.dom.elLegendWrap.removeChild(e.dom.elLegendWrap.firstChild);this.drawLegends(),b.isIE11()?document.getElementsByTagName("head")[0].appendChild(this.legendHelpers.getLegendStyles()):this.legendHelpers.appendToForeignObject(),"bottom"===i.legend.position||"top"===i.legend.position?this.legendAlignHorizontal():"right"!==i.legend.position&&"left"!==i.legend.position||this.legendAlignVertical()}}},{key:"drawLegends",value:function(){var t=this,e=this.w,i=e.config.legend.fontFamily,a=e.globals.seriesNames,n=e.globals.colors.slice();if("heatmap"===e.config.chart.type){var s=e.config.plotOptions.heatmap.colorScale.ranges;a=s.map((function(t){return t.name?t.name:t.from+" - "+t.to})),n=s.map((function(t){return t.color}))}else this.isBarsDistributed&&(a=e.globals.labels.slice());e.config.legend.customLegendItems.length&&(a=e.config.legend.customLegendItems);for(var r=e.globals.legendFormatter,o=e.config.legend.inverseOrder,l=o?a.length-1:0;o?l>=0:l<=a.length-1;o?l--:l++){var c=r(a[l],{seriesIndex:l,w:e}),d=!1,h=!1;if(e.globals.collapsedSeries.length>0)for(var u=0;u0)for(var p=0;p0?l-10:0)+(c>0?c-10:0)}a.style.position="absolute",s=s+t+i.config.legend.offsetX,r=r+e+i.config.legend.offsetY,a.style.left=s+"px",a.style.top=r+"px","bottom"===i.config.legend.position?(a.style.top="auto",a.style.bottom=5-i.config.legend.offsetY+"px"):"right"===i.config.legend.position&&(a.style.left="auto",a.style.right=25+i.config.legend.offsetX+"px"),["width","height"].forEach((function(t){a.style[t]&&(a.style[t]=parseInt(i.config.legend[t],10)+"px")}))}},{key:"legendAlignHorizontal",value:function(){var t=this.w;t.globals.dom.baseEl.querySelector(".apexcharts-legend").style.right=0;var e=this.legendHelpers.getLegendBBox(),i=new ct(this.ctx),a=i.dimHelpers.getTitleSubtitleCoords("title"),n=i.dimHelpers.getTitleSubtitleCoords("subtitle"),s=0;"bottom"===t.config.legend.position?s=-e.clwh/1.8:"top"===t.config.legend.position&&(s=a.height+n.height+t.config.title.margin+t.config.subtitle.margin-10),this.setLegendWrapXY(20,s)}},{key:"legendAlignVertical",value:function(){var t=this.w,e=this.legendHelpers.getLegendBBox(),i=0;"left"===t.config.legend.position&&(i=20),"right"===t.config.legend.position&&(i=t.globals.svgWidth-e.clww-10),this.setLegendWrapXY(i,20)}},{key:"onLegendHovered",value:function(t){var e=this.w,i=t.target.classList.contains("apexcharts-legend-text")||t.target.classList.contains("apexcharts-legend-marker");if("heatmap"===e.config.chart.type||this.isBarsDistributed){if(i){var a=parseInt(t.target.getAttribute("rel"),10)-1;this.ctx.events.fireEvent("legendHover",[this.ctx,a,this.w]),new F(this.ctx).highlightRangeInSeries(t,t.target)}}else!t.target.classList.contains("apexcharts-inactive-legend")&&i&&new F(this.ctx).toggleSeriesOnHover(t,t.target)}},{key:"onLegendClick",value:function(t){var e=this.w;if(!e.config.legend.customLegendItems.length&&(t.target.classList.contains("apexcharts-legend-text")||t.target.classList.contains("apexcharts-legend-marker"))){var i=parseInt(t.target.getAttribute("rel"),10)-1,a="true"===t.target.getAttribute("data:collapsed"),n=this.w.config.chart.events.legendClick;"function"==typeof n&&n(this.ctx,i,this.w),this.ctx.events.fireEvent("legendClick",[this.ctx,i,this.w]);var s=this.w.config.legend.markers.onClick;"function"==typeof s&&t.target.classList.contains("apexcharts-legend-marker")&&(s(this.ctx,i,this.w),this.ctx.events.fireEvent("legendMarkerClick",[this.ctx,i,this.w])),"treemap"!==e.config.chart.type&&"heatmap"!==e.config.chart.type&&!this.isBarsDistributed&&e.config.legend.onItemClick.toggleDataSeries&&this.legendHelpers.toggleDataSeries(i,a)}}}]),t}(),ut=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w;var i=this.w;this.ev=this.w.config.chart.events,this.selectedClass="apexcharts-selected",this.localeValues=this.w.globals.locale.toolbar,this.minX=i.globals.minX,this.maxX=i.globals.maxX}return c(t,[{key:"createToolbar",value:function(){var t=this,e=this.w,i=function(){return document.createElement("div")},a=i();if(a.setAttribute("class","apexcharts-toolbar"),a.style.top=e.config.chart.toolbar.offsetY+"px",a.style.right=3-e.config.chart.toolbar.offsetX+"px",e.globals.dom.elWrap.appendChild(a),this.elZoom=i(),this.elZoomIn=i(),this.elZoomOut=i(),this.elPan=i(),this.elSelection=i(),this.elZoomReset=i(),this.elMenuIcon=i(),this.elMenu=i(),this.elCustomIcons=[],this.t=e.config.chart.toolbar.tools,Array.isArray(this.t.customIcons))for(var n=0;n\n \n \n\n'),r("zoomOut",this.elZoomOut,'\n \n \n\n');var o=function(i){t.t[i]&&e.config.chart[i].enabled&&s.push({el:"zoom"===i?t.elZoom:t.elSelection,icon:"string"==typeof t.t[i]?t.t[i]:"zoom"===i?'\n \n \n \n':'\n \n \n',title:t.localeValues["zoom"===i?"selectionZoom":"selection"],class:e.globals.isTouchDevice?"apexcharts-element-hidden":"apexcharts-".concat(i,"-icon")})};o("zoom"),o("selection"),this.t.pan&&e.config.chart.zoom.enabled&&s.push({el:this.elPan,icon:"string"==typeof this.t.pan?this.t.pan:'\n \n \n \n \n \n \n \n',title:this.localeValues.pan,class:e.globals.isTouchDevice?"apexcharts-element-hidden":"apexcharts-pan-icon"}),r("reset",this.elZoomReset,'\n \n \n'),this.t.download&&s.push({el:this.elMenuIcon,icon:"string"==typeof this.t.download?this.t.download:'',title:this.localeValues.menu,class:"apexcharts-menu-icon"});for(var l=0;l0&&e.height>0&&this.slDraggableRect.selectize({points:"l, r",pointSize:8,pointType:"rect"}).resize({constraint:{minX:0,minY:0,maxX:t.globals.gridWidth,maxY:t.globals.gridHeight}}).on("resizing",this.selectionDragging.bind(this,"resizing"))}}},{key:"preselectedSelection",value:function(){var t=this.w,e=this.xyRatios;if(!t.globals.zoomEnabled)if(void 0!==t.globals.selection&&null!==t.globals.selection)this.drawSelectionRect(t.globals.selection);else if(void 0!==t.config.chart.selection.xaxis.min&&void 0!==t.config.chart.selection.xaxis.max){var i=(t.config.chart.selection.xaxis.min-t.globals.minX)/e.xRatio,a={x:i,y:0,width:t.globals.gridWidth-(t.globals.maxX-t.config.chart.selection.xaxis.max)/e.xRatio-i,height:t.globals.gridHeight,translateX:0,translateY:0,selectionEnabled:!0};this.drawSelectionRect(a),this.makeSelectionRectDraggable(),"function"==typeof t.config.chart.events.selection&&t.config.chart.events.selection(this.ctx,{xaxis:{min:t.config.chart.selection.xaxis.min,max:t.config.chart.selection.xaxis.max},yaxis:{}})}}},{key:"drawSelectionRect",value:function(t){var e=t.x,i=t.y,a=t.width,n=t.height,s=t.translateX,r=void 0===s?0:s,o=t.translateY,l=void 0===o?0:o,c=this.w,d=this.zoomRect,h=this.selectionRect;if(this.dragged||null!==c.globals.selection){var u={transform:"translate("+r+", "+l+")"};c.globals.zoomEnabled&&this.dragged&&(a<0&&(a=1),d.attr({x:e,y:i,width:a,height:n,fill:c.config.chart.zoom.zoomedArea.fill.color,"fill-opacity":c.config.chart.zoom.zoomedArea.fill.opacity,stroke:c.config.chart.zoom.zoomedArea.stroke.color,"stroke-width":c.config.chart.zoom.zoomedArea.stroke.width,"stroke-opacity":c.config.chart.zoom.zoomedArea.stroke.opacity}),C.setAttrs(d.node,u)),c.globals.selectionEnabled&&(h.attr({x:e,y:i,width:a>0?a:0,height:n>0?n:0,fill:c.config.chart.selection.fill.color,"fill-opacity":c.config.chart.selection.fill.opacity,stroke:c.config.chart.selection.stroke.color,"stroke-width":c.config.chart.selection.stroke.width,"stroke-dasharray":c.config.chart.selection.stroke.dashArray,"stroke-opacity":c.config.chart.selection.stroke.opacity}),C.setAttrs(h.node,u))}}},{key:"hideSelectionRect",value:function(t){t&&t.attr({x:0,y:0,width:0,height:0})}},{key:"selectionDrawing",value:function(t){var e,i=t.context,a=t.zoomtype,n=this.w,s=i,r=this.gridRect.getBoundingClientRect(),o=s.startX-1,l=s.startY,c=!1,d=!1,h=s.clientX-r.left-o,u=s.clientY-r.top-l;return Math.abs(h+o)>n.globals.gridWidth?h=n.globals.gridWidth-o:s.clientX-r.left<0&&(h=o),o>s.clientX-r.left&&(c=!0,h=Math.abs(h)),l>s.clientY-r.top&&(d=!0,u=Math.abs(u)),e="x"===a?{x:c?o-h:o,y:0,width:h,height:n.globals.gridHeight}:"y"===a?{x:0,y:d?l-u:l,width:n.globals.gridWidth,height:u}:{x:c?o-h:o,y:d?l-u:l,width:h,height:u},s.drawSelectionRect(e),s.selectionDragging("resizing"),e}},{key:"selectionDragging",value:function(t,e){var i=this,a=this.w,n=this.xyRatios,s=this.selectionRect,r=0;"resizing"===t&&(r=30);var o=function(t){return parseFloat(s.node.getAttribute(t))},l={x:o("x"),y:o("y"),width:o("width"),height:o("height")};a.globals.selection=l,"function"==typeof a.config.chart.events.selection&&a.globals.selectionEnabled&&(clearTimeout(this.w.globals.selectionResizeTimer),this.w.globals.selectionResizeTimer=window.setTimeout((function(){var t=i.gridRect.getBoundingClientRect(),e=s.node.getBoundingClientRect(),r={xaxis:{min:a.globals.xAxisScale.niceMin+(e.left-t.left)*n.xRatio,max:a.globals.xAxisScale.niceMin+(e.right-t.left)*n.xRatio},yaxis:{min:a.globals.yAxisScale[0].niceMin+(t.bottom-e.bottom)*n.yRatio[0],max:a.globals.yAxisScale[0].niceMax-(e.top-t.top)*n.yRatio[0]}};a.config.chart.events.selection(i.ctx,r),a.config.chart.brush.enabled&&void 0!==a.config.chart.events.brushScrolled&&a.config.chart.events.brushScrolled(i.ctx,r)}),r))}},{key:"selectionDrawn",value:function(t){var e=t.context,i=t.zoomtype,a=this.w,n=e,s=this.xyRatios,r=this.ctx.toolbar;if(n.startX>n.endX){var o=n.startX;n.startX=n.endX,n.endX=o}if(n.startY>n.endY){var l=n.startY;n.startY=n.endY,n.endY=l}var c=void 0,d=void 0;a.globals.isRangeBar?(c=a.globals.yAxisScale[0].niceMin+n.startX*s.invertedYRatio,d=a.globals.yAxisScale[0].niceMin+n.endX*s.invertedYRatio):(c=a.globals.xAxisScale.niceMin+n.startX*s.xRatio,d=a.globals.xAxisScale.niceMin+n.endX*s.xRatio);var h=[],u=[];if(a.config.yaxis.forEach((function(t,e){h.push(a.globals.yAxisScale[e].niceMax-s.yRatio[e]*n.startY),u.push(a.globals.yAxisScale[e].niceMax-s.yRatio[e]*n.endY)})),n.dragged&&(n.dragX>10||n.dragY>10)&&c!==d)if(a.globals.zoomEnabled){var p=b.clone(a.globals.initialConfig.yaxis),f=b.clone(a.globals.initialConfig.xaxis);if(a.globals.zoomed=!0,a.config.xaxis.convertedCatToNumeric&&(c=Math.floor(c),d=Math.floor(d),c<1&&(c=1,d=a.globals.dataPoints),d-c<2&&(d=c+1)),"xy"!==i&&"x"!==i||(f={min:c,max:d}),"xy"!==i&&"y"!==i||p.forEach((function(t,e){p[e].min=u[e],p[e].max=h[e]})),a.config.chart.zoom.autoScaleYaxis){var g=new q(n.ctx);p=g.autoScaleY(n.ctx,p,{xaxis:f})}if(r){var v=r.getBeforeZoomRange(f,p);v&&(f=v.xaxis?v.xaxis:f,p=v.yaxis?v.yaxis:p)}var m={xaxis:f};a.config.chart.group||(m.yaxis=p),n.ctx.updateHelpers._updateOptions(m,!1,n.w.config.chart.animations.dynamicAnimation.enabled),"function"==typeof a.config.chart.events.zoomed&&r.zoomCallback(f,p)}else if(a.globals.selectionEnabled){var x,y=null;x={min:c,max:d},"xy"!==i&&"y"!==i||(y=b.clone(a.config.yaxis)).forEach((function(t,e){y[e].min=u[e],y[e].max=h[e]})),a.globals.selection=n.selection,"function"==typeof a.config.chart.events.selection&&a.config.chart.events.selection(n.ctx,{xaxis:x,yaxis:y})}}},{key:"panDragging",value:function(t){var e=t.context,i=this.w,a=e;if(void 0!==i.globals.lastClientPosition.x){var n=i.globals.lastClientPosition.x-a.clientX,s=i.globals.lastClientPosition.y-a.clientY;Math.abs(n)>Math.abs(s)&&n>0?this.moveDirection="left":Math.abs(n)>Math.abs(s)&&n<0?this.moveDirection="right":Math.abs(s)>Math.abs(n)&&s>0?this.moveDirection="up":Math.abs(s)>Math.abs(n)&&s<0&&(this.moveDirection="down")}i.globals.lastClientPosition={x:a.clientX,y:a.clientY};var r=i.globals.isRangeBar?i.globals.minY:i.globals.minX,o=i.globals.isRangeBar?i.globals.maxY:i.globals.maxX;i.config.xaxis.convertedCatToNumeric||a.panScrolled(r,o)}},{key:"delayedPanScrolled",value:function(){var t=this.w,e=t.globals.minX,i=t.globals.maxX,a=(t.globals.maxX-t.globals.minX)/2;"left"===this.moveDirection?(e=t.globals.minX+a,i=t.globals.maxX+a):"right"===this.moveDirection&&(e=t.globals.minX-a,i=t.globals.maxX-a),e=Math.floor(e),i=Math.floor(i),this.updateScrolledChart({xaxis:{min:e,max:i}},e,i)}},{key:"panScrolled",value:function(t,e){var i=this.w,a=this.xyRatios,n=b.clone(i.globals.initialConfig.yaxis),s=a.xRatio,r=i.globals.minX,o=i.globals.maxX;i.globals.isRangeBar&&(s=a.invertedYRatio,r=i.globals.minY,o=i.globals.maxY),"left"===this.moveDirection?(t=r+i.globals.gridWidth/15*s,e=o+i.globals.gridWidth/15*s):"right"===this.moveDirection&&(t=r-i.globals.gridWidth/15*s,e=o-i.globals.gridWidth/15*s),i.globals.isRangeBar||(ti.globals.initialMaxX)&&(t=r,e=o);var l={min:t,max:e};i.config.chart.zoom.autoScaleYaxis&&(n=new q(this.ctx).autoScaleY(this.ctx,n,{xaxis:l}));var c={xaxis:{min:t,max:e}};i.config.chart.group||(c.yaxis=n),this.updateScrolledChart(c,t,e)}},{key:"updateScrolledChart",value:function(t,e,i){var a=this.w;this.ctx.updateHelpers._updateOptions(t,!1,!1),"function"==typeof a.config.chart.events.scrolled&&a.config.chart.events.scrolled(this.ctx,{xaxis:{min:e,max:i}})}}]),i}(ut),ft=function(){function t(e){o(this,t),this.w=e.w,this.ttCtx=e,this.ctx=e.ctx}return c(t,[{key:"getNearestValues",value:function(t){var e=t.hoverArea,i=t.elGrid,a=t.clientX,n=t.clientY,s=this.w,r=i.getBoundingClientRect(),o=r.width,l=r.height,c=o/(s.globals.dataPoints-1),d=l/s.globals.dataPoints,h=this.hasBars();!s.globals.comboCharts&&!h||s.config.xaxis.convertedCatToNumeric||(c=o/s.globals.dataPoints);var u=a-r.left-s.globals.barPadForNumericAxis,p=n-r.top;u<0||p<0||u>o||p>l?(e.classList.remove("hovering-zoom"),e.classList.remove("hovering-pan")):s.globals.zoomEnabled?(e.classList.remove("hovering-pan"),e.classList.add("hovering-zoom")):s.globals.panEnabled&&(e.classList.remove("hovering-zoom"),e.classList.add("hovering-pan"));var f=Math.round(u/c),g=Math.floor(p/d);h&&!s.config.xaxis.convertedCatToNumeric&&(f=Math.ceil(u/c),f-=1);var v=null,m=null,x=[],y=[];if(s.globals.seriesXvalues.forEach((function(t){x.push([t[0]+1e-6].concat(t))})),s.globals.seriesYvalues.forEach((function(t){y.push([t[0]+1e-6].concat(t))})),x=x.map((function(t){return t.filter((function(t){return b.isNumber(t)}))})),y=y.map((function(t){return t.filter((function(t){return b.isNumber(t)}))})),s.globals.isXNumeric){var w=this.ttCtx.getElGrid().getBoundingClientRect(),C=u*(w.width/o),S=p*(w.height/l);v=(m=this.closestInMultiArray(C,S,x,y)).index,f=m.j,null!==v&&(x=s.globals.seriesXvalues[v],f=(m=this.closestInArray(C,x)).index)}return s.globals.capturedSeriesIndex=null===v?-1:v,(!f||f<1)&&(f=0),s.globals.isBarHorizontal?s.globals.capturedDataPointIndex=g:s.globals.capturedDataPointIndex=f,{capturedSeries:v,j:s.globals.isBarHorizontal?g:f,hoverX:u,hoverY:p}}},{key:"closestInMultiArray",value:function(t,e,i,a){var n=this.w,s=0,r=null,o=-1;n.globals.series.length>1?s=this.getFirstActiveXArray(i):r=0;var l=i[s][0],c=Math.abs(t-l);if(i.forEach((function(e){e.forEach((function(e,i){var a=Math.abs(t-e);a0?e:-1})),n=0;n0)for(var a=0;ai?-1:0}));var e=[];return t.forEach((function(t){e.push(t.querySelector(".apexcharts-marker"))})),e}},{key:"hasMarkers",value:function(){return this.getElMarkers().length>0}},{key:"getElBars",value:function(){return this.w.globals.dom.baseEl.querySelectorAll(".apexcharts-bar-series, .apexcharts-candlestick-series, .apexcharts-boxPlot-series, .apexcharts-rangebar-series")}},{key:"hasBars",value:function(){return this.getElBars().length>0}},{key:"getHoverMarkerSize",value:function(t){var e=this.w,i=e.config.markers.hover.size;return void 0===i&&(i=e.globals.markers.size[t]+e.config.markers.hover.sizeOffset),i}},{key:"toggleAllTooltipSeriesGroups",value:function(t){var e=this.w,i=this.ttCtx;0===i.allTooltipSeriesGroups.length&&(i.allTooltipSeriesGroups=e.globals.dom.baseEl.querySelectorAll(".apexcharts-tooltip-series-group"));for(var a=i.allTooltipSeriesGroups,n=0;n ').concat(i.attrs.name,""),e+="
".concat(i.val,"
")})),x.innerHTML=t+"",b.innerHTML=e+""};r?l.globals.seriesGoals[e][i]&&Array.isArray(l.globals.seriesGoals[e][i])?y():(x.innerHTML="",b.innerHTML=""):y()}else x.innerHTML="",b.innerHTML="";null!==f&&(a[e].querySelector(".apexcharts-tooltip-text-z-label").innerHTML=l.config.tooltip.z.title,a[e].querySelector(".apexcharts-tooltip-text-z-value").innerHTML=void 0!==f?f:""),r&&g[0]&&(null==d||l.globals.ancillaryCollapsedSeriesIndices.indexOf(e)>-1||l.globals.collapsedSeriesIndices.indexOf(e)>-1?g[0].parentNode.style.display="none":g[0].parentNode.style.display=l.config.tooltip.items.display)}},{key:"toggleActiveInactiveSeries",value:function(t){var e=this.w;if(t)this.tooltipUtil.toggleAllTooltipSeriesGroups("enable");else{this.tooltipUtil.toggleAllTooltipSeriesGroups("disable");var i=e.globals.dom.baseEl.querySelector(".apexcharts-tooltip-series-group");i&&(i.classList.add("apexcharts-active"),i.style.display=e.config.tooltip.items.display)}}},{key:"getValuesToPrint",value:function(t){var e=t.i,i=t.j,a=this.w,n=this.ctx.series.filteredSeriesX(),s="",r="",o=null,l=null,c={series:a.globals.series,seriesIndex:e,dataPointIndex:i,w:a},d=a.globals.ttZFormatter;null===i?l=a.globals.series[e]:a.globals.isXNumeric&&"treemap"!==a.config.chart.type?(s=n[e][i],0===n[e].length&&(s=n[this.tooltipUtil.getFirstActiveXArray(n)][i])):s=void 0!==a.globals.labels[i]?a.globals.labels[i]:"";var h=s;return s=a.globals.isXNumeric&&"datetime"===a.config.xaxis.type?new B(this.ctx).xLabelFormat(a.globals.ttKeyFormatter,h,h,{i:void 0,dateFormatter:new L(this.ctx).formatDate,w:this.w}):a.globals.isBarHorizontal?a.globals.yLabelFormatters[0](h,c):a.globals.xLabelFormatter(h,c),void 0!==a.config.tooltip.x.formatter&&(s=a.globals.ttKeyFormatter(h,c)),a.globals.seriesZ.length>0&&a.globals.seriesZ[e].length>0&&(o=d(a.globals.seriesZ[e][i],a)),r="function"==typeof a.config.xaxis.tooltip.formatter?a.globals.xaxisTooltipFormatter(h,c):s,{val:Array.isArray(l)?l.join(" "):l,xVal:Array.isArray(s)?s.join(" "):s,xAxisTTVal:Array.isArray(r)?r.join(" "):r,zVal:o}}},{key:"handleCustomTooltip",value:function(t){var e=t.i,i=t.j,a=t.y1,n=t.y2,s=t.w,r=this.ttCtx.getElTooltip(),o=s.config.tooltip.custom;Array.isArray(o)&&o[e]&&(o=o[e]),r.innerHTML=o({ctx:this.ctx,series:s.globals.series,seriesIndex:e,dataPointIndex:i,y1:a,y2:n,w:s})}}]),t}(),vt=function(){function t(e){o(this,t),this.ttCtx=e,this.ctx=e.ctx,this.w=e.w}return c(t,[{key:"moveXCrosshairs",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,i=this.ttCtx,a=this.w,n=i.getElXCrosshairs(),s=t-i.xcrosshairsWidth/2,r=a.globals.labels.slice().length;if(null!==e&&(s=a.globals.gridWidth/r*e),null===n||a.globals.isBarHorizontal||(n.setAttribute("x",s),n.setAttribute("x1",s),n.setAttribute("x2",s),n.setAttribute("y2",a.globals.gridHeight),n.classList.add("apexcharts-active")),s<0&&(s=0),s>a.globals.gridWidth&&(s=a.globals.gridWidth),i.isXAxisTooltipEnabled){var o=s;"tickWidth"!==a.config.xaxis.crosshairs.width&&"barWidth"!==a.config.xaxis.crosshairs.width||(o=s+i.xcrosshairsWidth/2),this.moveXAxisTooltip(o)}}},{key:"moveYCrosshairs",value:function(t){var e=this.ttCtx;null!==e.ycrosshairs&&C.setAttrs(e.ycrosshairs,{y1:t,y2:t}),null!==e.ycrosshairsHidden&&C.setAttrs(e.ycrosshairsHidden,{y1:t,y2:t})}},{key:"moveXAxisTooltip",value:function(t){var e=this.w,i=this.ttCtx;if(null!==i.xaxisTooltip&&0!==i.xcrosshairsWidth){i.xaxisTooltip.classList.add("apexcharts-active");var a,n=i.xaxisOffY+e.config.xaxis.tooltip.offsetY+e.globals.translateY+1+e.config.xaxis.offsetY;t-=i.xaxisTooltip.getBoundingClientRect().width/2,isNaN(t)||(t+=e.globals.translateX,a=new C(this.ctx).getTextRects(i.xaxisTooltipText.innerHTML),i.xaxisTooltipText.style.minWidth=a.width+"px",i.xaxisTooltip.style.left=t+"px",i.xaxisTooltip.style.top=n+"px")}}},{key:"moveYAxisTooltip",value:function(t){var e=this.w,i=this.ttCtx;null===i.yaxisTTEls&&(i.yaxisTTEls=e.globals.dom.baseEl.querySelectorAll(".apexcharts-yaxistooltip"));var a=parseInt(i.ycrosshairsHidden.getAttribute("y1"),10),n=e.globals.translateY+a,s=i.yaxisTTEls[t].getBoundingClientRect().height,r=e.globals.translateYAxisX[t]-2;e.config.yaxis[t].opposite&&(r-=26),n-=s/2,-1===e.globals.ignoreYAxisIndexes.indexOf(t)?(i.yaxisTTEls[t].classList.add("apexcharts-active"),i.yaxisTTEls[t].style.top=n+"px",i.yaxisTTEls[t].style.left=r+e.config.yaxis[t].tooltip.offsetX+"px"):i.yaxisTTEls[t].classList.remove("apexcharts-active")}},{key:"moveTooltip",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=this.w,n=this.ttCtx,s=n.getElTooltip(),r=n.tooltipRect,o=null!==i?parseFloat(i):1,l=parseFloat(t)+o+5,c=parseFloat(e)+o/2;if(l>a.globals.gridWidth/2&&(l=l-r.ttWidth-o-10),l>a.globals.gridWidth-r.ttWidth-10&&(l=a.globals.gridWidth-r.ttWidth),l<-20&&(l=-20),a.config.tooltip.followCursor){var d=n.getElGrid().getBoundingClientRect();c=n.e.clientY+a.globals.translateY-d.top-r.ttHeight/2}else a.globals.isBarHorizontal||(r.ttHeight/2+c>a.globals.gridHeight&&(c=a.globals.gridHeight-r.ttHeight+a.globals.translateY),c<0&&(c=0));isNaN(l)||(l+=a.globals.translateX,s.style.left=l+"px",s.style.top=c+"px")}},{key:"moveMarkers",value:function(t,e){var i=this.w,a=this.ttCtx;if(i.globals.markers.size[t]>0)for(var n=i.globals.dom.baseEl.querySelectorAll(" .apexcharts-series[data\\:realIndex='".concat(t,"'] .apexcharts-marker")),s=0;s0&&(c.setAttribute("r",o),c.setAttribute("cx",i),c.setAttribute("cy",a)),this.moveXCrosshairs(i),s.fixedTooltip||this.moveTooltip(i,a,o)}}},{key:"moveDynamicPointsOnHover",value:function(t){var e,i=this.ttCtx,a=i.w,n=0,s=0,r=a.globals.pointsArray;e=new F(this.ctx).getActiveConfigSeriesIndex("asc",["line","area","scatter","bubble"]);var o=i.tooltipUtil.getHoverMarkerSize(e);r[e]&&(n=r[e][t][0],s=r[e][t][1]);var l=i.tooltipUtil.getAllMarkers();if(null!==l)for(var c=0;c0?(l[c]&&l[c].setAttribute("r",o),l[c]&&l[c].setAttribute("cy",h)):l[c]&&l[c].setAttribute("r",0)}}if(this.moveXCrosshairs(n),!i.fixedTooltip){var f=s||a.globals.gridHeight;this.moveTooltip(n,f,o)}}},{key:"moveStickyTooltipOverBars",value:function(t){var e=this.w,i=this.ttCtx,a=e.globals.columnSeries?e.globals.columnSeries.length:e.globals.series.length,n=a>=2&&a%2==0?Math.floor(a/2):Math.floor(a/2)+1;e.globals.isBarHorizontal&&(n=new F(this.ctx).getActiveConfigSeriesIndex("desc")+1);var s=e.globals.dom.baseEl.querySelector(".apexcharts-bar-series .apexcharts-series[rel='".concat(n,"'] path[j='").concat(t,"'], .apexcharts-candlestick-series .apexcharts-series[rel='").concat(n,"'] path[j='").concat(t,"'], .apexcharts-boxPlot-series .apexcharts-series[rel='").concat(n,"'] path[j='").concat(t,"'], .apexcharts-rangebar-series .apexcharts-series[rel='").concat(n,"'] path[j='").concat(t,"']")),r=s?parseFloat(s.getAttribute("cx")):0,o=s?parseFloat(s.getAttribute("cy")):0,l=s?parseFloat(s.getAttribute("barWidth")):0,c=s?parseFloat(s.getAttribute("barHeight")):0,d=i.getElGrid().getBoundingClientRect(),h=s.classList.contains("apexcharts-candlestick-area")||s.classList.contains("apexcharts-boxPlot-area");if(e.globals.isXNumeric?(s&&!h&&(r-=a%2!=0?l/2:0),s&&h&&e.globals.comboCharts&&(r-=l/2)):e.globals.isBarHorizontal||(r=i.xAxisTicksPositions[t-1]+i.dataPointsDividedWidth/2,isNaN(r)&&(r=i.xAxisTicksPositions[t]-i.dataPointsDividedWidth/2)),e.globals.isBarHorizontal?(o>e.globals.gridHeight/2&&(o-=i.tooltipRect.ttHeight),(o=o+e.config.grid.padding.top+c/3)+c>e.globals.gridHeight&&(o=e.globals.gridHeight-c)):e.config.tooltip.followCursor?o=i.e.clientY-d.top-i.tooltipRect.ttHeight/2:o+i.tooltipRect.ttHeight+15>e.globals.gridHeight&&(o=e.globals.gridHeight),o<-10&&(o=-10),e.globals.isBarHorizontal||this.moveXCrosshairs(r),!i.fixedTooltip){var u=o||e.globals.gridHeight;this.moveTooltip(r,u)}}}]),t}(),mt=function(){function t(e){o(this,t),this.w=e.w,this.ttCtx=e,this.ctx=e.ctx,this.tooltipPosition=new vt(e)}return c(t,[{key:"drawDynamicPoints",value:function(){var t=this.w,e=new C(this.ctx),i=new X(this.ctx),a=t.globals.dom.baseEl.querySelectorAll(".apexcharts-series");a=v(a),t.config.chart.stacked&&a.sort((function(t,e){return parseFloat(t.getAttribute("data:realIndex"))-parseFloat(e.getAttribute("data:realIndex"))}));for(var n=0;n2&&void 0!==arguments[2]?arguments[2]:null,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,n=this.w;"bubble"!==n.config.chart.type&&this.newPointSize(t,e);var s=e.getAttribute("cx"),r=e.getAttribute("cy");if(null!==i&&null!==a&&(s=i,r=a),this.tooltipPosition.moveXCrosshairs(s),!this.fixedTooltip){if("radar"===n.config.chart.type){var o=this.ttCtx.getElGrid().getBoundingClientRect();s=this.ttCtx.e.clientX-o.left}this.tooltipPosition.moveTooltip(s,r,n.config.markers.hover.size)}}},{key:"enlargePoints",value:function(t){for(var e=this.w,i=this,a=this.ttCtx,n=t,s=e.globals.dom.baseEl.querySelectorAll(".apexcharts-series:not(.apexcharts-series-collapsed) .apexcharts-marker"),r=e.config.markers.hover.size,o=0;o=0?t[e].setAttribute("r",i):t[e].setAttribute("r",0)}}}]),t}(),xt=function(){function t(e){o(this,t),this.w=e.w,this.ttCtx=e}return c(t,[{key:"getAttr",value:function(t,e){return parseFloat(t.target.getAttribute(e))}},{key:"handleHeatTreeTooltip",value:function(t){var e=t.e,i=t.opt,a=t.x,n=t.y,s=t.type,r=this.ttCtx,o=this.w;if(e.target.classList.contains("apexcharts-".concat(s,"-rect"))){var l=this.getAttr(e,"i"),c=this.getAttr(e,"j"),d=this.getAttr(e,"cx"),h=this.getAttr(e,"cy"),u=this.getAttr(e,"width"),p=this.getAttr(e,"height");if(r.tooltipLabels.drawSeriesTexts({ttItems:i.ttItems,i:l,j:c,shared:!1,e:e}),o.globals.capturedSeriesIndex=l,o.globals.capturedDataPointIndex=c,a=d+r.tooltipRect.ttWidth/2+u,n=h+r.tooltipRect.ttHeight/2-p/2,r.tooltipPosition.moveXCrosshairs(d+u/2),a>o.globals.gridWidth/2&&(a=d-r.tooltipRect.ttWidth/2+u),r.w.config.tooltip.followCursor){var f=o.globals.dom.elWrap.getBoundingClientRect();a=o.globals.clientX-f.left-(a>o.globals.gridWidth/2?r.tooltipRect.ttWidth:0),n=o.globals.clientY-f.top-(n>o.globals.gridHeight/2?r.tooltipRect.ttHeight:0)}}return{x:a,y:n}}},{key:"handleMarkerTooltip",value:function(t){var e,i,a=t.e,n=t.opt,s=t.x,r=t.y,o=this.w,l=this.ttCtx;if(a.target.classList.contains("apexcharts-marker")){var c=parseInt(n.paths.getAttribute("cx"),10),d=parseInt(n.paths.getAttribute("cy"),10),h=parseFloat(n.paths.getAttribute("val"));if(i=parseInt(n.paths.getAttribute("rel"),10),e=parseInt(n.paths.parentNode.parentNode.parentNode.getAttribute("rel"),10)-1,l.intersect){var u=b.findAncestor(n.paths,"apexcharts-series");u&&(e=parseInt(u.getAttribute("data:realIndex"),10))}if(l.tooltipLabels.drawSeriesTexts({ttItems:n.ttItems,i:e,j:i,shared:!l.showOnIntersect&&o.config.tooltip.shared,e:a}),"mouseup"===a.type&&l.markerClick(a,e,i),o.globals.capturedSeriesIndex=e,o.globals.capturedDataPointIndex=i,s=c,r=d+o.globals.translateY-1.4*l.tooltipRect.ttHeight,l.w.config.tooltip.followCursor){var p=l.getElGrid().getBoundingClientRect();r=l.e.clientY+o.globals.translateY-p.top}h<0&&(r=d),l.marker.enlargeCurrentPoint(i,n.paths,s,r)}return{x:s,y:r}}},{key:"handleBarTooltip",value:function(t){var e,i,a=t.e,n=t.opt,s=this.w,r=this.ttCtx,o=r.getElTooltip(),l=0,c=0,d=0,h=this.getBarTooltipXY({e:a,opt:n});e=h.i;var u=h.barHeight,p=h.j;s.globals.capturedSeriesIndex=e,s.globals.capturedDataPointIndex=p,s.globals.isBarHorizontal&&r.tooltipUtil.hasBars()||!s.config.tooltip.shared?(c=h.x,d=h.y,i=Array.isArray(s.config.stroke.width)?s.config.stroke.width[e]:s.config.stroke.width,l=c):s.globals.comboCharts||s.config.tooltip.shared||(l/=2),isNaN(d)?d=s.globals.svgHeight-r.tooltipRect.ttHeight:d<0&&(d=0);var f=parseInt(n.paths.parentNode.getAttribute("data:realIndex"),10),g=s.globals.isMultipleYAxis?s.config.yaxis[f]&&s.config.yaxis[f].reversed:s.config.yaxis[0].reversed;if(c+r.tooltipRect.ttWidth>s.globals.gridWidth&&!g?c-=r.tooltipRect.ttWidth:c<0&&(c=0),r.w.config.tooltip.followCursor){var v=r.getElGrid().getBoundingClientRect();d=r.e.clientY-v.top}null===r.tooltip&&(r.tooltip=s.globals.dom.baseEl.querySelector(".apexcharts-tooltip")),s.config.tooltip.shared||(s.globals.comboBarCount>0?r.tooltipPosition.moveXCrosshairs(l+i/2):r.tooltipPosition.moveXCrosshairs(l)),!r.fixedTooltip&&(!s.config.tooltip.shared||s.globals.isBarHorizontal&&r.tooltipUtil.hasBars())&&(g&&(c-=r.tooltipRect.ttWidth)<0&&(c=0),!g||s.globals.isBarHorizontal&&r.tooltipUtil.hasBars()||(d=d+u-2*(s.globals.series[e][p]<0?u:0)),r.tooltipRect.ttHeight+d>s.globals.gridHeight?d=s.globals.gridHeight-r.tooltipRect.ttHeight+s.globals.translateY:(d=d+s.globals.translateY-r.tooltipRect.ttHeight/2)<0&&(d=0),o.style.left=c+s.globals.translateX+"px",o.style.top=d+"px")}},{key:"getBarTooltipXY",value:function(t){var e=t.e,i=t.opt,a=this.w,n=null,s=this.ttCtx,r=0,o=0,l=0,c=0,d=0,h=e.target.classList;if(h.contains("apexcharts-bar-area")||h.contains("apexcharts-candlestick-area")||h.contains("apexcharts-boxPlot-area")||h.contains("apexcharts-rangebar-area")){var u=e.target,p=u.getBoundingClientRect(),f=i.elGrid.getBoundingClientRect(),g=p.height;d=p.height;var v=p.width,m=parseInt(u.getAttribute("cx"),10),x=parseInt(u.getAttribute("cy"),10);c=parseFloat(u.getAttribute("barWidth"));var b="touchmove"===e.type?e.touches[0].clientX:e.clientX;n=parseInt(u.getAttribute("j"),10),r=parseInt(u.parentNode.getAttribute("rel"),10)-1;var y=u.getAttribute("data-range-y1"),w=u.getAttribute("data-range-y2");a.globals.comboCharts&&(r=parseInt(u.parentNode.getAttribute("data:realIndex"),10)),s.tooltipLabels.drawSeriesTexts({ttItems:i.ttItems,i:r,j:n,y1:y?parseInt(y,10):null,y2:w?parseInt(w,10):null,shared:!s.showOnIntersect&&a.config.tooltip.shared,e:e}),a.config.tooltip.followCursor?a.globals.isBarHorizontal?(o=b-f.left+15,l=x-s.dataPointsDividedHeight+g/2-s.tooltipRect.ttHeight/2):(o=a.globals.isXNumeric?m-v/2:m-s.dataPointsDividedWidth+v/2,l=e.clientY-f.top-s.tooltipRect.ttHeight/2-15):a.globals.isBarHorizontal?((o=m)0&&i.setAttribute("width",e.xcrosshairsWidth)}},{key:"handleYCrosshair",value:function(){var t=this.w,e=this.ttCtx;e.ycrosshairs=t.globals.dom.baseEl.querySelector(".apexcharts-ycrosshairs"),e.ycrosshairsHidden=t.globals.dom.baseEl.querySelector(".apexcharts-ycrosshairs-hidden")}},{key:"drawYaxisTooltipText",value:function(t,e,i){var a=this.ttCtx,n=this.w,s=n.globals.yLabelFormatters[t];if(a.yaxisTooltips[t]){var r=a.getElGrid().getBoundingClientRect(),o=(e-r.top)*i.yRatio[t],l=n.globals.maxYArr[t]-n.globals.minYArr[t],c=n.globals.minYArr[t]+(l-o);a.tooltipPosition.moveYCrosshairs(e-r.top),a.yaxisTooltipText[t].innerHTML=s(c),a.tooltipPosition.moveYAxisTooltip(t)}}}]),t}(),yt=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w;var i=this.w;this.tConfig=i.config.tooltip,this.tooltipUtil=new ft(this),this.tooltipLabels=new gt(this),this.tooltipPosition=new vt(this),this.marker=new mt(this),this.intersect=new xt(this),this.axesTooltip=new bt(this),this.showOnIntersect=this.tConfig.intersect,this.showTooltipTitle=this.tConfig.x.show,this.fixedTooltip=this.tConfig.fixed.enabled,this.xaxisTooltip=null,this.yaxisTTEls=null,this.isBarShared=!i.globals.isBarHorizontal&&this.tConfig.shared,this.lastHoverTime=Date.now()}return c(t,[{key:"getElTooltip",value:function(t){return t||(t=this),t.w.globals.dom.baseEl?t.w.globals.dom.baseEl.querySelector(".apexcharts-tooltip"):null}},{key:"getElXCrosshairs",value:function(){return this.w.globals.dom.baseEl.querySelector(".apexcharts-xcrosshairs")}},{key:"getElGrid",value:function(){return this.w.globals.dom.baseEl.querySelector(".apexcharts-grid")}},{key:"drawTooltip",value:function(t){var e=this.w;this.xyRatios=t,this.isXAxisTooltipEnabled=e.config.xaxis.tooltip.enabled&&e.globals.axisCharts,this.yaxisTooltips=e.config.yaxis.map((function(t,i){return!!(t.show&&t.tooltip.enabled&&e.globals.axisCharts)})),this.allTooltipSeriesGroups=[],e.globals.axisCharts||(this.showTooltipTitle=!1);var i=document.createElement("div");if(i.classList.add("apexcharts-tooltip"),e.config.tooltip.cssClass&&i.classList.add(e.config.tooltip.cssClass),i.classList.add("apexcharts-theme-".concat(this.tConfig.theme)),e.globals.dom.elWrap.appendChild(i),e.globals.axisCharts){this.axesTooltip.drawXaxisTooltip(),this.axesTooltip.drawYaxisTooltip(),this.axesTooltip.setXCrosshairWidth(),this.axesTooltip.handleYCrosshair();var a=new G(this.ctx);this.xAxisTicksPositions=a.getXAxisTicksPositions()}if(!e.globals.comboCharts&&!this.tConfig.intersect&&"rangeBar"!==e.config.chart.type||this.tConfig.shared||(this.showOnIntersect=!0),0!==e.config.markers.size&&0!==e.globals.markers.largestSize||this.marker.drawDynamicPoints(this),e.globals.collapsedSeries.length!==e.globals.series.length){this.dataPointsDividedHeight=e.globals.gridHeight/e.globals.dataPoints,this.dataPointsDividedWidth=e.globals.gridWidth/e.globals.dataPoints,this.showTooltipTitle&&(this.tooltipTitle=document.createElement("div"),this.tooltipTitle.classList.add("apexcharts-tooltip-title"),this.tooltipTitle.style.fontFamily=this.tConfig.style.fontFamily||e.config.chart.fontFamily,this.tooltipTitle.style.fontSize=this.tConfig.style.fontSize,i.appendChild(this.tooltipTitle));var n=e.globals.series.length;(e.globals.xyCharts||e.globals.comboCharts)&&this.tConfig.shared&&(n=this.showOnIntersect?1:e.globals.series.length),this.legendLabels=e.globals.dom.baseEl.querySelectorAll(".apexcharts-legend-text"),this.ttItems=this.createTTElements(n),this.addSVGEvents()}}},{key:"createTTElements",value:function(t){for(var e=this,i=this.w,a=[],n=this.getElTooltip(),s=function(s){var r=document.createElement("div");r.classList.add("apexcharts-tooltip-series-group"),r.style.order=i.config.tooltip.inverseOrder?t-s:s+1,e.tConfig.shared&&e.tConfig.enabledOnSeries&&Array.isArray(e.tConfig.enabledOnSeries)&&e.tConfig.enabledOnSeries.indexOf(s)<0&&r.classList.add("apexcharts-tooltip-series-group-hidden");var o=document.createElement("span");o.classList.add("apexcharts-tooltip-marker"),o.style.backgroundColor=i.globals.colors[s],r.appendChild(o);var l=document.createElement("div");l.classList.add("apexcharts-tooltip-text"),l.style.fontFamily=e.tConfig.style.fontFamily||i.config.chart.fontFamily,l.style.fontSize=e.tConfig.style.fontSize,["y","goals","z"].forEach((function(t){var e=document.createElement("div");e.classList.add("apexcharts-tooltip-".concat(t,"-group"));var i=document.createElement("span");i.classList.add("apexcharts-tooltip-text-".concat(t,"-label")),e.appendChild(i);var a=document.createElement("span");a.classList.add("apexcharts-tooltip-text-".concat(t,"-value")),e.appendChild(a),l.appendChild(e)})),r.appendChild(l),n.appendChild(r),a.push(r)},r=0;r0&&this.addPathsEventListeners(p,d),this.tooltipUtil.hasBars()&&!this.tConfig.shared&&this.addDatapointEventsListeners(d)}}},{key:"drawFixedTooltipRect",value:function(){var t=this.w,e=this.getElTooltip(),i=e.getBoundingClientRect(),a=i.width+10,n=i.height+10,s=this.tConfig.fixed.offsetX,r=this.tConfig.fixed.offsetY,o=this.tConfig.fixed.position.toLowerCase();return o.indexOf("right")>-1&&(s=s+t.globals.svgWidth-a+10),o.indexOf("bottom")>-1&&(r=r+t.globals.svgHeight-n-10),e.style.left=s+"px",e.style.top=r+"px",{x:s,y:r,ttWidth:a,ttHeight:n}}},{key:"addDatapointEventsListeners",value:function(t){var e=this.w.globals.dom.baseEl.querySelectorAll(".apexcharts-series-markers .apexcharts-marker, .apexcharts-bar-area, .apexcharts-candlestick-area, .apexcharts-boxPlot-area, .apexcharts-rangebar-area");this.addPathsEventListeners(e,t)}},{key:"addPathsEventListeners",value:function(t,e){for(var i=this,a=function(a){var n={paths:t[a],tooltipEl:e.tooltipEl,tooltipY:e.tooltipY,tooltipX:e.tooltipX,elGrid:e.elGrid,hoverArea:e.hoverArea,ttItems:e.ttItems};["mousemove","mouseup","touchmove","mouseout","touchend"].map((function(e){return t[a].addEventListener(e,i.onSeriesHover.bind(i,n),{capture:!1,passive:!0})}))},n=0;n=100?this.seriesHover(t,e):(clearTimeout(this.seriesHoverTimeout),this.seriesHoverTimeout=setTimeout((function(){i.seriesHover(t,e)}),100-a))}},{key:"seriesHover",value:function(t,e){var i=this;this.lastHoverTime=Date.now();var a=[],n=this.w;n.config.chart.group&&(a=this.ctx.getGroupedCharts()),n.globals.axisCharts&&(n.globals.minX===-1/0&&n.globals.maxX===1/0||0===n.globals.dataPoints)||(a.length?a.forEach((function(a){var n=i.getElTooltip(a),s={paths:t.paths,tooltipEl:n,tooltipY:t.tooltipY,tooltipX:t.tooltipX,elGrid:t.elGrid,hoverArea:t.hoverArea,ttItems:a.w.globals.tooltip.ttItems};a.w.globals.minX===i.w.globals.minX&&a.w.globals.maxX===i.w.globals.maxX&&a.w.globals.tooltip.seriesHoverByContext({chartCtx:a,ttCtx:a.w.globals.tooltip,opt:s,e:e})})):this.seriesHoverByContext({chartCtx:this.ctx,ttCtx:this.w.globals.tooltip,opt:t,e:e}))}},{key:"seriesHoverByContext",value:function(t){var e=t.chartCtx,i=t.ttCtx,a=t.opt,n=t.e,s=e.w,r=this.getElTooltip();r&&(i.tooltipRect={x:0,y:0,ttWidth:r.getBoundingClientRect().width,ttHeight:r.getBoundingClientRect().height},i.e=n,!i.tooltipUtil.hasBars()||s.globals.comboCharts||i.isBarShared||this.tConfig.onDatasetHover.highlightDataSeries&&new F(e).toggleSeriesOnHover(n,n.target.parentNode),i.fixedTooltip&&i.drawFixedTooltipRect(),s.globals.axisCharts?i.axisChartsTooltips({e:n,opt:a,tooltipRect:i.tooltipRect}):i.nonAxisChartsTooltips({e:n,opt:a,tooltipRect:i.tooltipRect}))}},{key:"axisChartsTooltips",value:function(t){var e,i,a=t.e,n=t.opt,s=this.w,r=n.elGrid.getBoundingClientRect(),o="touchmove"===a.type?a.touches[0].clientX:a.clientX,l="touchmove"===a.type?a.touches[0].clientY:a.clientY;if(this.clientY=l,this.clientX=o,s.globals.capturedSeriesIndex=-1,s.globals.capturedDataPointIndex=-1,lr.top+r.height)this.handleMouseOut(n);else{if(Array.isArray(this.tConfig.enabledOnSeries)&&!s.config.tooltip.shared){var c=parseInt(n.paths.getAttribute("index"),10);if(this.tConfig.enabledOnSeries.indexOf(c)<0)return void this.handleMouseOut(n)}var d=this.getElTooltip(),h=this.getElXCrosshairs(),u=s.globals.xyCharts||"bar"===s.config.chart.type&&!s.globals.isBarHorizontal&&this.tooltipUtil.hasBars()&&this.tConfig.shared||s.globals.comboCharts&&this.tooltipUtil.hasBars();if("mousemove"===a.type||"touchmove"===a.type||"mouseup"===a.type){if(s.globals.collapsedSeries.length+s.globals.ancillaryCollapsedSeries.length===s.globals.series.length)return;null!==h&&h.classList.add("apexcharts-active");var p=this.yaxisTooltips.filter((function(t){return!0===t}));if(null!==this.ycrosshairs&&p.length&&this.ycrosshairs.classList.add("apexcharts-active"),u&&!this.showOnIntersect)this.handleStickyTooltip(a,o,l,n);else if("heatmap"===s.config.chart.type||"treemap"===s.config.chart.type){var f=this.intersect.handleHeatTreeTooltip({e:a,opt:n,x:e,y:i,type:s.config.chart.type});e=f.x,i=f.y,d.style.left=e+"px",d.style.top=i+"px"}else this.tooltipUtil.hasBars()&&this.intersect.handleBarTooltip({e:a,opt:n}),this.tooltipUtil.hasMarkers()&&this.intersect.handleMarkerTooltip({e:a,opt:n,x:e,y:i});if(this.yaxisTooltips.length)for(var g=0;gl.width?this.handleMouseOut(a):null!==o?this.handleStickyCapturedSeries(t,o,a,r):(this.tooltipUtil.isXoverlap(r)||n.globals.isBarHorizontal)&&this.create(t,this,0,r,a.ttItems)}},{key:"handleStickyCapturedSeries",value:function(t,e,i,a){var n=this.w;this.tConfig.shared||null!==n.globals.series[e][a]?void 0!==n.globals.series[e][a]?this.tConfig.shared&&this.tooltipUtil.isXoverlap(a)&&this.tooltipUtil.isInitialSeriesSameLen()?this.create(t,this,e,a,i.ttItems):this.create(t,this,e,a,i.ttItems,!1):this.tooltipUtil.isXoverlap(a)&&this.create(t,this,0,a,i.ttItems):this.handleMouseOut(i)}},{key:"deactivateHoverFilter",value:function(){for(var t=this.w,e=new C(this.ctx),i=t.globals.dom.Paper.select(".apexcharts-bar-area"),a=0;a5&&void 0!==arguments[5]?arguments[5]:null,r=this.w,o=e;"mouseup"===t.type&&this.markerClick(t,i,a),null===s&&(s=this.tConfig.shared);var l=this.tooltipUtil.hasMarkers(),c=this.tooltipUtil.getElBars();if(r.config.legend.tooltipHoverFormatter){var d=r.config.legend.tooltipHoverFormatter,h=Array.from(this.legendLabels);h.forEach((function(t){var e=t.getAttribute("data:default-text");t.innerHTML=decodeURIComponent(e)}));for(var u=0;u0?o.marker.enlargePoints(a):o.tooltipPosition.moveDynamicPointsOnHover(a)),this.tooltipUtil.hasBars()&&(this.barSeriesHeight=this.tooltipUtil.getBarsHeight(c),this.barSeriesHeight>0)){var m=new C(this.ctx),x=r.globals.dom.Paper.select(".apexcharts-bar-area[j='".concat(a,"']"));this.deactivateHoverFilter(),this.tooltipPosition.moveStickyTooltipOverBars(a);for(var b=0;bn.globals.gridHeight&&(p=n.globals.gridHeight-m)),{bcx:c,bcy:l,dataLabelsX:e,dataLabelsY:p,totalDataLabelsX:a,totalDataLabelsY:i,totalDataLabelsAnchor:"middle"}}},{key:"calculateBarsDataLabelsPosition",value:function(t){var e=this.w,i=t.x,a=t.i,n=t.j,s=t.realIndex,r=t.bcy,o=t.barHeight,l=t.barWidth,c=t.textRects,d=t.dataLabelsX,h=t.strokeWidth,u=t.dataLabelsConfig,p=t.barDataLabelsConfig,f=t.barTotalDataLabelsConfig,g=t.offX,v=t.offY,m=e.globals.gridHeight/e.globals.dataPoints;l=Math.abs(l);var x,b,y=r-(this.barCtx.isRangeBar?0:m)+o/2+c.height/2+v-3,w="start",S=this.barCtx.series[a][n]<0,k=i;switch(this.barCtx.isReversed&&(k=i+l-(S?2*l:0),i=e.globals.gridWidth-l),p.position){case"center":d=S?k+l/2-g:Math.max(c.width/2,k-l/2)+g;break;case"bottom":d=S?k+l-h-Math.round(c.width/2)-g:k-l+h+Math.round(c.width/2)+g;break;case"top":d=S?k-h+Math.round(c.width/2)-g:k-h-Math.round(c.width/2)+g}if(this.barCtx.lastActiveBarSerieIndex===s&&f.enabled){var A=new C(this.barCtx.ctx).getTextRects(this.getStackedTotalDataLabel({realIndex:s,j:n}),u.fontSize);S?(x=k-h+Math.round(A.width/2)-g-f.offsetX-15,w="end"):x=k-h-Math.round(A.width/2)+g+f.offsetX+15,b=y+f.offsetY}return e.config.chart.stacked||(d<0?d=d+c.width+h:d+c.width/2>e.globals.gridWidth&&(d=e.globals.gridWidth-c.width-h)),{bcx:i,bcy:r,dataLabelsX:d,dataLabelsY:y,totalDataLabelsX:x,totalDataLabelsY:b,totalDataLabelsAnchor:w}}},{key:"drawCalculatedDataLabels",value:function(t){var e=t.x,i=t.y,a=t.val,n=t.i,r=t.j,o=t.textRects,l=t.barHeight,c=t.barWidth,d=t.dataLabelsConfig,h=this.w,u="rotate(0)";"vertical"===h.config.plotOptions.bar.dataLabels.orientation&&(u="rotate(-90, ".concat(e,", ").concat(i,")"));var p=new $(this.barCtx.ctx),f=new C(this.barCtx.ctx),g=d.formatter,v=null,m=h.globals.collapsedSeriesIndices.indexOf(n)>-1;if(d.enabled&&!m){v=f.group({class:"apexcharts-data-labels",transform:u});var x="";void 0!==a&&(x=g(a,s(s({},h),{},{seriesIndex:n,dataPointIndex:r,w:h})));var b=h.globals.series[n][r]<0,y=h.config.plotOptions.bar.dataLabels.position;"vertical"===h.config.plotOptions.bar.dataLabels.orientation&&("top"===y&&(d.textAnchor=b?"end":"start"),"center"===y&&(d.textAnchor="middle"),"bottom"===y&&(d.textAnchor=b?"end":"start")),this.barCtx.isRangeBar&&this.barCtx.barOptions.dataLabels.hideOverflowingLabels&&cMath.abs(c)&&(x=""):o.height/1.6>Math.abs(l)&&(x=""));var w=s({},d);this.barCtx.isHorizontal&&a<0&&("start"===d.textAnchor?w.textAnchor="end":"end"===d.textAnchor&&(w.textAnchor="start")),p.plotDataLabelsText({x:e,y:i,text:x,i:n,j:r,parent:v,dataLabelsConfig:w,alwaysDrawDataLabel:!0,offsetCorrection:!0})}return v}},{key:"drawTotalDataLabels",value:function(t){var e,i=t.x,a=t.y,n=t.val,s=t.realIndex,r=t.textAnchor,o=t.barTotalDataLabelsConfig,l=new C(this.barCtx.ctx);return o.enabled&&void 0!==i&&void 0!==a&&this.barCtx.lastActiveBarSerieIndex===s&&(e=l.drawText({x:i,y:a,foreColor:o.style.color,text:n,textAnchor:r,fontFamily:o.style.fontFamily,fontSize:o.style.fontSize,fontWeight:o.style.fontWeight})),e}}]),t}(),Ct=function(){function t(e){o(this,t),this.w=e.w,this.barCtx=e}return c(t,[{key:"initVariables",value:function(t){var e=this.w;this.barCtx.series=t,this.barCtx.totalItems=0,this.barCtx.seriesLen=0,this.barCtx.visibleI=-1,this.barCtx.visibleItems=1;for(var i=0;i0&&(this.barCtx.seriesLen=this.barCtx.seriesLen+1,this.barCtx.totalItems+=t[i].length),e.globals.isXNumeric)for(var a=0;ae.globals.minX&&e.globals.seriesX[i][a]0&&(a=l.globals.minXDiff/h),(s=a/this.barCtx.seriesLen*parseInt(this.barCtx.barOptions.columnWidth,10)/100)<1&&(s=1)}r=l.globals.gridHeight-this.barCtx.baseLineY[this.barCtx.yaxisIndex]-(this.barCtx.isReversed?l.globals.gridHeight:0)+(this.barCtx.isReversed?2*this.barCtx.baseLineY[this.barCtx.yaxisIndex]:0),t=l.globals.padHorizontal+(a-s*this.barCtx.seriesLen)/2}return{x:t,y:e,yDivision:i,xDivision:a,barHeight:n,barWidth:s,zeroH:r,zeroW:o}}},{key:"getPathFillColor",value:function(t,e,i,a){var n,s,r,o,l=this.w,c=new H(this.barCtx.ctx),d=null,h=this.barCtx.barOptions.distributed?i:e;return this.barCtx.barOptions.colors.ranges.length>0&&this.barCtx.barOptions.colors.ranges.map((function(a){t[e][i]>=a.from&&t[e][i]<=a.to&&(d=a.color)})),l.config.series[e].data[i]&&l.config.series[e].data[i].fillColor&&(d=l.config.series[e].data[i].fillColor),c.fillPath({seriesNumber:this.barCtx.barOptions.distributed?h:a,dataPointIndex:i,color:d,value:t[e][i],fillConfig:null===(n=l.config.series[e].data[i])||void 0===n?void 0:n.fill,fillType:null!==(s=l.config.series[e].data[i])&&void 0!==s&&null!==(r=s.fill)&&void 0!==r&&r.type?null===(o=l.config.series[e].data[i])||void 0===o?void 0:o.fill.type:l.config.fill.type})}},{key:"getStrokeWidth",value:function(t,e,i){var a=0,n=this.w;return void 0===this.barCtx.series[t][e]||null===this.barCtx.series[t][e]?this.barCtx.isNullValue=!0:this.barCtx.isNullValue=!1,n.config.stroke.show&&(this.barCtx.isNullValue||(a=Array.isArray(this.barCtx.strokeWidth)?this.barCtx.strokeWidth[i]:this.barCtx.strokeWidth)),a}},{key:"shouldApplyRadius",value:function(t){var e=this.w,i=!1;return e.config.plotOptions.bar.borderRadius>0&&(e.config.chart.stacked&&"last"===e.config.plotOptions.bar.borderRadiusWhenStacked?this.barCtx.lastActiveBarSerieIndex===t&&(i=!0):i=!0),i}},{key:"barBackground",value:function(t){var e=t.j,i=t.i,a=t.x1,n=t.x2,s=t.y1,r=t.y2,o=t.elSeries,l=this.w,c=new C(this.barCtx.ctx),d=new F(this.barCtx.ctx).getActiveConfigSeriesIndex();if(this.barCtx.barOptions.colors.backgroundBarColors.length>0&&d===i){e>=this.barCtx.barOptions.colors.backgroundBarColors.length&&(e%=this.barCtx.barOptions.colors.backgroundBarColors.length);var h=this.barCtx.barOptions.colors.backgroundBarColors[e],u=c.drawRect(void 0!==a?a:0,void 0!==s?s:0,void 0!==n?n:l.globals.gridWidth,void 0!==r?r:l.globals.gridHeight,this.barCtx.barOptions.colors.backgroundBarRadius,h,this.barCtx.barOptions.colors.backgroundBarOpacity);o.add(u),u.node.classList.add("apexcharts-backgroundBar")}}},{key:"getColumnPaths",value:function(t){var e,i=t.barWidth,a=t.barXPosition,n=t.y1,s=t.y2,r=t.strokeWidth,o=t.realIndex,l=t.i,c=t.j,d=t.w,h=new C(this.barCtx.ctx);(r=Array.isArray(r)?r[o]:r)||(r=0);var u=i,p=a;null!==(e=d.config.series[o].data[c])&&void 0!==e&&e.columnWidthOffset&&(p=a-d.config.series[o].data[c].columnWidthOffset/2,u=i+d.config.series[o].data[c].columnWidthOffset);var f=p,g=p+u;n+=.001,s+=.001;var v=h.move(f,n),m=h.move(f,n),x=h.line(g-r,n);return d.globals.previousPaths.length>0&&(m=this.barCtx.getPreviousPath(o,c,!1)),v=v+h.line(f,s)+h.line(g-r,s)+h.line(g-r,n)+("around"===d.config.plotOptions.bar.borderRadiusApplication?" Z":" z"),m=m+h.line(f,n)+x+x+x+x+x+h.line(f,n)+("around"===d.config.plotOptions.bar.borderRadiusApplication?" Z":" z"),this.shouldApplyRadius(o)&&(v=h.roundPathCorners(v,d.config.plotOptions.bar.borderRadius)),d.config.chart.stacked&&(this.barCtx.yArrj.push(s),this.barCtx.yArrjF.push(Math.abs(n-s)),this.barCtx.yArrjVal.push(this.barCtx.series[l][c])),{pathTo:v,pathFrom:m}}},{key:"getBarpaths",value:function(t){var e,i=t.barYPosition,a=t.barHeight,n=t.x1,s=t.x2,r=t.strokeWidth,o=t.realIndex,l=t.i,c=t.j,d=t.w,h=new C(this.barCtx.ctx);(r=Array.isArray(r)?r[o]:r)||(r=0);var u=i,p=a;null!==(e=d.config.series[o].data[c])&&void 0!==e&&e.barHeightOffset&&(u=i-d.config.series[o].data[c].barHeightOffset/2,p=a+d.config.series[o].data[c].barHeightOffset);var f=u,g=u+p;n+=.001,s+=.001;var v=h.move(n,f),m=h.move(n,f);d.globals.previousPaths.length>0&&(m=this.barCtx.getPreviousPath(o,c,!1));var x=h.line(n,g-r);return v=v+h.line(s,f)+h.line(s,g-r)+x+("around"===d.config.plotOptions.bar.borderRadiusApplication?" Z":" z"),m=m+h.line(n,f)+x+x+x+x+x+h.line(n,f)+("around"===d.config.plotOptions.bar.borderRadiusApplication?" Z":" z"),this.shouldApplyRadius(o)&&(v=h.roundPathCorners(v,d.config.plotOptions.bar.borderRadius)),d.config.chart.stacked&&(this.barCtx.xArrj.push(s),this.barCtx.xArrjF.push(Math.abs(n-s)),this.barCtx.xArrjVal.push(this.barCtx.series[l][c])),{pathTo:v,pathFrom:m}}},{key:"checkZeroSeries",value:function(t){for(var e=t.series,i=this.w,a=0;a=0;r--)this.barCtx.zeroSerieses.indexOf(r)>-1&&r===this.radiusOnSeriesNumber&&(this.barCtx.radiusOnSeriesNumber-=1);for(var o=e.length-1;o>=0;o--)i.globals.collapsedSeriesIndices.indexOf(this.barCtx.radiusOnSeriesNumber)>-1&&(this.barCtx.radiusOnSeriesNumber-=1)}},{key:"getXForValue",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]&&!arguments[2]?null:e;return null!=t&&(i=e+t/this.barCtx.invertedYRatio-2*(this.barCtx.isReversed?t/this.barCtx.invertedYRatio:0)),i}},{key:"getYForValue",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]&&!arguments[2]?null:e;return null!=t&&(i=e-t/this.barCtx.yRatio[this.barCtx.yaxisIndex]+2*(this.barCtx.isReversed?t/this.barCtx.yRatio[this.barCtx.yaxisIndex]:0)),i}},{key:"getGoalValues",value:function(t,e,i,a,n){var s=this,r=this.w,o=[];return r.globals.seriesGoals[a]&&r.globals.seriesGoals[a][n]&&Array.isArray(r.globals.seriesGoals[a][n])&&r.globals.seriesGoals[a][n].forEach((function(a){var n;o.push((d(n={},t,"x"===t?s.getXForValue(a.value,e,!1):s.getYForValue(a.value,i,!1)),d(n,"attrs",a),n))})),o}},{key:"drawGoalLine",value:function(t){var e=t.barXPosition,i=t.barYPosition,a=t.goalX,n=t.goalY,s=t.barWidth,r=t.barHeight,o=new C(this.barCtx.ctx),l=o.group({className:"apexcharts-bar-goals-groups"}),c=null;return this.barCtx.isHorizontal?Array.isArray(a)&&a.forEach((function(t){var e=void 0!==t.attrs.strokeHeight?t.attrs.strokeHeight:r/2,a=i+e+r/2;c=o.drawLine(t.x,a-2*e,t.x,a,t.attrs.strokeColor?t.attrs.strokeColor:void 0,t.attrs.strokeDashArray,t.attrs.strokeWidth?t.attrs.strokeWidth:2,t.attrs.strokeLineCap),l.add(c)})):Array.isArray(n)&&n.forEach((function(t){var i=void 0!==t.attrs.strokeWidth?t.attrs.strokeWidth:s/2,a=e+i+s/2;c=o.drawLine(a-2*i,t.y,a,t.y,t.attrs.strokeColor?t.attrs.strokeColor:void 0,t.attrs.strokeDashArray,t.attrs.strokeHeight?t.attrs.strokeHeight:2,t.attrs.strokeLineCap),l.add(c)})),l}}]),t}(),St=function(){function t(e,i){o(this,t),this.ctx=e,this.w=e.w;var a=this.w;this.barOptions=a.config.plotOptions.bar,this.isHorizontal=this.barOptions.horizontal,this.strokeWidth=a.config.stroke.width,this.isNullValue=!1,this.isRangeBar=a.globals.seriesRange.length&&this.isHorizontal,this.xyRatios=i,null!==this.xyRatios&&(this.xRatio=i.xRatio,this.initialXRatio=i.initialXRatio,this.yRatio=i.yRatio,this.invertedXRatio=i.invertedXRatio,this.invertedYRatio=i.invertedYRatio,this.baseLineY=i.baseLineY,this.baseLineInvertedY=i.baseLineInvertedY),this.yaxisIndex=0,this.seriesLen=0;var n=new F(this.ctx);this.lastActiveBarSerieIndex=n.getActiveConfigSeriesIndex("desc",["bar","column"]);var s=n.getBarSeriesIndices(),r=new S(this.ctx);this.stackedSeriesTotals=r.getStackedSeriesTotals(this.w.config.series.map((function(t,e){return-1===s.indexOf(e)?e:-1})).filter((function(t){return-1!==t}))),this.barHelpers=new Ct(this)}return c(t,[{key:"draw",value:function(t,e){var i=this.w,a=new C(this.ctx),n=new S(this.ctx,i);t=n.getLogSeries(t),this.series=t,this.yRatio=n.getLogYRatios(this.yRatio),this.barHelpers.initVariables(t);var r=a.group({class:"apexcharts-bar-series apexcharts-plot-series"});i.config.dataLabels.enabled&&this.totalItems>this.barOptions.dataLabels.maxItems&&console.warn("WARNING: DataLabels are enabled but there are too many to display. This may cause performance issue when rendering.");for(var o=0,l=0;o0&&(this.visibleI=this.visibleI+1);var y=0,w=0;this.yRatio.length>1&&(this.yaxisIndex=m),this.isReversed=i.config.yaxis[this.yaxisIndex]&&i.config.yaxis[this.yaxisIndex].reversed;var k=this.barHelpers.initialPositions();f=k.y,y=k.barHeight,d=k.yDivision,u=k.zeroW,p=k.x,w=k.barWidth,c=k.xDivision,h=k.zeroH,this.horizontal||v.push(p+w/2);for(var A=a.group({class:"apexcharts-datalabels","data:realIndex":m}),P=a.group({class:"apexcharts-bar-goals-markers",style:"pointer-events: none"}),T=0;T0&&v.push(p+w/2),g.push(f);var I=this.barHelpers.getPathFillColor(t,o,T,m);this.renderSeries({realIndex:m,pathFill:I,j:T,i:o,pathFrom:O.pathFrom,pathTo:O.pathTo,strokeWidth:E,elSeries:x,x:p,y:f,series:t,barHeight:y,barWidth:w,elDataLabelsWrap:A,elGoalsMarkers:P,visibleSeries:this.visibleI,type:"bar"})}i.globals.seriesXvalues[m]=v,i.globals.seriesYvalues[m]=g,r.add(x)}return r}},{key:"renderSeries",value:function(t){var e=t.realIndex,i=t.pathFill,a=t.lineFill,n=t.j,s=t.i,r=t.pathFrom,o=t.pathTo,l=t.strokeWidth,c=t.elSeries,d=t.x,h=t.y,u=t.y1,p=t.y2,f=t.series,g=t.barHeight,v=t.barWidth,m=t.barYPosition,x=t.elDataLabelsWrap,b=t.elGoalsMarkers,y=t.visibleSeries,S=t.type,k=this.w,A=new C(this.ctx);a||(a=this.barOptions.distributed?k.globals.stroke.colors[n]:k.globals.stroke.colors[e]),k.config.series[s].data[n]&&k.config.series[s].data[n].strokeColor&&(a=k.config.series[s].data[n].strokeColor),this.isNullValue&&(i="none");var P=n/k.config.chart.animations.animateGradually.delay*(k.config.chart.animations.speed/k.globals.dataPoints)/2.4,T=A.renderPaths({i:s,j:n,realIndex:e,pathFrom:r,pathTo:o,stroke:a,strokeWidth:l,strokeLineCap:k.config.stroke.lineCap,fill:i,animationDelay:P,initialSpeed:k.config.chart.animations.speed,dataChangeSpeed:k.config.chart.animations.dynamicAnimation.speed,className:"apexcharts-".concat(S,"-area")});T.attr("clip-path","url(#gridRectMask".concat(k.globals.cuid,")"));var E=k.config.forecastDataPoints;E.count>0&&n>=k.globals.dataPoints-E.count&&(T.node.setAttribute("stroke-dasharray",E.dashArray),T.node.setAttribute("stroke-width",E.strokeWidth),T.node.setAttribute("fill-opacity",E.fillOpacity)),void 0!==u&&void 0!==p&&(T.attr("data-range-y1",u),T.attr("data-range-y2",p)),new w(this.ctx).setSelectionFilter(T,e,n),c.add(T);var O=new wt(this).handleBarDataLabels({x:d,y:h,y1:u,y2:p,i:s,j:n,series:f,realIndex:e,barHeight:g,barWidth:v,barYPosition:m,renderedPath:T,visibleSeries:y});return null!==O.dataLabels&&x.add(O.dataLabels),O.totalDataLabels&&x.add(O.totalDataLabels),c.add(x),b&&c.add(b),c}},{key:"drawBarPaths",value:function(t){var e=t.indexes,i=t.barHeight,a=t.strokeWidth,n=t.zeroW,s=t.x,r=t.y,o=t.yDivision,l=t.elSeries,c=this.w,d=e.i,h=e.j;c.globals.isXNumeric&&(r=(c.globals.seriesX[d][h]-c.globals.minX)/this.invertedXRatio-i);var u=r+i*this.visibleI;s=this.barHelpers.getXForValue(this.series[d][h],n);var p=this.barHelpers.getBarpaths({barYPosition:u,barHeight:i,x1:n,x2:s,strokeWidth:a,series:this.series,realIndex:e.realIndex,i:d,j:h,w:c});return c.globals.isXNumeric||(r+=o),this.barHelpers.barBackground({j:h,i:d,y1:u-i*this.visibleI,y2:i*this.seriesLen,elSeries:l}),{pathTo:p.pathTo,pathFrom:p.pathFrom,x:s,y:r,goalX:this.barHelpers.getGoalValues("x",n,null,d,h),barYPosition:u}}},{key:"drawColumnPaths",value:function(t){var e=t.indexes,i=t.x,a=t.y,n=t.xDivision,s=t.barWidth,r=t.zeroH,o=t.strokeWidth,l=t.elSeries,c=this.w,d=e.realIndex,h=e.i,u=e.j,p=e.bc;if(c.globals.isXNumeric){var f=d;c.globals.seriesX[d].length||(f=c.globals.maxValsInArrayIndex),i=(c.globals.seriesX[f][u]-c.globals.minX)/this.xRatio-s*this.seriesLen/2}var g=i+s*this.visibleI;a=this.barHelpers.getYForValue(this.series[h][u],r);var v=this.barHelpers.getColumnPaths({barXPosition:g,barWidth:s,y1:r,y2:a,strokeWidth:o,series:this.series,realIndex:e.realIndex,i:h,j:u,w:c});return c.globals.isXNumeric||(i+=n),this.barHelpers.barBackground({bc:p,j:u,i:h,x1:g-o/2-s*this.visibleI,x2:s*this.seriesLen+o/2,elSeries:l}),{pathTo:v.pathTo,pathFrom:v.pathFrom,x:i,y:a,goalY:this.barHelpers.getGoalValues("y",null,r,h,u),barXPosition:g}}},{key:"getPreviousPath",value:function(t,e){for(var i,a=this.w,n=0;n0&&parseInt(s.realIndex,10)===parseInt(t,10)&&void 0!==a.globals.previousPaths[n].paths[e]&&(i=a.globals.previousPaths[n].paths[e].d)}return i}}]),t}(),kt=function(t){h(i,t);var e=g(i);function i(){return o(this,i),e.apply(this,arguments)}return c(i,[{key:"draw",value:function(t,e){var i=this,a=this.w;this.graphics=new C(this.ctx),this.bar=new St(this.ctx,this.xyRatios);var n=new S(this.ctx,a);t=n.getLogSeries(t),this.yRatio=n.getLogYRatios(this.yRatio),this.barHelpers.initVariables(t),"100%"===a.config.chart.stackType&&(t=a.globals.seriesPercent.slice()),this.series=t,this.totalItems=0,this.prevY=[],this.prevX=[],this.prevYF=[],this.prevXF=[],this.prevYVal=[],this.prevXVal=[],this.xArrj=[],this.xArrjF=[],this.xArrjVal=[],this.yArrj=[],this.yArrjF=[],this.yArrjVal=[];for(var r=0;r0&&(this.totalItems+=t[r].length);for(var o=this.graphics.group({class:"apexcharts-bar-series apexcharts-plot-series"}),l=0,c=0,d=function(n,r){var d=void 0,h=void 0,u=void 0,p=void 0,f=[],g=[],v=a.globals.comboCharts?e[n]:n;i.yRatio.length>1&&(i.yaxisIndex=v),i.isReversed=a.config.yaxis[i.yaxisIndex]&&a.config.yaxis[i.yaxisIndex].reversed;var m=i.graphics.group({class:"apexcharts-series",seriesName:b.escapeString(a.globals.seriesNames[v]),rel:n+1,"data:realIndex":v});i.ctx.series.addCollapsedClassToSeries(m,v);var x=i.graphics.group({class:"apexcharts-datalabels","data:realIndex":v}),y=i.graphics.group({class:"apexcharts-bar-goals-markers",style:"pointer-events: none"}),w=0,C=0,S=i.initialPositions(l,c,d,h,u,p);c=S.y,w=S.barHeight,h=S.yDivision,p=S.zeroW,l=S.x,C=S.barWidth,d=S.xDivision,u=S.zeroH,i.yArrj=[],i.yArrjF=[],i.yArrjVal=[],i.xArrj=[],i.xArrjF=[],i.xArrjVal=[],1===i.prevY.length&&i.prevY[0].every((function(t){return isNaN(t)}))&&(i.prevY[0]=i.prevY[0].map((function(t){return u})),i.prevYF[0]=i.prevYF[0].map((function(t){return 0})));for(var k=0;k1?(i=l.globals.minXDiff/this.xRatio)*parseInt(this.barOptions.columnWidth,10)/100:o*parseInt(l.config.plotOptions.bar.columnWidth,10)/100,n=l.globals.gridHeight-this.baseLineY[this.yaxisIndex]-(this.isReversed?l.globals.gridHeight:0)+(this.isReversed?2*this.baseLineY[this.yaxisIndex]:0),t=l.globals.padHorizontal+(i-o)/2),{x:t,y:e,yDivision:a,xDivision:i,barHeight:r,barWidth:o,zeroH:n,zeroW:s}}},{key:"drawStackedBarPaths",value:function(t){for(var e,i=t.indexes,a=t.barHeight,n=t.strokeWidth,s=t.zeroW,r=t.x,o=t.y,l=t.yDivision,c=t.elSeries,d=this.w,h=o,u=i.i,p=i.j,f=0,g=0;g0){var v=s;this.prevXVal[u-1][p]<0?v=this.series[u][p]>=0?this.prevX[u-1][p]+f-2*(this.isReversed?f:0):this.prevX[u-1][p]:this.prevXVal[u-1][p]>=0&&(v=this.series[u][p]>=0?this.prevX[u-1][p]:this.prevX[u-1][p]-f+2*(this.isReversed?f:0)),e=v}else e=s;r=null===this.series[u][p]?e:e+this.series[u][p]/this.invertedYRatio-2*(this.isReversed?this.series[u][p]/this.invertedYRatio:0);var m=this.barHelpers.getBarpaths({barYPosition:h,barHeight:a,x1:e,x2:r,strokeWidth:n,series:this.series,realIndex:i.realIndex,i:u,j:p,w:d});return this.barHelpers.barBackground({j:p,i:u,y1:h,y2:a,elSeries:c}),o+=l,{pathTo:m.pathTo,pathFrom:m.pathFrom,goalX:this.barHelpers.getGoalValues("x",s,null,u,p),barYPosition:h,x:r,y:o}}},{key:"drawStackedColumnPaths",value:function(t){var e=t.indexes,i=t.x,a=t.y,n=t.xDivision,s=t.barWidth,r=t.zeroH;t.strokeWidth;var o=t.elSeries,l=this.w,c=e.i,d=e.j,h=e.bc;if(l.globals.isXNumeric){var u=l.globals.seriesX[c][d];u||(u=0),i=(u-l.globals.minX)/this.xRatio-s/2}for(var p,f=i,g=0,v=0;v0&&!l.globals.isXNumeric||c>0&&l.globals.isXNumeric&&l.globals.seriesX[c-1][d]===l.globals.seriesX[c][d]){var m,x,b=Math.min(this.yRatio.length+1,c+1);if(void 0!==this.prevY[c-1])for(var y=1;y=0?x-g+2*(this.isReversed?g:0):x;break}if(this.prevYVal[c-w][d]>=0){m=this.series[c][d]>=0?x:x+g-2*(this.isReversed?g:0);break}}void 0===m&&(m=l.globals.gridHeight),p=this.prevYF[0].every((function(t){return 0===t}))&&this.prevYF.slice(1,c).every((function(t){return t.every((function(t){return isNaN(t)}))}))?r:m}else p=r;a=p-this.series[c][d]/this.yRatio[this.yaxisIndex]+2*(this.isReversed?this.series[c][d]/this.yRatio[this.yaxisIndex]:0);var C=this.barHelpers.getColumnPaths({barXPosition:f,barWidth:s,y1:p,y2:a,yRatio:this.yRatio[this.yaxisIndex],strokeWidth:this.strokeWidth,series:this.series,realIndex:e.realIndex,i:c,j:d,w:l});return this.barHelpers.barBackground({bc:h,j:d,i:c,x1:f,x2:s,elSeries:o}),i+=n,{pathTo:C.pathTo,pathFrom:C.pathFrom,goalY:this.barHelpers.getGoalValues("y",null,r,c,d),barXPosition:f,x:l.globals.isXNumeric?i-n:i,y:a}}}]),i}(St),At=function(t){h(i,t);var e=g(i);function i(){return o(this,i),e.apply(this,arguments)}return c(i,[{key:"draw",value:function(t,e){var i=this,a=this.w,n=new C(this.ctx),r=new H(this.ctx);this.candlestickOptions=this.w.config.plotOptions.candlestick,this.boxOptions=this.w.config.plotOptions.boxPlot,this.isHorizontal=a.config.plotOptions.bar.horizontal;var o=new S(this.ctx,a);t=o.getLogSeries(t),this.series=t,this.yRatio=o.getLogYRatios(this.yRatio),this.barHelpers.initVariables(t);for(var l=n.group({class:"apexcharts-".concat(a.config.chart.type,"-series apexcharts-plot-series")}),c=function(o){i.isBoxPlot="boxPlot"===a.config.chart.type||"boxPlot"===a.config.series[o].type;var c,d,h,u,p,f,g=void 0,v=void 0,m=[],x=[],y=a.globals.comboCharts?e[o]:o,w=n.group({class:"apexcharts-series",seriesName:b.escapeString(a.globals.seriesNames[y]),rel:o+1,"data:realIndex":y});i.ctx.series.addCollapsedClassToSeries(w,y),t[o].length>0&&(i.visibleI=i.visibleI+1),i.yRatio.length>1&&(i.yaxisIndex=y);var C=i.barHelpers.initialPositions();v=C.y,p=C.barHeight,d=C.yDivision,u=C.zeroW,g=C.x,f=C.barWidth,c=C.xDivision,h=C.zeroH,x.push(g+f/2);for(var S=n.group({class:"apexcharts-datalabels","data:realIndex":y}),k=function(e){var n=i.barHelpers.getStrokeWidth(o,e,y),l=null,b={indexes:{i:o,j:e,realIndex:y},x:g,y:v,strokeWidth:n,elSeries:w};l=i.isHorizontal?i.drawHorizontalBoxPaths(s(s({},b),{},{yDivision:d,barHeight:p,zeroW:u})):i.drawVerticalBoxPaths(s(s({},b),{},{xDivision:c,barWidth:f,zeroH:h})),v=l.y,g=l.x,e>0&&x.push(g+f/2),m.push(v),l.pathTo.forEach((function(s,c){var d=!i.isBoxPlot&&i.candlestickOptions.wick.useFillColor?l.color[c]:a.globals.stroke.colors[o],h=r.fillPath({seriesNumber:y,dataPointIndex:e,color:l.color[c],value:t[o][e]});i.renderSeries({realIndex:y,pathFill:h,lineFill:d,j:e,i:o,pathFrom:l.pathFrom,pathTo:s,strokeWidth:n,elSeries:w,x:g,y:v,series:t,barHeight:p,barWidth:f,elDataLabelsWrap:S,visibleSeries:i.visibleI,type:a.config.chart.type})}))},A=0;Am.c&&(h=!1);var y=Math.min(m.o,m.c),w=Math.max(m.o,m.c),S=m.m;o.globals.isXNumeric&&(i=(o.globals.seriesX[v][d]-o.globals.minX)/this.xRatio-n/2);var k=i+n*this.visibleI;void 0===this.series[c][d]||null===this.series[c][d]?(y=s,w=s):(y=s-y/g,w=s-w/g,x=s-m.h/g,b=s-m.l/g,S=s-m.m/g);var A=l.move(k,s),P=l.move(k+n/2,y);return o.globals.previousPaths.length>0&&(P=this.getPreviousPath(v,d,!0)),A=this.isBoxPlot?[l.move(k,y)+l.line(k+n/2,y)+l.line(k+n/2,x)+l.line(k+n/4,x)+l.line(k+n-n/4,x)+l.line(k+n/2,x)+l.line(k+n/2,y)+l.line(k+n,y)+l.line(k+n,S)+l.line(k,S)+l.line(k,y+r/2),l.move(k,S)+l.line(k+n,S)+l.line(k+n,w)+l.line(k+n/2,w)+l.line(k+n/2,b)+l.line(k+n-n/4,b)+l.line(k+n/4,b)+l.line(k+n/2,b)+l.line(k+n/2,w)+l.line(k,w)+l.line(k,S)+"z"]:[l.move(k,w)+l.line(k+n/2,w)+l.line(k+n/2,x)+l.line(k+n/2,w)+l.line(k+n,w)+l.line(k+n,y)+l.line(k+n/2,y)+l.line(k+n/2,b)+l.line(k+n/2,y)+l.line(k,y)+l.line(k,w-r/2)],P+=l.move(k,y),o.globals.isXNumeric||(i+=a),{pathTo:A,pathFrom:P,x:i,y:w,barXPosition:k,color:this.isBoxPlot?f:h?[u]:[p]}}},{key:"drawHorizontalBoxPaths",value:function(t){var e=t.indexes;t.x;var i=t.y,a=t.yDivision,n=t.barHeight,s=t.zeroW,r=t.strokeWidth,o=this.w,l=new C(this.ctx),c=e.i,d=e.j,h=this.boxOptions.colors.lower;this.isBoxPlot&&(h=[this.boxOptions.colors.lower,this.boxOptions.colors.upper]);var u=this.invertedYRatio,p=e.realIndex,f=this.getOHLCValue(p,d),g=s,v=s,m=Math.min(f.o,f.c),x=Math.max(f.o,f.c),b=f.m;o.globals.isXNumeric&&(i=(o.globals.seriesX[p][d]-o.globals.minX)/this.invertedXRatio-n/2);var y=i+n*this.visibleI;void 0===this.series[c][d]||null===this.series[c][d]?(m=s,x=s):(m=s+m/u,x=s+x/u,g=s+f.h/u,v=s+f.l/u,b=s+f.m/u);var w=l.move(s,y),S=l.move(m,y+n/2);return o.globals.previousPaths.length>0&&(S=this.getPreviousPath(p,d,!0)),w=[l.move(m,y)+l.line(m,y+n/2)+l.line(g,y+n/2)+l.line(g,y+n/2-n/4)+l.line(g,y+n/2+n/4)+l.line(g,y+n/2)+l.line(m,y+n/2)+l.line(m,y+n)+l.line(b,y+n)+l.line(b,y)+l.line(m+r/2,y),l.move(b,y)+l.line(b,y+n)+l.line(x,y+n)+l.line(x,y+n/2)+l.line(v,y+n/2)+l.line(v,y+n-n/4)+l.line(v,y+n/4)+l.line(v,y+n/2)+l.line(x,y+n/2)+l.line(x,y)+l.line(b,y)+"z"],S+=l.move(m,y),o.globals.isXNumeric||(i+=a),{pathTo:w,pathFrom:S,x:x,y:i,barYPosition:y,color:h}}},{key:"getOHLCValue",value:function(t,e){var i=this.w;return{o:this.isBoxPlot?i.globals.seriesCandleH[t][e]:i.globals.seriesCandleO[t][e],h:this.isBoxPlot?i.globals.seriesCandleO[t][e]:i.globals.seriesCandleH[t][e],m:i.globals.seriesCandleM[t][e],l:this.isBoxPlot?i.globals.seriesCandleC[t][e]:i.globals.seriesCandleL[t][e],c:this.isBoxPlot?i.globals.seriesCandleL[t][e]:i.globals.seriesCandleC[t][e]}}}]),i}(St),Pt=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"checkColorRange",value:function(){var t=this.w,e=!1,i=t.config.plotOptions[t.config.chart.type];return i.colorScale.ranges.length>0&&i.colorScale.ranges.map((function(t,i){t.from<=0&&(e=!0)})),e}},{key:"getShadeColor",value:function(t,e,i,a){var n=this.w,s=1,r=n.config.plotOptions[t].shadeIntensity,o=this.determineColor(t,e,i);n.globals.hasNegs||a?s=n.config.plotOptions[t].reverseNegativeShade?o.percent<0?o.percent/100*(1.25*r):(1-o.percent/100)*(1.25*r):o.percent<=0?1-(1+o.percent/100)*r:(1-o.percent/100)*r:(s=1-o.percent/100,"treemap"===t&&(s=(1-o.percent/100)*(1.25*r)));var l=o.color,c=new b;return n.config.plotOptions[t].enableShades&&(l="dark"===this.w.config.theme.mode?b.hexToRgba(c.shadeColor(-1*s,o.color),n.config.fill.opacity):b.hexToRgba(c.shadeColor(s,o.color),n.config.fill.opacity)),{color:l,colorProps:o}}},{key:"determineColor",value:function(t,e,i){var a=this.w,n=a.globals.series[e][i],s=a.config.plotOptions[t],r=s.colorScale.inverse?i:e;s.distributed&&"treemap"===a.config.chart.type&&(r=i);var o=a.globals.colors[r],l=null,c=Math.min.apply(Math,v(a.globals.series[e])),d=Math.max.apply(Math,v(a.globals.series[e]));s.distributed||"heatmap"!==t||(c=a.globals.minY,d=a.globals.maxY),void 0!==s.colorScale.min&&(c=s.colorScale.mina.globals.maxY?s.colorScale.max:a.globals.maxY);var h=Math.abs(d)+Math.abs(c),u=100*n/(0===h?h-1e-6:h);return s.colorScale.ranges.length>0&&s.colorScale.ranges.map((function(t,e){if(n>=t.from&&n<=t.to){o=t.color,l=t.foreColor?t.foreColor:null,c=t.from,d=t.to;var i=Math.abs(d)+Math.abs(c);u=100*n/(0===i?i-1e-6:i)}})),{color:o,foreColor:l,percent:u}}},{key:"calculateDataLabels",value:function(t){var e=t.text,i=t.x,a=t.y,n=t.i,s=t.j,r=t.colorProps,o=t.fontSize,l=this.w.config.dataLabels,c=new C(this.ctx),d=new $(this.ctx),h=null;if(l.enabled){h=c.group({class:"apexcharts-data-labels"});var u=l.offsetX,p=l.offsetY,f=i+u,g=a+parseFloat(l.style.fontSize)/3+p;d.plotDataLabelsText({x:f,y:g,text:e,i:n,j:s,color:r.foreColor,parent:h,fontSize:o,dataLabelsConfig:l})}return h}},{key:"addListeners",value:function(t){var e=new C(this.ctx);t.node.addEventListener("mouseenter",e.pathMouseEnter.bind(this,t)),t.node.addEventListener("mouseleave",e.pathMouseLeave.bind(this,t)),t.node.addEventListener("mousedown",e.pathMouseDown.bind(this,t))}}]),t}(),Tt=function(){function t(e,i){o(this,t),this.ctx=e,this.w=e.w,this.xRatio=i.xRatio,this.yRatio=i.yRatio,this.dynamicAnim=this.w.config.chart.animations.dynamicAnimation,this.helpers=new Pt(e),this.rectRadius=this.w.config.plotOptions.heatmap.radius,this.strokeWidth=this.w.config.stroke.show?this.w.config.stroke.width:0}return c(t,[{key:"draw",value:function(t){var e=this.w,i=new C(this.ctx),a=i.group({class:"apexcharts-heatmap"});a.attr("clip-path","url(#gridRectMask".concat(e.globals.cuid,")"));var n=e.globals.gridWidth/e.globals.dataPoints,s=e.globals.gridHeight/e.globals.series.length,r=0,o=!1;this.negRange=this.helpers.checkColorRange();var l=t.slice();e.config.yaxis[0].reversed&&(o=!0,l.reverse());for(var c=o?0:l.length-1;o?c=0;o?c++:c--){var d=i.group({class:"apexcharts-series apexcharts-heatmap-series",seriesName:b.escapeString(e.globals.seriesNames[c]),rel:c+1,"data:realIndex":c});if(this.ctx.series.addCollapsedClassToSeries(d,c),e.config.chart.dropShadow.enabled){var h=e.config.chart.dropShadow;new w(this.ctx).dropShadow(d,h,c)}for(var u=0,p=e.config.plotOptions.heatmap.shadeIntensity,f=0;f-1&&this.pieClicked(h),i.config.dataLabels.enabled){var S=x.x,k=x.y,A=100*p/this.fullAngle+"%";if(0!==p&&i.config.plotOptions.pie.dataLabels.minAngleToShowLabelthis.fullAngle?e.endAngle=e.endAngle-(a+r):a+r=this.fullAngle+this.w.config.plotOptions.pie.startAngle%this.fullAngle&&(o=this.fullAngle+this.w.config.plotOptions.pie.startAngle%this.fullAngle-.01),Math.ceil(o)>this.fullAngle&&(o-=this.fullAngle);var l=Math.PI*(o-90)/180,c=e.centerX+n*Math.cos(r),d=e.centerY+n*Math.sin(r),h=e.centerX+n*Math.cos(l),u=e.centerY+n*Math.sin(l),p=b.polarToCartesian(e.centerX,e.centerY,e.donutSize,o),f=b.polarToCartesian(e.centerX,e.centerY,e.donutSize,s),g=a>180?1:0,v=["M",c,d,"A",n,n,0,g,1,h,u];return"donut"===e.chartType?[].concat(v,["L",p.x,p.y,"A",e.donutSize,e.donutSize,0,g,0,f.x,f.y,"L",c,d,"z"]).join(" "):"pie"===e.chartType||"polarArea"===e.chartType?[].concat(v,["L",e.centerX,e.centerY,"L",c,d]).join(" "):[].concat(v).join(" ")}},{key:"drawPolarElements",value:function(t){var e=this.w,i=new q(this.ctx),a=new C(this.ctx),n=new Et(this.ctx),s=a.group(),r=a.group(),o=i.niceScale(0,Math.ceil(this.maxY),e.config.yaxis[0].tickAmount,0,!0),l=o.result.reverse(),c=o.result.length;this.maxY=o.niceMax;for(var d=e.globals.radialSize,h=d/(c-1),u=0;u1&&t.total.show&&(n=t.total.color);var r=s.globals.dom.baseEl.querySelector(".apexcharts-datalabel-label"),o=s.globals.dom.baseEl.querySelector(".apexcharts-datalabel-value");i=(0,t.value.formatter)(i,s),a||"function"!=typeof t.total.formatter||(i=t.total.formatter(s));var l=e===t.total.label;e=t.name.formatter(e,l,s),null!==r&&(r.textContent=e),null!==o&&(o.textContent=i),null!==r&&(r.style.fill=n)}},{key:"printDataLabelsInner",value:function(t,e){var i=this.w,a=t.getAttribute("data:value"),n=i.globals.seriesNames[parseInt(t.parentNode.getAttribute("rel"),10)-1];i.globals.series.length>1&&this.printInnerLabels(e,n,a,t);var s=i.globals.dom.baseEl.querySelector(".apexcharts-datalabels-group");null!==s&&(s.style.opacity=1)}},{key:"drawSpokes",value:function(t){var e=this,i=this.w,a=new C(this.ctx),n=i.config.plotOptions.polarArea.spokes;if(0!==n.strokeWidth){for(var s=[],r=360/i.globals.series.length,o=0;o1)r&&!e.total.showAlways?l({makeSliceOut:!1,printLabel:!0}):this.printInnerLabels(e,e.total.label,e.total.formatter(n));else if(l({makeSliceOut:!1,printLabel:!0}),!r)if(n.globals.selectedDataPoints.length&&n.globals.series.length>1)if(n.globals.selectedDataPoints[0].length>0){var c=n.globals.selectedDataPoints[0],d=n.globals.dom.baseEl.querySelector(".apexcharts-".concat(this.chartType.toLowerCase(),"-slice-").concat(c));this.printDataLabelsInner(d,e)}else s&&n.globals.selectedDataPoints.length&&0===n.globals.selectedDataPoints[0].length&&(s.style.opacity=0);else s&&n.globals.series.length>1&&(s.style.opacity=0)}}]),t}(),Mt=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.chartType=this.w.config.chart.type,this.initialAnim=this.w.config.chart.animations.enabled,this.dynamicAnim=this.initialAnim&&this.w.config.chart.animations.dynamicAnimation.enabled,this.animDur=0;var i=this.w;this.graphics=new C(this.ctx),this.lineColorArr=void 0!==i.globals.stroke.colors?i.globals.stroke.colors:i.globals.colors,this.defaultSize=i.globals.svgHeight0&&(g=e.getPreviousPath(o));for(var v=0;v=10?t.x>0?(i="start",a+=10):t.x<0&&(i="end",a-=10):i="middle",Math.abs(t.y)>=e-10&&(t.y<0?n-=10:t.y>0&&(n+=10)),{textAnchor:i,newX:a,newY:n}}},{key:"getPreviousPath",value:function(t){for(var e=this.w,i=null,a=0;a0&&parseInt(n.realIndex,10)===parseInt(t,10)&&void 0!==e.globals.previousPaths[a].paths[0]&&(i=e.globals.previousPaths[a].paths[0].d)}return i}},{key:"getDataPointsPos",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.dataPointsLen;t=t||[],e=e||[];for(var a=[],n=0;n=360&&(u=360-Math.abs(this.startAngle)-.1);var p=i.drawPath({d:"",stroke:d,strokeWidth:r*parseInt(c.strokeWidth,10)/100,fill:"none",strokeOpacity:c.opacity,classes:"apexcharts-radialbar-area"});if(c.dropShadow.enabled){var f=c.dropShadow;n.dropShadow(p,f)}l.add(p),p.attr("id","apexcharts-radialbarTrack-"+o),this.animatePaths(p,{centerX:t.centerX,centerY:t.centerY,endAngle:u,startAngle:h,size:t.size,i:o,totalItems:2,animBeginArr:0,dur:0,isTrack:!0,easing:e.globals.easing})}return a}},{key:"drawArcs",value:function(t){var e=this.w,i=new C(this.ctx),a=new H(this.ctx),n=new w(this.ctx),s=i.group(),r=this.getStrokeWidth(t);t.size=t.size-r/2;var o=e.config.plotOptions.radialBar.hollow.background,l=t.size-r*t.series.length-this.margin*t.series.length-r*parseInt(e.config.plotOptions.radialBar.track.strokeWidth,10)/100/2,c=l-e.config.plotOptions.radialBar.hollow.margin;void 0!==e.config.plotOptions.radialBar.hollow.image&&(o=this.drawHollowImage(t,s,l,o));var d=this.drawHollow({size:c,centerX:t.centerX,centerY:t.centerY,fill:o||"transparent"});if(e.config.plotOptions.radialBar.hollow.dropShadow.enabled){var h=e.config.plotOptions.radialBar.hollow.dropShadow;n.dropShadow(d,h)}var u=1;!this.radialDataLabels.total.show&&e.globals.series.length>1&&(u=0);var p=null;this.radialDataLabels.show&&(p=this.renderInnerDataLabels(this.radialDataLabels,{hollowSize:l,centerX:t.centerX,centerY:t.centerY,opacity:u})),"back"===e.config.plotOptions.radialBar.hollow.position&&(s.add(d),p&&s.add(p));var f=!1;e.config.plotOptions.radialBar.inverseOrder&&(f=!0);for(var g=f?t.series.length-1:0;f?g>=0:g100?100:t.series[g])/100,k=Math.round(this.totalAngle*S)+this.startAngle,A=void 0;e.globals.dataChanged&&(y=this.startAngle,A=Math.round(this.totalAngle*b.negToZero(e.globals.previousPaths[g])/100)+y),Math.abs(k)+Math.abs(x)>=360&&(k-=.01),Math.abs(A)+Math.abs(y)>=360&&(A-=.01);var P=k-x,T=Array.isArray(e.config.stroke.dashArray)?e.config.stroke.dashArray[g]:e.config.stroke.dashArray,E=i.drawPath({d:"",stroke:m,strokeWidth:r,fill:"none",fillOpacity:e.config.fill.opacity,classes:"apexcharts-radialbar-area apexcharts-radialbar-slice-"+g,strokeDashArray:T});if(C.setAttrs(E.node,{"data:angle":P,"data:value":t.series[g]}),e.config.chart.dropShadow.enabled){var O=e.config.chart.dropShadow;n.dropShadow(E,O,g)}n.setSelectionFilter(E,0,g),this.addListeners(E,this.radialDataLabels),v.add(E),E.attr({index:0,j:g});var M=0;!this.initialAnim||e.globals.resized||e.globals.dataChanged||(M=e.config.chart.animations.speed),e.globals.dataChanged&&(M=e.config.chart.animations.dynamicAnimation.speed),this.animDur=M/(1.2*t.series.length)+this.animDur,this.animBeginArr.push(this.animDur),this.animatePaths(E,{centerX:t.centerX,centerY:t.centerY,endAngle:k,startAngle:x,prevEndAngle:A,prevStartAngle:y,size:t.size,i:g,totalItems:2,animBeginArr:this.animBeginArr,dur:M,shouldSetPrevPaths:!0,easing:e.globals.easing})}return{g:s,elHollow:d,dataLabels:p}}},{key:"drawHollow",value:function(t){var e=new C(this.ctx).drawCircle(2*t.size);return e.attr({class:"apexcharts-radialbar-hollow",cx:t.centerX,cy:t.centerY,r:t.size,fill:t.fill}),e}},{key:"drawHollowImage",value:function(t,e,i,a){var n=this.w,s=new H(this.ctx),r=b.randomId(),o=n.config.plotOptions.radialBar.hollow.image;if(n.config.plotOptions.radialBar.hollow.imageClipped)s.clippedImgArea({width:i,height:i,image:o,patternID:"pattern".concat(n.globals.cuid).concat(r)}),a="url(#pattern".concat(n.globals.cuid).concat(r,")");else{var l=n.config.plotOptions.radialBar.hollow.imageWidth,c=n.config.plotOptions.radialBar.hollow.imageHeight;if(void 0===l&&void 0===c){var d=n.globals.dom.Paper.image(o).loaded((function(e){this.move(t.centerX-e.width/2+n.config.plotOptions.radialBar.hollow.imageOffsetX,t.centerY-e.height/2+n.config.plotOptions.radialBar.hollow.imageOffsetY)}));e.add(d)}else{var h=n.globals.dom.Paper.image(o).loaded((function(e){this.move(t.centerX-l/2+n.config.plotOptions.radialBar.hollow.imageOffsetX,t.centerY-c/2+n.config.plotOptions.radialBar.hollow.imageOffsetY),this.size(l,c)}));e.add(h)}}return a}},{key:"getStrokeWidth",value:function(t){var e=this.w;return t.size*(100-parseInt(e.config.plotOptions.radialBar.hollow.size,10))/100/(t.series.length+1)-this.margin}}]),i}(Ot),It=function(t){h(i,t);var e=g(i);function i(){return o(this,i),e.apply(this,arguments)}return c(i,[{key:"draw",value:function(t,e){var i=this.w,a=new C(this.ctx);this.rangeBarOptions=this.w.config.plotOptions.rangeBar,this.series=t,this.seriesRangeStart=i.globals.seriesRangeStart,this.seriesRangeEnd=i.globals.seriesRangeEnd,this.barHelpers.initVariables(t);for(var n=a.group({class:"apexcharts-rangebar-series apexcharts-plot-series"}),r=0;r0&&(this.visibleI=this.visibleI+1);var g=0,v=0;this.yRatio.length>1&&(this.yaxisIndex=p);var m=this.barHelpers.initialPositions();h=m.y,c=m.zeroW,d=m.x,v=m.barWidth,o=m.xDivision,l=m.zeroH;for(var x=a.group({class:"apexcharts-datalabels","data:realIndex":p}),y=a.group({class:"apexcharts-rangebar-goals-markers",style:"pointer-events: none"}),w=0;w0}));return a=l.config.plotOptions.bar.rangeBarGroupRows?n+r*u:n+s*this.visibleI+r*u,p>-1&&!l.config.plotOptions.bar.rangeBarOverlap&&(c=l.globals.seriesRange[e][p].overlaps).indexOf(d)>-1&&(a=(s=o.barHeight/c.length)*this.visibleI+r*(100-parseInt(this.barOptions.barHeight,10))/100/2+s*(this.visibleI+c.indexOf(d))+r*u),{barYPosition:a,barHeight:s}}},{key:"drawRangeColumnPaths",value:function(t){var e=t.indexes,i=t.x;t.strokeWidth;var a=t.xDivision,n=t.barWidth,s=t.zeroH,r=this.w,o=e.i,l=e.j,c=this.yRatio[this.yaxisIndex],d=e.realIndex,h=this.getRangeValue(d,l),u=Math.min(h.start,h.end),p=Math.max(h.start,h.end);r.globals.isXNumeric&&(i=(r.globals.seriesX[o][l]-r.globals.minX)/this.xRatio-n/2);var f=i+n*this.visibleI;void 0===this.series[o][l]||null===this.series[o][l]?u=s:(u=s-u/c,p=s-p/c);var g=Math.abs(p-u),v=this.barHelpers.getColumnPaths({barXPosition:f,barWidth:n,y1:u,y2:p,strokeWidth:this.strokeWidth,series:this.seriesRangeEnd,realIndex:e.realIndex,i:d,j:l,w:r});return r.globals.isXNumeric||(i+=a),{pathTo:v.pathTo,pathFrom:v.pathFrom,barHeight:g,x:i,y:p,goalY:this.barHelpers.getGoalValues("y",null,s,o,l),barXPosition:f}}},{key:"drawRangeBarPaths",value:function(t){var e=t.indexes,i=t.y,a=t.y1,n=t.y2,s=t.yDivision,r=t.barHeight,o=t.barYPosition,l=t.zeroW,c=this.w,d=l+a/this.invertedYRatio,h=l+n/this.invertedYRatio,u=Math.abs(h-d),p=this.barHelpers.getBarpaths({barYPosition:o,barHeight:r,x1:d,x2:h,strokeWidth:this.strokeWidth,series:this.seriesRangeEnd,i:e.realIndex,realIndex:e.realIndex,j:e.j,w:c});return c.globals.isXNumeric||(i+=s),{pathTo:p.pathTo,pathFrom:p.pathFrom,barWidth:u,x:h,goalX:this.barHelpers.getGoalValues("x",l,null,e.realIndex,e.j),y:i}}},{key:"getRangeValue",value:function(t,e){var i=this.w;return{start:i.globals.seriesRangeStart[t][e],end:i.globals.seriesRangeEnd[t][e]}}}]),i}(St),_t=function(){function t(e){o(this,t),this.w=e.w,this.lineCtx=e}return c(t,[{key:"sameValueSeriesFix",value:function(t,e){var i=this.w;if(("gradient"===i.config.fill.type||"gradient"===i.config.fill.type[t])&&new S(this.lineCtx.ctx,i).seriesHaveSameValues(t)){var a=e[t].slice();a[a.length-1]=a[a.length-1]+1e-6,e[t]=a}return e}},{key:"calculatePoints",value:function(t){var e=t.series,i=t.realIndex,a=t.x,n=t.y,s=t.i,r=t.j,o=t.prevY,l=this.w,c=[],d=[];if(0===r){var h=this.lineCtx.categoryAxisCorrection+l.config.markers.offsetX;l.globals.isXNumeric&&(h=(l.globals.seriesX[i][0]-l.globals.minX)/this.lineCtx.xRatio+l.config.markers.offsetX),c.push(h),d.push(b.isNumber(e[s][0])?o+l.config.markers.offsetY:null),c.push(a+l.config.markers.offsetX),d.push(b.isNumber(e[s][r+1])?n+l.config.markers.offsetY:null)}else c.push(a+l.config.markers.offsetX),d.push(b.isNumber(e[s][r+1])?n+l.config.markers.offsetY:null);return{x:c,y:d}}},{key:"checkPreviousPaths",value:function(t){for(var e=t.pathFromLine,i=t.pathFromArea,a=t.realIndex,n=this.w,s=0;s0&&parseInt(r.realIndex,10)===parseInt(a,10)&&("line"===r.type?(this.lineCtx.appendPathFrom=!1,e=n.globals.previousPaths[s].paths[0].d):"area"===r.type&&(this.lineCtx.appendPathFrom=!1,i=n.globals.previousPaths[s].paths[0].d,n.config.stroke.show&&n.globals.previousPaths[s].paths[1]&&(e=n.globals.previousPaths[s].paths[1].d)))}return{pathFromLine:e,pathFromArea:i}}},{key:"determineFirstPrevY",value:function(t){var e,i=t.i,a=t.series,n=t.prevY,s=t.lineYPosition,r=this.w;if(void 0!==(null===(e=a[i])||void 0===e?void 0:e[0]))n=(s=r.config.chart.stacked&&i>0?this.lineCtx.prevSeriesY[i-1][0]:this.lineCtx.zeroY)-a[i][0]/this.lineCtx.yRatio[this.lineCtx.yaxisIndex]+2*(this.lineCtx.isReversed?a[i][0]/this.lineCtx.yRatio[this.lineCtx.yaxisIndex]:0);else if(r.config.chart.stacked&&i>0&&void 0===a[i][0])for(var o=i-1;o>=0;o--)if(null!==a[o][0]&&void 0!==a[o][0]){n=s=this.lineCtx.prevSeriesY[o][0];break}return{prevY:n,lineYPosition:s}}}]),t}(),Dt=function(){function t(e,i,a){o(this,t),this.ctx=e,this.w=e.w,this.xyRatios=i,this.pointsChart=!("bubble"!==this.w.config.chart.type&&"scatter"!==this.w.config.chart.type)||a,this.scatter=new R(this.ctx),this.noNegatives=this.w.globals.minX===Number.MAX_VALUE,this.lineHelpers=new _t(this),this.markers=new X(this.ctx),this.prevSeriesY=[],this.categoryAxisCorrection=0,this.yaxisIndex=0}return c(t,[{key:"draw",value:function(t,e,i,a){var n=this.w,r=new C(this.ctx),o=n.globals.comboCharts?e:n.config.chart.type,l=r.group({class:"apexcharts-".concat(o,"-series apexcharts-plot-series")}),c=new S(this.ctx,n);this.yRatio=this.xyRatios.yRatio,this.zRatio=this.xyRatios.zRatio,this.xRatio=this.xyRatios.xRatio,this.baseLineY=this.xyRatios.baseLineY,t=c.getLogSeries(t),this.yRatio=c.getLogYRatios(this.yRatio);for(var d=[],h=0;h0&&(g=(n.globals.seriesX[u][0]-n.globals.minX)/this.xRatio),f.push(g);var v,m=g,x=void 0,b=m,y=this.zeroY,w=this.zeroY;y=this.lineHelpers.determineFirstPrevY({i:h,series:t,prevY:y,lineYPosition:0}).prevY,p.push(y),v=y,"rangeArea"===o&&(x=w=this.lineHelpers.determineFirstPrevY({i:h,series:a,prevY:w,lineYPosition:0}).prevY);var k={type:o,series:t,realIndex:u,i:h,x:g,y:1,pX:m,pY:v,pathsFrom:this._calculatePathsFrom({type:o,series:t,i:h,realIndex:u,prevX:b,prevY:y,prevY2:w}),linePaths:[],areaPaths:[],seriesIndex:i,lineYPosition:0,xArrj:f,yArrj:p,seriesRangeEnd:a},A=this._iterateOverDataPoints(s(s({},k),{},{iterations:"rangeArea"===o?t[h].length-1:void 0,isRangeStart:!0}));if("rangeArea"===o){var P=this._calculatePathsFrom({series:a,i:h,realIndex:u,prevX:b,prevY:w}),T=this._iterateOverDataPoints(s(s({},k),{},{series:a,pY:x,pathsFrom:P,iterations:a[h].length-1,isRangeStart:!1}));A.linePaths[0]=T.linePath+A.linePath,A.pathFromLine=T.pathFromLine+A.pathFromLine}this._handlePaths({type:o,realIndex:u,i:h,paths:A}),this.elSeries.add(this.elPointsMain),this.elSeries.add(this.elDataLabelsWrap),d.push(this.elSeries)}if(n.config.chart.stacked)for(var E=d.length;E>0;E--)l.add(d[E-1]);else for(var O=0;O1&&(this.yaxisIndex=i),this.isReversed=a.config.yaxis[this.yaxisIndex]&&a.config.yaxis[this.yaxisIndex].reversed,this.zeroY=a.globals.gridHeight-this.baseLineY[this.yaxisIndex]-(this.isReversed?a.globals.gridHeight:0)+(this.isReversed?2*this.baseLineY[this.yaxisIndex]:0),this.areaBottomY=this.zeroY,(this.zeroY>a.globals.gridHeight||"end"===a.config.plotOptions.area.fillTo)&&(this.areaBottomY=a.globals.gridHeight),this.categoryAxisCorrection=this.xDivision/2,this.elSeries=n.group({class:"apexcharts-series",seriesName:b.escapeString(a.globals.seriesNames[i])}),this.elPointsMain=n.group({class:"apexcharts-series-markers-wrap","data:realIndex":i}),this.elDataLabelsWrap=n.group({class:"apexcharts-datalabels","data:realIndex":i});var s=t[e].length===a.globals.dataPoints;this.elSeries.attr({"data:longestSeries":s,rel:e+1,"data:realIndex":i}),this.appendPathFrom=!0}},{key:"_calculatePathsFrom",value:function(t){var e,i,a,n,s=t.type,r=t.series,o=t.i,l=t.realIndex,c=t.prevX,d=t.prevY,h=t.prevY2,u=this.w,p=new C(this.ctx);if(null===r[o][0]){for(var f=0;f0){var g=this.lineHelpers.checkPreviousPaths({pathFromLine:a,pathFromArea:n,realIndex:l});a=g.pathFromLine,n=g.pathFromArea}return{prevX:c,prevY:d,linePath:e,areaPath:i,pathFromLine:a,pathFromArea:n}}},{key:"_handlePaths",value:function(t){var e=t.type,i=t.realIndex,a=t.i,n=t.paths,r=this.w,o=new C(this.ctx),l=new H(this.ctx);this.prevSeriesY.push(n.yArrj),r.globals.seriesXvalues[i]=n.xArrj,r.globals.seriesYvalues[i]=n.yArrj;var c=r.config.forecastDataPoints;if(c.count>0&&"rangeArea"!==e){var d=r.globals.seriesXvalues[i][r.globals.seriesXvalues[i].length-c.count-1],h=o.drawRect(d,0,r.globals.gridWidth,r.globals.gridHeight,0);r.globals.dom.elForecastMask.appendChild(h.node);var u=o.drawRect(0,0,d,r.globals.gridHeight,0);r.globals.dom.elNonForecastMask.appendChild(u.node)}this.pointsChart||r.globals.delayedElements.push({el:this.elPointsMain.node,index:i});var p={i:a,realIndex:i,animationDelay:a,initialSpeed:r.config.chart.animations.speed,dataChangeSpeed:r.config.chart.animations.dynamicAnimation.speed,className:"apexcharts-".concat(e)};if("area"===e)for(var f=l.fillPath({seriesNumber:i}),g=0;g0&&"rangeArea"!==e){var k=o.renderPaths(w);k.node.setAttribute("stroke-dasharray",c.dashArray),c.strokeWidth&&k.node.setAttribute("stroke-width",c.strokeWidth),this.elSeries.add(k),k.attr("clip-path","url(#forecastMask".concat(r.globals.cuid,")")),S.attr("clip-path","url(#nonForecastMask".concat(r.globals.cuid,")"))}}}}},{key:"_iterateOverDataPoints",value:function(t){var e=t.type,i=t.series,a=t.iterations,n=t.realIndex,s=t.i,r=t.x,o=t.y,l=t.pX,c=t.pY,d=t.pathsFrom,h=t.linePaths,u=t.areaPaths,p=t.seriesIndex,f=t.lineYPosition,g=t.xArrj,v=t.yArrj,m=t.isRangeStart,x=t.seriesRangeEnd,y=this.w,w=new C(this.ctx),S=this.yRatio,k=d.prevY,A=d.linePath,P=d.areaPath,T=d.pathFromLine,E=d.pathFromArea,O=b.isNumber(y.globals.minYArr[n])?y.globals.minYArr[n]:y.globals.minY;a||(a=y.globals.dataPoints>1?y.globals.dataPoints-1:y.globals.dataPoints);for(var M=o,L=0;L0&&y.globals.collapsedSeries.length-1){e--;break}return e>=0?e:0}(s-1)][L+1]:this.zeroY,I?o=f-O/S[this.yaxisIndex]+2*(this.isReversed?O/S[this.yaxisIndex]:0):(o=f-i[s][L+1]/S[this.yaxisIndex]+2*(this.isReversed?i[s][L+1]/S[this.yaxisIndex]:0),"rangeArea"===e&&(M=f-x[s][L+1]/S[this.yaxisIndex]+2*(this.isReversed?x[s][L+1]/S[this.yaxisIndex]:0))),g.push(r),v.push(o);var D=this.lineHelpers.calculatePoints({series:i,x:r,y:o,realIndex:n,i:s,j:L,prevY:k}),z=this._createPaths({type:e,series:i,i:s,realIndex:n,j:L,x:r,y:o,y2:M,pX:l,pY:c,linePath:A,areaPath:P,linePaths:h,areaPaths:u,seriesIndex:p,isRangeStart:m});u=z.areaPaths,h=z.linePaths,l=z.pX,c=z.pY,P=z.areaPath,A=z.linePath,this.appendPathFrom&&(T+=w.line(r,this.zeroY),E+=w.line(r,this.zeroY)),this.handleNullDataPoints(i,D,s,L,n),this._handleMarkersAndLabels({type:e,pointsPos:D,i:s,j:L,realIndex:n,isRangeStart:m})}return{yArrj:v,xArrj:g,pathFromArea:E,areaPaths:u,pathFromLine:T,linePaths:h,linePath:A,areaPath:P}}},{key:"_handleMarkersAndLabels",value:function(t){var e=t.type,i=t.pointsPos,a=t.isRangeStart,n=t.i,s=t.j,r=t.realIndex,o=this.w,l=new $(this.ctx);if(this.pointsChart)this.scatter.draw(this.elSeries,s,{realIndex:r,pointsPos:i,zRatio:this.zRatio,elParent:this.elPointsMain});else{o.globals.series[n].length>1&&this.elPointsMain.node.classList.add("apexcharts-element-hidden");var c=this.markers.plotChartMarkers(i,r,s+1);null!==c&&this.elPointsMain.add(c)}var d=l.drawDataLabel({type:e,isRangeStart:a,pos:i,i:r,j:s+1});null!==d&&this.elDataLabelsWrap.add(d)}},{key:"_createPaths",value:function(t){var e=t.type,i=t.series,a=t.i,n=t.realIndex,s=t.j,r=t.x,o=t.y,l=t.y2,c=t.pX,d=t.pY,h=t.linePath,u=t.areaPath,p=t.linePaths,f=t.areaPaths,g=t.seriesIndex,v=t.isRangeStart,m=this.w,x=new C(this.ctx),b=m.config.stroke.curve,y=this.areaBottomY;if(Array.isArray(m.config.stroke.curve)&&(b=Array.isArray(g)?m.config.stroke.curve[g[a]]:m.config.stroke.curve[a]),"smooth"===b){var w=.35*(r-c);m.globals.hasNullValues?(null!==i[a][s]&&(null!==i[a][s+1]?(h=x.move(c,d)+x.curve(c+w,d,r-w,o,r+1,o),u=x.move(c+1,d)+x.curve(c+w,d,r-w,o,r+1,o)+x.line(r,y)+x.line(c,y)+"z"):(h=x.move(c,d),u=x.move(c,d)+"z")),p.push(h),f.push(u)):(h+=x.curve(c+w,d,r-w,o,r,o),u+=x.curve(c+w,d,r-w,o,r,o)),c=r,d=o,s===i[a].length-2&&(u=u+x.curve(c,d,r,o,r,y)+x.move(r,o)+"z","rangeArea"===e&&v?h=h+x.curve(c,d,r,o,r,l)+x.move(r,l)+"z":m.globals.hasNullValues||(p.push(h),f.push(u)))}else{if(null===i[a][s+1]){h+=x.move(r,o);var S=m.globals.isXNumeric?(m.globals.seriesX[n][s]-m.globals.minX)/this.xRatio:r-this.xDivision;u=u+x.line(S,y)+x.move(r,o)+"z"}null===i[a][s]&&(h+=x.move(r,o),u+=x.move(r,y)),"stepline"===b?(h=h+x.line(r,null,"H")+x.line(null,o,"V"),u=u+x.line(r,null,"H")+x.line(null,o,"V")):"straight"===b&&(h+=x.line(r,o),u+=x.line(r,o)),s===i[a].length-2&&(u=u+x.line(r,y)+x.move(r,o)+"z","rangeArea"===e&&v?h=h+x.line(r,l)+x.move(r,l)+"z":(p.push(h),f.push(u)))}return{linePaths:p,areaPaths:f,pX:c,pY:d,linePath:h,areaPath:u}}},{key:"handleNullDataPoints",value:function(t,e,i,a,n){var s=this.w;if(null===t[i][a]&&s.config.markers.showNullDataPoints||1===t[i].length){var r=this.markers.plotChartMarkers(e,n,a+1,this.strokeWidth-s.config.markers.strokeWidth/2,!0);null!==r&&this.elPointsMain.add(r)}}}]),t}();window.TreemapSquared={},window.TreemapSquared.generate=function(){function t(e,i,a,n){this.xoffset=e,this.yoffset=i,this.height=n,this.width=a,this.shortestEdge=function(){return Math.min(this.height,this.width)},this.getCoordinates=function(t){var e,i=[],a=this.xoffset,n=this.yoffset,r=s(t)/this.height,o=s(t)/this.width;if(this.width>=this.height)for(e=0;e=this.height){var a=e/this.height,n=this.width-a;i=new t(this.xoffset+a,this.yoffset,n,this.height)}else{var s=e/this.width,r=this.height-s;i=new t(this.xoffset,this.yoffset+s,this.width,r)}return i}}function e(e,a,n,r,o){r=void 0===r?0:r,o=void 0===o?0:o;var l=i(function(t,e){var i,a=[],n=e/s(t);for(i=0;i=a(n,i))}(e,l=t[0],o)?(e.push(l),i(t.slice(1),e,n,r)):(c=n.cutArea(s(e),r),r.push(n.getCoordinates(e)),i(t,[],c,r)),r;r.push(n.getCoordinates(e))}function a(t,e){var i=Math.min.apply(Math,t),a=Math.max.apply(Math,t),n=s(t);return Math.max(Math.pow(e,2)*a/Math.pow(n,2),Math.pow(n,2)/(Math.pow(e,2)*i))}function n(t){return t&&t.constructor===Array}function s(t){var e,i=0;for(e=0;es-a&&l.width<=r-n){var c=o.rotateAroundCenter(t.node);t.node.setAttribute("transform","rotate(-90 ".concat(c.x," ").concat(c.y,")"))}}},{key:"animateTreemap",value:function(t,e,i,a){var n=new y(this.ctx);n.animateRect(t,{x:e.x,y:e.y,width:e.width,height:e.height},{x:i.x,y:i.y,width:i.width,height:i.height},a,(function(){n.animationCompleted(t)}))}}]),t}(),Ht=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w,this.timeScaleArray=[],this.utc=this.w.config.xaxis.labels.datetimeUTC}return c(t,[{key:"calculateTimeScaleTicks",value:function(t,e){var i=this,a=this.w;if(a.globals.allSeriesCollapsed)return a.globals.labels=[],a.globals.timescaleLabels=[],[];var n=new L(this.ctx),r=(e-t)/864e5;this.determineInterval(r),a.globals.disableZoomIn=!1,a.globals.disableZoomOut=!1,r<.00011574074074074075?a.globals.disableZoomIn=!0:r>5e4&&(a.globals.disableZoomOut=!0);var o=n.getTimeUnitsfromTimestamp(t,e,this.utc),l=a.globals.gridWidth/r,c=l/24,d=c/60,h=d/60,u=Math.floor(24*r),p=Math.floor(1440*r),f=Math.floor(86400*r),g=Math.floor(r),v=Math.floor(r/30),m=Math.floor(r/365),x={minMillisecond:o.minMillisecond,minSecond:o.minSecond,minMinute:o.minMinute,minHour:o.minHour,minDate:o.minDate,minMonth:o.minMonth,minYear:o.minYear},b={firstVal:x,currentMillisecond:x.minMillisecond,currentSecond:x.minSecond,currentMinute:x.minMinute,currentHour:x.minHour,currentMonthDate:x.minDate,currentDate:x.minDate,currentMonth:x.minMonth,currentYear:x.minYear,daysWidthOnXAxis:l,hoursWidthOnXAxis:c,minutesWidthOnXAxis:d,secondsWidthOnXAxis:h,numberOfSeconds:f,numberOfMinutes:p,numberOfHours:u,numberOfDays:g,numberOfMonths:v,numberOfYears:m};switch(this.tickInterval){case"years":this.generateYearScale(b);break;case"months":case"half_year":this.generateMonthScale(b);break;case"months_days":case"months_fortnight":case"days":case"week_days":this.generateDayScale(b);break;case"hours":this.generateHourScale(b);break;case"minutes_fives":case"minutes":this.generateMinuteScale(b);break;case"seconds_tens":case"seconds_fives":case"seconds":this.generateSecondScale(b)}var y=this.timeScaleArray.map((function(t){var e={position:t.position,unit:t.unit,year:t.year,day:t.day?t.day:1,hour:t.hour?t.hour:0,month:t.month+1};return"month"===t.unit?s(s({},e),{},{day:1,value:t.value+1}):"day"===t.unit||"hour"===t.unit?s(s({},e),{},{value:t.value}):"minute"===t.unit?s(s({},e),{},{value:t.value,minute:t.value}):"second"===t.unit?s(s({},e),{},{value:t.value,minute:t.minute,second:t.second}):t}));return y.filter((function(t){var e=1,n=Math.ceil(a.globals.gridWidth/120),s=t.value;void 0!==a.config.xaxis.tickAmount&&(n=a.config.xaxis.tickAmount),y.length>n&&(e=Math.floor(y.length/n));var r=!1,o=!1;switch(i.tickInterval){case"years":"year"===t.unit&&(r=!0);break;case"half_year":e=7,"year"===t.unit&&(r=!0);break;case"months":e=1,"year"===t.unit&&(r=!0);break;case"months_fortnight":e=15,"year"!==t.unit&&"month"!==t.unit||(r=!0),30===s&&(o=!0);break;case"months_days":e=10,"month"===t.unit&&(r=!0),30===s&&(o=!0);break;case"week_days":e=8,"month"===t.unit&&(r=!0);break;case"days":e=1,"month"===t.unit&&(r=!0);break;case"hours":"day"===t.unit&&(r=!0);break;case"minutes_fives":case"seconds_fives":s%5!=0&&(o=!0);break;case"seconds_tens":s%10!=0&&(o=!0)}if("hours"===i.tickInterval||"minutes_fives"===i.tickInterval||"seconds_tens"===i.tickInterval||"seconds_fives"===i.tickInterval){if(!o)return!0}else if((s%e==0||r)&&!o)return!0}))}},{key:"recalcDimensionsBasedOnFormat",value:function(t,e){var i=this.w,a=this.formatDates(t),n=this.removeOverlappingTS(a);i.globals.timescaleLabels=n.slice(),new ct(this.ctx).plotCoords()}},{key:"determineInterval",value:function(t){var e=24*t,i=60*e;switch(!0){case t/365>5:this.tickInterval="years";break;case t>800:this.tickInterval="half_year";break;case t>180:this.tickInterval="months";break;case t>90:this.tickInterval="months_fortnight";break;case t>60:this.tickInterval="months_days";break;case t>30:this.tickInterval="week_days";break;case t>2:this.tickInterval="days";break;case e>2.4:this.tickInterval="hours";break;case i>15:this.tickInterval="minutes_fives";break;case i>5:this.tickInterval="minutes";break;case i>1:this.tickInterval="seconds_tens";break;case 60*i>20:this.tickInterval="seconds_fives";break;default:this.tickInterval="seconds"}}},{key:"generateYearScale",value:function(t){var e=t.firstVal,i=t.currentMonth,a=t.currentYear,n=t.daysWidthOnXAxis,s=t.numberOfYears,r=e.minYear,o=0,l=new L(this.ctx),c="year";if(e.minDate>1||e.minMonth>0){var d=l.determineRemainingDaysOfYear(e.minYear,e.minMonth,e.minDate);o=(l.determineDaysOfYear(e.minYear)-d+1)*n,r=e.minYear+1,this.timeScaleArray.push({position:o,value:r,unit:c,year:r,month:b.monthMod(i+1)})}else 1===e.minDate&&0===e.minMonth&&this.timeScaleArray.push({position:o,value:r,unit:c,year:a,month:b.monthMod(i+1)});for(var h=r,u=o,p=0;p1){l=(c.determineDaysOfMonths(a+1,e.minYear)-i+1)*s,o=b.monthMod(a+1);var u=n+h,p=b.monthMod(o),f=o;0===o&&(d="year",f=u,p=1,u+=h+=1),this.timeScaleArray.push({position:l,value:f,unit:d,year:u,month:p})}else this.timeScaleArray.push({position:l,value:o,unit:d,year:n,month:b.monthMod(a)});for(var g=o+1,v=l,m=0,x=1;mr.determineDaysOfMonths(e+1,i)?(c=1,o="month",u=e+=1,e):e},h=(24-e.minHour)*n,u=l,p=d(c,i,a);0===e.minHour&&1===e.minDate?(h=0,u=b.monthMod(e.minMonth),o="month",c=e.minDate,s++):1!==e.minDate&&0===e.minHour&&0===e.minMinute&&(h=0,l=e.minDate,u=l,p=d(c=l,i,a)),this.timeScaleArray.push({position:h,value:u,unit:o,year:this._getYear(a,p,0),month:b.monthMod(p),day:c});for(var f=h,g=0;go.determineDaysOfMonths(e+1,n)&&(g=1,e+=1),{month:e,date:g}},d=function(t,e){return t>o.determineDaysOfMonths(e+1,n)?e+=1:e},h=60-(e.minMinute+e.minSecond/60),u=h*s,p=e.minHour+1,f=p+1;60===h&&(u=0,f=(p=e.minHour)+1);var g=i,v=d(g,a);this.timeScaleArray.push({position:u,value:p,unit:l,day:g,hour:f,year:n,month:b.monthMod(v)});for(var m=u,x=0;x=24&&(f=0,l="day",v=c(g+=1,v).month,v=d(g,v));var y=this._getYear(n,v,0);m=0===f&&0===x?h*s:60*s+m;var w=0===f?g:f;this.timeScaleArray.push({position:m,value:w,unit:l,hour:f,day:g,year:y,month:b.monthMod(v)}),f++}}},{key:"generateMinuteScale",value:function(t){for(var e=t.currentMillisecond,i=t.currentSecond,a=t.currentMinute,n=t.currentHour,s=t.currentDate,r=t.currentMonth,o=t.currentYear,l=t.minutesWidthOnXAxis,c=t.secondsWidthOnXAxis,d=t.numberOfMinutes,h=a+1,u=s,p=r,f=o,g=n,v=(60-i-e/1e3)*c,m=0;m=60&&(h=0,24===(g+=1)&&(g=0)),this.timeScaleArray.push({position:v,value:h,unit:"minute",hour:g,minute:h,day:u,year:this._getYear(f,p,0),month:b.monthMod(p)}),v+=l,h++}},{key:"generateSecondScale",value:function(t){for(var e=t.currentMillisecond,i=t.currentSecond,a=t.currentMinute,n=t.currentHour,s=t.currentDate,r=t.currentMonth,o=t.currentYear,l=t.secondsWidthOnXAxis,c=t.numberOfSeconds,d=i+1,h=a,u=s,p=r,f=o,g=n,v=(1e3-e)/1e3*l,m=0;m=60&&(d=0,++h>=60&&(h=0,24==++g&&(g=0))),this.timeScaleArray.push({position:v,value:d,unit:"second",hour:g,minute:h,second:d,day:u,year:this._getYear(f,p,0),month:b.monthMod(p)}),v+=l,d++}},{key:"createRawDateString",value:function(t,e){var i=t.year;return 0===t.month&&(t.month=1),i+="-"+("0"+t.month.toString()).slice(-2),"day"===t.unit?i+="day"===t.unit?"-"+("0"+e).slice(-2):"-01":i+="-"+("0"+(t.day?t.day:"1")).slice(-2),"hour"===t.unit?i+="hour"===t.unit?"T"+("0"+e).slice(-2):"T00":i+="T"+("0"+(t.hour?t.hour:"0")).slice(-2),"minute"===t.unit?i+=":"+("0"+e).slice(-2):i+=":"+(t.minute?("0"+t.minute).slice(-2):"00"),"second"===t.unit?i+=":"+("0"+e).slice(-2):i+=":00",this.utc&&(i+=".000Z"),i}},{key:"formatDates",value:function(t){var e=this,i=this.w;return t.map((function(t){var a=t.value.toString(),n=new L(e.ctx),s=e.createRawDateString(t,a),r=n.getDate(n.parseDate(s));if(e.utc||(r=n.getDate(n.parseDateWithTimezone(s))),void 0===i.config.xaxis.labels.format){var o="dd MMM",l=i.config.xaxis.labels.datetimeFormatter;"year"===t.unit&&(o=l.year),"month"===t.unit&&(o=l.month),"day"===t.unit&&(o=l.day),"hour"===t.unit&&(o=l.hour),"minute"===t.unit&&(o=l.minute),"second"===t.unit&&(o=l.second),a=n.formatDate(r,o)}else a=n.formatDate(r,i.config.xaxis.labels.format);return{dateString:s,position:t.position,value:a,unit:t.unit,year:t.year,month:t.month}}))}},{key:"removeOverlappingTS",value:function(t){var e,i=this,a=new C(this.ctx),n=!1;t.length>0&&t[0].value&&t.every((function(e){return e.value.length===t[0].value.length}))&&(n=!0,e=a.getTextRects(t[0].value).width);var s=0,r=t.map((function(r,o){if(o>0&&i.w.config.xaxis.labels.hideOverlappingLabels){var l=n?e:a.getTextRects(t[s].value).width,c=t[s].position;return r.position>c+l+10?(s=o,r):null}return r}));return r.filter((function(t){return null!==t}))}},{key:"_getYear",value:function(t,e,i){return t+Math.floor(e/12)+i}}]),t}(),Xt=function(){function t(e,i){o(this,t),this.ctx=i,this.w=i.w,this.el=e}return c(t,[{key:"setupElements",value:function(){var t=this.w.globals,e=this.w.config,i=e.chart.type;t.axisCharts=["line","area","bar","rangeBar","rangeArea","candlestick","boxPlot","scatter","bubble","radar","heatmap","treemap"].indexOf(i)>-1,t.xyCharts=["line","area","bar","rangeBar","rangeArea","candlestick","boxPlot","scatter","bubble"].indexOf(i)>-1,t.isBarHorizontal=("bar"===e.chart.type||"rangeBar"===e.chart.type||"boxPlot"===e.chart.type)&&e.plotOptions.bar.horizontal,t.chartClass=".apexcharts"+t.chartID,t.dom.baseEl=this.el,t.dom.elWrap=document.createElement("div"),C.setAttrs(t.dom.elWrap,{id:t.chartClass.substring(1),class:"apexcharts-canvas "+t.chartClass.substring(1)}),this.el.appendChild(t.dom.elWrap),t.dom.Paper=new window.SVG.Doc(t.dom.elWrap),t.dom.Paper.attr({class:"apexcharts-svg","xmlns:data":"ApexChartsNS",transform:"translate(".concat(e.chart.offsetX,", ").concat(e.chart.offsetY,")")}),t.dom.Paper.node.style.background=e.chart.background,this.setSVGDimensions(),t.dom.elGraphical=t.dom.Paper.group().attr({class:"apexcharts-inner apexcharts-graphical"}),t.dom.elAnnotations=t.dom.Paper.group().attr({class:"apexcharts-annotations"}),t.dom.elDefs=t.dom.Paper.defs(),t.dom.elLegendWrap=document.createElement("div"),t.dom.elLegendWrap.classList.add("apexcharts-legend"),t.dom.elWrap.appendChild(t.dom.elLegendWrap),t.dom.Paper.add(t.dom.elGraphical),t.dom.elGraphical.add(t.dom.elDefs)}},{key:"plotChartType",value:function(t,e){var i=this.w,a=i.config,n=i.globals,s={series:[],i:[]},r={series:[],i:[]},o={series:[],i:[]},l={series:[],i:[]},c={series:[],i:[]},d={series:[],i:[]},h={series:[],i:[]},u={series:[],i:[]},p={series:[],seriesRangeEnd:[],i:[]};n.series.map((function(e,f){var g=0;void 0!==t[f].type?("column"===t[f].type||"bar"===t[f].type?(n.series.length>1&&a.plotOptions.bar.horizontal&&console.warn("Horizontal bars are not supported in a mixed/combo chart. Please turn off `plotOptions.bar.horizontal`"),c.series.push(e),c.i.push(f),g++,i.globals.columnSeries=c.series):"area"===t[f].type?(r.series.push(e),r.i.push(f),g++):"line"===t[f].type?(s.series.push(e),s.i.push(f),g++):"scatter"===t[f].type?(o.series.push(e),o.i.push(f)):"bubble"===t[f].type?(l.series.push(e),l.i.push(f),g++):"candlestick"===t[f].type?(d.series.push(e),d.i.push(f),g++):"boxPlot"===t[f].type?(h.series.push(e),h.i.push(f),g++):"rangeBar"===t[f].type?(u.series.push(e),u.i.push(f),g++):"rangeArea"===t[f].type?(p.series.push(n.seriesRangeStart[f]),p.seriesRangeEnd.push(n.seriesRangeEnd[f]),p.i.push(f),g++):console.warn("You have specified an unrecognized chart type. Available types for this property are line/area/column/bar/scatter/bubble"),g>1&&(n.comboCharts=!0)):(s.series.push(e),s.i.push(f))}));var f=new Dt(this.ctx,e),g=new At(this.ctx,e);this.ctx.pie=new Ot(this.ctx);var v=new Lt(this.ctx);this.ctx.rangeBar=new It(this.ctx,e);var m=new Mt(this.ctx),x=[];if(n.comboCharts){if(r.series.length>0&&x.push(f.draw(r.series,"area",r.i)),c.series.length>0)if(i.config.chart.stacked){var b=new kt(this.ctx,e);x.push(b.draw(c.series,c.i))}else this.ctx.bar=new St(this.ctx,e),x.push(this.ctx.bar.draw(c.series,c.i));if(p.series.length>0&&x.push(f.draw(p.series,"rangeArea",p.i,p.seriesRangeEnd)),s.series.length>0&&x.push(f.draw(s.series,"line",s.i)),d.series.length>0&&x.push(g.draw(d.series,d.i)),h.series.length>0&&x.push(g.draw(h.series,h.i)),u.series.length>0&&x.push(this.ctx.rangeBar.draw(u.series,u.i)),o.series.length>0){var y=new Dt(this.ctx,e,!0);x.push(y.draw(o.series,"scatter",o.i))}if(l.series.length>0){var w=new Dt(this.ctx,e,!0);x.push(w.draw(l.series,"bubble",l.i))}}else switch(a.chart.type){case"line":x=f.draw(n.series,"line");break;case"area":x=f.draw(n.series,"area");break;case"bar":a.chart.stacked?x=new kt(this.ctx,e).draw(n.series):(this.ctx.bar=new St(this.ctx,e),x=this.ctx.bar.draw(n.series));break;case"candlestick":case"boxPlot":x=new At(this.ctx,e).draw(n.series);break;case"rangeBar":x=this.ctx.rangeBar.draw(n.series);break;case"rangeArea":x=f.draw(n.seriesRangeStart,"rangeArea",void 0,n.seriesRangeEnd);break;case"heatmap":x=new Tt(this.ctx,e).draw(n.series);break;case"treemap":x=new jt(this.ctx,e).draw(n.series);break;case"pie":case"donut":case"polarArea":x=this.ctx.pie.draw(n.series);break;case"radialBar":x=v.draw(n.series);break;case"radar":x=m.draw(n.series);break;default:x=f.draw(n.series)}return x}},{key:"setSVGDimensions",value:function(){var t=this.w.globals,e=this.w.config;t.svgWidth=e.chart.width,t.svgHeight=e.chart.height;var i=b.getDimensions(this.el),a=e.chart.width.toString().split(/[0-9]+/g).pop();"%"===a?b.isNumber(i[0])&&(0===i[0].width&&(i=b.getDimensions(this.el.parentNode)),t.svgWidth=i[0]*parseInt(e.chart.width,10)/100):"px"!==a&&""!==a||(t.svgWidth=parseInt(e.chart.width,10));var n=e.chart.height.toString().split(/[0-9]+/g).pop();if("auto"!==t.svgHeight&&""!==t.svgHeight)if("%"===n){var s=b.getDimensions(this.el.parentNode);t.svgHeight=s[1]*parseInt(e.chart.height,10)/100}else t.svgHeight=parseInt(e.chart.height,10);else t.axisCharts?t.svgHeight=t.svgWidth/1.61:t.svgHeight=t.svgWidth/1.2;if(t.svgWidth<0&&(t.svgWidth=0),t.svgHeight<0&&(t.svgHeight=0),C.setAttrs(t.dom.Paper.node,{width:t.svgWidth,height:t.svgHeight}),"%"!==n){var r=e.chart.sparkline.enabled?0:t.axisCharts?e.chart.parentHeightOffset:0;t.dom.Paper.node.parentNode.parentNode.style.minHeight=t.svgHeight+r+"px"}t.dom.elWrap.style.width=t.svgWidth+"px",t.dom.elWrap.style.height=t.svgHeight+"px"}},{key:"shiftGraphPosition",value:function(){var t=this.w.globals,e=t.translateY,i={transform:"translate("+t.translateX+", "+e+")"};C.setAttrs(t.dom.elGraphical.node,i)}},{key:"resizeNonAxisCharts",value:function(){var t=this.w,e=t.globals,i=0,a=t.config.chart.sparkline.enabled?1:15;a+=t.config.grid.padding.bottom,"top"!==t.config.legend.position&&"bottom"!==t.config.legend.position||!t.config.legend.show||t.config.legend.floating||(i=new ht(this.ctx).legendHelpers.getLegendBBox().clwh+10);var n=t.globals.dom.baseEl.querySelector(".apexcharts-radialbar, .apexcharts-pie"),s=2.05*t.globals.radialSize;if(n&&!t.config.chart.sparkline.enabled&&0!==t.config.plotOptions.radialBar.startAngle){var r=b.getBoundingClientRect(n);s=r.bottom;var o=r.bottom-r.top;s=Math.max(2.05*t.globals.radialSize,o)}var l=s+e.translateY+i+a;e.dom.elLegendForeign&&e.dom.elLegendForeign.setAttribute("height",l),t.config.chart.height&&String(t.config.chart.height).indexOf("%")>0||(e.dom.elWrap.style.height=l+"px",C.setAttrs(e.dom.Paper.node,{height:l}),e.dom.Paper.node.parentNode.parentNode.style.minHeight=l+"px")}},{key:"coreCalculations",value:function(){new Z(this.ctx).init()}},{key:"resetGlobals",value:function(){var t=this,e=function(){return t.w.config.series.map((function(t){return[]}))},i=new N,a=this.w.globals;i.initGlobalVars(a),a.seriesXvalues=e(),a.seriesYvalues=e()}},{key:"isMultipleY",value:function(){if(this.w.config.yaxis.constructor===Array&&this.w.config.yaxis.length>1)return this.w.globals.isMultipleYAxis=!0,!0}},{key:"xySettings",value:function(){var t=null,e=this.w;if(e.globals.axisCharts){if("back"===e.config.xaxis.crosshairs.position&&new et(this.ctx).drawXCrosshairs(),"back"===e.config.yaxis[0].crosshairs.position&&new et(this.ctx).drawYCrosshairs(),"datetime"===e.config.xaxis.type&&void 0===e.config.xaxis.labels.formatter){this.ctx.timeScale=new Ht(this.ctx);var i=[];isFinite(e.globals.minX)&&isFinite(e.globals.maxX)&&!e.globals.isBarHorizontal?i=this.ctx.timeScale.calculateTimeScaleTicks(e.globals.minX,e.globals.maxX):e.globals.isBarHorizontal&&(i=this.ctx.timeScale.calculateTimeScaleTicks(e.globals.minY,e.globals.maxY)),this.ctx.timeScale.recalcDimensionsBasedOnFormat(i)}t=new S(this.ctx).getCalculatedRatios()}return t}},{key:"updateSourceChart",value:function(t){this.ctx.w.globals.selection=void 0,this.ctx.updateHelpers._updateOptions({chart:{selection:{xaxis:{min:t.w.globals.minX,max:t.w.globals.maxX}}}},!1,!1)}},{key:"setupBrushHandler",value:function(){var t=this,e=this.w;if(e.config.chart.brush.enabled&&"function"!=typeof e.config.chart.events.selection){var i=e.config.chart.brush.targets||[e.config.chart.brush.target];i.forEach((function(e){var i=ApexCharts.getChartByID(e);i.w.globals.brushSource=t.ctx,"function"!=typeof i.w.config.chart.events.zoomed&&(i.w.config.chart.events.zoomed=function(){t.updateSourceChart(i)}),"function"!=typeof i.w.config.chart.events.scrolled&&(i.w.config.chart.events.scrolled=function(){t.updateSourceChart(i)})})),e.config.chart.events.selection=function(t,a){i.forEach((function(t){var i=ApexCharts.getChartByID(t),n=b.clone(e.config.yaxis);if(e.config.chart.brush.autoScaleYaxis&&1===i.w.globals.series.length){var r=new q(i);n=r.autoScaleY(i,n,a)}var o=i.w.config.yaxis.reduce((function(t,e,a){return[].concat(v(t),[s(s({},i.w.config.yaxis[a]),{},{min:n[0].min,max:n[0].max})])}),[]);i.ctx.updateHelpers._updateOptions({xaxis:{min:a.xaxis.min,max:a.xaxis.max},yaxis:o},!1,!1,!1,!1)}))}}}}]),t}(),Rt=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"_updateOptions",value:function(t){var e=this,i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],a=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],n=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=arguments.length>4&&void 0!==arguments[4]&&arguments[4];return new Promise((function(o){var l=[e.ctx];n&&(l=e.ctx.getSyncedCharts()),e.ctx.w.globals.isExecCalled&&(l=[e.ctx],e.ctx.w.globals.isExecCalled=!1),l.forEach((function(n,c){var d=n.w;if(d.globals.shouldAnimate=a,i||(d.globals.resized=!0,d.globals.dataChanged=!0,a&&n.series.getPreviousPaths()),t&&"object"===r(t)&&(n.config=new z(t),t=S.extendArrayProps(n.config,t,d),n.w.globals.chartID!==e.ctx.w.globals.chartID&&delete t.series,d.config=b.extend(d.config,t),s&&(d.globals.lastXAxis=t.xaxis?b.clone(t.xaxis):[],d.globals.lastYAxis=t.yaxis?b.clone(t.yaxis):[],d.globals.initialConfig=b.extend({},d.config),d.globals.initialSeries=b.clone(d.config.series),t.series))){for(var h=0;h2&&void 0!==arguments[2]&&arguments[2];return new Promise((function(n){var s,r=i.w;return r.globals.shouldAnimate=e,r.globals.dataChanged=!0,e&&i.ctx.series.getPreviousPaths(),r.globals.axisCharts?(0===(s=t.map((function(t,e){return i._extendSeries(t,e)}))).length&&(s=[{data:[]}]),r.config.series=s):r.config.series=t.slice(),a&&(r.globals.initialConfig.series=b.clone(r.config.series),r.globals.initialSeries=b.clone(r.config.series)),i.ctx.update().then((function(){n(i.ctx)}))}))}},{key:"_extendSeries",value:function(t,e){var i=this.w,a=i.config.series[e];return s(s({},i.config.series[e]),{},{name:t.name?t.name:a&&a.name,color:t.color?t.color:a&&a.color,type:t.type?t.type:a&&a.type,data:t.data?t.data:a&&a.data})}},{key:"toggleDataPointSelection",value:function(t,e){var i=this.w,a=null,n=".apexcharts-series[data\\:realIndex='".concat(t,"']");return i.globals.axisCharts?a=i.globals.dom.Paper.select("".concat(n," path[j='").concat(e,"'], ").concat(n," circle[j='").concat(e,"'], ").concat(n," rect[j='").concat(e,"']")).members[0]:void 0===e&&(a=i.globals.dom.Paper.select("".concat(n," path[j='").concat(t,"']")).members[0],"pie"!==i.config.chart.type&&"polarArea"!==i.config.chart.type&&"donut"!==i.config.chart.type||this.ctx.pie.pieClicked(t)),a?(new C(this.ctx).pathMouseDown(a,null),a.node?a.node:null):(console.warn("toggleDataPointSelection: Element not found"),null)}},{key:"forceXAxisUpdate",value:function(t){var e=this.w;if(["min","max"].forEach((function(i){void 0!==t.xaxis[i]&&(e.config.xaxis[i]=t.xaxis[i],e.globals.lastXAxis[i]=t.xaxis[i])})),t.xaxis.categories&&t.xaxis.categories.length&&(e.config.xaxis.categories=t.xaxis.categories),e.config.xaxis.convertedCatToNumeric){var i=new D(t);t=i.convertCatToNumericXaxis(t,this.ctx)}return t}},{key:"forceYAxisUpdate",value:function(t){return t.chart&&t.chart.stacked&&"100%"===t.chart.stackType&&(Array.isArray(t.yaxis)?t.yaxis.forEach((function(e,i){t.yaxis[i].min=0,t.yaxis[i].max=100})):(t.yaxis.min=0,t.yaxis.max=100)),t}},{key:"revertDefaultAxisMinMax",value:function(t){var e=this,i=this.w,a=i.globals.lastXAxis,n=i.globals.lastYAxis;t&&t.xaxis&&(a=t.xaxis),t&&t.yaxis&&(n=t.yaxis),i.config.xaxis.min=a.min,i.config.xaxis.max=a.max;i.config.yaxis.map((function(t,a){i.globals.zoomed||void 0!==n[a]?function(t){void 0!==n[t]&&(i.config.yaxis[t].min=n[t].min,i.config.yaxis[t].max=n[t].max)}(a):void 0!==e.ctx.opts.yaxis[a]&&(t.min=e.ctx.opts.yaxis[a].min,t.max=e.ctx.opts.yaxis[a].max)}))}}]),t}();zt="undefined"!=typeof window?window:void 0,Nt=function(t,e){var i=(void 0!==this?this:t).SVG=function(t){if(i.supported)return t=new i.Doc(t),i.parser.draw||i.prepare(),t};if(i.ns="http://www.w3.org/2000/svg",i.xmlns="http://www.w3.org/2000/xmlns/",i.xlink="http://www.w3.org/1999/xlink",i.svgjs="http://svgjs.dev",i.supported=!0,!i.supported)return!1;i.did=1e3,i.eid=function(t){return"Svgjs"+h(t)+i.did++},i.create=function(t){var i=e.createElementNS(this.ns,t);return i.setAttribute("id",this.eid(t)),i},i.extend=function(){var t,e;e=(t=[].slice.call(arguments)).pop();for(var a=t.length-1;a>=0;a--)if(t[a])for(var n in e)t[a].prototype[n]=e[n];i.Set&&i.Set.inherit&&i.Set.inherit()},i.invent=function(t){var e="function"==typeof t.create?t.create:function(){this.constructor.call(this,i.create(t.create))};return t.inherit&&(e.prototype=new t.inherit),t.extend&&i.extend(e,t.extend),t.construct&&i.extend(t.parent||i.Container,t.construct),e},i.adopt=function(e){return e?e.instance?e.instance:((a="svg"==e.nodeName?e.parentNode instanceof t.SVGElement?new i.Nested:new i.Doc:"linearGradient"==e.nodeName?new i.Gradient("linear"):"radialGradient"==e.nodeName?new i.Gradient("radial"):i[h(e.nodeName)]?new(i[h(e.nodeName)]):new i.Element(e)).type=e.nodeName,a.node=e,e.instance=a,a instanceof i.Doc&&a.namespace().defs(),a.setData(JSON.parse(e.getAttribute("svgjs:data"))||{}),a):null;var a},i.prepare=function(){var t=e.getElementsByTagName("body")[0],a=(t?new i.Doc(t):i.adopt(e.documentElement).nested()).size(2,0);i.parser={body:t||e.documentElement,draw:a.style("opacity:0;position:absolute;left:-100%;top:-100%;overflow:hidden").node,poly:a.polyline().node,path:a.path().node,native:i.create("svg")}},i.parser={native:i.create("svg")},e.addEventListener("DOMContentLoaded",(function(){i.parser.draw||i.prepare()}),!1),i.regex={numberAndUnit:/^([+-]?(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?)([a-z%]*)$/i,hex:/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i,rgb:/rgb\((\d+),(\d+),(\d+)\)/,reference:/#([a-z0-9\-_]+)/i,transforms:/\)\s*,?\s*/,whitespace:/\s/g,isHex:/^#[a-f0-9]{3,6}$/i,isRgb:/^rgb\(/,isCss:/[^:]+:[^;]+;?/,isBlank:/^(\s+)?$/,isNumber:/^[+-]?(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,isPercent:/^-?[\d\.]+%$/,isImage:/\.(jpg|jpeg|png|gif|svg)(\?[^=]+.*)?/i,delimiter:/[\s,]+/,hyphen:/([^e])\-/gi,pathLetters:/[MLHVCSQTAZ]/gi,isPathLetter:/[MLHVCSQTAZ]/i,numbersWithDots:/((\d?\.\d+(?:e[+-]?\d+)?)((?:\.\d+(?:e[+-]?\d+)?)+))+/gi,dots:/\./g},i.utils={map:function(t,e){for(var i=t.length,a=[],n=0;n1?1:t,new i.Color({r:~~(this.r+(this.destination.r-this.r)*t),g:~~(this.g+(this.destination.g-this.g)*t),b:~~(this.b+(this.destination.b-this.b)*t)})):this}}),i.Color.test=function(t){return t+="",i.regex.isHex.test(t)||i.regex.isRgb.test(t)},i.Color.isRgb=function(t){return t&&"number"==typeof t.r&&"number"==typeof t.g&&"number"==typeof t.b},i.Color.isColor=function(t){return i.Color.isRgb(t)||i.Color.test(t)},i.Array=function(t,e){0==(t=(t||[]).valueOf()).length&&e&&(t=e.valueOf()),this.value=this.parse(t)},i.extend(i.Array,{toString:function(){return this.value.join(" ")},valueOf:function(){return this.value},parse:function(t){return t=t.valueOf(),Array.isArray(t)?t:this.split(t)}}),i.PointArray=function(t,e){i.Array.call(this,t,e||[[0,0]])},i.PointArray.prototype=new i.Array,i.PointArray.prototype.constructor=i.PointArray;for(var a={M:function(t,e,i){return e.x=i.x=t[0],e.y=i.y=t[1],["M",e.x,e.y]},L:function(t,e){return e.x=t[0],e.y=t[1],["L",t[0],t[1]]},H:function(t,e){return e.x=t[0],["H",t[0]]},V:function(t,e){return e.y=t[0],["V",t[0]]},C:function(t,e){return e.x=t[4],e.y=t[5],["C",t[0],t[1],t[2],t[3],t[4],t[5]]},Q:function(t,e){return e.x=t[2],e.y=t[3],["Q",t[0],t[1],t[2],t[3]]},Z:function(t,e,i){return e.x=i.x,e.y=i.y,["Z"]}},n="mlhvqtcsaz".split(""),s=0,o=n.length;sl);return s},bbox:function(){return i.parser.draw||i.prepare(),i.parser.path.setAttribute("d",this.toString()),i.parser.path.getBBox()}}),i.Number=i.invent({create:function(t,e){this.value=0,this.unit=e||"","number"==typeof t?this.value=isNaN(t)?0:isFinite(t)?t:t<0?-34e37:34e37:"string"==typeof t?(e=t.match(i.regex.numberAndUnit))&&(this.value=parseFloat(e[1]),"%"==e[5]?this.value/=100:"s"==e[5]&&(this.value*=1e3),this.unit=e[5]):t instanceof i.Number&&(this.value=t.valueOf(),this.unit=t.unit)},extend:{toString:function(){return("%"==this.unit?~~(1e8*this.value)/1e6:"s"==this.unit?this.value/1e3:this.value)+this.unit},toJSON:function(){return this.toString()},valueOf:function(){return this.value},plus:function(t){return t=new i.Number(t),new i.Number(this+t,this.unit||t.unit)},minus:function(t){return t=new i.Number(t),new i.Number(this-t,this.unit||t.unit)},times:function(t){return t=new i.Number(t),new i.Number(this*t,this.unit||t.unit)},divide:function(t){return t=new i.Number(t),new i.Number(this/t,this.unit||t.unit)},to:function(t){var e=new i.Number(this);return"string"==typeof t&&(e.unit=t),e},morph:function(t){return this.destination=new i.Number(t),t.relative&&(this.destination.value+=this.value),this},at:function(t){return this.destination?new i.Number(this.destination).minus(this).times(t).plus(this):this}}}),i.Element=i.invent({create:function(t){this._stroke=i.defaults.attrs.stroke,this._event=null,this.dom={},(this.node=t)&&(this.type=t.nodeName,this.node.instance=this,this._stroke=t.getAttribute("stroke")||this._stroke)},extend:{x:function(t){return this.attr("x",t)},y:function(t){return this.attr("y",t)},cx:function(t){return null==t?this.x()+this.width()/2:this.x(t-this.width()/2)},cy:function(t){return null==t?this.y()+this.height()/2:this.y(t-this.height()/2)},move:function(t,e){return this.x(t).y(e)},center:function(t,e){return this.cx(t).cy(e)},width:function(t){return this.attr("width",t)},height:function(t){return this.attr("height",t)},size:function(t,e){var a=p(this,t,e);return this.width(new i.Number(a.width)).height(new i.Number(a.height))},clone:function(t){this.writeDataToDom();var e=v(this.node.cloneNode(!0));return t?t.add(e):this.after(e),e},remove:function(){return this.parent()&&this.parent().removeElement(this),this},replace:function(t){return this.after(t).remove(),t},addTo:function(t){return t.put(this)},putIn:function(t){return t.add(this)},id:function(t){return this.attr("id",t)},show:function(){return this.style("display","")},hide:function(){return this.style("display","none")},visible:function(){return"none"!=this.style("display")},toString:function(){return this.attr("id")},classes:function(){var t=this.attr("class");return null==t?[]:t.trim().split(i.regex.delimiter)},hasClass:function(t){return-1!=this.classes().indexOf(t)},addClass:function(t){if(!this.hasClass(t)){var e=this.classes();e.push(t),this.attr("class",e.join(" "))}return this},removeClass:function(t){return this.hasClass(t)&&this.attr("class",this.classes().filter((function(e){return e!=t})).join(" ")),this},toggleClass:function(t){return this.hasClass(t)?this.removeClass(t):this.addClass(t)},reference:function(t){return i.get(this.attr(t))},parent:function(e){var a=this;if(!a.node.parentNode)return null;if(a=i.adopt(a.node.parentNode),!e)return a;for(;a&&a.node instanceof t.SVGElement;){if("string"==typeof e?a.matches(e):a instanceof e)return a;if(!a.node.parentNode||"#document"==a.node.parentNode.nodeName)return null;a=i.adopt(a.node.parentNode)}},doc:function(){return this instanceof i.Doc?this:this.parent(i.Doc)},parents:function(t){var e=[],i=this;do{if(!(i=i.parent(t))||!i.node)break;e.push(i)}while(i.parent);return e},matches:function(t){return function(t,e){return(t.matches||t.matchesSelector||t.msMatchesSelector||t.mozMatchesSelector||t.webkitMatchesSelector||t.oMatchesSelector).call(t,e)}(this.node,t)},native:function(){return this.node},svg:function(t){var a=e.createElement("svg");if(!(t&&this instanceof i.Parent))return a.appendChild(t=e.createElement("svg")),this.writeDataToDom(),t.appendChild(this.node.cloneNode(!0)),a.innerHTML.replace(/^/,"").replace(/<\/svg>$/,"");a.innerHTML=""+t.replace(/\n/,"").replace(/<([\w:-]+)([^<]+?)\/>/g,"<$1$2>")+"";for(var n=0,s=a.firstChild.childNodes.length;n":function(t){return-Math.cos(t*Math.PI)/2+.5},">":function(t){return Math.sin(t*Math.PI/2)},"<":function(t){return 1-Math.cos(t*Math.PI/2)}},i.morph=function(t){return function(e,a){return new i.MorphObj(e,a).at(t)}},i.Situation=i.invent({create:function(t){this.init=!1,this.reversed=!1,this.reversing=!1,this.duration=new i.Number(t.duration).valueOf(),this.delay=new i.Number(t.delay).valueOf(),this.start=+new Date+this.delay,this.finish=this.start+this.duration,this.ease=t.ease,this.loop=0,this.loops=!1,this.animations={},this.attrs={},this.styles={},this.transforms=[],this.once={}}}),i.FX=i.invent({create:function(t){this._target=t,this.situations=[],this.active=!1,this.situation=null,this.paused=!1,this.lastPos=0,this.pos=0,this.absPos=0,this._speed=1},extend:{animate:function(t,e,a){"object"===r(t)&&(e=t.ease,a=t.delay,t=t.duration);var n=new i.Situation({duration:t||1e3,delay:a||0,ease:i.easing[e||"-"]||e});return this.queue(n),this},target:function(t){return t&&t instanceof i.Element?(this._target=t,this):this._target},timeToAbsPos:function(t){return(t-this.situation.start)/(this.situation.duration/this._speed)},absPosToTime:function(t){return this.situation.duration/this._speed*t+this.situation.start},startAnimFrame:function(){this.stopAnimFrame(),this.animationFrame=t.requestAnimationFrame(function(){this.step()}.bind(this))},stopAnimFrame:function(){t.cancelAnimationFrame(this.animationFrame)},start:function(){return!this.active&&this.situation&&(this.active=!0,this.startCurrent()),this},startCurrent:function(){return this.situation.start=+new Date+this.situation.delay/this._speed,this.situation.finish=this.situation.start+this.situation.duration/this._speed,this.initAnimations().step()},queue:function(t){return("function"==typeof t||t instanceof i.Situation)&&this.situations.push(t),this.situation||(this.situation=this.situations.shift()),this},dequeue:function(){return this.stop(),this.situation=this.situations.shift(),this.situation&&(this.situation instanceof i.Situation?this.start():this.situation.call(this)),this},initAnimations:function(){var t,e=this.situation;if(e.init)return this;for(var a in e.animations){t=this.target()[a](),Array.isArray(t)||(t=[t]),Array.isArray(e.animations[a])||(e.animations[a]=[e.animations[a]]);for(var n=t.length;n--;)e.animations[a][n]instanceof i.Number&&(t[n]=new i.Number(t[n])),e.animations[a][n]=t[n].morph(e.animations[a][n])}for(var a in e.attrs)e.attrs[a]=new i.MorphObj(this.target().attr(a),e.attrs[a]);for(var a in e.styles)e.styles[a]=new i.MorphObj(this.target().style(a),e.styles[a]);return e.initialTransformation=this.target().matrixify(),e.init=!0,this},clearQueue:function(){return this.situations=[],this},clearCurrent:function(){return this.situation=null,this},stop:function(t,e){var i=this.active;return this.active=!1,e&&this.clearQueue(),t&&this.situation&&(!i&&this.startCurrent(),this.atEnd()),this.stopAnimFrame(),this.clearCurrent()},after:function(t){var e=this.last();return this.target().on("finished.fx",(function i(a){a.detail.situation==e&&(t.call(this,e),this.off("finished.fx",i))})),this._callStart()},during:function(t){var e=this.last(),a=function(a){a.detail.situation==e&&t.call(this,a.detail.pos,i.morph(a.detail.pos),a.detail.eased,e)};return this.target().off("during.fx",a).on("during.fx",a),this.after((function(){this.off("during.fx",a)})),this._callStart()},afterAll:function(t){var e=function e(i){t.call(this),this.off("allfinished.fx",e)};return this.target().off("allfinished.fx",e).on("allfinished.fx",e),this._callStart()},last:function(){return this.situations.length?this.situations[this.situations.length-1]:this.situation},add:function(t,e,i){return this.last()[i||"animations"][t]=e,this._callStart()},step:function(t){var e,i,a;t||(this.absPos=this.timeToAbsPos(+new Date)),!1!==this.situation.loops?(e=Math.max(this.absPos,0),i=Math.floor(e),!0===this.situation.loops||ithis.lastPos&&s<=n&&(this.situation.once[s].call(this.target(),this.pos,n),delete this.situation.once[s]);return this.active&&this.target().fire("during",{pos:this.pos,eased:n,fx:this,situation:this.situation}),this.situation?(this.eachAt(),1==this.pos&&!this.situation.reversed||this.situation.reversed&&0==this.pos?(this.stopAnimFrame(),this.target().fire("finished",{fx:this,situation:this.situation}),this.situations.length||(this.target().fire("allfinished"),this.situations.length||(this.target().off(".fx"),this.active=!1)),this.active?this.dequeue():this.clearCurrent()):!this.paused&&this.active&&this.startAnimFrame(),this.lastPos=n,this):this},eachAt:function(){var t,e=this,a=this.target(),n=this.situation;for(var s in n.animations)t=[].concat(n.animations[s]).map((function(t){return"string"!=typeof t&&t.at?t.at(n.ease(e.pos),e.pos):t})),a[s].apply(a,t);for(var s in n.attrs)t=[s].concat(n.attrs[s]).map((function(t){return"string"!=typeof t&&t.at?t.at(n.ease(e.pos),e.pos):t})),a.attr.apply(a,t);for(var s in n.styles)t=[s].concat(n.styles[s]).map((function(t){return"string"!=typeof t&&t.at?t.at(n.ease(e.pos),e.pos):t})),a.style.apply(a,t);if(n.transforms.length){t=n.initialTransformation,s=0;for(var r=n.transforms.length;s=0;--a)this[b[a]]=null!=t[b[a]]?t[b[a]]:e[b[a]]},extend:{extract:function(){var t=f(this,0,1);f(this,1,0);var e=180/Math.PI*Math.atan2(t.y,t.x)-90;return{x:this.e,y:this.f,transformedX:(this.e*Math.cos(e*Math.PI/180)+this.f*Math.sin(e*Math.PI/180))/Math.sqrt(this.a*this.a+this.b*this.b),transformedY:(this.f*Math.cos(e*Math.PI/180)+this.e*Math.sin(-e*Math.PI/180))/Math.sqrt(this.c*this.c+this.d*this.d),rotation:e,a:this.a,b:this.b,c:this.c,d:this.d,e:this.e,f:this.f,matrix:new i.Matrix(this)}},clone:function(){return new i.Matrix(this)},morph:function(t){return this.destination=new i.Matrix(t),this},multiply:function(t){return new i.Matrix(this.native().multiply(function(t){return t instanceof i.Matrix||(t=new i.Matrix(t)),t}(t).native()))},inverse:function(){return new i.Matrix(this.native().inverse())},translate:function(t,e){return new i.Matrix(this.native().translate(t||0,e||0))},native:function(){for(var t=i.parser.native.createSVGMatrix(),e=b.length-1;e>=0;e--)t[b[e]]=this[b[e]];return t},toString:function(){return"matrix("+x(this.a)+","+x(this.b)+","+x(this.c)+","+x(this.d)+","+x(this.e)+","+x(this.f)+")"}},parent:i.Element,construct:{ctm:function(){return new i.Matrix(this.node.getCTM())},screenCTM:function(){if(this instanceof i.Nested){var t=this.rect(1,1),e=t.node.getScreenCTM();return t.remove(),new i.Matrix(e)}return new i.Matrix(this.node.getScreenCTM())}}}),i.Point=i.invent({create:function(t,e){var i;i=Array.isArray(t)?{x:t[0],y:t[1]}:"object"===r(t)?{x:t.x,y:t.y}:null!=t?{x:t,y:null!=e?e:t}:{x:0,y:0},this.x=i.x,this.y=i.y},extend:{clone:function(){return new i.Point(this)},morph:function(t,e){return this.destination=new i.Point(t,e),this}}}),i.extend(i.Element,{point:function(t,e){return new i.Point(t,e).transform(this.screenCTM().inverse())}}),i.extend(i.Element,{attr:function(t,e,a){if(null==t){for(t={},a=(e=this.node.attributes).length-1;a>=0;a--)t[e[a].nodeName]=i.regex.isNumber.test(e[a].nodeValue)?parseFloat(e[a].nodeValue):e[a].nodeValue;return t}if("object"===r(t))for(var n in t)this.attr(n,t[n]);else if(null===e)this.node.removeAttribute(t);else{if(null==e)return null==(e=this.node.getAttribute(t))?i.defaults.attrs[t]:i.regex.isNumber.test(e)?parseFloat(e):e;"stroke-width"==t?this.attr("stroke",parseFloat(e)>0?this._stroke:null):"stroke"==t&&(this._stroke=e),"fill"!=t&&"stroke"!=t||(i.regex.isImage.test(e)&&(e=this.doc().defs().image(e,0,0)),e instanceof i.Image&&(e=this.doc().defs().pattern(0,0,(function(){this.add(e)})))),"number"==typeof e?e=new i.Number(e):i.Color.isColor(e)?e=new i.Color(e):Array.isArray(e)&&(e=new i.Array(e)),"leading"==t?this.leading&&this.leading(e):"string"==typeof a?this.node.setAttributeNS(a,t,e.toString()):this.node.setAttribute(t,e.toString()),!this.rebuild||"font-size"!=t&&"x"!=t||this.rebuild(t,e)}return this}}),i.extend(i.Element,{transform:function(t,e){var a;return"object"!==r(t)?(a=new i.Matrix(this).extract(),"string"==typeof t?a[t]:a):(a=new i.Matrix(this),e=!!e||!!t.relative,null!=t.a&&(a=e?a.multiply(new i.Matrix(t)):new i.Matrix(t)),this.attr("transform",a))}}),i.extend(i.Element,{untransform:function(){return this.attr("transform",null)},matrixify:function(){return(this.attr("transform")||"").split(i.regex.transforms).slice(0,-1).map((function(t){var e=t.trim().split("(");return[e[0],e[1].split(i.regex.delimiter).map((function(t){return parseFloat(t)}))]})).reduce((function(t,e){return"matrix"==e[0]?t.multiply(g(e[1])):t[e[0]].apply(t,e[1])}),new i.Matrix)},toParent:function(t){if(this==t)return this;var e=this.screenCTM(),i=t.screenCTM().inverse();return this.addTo(t).untransform().transform(i.multiply(e)),this},toDoc:function(){return this.toParent(this.doc())}}),i.Transformation=i.invent({create:function(t,e){if(arguments.length>1&&"boolean"!=typeof e)return this.constructor.call(this,[].slice.call(arguments));if(Array.isArray(t))for(var i=0,a=this.arguments.length;i=0},index:function(t){return[].slice.call(this.node.childNodes).indexOf(t.node)},get:function(t){return i.adopt(this.node.childNodes[t])},first:function(){return this.get(0)},last:function(){return this.get(this.node.childNodes.length-1)},each:function(t,e){for(var a=this.children(),n=0,s=a.length;n=0;a--)e.childNodes[a]instanceof t.SVGElement&&v(e.childNodes[a]);return i.adopt(e).id(i.eid(e.nodeName))}function m(t){return null==t.x&&(t.x=0,t.y=0,t.width=0,t.height=0),t.w=t.width,t.h=t.height,t.x2=t.x+t.width,t.y2=t.y+t.height,t.cx=t.x+t.width/2,t.cy=t.y+t.height/2,t}function x(t){return Math.abs(t)>1e-37?t:0}["fill","stroke"].forEach((function(t){var e={};e[t]=function(e){if(void 0===e)return this;if("string"==typeof e||i.Color.isRgb(e)||e&&"function"==typeof e.fill)this.attr(t,e);else for(var a=l[t].length-1;a>=0;a--)null!=e[l[t][a]]&&this.attr(l.prefix(t,l[t][a]),e[l[t][a]]);return this},i.extend(i.Element,i.FX,e)})),i.extend(i.Element,i.FX,{translate:function(t,e){return this.transform({x:t,y:e})},matrix:function(t){return this.attr("transform",new i.Matrix(6==arguments.length?[].slice.call(arguments):t))},opacity:function(t){return this.attr("opacity",t)},dx:function(t){return this.x(new i.Number(t).plus(this instanceof i.FX?0:this.x()),!0)},dy:function(t){return this.y(new i.Number(t).plus(this instanceof i.FX?0:this.y()),!0)}}),i.extend(i.Path,{length:function(){return this.node.getTotalLength()},pointAt:function(t){return this.node.getPointAtLength(t)}}),i.Set=i.invent({create:function(t){Array.isArray(t)?this.members=t:this.clear()},extend:{add:function(){for(var t=[].slice.call(arguments),e=0,i=t.length;e-1&&this.members.splice(e,1),this},each:function(t){for(var e=0,i=this.members.length;e=0},index:function(t){return this.members.indexOf(t)},get:function(t){return this.members[t]},first:function(){return this.get(0)},last:function(){return this.get(this.members.length-1)},valueOf:function(){return this.members}},construct:{set:function(t){return new i.Set(t)}}}),i.FX.Set=i.invent({create:function(t){this.set=t}}),i.Set.inherit=function(){var t=[];for(var e in i.Shape.prototype)"function"==typeof i.Shape.prototype[e]&&"function"!=typeof i.Set.prototype[e]&&t.push(e);for(var e in t.forEach((function(t){i.Set.prototype[t]=function(){for(var e=0,a=this.members.length;e=0;t--)delete this.memory()[arguments[t]];return this},memory:function(){return this._memory||(this._memory={})}}),i.get=function(t){var a=e.getElementById(function(t){var e=(t||"").toString().match(i.regex.reference);if(e)return e[1]}(t)||t);return i.adopt(a)},i.select=function(t,a){return new i.Set(i.utils.map((a||e).querySelectorAll(t),(function(t){return i.adopt(t)})))},i.extend(i.Parent,{select:function(t){return i.select(t,this.node)}});var b="abcdef".split("");if("function"!=typeof t.CustomEvent){var y=function(t,i){i=i||{bubbles:!1,cancelable:!1,detail:void 0};var a=e.createEvent("CustomEvent");return a.initCustomEvent(t,i.bubbles,i.cancelable,i.detail),a};y.prototype=t.Event.prototype,i.CustomEvent=y}else i.CustomEvent=t.CustomEvent;return i},void 0!==(a=function(){return Nt(zt,zt.document)}.call(e,i,e,t))&&(t.exports=a),function(){SVG.Filter=SVG.invent({create:"filter",inherit:SVG.Parent,extend:{source:"SourceGraphic",sourceAlpha:"SourceAlpha",background:"BackgroundImage",backgroundAlpha:"BackgroundAlpha",fill:"FillPaint",stroke:"StrokePaint",autoSetIn:!0,put:function(t,e){return this.add(t,e),!t.attr("in")&&this.autoSetIn&&t.attr("in",this.source),t.attr("result")||t.attr("result",t),t},blend:function(t,e,i){return this.put(new SVG.BlendEffect(t,e,i))},colorMatrix:function(t,e){return this.put(new SVG.ColorMatrixEffect(t,e))},convolveMatrix:function(t){return this.put(new SVG.ConvolveMatrixEffect(t))},componentTransfer:function(t){return this.put(new SVG.ComponentTransferEffect(t))},composite:function(t,e,i){return this.put(new SVG.CompositeEffect(t,e,i))},flood:function(t,e){return this.put(new SVG.FloodEffect(t,e))},offset:function(t,e){return this.put(new SVG.OffsetEffect(t,e))},image:function(t){return this.put(new SVG.ImageEffect(t))},merge:function(){var t=[void 0];for(var e in arguments)t.push(arguments[e]);return this.put(new(SVG.MergeEffect.bind.apply(SVG.MergeEffect,t)))},gaussianBlur:function(t,e){return this.put(new SVG.GaussianBlurEffect(t,e))},morphology:function(t,e){return this.put(new SVG.MorphologyEffect(t,e))},diffuseLighting:function(t,e,i){return this.put(new SVG.DiffuseLightingEffect(t,e,i))},displacementMap:function(t,e,i,a,n){return this.put(new SVG.DisplacementMapEffect(t,e,i,a,n))},specularLighting:function(t,e,i,a){return this.put(new SVG.SpecularLightingEffect(t,e,i,a))},tile:function(){return this.put(new SVG.TileEffect)},turbulence:function(t,e,i,a,n){return this.put(new SVG.TurbulenceEffect(t,e,i,a,n))},toString:function(){return"url(#"+this.attr("id")+")"}}}),SVG.extend(SVG.Defs,{filter:function(t){var e=this.put(new SVG.Filter);return"function"==typeof t&&t.call(e,e),e}}),SVG.extend(SVG.Container,{filter:function(t){return this.defs().filter(t)}}),SVG.extend(SVG.Element,SVG.G,SVG.Nested,{filter:function(t){return this.filterer=t instanceof SVG.Element?t:this.doc().filter(t),this.doc()&&this.filterer.doc()!==this.doc()&&this.doc().defs().add(this.filterer),this.attr("filter",this.filterer),this.filterer},unfilter:function(t){return this.filterer&&!0===t&&this.filterer.remove(),delete this.filterer,this.attr("filter",null)}}),SVG.Effect=SVG.invent({create:function(){this.constructor.call(this)},inherit:SVG.Element,extend:{in:function(t){return null==t?this.parent()&&this.parent().select('[result="'+this.attr("in")+'"]').get(0)||this.attr("in"):this.attr("in",t)},result:function(t){return null==t?this.attr("result"):this.attr("result",t)},toString:function(){return this.result()}}}),SVG.ParentEffect=SVG.invent({create:function(){this.constructor.call(this)},inherit:SVG.Parent,extend:{in:function(t){return null==t?this.parent()&&this.parent().select('[result="'+this.attr("in")+'"]').get(0)||this.attr("in"):this.attr("in",t)},result:function(t){return null==t?this.attr("result"):this.attr("result",t)},toString:function(){return this.result()}}});var t={blend:function(t,e){return this.parent()&&this.parent().blend(this,t,e)},colorMatrix:function(t,e){return this.parent()&&this.parent().colorMatrix(t,e).in(this)},convolveMatrix:function(t){return this.parent()&&this.parent().convolveMatrix(t).in(this)},componentTransfer:function(t){return this.parent()&&this.parent().componentTransfer(t).in(this)},composite:function(t,e){return this.parent()&&this.parent().composite(this,t,e)},flood:function(t,e){return this.parent()&&this.parent().flood(t,e)},offset:function(t,e){return this.parent()&&this.parent().offset(t,e).in(this)},image:function(t){return this.parent()&&this.parent().image(t)},merge:function(){return this.parent()&&this.parent().merge.apply(this.parent(),[this].concat(arguments))},gaussianBlur:function(t,e){return this.parent()&&this.parent().gaussianBlur(t,e).in(this)},morphology:function(t,e){return this.parent()&&this.parent().morphology(t,e).in(this)},diffuseLighting:function(t,e,i){return this.parent()&&this.parent().diffuseLighting(t,e,i).in(this)},displacementMap:function(t,e,i,a){return this.parent()&&this.parent().displacementMap(this,t,e,i,a)},specularLighting:function(t,e,i,a){return this.parent()&&this.parent().specularLighting(t,e,i,a).in(this)},tile:function(){return this.parent()&&this.parent().tile().in(this)},turbulence:function(t,e,i,a,n){return this.parent()&&this.parent().turbulence(t,e,i,a,n).in(this)}};SVG.extend(SVG.Effect,t),SVG.extend(SVG.ParentEffect,t),SVG.ChildEffect=SVG.invent({create:function(){this.constructor.call(this)},inherit:SVG.Element,extend:{in:function(t){this.attr("in",t)}}});var e={blend:function(t,e,i){this.attr({in:t,in2:e,mode:i||"normal"})},colorMatrix:function(t,e){"matrix"==t&&(e=n(e)),this.attr({type:t,values:void 0===e?null:e})},convolveMatrix:function(t){t=n(t),this.attr({order:Math.sqrt(t.split(" ").length),kernelMatrix:t})},composite:function(t,e,i){this.attr({in:t,in2:e,operator:i})},flood:function(t,e){this.attr("flood-color",t),null!=e&&this.attr("flood-opacity",e)},offset:function(t,e){this.attr({dx:t,dy:e})},image:function(t){this.attr("href",t,SVG.xlink)},displacementMap:function(t,e,i,a,n){this.attr({in:t,in2:e,scale:i,xChannelSelector:a,yChannelSelector:n})},gaussianBlur:function(t,e){null!=t||null!=e?this.attr("stdDeviation",s(Array.prototype.slice.call(arguments))):this.attr("stdDeviation","0 0")},morphology:function(t,e){this.attr({operator:t,radius:e})},tile:function(){},turbulence:function(t,e,i,a,n){this.attr({numOctaves:e,seed:i,stitchTiles:a,baseFrequency:t,type:n})}},i={merge:function(){var t;if(arguments[0]instanceof SVG.Set){var e=this;arguments[0].each((function(t){this instanceof SVG.MergeNode?e.put(this):(this instanceof SVG.Effect||this instanceof SVG.ParentEffect)&&e.put(new SVG.MergeNode(this))}))}else{t=Array.isArray(arguments[0])?arguments[0]:arguments;for(var i=0;i1&&(E*=a=Math.sqrt(a),O*=a),n=(new SVG.Matrix).rotate(M).scale(1/E,1/O).rotate(-M),z=z.transform(n),o=(s=[(N=N.transform(n)).x-z.x,N.y-z.y])[0]*s[0]+s[1]*s[1],r=Math.sqrt(o),s[0]/=r,s[1]/=r,l=o<4?Math.sqrt(1-o/4):0,L===I&&(l*=-1),c=new SVG.Point((N.x+z.x)/2+l*-s[1],(N.y+z.y)/2+l*s[0]),d=new SVG.Point(z.x-c.x,z.y-c.y),h=new SVG.Point(N.x-c.x,N.y-c.y),u=Math.acos(d.x/Math.sqrt(d.x*d.x+d.y*d.y)),d.y<0&&(u*=-1),p=Math.acos(h.x/Math.sqrt(h.x*h.x+h.y*h.y)),h.y<0&&(p*=-1),I&&u>p&&(p+=2*Math.PI),!I&&us.maxX-e.width&&(r=(a=s.maxX-e.width)-this.startPoints.box.x),null!=s.minY&&ns.maxY-e.height&&(o=(n=s.maxY-e.height)-this.startPoints.box.y),null!=s.snapToGrid&&(a-=a%s.snapToGrid,n-=n%s.snapToGrid,r-=r%s.snapToGrid,o-=o%s.snapToGrid),this.el instanceof SVG.G?this.el.matrix(this.startPoints.transform).transform({x:r,y:o},!0):this.el.move(a,n));return i},t.prototype.end=function(t){var e=this.drag(t);this.el.fire("dragend",{event:t,p:e,m:this.m,handler:this}),SVG.off(window,"mousemove.drag"),SVG.off(window,"touchmove.drag"),SVG.off(window,"mouseup.drag"),SVG.off(window,"touchend.drag")},SVG.extend(SVG.Element,{draggable:function(e,i){"function"!=typeof e&&"object"!=typeof e||(i=e,e=!0);var a=this.remember("_draggable")||new t(this);return(e=void 0===e||e)?a.init(i||{},e):(this.off("mousedown.drag"),this.off("touchstart.drag")),this}})}.call(void 0),function(){function t(t){this.el=t,t.remember("_selectHandler",this),this.pointSelection={isSelected:!1},this.rectSelection={isSelected:!1},this.pointsList={lt:[0,0],rt:["width",0],rb:["width","height"],lb:[0,"height"],t:["width",0],r:["width","height"],b:["width","height"],l:[0,"height"]},this.pointCoord=function(t,e,i){var a="string"!=typeof t?t:e[t];return i?a/2:a},this.pointCoords=function(t,e){var i=this.pointsList[t];return{x:this.pointCoord(i[0],e,"t"===t||"b"===t),y:this.pointCoord(i[1],e,"r"===t||"l"===t)}}}t.prototype.init=function(t,e){var i=this.el.bbox();this.options={};var a=this.el.selectize.defaults.points;for(var n in this.el.selectize.defaults)this.options[n]=this.el.selectize.defaults[n],void 0!==e[n]&&(this.options[n]=e[n]);var s=["points","pointsExclude"];for(var n in s){var r=this.options[s[n]];"string"==typeof r?r=r.length>0?r.split(/\s*,\s*/i):[]:"boolean"==typeof r&&"points"===s[n]&&(r=r?a:[]),this.options[s[n]]=r}this.options.points=[a,this.options.points].reduce((function(t,e){return t.filter((function(t){return e.indexOf(t)>-1}))})),this.options.points=[this.options.points,this.options.pointsExclude].reduce((function(t,e){return t.filter((function(t){return e.indexOf(t)<0}))})),this.parent=this.el.parent(),this.nested=this.nested||this.parent.group(),this.nested.matrix(new SVG.Matrix(this.el).translate(i.x,i.y)),this.options.deepSelect&&-1!==["line","polyline","polygon"].indexOf(this.el.type)?this.selectPoints(t):this.selectRect(t),this.observe(),this.cleanup()},t.prototype.selectPoints=function(t){return this.pointSelection.isSelected=t,this.pointSelection.set||(this.pointSelection.set=this.parent.set(),this.drawPoints()),this},t.prototype.getPointArray=function(){var t=this.el.bbox();return this.el.array().valueOf().map((function(e){return[e[0]-t.x,e[1]-t.y]}))},t.prototype.drawPoints=function(){for(var t=this,e=this.getPointArray(),i=0,a=e.length;i0&&this.parameters.box.height-i[1]>0){if("text"===this.parameters.type)return this.el.move(this.parameters.box.x+i[0],this.parameters.box.y),void this.el.attr("font-size",this.parameters.fontSize-i[0]);i=this.checkAspectRatio(i),this.el.move(this.parameters.box.x+i[0],this.parameters.box.y+i[1]).size(this.parameters.box.width-i[0],this.parameters.box.height-i[1])}};break;case"rt":this.calc=function(t,e){var i=this.snapToGrid(t,e,2);if(this.parameters.box.width+i[0]>0&&this.parameters.box.height-i[1]>0){if("text"===this.parameters.type)return this.el.move(this.parameters.box.x-i[0],this.parameters.box.y),void this.el.attr("font-size",this.parameters.fontSize+i[0]);i=this.checkAspectRatio(i,!0),this.el.move(this.parameters.box.x,this.parameters.box.y+i[1]).size(this.parameters.box.width+i[0],this.parameters.box.height-i[1])}};break;case"rb":this.calc=function(t,e){var i=this.snapToGrid(t,e,0);if(this.parameters.box.width+i[0]>0&&this.parameters.box.height+i[1]>0){if("text"===this.parameters.type)return this.el.move(this.parameters.box.x-i[0],this.parameters.box.y),void this.el.attr("font-size",this.parameters.fontSize+i[0]);i=this.checkAspectRatio(i),this.el.move(this.parameters.box.x,this.parameters.box.y).size(this.parameters.box.width+i[0],this.parameters.box.height+i[1])}};break;case"lb":this.calc=function(t,e){var i=this.snapToGrid(t,e,1);if(this.parameters.box.width-i[0]>0&&this.parameters.box.height+i[1]>0){if("text"===this.parameters.type)return this.el.move(this.parameters.box.x+i[0],this.parameters.box.y),void this.el.attr("font-size",this.parameters.fontSize-i[0]);i=this.checkAspectRatio(i,!0),this.el.move(this.parameters.box.x+i[0],this.parameters.box.y).size(this.parameters.box.width-i[0],this.parameters.box.height+i[1])}};break;case"t":this.calc=function(t,e){var i=this.snapToGrid(t,e,2);if(this.parameters.box.height-i[1]>0){if("text"===this.parameters.type)return;this.el.move(this.parameters.box.x,this.parameters.box.y+i[1]).height(this.parameters.box.height-i[1])}};break;case"r":this.calc=function(t,e){var i=this.snapToGrid(t,e,0);if(this.parameters.box.width+i[0]>0){if("text"===this.parameters.type)return;this.el.move(this.parameters.box.x,this.parameters.box.y).width(this.parameters.box.width+i[0])}};break;case"b":this.calc=function(t,e){var i=this.snapToGrid(t,e,0);if(this.parameters.box.height+i[1]>0){if("text"===this.parameters.type)return;this.el.move(this.parameters.box.x,this.parameters.box.y).height(this.parameters.box.height+i[1])}};break;case"l":this.calc=function(t,e){var i=this.snapToGrid(t,e,1);if(this.parameters.box.width-i[0]>0){if("text"===this.parameters.type)return;this.el.move(this.parameters.box.x+i[0],this.parameters.box.y).width(this.parameters.box.width-i[0])}};break;case"rot":this.calc=function(t,e){var i=t+this.parameters.p.x,a=e+this.parameters.p.y,n=Math.atan2(this.parameters.p.y-this.parameters.box.y-this.parameters.box.height/2,this.parameters.p.x-this.parameters.box.x-this.parameters.box.width/2),s=Math.atan2(a-this.parameters.box.y-this.parameters.box.height/2,i-this.parameters.box.x-this.parameters.box.width/2),r=this.parameters.rotation+180*(s-n)/Math.PI+this.options.snapToAngle/2;this.el.center(this.parameters.box.cx,this.parameters.box.cy).rotate(r-r%this.options.snapToAngle,this.parameters.box.cx,this.parameters.box.cy)};break;case"point":this.calc=function(t,e){var i=this.snapToGrid(t,e,this.parameters.pointCoords[0],this.parameters.pointCoords[1]),a=this.el.array().valueOf();a[this.parameters.i][0]=this.parameters.pointCoords[0]+i[0],a[this.parameters.i][1]=this.parameters.pointCoords[1]+i[1],this.el.plot(a)}}this.el.fire("resizestart",{dx:this.parameters.x,dy:this.parameters.y,event:t}),SVG.on(window,"touchmove.resize",(function(t){e.update(t||window.event)})),SVG.on(window,"touchend.resize",(function(){e.done()})),SVG.on(window,"mousemove.resize",(function(t){e.update(t||window.event)})),SVG.on(window,"mouseup.resize",(function(){e.done()}))},t.prototype.update=function(t){if(t){var e=this._extractPosition(t),i=this.transformPoint(e.x,e.y),a=i.x-this.parameters.p.x,n=i.y-this.parameters.p.y;this.lastUpdateCall=[a,n],this.calc(a,n),this.el.fire("resizing",{dx:a,dy:n,event:t})}else this.lastUpdateCall&&this.calc(this.lastUpdateCall[0],this.lastUpdateCall[1])},t.prototype.done=function(){this.lastUpdateCall=null,SVG.off(window,"mousemove.resize"),SVG.off(window,"mouseup.resize"),SVG.off(window,"touchmove.resize"),SVG.off(window,"touchend.resize"),this.el.fire("resizedone")},t.prototype.snapToGrid=function(t,e,i,a){var n;return void 0!==a?n=[(i+t)%this.options.snapToGrid,(a+e)%this.options.snapToGrid]:(i=null==i?3:i,n=[(this.parameters.box.x+t+(1&i?0:this.parameters.box.width))%this.options.snapToGrid,(this.parameters.box.y+e+(2&i?0:this.parameters.box.height))%this.options.snapToGrid]),t<0&&(n[0]-=this.options.snapToGrid),e<0&&(n[1]-=this.options.snapToGrid),t-=Math.abs(n[0])r.maxX&&(t=r.maxX-n),void 0!==r.minY&&s+er.maxY&&(e=r.maxY-s),[t,e]},t.prototype.checkAspectRatio=function(t,e){if(!this.options.saveAspectRatio)return t;var i=t.slice(),a=this.parameters.box.width/this.parameters.box.height,n=this.parameters.box.width+t[0],s=this.parameters.box.height-t[1],r=n/s;return ra&&(i[0]=this.parameters.box.width-s*a,e&&(i[0]=-i[0])),i},SVG.extend(SVG.Element,{resize:function(e){return(this.remember("_resizeHandler")||new t(this)).init(e||{}),this}}),SVG.Element.prototype.resize.defaults={snapToAngle:.1,snapToGrid:1,constraint:{},saveAspectRatio:!1}}).call(this)}(),void 0===window.Apex&&(window.Apex={});var $t=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"initModules",value:function(){this.ctx.publicMethods=["updateOptions","updateSeries","appendData","appendSeries","toggleSeries","showSeries","hideSeries","setLocale","resetSeries","zoomX","toggleDataPointSelection","dataURI","exportToCSV","addXaxisAnnotation","addYaxisAnnotation","addPointAnnotation","clearAnnotations","removeAnnotation","paper","destroy"],this.ctx.eventList=["click","mousedown","mousemove","mouseleave","touchstart","touchmove","touchleave","mouseup","touchend"],this.ctx.animations=new y(this.ctx),this.ctx.axes=new tt(this.ctx),this.ctx.core=new Xt(this.ctx.el,this.ctx),this.ctx.config=new z({}),this.ctx.data=new Y(this.ctx),this.ctx.grid=new U(this.ctx),this.ctx.graphics=new C(this.ctx),this.ctx.coreUtils=new S(this.ctx),this.ctx.crosshairs=new et(this.ctx),this.ctx.events=new K(this.ctx),this.ctx.exports=new V(this.ctx),this.ctx.localization=new J(this.ctx),this.ctx.options=new O,this.ctx.responsive=new it(this.ctx),this.ctx.series=new F(this.ctx),this.ctx.theme=new at(this.ctx),this.ctx.formatters=new B(this.ctx),this.ctx.titleSubtitle=new nt(this.ctx),this.ctx.legend=new ht(this.ctx),this.ctx.toolbar=new ut(this.ctx),this.ctx.tooltip=new yt(this.ctx),this.ctx.dimensions=new ct(this.ctx),this.ctx.updateHelpers=new Rt(this.ctx),this.ctx.zoomPanSelection=new pt(this.ctx),this.ctx.w.globals.tooltip=new yt(this.ctx)}}]),t}(),Ft=function(){function t(e){o(this,t),this.ctx=e,this.w=e.w}return c(t,[{key:"clear",value:function(t){var e=t.isUpdating;this.ctx.zoomPanSelection&&this.ctx.zoomPanSelection.destroy(),this.ctx.toolbar&&this.ctx.toolbar.destroy(),this.ctx.animations=null,this.ctx.axes=null,this.ctx.annotations=null,this.ctx.core=null,this.ctx.data=null,this.ctx.grid=null,this.ctx.series=null,this.ctx.responsive=null,this.ctx.theme=null,this.ctx.formatters=null,this.ctx.titleSubtitle=null,this.ctx.legend=null,this.ctx.dimensions=null,this.ctx.options=null,this.ctx.crosshairs=null,this.ctx.zoomPanSelection=null,this.ctx.updateHelpers=null,this.ctx.toolbar=null,this.ctx.localization=null,this.ctx.w.globals.tooltip=null,this.clearDomElements({isUpdating:e})}},{key:"killSVG",value:function(t){t.each((function(t,e){this.removeClass("*"),this.off(),this.stop()}),!0),t.ungroup(),t.clear()}},{key:"clearDomElements",value:function(t){var e=this,i=t.isUpdating,a=this.w.globals.dom.Paper.node;a.parentNode&&a.parentNode.parentNode&&!i&&(a.parentNode.parentNode.style.minHeight="unset");var n=this.w.globals.dom.baseEl;n&&this.ctx.eventList.forEach((function(t){n.removeEventListener(t,e.ctx.events.documentEvent)}));var s=this.w.globals.dom;if(null!==this.ctx.el)for(;this.ctx.el.firstChild;)this.ctx.el.removeChild(this.ctx.el.firstChild);this.killSVG(s.Paper),s.Paper.remove(),s.elWrap=null,s.elGraphical=null,s.elAnnotations=null,s.elLegendWrap=null,s.baseEl=null,s.elGridRect=null,s.elGridRectMask=null,s.elGridRectMarkerMask=null,s.elForecastMask=null,s.elNonForecastMask=null,s.elDefs=null}}]),t}(),Yt=new WeakMap,Bt=function(){function t(e,i){o(this,t),this.opts=i,this.ctx=this,this.w=new j(i).init(),this.el=e,this.w.globals.cuid=b.randomId(),this.w.globals.chartID=this.w.config.chart.id?b.escapeString(this.w.config.chart.id):this.w.globals.cuid,new $t(this).initModules(),this.create=b.bind(this.create,this),this.windowResizeHandler=this._windowResizeHandler.bind(this),this.parentResizeHandler=this._parentResizeCallback.bind(this)}return c(t,[{key:"render",value:function(){var t=this;return new Promise((function(e,i){if(null!==t.el){void 0===Apex._chartInstances&&(Apex._chartInstances=[]),t.w.config.chart.id&&Apex._chartInstances.push({id:t.w.globals.chartID,group:t.w.config.chart.group,chart:t}),t.setLocale(t.w.config.chart.defaultLocale);var a=t.w.config.chart.events.beforeMount;if("function"==typeof a&&a(t,t.w),t.events.fireEvent("beforeMount",[t,t.w]),window.addEventListener("resize",t.windowResizeHandler),function(t,e){var i=!1;if(t.nodeType!==Node.DOCUMENT_FRAGMENT_NODE){var a=t.getBoundingClientRect();"none"!==t.style.display&&0!==a.width||(i=!0)}var n=new ResizeObserver((function(a){i&&e.call(t,a),i=!0}));t.nodeType===Node.DOCUMENT_FRAGMENT_NODE?Array.from(t.children).forEach((function(t){return n.observe(t)})):n.observe(t),Yt.set(e,n)}(t.el.parentNode,t.parentResizeHandler),!t.css){var n=t.el.getRootNode&&t.el.getRootNode(),s=b.is("ShadowRoot",n),r=t.el.ownerDocument,o=r.getElementById("apexcharts-css");!s&&o||(t.css=document.createElement("style"),t.css.id="apexcharts-css",t.css.textContent='@keyframes opaque {\n 0% {\n opacity: 0\n }\n\n to {\n opacity: 1\n }\n}\n\n@keyframes resizeanim {\n 0%,to {\n opacity: 0\n }\n}\n\n.apexcharts-canvas {\n position: relative;\n user-select: none\n}\n\n.apexcharts-canvas ::-webkit-scrollbar {\n -webkit-appearance: none;\n width: 6px\n}\n\n.apexcharts-canvas ::-webkit-scrollbar-thumb {\n border-radius: 4px;\n background-color: rgba(0,0,0,.5);\n box-shadow: 0 0 1px rgba(255,255,255,.5);\n -webkit-box-shadow: 0 0 1px rgba(255,255,255,.5)\n}\n\n.apexcharts-inner {\n position: relative\n}\n\n.apexcharts-text tspan {\n font-family: inherit\n}\n\n.legend-mouseover-inactive {\n transition: .15s ease all;\n opacity: .2\n}\n\n.apexcharts-legend-text {\n padding-left: 15px;\n margin-left: -15px;\n}\n\n.apexcharts-series-collapsed {\n opacity: 0\n}\n\n.apexcharts-tooltip {\n border-radius: 5px;\n box-shadow: 2px 2px 6px -4px #999;\n cursor: default;\n font-size: 14px;\n left: 62px;\n opacity: 0;\n pointer-events: none;\n position: absolute;\n top: 20px;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n white-space: nowrap;\n z-index: 12;\n transition: .15s ease all\n}\n\n.apexcharts-tooltip.apexcharts-active {\n opacity: 1;\n transition: .15s ease all\n}\n\n.apexcharts-tooltip.apexcharts-theme-light {\n border: 1px solid #e3e3e3;\n background: rgba(255,255,255,.96)\n}\n\n.apexcharts-tooltip.apexcharts-theme-dark {\n color: #fff;\n background: rgba(30,30,30,.8)\n}\n\n.apexcharts-tooltip * {\n font-family: inherit\n}\n\n.apexcharts-tooltip-title {\n padding: 6px;\n font-size: 15px;\n margin-bottom: 4px\n}\n\n.apexcharts-tooltip.apexcharts-theme-light .apexcharts-tooltip-title {\n background: #eceff1;\n border-bottom: 1px solid #ddd\n}\n\n.apexcharts-tooltip.apexcharts-theme-dark .apexcharts-tooltip-title {\n background: rgba(0,0,0,.7);\n border-bottom: 1px solid #333\n}\n\n.apexcharts-tooltip-text-goals-value,.apexcharts-tooltip-text-y-value,.apexcharts-tooltip-text-z-value {\n display: inline-block;\n margin-left: 5px;\n font-weight: 600\n}\n\n.apexcharts-tooltip-text-goals-label:empty,.apexcharts-tooltip-text-goals-value:empty,.apexcharts-tooltip-text-y-label:empty,.apexcharts-tooltip-text-y-value:empty,.apexcharts-tooltip-text-z-value:empty,.apexcharts-tooltip-title:empty {\n display: none\n}\n\n.apexcharts-tooltip-text-goals-label,.apexcharts-tooltip-text-goals-value {\n padding: 6px 0 5px\n}\n\n.apexcharts-tooltip-goals-group,.apexcharts-tooltip-text-goals-label,.apexcharts-tooltip-text-goals-value {\n display: flex\n}\n\n.apexcharts-tooltip-text-goals-label:not(:empty),.apexcharts-tooltip-text-goals-value:not(:empty) {\n margin-top: -6px\n}\n\n.apexcharts-tooltip-marker {\n width: 12px;\n height: 12px;\n position: relative;\n top: 0;\n margin-right: 10px;\n border-radius: 50%\n}\n\n.apexcharts-tooltip-series-group {\n padding: 0 10px;\n display: none;\n text-align: left;\n justify-content: left;\n align-items: center\n}\n\n.apexcharts-tooltip-series-group.apexcharts-active .apexcharts-tooltip-marker {\n opacity: 1\n}\n\n.apexcharts-tooltip-series-group.apexcharts-active,.apexcharts-tooltip-series-group:last-child {\n padding-bottom: 4px\n}\n\n.apexcharts-tooltip-series-group-hidden {\n opacity: 0;\n height: 0;\n line-height: 0;\n padding: 0!important\n}\n\n.apexcharts-tooltip-y-group {\n padding: 6px 0 5px\n}\n\n.apexcharts-custom-tooltip,.apexcharts-tooltip-box {\n padding: 4px 8px\n}\n\n.apexcharts-tooltip-boxPlot {\n display: flex;\n flex-direction: column-reverse\n}\n\n.apexcharts-tooltip-box>div {\n margin: 4px 0\n}\n\n.apexcharts-tooltip-box span.value {\n font-weight: 700\n}\n\n.apexcharts-tooltip-rangebar {\n padding: 5px 8px\n}\n\n.apexcharts-tooltip-rangebar .category {\n font-weight: 600;\n color: #777\n}\n\n.apexcharts-tooltip-rangebar .series-name {\n font-weight: 700;\n display: block;\n margin-bottom: 5px\n}\n\n.apexcharts-xaxistooltip,.apexcharts-yaxistooltip {\n opacity: 0;\n pointer-events: none;\n color: #373d3f;\n font-size: 13px;\n text-align: center;\n border-radius: 2px;\n position: absolute;\n z-index: 10;\n background: #eceff1;\n border: 1px solid #90a4ae\n}\n\n.apexcharts-xaxistooltip {\n padding: 9px 10px;\n transition: .15s ease all\n}\n\n.apexcharts-xaxistooltip.apexcharts-theme-dark {\n background: rgba(0,0,0,.7);\n border: 1px solid rgba(0,0,0,.5);\n color: #fff\n}\n\n.apexcharts-xaxistooltip:after,.apexcharts-xaxistooltip:before {\n left: 50%;\n border: solid transparent;\n content: " ";\n height: 0;\n width: 0;\n position: absolute;\n pointer-events: none\n}\n\n.apexcharts-xaxistooltip:after {\n border-color: transparent;\n border-width: 6px;\n margin-left: -6px\n}\n\n.apexcharts-xaxistooltip:before {\n border-color: transparent;\n border-width: 7px;\n margin-left: -7px\n}\n\n.apexcharts-xaxistooltip-bottom:after,.apexcharts-xaxistooltip-bottom:before {\n bottom: 100%\n}\n\n.apexcharts-xaxistooltip-top:after,.apexcharts-xaxistooltip-top:before {\n top: 100%\n}\n\n.apexcharts-xaxistooltip-bottom:after {\n border-bottom-color: #eceff1\n}\n\n.apexcharts-xaxistooltip-bottom:before {\n border-bottom-color: #90a4ae\n}\n\n.apexcharts-xaxistooltip-bottom.apexcharts-theme-dark:after,.apexcharts-xaxistooltip-bottom.apexcharts-theme-dark:before {\n border-bottom-color: rgba(0,0,0,.5)\n}\n\n.apexcharts-xaxistooltip-top:after {\n border-top-color: #eceff1\n}\n\n.apexcharts-xaxistooltip-top:before {\n border-top-color: #90a4ae\n}\n\n.apexcharts-xaxistooltip-top.apexcharts-theme-dark:after,.apexcharts-xaxistooltip-top.apexcharts-theme-dark:before {\n border-top-color: rgba(0,0,0,.5)\n}\n\n.apexcharts-xaxistooltip.apexcharts-active {\n opacity: 1;\n transition: .15s ease all\n}\n\n.apexcharts-yaxistooltip {\n padding: 4px 10px\n}\n\n.apexcharts-yaxistooltip.apexcharts-theme-dark {\n background: rgba(0,0,0,.7);\n border: 1px solid rgba(0,0,0,.5);\n color: #fff\n}\n\n.apexcharts-yaxistooltip:after,.apexcharts-yaxistooltip:before {\n top: 50%;\n border: solid transparent;\n content: " ";\n height: 0;\n width: 0;\n position: absolute;\n pointer-events: none\n}\n\n.apexcharts-yaxistooltip:after {\n border-color: transparent;\n border-width: 6px;\n margin-top: -6px\n}\n\n.apexcharts-yaxistooltip:before {\n border-color: transparent;\n border-width: 7px;\n margin-top: -7px\n}\n\n.apexcharts-yaxistooltip-left:after,.apexcharts-yaxistooltip-left:before {\n left: 100%\n}\n\n.apexcharts-yaxistooltip-right:after,.apexcharts-yaxistooltip-right:before {\n right: 100%\n}\n\n.apexcharts-yaxistooltip-left:after {\n border-left-color: #eceff1\n}\n\n.apexcharts-yaxistooltip-left:before {\n border-left-color: #90a4ae\n}\n\n.apexcharts-yaxistooltip-left.apexcharts-theme-dark:after,.apexcharts-yaxistooltip-left.apexcharts-theme-dark:before {\n border-left-color: rgba(0,0,0,.5)\n}\n\n.apexcharts-yaxistooltip-right:after {\n border-right-color: #eceff1\n}\n\n.apexcharts-yaxistooltip-right:before {\n border-right-color: #90a4ae\n}\n\n.apexcharts-yaxistooltip-right.apexcharts-theme-dark:after,.apexcharts-yaxistooltip-right.apexcharts-theme-dark:before {\n border-right-color: rgba(0,0,0,.5)\n}\n\n.apexcharts-yaxistooltip.apexcharts-active {\n opacity: 1\n}\n\n.apexcharts-yaxistooltip-hidden {\n display: none\n}\n\n.apexcharts-xcrosshairs,.apexcharts-ycrosshairs {\n pointer-events: none;\n opacity: 0;\n transition: .15s ease all\n}\n\n.apexcharts-xcrosshairs.apexcharts-active,.apexcharts-ycrosshairs.apexcharts-active {\n opacity: 1;\n transition: .15s ease all\n}\n\n.apexcharts-ycrosshairs-hidden {\n opacity: 0\n}\n\n.apexcharts-selection-rect {\n cursor: move\n}\n\n.svg_select_boundingRect,.svg_select_points_rot {\n pointer-events: none;\n opacity: 0;\n visibility: hidden\n}\n\n.apexcharts-selection-rect+g .svg_select_boundingRect,.apexcharts-selection-rect+g .svg_select_points_rot {\n opacity: 0;\n visibility: hidden\n}\n\n.apexcharts-selection-rect+g .svg_select_points_l,.apexcharts-selection-rect+g .svg_select_points_r {\n cursor: ew-resize;\n opacity: 1;\n visibility: visible\n}\n\n.svg_select_points {\n fill: #efefef;\n stroke: #333;\n rx: 2\n}\n\n.apexcharts-svg.apexcharts-zoomable.hovering-zoom {\n cursor: crosshair\n}\n\n.apexcharts-svg.apexcharts-zoomable.hovering-pan {\n cursor: move\n}\n\n.apexcharts-menu-icon,.apexcharts-pan-icon,.apexcharts-reset-icon,.apexcharts-selection-icon,.apexcharts-toolbar-custom-icon,.apexcharts-zoom-icon,.apexcharts-zoomin-icon,.apexcharts-zoomout-icon {\n cursor: pointer;\n width: 20px;\n height: 20px;\n line-height: 24px;\n color: #6e8192;\n text-align: center\n}\n\n.apexcharts-menu-icon svg,.apexcharts-reset-icon svg,.apexcharts-zoom-icon svg,.apexcharts-zoomin-icon svg,.apexcharts-zoomout-icon svg {\n fill: #6e8192\n}\n\n.apexcharts-selection-icon svg {\n fill: #444;\n transform: scale(.76)\n}\n\n.apexcharts-theme-dark .apexcharts-menu-icon svg,.apexcharts-theme-dark .apexcharts-pan-icon svg,.apexcharts-theme-dark .apexcharts-reset-icon svg,.apexcharts-theme-dark .apexcharts-selection-icon svg,.apexcharts-theme-dark .apexcharts-toolbar-custom-icon svg,.apexcharts-theme-dark .apexcharts-zoom-icon svg,.apexcharts-theme-dark .apexcharts-zoomin-icon svg,.apexcharts-theme-dark .apexcharts-zoomout-icon svg {\n fill: #f3f4f5\n}\n\n.apexcharts-canvas .apexcharts-reset-zoom-icon.apexcharts-selected svg,.apexcharts-canvas .apexcharts-selection-icon.apexcharts-selected svg,.apexcharts-canvas .apexcharts-zoom-icon.apexcharts-selected svg {\n fill: #008ffb\n}\n\n.apexcharts-theme-light .apexcharts-menu-icon:hover svg,.apexcharts-theme-light .apexcharts-reset-icon:hover svg,.apexcharts-theme-light .apexcharts-selection-icon:not(.apexcharts-selected):hover svg,.apexcharts-theme-light .apexcharts-zoom-icon:not(.apexcharts-selected):hover svg,.apexcharts-theme-light .apexcharts-zoomin-icon:hover svg,.apexcharts-theme-light .apexcharts-zoomout-icon:hover svg {\n fill: #333\n}\n\n.apexcharts-menu-icon,.apexcharts-selection-icon {\n position: relative\n}\n\n.apexcharts-reset-icon {\n margin-left: 5px\n}\n\n.apexcharts-menu-icon,.apexcharts-reset-icon,.apexcharts-zoom-icon {\n transform: scale(.85)\n}\n\n.apexcharts-zoomin-icon,.apexcharts-zoomout-icon {\n transform: scale(.7)\n}\n\n.apexcharts-zoomout-icon {\n margin-right: 3px\n}\n\n.apexcharts-pan-icon {\n transform: scale(.62);\n position: relative;\n left: 1px;\n top: 0\n}\n\n.apexcharts-pan-icon svg {\n fill: #fff;\n stroke: #6e8192;\n stroke-width: 2\n}\n\n.apexcharts-pan-icon.apexcharts-selected svg {\n stroke: #008ffb\n}\n\n.apexcharts-pan-icon:not(.apexcharts-selected):hover svg {\n stroke: #333\n}\n\n.apexcharts-toolbar {\n position: absolute;\n z-index: 11;\n max-width: 176px;\n text-align: right;\n border-radius: 3px;\n padding: 0 6px 2px;\n display: flex;\n justify-content: space-between;\n align-items: center\n}\n\n.apexcharts-menu {\n background: #fff;\n position: absolute;\n top: 100%;\n border: 1px solid #ddd;\n border-radius: 3px;\n padding: 3px;\n right: 10px;\n opacity: 0;\n min-width: 110px;\n transition: .15s ease all;\n pointer-events: none\n}\n\n.apexcharts-menu.apexcharts-menu-open {\n opacity: 1;\n pointer-events: all;\n transition: .15s ease all\n}\n\n.apexcharts-menu-item {\n padding: 6px 7px;\n font-size: 12px;\n cursor: pointer\n}\n\n.apexcharts-theme-light .apexcharts-menu-item:hover {\n background: #eee\n}\n\n.apexcharts-theme-dark .apexcharts-menu {\n background: rgba(0,0,0,.7);\n color: #fff\n}\n\n@media screen and (min-width:768px) {\n .apexcharts-canvas:hover .apexcharts-toolbar {\n opacity: 1\n }\n}\n\n.apexcharts-canvas .apexcharts-element-hidden,.apexcharts-datalabel.apexcharts-element-hidden,.apexcharts-hide .apexcharts-series-points {\n opacity: 0\n}\n\n.apexcharts-datalabel,.apexcharts-datalabel-label,.apexcharts-datalabel-value,.apexcharts-datalabels,.apexcharts-pie-label {\n cursor: default;\n pointer-events: none\n}\n\n.apexcharts-pie-label-delay {\n opacity: 0;\n animation-name: opaque;\n animation-duration: .3s;\n animation-fill-mode: forwards;\n animation-timing-function: ease\n}\n\n.apexcharts-annotation-rect,.apexcharts-area-series .apexcharts-area,.apexcharts-area-series .apexcharts-series-markers .apexcharts-marker.no-pointer-events,.apexcharts-gridline,.apexcharts-line,.apexcharts-line-series .apexcharts-series-markers .apexcharts-marker.no-pointer-events,.apexcharts-point-annotation-label,.apexcharts-radar-series path,.apexcharts-radar-series polygon,.apexcharts-toolbar svg,.apexcharts-tooltip .apexcharts-marker,.apexcharts-xaxis-annotation-label,.apexcharts-yaxis-annotation-label,.apexcharts-zoom-rect {\n pointer-events: none\n}\n\n.apexcharts-marker {\n transition: .15s ease all\n}\n\n.resize-triggers {\n animation: 1ms resizeanim;\n visibility: hidden;\n opacity: 0;\n height: 100%;\n width: 100%;\n overflow: hidden\n}\n\n.contract-trigger:before,.resize-triggers,.resize-triggers>div {\n content: " ";\n display: block;\n position: absolute;\n top: 0;\n left: 0\n}\n\n.resize-triggers>div {\n height: 100%;\n width: 100%;\n background: #eee;\n overflow: auto\n}\n\n.contract-trigger:before {\n overflow: hidden;\n width: 200%;\n height: 200%\n}\n',s?n.prepend(t.css):r.head.appendChild(t.css))}var l=t.create(t.w.config.series,{});if(!l)return e(t);t.mount(l).then((function(){"function"==typeof t.w.config.chart.events.mounted&&t.w.config.chart.events.mounted(t,t.w),t.events.fireEvent("mounted",[t,t.w]),e(l)})).catch((function(t){i(t)}))}else i(new Error("Element not found"))}))}},{key:"create",value:function(t,e){var i=this.w;new $t(this).initModules();var a=this.w.globals;if(a.noData=!1,a.animationEnded=!1,this.responsive.checkResponsiveConfig(e),i.config.xaxis.convertedCatToNumeric&&new D(i.config).convertCatToNumericXaxis(i.config,this.ctx),null===this.el)return a.animationEnded=!0,null;if(this.core.setupElements(),"treemap"===i.config.chart.type&&(i.config.grid.show=!1,i.config.yaxis[0].show=!1),0===a.svgWidth)return a.animationEnded=!0,null;var n=S.checkComboSeries(t);a.comboCharts=n.comboCharts,a.comboBarCount=n.comboBarCount;var s=t.every((function(t){return t.data&&0===t.data.length}));(0===t.length||s)&&this.series.handleNoData(),this.events.setupEventHandlers(),this.data.parseData(t),this.theme.init(),new X(this).setGlobalMarkerSize(),this.formatters.setLabelFormatters(),this.titleSubtitle.draw(),a.noData&&a.collapsedSeries.length!==a.series.length&&!i.config.legend.showForSingleSeries||this.legend.init(),this.series.hasAllSeriesEqualX(),a.axisCharts&&(this.core.coreCalculations(),"category"!==i.config.xaxis.type&&this.formatters.setLabelFormatters(),this.ctx.toolbar.minX=i.globals.minX,this.ctx.toolbar.maxX=i.globals.maxX),this.formatters.heatmapLabelFormatters(),new S(this).getLargestMarkerSize(),this.dimensions.plotCoords();var r=this.core.xySettings();this.grid.createGridMask();var o=this.core.plotChartType(t,r),l=new $(this);l.bringForward(),i.config.dataLabels.background.enabled&&l.dataLabelsBackground(),this.core.shiftGraphPosition();var c={plot:{left:i.globals.translateX,top:i.globals.translateY,width:i.globals.gridWidth,height:i.globals.gridHeight}};return{elGraph:o,xyRatios:r,elInner:i.globals.dom.elGraphical,dimensions:c}}},{key:"mount",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,i=this,a=i.w;return new Promise((function(n,s){if(null===i.el)return s(new Error("Not enough data to display or target element not found"));(null===e||a.globals.allSeriesCollapsed)&&i.series.handleNoData(),i.grid=new U(i);var r=i.grid.drawGrid();"treemap"!==a.config.chart.type&&i.axes.drawAxis(a.config.chart.type,r),i.annotations=new M(i),i.annotations.drawImageAnnos(),i.annotations.drawTextAnnos(),"back"===a.config.grid.position&&r&&a.globals.dom.elGraphical.add(r.el);var o=new G(t.ctx,r),l=new Q(t.ctx,r);if(null!==r&&(o.xAxisLabelCorrections(r.xAxisTickWidth),l.setYAxisTextAlignments(),a.config.yaxis.map((function(t,e){-1===a.globals.ignoreYAxisIndexes.indexOf(e)&&l.yAxisTitleRotate(e,t.opposite)}))),"back"===a.config.annotations.position&&(a.globals.dom.Paper.add(a.globals.dom.elAnnotations),i.annotations.drawAxesAnnotations()),Array.isArray(e.elGraph))for(var c=0;c0&&a.globals.memory.methodsToExec.forEach((function(t){t.method(t.params,!1,t.context)})),a.globals.axisCharts||a.globals.noData||i.core.resizeNonAxisCharts(),n(i)}))}},{key:"destroy",value:function(){var t,e;window.removeEventListener("resize",this.windowResizeHandler),this.el.parentNode,t=this.parentResizeHandler,(e=Yt.get(t))&&(e.disconnect(),Yt.delete(t));var i=this.w.config.chart.id;i&&Apex._chartInstances.forEach((function(t,e){t.id===b.escapeString(i)&&Apex._chartInstances.splice(e,1)})),new Ft(this.ctx).clear({isUpdating:!1})}},{key:"updateOptions",value:function(t){var e=this,i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],a=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],n=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],s=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],r=this.w;return r.globals.selection=void 0,t.series&&(this.series.resetSeries(!1,!0,!1),t.series.length&&t.series[0].data&&(t.series=t.series.map((function(t,i){return e.updateHelpers._extendSeries(t,i)}))),this.updateHelpers.revertDefaultAxisMinMax()),t.xaxis&&(t=this.updateHelpers.forceXAxisUpdate(t)),t.yaxis&&(t=this.updateHelpers.forceYAxisUpdate(t)),r.globals.collapsedSeriesIndices.length>0&&this.series.clearPreviousPaths(),t.theme&&(t=this.theme.updateThemeOptions(t)),this.updateHelpers._updateOptions(t,i,a,n,s)}},{key:"updateSeries",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];return this.series.resetSeries(!1),this.updateHelpers.revertDefaultAxisMinMax(),this.updateHelpers._updateSeries(t,e,i)}},{key:"appendSeries",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=this.w.config.series.slice();return a.push(t),this.series.resetSeries(!1),this.updateHelpers.revertDefaultAxisMinMax(),this.updateHelpers._updateSeries(a,e,i)}},{key:"appendData",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=this;i.w.globals.dataChanged=!0,i.series.getPreviousPaths();for(var a=i.w.config.series.slice(),n=0;n0&&void 0!==arguments[0])||arguments[0],e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];this.series.resetSeries(t,e)}},{key:"addEventListener",value:function(t,e){this.events.addEventListener(t,e)}},{key:"removeEventListener",value:function(t,e){this.events.removeEventListener(t,e)}},{key:"addXaxisAnnotation",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,a=this;i&&(a=i),a.annotations.addXaxisAnnotationExternal(t,e,a)}},{key:"addYaxisAnnotation",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,a=this;i&&(a=i),a.annotations.addYaxisAnnotationExternal(t,e,a)}},{key:"addPointAnnotation",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,a=this;i&&(a=i),a.annotations.addPointAnnotationExternal(t,e,a)}},{key:"clearAnnotations",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0,e=this;t&&(e=t),e.annotations.clearAnnotations(e)}},{key:"removeAnnotation",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,i=this;e&&(i=e),i.annotations.removeAnnotation(i,t)}},{key:"getChartArea",value:function(){return this.w.globals.dom.baseEl.querySelector(".apexcharts-inner")}},{key:"getSeriesTotalXRange",value:function(t,e){return this.coreUtils.getSeriesTotalsXRange(t,e)}},{key:"getHighestValueInSeries",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return new Z(this.ctx).getMinYMaxY(t).highestY}},{key:"getLowestValueInSeries",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return new Z(this.ctx).getMinYMaxY(t).lowestY}},{key:"getSeriesTotal",value:function(){return this.w.globals.seriesTotals}},{key:"toggleDataPointSelection",value:function(t,e){return this.updateHelpers.toggleDataPointSelection(t,e)}},{key:"zoomX",value:function(t,e){this.ctx.toolbar.zoomUpdateOptions(t,e)}},{key:"setLocale",value:function(t){this.localization.setCurrentLocaleValues(t)}},{key:"dataURI",value:function(t){return new V(this.ctx).dataURI(t)}},{key:"exportToCSV",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return new V(this.ctx).exportToCSV(t)}},{key:"paper",value:function(){return this.w.globals.dom.Paper}},{key:"_parentResizeCallback",value:function(){this.w.globals.animationEnded&&this.w.config.chart.redrawOnParentResize&&this._windowResize()}},{key:"_windowResize",value:function(){var t=this;clearTimeout(this.w.globals.resizeTimer),this.w.globals.resizeTimer=window.setTimeout((function(){t.w.globals.resized=!0,t.w.globals.dataChanged=!1,t.ctx.update()}),150)}},{key:"_windowResizeHandler",value:function(){var t=this.w.config.chart.redrawOnWindowResize;"function"==typeof t&&(t=t()),t&&this._windowResize()}}],[{key:"getChartByID",value:function(t){var e=b.escapeString(t),i=Apex._chartInstances.filter((function(t){return t.id===e}))[0];return i&&i.chart}},{key:"initOnLoad",value:function(){for(var e=document.querySelectorAll("[data-apexcharts]"),i=0;i2?n-2:0),r=2;r1?i[s-1]:void 0,o=s>2?i[2]:void 0;for(r=t.length>3&&"function"==typeof r?(s--,r):void 0,o&&n(i[0],i[1],o)&&(r=s<3?void 0:r,s=1),e=Object(e);++ad))return!1;var u=l.get(t),p=l.get(e);if(u&&p)return u==e&&p==t;var f=-1,g=!0,v=2&i?new a:void 0;for(l.set(t,e),l.set(e,t);++f-1&&t%1==0&&t-1}},2283:function(t,e,i){var a=i(3623);t.exports=function(t,e){var i=this.__data__,n=a(i,t);return n<0?(++this.size,i.push([t,e])):i[n][1]=e,this}},6071:function(t,e,i){var a=i(3619),n=i(3818),s=i(2327);t.exports=function(){this.size=0,this.__data__={hash:new a,map:new(s||n),string:new a}}},8751:function(t,e,i){var a=i(6009);t.exports=function(t){var e=a(this,t).delete(t);return this.size-=e?1:0,e}},5282:function(t,e,i){var a=i(6009);t.exports=function(t){return a(this,t).get(t)}},203:function(t,e,i){var a=i(6009);t.exports=function(t){return a(this,t).has(t)}},6455:function(t,e,i){var a=i(6009);t.exports=function(t,e){var i=a(this,t),n=i.size;return i.set(t,e),this.size+=i.size==n?0:1,this}},6563:function(t){t.exports=function(t){var e=-1,i=Array(t.size);return t.forEach((function(t,a){i[++e]=[a,t]})),i}},3161:function(t,e,i){var a=i(3885)(Object,"create");t.exports=a},4062:function(t,e,i){var a=i(1363)(Object.keys,Object);t.exports=a},6217:function(t){t.exports=function(t){var e=[];if(null!=t)for(var i in Object(t))e.push(i);return e}},5059:function(t,e,i){t=i.nmd(t);var a=i(4632),n=e&&!e.nodeType&&e,s=n&&t&&!t.nodeType&&t,r=s&&s.exports===n&&a.process,o=function(){try{return s&&s.require&&s.require("util").types||r&&r.binding&&r.binding("util")}catch(t){}}();t.exports=o},9165:function(t){var e=Object.prototype.toString;t.exports=function(t){return e.call(t)}},1363:function(t){t.exports=function(t,e){return function(i){return t(e(i))}}},2873:function(t,e,i){var a=i(8250),n=Math.max;t.exports=function(t,e,i){return e=n(void 0===e?t.length-1:e,0),function(){for(var s=arguments,r=-1,o=n(s.length-e,0),l=Array(o);++r0){if(++i>=800)return arguments[0]}else i=0;return t.apply(void 0,arguments)}}},5545:function(t,e,i){var a=i(3818);t.exports=function(){this.__data__=new a,this.size=0}},3506:function(t){t.exports=function(t){var e=this.__data__,i=e.delete(t);return this.size=e.size,i}},8911:function(t){t.exports=function(t){return this.__data__.get(t)}},8331:function(t){t.exports=function(t){return this.__data__.has(t)}},7347:function(t,e,i){var a=i(3818),n=i(2327),s=i(7157);t.exports=function(t,e){var i=this.__data__;if(i instanceof a){var r=i.__data__;if(!n||r.length<199)return r.push([t,e]),this.size=++i.size,this;i=this.__data__=new s(r)}return i.set(t,e),this.size=i.size,this}},371:function(t){var e=Function.prototype.toString;t.exports=function(t){if(null!=t){try{return e.call(t)}catch(t){}try{return t+""}catch(t){}}return""}},2437:function(t){t.exports=function(t){return function(){return t}}},9439:function(t){t.exports=function(t,e){return t===e||t!=t&&e!=e}},8979:function(t){t.exports=function(t){return t}},5875:function(t,e,i){var a=i(706),n=i(3536),s=Object.prototype,r=s.hasOwnProperty,o=s.propertyIsEnumerable,l=a(function(){return arguments}())?a:function(t){return n(t)&&r.call(t,"callee")&&!o.call(t,"callee")};t.exports=l},9878:function(t){var e=Array.isArray;t.exports=e},641:function(t,e,i){var a=i(7949),n=i(252);t.exports=function(t){return null!=t&&n(t.length)&&!a(t)}},4792:function(t,e,i){var a=i(641),n=i(3536);t.exports=function(t){return n(t)&&a(t)}},8902:function(t,e,i){t=i.nmd(t);var a=i(6239),n=i(4589),s=e&&!e.nodeType&&e,r=s&&t&&!t.nodeType&&t,o=r&&r.exports===s?a.Buffer:void 0,l=(o?o.isBuffer:void 0)||n;t.exports=l},2387:function(t,e,i){var a=i(6495);t.exports=function(t,e){return a(t,e)}},7949:function(t,e,i){var a=i(946),n=i(886);t.exports=function(t){if(!n(t))return!1;var e=a(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}},252:function(t){t.exports=function(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}},886:function(t){t.exports=function(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}},3536:function(t){t.exports=function(t){return null!=t&&"object"==typeof t}},2422:function(t,e,i){var a=i(946),n=i(5703),s=i(3536),r=Function.prototype,o=Object.prototype,l=r.toString,c=o.hasOwnProperty,d=l.call(Object);t.exports=function(t){if(!s(t)||"[object Object]"!=a(t))return!1;var e=n(t);if(null===e)return!0;var i=c.call(e,"constructor")&&e.constructor;return"function"==typeof i&&i instanceof i&&l.call(i)==d}},9251:function(t,e,i){var a=i(4881),n=i(2099),s=i(5059),r=s&&s.isTypedArray,o=r?n(r):a;t.exports=o},4236:function(t,e,i){var a=i(3142),n=i(794),s=i(641);t.exports=function(t){return s(t)?a(t):n(t)}},2250:function(t,e,i){var a=i(3142),n=i(7643),s=i(641);t.exports=function(t){return s(t)?a(t,!0):n(t)}},3079:function(t,e,i){var a=i(2324),n=i(3106)((function(t,e,i){a(t,e,i)}));t.exports=n},9353:function(t){t.exports=function(){return[]}},4589:function(t){t.exports=function(){return!1}},282:function(t,e,i){var a=i(1502),n=i(2250);t.exports=function(t){return a(t,n(t))}},8772:function(){},8482:function(){},2568:function(){},7508:function(){},5713:function(){},8447:function(){},4789:function(){},1061:function(){},4512:function(){},9720:function(){},8119:function(){},9370:function(){},1529:function(){},2389:function(){},9917:function(){},5532:function(){},156:function(){},149:function(){},3918:function(t,e,i){"use strict";function a(t){return null!==t&&"object"==typeof t&&"constructor"in t&&t.constructor===Object}function n(t,e){void 0===t&&(t={}),void 0===e&&(e={}),Object.keys(e).forEach((function(i){void 0===t[i]?t[i]=e[i]:a(e[i])&&a(t[i])&&Object.keys(e[i]).length>0&&n(t[i],e[i])}))}i.r(e),i.d(e,{default:function(){return dt}});var s="undefined"!=typeof document?document:{},r={body:{},addEventListener:function(){},removeEventListener:function(){},activeElement:{blur:function(){},nodeName:""},querySelector:function(){return null},querySelectorAll:function(){return[]},getElementById:function(){return null},createEvent:function(){return{initEvent:function(){}}},createElement:function(){return{children:[],childNodes:[],style:{},setAttribute:function(){},getElementsByTagName:function(){return[]}}},createElementNS:function(){return{}},importNode:function(){return null},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""}};n(s,r);var o="undefined"!=typeof window?window:{};n(o,{document:r,navigator:{userAgent:""},location:{hash:"",host:"",hostname:"",href:"",origin:"",pathname:"",protocol:"",search:""},history:{replaceState:function(){},pushState:function(){},go:function(){},back:function(){}},CustomEvent:function(){return this},addEventListener:function(){},removeEventListener:function(){},getComputedStyle:function(){return{getPropertyValue:function(){return""}}},Image:function(){},Date:function(){},screen:{},setTimeout:function(){},clearTimeout:function(){},matchMedia:function(){return{}}});class l{constructor(t){const e=this;for(let i=0;i=0&&o.indexOf(">")>=0){let t="div";for(0===o.indexOf(":~]/)?(e||s).querySelectorAll(t.trim()):[s.getElementById(t.trim().split("#")[1])],a=0;a0&&t[0].nodeType)for(a=0;a=0;t-=1){const i=r[t];a&&i.listener===a||a&&i.listener&&i.listener.dom7proxy&&i.listener.dom7proxy===a?(s.removeEventListener(e,i.proxyListener,n),r.splice(t,1)):a||(s.removeEventListener(e,i.proxyListener,n),r.splice(t,1))}}}return this},trigger:function(...t){const e=t[0].split(" "),i=t[1];for(let a=0;ae>0)),a.dispatchEvent(r),a.dom7EventData=[],delete a.dom7EventData}}return this},transitionEnd:function(t){const e=["webkitTransitionEnd","transitionend"],i=this;let a;function n(s){if(s.target===this)for(t.call(this,s),a=0;a0){if(t){const t=this.styles();return this[0].offsetWidth+parseFloat(t.getPropertyValue("margin-right"))+parseFloat(t.getPropertyValue("margin-left"))}return this[0].offsetWidth}return null},outerHeight:function(t){if(this.length>0){if(t){const t=this.styles();return this[0].offsetHeight+parseFloat(t.getPropertyValue("margin-top"))+parseFloat(t.getPropertyValue("margin-bottom"))}return this[0].offsetHeight}return null},offset:function(){if(this.length>0){const t=this[0],e=t.getBoundingClientRect(),i=s.body,a=t.clientTop||i.clientTop||0,n=t.clientLeft||i.clientLeft||0,r=t===o?o.scrollY:t.scrollTop,l=t===o?o.scrollX:t.scrollLeft;return{top:e.top+r-a,left:e.left+l-n}}return null},css:function(t,e){let i;if(1===arguments.length){if("string"!=typeof t){for(i=0;ie-1?new l([]):t<0?(i=e+t,new l(i<0?[]:[this[i]])):new l([this[t]])},append:function(...t){let e;for(let i=0;i=0;i-=1)this[e].insertBefore(a.childNodes[i],this[e].childNodes[0])}else if(t instanceof l)for(i=0;i0?t?this[0].nextElementSibling&&c(this[0].nextElementSibling).is(t)?new l([this[0].nextElementSibling]):new l([]):this[0].nextElementSibling?new l([this[0].nextElementSibling]):new l([]):new l([])},nextAll:function(t){const e=[];let i=this[0];if(!i)return new l([]);for(;i.nextElementSibling;){const a=i.nextElementSibling;t?c(a).is(t)&&e.push(a):e.push(a),i=a}return new l(e)},prev:function(t){if(this.length>0){const e=this[0];return t?e.previousElementSibling&&c(e.previousElementSibling).is(t)?new l([e.previousElementSibling]):new l([]):e.previousElementSibling?new l([e.previousElementSibling]):new l([])}return new l([])},prevAll:function(t){const e=[];let i=this[0];if(!i)return new l([]);for(;i.previousElementSibling;){const a=i.previousElementSibling;t?c(a).is(t)&&e.push(a):e.push(a),i=a}return new l(e)},parent:function(t){const e=[];for(let i=0;i{c.fn[t]=c.fn[t]||h[t]}));const u={deleteProps(t){const e=t;Object.keys(e).forEach((t=>{try{e[t]=null}catch(t){}try{delete e[t]}catch(t){}}))},nextTick(t,e=0){return setTimeout(t,e)},now(){return Date.now()},getTranslate(t,e="x"){let i,a,n;const s=o.getComputedStyle(t,null);return o.WebKitCSSMatrix?(a=s.transform||s.webkitTransform,a.split(",").length>6&&(a=a.split(", ").map((t=>t.replace(",","."))).join(", ")),n=new o.WebKitCSSMatrix("none"===a?"":a)):(n=s.MozTransform||s.OTransform||s.MsTransform||s.msTransform||s.transform||s.getPropertyValue("transform").replace("translate(","matrix(1, 0, 0, 1,"),i=n.toString().split(",")),"x"===e&&(a=o.WebKitCSSMatrix?n.m41:16===i.length?parseFloat(i[12]):parseFloat(i[4])),"y"===e&&(a=o.WebKitCSSMatrix?n.m42:16===i.length?parseFloat(i[13]):parseFloat(i[5])),a||0},parseUrlQuery(t){const e={};let i,a,n,s,r=t||o.location.href;if("string"==typeof r&&r.length)for(r=r.indexOf("?")>-1?r.replace(/\S*\?/,""):"",a=r.split("&").filter((t=>""!==t)),s=a.length,i=0;i=0,observer:"MutationObserver"in o||"WebkitMutationObserver"in o,passiveListener:function(){let t=!1;try{const e=Object.defineProperty({},"passive",{get(){t=!0}});o.addEventListener("testPassiveListener",null,e)}catch(t){}return t}(),gestures:"ongesturestart"in o};class f{constructor(t={}){const e=this;e.params=t,e.eventsListeners={},e.params&&e.params.on&&Object.keys(e.params.on).forEach((t=>{e.on(t,e.params.on[t])}))}on(t,e,i){const a=this;if("function"!=typeof e)return a;const n=i?"unshift":"push";return t.split(" ").forEach((t=>{a.eventsListeners[t]||(a.eventsListeners[t]=[]),a.eventsListeners[t][n](e)})),a}once(t,e,i){const a=this;if("function"!=typeof e)return a;function n(...i){a.off(t,n),n.f7proxy&&delete n.f7proxy,e.apply(a,i)}return n.f7proxy=e,a.on(t,n,i)}off(t,e){const i=this;return i.eventsListeners?(t.split(" ").forEach((t=>{void 0===e?i.eventsListeners[t]=[]:i.eventsListeners[t]&&i.eventsListeners[t].length&&i.eventsListeners[t].forEach(((a,n)=>{(a===e||a.f7proxy&&a.f7proxy===e)&&i.eventsListeners[t].splice(n,1)}))})),i):i}emit(...t){const e=this;if(!e.eventsListeners)return e;let i,a,n;return"string"==typeof t[0]||Array.isArray(t[0])?(i=t[0],a=t.slice(1,t.length),n=e):(i=t[0].events,a=t[0].data,n=t[0].context||e),(Array.isArray(i)?i:i.split(" ")).forEach((t=>{if(e.eventsListeners&&e.eventsListeners[t]){const i=[];e.eventsListeners[t].forEach((t=>{i.push(t)})),i.forEach((t=>{t.apply(n,a)}))}})),e}useModulesParams(t){const e=this;e.modules&&Object.keys(e.modules).forEach((i=>{const a=e.modules[i];a.params&&u.extend(t,a.params)}))}useModules(t={}){const e=this;e.modules&&Object.keys(e.modules).forEach((i=>{const a=e.modules[i],n=t[i]||{};a.instance&&Object.keys(a.instance).forEach((t=>{const i=a.instance[t];e[t]="function"==typeof i?i.bind(e):i})),a.on&&e.on&&Object.keys(a.on).forEach((t=>{e.on(t,a.on[t])})),a.create&&a.create.bind(e)(n)}))}static set components(t){this.use&&this.use(t)}static installModule(t,...e){const i=this;i.prototype.modules||(i.prototype.modules={});const a=t.name||`${Object.keys(i.prototype.modules).length}_${u.now()}`;return i.prototype.modules[a]=t,t.proto&&Object.keys(t.proto).forEach((e=>{i.prototype[e]=t.proto[e]})),t.static&&Object.keys(t.static).forEach((e=>{i[e]=t.static[e]})),t.install&&t.install.apply(i,e),i}static use(t,...e){const i=this;return Array.isArray(t)?(t.forEach((t=>i.installModule(t))),i):i.installModule(t,...e)}}var g={updateSize:function(){const t=this;let e,i;const a=t.$el;e=void 0!==t.params.width?t.params.width:a[0].clientWidth,i=void 0!==t.params.height?t.params.height:a[0].clientHeight,0===e&&t.isHorizontal()||0===i&&t.isVertical()||(e=e-parseInt(a.css("padding-left"),10)-parseInt(a.css("padding-right"),10),i=i-parseInt(a.css("padding-top"),10)-parseInt(a.css("padding-bottom"),10),u.extend(t,{width:e,height:i,size:t.isHorizontal()?e:i}))},updateSlides:function(){const t=this,e=t.params,{$wrapperEl:i,size:a,rtlTranslate:n,wrongRTL:s}=t,r=t.virtual&&e.virtual.enabled,l=r?t.virtual.slides.length:t.slides.length,c=i.children(`.${t.params.slideClass}`),d=r?t.virtual.slides.length:c.length;let h=[];const p=[],f=[];function g(t){return!e.cssMode||t!==c.length-1}let v=e.slidesOffsetBefore;"function"==typeof v&&(v=e.slidesOffsetBefore.call(t));let m=e.slidesOffsetAfter;"function"==typeof m&&(m=e.slidesOffsetAfter.call(t));const x=t.snapGrid.length,b=t.snapGrid.length;let y,w,C=e.spaceBetween,S=-v,k=0,A=0;if(void 0===a)return;"string"==typeof C&&C.indexOf("%")>=0&&(C=parseFloat(C.replace("%",""))/100*a),t.virtualSize=-C,n?c.css({marginLeft:"",marginTop:""}):c.css({marginRight:"",marginBottom:""}),e.slidesPerColumn>1&&(y=Math.floor(d/e.slidesPerColumn)===d/t.params.slidesPerColumn?d:Math.ceil(d/e.slidesPerColumn)*e.slidesPerColumn,"auto"!==e.slidesPerView&&"row"===e.slidesPerColumnFill&&(y=Math.max(y,e.slidesPerView*e.slidesPerColumn)));const P=e.slidesPerColumn,T=y/P,E=Math.floor(d/e.slidesPerColumn);for(let i=0;i1){let a,s,r;if("row"===e.slidesPerColumnFill&&e.slidesPerGroup>1){const t=Math.floor(i/(e.slidesPerGroup*e.slidesPerColumn)),o=i-e.slidesPerColumn*e.slidesPerGroup*t,l=0===t?e.slidesPerGroup:Math.min(Math.ceil((d-t*P*e.slidesPerGroup)/P),e.slidesPerGroup);r=Math.floor(o/l),s=o-r*l+t*e.slidesPerGroup,a=s+r*y/P,n.css({"-webkit-box-ordinal-group":a,"-moz-box-ordinal-group":a,"-ms-flex-order":a,"-webkit-order":a,order:a})}else"column"===e.slidesPerColumnFill?(s=Math.floor(i/P),r=i-s*P,(s>E||s===E&&r===P-1)&&(r+=1,r>=P&&(r=0,s+=1))):(r=Math.floor(i/T),s=i-r*T);n.css("margin-"+(t.isHorizontal()?"top":"left"),0!==r&&e.spaceBetween&&`${e.spaceBetween}px`)}if("none"!==n.css("display")){if("auto"===e.slidesPerView){const i=o.getComputedStyle(n[0],null),a=n[0].style.transform,s=n[0].style.webkitTransform;if(a&&(n[0].style.transform="none"),s&&(n[0].style.webkitTransform="none"),e.roundLengths)w=t.isHorizontal()?n.outerWidth(!0):n.outerHeight(!0);else if(t.isHorizontal()){const t=parseFloat(i.getPropertyValue("width")),e=parseFloat(i.getPropertyValue("padding-left")),a=parseFloat(i.getPropertyValue("padding-right")),n=parseFloat(i.getPropertyValue("margin-left")),s=parseFloat(i.getPropertyValue("margin-right")),r=i.getPropertyValue("box-sizing");w=r&&"border-box"===r?t+n+s:t+e+a+n+s}else{const t=parseFloat(i.getPropertyValue("height")),e=parseFloat(i.getPropertyValue("padding-top")),a=parseFloat(i.getPropertyValue("padding-bottom")),n=parseFloat(i.getPropertyValue("margin-top")),s=parseFloat(i.getPropertyValue("margin-bottom")),r=i.getPropertyValue("box-sizing");w=r&&"border-box"===r?t+n+s:t+e+a+n+s}a&&(n[0].style.transform=a),s&&(n[0].style.webkitTransform=s),e.roundLengths&&(w=Math.floor(w))}else w=(a-(e.slidesPerView-1)*C)/e.slidesPerView,e.roundLengths&&(w=Math.floor(w)),c[i]&&(t.isHorizontal()?c[i].style.width=`${w}px`:c[i].style.height=`${w}px`);c[i]&&(c[i].swiperSlideSize=w),f.push(w),e.centeredSlides?(S=S+w/2+k/2+C,0===k&&0!==i&&(S=S-a/2-C),0===i&&(S=S-a/2-C),Math.abs(S)<.001&&(S=0),e.roundLengths&&(S=Math.floor(S)),A%e.slidesPerGroup==0&&h.push(S),p.push(S)):(e.roundLengths&&(S=Math.floor(S)),(A-Math.min(t.params.slidesPerGroupSkip,A))%t.params.slidesPerGroup==0&&h.push(S),p.push(S),S=S+w+C),t.virtualSize+=w+C,k=w,A+=1}}let O;if(t.virtualSize=Math.max(t.virtualSize,a)+m,n&&s&&("slide"===e.effect||"coverflow"===e.effect)&&i.css({width:`${t.virtualSize+e.spaceBetween}px`}),e.setWrapperSize&&(t.isHorizontal()?i.css({width:`${t.virtualSize+e.spaceBetween}px`}):i.css({height:`${t.virtualSize+e.spaceBetween}px`})),e.slidesPerColumn>1&&(t.virtualSize=(w+e.spaceBetween)*y,t.virtualSize=Math.ceil(t.virtualSize/e.slidesPerColumn)-e.spaceBetween,t.isHorizontal()?i.css({width:`${t.virtualSize+e.spaceBetween}px`}):i.css({height:`${t.virtualSize+e.spaceBetween}px`}),e.centeredSlides)){O=[];for(let i=0;i1&&h.push(t.virtualSize-a)}if(0===h.length&&(h=[0]),0!==e.spaceBetween&&(t.isHorizontal()?n?c.filter(g).css({marginLeft:`${C}px`}):c.filter(g).css({marginRight:`${C}px`}):c.filter(g).css({marginBottom:`${C}px`})),e.centeredSlides&&e.centeredSlidesBounds){let t=0;f.forEach((i=>{t+=i+(e.spaceBetween?e.spaceBetween:0)})),t-=e.spaceBetween;const i=t-a;h=h.map((t=>t<0?-v:t>i?i+m:t))}if(e.centerInsufficientSlides){let t=0;if(f.forEach((i=>{t+=i+(e.spaceBetween?e.spaceBetween:0)})),t-=e.spaceBetween,t{h[i]=t-e})),p.forEach(((t,i)=>{p[i]=t+e}))}}u.extend(t,{slides:c,snapGrid:h,slidesGrid:p,slidesSizesGrid:f}),d!==l&&t.emit("slidesLengthChange"),h.length!==x&&(t.params.watchOverflow&&t.checkOverflow(),t.emit("snapGridLengthChange")),p.length!==b&&t.emit("slidesGridLengthChange"),(e.watchSlidesProgress||e.watchSlidesVisibility)&&t.updateSlidesOffset()},updateAutoHeight:function(t){const e=this,i=[];let a,n=0;if("number"==typeof t?e.setTransition(t):!0===t&&e.setTransition(e.params.speed),"auto"!==e.params.slidesPerView&&e.params.slidesPerView>1)if(e.params.centeredSlides)e.visibleSlides.each(((t,e)=>{i.push(e)}));else for(a=0;ae.slides.length)break;i.push(e.slides.eq(t)[0])}else i.push(e.slides.eq(e.activeIndex)[0]);for(a=0;an?t:n}n&&e.$wrapperEl.css("height",`${n}px`)},updateSlidesOffset:function(){const t=this,e=t.slides;for(let i=0;i=0&&n1&&o<=e.size||n<=0&&o>=e.size)&&(e.visibleSlides.push(r),e.visibleSlidesIndexes.push(t),a.eq(t).addClass(i.slideVisibleClass))}r.progress=n?-o:o}e.visibleSlides=c(e.visibleSlides)},updateProgress:function(t){const e=this;if(void 0===t){const i=e.rtlTranslate?-1:1;t=e&&e.translate&&e.translate*i||0}const i=e.params,a=e.maxTranslate()-e.minTranslate();let{progress:n,isBeginning:s,isEnd:r}=e;const o=s,l=r;0===a?(n=0,s=!0,r=!0):(n=(t-e.minTranslate())/a,s=n<=0,r=n>=1),u.extend(e,{progress:n,isBeginning:s,isEnd:r}),(i.watchSlidesProgress||i.watchSlidesVisibility||i.centeredSlides&&i.autoHeight)&&e.updateSlidesProgress(t),s&&!o&&e.emit("reachBeginning toEdge"),r&&!l&&e.emit("reachEnd toEdge"),(o&&!s||l&&!r)&&e.emit("fromEdge"),e.emit("progress",n)},updateSlidesClasses:function(){const t=this,{slides:e,params:i,$wrapperEl:a,activeIndex:n,realIndex:s}=t,r=t.virtual&&i.virtual.enabled;let o;e.removeClass(`${i.slideActiveClass} ${i.slideNextClass} ${i.slidePrevClass} ${i.slideDuplicateActiveClass} ${i.slideDuplicateNextClass} ${i.slideDuplicatePrevClass}`),o=r?t.$wrapperEl.find(`.${i.slideClass}[data-swiper-slide-index="${n}"]`):e.eq(n),o.addClass(i.slideActiveClass),i.loop&&(o.hasClass(i.slideDuplicateClass)?a.children(`.${i.slideClass}:not(.${i.slideDuplicateClass})[data-swiper-slide-index="${s}"]`).addClass(i.slideDuplicateActiveClass):a.children(`.${i.slideClass}.${i.slideDuplicateClass}[data-swiper-slide-index="${s}"]`).addClass(i.slideDuplicateActiveClass));let l=o.nextAll(`.${i.slideClass}`).eq(0).addClass(i.slideNextClass);i.loop&&0===l.length&&(l=e.eq(0),l.addClass(i.slideNextClass));let c=o.prevAll(`.${i.slideClass}`).eq(0).addClass(i.slidePrevClass);i.loop&&0===c.length&&(c=e.eq(-1),c.addClass(i.slidePrevClass)),i.loop&&(l.hasClass(i.slideDuplicateClass)?a.children(`.${i.slideClass}:not(.${i.slideDuplicateClass})[data-swiper-slide-index="${l.attr("data-swiper-slide-index")}"]`).addClass(i.slideDuplicateNextClass):a.children(`.${i.slideClass}.${i.slideDuplicateClass}[data-swiper-slide-index="${l.attr("data-swiper-slide-index")}"]`).addClass(i.slideDuplicateNextClass),c.hasClass(i.slideDuplicateClass)?a.children(`.${i.slideClass}:not(.${i.slideDuplicateClass})[data-swiper-slide-index="${c.attr("data-swiper-slide-index")}"]`).addClass(i.slideDuplicatePrevClass):a.children(`.${i.slideClass}.${i.slideDuplicateClass}[data-swiper-slide-index="${c.attr("data-swiper-slide-index")}"]`).addClass(i.slideDuplicatePrevClass))},updateActiveIndex:function(t){const e=this,i=e.rtlTranslate?e.translate:-e.translate,{slidesGrid:a,snapGrid:n,params:s,activeIndex:r,realIndex:o,snapIndex:l}=e;let c,d=t;if(void 0===d){for(let t=0;t=a[t]&&i=a[t]&&i=a[t]&&(d=t);s.normalizeSlideIndex&&(d<0||void 0===d)&&(d=0)}if(n.indexOf(i)>=0)c=n.indexOf(i);else{const t=Math.min(s.slidesPerGroupSkip,d);c=t+Math.floor((d-t)/s.slidesPerGroup)}if(c>=n.length&&(c=n.length-1),d===r)return void(c!==l&&(e.snapIndex=c,e.emit("snapIndexChange")));const h=parseInt(e.slides.eq(d).attr("data-swiper-slide-index")||d,10);u.extend(e,{snapIndex:c,realIndex:h,previousIndex:r,activeIndex:d}),e.emit("activeIndexChange"),e.emit("snapIndexChange"),o!==h&&e.emit("realIndexChange"),(e.initialized||e.params.runCallbacksOnInit)&&e.emit("slideChange")},updateClickedSlide:function(t){const e=this,i=e.params,a=c(t.target).closest(`.${i.slideClass}`)[0];let n=!1;if(a)for(let t=0;tl?l:a&&t=o.length&&(f=o.length-1),(d||r.initialSlide||0)===(c||0)&&i&&n.emit("beforeSlideChangeStart");const g=-o[f];if(n.updateProgress(g),r.normalizeSlideIndex)for(let t=0;t=Math.floor(100*l[t])&&(s=t);if(n.initialized&&s!==d){if(!n.allowSlideNext&&gn.translate&&g>n.maxTranslate()&&(d||0)!==s)return!1}let v;if(v=s>d?"next":sc(t)));o.map((t=>c(t))),r[h.indexOf(d)];let u,p=r[h.indexOf(d)-1];return void 0===p&&n.cssMode&&r.forEach((t=>{!p&&d>=t&&(p=t)})),void 0!==p&&(u=o.indexOf(p),u<0&&(u=a.activeIndex-1)),a.slideTo(u,t,e,i)},slideReset:function(t=this.params.speed,e=!0,i){return this.slideTo(this.activeIndex,t,e,i)},slideToClosest:function(t=this.params.speed,e=!0,i,a=.5){const n=this;let s=n.activeIndex;const r=Math.min(n.params.slidesPerGroupSkip,s),o=r+Math.floor((s-r)/n.params.slidesPerGroup),l=n.rtlTranslate?n.translate:-n.translate;if(l>=n.snapGrid[o]){const t=n.snapGrid[o];l-t>(n.snapGrid[o+1]-t)*a&&(s+=n.params.slidesPerGroup)}else{const t=n.snapGrid[o-1];l-t<=(n.snapGrid[o]-t)*a&&(s-=n.params.slidesPerGroup)}return s=Math.max(s,0),s=Math.min(s,n.slidesGrid.length-1),n.slideTo(s,t,e,i)},slideToClickedSlide:function(){const t=this,{params:e,$wrapperEl:i}=t,a="auto"===e.slidesPerView?t.slidesPerViewDynamic():e.slidesPerView;let n,s=t.clickedIndex;if(e.loop){if(t.animating)return;n=parseInt(c(t.clickedSlide).attr("data-swiper-slide-index"),10),e.centeredSlides?st.slides.length-t.loopedSlides+a/2?(t.loopFix(),s=i.children(`.${e.slideClass}[data-swiper-slide-index="${n}"]:not(.${e.slideDuplicateClass})`).eq(0).index(),u.nextTick((()=>{t.slideTo(s)}))):t.slideTo(s):s>t.slides.length-a?(t.loopFix(),s=i.children(`.${e.slideClass}[data-swiper-slide-index="${n}"]:not(.${e.slideDuplicateClass})`).eq(0).index(),u.nextTick((()=>{t.slideTo(s)}))):t.slideTo(s)}else t.slideTo(s)}},x={loopCreate:function(){const t=this,{params:e,$wrapperEl:i}=t;i.children(`.${e.slideClass}.${e.slideDuplicateClass}`).remove();let a=i.children(`.${e.slideClass}`);if(e.loopFillGroupWithBlank){const t=e.slidesPerGroup-a.length%e.slidesPerGroup;if(t!==e.slidesPerGroup){for(let a=0;aa.length&&(t.loopedSlides=a.length);const n=[],r=[];a.each(((e,i)=>{const s=c(i);e=a.length-t.loopedSlides&&n.push(i),s.attr("data-swiper-slide-index",e)}));for(let t=0;t=0;t-=1)i.prepend(c(n[t].cloneNode(!0)).addClass(e.slideDuplicateClass))},loopFix:function(){const t=this;t.emit("beforeLoopFix");const{activeIndex:e,slides:i,loopedSlides:a,allowSlidePrev:n,allowSlideNext:s,snapGrid:r,rtlTranslate:o}=t;let l;t.allowSlidePrev=!0,t.allowSlideNext=!0;const c=-r[e]-t.getTranslate();e=i.length-a&&(l=-i.length+e+a,l+=a,t.slideTo(l,0,!1,!0)&&0!==c&&t.setTranslate((o?-t.translate:t.translate)-c)),t.allowSlidePrev=n,t.allowSlideNext=s,t.emit("loopFix")},loopDestroy:function(){const{$wrapperEl:t,params:e,slides:i}=this;t.children(`.${e.slideClass}.${e.slideDuplicateClass},.${e.slideClass}.${e.slideBlankClass}`).remove(),i.removeAttr("data-swiper-slide-index")}},b={setGrabCursor:function(t){const e=this;if(p.touch||!e.params.simulateTouch||e.params.watchOverflow&&e.isLocked||e.params.cssMode)return;const i=e.el;i.style.cursor="move",i.style.cursor=t?"-webkit-grabbing":"-webkit-grab",i.style.cursor=t?"-moz-grabbin":"-moz-grab",i.style.cursor=t?"grabbing":"grab"},unsetGrabCursor:function(){const t=this;p.touch||t.params.watchOverflow&&t.isLocked||t.params.cssMode||(t.el.style.cursor="")}},y={appendSlide:function(t){const e=this,{$wrapperEl:i,params:a}=e;if(a.loop&&e.loopDestroy(),"object"==typeof t&&"length"in t)for(let e=0;e=o)return void i.appendSlide(e);let l=r>t?r+1:r;const c=[];for(let e=o-1;e>=t;e-=1){const t=i.slides.eq(e);t.remove(),c.unshift(t)}if("object"==typeof e&&"length"in e){for(let t=0;tt?r+e.length:r}else a.append(e);for(let t=0;t=0||e.indexOf("Trident/")>=0,h=e.indexOf("Edge/")>=0,u=e.indexOf("Gecko/")>=0&&e.indexOf("Firefox/")>=0,f="Win32"===t,g=e.toLowerCase().indexOf("electron")>=0;let v="MacIntel"===t;return!r&&v&&p.touch&&(1024===a&&1366===n||834===a&&1194===n||834===a&&1112===n||768===a&&1024===n)&&(r=e.match(/(Version)\/([\d.]+)/),v=!1),i.ie=d,i.edge=h,i.firefox=u,s&&!f&&(i.os="android",i.osVersion=s[2],i.android=!0,i.androidChrome=e.toLowerCase().indexOf("chrome")>=0),(r||c||l)&&(i.os="ios",i.ios=!0),c&&!l&&(i.osVersion=c[2].replace(/_/g,"."),i.iphone=!0),r&&(i.osVersion=r[2].replace(/_/g,"."),i.ipad=!0),l&&(i.osVersion=l[3]?l[3].replace(/_/g,"."):null,i.ipod=!0),i.ios&&i.osVersion&&e.indexOf("Version/")>=0&&"10"===i.osVersion.split(".")[0]&&(i.osVersion=e.toLowerCase().split("version/")[1].split(" ")[0]),i.webView=!(!(c||r||l)||!e.match(/.*AppleWebKit(?!.*Safari)/i)&&!o.navigator.standalone)||o.matchMedia&&o.matchMedia("(display-mode: standalone)").matches,i.webview=i.webView,i.standalone=i.webView,i.desktop=!(i.ios||i.android)||g,i.desktop&&(i.electron=g,i.macos=v,i.windows=f,i.macos&&(i.os="macos"),i.windows&&(i.os="windows")),i.pixelRatio=o.devicePixelRatio||1,i}();function C(t){const e=this,i=e.touchEventsData,{params:a,touches:n}=e;if(e.animating&&a.preventInteractionOnTransition)return;let r=t;r.originalEvent&&(r=r.originalEvent);const l=c(r.target);if("wrapper"===a.touchEventsTarget&&!l.closest(e.wrapperEl).length)return;if(i.isTouchEvent="touchstart"===r.type,!i.isTouchEvent&&"which"in r&&3===r.which)return;if(!i.isTouchEvent&&"button"in r&&r.button>0)return;if(i.isTouched&&i.isMoved)return;if(a.noSwiping&&l.closest(a.noSwipingSelector?a.noSwipingSelector:`.${a.noSwipingClass}`)[0])return void(e.allowClick=!0);if(a.swipeHandler&&!l.closest(a.swipeHandler)[0])return;n.currentX="touchstart"===r.type?r.targetTouches[0].pageX:r.pageX,n.currentY="touchstart"===r.type?r.targetTouches[0].pageY:r.pageY;const d=n.currentX,h=n.currentY,p=a.edgeSwipeDetection||a.iOSEdgeSwipeDetection,f=a.edgeSwipeThreshold||a.iOSEdgeSwipeThreshold;if(!p||!(d<=f||d>=o.screen.width-f)){if(u.extend(i,{isTouched:!0,isMoved:!1,allowTouchCallbacks:!0,isScrolling:void 0,startMoving:void 0}),n.startX=d,n.startY=h,i.touchStartTime=u.now(),e.allowClick=!0,e.updateSize(),e.swipeDirection=void 0,a.threshold>0&&(i.allowThresholdMove=!1),"touchstart"!==r.type){let t=!0;l.is(i.formElements)&&(t=!1),s.activeElement&&c(s.activeElement).is(i.formElements)&&s.activeElement!==l[0]&&s.activeElement.blur();const n=t&&e.allowTouchMove&&a.touchStartPreventDefault;(a.touchStartForcePreventDefault||n)&&r.preventDefault()}e.emit("touchStart",r)}}function S(t){const e=this,i=e.touchEventsData,{params:a,touches:n,rtlTranslate:r}=e;let o=t;if(o.originalEvent&&(o=o.originalEvent),!i.isTouched)return void(i.startMoving&&i.isScrolling&&e.emit("touchMoveOpposite",o));if(i.isTouchEvent&&"touchmove"!==o.type)return;const l="touchmove"===o.type&&o.targetTouches&&(o.targetTouches[0]||o.changedTouches[0]),d="touchmove"===o.type?l.pageX:o.pageX,h="touchmove"===o.type?l.pageY:o.pageY;if(o.preventedByNestedSwiper)return n.startX=d,void(n.startY=h);if(!e.allowTouchMove)return e.allowClick=!1,void(i.isTouched&&(u.extend(n,{startX:d,startY:h,currentX:d,currentY:h}),i.touchStartTime=u.now()));if(i.isTouchEvent&&a.touchReleaseOnEdges&&!a.loop)if(e.isVertical()){if(hn.startY&&e.translate>=e.minTranslate())return i.isTouched=!1,void(i.isMoved=!1)}else if(dn.startX&&e.translate>=e.minTranslate())return;if(i.isTouchEvent&&s.activeElement&&o.target===s.activeElement&&c(o.target).is(i.formElements))return i.isMoved=!0,void(e.allowClick=!1);if(i.allowTouchCallbacks&&e.emit("touchMove",o),o.targetTouches&&o.targetTouches.length>1)return;n.currentX=d,n.currentY=h;const p=n.currentX-n.startX,f=n.currentY-n.startY;if(e.params.threshold&&Math.sqrt(p**2+f**2)=25&&(t=180*Math.atan2(Math.abs(f),Math.abs(p))/Math.PI,i.isScrolling=e.isHorizontal()?t>a.touchAngle:90-t>a.touchAngle)}if(i.isScrolling&&e.emit("touchMoveOpposite",o),void 0===i.startMoving&&(n.currentX===n.startX&&n.currentY===n.startY||(i.startMoving=!0)),i.isScrolling)return void(i.isTouched=!1);if(!i.startMoving)return;e.allowClick=!1,!a.cssMode&&o.cancelable&&o.preventDefault(),a.touchMoveStopPropagation&&!a.nested&&o.stopPropagation(),i.isMoved||(a.loop&&e.loopFix(),i.startTranslate=e.getTranslate(),e.setTransition(0),e.animating&&e.$wrapperEl.trigger("webkitTransitionEnd transitionend"),i.allowMomentumBounce=!1,!a.grabCursor||!0!==e.allowSlideNext&&!0!==e.allowSlidePrev||e.setGrabCursor(!0),e.emit("sliderFirstMove",o)),e.emit("sliderMove",o),i.isMoved=!0;let g=e.isHorizontal()?p:f;n.diff=g,g*=a.touchRatio,r&&(g=-g),e.swipeDirection=g>0?"prev":"next",i.currentTranslate=g+i.startTranslate;let v=!0,m=a.resistanceRatio;if(a.touchReleaseOnEdges&&(m=0),g>0&&i.currentTranslate>e.minTranslate()?(v=!1,a.resistance&&(i.currentTranslate=e.minTranslate()-1+(-e.minTranslate()+i.startTranslate+g)**m)):g<0&&i.currentTranslatei.startTranslate&&(i.currentTranslate=i.startTranslate),a.threshold>0){if(!(Math.abs(g)>a.threshold||i.allowThresholdMove))return void(i.currentTranslate=i.startTranslate);if(!i.allowThresholdMove)return i.allowThresholdMove=!0,n.startX=n.currentX,n.startY=n.currentY,i.currentTranslate=i.startTranslate,void(n.diff=e.isHorizontal()?n.currentX-n.startX:n.currentY-n.startY)}a.followFinger&&!a.cssMode&&((a.freeMode||a.watchSlidesProgress||a.watchSlidesVisibility)&&(e.updateActiveIndex(),e.updateSlidesClasses()),a.freeMode&&(0===i.velocities.length&&i.velocities.push({position:n[e.isHorizontal()?"startX":"startY"],time:i.touchStartTime}),i.velocities.push({position:n[e.isHorizontal()?"currentX":"currentY"],time:u.now()})),e.updateProgress(i.currentTranslate),e.setTranslate(i.currentTranslate))}function k(t){const e=this,i=e.touchEventsData,{params:a,touches:n,rtlTranslate:s,$wrapperEl:r,slidesGrid:o,snapGrid:l}=e;let c=t;if(c.originalEvent&&(c=c.originalEvent),i.allowTouchCallbacks&&e.emit("touchEnd",c),i.allowTouchCallbacks=!1,!i.isTouched)return i.isMoved&&a.grabCursor&&e.setGrabCursor(!1),i.isMoved=!1,void(i.startMoving=!1);a.grabCursor&&i.isMoved&&i.isTouched&&(!0===e.allowSlideNext||!0===e.allowSlidePrev)&&e.setGrabCursor(!1);const d=u.now(),h=d-i.touchStartTime;if(e.allowClick&&(e.updateClickedSlide(c),e.emit("tap click",c),h<300&&d-i.lastClickTime<300&&e.emit("doubleTap doubleClick",c)),i.lastClickTime=u.now(),u.nextTick((()=>{e.destroyed||(e.allowClick=!0)})),!i.isTouched||!i.isMoved||!e.swipeDirection||0===n.diff||i.currentTranslate===i.startTranslate)return i.isTouched=!1,i.isMoved=!1,void(i.startMoving=!1);let p;if(i.isTouched=!1,i.isMoved=!1,i.startMoving=!1,p=a.followFinger?s?e.translate:-e.translate:-i.currentTranslate,a.cssMode)return;if(a.freeMode){if(p<-e.minTranslate())return void e.slideTo(e.activeIndex);if(p>-e.maxTranslate())return void(e.slides.length1){const t=i.velocities.pop(),n=i.velocities.pop(),s=t.position-n.position,r=t.time-n.time;e.velocity=s/r,e.velocity/=2,Math.abs(e.velocity)150||u.now()-t.time>300)&&(e.velocity=0)}else e.velocity=0;e.velocity*=a.freeModeMomentumVelocityRatio,i.velocities.length=0;let t=1e3*a.freeModeMomentumRatio;const n=e.velocity*t;let o=e.translate+n;s&&(o=-o);let c,d=!1;const h=20*Math.abs(e.velocity)*a.freeModeMomentumBounceRatio;let p;if(oe.minTranslate())a.freeModeMomentumBounce?(o-e.minTranslate()>h&&(o=e.minTranslate()+h),c=e.minTranslate(),d=!0,i.allowMomentumBounce=!0):o=e.minTranslate(),a.loop&&a.centeredSlides&&(p=!0);else if(a.freeModeSticky){let t;for(let e=0;e-o){t=e;break}o=Math.abs(l[t]-o){e.loopFix()})),0!==e.velocity){if(t=s?Math.abs((-o-e.translate)/e.velocity):Math.abs((o-e.translate)/e.velocity),a.freeModeSticky){const i=Math.abs((s?-o:o)-e.translate),n=e.slidesSizesGrid[e.activeIndex];t=i{e&&!e.destroyed&&i.allowMomentumBounce&&(e.emit("momentumBounce"),e.setTransition(a.speed),setTimeout((()=>{e.setTranslate(c),r.transitionEnd((()=>{e&&!e.destroyed&&e.transitionEnd()}))}),0))}))):e.velocity?(e.updateProgress(o),e.setTransition(t),e.setTranslate(o),e.transitionStart(!0,e.swipeDirection),e.animating||(e.animating=!0,r.transitionEnd((()=>{e&&!e.destroyed&&e.transitionEnd()})))):e.updateProgress(o),e.updateActiveIndex(),e.updateSlidesClasses()}else if(a.freeModeSticky)return void e.slideToClosest();return void((!a.freeModeMomentum||h>=a.longSwipesMs)&&(e.updateProgress(),e.updateActiveIndex(),e.updateSlidesClasses()))}let f=0,g=e.slidesSizesGrid[0];for(let t=0;t=o[t]&&p=o[t]&&(f=t,g=o[o.length-1]-o[o.length-2])}const v=(p-o[f])/g,m=fa.longSwipesMs){if(!a.longSwipes)return void e.slideTo(e.activeIndex);"next"===e.swipeDirection&&(v>=a.longSwipesRatio?e.slideTo(f+m):e.slideTo(f)),"prev"===e.swipeDirection&&(v>1-a.longSwipesRatio?e.slideTo(f+m):e.slideTo(f))}else{if(!a.shortSwipes)return void e.slideTo(e.activeIndex);!e.navigation||c.target!==e.navigation.nextEl&&c.target!==e.navigation.prevEl?("next"===e.swipeDirection&&e.slideTo(f+m),"prev"===e.swipeDirection&&e.slideTo(f)):c.target===e.navigation.nextEl?e.slideTo(f+m):e.slideTo(f)}}function A(){const t=this,{params:e,el:i}=t;if(i&&0===i.offsetWidth)return;e.breakpoints&&t.setBreakpoint();const{allowSlideNext:a,allowSlidePrev:n,snapGrid:s}=t;t.allowSlideNext=!0,t.allowSlidePrev=!0,t.updateSize(),t.updateSlides(),t.updateSlidesClasses(),("auto"===e.slidesPerView||e.slidesPerView>1)&&t.isEnd&&!t.isBeginning&&!t.params.centeredSlides?t.slideTo(t.slides.length-1,0,!1,!0):t.slideTo(t.activeIndex,0,!1,!0),t.autoplay&&t.autoplay.running&&t.autoplay.paused&&t.autoplay.run(),t.allowSlidePrev=n,t.allowSlideNext=a,t.params.watchOverflow&&s!==t.snapGrid&&t.checkOverflow()}function P(t){const e=this;e.allowClick||(e.params.preventClicks&&t.preventDefault(),e.params.preventClicksPropagation&&e.animating&&(t.stopPropagation(),t.stopImmediatePropagation()))}function T(){const t=this,{wrapperEl:e,rtlTranslate:i}=t;let a;t.previousTranslate=t.translate,t.isHorizontal()?t.translate=i?e.scrollWidth-e.offsetWidth-e.scrollLeft:-e.scrollLeft:t.translate=-e.scrollTop,-0===t.translate&&(t.translate=0),t.updateActiveIndex(),t.updateSlidesClasses();const n=t.maxTranslate()-t.minTranslate();a=0===n?0:(t.translate-t.minTranslate())/n,a!==t.progress&&t.updateProgress(i?-t.translate:t.translate),t.emit("setTranslate",t.translate,!1)}let E=!1;function O(){}var M={init:!0,direction:"horizontal",touchEventsTarget:"container",initialSlide:0,speed:300,cssMode:!1,updateOnWindowResize:!0,preventInteractionOnTransition:!1,edgeSwipeDetection:!1,edgeSwipeThreshold:20,freeMode:!1,freeModeMomentum:!0,freeModeMomentumRatio:1,freeModeMomentumBounce:!0,freeModeMomentumBounceRatio:1,freeModeMomentumVelocityRatio:1,freeModeSticky:!1,freeModeMinimumVelocity:.02,autoHeight:!1,setWrapperSize:!1,virtualTranslate:!1,effect:"slide",breakpoints:void 0,spaceBetween:0,slidesPerView:1,slidesPerColumn:1,slidesPerColumnFill:"column",slidesPerGroup:1,slidesPerGroupSkip:0,centeredSlides:!1,centeredSlidesBounds:!1,slidesOffsetBefore:0,slidesOffsetAfter:0,normalizeSlideIndex:!0,centerInsufficientSlides:!1,watchOverflow:!1,roundLengths:!1,touchRatio:1,touchAngle:45,simulateTouch:!0,shortSwipes:!0,longSwipes:!0,longSwipesRatio:.5,longSwipesMs:300,followFinger:!0,allowTouchMove:!0,threshold:0,touchMoveStopPropagation:!1,touchStartPreventDefault:!0,touchStartForcePreventDefault:!1,touchReleaseOnEdges:!1,uniqueNavElements:!0,resistance:!0,resistanceRatio:.85,watchSlidesProgress:!1,watchSlidesVisibility:!1,grabCursor:!1,preventClicks:!0,preventClicksPropagation:!0,slideToClickedSlide:!1,preloadImages:!0,updateOnImagesReady:!0,loop:!1,loopAdditionalSlides:0,loopedSlides:null,loopFillGroupWithBlank:!1,allowSlidePrev:!0,allowSlideNext:!0,swipeHandler:null,noSwiping:!0,noSwipingClass:"swiper-no-swiping",noSwipingSelector:null,passiveListeners:!0,containerModifierClass:"swiper-container-",slideClass:"swiper-slide",slideBlankClass:"swiper-slide-invisible-blank",slideActiveClass:"swiper-slide-active",slideDuplicateActiveClass:"swiper-slide-duplicate-active",slideVisibleClass:"swiper-slide-visible",slideDuplicateClass:"swiper-slide-duplicate",slideNextClass:"swiper-slide-next",slideDuplicateNextClass:"swiper-slide-duplicate-next",slidePrevClass:"swiper-slide-prev",slideDuplicatePrevClass:"swiper-slide-duplicate-prev",wrapperClass:"swiper-wrapper",runCallbacksOnInit:!0};const L={update:g,translate:v,transition:{setTransition:function(t,e){const i=this;i.params.cssMode||i.$wrapperEl.transition(t),i.emit("setTransition",t,e)},transitionStart:function(t=!0,e){const i=this,{activeIndex:a,params:n,previousIndex:s}=i;if(n.cssMode)return;n.autoHeight&&i.updateAutoHeight();let r=e;if(r||(r=a>s?"next":an?"next":a{const e=l[t];void 0!==e&&(l[t]="slidesPerView"!==t||"AUTO"!==e&&"auto"!==e?"slidesPerView"===t?parseFloat(e):parseInt(e,10):"auto")}));const c=l||t.originalParams,d=n.slidesPerColumn>1,h=c.slidesPerColumn>1;d&&!h?s.removeClass(`${n.containerModifierClass}multirow ${n.containerModifierClass}multirow-column`):!d&&h&&(s.addClass(`${n.containerModifierClass}multirow`),"column"===c.slidesPerColumnFill&&s.addClass(`${n.containerModifierClass}multirow-column`));const p=c.direction&&c.direction!==n.direction,f=n.loop&&(c.slidesPerView!==n.slidesPerView||p);p&&i&&t.changeDirection(),u.extend(t.params,c),u.extend(t,{allowTouchMove:t.params.allowTouchMove,allowSlideNext:t.params.allowSlideNext,allowSlidePrev:t.params.allowSlidePrev}),t.currentBreakpoint=o,f&&i&&(t.loopDestroy(),t.loopCreate(),t.updateSlides(),t.slideTo(e-a+t.loopedSlides,0,!1)),t.emit("breakpoint",c)}},getBreakpoint:function(t){if(!t)return;let e=!1;const i=Object.keys(t).map((t=>{if("string"==typeof t&&0===t.indexOf("@")){const e=parseFloat(t.substr(1));return{value:o.innerHeight*e,point:t}}return{value:t,point:t}}));i.sort(((t,e)=>parseInt(t.value,10)-parseInt(e.value,10)));for(let t=0;t0&&e.slidesOffsetBefore+e.spaceBetween*(t.slides.length-1)+t.slides[0].offsetWidth*t.slides.length;e.slidesOffsetBefore&&e.slidesOffsetAfter&&a?t.isLocked=a<=t.size:t.isLocked=1===t.snapGrid.length,t.allowSlideNext=!t.isLocked,t.allowSlidePrev=!t.isLocked,i!==t.isLocked&&t.emit(t.isLocked?"lock":"unlock"),i&&i!==t.isLocked&&(t.isEnd=!1,t.navigation&&t.navigation.update())}},classes:{addClasses:function(){const{classNames:t,params:e,rtl:i,$el:a}=this,n=[];n.push("initialized"),n.push(e.direction),e.freeMode&&n.push("free-mode"),e.autoHeight&&n.push("autoheight"),i&&n.push("rtl"),e.slidesPerColumn>1&&(n.push("multirow"),"column"===e.slidesPerColumnFill&&n.push("multirow-column")),w.android&&n.push("android"),w.ios&&n.push("ios"),e.cssMode&&n.push("css-mode"),n.forEach((i=>{t.push(e.containerModifierClass+i)})),a.addClass(t.join(" "))},removeClasses:function(){const{$el:t,classNames:e}=this;t.removeClass(e.join(" "))}},images:{loadImage:function(t,e,i,a,n,s){let r;function l(){s&&s()}c(t).parent("picture")[0]||t.complete&&n?l():e?(r=new o.Image,r.onload=l,r.onerror=l,a&&(r.sizes=a),i&&(r.srcset=i),e&&(r.src=e)):l()},preloadImages:function(){const t=this;function e(){null!=t&&t&&!t.destroyed&&(void 0!==t.imagesLoaded&&(t.imagesLoaded+=1),t.imagesLoaded===t.imagesToLoad.length&&(t.params.updateOnImagesReady&&t.update(),t.emit("imagesReady")))}t.imagesToLoad=t.$el.find("img");for(let i=0;i{Object.keys(L[t]).forEach((e=>{_.prototype[e]||(_.prototype[e]=L[t][e])}))}));const a=this;void 0===a.modules&&(a.modules={}),Object.keys(a.modules).forEach((t=>{const e=a.modules[t];if(e.params){const t=Object.keys(e.params)[0],a=e.params[t];if("object"!=typeof a||null===a)return;if(!(t in i)||!("enabled"in a))return;!0===i[t]&&(i[t]={enabled:!0}),"object"!=typeof i[t]||"enabled"in i[t]||(i[t].enabled=!0),i[t]||(i[t]={enabled:!1})}}));const n=u.extend({},M);a.useModulesParams(n),a.params=u.extend({},n,I,i),a.originalParams=u.extend({},a.params),a.passedParams=u.extend({},i),a.$=c;const s=c(a.params.el);if(e=s[0],!e)return;if(s.length>1){const t=[];return s.each(((e,a)=>{const n=u.extend({},i,{el:a});t.push(new _(n))})),t}let r;return e.swiper=a,s.data("swiper",a),e&&e.shadowRoot&&e.shadowRoot.querySelector?(r=c(e.shadowRoot.querySelector(`.${a.params.wrapperClass}`)),r.children=t=>s.children(t)):r=s.children(`.${a.params.wrapperClass}`),u.extend(a,{$el:s,el:e,$wrapperEl:r,wrapperEl:r[0],classNames:[],slides:c(),slidesGrid:[],snapGrid:[],slidesSizesGrid:[],isHorizontal(){return"horizontal"===a.params.direction},isVertical(){return"vertical"===a.params.direction},rtl:"rtl"===e.dir.toLowerCase()||"rtl"===s.css("direction"),rtlTranslate:"horizontal"===a.params.direction&&("rtl"===e.dir.toLowerCase()||"rtl"===s.css("direction")),wrongRTL:"-webkit-box"===r.css("display"),activeIndex:0,realIndex:0,isBeginning:!0,isEnd:!1,translate:0,previousTranslate:0,progress:0,velocity:0,animating:!1,allowSlideNext:a.params.allowSlideNext,allowSlidePrev:a.params.allowSlidePrev,touchEvents:function(){const t=["touchstart","touchmove","touchend","touchcancel"];let e=["mousedown","mousemove","mouseup"];return p.pointerEvents&&(e=["pointerdown","pointermove","pointerup"]),a.touchEventsTouch={start:t[0],move:t[1],end:t[2],cancel:t[3]},a.touchEventsDesktop={start:e[0],move:e[1],end:e[2]},p.touch||!a.params.simulateTouch?a.touchEventsTouch:a.touchEventsDesktop}(),touchEventsData:{isTouched:void 0,isMoved:void 0,allowTouchCallbacks:void 0,touchStartTime:void 0,isScrolling:void 0,currentTranslate:void 0,startTranslate:void 0,allowThresholdMove:void 0,formElements:"input, select, option, textarea, button, video, label",lastClickTime:u.now(),clickTimeout:void 0,velocities:[],allowMomentumBounce:void 0,isTouchEvent:void 0,startMoving:void 0},allowClick:!0,allowTouchMove:a.params.allowTouchMove,touches:{startX:0,startY:0,currentX:0,currentY:0,diff:0},imagesToLoad:[],imagesLoaded:0}),a.useModules(),a.params.init&&a.init(),a}slidesPerViewDynamic(){const{params:t,slides:e,slidesGrid:i,size:a,activeIndex:n}=this;let s=1;if(t.centeredSlides){let t,i=e[n].swiperSlideSize;for(let r=n+1;ra&&(t=!0));for(let r=n-1;r>=0;r-=1)e[r]&&!t&&(i+=e[r].swiperSlideSize,s+=1,i>a&&(t=!0))}else for(let t=n+1;t1)&&t.isEnd&&!t.params.centeredSlides?t.slideTo(t.slides.length-1,0,!1,!0):t.slideTo(t.activeIndex,0,!1,!0),n||a()),i.watchOverflow&&e!==t.snapGrid&&t.checkOverflow(),t.emit("update")}changeDirection(t,e=!0){const i=this,a=i.params.direction;return t||(t="horizontal"===a?"vertical":"horizontal"),t===a||"horizontal"!==t&&"vertical"!==t||(i.$el.removeClass(`${i.params.containerModifierClass}${a}`).addClass(`${i.params.containerModifierClass}${t}`),i.params.direction=t,i.slides.each(((e,i)=>{"vertical"===t?i.style.width="":i.style.height=""})),i.emit("changeDirection"),e&&i.update()),i}init(){const t=this;t.initialized||(t.emit("beforeInit"),t.params.breakpoints&&t.setBreakpoint(),t.addClasses(),t.params.loop&&t.loopCreate(),t.updateSize(),t.updateSlides(),t.params.watchOverflow&&t.checkOverflow(),t.params.grabCursor&&t.setGrabCursor(),t.params.preloadImages&&t.preloadImages(),t.params.loop?t.slideTo(t.params.initialSlide+t.loopedSlides,0,t.params.runCallbacksOnInit):t.slideTo(t.params.initialSlide,0,t.params.runCallbacksOnInit),t.attachEvents(),t.initialized=!0,t.emit("init"))}destroy(t=!0,e=!0){const i=this,{params:a,$el:n,$wrapperEl:s,slides:r}=i;return void 0===i.params||i.destroyed||(i.emit("beforeDestroy"),i.initialized=!1,i.detachEvents(),a.loop&&i.loopDestroy(),e&&(i.removeClasses(),n.removeAttr("style"),s.removeAttr("style"),r&&r.length&&r.removeClass([a.slideVisibleClass,a.slideActiveClass,a.slideNextClass,a.slidePrevClass].join(" ")).removeAttr("style").removeAttr("data-swiper-slide-index")),i.emit("destroy"),Object.keys(i.eventsListeners).forEach((t=>{i.off(t)})),!1!==t&&(i.$el[0].swiper=null,i.$el.data("swiper",null),u.deleteProps(i)),i.destroyed=!0),null}static extendDefaults(t){u.extend(I,t)}static get extendedDefaults(){return I}static get defaults(){return M}static get Class(){return f}static get $(){return c}}var D={name:"device",proto:{device:w},static:{device:w}},z={name:"support",proto:{support:p},static:{support:p}};const N={isEdge:!!o.navigator.userAgent.match(/Edge/g),isSafari:function(){const t=o.navigator.userAgent.toLowerCase();return t.indexOf("safari")>=0&&t.indexOf("chrome")<0&&t.indexOf("android")<0}(),isWebView:/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(o.navigator.userAgent)};var j={name:"browser",proto:{browser:N},static:{browser:N}},H={name:"resize",create(){const t=this;u.extend(t,{resize:{resizeHandler(){t&&!t.destroyed&&t.initialized&&(t.emit("beforeResize"),t.emit("resize"))},orientationChangeHandler(){t&&!t.destroyed&&t.initialized&&t.emit("orientationchange")}}})},on:{init(){o.addEventListener("resize",this.resize.resizeHandler),o.addEventListener("orientationchange",this.resize.orientationChangeHandler)},destroy(){o.removeEventListener("resize",this.resize.resizeHandler),o.removeEventListener("orientationchange",this.resize.orientationChangeHandler)}}};const X={func:o.MutationObserver||o.WebkitMutationObserver,attach(t,e={}){const i=this,a=new(0,X.func)((t=>{if(1===t.length)return void i.emit("observerUpdate",t[0]);const e=function(){i.emit("observerUpdate",t[0])};o.requestAnimationFrame?o.requestAnimationFrame(e):o.setTimeout(e,0)}));a.observe(t,{attributes:void 0===e.attributes||e.attributes,childList:void 0===e.childList||e.childList,characterData:void 0===e.characterData||e.characterData}),i.observer.observers.push(a)},init(){const t=this;if(p.observer&&t.params.observer){if(t.params.observeParents){const e=t.$el.parents();for(let i=0;i{t.disconnect()})),this.observer.observers=[]}};var R={name:"observer",params:{observer:!1,observeParents:!1,observeSlideChildren:!1},create(){const t=this;u.extend(t,{observer:{init:X.init.bind(t),attach:X.attach.bind(t),destroy:X.destroy.bind(t),observers:[]}})},on:{init(){this.observer.init()},destroy(){this.observer.destroy()}}};const $={update(t){const e=this,{slidesPerView:i,slidesPerGroup:a,centeredSlides:n}=e.params,{addSlidesBefore:s,addSlidesAfter:r}=e.params.virtual,{from:o,to:l,slides:c,slidesGrid:d,renderSlide:h,offset:p}=e.virtual;e.updateActiveIndex();const f=e.activeIndex||0;let g,v,m;g=e.rtlTranslate?"right":e.isHorizontal()?"left":"top",n?(v=Math.floor(i/2)+a+s,m=Math.floor(i/2)+a+r):(v=i+(a-1)+s,m=a+r);const x=Math.max((f||0)-m,0),b=Math.min((f||0)+v,c.length-1),y=(e.slidesGrid[x]||0)-(e.slidesGrid[0]||0);function w(){e.updateSlides(),e.updateProgress(),e.updateSlidesClasses(),e.lazy&&e.params.lazy.enabled&&e.lazy.load()}if(u.extend(e.virtual,{from:x,to:b,offset:y,slidesGrid:e.slidesGrid}),o===x&&l===b&&!t)return e.slidesGrid!==d&&y!==p&&e.slides.css(g,`${y}px`),void e.updateProgress();if(e.params.virtual.renderExternal)return e.params.virtual.renderExternal.call(e,{offset:y,from:x,to:b,slides:function(){const t=[];for(let e=x;e<=b;e+=1)t.push(c[e]);return t}()}),void w();const C=[],S=[];if(t)e.$wrapperEl.find(`.${e.params.slideClass}`).remove();else for(let t=o;t<=l;t+=1)(tb)&&e.$wrapperEl.find(`.${e.params.slideClass}[data-swiper-slide-index="${t}"]`).remove();for(let e=0;e=x&&e<=b&&(void 0===l||t?S.push(e):(e>l&&S.push(e),e{e.$wrapperEl.append(h(c[t],t))})),C.sort(((t,e)=>e-t)).forEach((t=>{e.$wrapperEl.prepend(h(c[t],t))})),e.$wrapperEl.children(".swiper-slide").css(g,`${y}px`),w()},renderSlide(t,e){const i=this,a=i.params.virtual;if(a.cache&&i.virtual.cache[e])return i.virtual.cache[e];const n=a.renderSlide?c(a.renderSlide.call(i,t,e)):c(`
${t}
`);return n.attr("data-swiper-slide-index")||n.attr("data-swiper-slide-index",e),a.cache&&(i.virtual.cache[e]=n),n},appendSlide(t){const e=this;if("object"==typeof t&&"length"in t)for(let i=0;i{const a=t[e],s=a.attr("data-swiper-slide-index");s&&a.attr("data-swiper-slide-index",parseInt(s,10)+1),i[parseInt(e,10)+n]=a})),e.virtual.cache=i}e.virtual.update(!0),e.slideTo(a,0)},removeSlide(t){const e=this;if(null==t)return;let i=e.activeIndex;if(Array.isArray(t))for(let a=t.length-1;a>=0;a-=1)e.virtual.slides.splice(t[a],1),e.params.virtual.cache&&delete e.virtual.cache[t[a]],t[a]0&&0===e.$el.parents(`.${e.params.slideActiveClass}`).length)return;const a=o.innerWidth,n=o.innerHeight,s=e.$el.offset();i&&(s.left-=e.$el[0].scrollLeft);const r=[[s.left,s.top],[s.left+e.width,s.top],[s.left,s.top+e.height],[s.left+e.width,s.top+e.height]];for(let e=0;e=0&&i[0]<=a&&i[1]>=0&&i[1]<=n&&(t=!0)}if(!t)return}e.isHorizontal()?((l||c||d||h)&&(a.preventDefault?a.preventDefault():a.returnValue=!1),((c||h)&&!i||(l||d)&&i)&&e.slideNext(),((l||d)&&!i||(c||h)&&i)&&e.slidePrev()):((l||c||u||p)&&(a.preventDefault?a.preventDefault():a.returnValue=!1),(c||p)&&e.slideNext(),(l||u)&&e.slidePrev()),e.emit("keyPress",n)}},enable(){const t=this;t.keyboard.enabled||(c(s).on("keydown",t.keyboard.handle),t.keyboard.enabled=!0)},disable(){const t=this;t.keyboard.enabled&&(c(s).off("keydown",t.keyboard.handle),t.keyboard.enabled=!1)}};var B={name:"keyboard",params:{keyboard:{enabled:!1,onlyInViewport:!0,pageUpDown:!0}},create(){const t=this;u.extend(t,{keyboard:{enabled:!1,enable:Y.enable.bind(t),disable:Y.disable.bind(t),handle:Y.handle.bind(t)}})},on:{init(){this.params.keyboard.enabled&&this.keyboard.enable()},destroy(){this.keyboard.enabled&&this.keyboard.disable()}}};const W={lastScrollTime:u.now(),lastEventBeforeSnap:void 0,recentWheelEvents:[],event(){return o.navigator.userAgent.indexOf("firefox")>-1?"DOMMouseScroll":function(){const t="onwheel";let e=t in s;if(!e){const i=s.createElement("div");i.setAttribute(t,"return;"),e="function"==typeof i.onwheel}return!e&&s.implementation&&s.implementation.hasFeature&&!0!==s.implementation.hasFeature("","")&&(e=s.implementation.hasFeature("Events.wheel","3.0")),e}()?"wheel":"mousewheel"},normalize(t){let e=0,i=0,a=0,n=0;return"detail"in t&&(i=t.detail),"wheelDelta"in t&&(i=-t.wheelDelta/120),"wheelDeltaY"in t&&(i=-t.wheelDeltaY/120),"wheelDeltaX"in t&&(e=-t.wheelDeltaX/120),"axis"in t&&t.axis===t.HORIZONTAL_AXIS&&(e=i,i=0),a=10*e,n=10*i,"deltaY"in t&&(n=t.deltaY),"deltaX"in t&&(a=t.deltaX),t.shiftKey&&!a&&(a=n,n=0),(a||n)&&t.deltaMode&&(1===t.deltaMode?(a*=40,n*=40):(a*=800,n*=800)),a&&!e&&(e=a<1?-1:1),n&&!i&&(i=n<1?-1:1),{spinX:e,spinY:i,pixelX:a,pixelY:n}},handleMouseEnter(){this.mouseEntered=!0},handleMouseLeave(){this.mouseEntered=!1},handle(t){let e=t;const i=this,a=i.params.mousewheel;i.params.cssMode&&e.preventDefault();let n=i.$el;if("container"!==i.params.mousewheel.eventsTarged&&(n=c(i.params.mousewheel.eventsTarged)),!i.mouseEntered&&!n[0].contains(e.target)&&!a.releaseOnEdges)return!0;e.originalEvent&&(e=e.originalEvent);let s=0;const r=i.rtlTranslate?-1:1,o=W.normalize(e);if(a.forceToAxis)if(i.isHorizontal()){if(!(Math.abs(o.pixelX)>Math.abs(o.pixelY)))return!0;s=-o.pixelX*r}else{if(!(Math.abs(o.pixelY)>Math.abs(o.pixelX)))return!0;s=-o.pixelY}else s=Math.abs(o.pixelX)>Math.abs(o.pixelY)?-o.pixelX*r:-o.pixelY;if(0===s)return!0;if(a.invert&&(s=-s),i.params.freeMode){const t={time:u.now(),delta:Math.abs(s),direction:Math.sign(s)},{lastEventBeforeSnap:n}=i.mousewheel,r=n&&t.time=i.minTranslate()&&(n=i.minTranslate()),n<=i.maxTranslate()&&(n=i.maxTranslate()),i.setTransition(0),i.setTranslate(n),i.updateProgress(),i.updateActiveIndex(),i.updateSlidesClasses(),(!o&&i.isBeginning||!l&&i.isEnd)&&i.updateSlidesClasses(),i.params.freeModeSticky){clearTimeout(i.mousewheel.timeout),i.mousewheel.timeout=void 0;const e=i.mousewheel.recentWheelEvents;e.length>=15&&e.shift();const a=e.length?e[e.length-1]:void 0,n=e[0];if(e.push(t),a&&(t.delta>a.delta||t.direction!==a.direction))e.splice(0);else if(e.length>=15&&t.time-n.time<500&&n.delta-t.delta>=1&&t.delta<=6){const a=s>0?.8:.2;i.mousewheel.lastEventBeforeSnap=t,e.splice(0),i.mousewheel.timeout=u.nextTick((()=>{i.slideToClosest(i.params.speed,!0,void 0,a)}),0)}i.mousewheel.timeout||(i.mousewheel.timeout=u.nextTick((()=>{i.mousewheel.lastEventBeforeSnap=t,e.splice(0),i.slideToClosest(i.params.speed,!0,void 0,.5)}),500))}if(r||i.emit("scroll",e),i.params.autoplay&&i.params.autoplayDisableOnInteraction&&i.autoplay.stop(),n===i.minTranslate()||n===i.maxTranslate())return!0}}else{const e={time:u.now(),delta:Math.abs(s),direction:Math.sign(s),raw:t},a=i.mousewheel.recentWheelEvents;a.length>=2&&a.shift();const n=a.length?a[a.length-1]:void 0;if(a.push(e),n?(e.direction!==n.direction||e.delta>n.delta||e.time>n.time+150)&&i.mousewheel.animateSlider(e):i.mousewheel.animateSlider(e),i.mousewheel.releaseScroll(e))return!0}return e.preventDefault?e.preventDefault():e.returnValue=!1,!1},animateSlider(t){const e=this;return t.delta>=6&&u.now()-e.mousewheel.lastScrollTime<60||(t.direction<0?e.isEnd&&!e.params.loop||e.animating||(e.slideNext(),e.emit("scroll",t.raw)):e.isBeginning&&!e.params.loop||e.animating||(e.slidePrev(),e.emit("scroll",t.raw)),e.mousewheel.lastScrollTime=(new o.Date).getTime(),!1)},releaseScroll(t){const e=this,i=e.params.mousewheel;if(t.direction<0){if(e.isEnd&&!e.params.loop&&i.releaseOnEdges)return!0}else if(e.isBeginning&&!e.params.loop&&i.releaseOnEdges)return!0;return!1},enable(){const t=this,e=W.event();if(t.params.cssMode)return t.wrapperEl.removeEventListener(e,t.mousewheel.handle),!0;if(!e)return!1;if(t.mousewheel.enabled)return!1;let i=t.$el;return"container"!==t.params.mousewheel.eventsTarged&&(i=c(t.params.mousewheel.eventsTarged)),i.on("mouseenter",t.mousewheel.handleMouseEnter),i.on("mouseleave",t.mousewheel.handleMouseLeave),i.on(e,t.mousewheel.handle),t.mousewheel.enabled=!0,!0},disable(){const t=this,e=W.event();if(t.params.cssMode)return t.wrapperEl.addEventListener(e,t.mousewheel.handle),!0;if(!e)return!1;if(!t.mousewheel.enabled)return!1;let i=t.$el;return"container"!==t.params.mousewheel.eventsTarged&&(i=c(t.params.mousewheel.eventsTarged)),i.off(e,t.mousewheel.handle),t.mousewheel.enabled=!1,!0}},V={update(){const t=this,e=t.params.navigation;if(t.params.loop)return;const{$nextEl:i,$prevEl:a}=t.navigation;a&&a.length>0&&(t.isBeginning?a.addClass(e.disabledClass):a.removeClass(e.disabledClass),a[t.params.watchOverflow&&t.isLocked?"addClass":"removeClass"](e.lockClass)),i&&i.length>0&&(t.isEnd?i.addClass(e.disabledClass):i.removeClass(e.disabledClass),i[t.params.watchOverflow&&t.isLocked?"addClass":"removeClass"](e.lockClass))},onPrevClick(t){const e=this;t.preventDefault(),e.isBeginning&&!e.params.loop||e.slidePrev()},onNextClick(t){const e=this;t.preventDefault(),e.isEnd&&!e.params.loop||e.slideNext()},init(){const t=this,e=t.params.navigation;if(!e.nextEl&&!e.prevEl)return;let i,a;e.nextEl&&(i=c(e.nextEl),t.params.uniqueNavElements&&"string"==typeof e.nextEl&&i.length>1&&1===t.$el.find(e.nextEl).length&&(i=t.$el.find(e.nextEl))),e.prevEl&&(a=c(e.prevEl),t.params.uniqueNavElements&&"string"==typeof e.prevEl&&a.length>1&&1===t.$el.find(e.prevEl).length&&(a=t.$el.find(e.prevEl))),i&&i.length>0&&i.on("click",t.navigation.onNextClick),a&&a.length>0&&a.on("click",t.navigation.onPrevClick),u.extend(t.navigation,{$nextEl:i,nextEl:i&&i[0],$prevEl:a,prevEl:a&&a[0]})},destroy(){const t=this,{$nextEl:e,$prevEl:i}=t.navigation;e&&e.length&&(e.off("click",t.navigation.onNextClick),e.removeClass(t.params.navigation.disabledClass)),i&&i.length&&(i.off("click",t.navigation.onPrevClick),i.removeClass(t.params.navigation.disabledClass))}},G={update(){const t=this,e=t.rtl,i=t.params.pagination;if(!i.el||!t.pagination.el||!t.pagination.$el||0===t.pagination.$el.length)return;const a=t.virtual&&t.params.virtual.enabled?t.virtual.slides.length:t.slides.length,n=t.pagination.$el;let s;const r=t.params.loop?Math.ceil((a-2*t.loopedSlides)/t.params.slidesPerGroup):t.snapGrid.length;if(t.params.loop?(s=Math.ceil((t.activeIndex-t.loopedSlides)/t.params.slidesPerGroup),s>a-1-2*t.loopedSlides&&(s-=a-2*t.loopedSlides),s>r-1&&(s-=r),s<0&&"bullets"!==t.params.paginationType&&(s=r+s)):s=void 0!==t.snapIndex?t.snapIndex:t.activeIndex||0,"bullets"===i.type&&t.pagination.bullets&&t.pagination.bullets.length>0){const a=t.pagination.bullets;let r,o,l;if(i.dynamicBullets&&(t.pagination.bulletSize=a.eq(0)[t.isHorizontal()?"outerWidth":"outerHeight"](!0),n.css(t.isHorizontal()?"width":"height",t.pagination.bulletSize*(i.dynamicMainBullets+4)+"px"),i.dynamicMainBullets>1&&void 0!==t.previousIndex&&(t.pagination.dynamicBulletIndex+=s-t.previousIndex,t.pagination.dynamicBulletIndex>i.dynamicMainBullets-1?t.pagination.dynamicBulletIndex=i.dynamicMainBullets-1:t.pagination.dynamicBulletIndex<0&&(t.pagination.dynamicBulletIndex=0)),r=s-t.pagination.dynamicBulletIndex,o=r+(Math.min(a.length,i.dynamicMainBullets)-1),l=(o+r)/2),a.removeClass(`${i.bulletActiveClass} ${i.bulletActiveClass}-next ${i.bulletActiveClass}-next-next ${i.bulletActiveClass}-prev ${i.bulletActiveClass}-prev-prev ${i.bulletActiveClass}-main`),n.length>1)a.each(((t,e)=>{const a=c(e),n=a.index();n===s&&a.addClass(i.bulletActiveClass),i.dynamicBullets&&(n>=r&&n<=o&&a.addClass(`${i.bulletActiveClass}-main`),n===r&&a.prev().addClass(`${i.bulletActiveClass}-prev`).prev().addClass(`${i.bulletActiveClass}-prev-prev`),n===o&&a.next().addClass(`${i.bulletActiveClass}-next`).next().addClass(`${i.bulletActiveClass}-next-next`))}));else{const e=a.eq(s),n=e.index();if(e.addClass(i.bulletActiveClass),i.dynamicBullets){const e=a.eq(r),s=a.eq(o);for(let t=r;t<=o;t+=1)a.eq(t).addClass(`${i.bulletActiveClass}-main`);if(t.params.loop)if(n>=a.length-i.dynamicMainBullets){for(let t=i.dynamicMainBullets;t>=0;t-=1)a.eq(a.length-t).addClass(`${i.bulletActiveClass}-main`);a.eq(a.length-i.dynamicMainBullets-1).addClass(`${i.bulletActiveClass}-prev`)}else e.prev().addClass(`${i.bulletActiveClass}-prev`).prev().addClass(`${i.bulletActiveClass}-prev-prev`),s.next().addClass(`${i.bulletActiveClass}-next`).next().addClass(`${i.bulletActiveClass}-next-next`);else e.prev().addClass(`${i.bulletActiveClass}-prev`).prev().addClass(`${i.bulletActiveClass}-prev-prev`),s.next().addClass(`${i.bulletActiveClass}-next`).next().addClass(`${i.bulletActiveClass}-next-next`)}}if(i.dynamicBullets){const n=Math.min(a.length,i.dynamicMainBullets+4),s=(t.pagination.bulletSize*n-t.pagination.bulletSize)/2-l*t.pagination.bulletSize,r=e?"right":"left";a.css(t.isHorizontal()?r:"top",`${s}px`)}}if("fraction"===i.type&&(n.find(`.${i.currentClass}`).text(i.formatFractionCurrent(s+1)),n.find(`.${i.totalClass}`).text(i.formatFractionTotal(r))),"progressbar"===i.type){let e;e=i.progressbarOpposite?t.isHorizontal()?"vertical":"horizontal":t.isHorizontal()?"horizontal":"vertical";const a=(s+1)/r;let o=1,l=1;"horizontal"===e?o=a:l=a,n.find(`.${i.progressbarFillClass}`).transform(`translate3d(0,0,0) scaleX(${o}) scaleY(${l})`).transition(t.params.speed)}"custom"===i.type&&i.renderCustom?(n.html(i.renderCustom(t,s+1,r)),t.emit("paginationRender",t,n[0])):t.emit("paginationUpdate",t,n[0]),n[t.params.watchOverflow&&t.isLocked?"addClass":"removeClass"](i.lockClass)},render(){const t=this,e=t.params.pagination;if(!e.el||!t.pagination.el||!t.pagination.$el||0===t.pagination.$el.length)return;const i=t.virtual&&t.params.virtual.enabled?t.virtual.slides.length:t.slides.length,a=t.pagination.$el;let n="";if("bullets"===e.type){const s=t.params.loop?Math.ceil((i-2*t.loopedSlides)/t.params.slidesPerGroup):t.snapGrid.length;for(let i=0;i`;a.html(n),t.pagination.bullets=a.find(`.${e.bulletClass}`)}"fraction"===e.type&&(n=e.renderFraction?e.renderFraction.call(t,e.currentClass,e.totalClass):` / `,a.html(n)),"progressbar"===e.type&&(n=e.renderProgressbar?e.renderProgressbar.call(t,e.progressbarFillClass):``,a.html(n)),"custom"!==e.type&&t.emit("paginationRender",t.pagination.$el[0])},init(){const t=this,e=t.params.pagination;if(!e.el)return;let i=c(e.el);0!==i.length&&(t.params.uniqueNavElements&&"string"==typeof e.el&&i.length>1&&(i=t.$el.find(e.el)),"bullets"===e.type&&e.clickable&&i.addClass(e.clickableClass),i.addClass(e.modifierClass+e.type),"bullets"===e.type&&e.dynamicBullets&&(i.addClass(`${e.modifierClass}${e.type}-dynamic`),t.pagination.dynamicBulletIndex=0,e.dynamicMainBullets<1&&(e.dynamicMainBullets=1)),"progressbar"===e.type&&e.progressbarOpposite&&i.addClass(e.progressbarOppositeClass),e.clickable&&i.on("click",`.${e.bulletClass}`,(function(e){e.preventDefault();let i=c(this).index()*t.params.slidesPerGroup;t.params.loop&&(i+=t.loopedSlides),t.slideTo(i)})),u.extend(t.pagination,{$el:i,el:i[0]}))},destroy(){const t=this,e=t.params.pagination;if(!e.el||!t.pagination.el||!t.pagination.$el||0===t.pagination.$el.length)return;const i=t.pagination.$el;i.removeClass(e.hiddenClass),i.removeClass(e.modifierClass+e.type),t.pagination.bullets&&t.pagination.bullets.removeClass(e.bulletActiveClass),e.clickable&&i.off("click",`.${e.bulletClass}`)}},U={setTranslate(){const t=this;if(!t.params.scrollbar.el||!t.scrollbar.el)return;const{scrollbar:e,rtlTranslate:i,progress:a}=t,{dragSize:n,trackSize:s,$dragEl:r,$el:o}=e,l=t.params.scrollbar;let c=n,d=(s-n)*a;i?(d=-d,d>0?(c=n-d,d=0):-d+n>s&&(c=s+d)):d<0?(c=n+d,d=0):d+n>s&&(c=s-d),t.isHorizontal()?(r.transform(`translate3d(${d}px, 0, 0)`),r[0].style.width=`${c}px`):(r.transform(`translate3d(0px, ${d}px, 0)`),r[0].style.height=`${c}px`),l.hide&&(clearTimeout(t.scrollbar.timeout),o[0].style.opacity=1,t.scrollbar.timeout=setTimeout((()=>{o[0].style.opacity=0,o.transition(400)}),1e3))},setTransition(t){const e=this;e.params.scrollbar.el&&e.scrollbar.el&&e.scrollbar.$dragEl.transition(t)},updateSize(){const t=this;if(!t.params.scrollbar.el||!t.scrollbar.el)return;const{scrollbar:e}=t,{$dragEl:i,$el:a}=e;i[0].style.width="",i[0].style.height="";const n=t.isHorizontal()?a[0].offsetWidth:a[0].offsetHeight,s=t.size/t.virtualSize,r=s*(n/t.size);let o;o="auto"===t.params.scrollbar.dragSize?n*s:parseInt(t.params.scrollbar.dragSize,10),t.isHorizontal()?i[0].style.width=`${o}px`:i[0].style.height=`${o}px`,a[0].style.display=s>=1?"none":"",t.params.scrollbar.hide&&(a[0].style.opacity=0),u.extend(e,{trackSize:n,divider:s,moveDivider:r,dragSize:o}),e.$el[t.params.watchOverflow&&t.isLocked?"addClass":"removeClass"](t.params.scrollbar.lockClass)},getPointerPosition(t){return this.isHorizontal()?"touchstart"===t.type||"touchmove"===t.type?t.targetTouches[0].clientX:t.clientX:"touchstart"===t.type||"touchmove"===t.type?t.targetTouches[0].clientY:t.clientY},setDragPosition(t){const e=this,{scrollbar:i,rtlTranslate:a}=e,{$el:n,dragSize:s,trackSize:r,dragStartPos:o}=i;let l;l=(i.getPointerPosition(t)-n.offset()[e.isHorizontal()?"left":"top"]-(null!==o?o:s/2))/(r-s),l=Math.max(Math.min(l,1),0),a&&(l=1-l);const c=e.minTranslate()+(e.maxTranslate()-e.minTranslate())*l;e.updateProgress(c),e.setTranslate(c),e.updateActiveIndex(),e.updateSlidesClasses()},onDragStart(t){const e=this,i=e.params.scrollbar,{scrollbar:a,$wrapperEl:n}=e,{$el:s,$dragEl:r}=a;e.scrollbar.isTouched=!0,e.scrollbar.dragStartPos=t.target===r[0]||t.target===r?a.getPointerPosition(t)-t.target.getBoundingClientRect()[e.isHorizontal()?"left":"top"]:null,t.preventDefault(),t.stopPropagation(),n.transition(100),r.transition(100),a.setDragPosition(t),clearTimeout(e.scrollbar.dragTimeout),s.transition(0),i.hide&&s.css("opacity",1),e.params.cssMode&&e.$wrapperEl.css("scroll-snap-type","none"),e.emit("scrollbarDragStart",t)},onDragMove(t){const e=this,{scrollbar:i,$wrapperEl:a}=e,{$el:n,$dragEl:s}=i;e.scrollbar.isTouched&&(t.preventDefault?t.preventDefault():t.returnValue=!1,i.setDragPosition(t),a.transition(0),n.transition(0),s.transition(0),e.emit("scrollbarDragMove",t))},onDragEnd(t){const e=this,i=e.params.scrollbar,{scrollbar:a,$wrapperEl:n}=e,{$el:s}=a;e.scrollbar.isTouched&&(e.scrollbar.isTouched=!1,e.params.cssMode&&(e.$wrapperEl.css("scroll-snap-type",""),n.transition("")),i.hide&&(clearTimeout(e.scrollbar.dragTimeout),e.scrollbar.dragTimeout=u.nextTick((()=>{s.css("opacity",0),s.transition(400)}),1e3)),e.emit("scrollbarDragEnd",t),i.snapOnRelease&&e.slideToClosest())},enableDraggable(){const t=this;if(!t.params.scrollbar.el)return;const{scrollbar:e,touchEventsTouch:i,touchEventsDesktop:a,params:n}=t,r=e.$el[0],o=!(!p.passiveListener||!n.passiveListeners)&&{passive:!1,capture:!1},l=!(!p.passiveListener||!n.passiveListeners)&&{passive:!0,capture:!1};p.touch?(r.addEventListener(i.start,t.scrollbar.onDragStart,o),r.addEventListener(i.move,t.scrollbar.onDragMove,o),r.addEventListener(i.end,t.scrollbar.onDragEnd,l)):(r.addEventListener(a.start,t.scrollbar.onDragStart,o),s.addEventListener(a.move,t.scrollbar.onDragMove,o),s.addEventListener(a.end,t.scrollbar.onDragEnd,l))},disableDraggable(){const t=this;if(!t.params.scrollbar.el)return;const{scrollbar:e,touchEventsTouch:i,touchEventsDesktop:a,params:n}=t,r=e.$el[0],o=!(!p.passiveListener||!n.passiveListeners)&&{passive:!1,capture:!1},l=!(!p.passiveListener||!n.passiveListeners)&&{passive:!0,capture:!1};p.touch?(r.removeEventListener(i.start,t.scrollbar.onDragStart,o),r.removeEventListener(i.move,t.scrollbar.onDragMove,o),r.removeEventListener(i.end,t.scrollbar.onDragEnd,l)):(r.removeEventListener(a.start,t.scrollbar.onDragStart,o),s.removeEventListener(a.move,t.scrollbar.onDragMove,o),s.removeEventListener(a.end,t.scrollbar.onDragEnd,l))},init(){const t=this;if(!t.params.scrollbar.el)return;const{scrollbar:e,$el:i}=t,a=t.params.scrollbar;let n=c(a.el);t.params.uniqueNavElements&&"string"==typeof a.el&&n.length>1&&1===i.find(a.el).length&&(n=i.find(a.el));let s=n.find(`.${t.params.scrollbar.dragClass}`);0===s.length&&(s=c(`
`),n.append(s)),u.extend(e,{$el:n,el:n[0],$dragEl:s,dragEl:s[0]}),a.draggable&&e.enableDraggable()},destroy(){this.scrollbar.disableDraggable()}},q={setTransform(t,e){const{rtl:i}=this,a=c(t),n=i?-1:1,s=a.attr("data-swiper-parallax")||"0";let r=a.attr("data-swiper-parallax-x"),o=a.attr("data-swiper-parallax-y");const l=a.attr("data-swiper-parallax-scale"),d=a.attr("data-swiper-parallax-opacity");if(r||o?(r=r||"0",o=o||"0"):this.isHorizontal()?(r=s,o="0"):(o=s,r="0"),r=r.indexOf("%")>=0?parseInt(r,10)*e*n+"%":r*e*n+"px",o=o.indexOf("%")>=0?parseInt(o,10)*e+"%":o*e+"px",null!=d){const t=d-(d-1)*(1-Math.abs(e));a[0].style.opacity=t}if(null==l)a.transform(`translate3d(${r}, ${o}, 0px)`);else{const t=l-(l-1)*(1-Math.abs(e));a.transform(`translate3d(${r}, ${o}, 0px) scale(${t})`)}},setTranslate(){const t=this,{$el:e,slides:i,progress:a,snapGrid:n}=t;e.children("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]").each(((e,i)=>{t.parallax.setTransform(i,a)})),i.each(((e,i)=>{let s=i.progress;t.params.slidesPerGroup>1&&"auto"!==t.params.slidesPerView&&(s+=Math.ceil(e/2)-a*(n.length-1)),s=Math.min(Math.max(s,-1),1),c(i).find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]").each(((e,i)=>{t.parallax.setTransform(i,s)}))}))},setTransition(t=this.params.speed){const{$el:e}=this;e.find("[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]").each(((e,i)=>{const a=c(i);let n=parseInt(a.attr("data-swiper-parallax-duration"),10)||t;0===t&&(n=0),a.transition(n)}))}},Z={getDistanceBetweenTouches(t){if(t.targetTouches.length<2)return 1;const e=t.targetTouches[0].pageX,i=t.targetTouches[0].pageY,a=t.targetTouches[1].pageX,n=t.targetTouches[1].pageY;return Math.sqrt((a-e)**2+(n-i)**2)},onGestureStart(t){const e=this,i=e.params.zoom,a=e.zoom,{gesture:n}=a;if(a.fakeGestureTouched=!1,a.fakeGestureMoved=!1,!p.gestures){if("touchstart"!==t.type||"touchstart"===t.type&&t.targetTouches.length<2)return;a.fakeGestureTouched=!0,n.scaleStart=Z.getDistanceBetweenTouches(t)}n.$slideEl&&n.$slideEl.length||(n.$slideEl=c(t.target).closest(`.${e.params.slideClass}`),0===n.$slideEl.length&&(n.$slideEl=e.slides.eq(e.activeIndex)),n.$imageEl=n.$slideEl.find("img, svg, canvas, picture, .swiper-zoom-target"),n.$imageWrapEl=n.$imageEl.parent(`.${i.containerClass}`),n.maxRatio=n.$imageWrapEl.attr("data-swiper-zoom")||i.maxRatio,0!==n.$imageWrapEl.length)?(n.$imageEl&&n.$imageEl.transition(0),e.zoom.isScaling=!0):n.$imageEl=void 0},onGestureChange(t){const e=this.params.zoom,i=this.zoom,{gesture:a}=i;if(!p.gestures){if("touchmove"!==t.type||"touchmove"===t.type&&t.targetTouches.length<2)return;i.fakeGestureMoved=!0,a.scaleMove=Z.getDistanceBetweenTouches(t)}a.$imageEl&&0!==a.$imageEl.length&&(i.scale=p.gestures?t.scale*i.currentScale:a.scaleMove/a.scaleStart*i.currentScale,i.scale>a.maxRatio&&(i.scale=a.maxRatio-1+(i.scale-a.maxRatio+1)**.5),i.scalen.touchesStart.x))return void(n.isTouched=!1);if(!e.isHorizontal()&&(Math.floor(n.minY)===Math.floor(n.startY)&&n.touchesCurrent.yn.touchesStart.y))return void(n.isTouched=!1)}t.cancelable&&t.preventDefault(),t.stopPropagation(),n.isMoved=!0,n.currentX=n.touchesCurrent.x-n.touchesStart.x+n.startX,n.currentY=n.touchesCurrent.y-n.touchesStart.y+n.startY,n.currentXn.maxX&&(n.currentX=n.maxX-1+(n.currentX-n.maxX+1)**.8),n.currentYn.maxY&&(n.currentY=n.maxY-1+(n.currentY-n.maxY+1)**.8),s.prevPositionX||(s.prevPositionX=n.touchesCurrent.x),s.prevPositionY||(s.prevPositionY=n.touchesCurrent.y),s.prevTime||(s.prevTime=Date.now()),s.x=(n.touchesCurrent.x-s.prevPositionX)/(Date.now()-s.prevTime)/2,s.y=(n.touchesCurrent.y-s.prevPositionY)/(Date.now()-s.prevTime)/2,Math.abs(n.touchesCurrent.x-s.prevPositionX)<2&&(s.x=0),Math.abs(n.touchesCurrent.y-s.prevPositionY)<2&&(s.y=0),s.prevPositionX=n.touchesCurrent.x,s.prevPositionY=n.touchesCurrent.y,s.prevTime=Date.now(),a.$imageWrapEl.transform(`translate3d(${n.currentX}px, ${n.currentY}px,0)`)}},onTouchEnd(){const t=this.zoom,{gesture:e,image:i,velocity:a}=t;if(!e.$imageEl||0===e.$imageEl.length)return;if(!i.isTouched||!i.isMoved)return i.isTouched=!1,void(i.isMoved=!1);i.isTouched=!1,i.isMoved=!1;let n=300,s=300;const r=a.x*n,o=i.currentX+r,l=a.y*s,c=i.currentY+l;0!==a.x&&(n=Math.abs((o-i.currentX)/a.x)),0!==a.y&&(s=Math.abs((c-i.currentY)/a.y));const d=Math.max(n,s);i.currentX=o,i.currentY=c;const h=i.width*t.scale,u=i.height*t.scale;i.minX=Math.min(e.slideWidth/2-h/2,0),i.maxX=-i.minX,i.minY=Math.min(e.slideHeight/2-u/2,0),i.maxY=-i.minY,i.currentX=Math.max(Math.min(i.currentX,i.maxX),i.minX),i.currentY=Math.max(Math.min(i.currentY,i.maxY),i.minY),e.$imageWrapEl.transition(d).transform(`translate3d(${i.currentX}px, ${i.currentY}px,0)`)},onTransitionEnd(){const t=this,e=t.zoom,{gesture:i}=e;i.$slideEl&&t.previousIndex!==t.activeIndex&&(i.$imageEl&&i.$imageEl.transform("translate3d(0,0,0) scale(1)"),i.$imageWrapEl&&i.$imageWrapEl.transform("translate3d(0,0,0)"),e.scale=1,e.currentScale=1,i.$slideEl=void 0,i.$imageEl=void 0,i.$imageWrapEl=void 0)},toggle(t){const e=this.zoom;e.scale&&1!==e.scale?e.out():e.in(t)},in(t){const e=this,i=e.zoom,a=e.params.zoom,{gesture:n,image:s}=i;if(n.$slideEl||(e.params.virtual&&e.params.virtual.enabled&&e.virtual?n.$slideEl=e.$wrapperEl.children(`.${e.params.slideActiveClass}`):n.$slideEl=e.slides.eq(e.activeIndex),n.$imageEl=n.$slideEl.find("img, svg, canvas, picture, .swiper-zoom-target"),n.$imageWrapEl=n.$imageEl.parent(`.${a.containerClass}`)),!n.$imageEl||0===n.$imageEl.length)return;let r,o,l,c,d,h,u,p,f,g,v,m,x,b,y,w,C,S;n.$slideEl.addClass(`${a.zoomedSlideClass}`),void 0===s.touchesStart.x&&t?(r="touchend"===t.type?t.changedTouches[0].pageX:t.pageX,o="touchend"===t.type?t.changedTouches[0].pageY:t.pageY):(r=s.touchesStart.x,o=s.touchesStart.y),i.scale=n.$imageWrapEl.attr("data-swiper-zoom")||a.maxRatio,i.currentScale=n.$imageWrapEl.attr("data-swiper-zoom")||a.maxRatio,t?(C=n.$slideEl[0].offsetWidth,S=n.$slideEl[0].offsetHeight,l=n.$slideEl.offset().left,c=n.$slideEl.offset().top,d=l+C/2-r,h=c+S/2-o,f=n.$imageEl[0].offsetWidth,g=n.$imageEl[0].offsetHeight,v=f*i.scale,m=g*i.scale,x=Math.min(C/2-v/2,0),b=Math.min(S/2-m/2,0),y=-x,w=-b,u=d*i.scale,p=h*i.scale,uy&&(u=y),pw&&(p=w)):(u=0,p=0),n.$imageWrapEl.transition(300).transform(`translate3d(${u}px, ${p}px,0)`),n.$imageEl.transition(300).transform(`translate3d(0,0,0) scale(${i.scale})`)},out(){const t=this,e=t.zoom,i=t.params.zoom,{gesture:a}=e;a.$slideEl||(t.params.virtual&&t.params.virtual.enabled&&t.virtual?a.$slideEl=t.$wrapperEl.children(`.${t.params.slideActiveClass}`):a.$slideEl=t.slides.eq(t.activeIndex),a.$imageEl=a.$slideEl.find("img, svg, canvas, picture, .swiper-zoom-target"),a.$imageWrapEl=a.$imageEl.parent(`.${i.containerClass}`)),a.$imageEl&&0!==a.$imageEl.length&&(e.scale=1,e.currentScale=1,a.$imageWrapEl.transition(300).transform("translate3d(0,0,0)"),a.$imageEl.transition(300).transform("translate3d(0,0,0) scale(1)"),a.$slideEl.removeClass(`${i.zoomedSlideClass}`),a.$slideEl=void 0)},enable(){const t=this,e=t.zoom;if(e.enabled)return;e.enabled=!0;const i=!("touchstart"!==t.touchEvents.start||!p.passiveListener||!t.params.passiveListeners)&&{passive:!0,capture:!1},a=!p.passiveListener||{passive:!1,capture:!0},n=`.${t.params.slideClass}`;p.gestures?(t.$wrapperEl.on("gesturestart",n,e.onGestureStart,i),t.$wrapperEl.on("gesturechange",n,e.onGestureChange,i),t.$wrapperEl.on("gestureend",n,e.onGestureEnd,i)):"touchstart"===t.touchEvents.start&&(t.$wrapperEl.on(t.touchEvents.start,n,e.onGestureStart,i),t.$wrapperEl.on(t.touchEvents.move,n,e.onGestureChange,a),t.$wrapperEl.on(t.touchEvents.end,n,e.onGestureEnd,i),t.touchEvents.cancel&&t.$wrapperEl.on(t.touchEvents.cancel,n,e.onGestureEnd,i)),t.$wrapperEl.on(t.touchEvents.move,`.${t.params.zoom.containerClass}`,e.onTouchMove,a)},disable(){const t=this,e=t.zoom;if(!e.enabled)return;t.zoom.enabled=!1;const i=!("touchstart"!==t.touchEvents.start||!p.passiveListener||!t.params.passiveListeners)&&{passive:!0,capture:!1},a=!p.passiveListener||{passive:!1,capture:!0},n=`.${t.params.slideClass}`;p.gestures?(t.$wrapperEl.off("gesturestart",n,e.onGestureStart,i),t.$wrapperEl.off("gesturechange",n,e.onGestureChange,i),t.$wrapperEl.off("gestureend",n,e.onGestureEnd,i)):"touchstart"===t.touchEvents.start&&(t.$wrapperEl.off(t.touchEvents.start,n,e.onGestureStart,i),t.$wrapperEl.off(t.touchEvents.move,n,e.onGestureChange,a),t.$wrapperEl.off(t.touchEvents.end,n,e.onGestureEnd,i),t.touchEvents.cancel&&t.$wrapperEl.off(t.touchEvents.cancel,n,e.onGestureEnd,i)),t.$wrapperEl.off(t.touchEvents.move,`.${t.params.zoom.containerClass}`,e.onTouchMove,a)}},Q={loadInSlide(t,e=!0){const i=this,a=i.params.lazy;if(void 0===t)return;if(0===i.slides.length)return;const n=i.virtual&&i.params.virtual.enabled?i.$wrapperEl.children(`.${i.params.slideClass}[data-swiper-slide-index="${t}"]`):i.slides.eq(t);let s=n.find(`.${a.elementClass}:not(.${a.loadedClass}):not(.${a.loadingClass})`);!n.hasClass(a.elementClass)||n.hasClass(a.loadedClass)||n.hasClass(a.loadingClass)||(s=s.add(n[0])),0!==s.length&&s.each(((t,s)=>{const r=c(s);r.addClass(a.loadingClass);const o=r.attr("data-background"),l=r.attr("data-src"),d=r.attr("data-srcset"),h=r.attr("data-sizes"),u=r.parent("picture");i.loadImage(r[0],l||o,d,h,!1,(()=>{if(null!=i&&i&&(!i||i.params)&&!i.destroyed){if(o?(r.css("background-image",`url("${o}")`),r.removeAttr("data-background")):(d&&(r.attr("srcset",d),r.removeAttr("data-srcset")),h&&(r.attr("sizes",h),r.removeAttr("data-sizes")),u.length&&u.children("source").each(((t,e)=>{const i=c(e);i.attr("data-srcset")&&(i.attr("srcset",i.attr("data-srcset")),i.removeAttr("data-srcset"))})),l&&(r.attr("src",l),r.removeAttr("data-src"))),r.addClass(a.loadedClass).removeClass(a.loadingClass),n.find(`.${a.preloaderClass}`).remove(),i.params.loop&&e){const t=n.attr("data-swiper-slide-index");if(n.hasClass(i.params.slideDuplicateClass)){const e=i.$wrapperEl.children(`[data-swiper-slide-index="${t}"]:not(.${i.params.slideDuplicateClass})`);i.lazy.loadInSlide(e.index(),!1)}else{const e=i.$wrapperEl.children(`.${i.params.slideDuplicateClass}[data-swiper-slide-index="${t}"]`);i.lazy.loadInSlide(e.index(),!1)}}i.emit("lazyImageReady",n[0],r[0]),i.params.autoHeight&&i.updateAutoHeight()}})),i.emit("lazyImageLoad",n[0],r[0])}))},load(){const t=this,{$wrapperEl:e,params:i,slides:a,activeIndex:n}=t,s=t.virtual&&i.virtual.enabled,r=i.lazy;let o=i.slidesPerView;function l(t){if(s){if(e.children(`.${i.slideClass}[data-swiper-slide-index="${t}"]`).length)return!0}else if(a[t])return!0;return!1}function d(t){return s?c(t).attr("data-swiper-slide-index"):c(t).index()}if("auto"===o&&(o=0),t.lazy.initialImageLoaded||(t.lazy.initialImageLoaded=!0),t.params.watchSlidesVisibility)e.children(`.${i.slideVisibleClass}`).each(((e,i)=>{const a=s?c(i).attr("data-swiper-slide-index"):c(i).index();t.lazy.loadInSlide(a)}));else if(o>1)for(let e=n;e1||r.loadPrevNextAmount&&r.loadPrevNextAmount>1){const e=r.loadPrevNextAmount,i=o,s=Math.min(n+i+Math.max(e,i),a.length),c=Math.max(n-Math.max(i,e),0);for(let e=n+o;e0&&t.lazy.loadInSlide(d(a));const n=e.children(`.${i.slidePrevClass}`);n.length>0&&t.lazy.loadInSlide(d(n))}}},K={LinearSpline:function(t,e){const i=function(){let t,e,i;return(a,n)=>{for(e=-1,t=a.length;t-e>1;)i=t+e>>1,a[i]<=n?e=i:t=i;return t}}();let a,n;return this.x=t,this.y=e,this.lastIndex=t.length-1,this.interpolate=function(t){return t?(n=i(this.x,t),a=n-1,(t-this.x[a])*(this.y[n]-this.y[a])/(this.x[n]-this.x[a])+this.y[a]):0},this},getInterpolateFunction(t){const e=this;e.controller.spline||(e.controller.spline=e.params.loop?new K.LinearSpline(e.slidesGrid,t.slidesGrid):new K.LinearSpline(e.snapGrid,t.snapGrid))},setTranslate(t,e){const i=this,a=i.controller.control;let n,s;function r(t){const e=i.rtlTranslate?-i.translate:i.translate;"slide"===i.params.controller.by&&(i.controller.getInterpolateFunction(t),s=-i.controller.spline.interpolate(-e)),s&&"container"!==i.params.controller.by||(n=(t.maxTranslate()-t.minTranslate())/(i.maxTranslate()-i.minTranslate()),s=(e-i.minTranslate())*n+t.minTranslate()),i.params.controller.inverse&&(s=t.maxTranslate()-s),t.updateProgress(s),t.setTranslate(s,i),t.updateActiveIndex(),t.updateSlidesClasses()}if(Array.isArray(a))for(let t=0;t{e.updateAutoHeight()})),e.$wrapperEl.transitionEnd((()=>{a&&(e.params.loop&&"slide"===i.params.controller.by&&e.loopFix(),e.transitionEnd())})))}if(Array.isArray(a))for(n=0;n0&&(t.isBeginning?(t.a11y.disableEl(i),t.a11y.makeElNotFocusable(i)):(t.a11y.enableEl(i),t.a11y.makeElFocusable(i))),e&&e.length>0&&(t.isEnd?(t.a11y.disableEl(e),t.a11y.makeElNotFocusable(e)):(t.a11y.enableEl(e),t.a11y.makeElFocusable(e)))},updatePagination(){const t=this,e=t.params.a11y;t.pagination&&t.params.pagination.clickable&&t.pagination.bullets&&t.pagination.bullets.length&&t.pagination.bullets.each(((i,a)=>{const n=c(a);t.a11y.makeElFocusable(n),t.a11y.addElRole(n,"button"),t.a11y.addElLabel(n,e.paginationBulletMessage.replace(/\{\{index\}\}/,n.index()+1))}))},init(){const t=this;t.$el.append(t.a11y.liveRegion);const e=t.params.a11y;let i,a;t.navigation&&t.navigation.$nextEl&&(i=t.navigation.$nextEl),t.navigation&&t.navigation.$prevEl&&(a=t.navigation.$prevEl),i&&(t.a11y.makeElFocusable(i),t.a11y.addElRole(i,"button"),t.a11y.addElLabel(i,e.nextSlideMessage),i.on("keydown",t.a11y.onEnterKey)),a&&(t.a11y.makeElFocusable(a),t.a11y.addElRole(a,"button"),t.a11y.addElLabel(a,e.prevSlideMessage),a.on("keydown",t.a11y.onEnterKey)),t.pagination&&t.params.pagination.clickable&&t.pagination.bullets&&t.pagination.bullets.length&&t.pagination.$el.on("keydown",`.${t.params.pagination.bulletClass}`,t.a11y.onEnterKey)},destroy(){const t=this;let e,i;t.a11y.liveRegion&&t.a11y.liveRegion.length>0&&t.a11y.liveRegion.remove(),t.navigation&&t.navigation.$nextEl&&(e=t.navigation.$nextEl),t.navigation&&t.navigation.$prevEl&&(i=t.navigation.$prevEl),e&&e.off("keydown",t.a11y.onEnterKey),i&&i.off("keydown",t.a11y.onEnterKey),t.pagination&&t.params.pagination.clickable&&t.pagination.bullets&&t.pagination.bullets.length&&t.pagination.$el.off("keydown",`.${t.params.pagination.bulletClass}`,t.a11y.onEnterKey)}},et={init(){const t=this;if(!t.params.history)return;if(!o.history||!o.history.pushState)return t.params.history.enabled=!1,void(t.params.hashNavigation.enabled=!0);const e=t.history;e.initialized=!0,e.paths=et.getPathValues(),(e.paths.key||e.paths.value)&&(e.scrollToSlide(0,e.paths.value,t.params.runCallbacksOnInit),t.params.history.replaceState||o.addEventListener("popstate",t.history.setHistoryPopState))},destroy(){this.params.history.replaceState||o.removeEventListener("popstate",this.history.setHistoryPopState)},setHistoryPopState(){const t=this;t.history.paths=et.getPathValues(),t.history.scrollToSlide(t.params.speed,t.history.paths.value,!1)},getPathValues(){const t=o.location.pathname.slice(1).split("/").filter((t=>""!==t)),e=t.length;return{key:t[e-2],value:t[e-1]}},setHistory(t,e){const i=this;if(!i.history.initialized||!i.params.history.enabled)return;const a=i.slides.eq(e);let n=et.slugify(a.attr("data-history"));o.location.pathname.includes(t)||(n=`${t}/${n}`);const s=o.history.state;s&&s.value===n||(i.params.history.replaceState?o.history.replaceState({value:n},null,n):o.history.pushState({value:n},null,n))},slugify(t){return t.toString().replace(/\s+/g,"-").replace(/[^\w-]+/g,"").replace(/--+/g,"-").replace(/^-+/,"").replace(/-+$/,"")},scrollToSlide(t,e,i){const a=this;if(e)for(let n=0,s=a.slides.length;n{t.params.autoplay.reverseDirection?t.params.loop?(t.loopFix(),t.slidePrev(t.params.speed,!0,!0),t.emit("autoplay")):t.isBeginning?t.params.autoplay.stopOnLastSlide?t.autoplay.stop():(t.slideTo(t.slides.length-1,t.params.speed,!0,!0),t.emit("autoplay")):(t.slidePrev(t.params.speed,!0,!0),t.emit("autoplay")):t.params.loop?(t.loopFix(),t.slideNext(t.params.speed,!0,!0),t.emit("autoplay")):t.isEnd?t.params.autoplay.stopOnLastSlide?t.autoplay.stop():(t.slideTo(0,t.params.speed,!0,!0),t.emit("autoplay")):(t.slideNext(t.params.speed,!0,!0),t.emit("autoplay")),t.params.cssMode&&t.autoplay.running&&t.autoplay.run()}),i)},start(){const t=this;return void 0===t.autoplay.timeout&&!t.autoplay.running&&(t.autoplay.running=!0,t.emit("autoplayStart"),t.autoplay.run(),!0)},stop(){const t=this;return!!t.autoplay.running&&void 0!==t.autoplay.timeout&&(t.autoplay.timeout&&(clearTimeout(t.autoplay.timeout),t.autoplay.timeout=void 0),t.autoplay.running=!1,t.emit("autoplayStop"),!0)},pause(t){const e=this;e.autoplay.running&&(e.autoplay.paused||(e.autoplay.timeout&&clearTimeout(e.autoplay.timeout),e.autoplay.paused=!0,0!==t&&e.params.autoplay.waitForTransition?(e.$wrapperEl[0].addEventListener("transitionend",e.autoplay.onTransitionEnd),e.$wrapperEl[0].addEventListener("webkitTransitionEnd",e.autoplay.onTransitionEnd)):(e.autoplay.paused=!1,e.autoplay.run())))}},nt={setTranslate(){const t=this,{slides:e}=t;for(let i=0;i{if(t)return;if(!e||e.destroyed)return;t=!0,e.animating=!1;const i=["webkitTransitionEnd","transitionend"];for(let t=0;t'),i.append(u)),u.css({height:`${n}px`})):(u=e.find(".swiper-cube-shadow"),0===u.length&&(u=c('
'),e.append(u))));for(let t=0;t-1&&(p=90*i+90*u,r&&(p=90*-i-90*u)),e.transform(m),l.slideShadows){let t=d?e.find(".swiper-slide-shadow-left"):e.find(".swiper-slide-shadow-top"),i=d?e.find(".swiper-slide-shadow-right"):e.find(".swiper-slide-shadow-bottom");0===t.length&&(t=c(`
`),e.append(t)),0===i.length&&(i=c(`
`),e.append(i)),t.length&&(t[0].style.opacity=Math.max(-u,0)),i.length&&(i[0].style.opacity=Math.max(u,0))}}if(i.css({"-webkit-transform-origin":`50% 50% -${o/2}px`,"-moz-transform-origin":`50% 50% -${o/2}px`,"-ms-transform-origin":`50% 50% -${o/2}px`,"transform-origin":`50% 50% -${o/2}px`}),l.shadow)if(d)u.transform(`translate3d(0px, ${n/2+l.shadowOffset}px, ${-n/2}px) rotateX(90deg) rotateZ(0deg) scale(${l.shadowScale})`);else{const t=Math.abs(p)-90*Math.floor(Math.abs(p)/90),e=1.5-(Math.sin(2*t*Math.PI/360)/2+Math.cos(2*t*Math.PI/360)/2),i=l.shadowScale,a=l.shadowScale/e,n=l.shadowOffset;u.transform(`scale3d(${i}, 1, ${a}) translate3d(0px, ${s/2+n}px, ${-s/2/a}px) rotateX(-90deg)`)}const f=N.isSafari||N.isWebView?-o/2:0;i.transform(`translate3d(0px,0,${f}px) rotateX(${t.isHorizontal()?0:p}deg) rotateY(${t.isHorizontal()?-p:0}deg)`)},setTransition(t){const e=this,{$el:i,slides:a}=e;a.transition(t).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(t),e.params.cubeEffect.shadow&&!e.isHorizontal()&&i.find(".swiper-cube-shadow").transition(t)}},rt={setTranslate(){const t=this,{slides:e,rtlTranslate:i}=t;for(let a=0;a`),n.append(e)),0===i.length&&(i=c(`
`),n.append(i)),e.length&&(e[0].style.opacity=Math.max(-s,0)),i.length&&(i[0].style.opacity=Math.max(s,0))}n.transform(`translate3d(${l}px, ${d}px, 0px) rotateX(${o}deg) rotateY(${r}deg)`)}},setTransition(t){const e=this,{slides:i,activeIndex:a,$wrapperEl:n}=e;if(i.transition(t).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(t),e.params.virtualTranslate&&0!==t){let t=!1;i.eq(a).transitionEnd((function(){if(t)return;if(!e||e.destroyed)return;t=!0,e.animating=!1;const i=["webkitTransitionEnd","transitionend"];for(let t=0;t`),e.append(t)),0===i.length&&(i=c(`
`),e.append(i)),t.length&&(t[0].style.opacity=n>0?n:0),i.length&&(i[0].style.opacity=-n>0?-n:0)}}(p.pointerEvents||p.prefixedPointerEvents)&&(n[0].style.perspectiveOrigin=`${d}px 50%`)},setTransition(t){this.slides.transition(t).find(".swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left").transition(t)}},lt={init(){const t=this,{thumbs:e}=t.params,i=t.constructor;e.swiper instanceof i?(t.thumbs.swiper=e.swiper,u.extend(t.thumbs.swiper.originalParams,{watchSlidesProgress:!0,slideToClickedSlide:!1}),u.extend(t.thumbs.swiper.params,{watchSlidesProgress:!0,slideToClickedSlide:!1})):u.isObject(e.swiper)&&(t.thumbs.swiper=new i(u.extend({},e.swiper,{watchSlidesVisibility:!0,watchSlidesProgress:!0,slideToClickedSlide:!1})),t.thumbs.swiperCreated=!0),t.thumbs.swiper.$el.addClass(t.params.thumbs.thumbsContainerClass),t.thumbs.swiper.on("tap",t.thumbs.onThumbClick)},onThumbClick(){const t=this,e=t.thumbs.swiper;if(!e)return;const i=e.clickedIndex,a=e.clickedSlide;if(a&&c(a).hasClass(t.params.thumbs.slideThumbActiveClass))return;if(null==i)return;let n;if(n=e.params.loop?parseInt(c(e.clickedSlide).attr("data-swiper-slide-index"),10):i,t.params.loop){let e=t.activeIndex;t.slides.eq(e).hasClass(t.params.slideDuplicateClass)&&(t.loopFix(),t._clientLeft=t.$wrapperEl[0].clientLeft,e=t.activeIndex);const i=t.slides.eq(e).prevAll(`[data-swiper-slide-index="${n}"]`).eq(0).index(),a=t.slides.eq(e).nextAll(`[data-swiper-slide-index="${n}"]`).eq(0).index();n=void 0===i?a:void 0===a?i:a-ee.previousIndex?"next":"prev"}else r=e.realIndex,o=r>e.previousIndex?"next":"prev";s&&(r+="next"===o?n:-1*n),i.visibleSlidesIndexes&&i.visibleSlidesIndexes.indexOf(r)<0&&(i.params.centeredSlides?r=r>l?r-Math.floor(a/2)+1:r+Math.floor(a/2)-1:r>l&&(r=r-a+1),i.slideTo(r,t?0:void 0))}let r=1;const o=e.params.thumbs.slideThumbActiveClass;if(e.params.slidesPerView>1&&!e.params.centeredSlides&&(r=e.params.slidesPerView),e.params.thumbs.multipleActiveThumbs||(r=1),r=Math.floor(r),i.slides.removeClass(o),i.params.loop||i.params.virtual&&i.params.virtual.enabled)for(let t=0;tt,formatFractionTotal:t=>t,bulletClass:"swiper-pagination-bullet",bulletActiveClass:"swiper-pagination-bullet-active",modifierClass:"swiper-pagination-",currentClass:"swiper-pagination-current",totalClass:"swiper-pagination-total",hiddenClass:"swiper-pagination-hidden",progressbarFillClass:"swiper-pagination-progressbar-fill",progressbarOppositeClass:"swiper-pagination-progressbar-opposite",clickableClass:"swiper-pagination-clickable",lockClass:"swiper-pagination-lock"}},create(){const t=this;u.extend(t,{pagination:{init:G.init.bind(t),render:G.render.bind(t),update:G.update.bind(t),destroy:G.destroy.bind(t),dynamicBulletIndex:0}})},on:{init(){const t=this;t.pagination.init(),t.pagination.render(),t.pagination.update()},activeIndexChange(){const t=this;(t.params.loop||void 0===t.snapIndex)&&t.pagination.update()},snapIndexChange(){this.params.loop||this.pagination.update()},slidesLengthChange(){const t=this;t.params.loop&&(t.pagination.render(),t.pagination.update())},snapGridLengthChange(){const t=this;t.params.loop||(t.pagination.render(),t.pagination.update())},destroy(){this.pagination.destroy()},click(t){const e=this;e.params.pagination.el&&e.params.pagination.hideOnClick&&e.pagination.$el.length>0&&!c(t.target).hasClass(e.params.pagination.bulletClass)&&(!0===e.pagination.$el.hasClass(e.params.pagination.hiddenClass)?e.emit("paginationShow",e):e.emit("paginationHide",e),e.pagination.$el.toggleClass(e.params.pagination.hiddenClass))}}},{name:"scrollbar",params:{scrollbar:{el:null,dragSize:"auto",hide:!1,draggable:!1,snapOnRelease:!0,lockClass:"swiper-scrollbar-lock",dragClass:"swiper-scrollbar-drag"}},create(){const t=this;u.extend(t,{scrollbar:{init:U.init.bind(t),destroy:U.destroy.bind(t),updateSize:U.updateSize.bind(t),setTranslate:U.setTranslate.bind(t),setTransition:U.setTransition.bind(t),enableDraggable:U.enableDraggable.bind(t),disableDraggable:U.disableDraggable.bind(t),setDragPosition:U.setDragPosition.bind(t),getPointerPosition:U.getPointerPosition.bind(t),onDragStart:U.onDragStart.bind(t),onDragMove:U.onDragMove.bind(t),onDragEnd:U.onDragEnd.bind(t),isTouched:!1,timeout:null,dragTimeout:null}})},on:{init(){const t=this;t.scrollbar.init(),t.scrollbar.updateSize(),t.scrollbar.setTranslate()},update(){this.scrollbar.updateSize()},resize(){this.scrollbar.updateSize()},observerUpdate(){this.scrollbar.updateSize()},setTranslate(){this.scrollbar.setTranslate()},setTransition(t){this.scrollbar.setTransition(t)},destroy(){this.scrollbar.destroy()}}},{name:"parallax",params:{parallax:{enabled:!1}},create(){const t=this;u.extend(t,{parallax:{setTransform:q.setTransform.bind(t),setTranslate:q.setTranslate.bind(t),setTransition:q.setTransition.bind(t)}})},on:{beforeInit(){const t=this;t.params.parallax.enabled&&(t.params.watchSlidesProgress=!0,t.originalParams.watchSlidesProgress=!0)},init(){this.params.parallax.enabled&&this.parallax.setTranslate()},setTranslate(){this.params.parallax.enabled&&this.parallax.setTranslate()},setTransition(t){this.params.parallax.enabled&&this.parallax.setTransition(t)}}},{name:"zoom",params:{zoom:{enabled:!1,maxRatio:3,minRatio:1,toggle:!0,containerClass:"swiper-zoom-container",zoomedSlideClass:"swiper-slide-zoomed"}},create(){const t=this,e={enabled:!1,scale:1,currentScale:1,isScaling:!1,gesture:{$slideEl:void 0,slideWidth:void 0,slideHeight:void 0,$imageEl:void 0,$imageWrapEl:void 0,maxRatio:3},image:{isTouched:void 0,isMoved:void 0,currentX:void 0,currentY:void 0,minX:void 0,minY:void 0,maxX:void 0,maxY:void 0,width:void 0,height:void 0,startX:void 0,startY:void 0,touchesStart:{},touchesCurrent:{}},velocity:{x:void 0,y:void 0,prevPositionX:void 0,prevPositionY:void 0,prevTime:void 0}};"onGestureStart onGestureChange onGestureEnd onTouchStart onTouchMove onTouchEnd onTransitionEnd toggle enable disable in out".split(" ").forEach((i=>{e[i]=Z[i].bind(t)})),u.extend(t,{zoom:e});let i=1;Object.defineProperty(t.zoom,"scale",{get(){return i},set(e){if(i!==e){const i=t.zoom.gesture.$imageEl?t.zoom.gesture.$imageEl[0]:void 0,a=t.zoom.gesture.$slideEl?t.zoom.gesture.$slideEl[0]:void 0;t.emit("zoomChange",e,i,a)}i=e}})},on:{init(){this.params.zoom.enabled&&this.zoom.enable()},destroy(){this.zoom.disable()},touchStart(t){this.zoom.enabled&&this.zoom.onTouchStart(t)},touchEnd(t){this.zoom.enabled&&this.zoom.onTouchEnd(t)},doubleTap(t){const e=this;e.params.zoom.enabled&&e.zoom.enabled&&e.params.zoom.toggle&&e.zoom.toggle(t)},transitionEnd(){const t=this;t.zoom.enabled&&t.params.zoom.enabled&&t.zoom.onTransitionEnd()},slideChange(){const t=this;t.zoom.enabled&&t.params.zoom.enabled&&t.params.cssMode&&t.zoom.onTransitionEnd()}}},{name:"lazy",params:{lazy:{enabled:!1,loadPrevNext:!1,loadPrevNextAmount:1,loadOnTransitionStart:!1,elementClass:"swiper-lazy",loadingClass:"swiper-lazy-loading",loadedClass:"swiper-lazy-loaded",preloaderClass:"swiper-lazy-preloader"}},create(){const t=this;u.extend(t,{lazy:{initialImageLoaded:!1,load:Q.load.bind(t),loadInSlide:Q.loadInSlide.bind(t)}})},on:{beforeInit(){const t=this;t.params.lazy.enabled&&t.params.preloadImages&&(t.params.preloadImages=!1)},init(){const t=this;t.params.lazy.enabled&&!t.params.loop&&0===t.params.initialSlide&&t.lazy.load()},scroll(){const t=this;t.params.freeMode&&!t.params.freeModeSticky&&t.lazy.load()},resize(){this.params.lazy.enabled&&this.lazy.load()},scrollbarDragMove(){this.params.lazy.enabled&&this.lazy.load()},transitionStart(){const t=this;t.params.lazy.enabled&&(t.params.lazy.loadOnTransitionStart||!t.params.lazy.loadOnTransitionStart&&!t.lazy.initialImageLoaded)&&t.lazy.load()},transitionEnd(){const t=this;t.params.lazy.enabled&&!t.params.lazy.loadOnTransitionStart&&t.lazy.load()},slideChange(){const t=this;t.params.lazy.enabled&&t.params.cssMode&&t.lazy.load()}}},J,{name:"a11y",params:{a11y:{enabled:!0,notificationClass:"swiper-notification",prevSlideMessage:"Previous slide",nextSlideMessage:"Next slide",firstSlideMessage:"This is the first slide",lastSlideMessage:"This is the last slide",paginationBulletMessage:"Go to slide {{index}}"}},create(){const t=this;u.extend(t,{a11y:{liveRegion:c(``)}}),Object.keys(tt).forEach((e=>{t.a11y[e]=tt[e].bind(t)}))},on:{init(){const t=this;t.params.a11y.enabled&&(t.a11y.init(),t.a11y.updateNavigation())},toEdge(){this.params.a11y.enabled&&this.a11y.updateNavigation()},fromEdge(){this.params.a11y.enabled&&this.a11y.updateNavigation()},paginationUpdate(){this.params.a11y.enabled&&this.a11y.updatePagination()},destroy(){this.params.a11y.enabled&&this.a11y.destroy()}}},{name:"history",params:{history:{enabled:!1,replaceState:!1,key:"slides"}},create(){const t=this;u.extend(t,{history:{init:et.init.bind(t),setHistory:et.setHistory.bind(t),setHistoryPopState:et.setHistoryPopState.bind(t),scrollToSlide:et.scrollToSlide.bind(t),destroy:et.destroy.bind(t)}})},on:{init(){this.params.history.enabled&&this.history.init()},destroy(){this.params.history.enabled&&this.history.destroy()},transitionEnd(){const t=this;t.history.initialized&&t.history.setHistory(t.params.history.key,t.activeIndex)},slideChange(){const t=this;t.history.initialized&&t.params.cssMode&&t.history.setHistory(t.params.history.key,t.activeIndex)}}},{name:"hash-navigation",params:{hashNavigation:{enabled:!1,replaceState:!1,watchState:!1}},create(){const t=this;u.extend(t,{hashNavigation:{initialized:!1,init:it.init.bind(t),destroy:it.destroy.bind(t),setHash:it.setHash.bind(t),onHashCange:it.onHashCange.bind(t)}})},on:{init(){this.params.hashNavigation.enabled&&this.hashNavigation.init()},destroy(){this.params.hashNavigation.enabled&&this.hashNavigation.destroy()},transitionEnd(){this.hashNavigation.initialized&&this.hashNavigation.setHash()},slideChange(){const t=this;t.hashNavigation.initialized&&t.params.cssMode&&t.hashNavigation.setHash()}}},{name:"autoplay",params:{autoplay:{enabled:!1,delay:3e3,waitForTransition:!0,disableOnInteraction:!0,stopOnLastSlide:!1,reverseDirection:!1}},create(){const t=this;u.extend(t,{autoplay:{running:!1,paused:!1,run:at.run.bind(t),start:at.start.bind(t),stop:at.stop.bind(t),pause:at.pause.bind(t),onVisibilityChange(){"hidden"===document.visibilityState&&t.autoplay.running&&t.autoplay.pause(),"visible"===document.visibilityState&&t.autoplay.paused&&(t.autoplay.run(),t.autoplay.paused=!1)},onTransitionEnd(e){t&&!t.destroyed&&t.$wrapperEl&&e.target===this&&(t.$wrapperEl[0].removeEventListener("transitionend",t.autoplay.onTransitionEnd),t.$wrapperEl[0].removeEventListener("webkitTransitionEnd",t.autoplay.onTransitionEnd),t.autoplay.paused=!1,t.autoplay.running?t.autoplay.run():t.autoplay.stop())}}})},on:{init(){const t=this;t.params.autoplay.enabled&&(t.autoplay.start(),document.addEventListener("visibilitychange",t.autoplay.onVisibilityChange))},beforeTransitionStart(t,e){const i=this;i.autoplay.running&&(e||!i.params.autoplay.disableOnInteraction?i.autoplay.pause(t):i.autoplay.stop())},sliderFirstMove(){const t=this;t.autoplay.running&&(t.params.autoplay.disableOnInteraction?t.autoplay.stop():t.autoplay.pause())},touchEnd(){const t=this;t.params.cssMode&&t.autoplay.paused&&!t.params.autoplay.disableOnInteraction&&t.autoplay.run()},destroy(){const t=this;t.autoplay.running&&t.autoplay.stop(),document.removeEventListener("visibilitychange",t.autoplay.onVisibilityChange)}}},{name:"effect-fade",params:{fadeEffect:{crossFade:!1}},create(){const t=this;u.extend(t,{fadeEffect:{setTranslate:nt.setTranslate.bind(t),setTransition:nt.setTransition.bind(t)}})},on:{beforeInit(){const t=this;if("fade"!==t.params.effect)return;t.classNames.push(`${t.params.containerModifierClass}fade`);const e={slidesPerView:1,slidesPerColumn:1,slidesPerGroup:1,watchSlidesProgress:!0,spaceBetween:0,virtualTranslate:!0};u.extend(t.params,e),u.extend(t.originalParams,e)},setTranslate(){"fade"===this.params.effect&&this.fadeEffect.setTranslate()},setTransition(t){"fade"===this.params.effect&&this.fadeEffect.setTransition(t)}}},{name:"effect-cube",params:{cubeEffect:{slideShadows:!0,shadow:!0,shadowOffset:20,shadowScale:.94}},create(){const t=this;u.extend(t,{cubeEffect:{setTranslate:st.setTranslate.bind(t),setTransition:st.setTransition.bind(t)}})},on:{beforeInit(){const t=this;if("cube"!==t.params.effect)return;t.classNames.push(`${t.params.containerModifierClass}cube`),t.classNames.push(`${t.params.containerModifierClass}3d`);const e={slidesPerView:1,slidesPerColumn:1,slidesPerGroup:1,watchSlidesProgress:!0,resistanceRatio:0,spaceBetween:0,centeredSlides:!1,virtualTranslate:!0};u.extend(t.params,e),u.extend(t.originalParams,e)},setTranslate(){"cube"===this.params.effect&&this.cubeEffect.setTranslate()},setTransition(t){"cube"===this.params.effect&&this.cubeEffect.setTransition(t)}}},{name:"effect-flip",params:{flipEffect:{slideShadows:!0,limitRotation:!0}},create(){const t=this;u.extend(t,{flipEffect:{setTranslate:rt.setTranslate.bind(t),setTransition:rt.setTransition.bind(t)}})},on:{beforeInit(){const t=this;if("flip"!==t.params.effect)return;t.classNames.push(`${t.params.containerModifierClass}flip`),t.classNames.push(`${t.params.containerModifierClass}3d`);const e={slidesPerView:1,slidesPerColumn:1,slidesPerGroup:1,watchSlidesProgress:!0,spaceBetween:0,virtualTranslate:!0};u.extend(t.params,e),u.extend(t.originalParams,e)},setTranslate(){"flip"===this.params.effect&&this.flipEffect.setTranslate()},setTransition(t){"flip"===this.params.effect&&this.flipEffect.setTransition(t)}}},{name:"effect-coverflow",params:{coverflowEffect:{rotate:50,stretch:0,depth:100,scale:1,modifier:1,slideShadows:!0}},create(){const t=this;u.extend(t,{coverflowEffect:{setTranslate:ot.setTranslate.bind(t),setTransition:ot.setTransition.bind(t)}})},on:{beforeInit(){const t=this;"coverflow"===t.params.effect&&(t.classNames.push(`${t.params.containerModifierClass}coverflow`),t.classNames.push(`${t.params.containerModifierClass}3d`),t.params.watchSlidesProgress=!0,t.originalParams.watchSlidesProgress=!0)},setTranslate(){"coverflow"===this.params.effect&&this.coverflowEffect.setTranslate()},setTransition(t){"coverflow"===this.params.effect&&this.coverflowEffect.setTransition(t)}}},{name:"thumbs",params:{thumbs:{swiper:null,multipleActiveThumbs:!0,autoScrollOffset:0,slideThumbActiveClass:"swiper-slide-thumb-active",thumbsContainerClass:"swiper-container-thumbs"}},create(){const t=this;u.extend(t,{thumbs:{swiper:null,init:lt.init.bind(t),update:lt.update.bind(t),onThumbClick:lt.onThumbClick.bind(t)}})},on:{beforeInit(){const t=this,{thumbs:e}=t.params;e&&e.swiper&&(t.thumbs.init(),t.thumbs.update(!0))},slideChange(){this.thumbs.swiper&&this.thumbs.update()},update(){this.thumbs.swiper&&this.thumbs.update()},resize(){this.thumbs.swiper&&this.thumbs.update()},observerUpdate(){this.thumbs.swiper&&this.thumbs.update()},setTransition(t){const e=this.thumbs.swiper;e&&e.setTransition(t)},beforeDestroy(){const t=this.thumbs.swiper;t&&this.thumbs.swiperCreated&&t&&t.destroy()}}}];void 0===_.use&&(_.use=_.Class.use,_.installModule=_.Class.installModule),_.use(ct);var dt=_},8197:function(t,e,i){t.exports=function(t){"use strict";function e(t){return e="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},e(t)}t=t&&t.hasOwnProperty("default")?t.default:t;var i={props:{options:{type:Object},type:{type:String},series:{type:Array,required:!0,default:function(){return[]}},width:{default:"100%"},height:{default:"auto"}},data:function(){return{chart:null}},beforeMount:function(){window.ApexCharts=t},mounted:function(){this.init()},created:function(){var t=this;this.$watch("options",(function(e){!t.chart&&e?t.init():t.chart.updateOptions(t.options)})),this.$watch("series",(function(e){!t.chart&&e?t.init():t.chart.updateSeries(t.series)})),["type","width","height"].forEach((function(e){t.$watch(e,(function(){t.refresh()}))}))},beforeDestroy:function(){this.chart&&this.destroy()},render:function(t){return t("div")},methods:{init:function(){var e=this,i={chart:{type:this.type||this.options.chart.type||"line",height:this.height,width:this.width,events:{}},series:this.series};Object.keys(this.$listeners).forEach((function(t){i.chart.events[t]=e.$listeners[t]}));var a=this.extend(this.options,i);return this.chart=new t(this.$el,a),this.chart.render()},isObject:function(t){return t&&"object"===e(t)&&!Array.isArray(t)&&null!=t},extend:function(t,e){var i=this;"function"!=typeof Object.assign&&(Object.assign=function(t){if(null==t)throw new TypeError("Cannot convert undefined or null to object");for(var e=Object(t),i=1;ii.parts.length&&(a.parts.length=i.parts.length)}else{var r=[];for(n=0;ni&&(i=s)}return{min:e,max:i}},fullPriceLabel:function(){var t=this.priceRange,e=t.min,i=t.max;return e!==i?"".concat(this.priceLabel(e),"–").concat(this.priceLabel(i)):this.priceLabel(e)}}),methods:{priceLabel:function(t){return t>0?this.$options.filters.currency(t):Craft.t("app","Free")}}},x=m,b=(i(4911),u(x,(function(){var t=this,e=t._self._c;return t.plugin?e("router-link",{staticClass:"plugin-card tw-relative tw-flex tw-flex-no-wrap tw-items-start tw-py-6 tw-border-b tw-border-gray-200 tw-border-solid tw-no-underline hover:tw-no-underline tw-text-gray-900",attrs:{to:"/"+t.plugin.handle,title:t.plugin.name}},[e("div",{staticClass:"plugin-icon tw-mr-4 tw-w-16 tw-shrink-0"},[t.plugin.iconUrl?[e("img",{staticClass:"tw-w-16 tw-h-16",attrs:{src:t.plugin.iconUrl}})]:[e("div",{staticClass:"tw-bg-gray-100 tw-w-16 tw-h-16 tw-flex tw-items-center tw-justify-center tw-rounded-full"},[e("c-icon",{staticClass:"tw-w-7 tw-h-7 tw-text-gray-400",attrs:{icon:"plug"}})],1)]],2),t._v(" "),e("div",[e("div",{staticClass:"plugin-details-header"},[e("div",{staticClass:"plugin-name tw-flex tw-items-center"},[e("strong",[t._v(t._s(t.plugin.name))]),t._v(" "),t.trialMode&&t.activeTrialPluginEdition&&t.plugin.editions.length>1?e("edition-badge",{attrs:{name:t.activeTrialPluginEdition.name}}):t._e()],1),t._v(" "),e("div",[t._v(t._s(t.plugin.shortDescription))])]),t._v(" "),t.plugin.abandoned?[e("div",{staticClass:"error"},[t._v(t._s(t._f("t")("Abandoned","app")))])]:[e("div",{staticClass:"light"},[t._v("\n "+t._s(t.fullPriceLabel)+"\n ")])],t._v(" "),t.isPluginInstalled(t.plugin.handle)?e("div",{staticClass:"installed",attrs:{"data-icon":"check"}}):t._e()],2)]):t._e()}),[],!1,null,"28e904f0",null)),y=u({components:{PluginCard:b.exports},props:["plugins","trialMode","autoLimit"],data:function(){return{winWidth:null}},computed:{computedPlugins:function(){var t=this;return this.plugins.filter((function(e,i){return!(t.autoLimit&&!(t.autoLimit&&i1536?8:6}},methods:{onWindowResize:function(){this.winWidth=window.innerWidth}},mounted:function(){this.winWidth=window.innerWidth,this.$root.$on("windowResize",this.onWindowResize)},beforeDestroy:function(){this.$root.$off("windowResize",this.onWindowResize)}},(function(){var t=this,e=t._self._c;return e("div",[t.plugins&&t.plugins.length>0?e("div",{staticClass:"tw-grid-plugins tw-grid tw-grid-cols-1 sm:tw-grid-cols-2 xl:tw-grid-cols-3 2xl:tw-grid-cols-4 tw-gap-x-8"},t._l(t.computedPlugins,(function(i,a){return e("div",{key:a,staticClass:"tw-grid-box sm:tw-flex"},[e("plugin-card",{staticClass:"sm:tw-flex-1",attrs:{plugin:i,trialMode:t.trialMode}})],1)})),0):t._e()])}),[],!1,null,null,null).exports;function w(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function C(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}var S={components:{PluginGrid:y},data:function(){return{activeTrialsError:null,activeTrialsLoaded:!1,featuredSectionsLoaded:!1,loading:!1}},computed:function(t){for(var e=1;e0}},[e("h2",[t._v(t._s(i.title))]),t._v(" "),e("router-link",{staticClass:"tw-right",attrs:{to:"/featured/"+i.slug}},[t._v(t._s(t._f("t")("See all","app"))+"\n ")])],1),t._v(" "),e("plugin-grid",{attrs:{plugins:i.plugins,"auto-limit":!0}})],1)})),t._v(" "),t.activeTrialPlugins.length>0||t.activeTrialsError?[e("h2",[t._v(t._s(t._f("t")("Active Trials","app")))]),t._v(" "),t.activeTrialPlugins.length>0?[e("plugin-grid",{attrs:{plugins:t.activeTrialPlugins,trialMode:!0}})]:t._e(),t._v(" "),t.activeTrialsError?[e("div",{staticClass:"tw-mb-8"},[e("p",{staticClass:"error"},[t._v(t._s(t.activeTrialsError))])])]:t._e()]:t._e()]],2)}),[],!1,null,null,null).exports;function A(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function P(t){for(var e=1;e0?this.loading=!0:this.loadingBottom=!0):this.loadingBottom=!0,void this.$store.dispatch(this.action,L(L({},this.requestActionData),{},{appendData:!t})).then((function(t){if(t&&t.error)throw t.error;i.loading=!1,i.loadingBottom=!1,t.currentPage=975?"view":"window"},viewHasScrollbar:function(){var t=this.scrollContainer();return t.clientHeight=0)return 1;return 0}(),V=B&&window.Promise?function(t){var e=!1;return function(){e||(e=!0,window.Promise.resolve().then((function(){e=!1,t()})))}}:function(t){var e=!1;return function(){e||(e=!0,setTimeout((function(){e=!1,t()}),W))}};function G(t){return t&&"[object Function]"==={}.toString.call(t)}function U(t,e){if(1!==t.nodeType)return[];var i=t.ownerDocument.defaultView.getComputedStyle(t,null);return e?i[e]:i}function q(t){return"HTML"===t.nodeName?t:t.parentNode||t.host}function Z(t){if(!t)return document.body;switch(t.nodeName){case"HTML":case"BODY":return t.ownerDocument.body;case"#document":return t.body}var e=U(t),i=e.overflow,a=e.overflowX,n=e.overflowY;return/(auto|scroll|overlay)/.test(i+n+a)?t:Z(q(t))}function Q(t){return t&&t.referenceNode?t.referenceNode:t}var K=B&&!(!window.MSInputMethodContext||!document.documentMode),J=B&&/MSIE 10/.test(navigator.userAgent);function tt(t){return 11===t?K:10===t?J:K||J}function et(t){if(!t)return document.documentElement;for(var e=tt(10)?document.body:null,i=t.offsetParent||null;i===e&&t.nextElementSibling;)i=(t=t.nextElementSibling).offsetParent;var a=i&&i.nodeName;return a&&"BODY"!==a&&"HTML"!==a?-1!==["TH","TD","TABLE"].indexOf(i.nodeName)&&"static"===U(i,"position")?et(i):i:t?t.ownerDocument.documentElement:document.documentElement}function it(t){return null!==t.parentNode?it(t.parentNode):t}function at(t,e){if(!(t&&t.nodeType&&e&&e.nodeType))return document.documentElement;var i=t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_FOLLOWING,a=i?t:e,n=i?e:t,s=document.createRange();s.setStart(a,0),s.setEnd(n,0);var r,o,l=s.commonAncestorContainer;if(t!==l&&e!==l||a.contains(n))return"BODY"===(o=(r=l).nodeName)||"HTML"!==o&&et(r.firstElementChild)!==r?et(l):l;var c=it(t);return c.host?at(c.host,e):at(t,it(e).host)}function nt(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"top",i="top"===e?"scrollTop":"scrollLeft",a=t.nodeName;if("BODY"===a||"HTML"===a){var n=t.ownerDocument.documentElement,s=t.ownerDocument.scrollingElement||n;return s[i]}return t[i]}function st(t,e){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],a=nt(e,"top"),n=nt(e,"left"),s=i?-1:1;return t.top+=a*s,t.bottom+=a*s,t.left+=n*s,t.right+=n*s,t}function rt(t,e){var i="x"===e?"Left":"Top",a="Left"===i?"Right":"Bottom";return parseFloat(t["border"+i+"Width"])+parseFloat(t["border"+a+"Width"])}function ot(t,e,i,a){return Math.max(e["offset"+t],e["scroll"+t],i["client"+t],i["offset"+t],i["scroll"+t],tt(10)?parseInt(i["offset"+t])+parseInt(a["margin"+("Height"===t?"Top":"Left")])+parseInt(a["margin"+("Height"===t?"Bottom":"Right")]):0)}function lt(t){var e=t.body,i=t.documentElement,a=tt(10)&&getComputedStyle(i);return{height:ot("Height",e,i,a),width:ot("Width",e,i,a)}}var ct=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},dt=function(){function t(t,e){for(var i=0;i2&&void 0!==arguments[2]&&arguments[2],a=tt(10),n="HTML"===e.nodeName,s=ft(t),r=ft(e),o=Z(t),l=U(e),c=parseFloat(l.borderTopWidth),d=parseFloat(l.borderLeftWidth);i&&n&&(r.top=Math.max(r.top,0),r.left=Math.max(r.left,0));var h=pt({top:s.top-r.top-c,left:s.left-r.left-d,width:s.width,height:s.height});if(h.marginTop=0,h.marginLeft=0,!a&&n){var u=parseFloat(l.marginTop),p=parseFloat(l.marginLeft);h.top-=c-u,h.bottom-=c-u,h.left-=d-p,h.right-=d-p,h.marginTop=u,h.marginLeft=p}return(a&&!i?e.contains(o):e===o&&"BODY"!==o.nodeName)&&(h=st(h,e)),h}function vt(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=t.ownerDocument.documentElement,a=gt(t,i),n=Math.max(i.clientWidth,window.innerWidth||0),s=Math.max(i.clientHeight,window.innerHeight||0),r=e?0:nt(i),o=e?0:nt(i,"left"),l={top:r-a.top+a.marginTop,left:o-a.left+a.marginLeft,width:n,height:s};return pt(l)}function mt(t){var e=t.nodeName;if("BODY"===e||"HTML"===e)return!1;if("fixed"===U(t,"position"))return!0;var i=q(t);return!!i&&mt(i)}function xt(t){if(!t||!t.parentElement||tt())return document.documentElement;for(var e=t.parentElement;e&&"none"===U(e,"transform");)e=e.parentElement;return e||document.documentElement}function bt(t,e,i,a){var n=arguments.length>4&&void 0!==arguments[4]&&arguments[4],s={top:0,left:0},r=n?xt(t):at(t,Q(e));if("viewport"===a)s=vt(r,n);else{var o=void 0;"scrollParent"===a?"BODY"===(o=Z(q(e))).nodeName&&(o=t.ownerDocument.documentElement):o="window"===a?t.ownerDocument.documentElement:a;var l=gt(o,r,n);if("HTML"!==o.nodeName||mt(r))s=l;else{var c=lt(t.ownerDocument),d=c.height,h=c.width;s.top+=l.top-l.marginTop,s.bottom=d+l.top,s.left+=l.left-l.marginLeft,s.right=h+l.left}}var u="number"==typeof(i=i||0);return s.left+=u?i:i.left||0,s.top+=u?i:i.top||0,s.right-=u?i:i.right||0,s.bottom-=u?i:i.bottom||0,s}function yt(t){return t.width*t.height}function wt(t,e,i,a,n){var s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;if(-1===t.indexOf("auto"))return t;var r=bt(i,a,s,n),o={top:{width:r.width,height:e.top-r.top},right:{width:r.right-e.right,height:r.height},bottom:{width:r.width,height:r.bottom-e.bottom},left:{width:e.left-r.left,height:r.height}},l=Object.keys(o).map((function(t){return ut({key:t},o[t],{area:yt(o[t])})})).sort((function(t,e){return e.area-t.area})),c=l.filter((function(t){var e=t.width,a=t.height;return e>=i.clientWidth&&a>=i.clientHeight})),d=c.length>0?c[0].key:l[0].key,h=t.split("-")[1];return d+(h?"-"+h:"")}function Ct(t,e,i){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,n=a?xt(e):at(e,Q(i));return gt(i,n,a)}function St(t){var e=t.ownerDocument.defaultView.getComputedStyle(t),i=parseFloat(e.marginTop||0)+parseFloat(e.marginBottom||0),a=parseFloat(e.marginLeft||0)+parseFloat(e.marginRight||0);return{width:t.offsetWidth+a,height:t.offsetHeight+i}}function kt(t){var e={left:"right",right:"left",bottom:"top",top:"bottom"};return t.replace(/left|right|bottom|top/g,(function(t){return e[t]}))}function At(t,e,i){i=i.split("-")[0];var a=St(t),n={width:a.width,height:a.height},s=-1!==["right","left"].indexOf(i),r=s?"top":"left",o=s?"left":"top",l=s?"height":"width",c=s?"width":"height";return n[r]=e[r]+e[l]/2-a[l]/2,n[o]=i===o?e[o]-a[c]:e[kt(o)],n}function Pt(t,e){return Array.prototype.find?t.find(e):t.filter(e)[0]}function Tt(t,e,i){return(void 0===i?t:t.slice(0,function(t,e,i){if(Array.prototype.findIndex)return t.findIndex((function(t){return t.name===i}));var a=Pt(t,(function(t){return t.name===i}));return t.indexOf(a)}(t,0,i))).forEach((function(t){t.function&&console.warn("`modifier.function` is deprecated, use `modifier.fn`!");var i=t.function||t.fn;t.enabled&&G(i)&&(e.offsets.popper=pt(e.offsets.popper),e.offsets.reference=pt(e.offsets.reference),e=i(e,t))})),e}function Et(){if(!this.state.isDestroyed){var t={instance:this,styles:{},arrowStyles:{},attributes:{},flipped:!1,offsets:{}};t.offsets.reference=Ct(this.state,this.popper,this.reference,this.options.positionFixed),t.placement=wt(this.options.placement,t.offsets.reference,this.popper,this.reference,this.options.modifiers.flip.boundariesElement,this.options.modifiers.flip.padding),t.originalPlacement=t.placement,t.positionFixed=this.options.positionFixed,t.offsets.popper=At(this.popper,t.offsets.reference,t.placement),t.offsets.popper.position=this.options.positionFixed?"fixed":"absolute",t=Tt(this.modifiers,t),this.state.isCreated?this.options.onUpdate(t):(this.state.isCreated=!0,this.options.onCreate(t))}}function Ot(t,e){return t.some((function(t){var i=t.name;return t.enabled&&i===e}))}function Mt(t){for(var e=[!1,"ms","Webkit","Moz","O"],i=t.charAt(0).toUpperCase()+t.slice(1),a=0;a1&&void 0!==arguments[1]&&arguments[1],i=Ft.indexOf(t),a=Ft.slice(i+1).concat(Ft.slice(0,i));return e?a.reverse():a}var Bt={shift:{order:100,enabled:!0,fn:function(t){var e=t.placement,i=e.split("-")[0],a=e.split("-")[1];if(a){var n=t.offsets,s=n.reference,r=n.popper,o=-1!==["bottom","top"].indexOf(i),l=o?"left":"top",c=o?"width":"height",d={start:ht({},l,s[l]),end:ht({},l,s[l]+s[c]-r[c])};t.offsets.popper=ut({},r,d[a])}return t}},offset:{order:200,enabled:!0,fn:function(t,e){var i,a=e.offset,n=t.placement,s=t.offsets,r=s.popper,o=s.reference,l=n.split("-")[0];return i=jt(+a)?[+a,0]:function(t,e,i,a){var n=[0,0],s=-1!==["right","left"].indexOf(a),r=t.split(/(\+|\-)/).map((function(t){return t.trim()})),o=r.indexOf(Pt(r,(function(t){return-1!==t.search(/,|\s/)})));r[o]&&-1===r[o].indexOf(",")&&console.warn("Offsets separated by white space(s) are deprecated, use a comma (,) instead.");var l=/\s*,\s*|\s+/,c=-1!==o?[r.slice(0,o).concat([r[o].split(l)[0]]),[r[o].split(l)[1]].concat(r.slice(o+1))]:[r];return c=c.map((function(t,a){var n=(1===a?!s:s)?"height":"width",r=!1;return t.reduce((function(t,e){return""===t[t.length-1]&&-1!==["+","-"].indexOf(e)?(t[t.length-1]=e,r=!0,t):r?(t[t.length-1]+=e,r=!1,t):t.concat(e)}),[]).map((function(t){return function(t,e,i,a){var n=t.match(/((?:\-|\+)?\d*\.?\d*)(.*)/),s=+n[1],r=n[2];return s?0===r.indexOf("%")?pt("%p"===r?i:a)[e]/100*s:"vh"===r||"vw"===r?("vh"===r?Math.max(document.documentElement.clientHeight,window.innerHeight||0):Math.max(document.documentElement.clientWidth,window.innerWidth||0))/100*s:s:t}(t,n,e,i)}))})),c.forEach((function(t,e){t.forEach((function(i,a){jt(i)&&(n[e]+=i*("-"===t[a-1]?-1:1))}))})),n}(a,r,o,l),"left"===l?(r.top+=i[0],r.left-=i[1]):"right"===l?(r.top+=i[0],r.left+=i[1]):"top"===l?(r.left+=i[0],r.top-=i[1]):"bottom"===l&&(r.left+=i[0],r.top+=i[1]),t.popper=r,t},offset:0},preventOverflow:{order:300,enabled:!0,fn:function(t,e){var i=e.boundariesElement||et(t.instance.popper);t.instance.reference===i&&(i=et(i));var a=Mt("transform"),n=t.instance.popper.style,s=n.top,r=n.left,o=n[a];n.top="",n.left="",n[a]="";var l=bt(t.instance.popper,t.instance.reference,e.padding,i,t.positionFixed);n.top=s,n.left=r,n[a]=o,e.boundaries=l;var c=e.priority,d=t.offsets.popper,h={primary:function(t){var i=d[t];return d[t]l[t]&&!e.escapeWithReference&&(a=Math.min(d[i],l[t]-("right"===t?d.width:d.height))),ht({},i,a)}};return c.forEach((function(t){var e=-1!==["left","top"].indexOf(t)?"primary":"secondary";d=ut({},d,h[e](t))})),t.offsets.popper=d,t},priority:["left","right","top","bottom"],padding:5,boundariesElement:"scrollParent"},keepTogether:{order:400,enabled:!0,fn:function(t){var e=t.offsets,i=e.popper,a=e.reference,n=t.placement.split("-")[0],s=Math.floor,r=-1!==["top","bottom"].indexOf(n),o=r?"right":"bottom",l=r?"left":"top",c=r?"width":"height";return i[o]s(a[o])&&(t.offsets.popper[l]=s(a[o])),t}},arrow:{order:500,enabled:!0,fn:function(t,e){var i;if(!Rt(t.instance.modifiers,"arrow","keepTogether"))return t;var a=e.element;if("string"==typeof a){if(!(a=t.instance.popper.querySelector(a)))return t}else if(!t.instance.popper.contains(a))return console.warn("WARNING: `arrow.element` must be child of its popper element!"),t;var n=t.placement.split("-")[0],s=t.offsets,r=s.popper,o=s.reference,l=-1!==["left","right"].indexOf(n),c=l?"height":"width",d=l?"Top":"Left",h=d.toLowerCase(),u=l?"left":"top",p=l?"bottom":"right",f=St(a)[c];o[p]-fr[p]&&(t.offsets.popper[h]+=o[h]+f-r[p]),t.offsets.popper=pt(t.offsets.popper);var g=o[h]+o[c]/2-f/2,v=U(t.instance.popper),m=parseFloat(v["margin"+d]),x=parseFloat(v["border"+d+"Width"]),b=g-t.offsets.popper[h]-m-x;return b=Math.max(Math.min(r[c]-f,b),0),t.arrowElement=a,t.offsets.arrow=(ht(i={},h,Math.round(b)),ht(i,u,""),i),t},element:"[x-arrow]"},flip:{order:600,enabled:!0,fn:function(t,e){if(Ot(t.instance.modifiers,"inner"))return t;if(t.flipped&&t.placement===t.originalPlacement)return t;var i=bt(t.instance.popper,t.instance.reference,e.padding,e.boundariesElement,t.positionFixed),a=t.placement.split("-")[0],n=kt(a),s=t.placement.split("-")[1]||"",r=[];switch(e.behavior){case"flip":r=[a,n];break;case"clockwise":r=Yt(a);break;case"counterclockwise":r=Yt(a,!0);break;default:r=e.behavior}return r.forEach((function(o,l){if(a!==o||r.length===l+1)return t;a=t.placement.split("-")[0],n=kt(a);var c=t.offsets.popper,d=t.offsets.reference,h=Math.floor,u="left"===a&&h(c.right)>h(d.left)||"right"===a&&h(c.left)h(d.top)||"bottom"===a&&h(c.top)h(i.right),g=h(c.top)h(i.bottom),m="left"===a&&p||"right"===a&&f||"top"===a&&g||"bottom"===a&&v,x=-1!==["top","bottom"].indexOf(a),b=!!e.flipVariations&&(x&&"start"===s&&p||x&&"end"===s&&f||!x&&"start"===s&&g||!x&&"end"===s&&v),y=!!e.flipVariationsByContent&&(x&&"start"===s&&f||x&&"end"===s&&p||!x&&"start"===s&&v||!x&&"end"===s&&g),w=b||y;(u||m||w)&&(t.flipped=!0,(u||m)&&(a=r[l+1]),w&&(s=function(t){return"end"===t?"start":"start"===t?"end":t}(s)),t.placement=a+(s?"-"+s:""),t.offsets.popper=ut({},t.offsets.popper,At(t.instance.popper,t.offsets.reference,t.placement)),t=Tt(t.instance.modifiers,t,"flip"))})),t},behavior:"flip",padding:5,boundariesElement:"viewport",flipVariations:!1,flipVariationsByContent:!1},inner:{order:700,enabled:!1,fn:function(t){var e=t.placement,i=e.split("-")[0],a=t.offsets,n=a.popper,s=a.reference,r=-1!==["left","right"].indexOf(i),o=-1===["top","left"].indexOf(i);return n[r?"left":"top"]=s[i]-(o?n[r?"width":"height"]:0),t.placement=kt(e),t.offsets.popper=pt(n),t}},hide:{order:800,enabled:!0,fn:function(t){if(!Rt(t.instance.modifiers,"hide","preventOverflow"))return t;var e=t.offsets.reference,i=Pt(t.instance.modifiers,(function(t){return"preventOverflow"===t.name})).boundaries;if(e.bottomi.right||e.top>i.bottom||e.right2&&void 0!==arguments[2]?arguments[2]:{};ct(this,t),this.scheduleUpdate=function(){return requestAnimationFrame(a.update)},this.update=V(this.update.bind(this)),this.options=ut({},t.Defaults,n),this.state={isDestroyed:!1,isCreated:!1,scrollParents:[]},this.reference=e&&e.jquery?e[0]:e,this.popper=i&&i.jquery?i[0]:i,this.options.modifiers={},Object.keys(ut({},t.Defaults.modifiers,n.modifiers)).forEach((function(e){a.options.modifiers[e]=ut({},t.Defaults.modifiers[e]||{},n.modifiers?n.modifiers[e]:{})})),this.modifiers=Object.keys(this.options.modifiers).map((function(t){return ut({name:t},a.options.modifiers[t])})).sort((function(t,e){return t.order-e.order})),this.modifiers.forEach((function(t){t.enabled&&G(t.onLoad)&&t.onLoad(a.reference,a.popper,a.options,t,a.state)})),this.update();var s=this.options.eventsEnabled;s&&this.enableEventListeners(),this.state.eventsEnabled=s}return dt(t,[{key:"update",value:function(){return Et.call(this)}},{key:"destroy",value:function(){return Lt.call(this)}},{key:"enableEventListeners",value:function(){return zt.call(this)}},{key:"disableEventListeners",value:function(){return Nt.call(this)}}]),t}();Vt.Utils=("undefined"!=typeof window?window:i.g).PopperUtils,Vt.placements=$t,Vt.Defaults=Wt;var Gt,Ut=Vt,qt=i(2387),Zt=i.n(qt);function Qt(){Qt.init||(Qt.init=!0,Gt=-1!==function(){var t=window.navigator.userAgent,e=t.indexOf("MSIE ");if(e>0)return parseInt(t.substring(e+5,t.indexOf(".",e)),10);if(t.indexOf("Trident/")>0){var i=t.indexOf("rv:");return parseInt(t.substring(i+3,t.indexOf(".",i)),10)}var a=t.indexOf("Edge/");return a>0?parseInt(t.substring(a+5,t.indexOf(".",a)),10):-1}())}function Kt(t,e,i,a,n,s,r,o,l,c){"boolean"!=typeof r&&(l=o,o=r,r=!1);var d,h="function"==typeof i?i.options:i;if(t&&t.render&&(h.render=t.render,h.staticRenderFns=t.staticRenderFns,h._compiled=!0,n&&(h.functional=!0)),a&&(h._scopeId=a),s?(d=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),e&&e.call(this,l(t)),t&&t._registeredComponents&&t._registeredComponents.add(s)},h._ssrRegister=d):e&&(d=r?function(t){e.call(this,c(t,this.$root.$options.shadowRoot))}:function(t){e.call(this,o(t))}),d)if(h.functional){var u=h.render;h.render=function(t,e){return d.call(e),u(t,e)}}else{var p=h.beforeCreate;h.beforeCreate=p?[].concat(p,d):[d]}return i}var Jt={name:"ResizeObserver",props:{emitOnMount:{type:Boolean,default:!1},ignoreWidth:{type:Boolean,default:!1},ignoreHeight:{type:Boolean,default:!1}},mounted:function(){var t=this;Qt(),this.$nextTick((function(){t._w=t.$el.offsetWidth,t._h=t.$el.offsetHeight,t.emitOnMount&&t.emitSize()}));var e=document.createElement("object");this._resizeObject=e,e.setAttribute("aria-hidden","true"),e.setAttribute("tabindex",-1),e.onload=this.addResizeHandlers,e.type="text/html",Gt&&this.$el.appendChild(e),e.data="about:blank",Gt||this.$el.appendChild(e)},beforeDestroy:function(){this.removeResizeHandlers()},methods:{compareAndNotify:function(){(!this.ignoreWidth&&this._w!==this.$el.offsetWidth||!this.ignoreHeight&&this._h!==this.$el.offsetHeight)&&(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.emitSize())},emitSize:function(){this.$emit("notify",{width:this._w,height:this._h})},addResizeHandlers:function(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers:function(){this._resizeObject&&this._resizeObject.onload&&(!Gt&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.compareAndNotify),this.$el.removeChild(this._resizeObject),this._resizeObject.onload=null,this._resizeObject=null)}}},te=function(){var t=this.$createElement;return(this._self._c||t)("div",{staticClass:"resize-observer",attrs:{tabindex:"-1"}})};te._withStripped=!0;var ee=Kt({render:te,staticRenderFns:[]},void 0,Jt,"data-v-8859cc6c",!1,void 0,!1,void 0,void 0,void 0),ie={version:"1.0.1",install:function(t){t.component("resize-observer",ee),t.component("ResizeObserver",ee)}},ae=null;"undefined"!=typeof window?ae=window.Vue:void 0!==i.g&&(ae=i.g.Vue),ae&&ae.use(ie);var ne=i(3079),se=i.n(ne),re=function(){};function oe(t){return"string"==typeof t&&(t=t.split(" ")),t}function le(t,e){var i,a=oe(e);i=t.className instanceof re?oe(t.className.baseVal):oe(t.className),a.forEach((function(t){-1===i.indexOf(t)&&i.push(t)})),t instanceof SVGElement?t.setAttribute("class",i.join(" ")):t.className=i.join(" ")}function ce(t,e){var i,a=oe(e);i=t.className instanceof re?oe(t.className.baseVal):oe(t.className),a.forEach((function(t){var e=i.indexOf(t);-1!==e&&i.splice(e,1)})),t instanceof SVGElement?t.setAttribute("class",i.join(" ")):t.className=i.join(" ")}"undefined"!=typeof window&&(re=window.SVGAnimatedString);var de=!1;if("undefined"!=typeof window){de=!1;try{var he=Object.defineProperty({},"passive",{get:function(){de=!0}});window.addEventListener("test",null,he)}catch(t){}}function ue(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function pe(t){for(var e=1;e
',trigger:"hover focus",offset:0},ge=[],ve=function(){function t(e,i){var a=this;!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),F(this,"_events",[]),F(this,"_setTooltipNodeEvent",(function(t,e,i,n){var s=t.relatedreference||t.toElement||t.relatedTarget;return!!a._tooltipNode.contains(s)&&(a._tooltipNode.addEventListener(t.type,(function i(s){var r=s.relatedreference||s.toElement||s.relatedTarget;a._tooltipNode.removeEventListener(t.type,i),e.contains(r)||a._scheduleHide(e,n.delay,n,s)})),!0)})),i=pe(pe({},fe),i),e.jquery&&(e=e[0]),this.show=this.show.bind(this),this.hide=this.hide.bind(this),this.reference=e,this.options=i,this._isOpen=!1,this._init()}var e,i;return e=t,(i=[{key:"show",value:function(){this._show(this.reference,this.options)}},{key:"hide",value:function(){this._hide()}},{key:"dispose",value:function(){this._dispose()}},{key:"toggle",value:function(){return this._isOpen?this.hide():this.show()}},{key:"setClasses",value:function(t){this._classes=t}},{key:"setContent",value:function(t){this.options.title=t,this._tooltipNode&&this._setContent(t,this.options)}},{key:"setOptions",value:function(t){var e=!1,i=t&&t.classes||Te.options.defaultClass;Zt()(this._classes,i)||(this.setClasses(i),e=!0),t=Ce(t);var a=!1,n=!1;for(var s in this.options.offset===t.offset&&this.options.placement===t.placement||(a=!0),(this.options.template!==t.template||this.options.trigger!==t.trigger||this.options.container!==t.container||e)&&(n=!0),t)this.options[s]=t[s];if(this._tooltipNode)if(n){var r=this._isOpen;this.dispose(),this._init(),r&&this.show()}else a&&this.popperInstance.update()}},{key:"_init",value:function(){var t="string"==typeof this.options.trigger?this.options.trigger.split(" "):[];this._isDisposed=!1,this._enableDocumentTouch=-1===t.indexOf("manual"),t=t.filter((function(t){return-1!==["click","hover","focus"].indexOf(t)})),this._setEventListeners(this.reference,t,this.options),this.$_originalTitle=this.reference.getAttribute("title"),this.reference.removeAttribute("title"),this.reference.setAttribute("data-original-title",this.$_originalTitle)}},{key:"_create",value:function(t,e){var i=this,a=window.document.createElement("div");a.innerHTML=e.trim();var n=a.childNodes[0];return n.id=this.options.ariaId||"tooltip_".concat(Math.random().toString(36).substr(2,10)),n.setAttribute("aria-hidden","true"),this.options.autoHide&&-1!==this.options.trigger.indexOf("hover")&&(n.addEventListener("mouseenter",(function(e){return i._scheduleHide(t,i.options.delay,i.options,e)})),n.addEventListener("click",(function(e){return i._scheduleHide(t,i.options.delay,i.options,e)}))),n}},{key:"_setContent",value:function(t,e){var i=this;this.asyncContent=!1,this._applyContent(t,e).then((function(){i.popperInstance&&i.popperInstance.update()}))}},{key:"_applyContent",value:function(t,e){var i=this;return new Promise((function(a,n){var s=e.html,r=i._tooltipNode;if(r){var o=r.querySelector(i.options.innerSelector);if(1===t.nodeType){if(s){for(;o.firstChild;)o.removeChild(o.firstChild);o.appendChild(t)}}else{if("function"==typeof t){var l=t();return void(l&&"function"==typeof l.then?(i.asyncContent=!0,e.loadingClass&&le(r,e.loadingClass),e.loadingContent&&i._applyContent(e.loadingContent,e),l.then((function(t){return e.loadingClass&&ce(r,e.loadingClass),i._applyContent(t,e)})).then(a).catch(n)):i._applyContent(l,e).then(a).catch(n))}s?o.innerHTML=t:o.innerText=t}a()}}))}},{key:"_show",value:function(t,e){if(!e||"string"!=typeof e.container||document.querySelector(e.container)){clearTimeout(this._disposeTimer),delete(e=Object.assign({},e)).offset;var i=!0;this._tooltipNode&&(le(this._tooltipNode,this._classes),i=!1);var a=this._ensureShown(t,e);return i&&this._tooltipNode&&le(this._tooltipNode,this._classes),le(t,["v-tooltip-open"]),a}}},{key:"_ensureShown",value:function(t,e){var i=this;if(this._isOpen)return this;if(this._isOpen=!0,ge.push(this),this._tooltipNode)return this._tooltipNode.style.display="",this._tooltipNode.setAttribute("aria-hidden","false"),this.popperInstance.enableEventListeners(),this.popperInstance.update(),this.asyncContent&&this._setContent(e.title,e),this;var a=t.getAttribute("title")||e.title;if(!a)return this;var n=this._create(t,e.template);this._tooltipNode=n,t.setAttribute("aria-describedby",n.id);var s=this._findContainer(e.container,t);this._append(n,s);var r=pe(pe({},e.popperOptions),{},{placement:e.placement});return r.modifiers=pe(pe({},r.modifiers),{},{arrow:{element:this.options.arrowSelector}}),e.boundariesElement&&(r.modifiers.preventOverflow={boundariesElement:e.boundariesElement}),this.popperInstance=new Ut(t,n,r),this._setContent(a,e),requestAnimationFrame((function(){!i._isDisposed&&i.popperInstance?(i.popperInstance.update(),requestAnimationFrame((function(){i._isDisposed?i.dispose():i._isOpen&&n.setAttribute("aria-hidden","false")}))):i.dispose()})),this}},{key:"_noLongerOpen",value:function(){var t=ge.indexOf(this);-1!==t&&ge.splice(t,1)}},{key:"_hide",value:function(){var t=this;if(!this._isOpen)return this;this._isOpen=!1,this._noLongerOpen(),this._tooltipNode.style.display="none",this._tooltipNode.setAttribute("aria-hidden","true"),this.popperInstance&&this.popperInstance.disableEventListeners(),clearTimeout(this._disposeTimer);var e=Te.options.disposeTimeout;return null!==e&&(this._disposeTimer=setTimeout((function(){t._tooltipNode&&(t._tooltipNode.removeEventListener("mouseenter",t.hide),t._tooltipNode.removeEventListener("click",t.hide),t._removeTooltipNode())}),e)),ce(this.reference,["v-tooltip-open"]),this}},{key:"_removeTooltipNode",value:function(){if(this._tooltipNode){var t=this._tooltipNode.parentNode;t&&(t.removeChild(this._tooltipNode),this.reference.removeAttribute("aria-describedby")),this._tooltipNode=null}}},{key:"_dispose",value:function(){var t=this;return this._isDisposed=!0,this.reference.removeAttribute("data-original-title"),this.$_originalTitle&&this.reference.setAttribute("title",this.$_originalTitle),this._events.forEach((function(e){var i=e.func,a=e.event;t.reference.removeEventListener(a,i)})),this._events=[],this._tooltipNode?(this._hide(),this._tooltipNode.removeEventListener("mouseenter",this.hide),this._tooltipNode.removeEventListener("click",this.hide),this.popperInstance.destroy(),this.popperInstance.options.removeOnDestroy||this._removeTooltipNode()):this._noLongerOpen(),this}},{key:"_findContainer",value:function(t,e){return"string"==typeof t?t=window.document.querySelector(t):!1===t&&(t=e.parentNode),t}},{key:"_append",value:function(t,e){e.appendChild(t)}},{key:"_setEventListeners",value:function(t,e,i){var a=this,n=[],s=[];e.forEach((function(t){switch(t){case"hover":n.push("mouseenter"),s.push("mouseleave"),a.options.hideOnTargetClick&&s.push("click");break;case"focus":n.push("focus"),s.push("blur"),a.options.hideOnTargetClick&&s.push("click");break;case"click":n.push("click"),s.push("click")}})),n.forEach((function(e){var n=function(e){!0!==a._isOpen&&(e.usedByTooltip=!0,a._scheduleShow(t,i.delay,i,e))};a._events.push({event:e,func:n}),t.addEventListener(e,n)})),s.forEach((function(e){var n=function(e){!0!==e.usedByTooltip&&a._scheduleHide(t,i.delay,i,e)};a._events.push({event:e,func:n}),t.addEventListener(e,n)}))}},{key:"_onDocumentTouch",value:function(t){this._enableDocumentTouch&&this._scheduleHide(this.reference,this.options.delay,this.options,t)}},{key:"_scheduleShow",value:function(t,e,i){var a=this,n=e&&e.show||e||0;clearTimeout(this._scheduleTimer),this._scheduleTimer=window.setTimeout((function(){return a._show(t,i)}),n)}},{key:"_scheduleHide",value:function(t,e,i,a){var n=this,s=e&&e.hide||e||0;clearTimeout(this._scheduleTimer),this._scheduleTimer=window.setTimeout((function(){if(!1!==n._isOpen&&n._tooltipNode.ownerDocument.body.contains(n._tooltipNode)){if("mouseleave"===a.type&&n._setTooltipNodeEvent(a,t,e,i))return;n._hide(t,i)}}),s)}}])&&Y(e.prototype,i),Object.defineProperty(e,"prototype",{writable:!1}),t}();function me(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function xe(t){for(var e=1;e
',defaultArrowSelector:".tooltip-arrow, .tooltip__arrow",defaultInnerSelector:".tooltip-inner, .tooltip__inner",defaultDelay:0,defaultTrigger:"hover focus",defaultOffset:0,defaultContainer:"body",defaultBoundariesElement:void 0,defaultPopperOptions:{},defaultLoadingClass:"tooltip-loading",defaultLoadingContent:"...",autoHide:!0,defaultHideOnTargetClick:!0,disposeTimeout:5e3,popover:{defaultPlacement:"bottom",defaultClass:"vue-popover-theme",defaultBaseClass:"tooltip popover",defaultWrapperClass:"wrapper",defaultInnerClass:"tooltip-inner popover-inner",defaultArrowClass:"tooltip-arrow popover-arrow",defaultOpenClass:"open",defaultDelay:0,defaultTrigger:"click",defaultOffset:0,defaultContainer:"body",defaultBoundariesElement:void 0,defaultPopperOptions:{},defaultAutoHide:!0,defaultHandleResize:!0}};function Ce(t){var e={placement:void 0!==t.placement?t.placement:Te.options.defaultPlacement,delay:void 0!==t.delay?t.delay:Te.options.defaultDelay,html:void 0!==t.html?t.html:Te.options.defaultHtml,template:void 0!==t.template?t.template:Te.options.defaultTemplate,arrowSelector:void 0!==t.arrowSelector?t.arrowSelector:Te.options.defaultArrowSelector,innerSelector:void 0!==t.innerSelector?t.innerSelector:Te.options.defaultInnerSelector,trigger:void 0!==t.trigger?t.trigger:Te.options.defaultTrigger,offset:void 0!==t.offset?t.offset:Te.options.defaultOffset,container:void 0!==t.container?t.container:Te.options.defaultContainer,boundariesElement:void 0!==t.boundariesElement?t.boundariesElement:Te.options.defaultBoundariesElement,autoHide:void 0!==t.autoHide?t.autoHide:Te.options.autoHide,hideOnTargetClick:void 0!==t.hideOnTargetClick?t.hideOnTargetClick:Te.options.defaultHideOnTargetClick,loadingClass:void 0!==t.loadingClass?t.loadingClass:Te.options.defaultLoadingClass,loadingContent:void 0!==t.loadingContent?t.loadingContent:Te.options.defaultLoadingContent,popperOptions:xe({},void 0!==t.popperOptions?t.popperOptions:Te.options.defaultPopperOptions)};if(e.offset){var i=R(e.offset),a=e.offset;("number"===i||"string"===i&&-1===a.indexOf(","))&&(a="0, ".concat(a)),e.popperOptions.modifiers||(e.popperOptions.modifiers={}),e.popperOptions.modifiers.offset={offset:a}}return e.trigger&&-1!==e.trigger.indexOf("click")&&(e.hideOnTargetClick=!1),e}function Se(t,e){for(var i=t.placement,a=0;a2&&void 0!==arguments[2]?arguments[2]:{},a=ke(e),n=void 0!==e.classes?e.classes:Te.options.defaultClass,s=xe({title:a},Ce(xe(xe({},"object"===R(e)?e:{}),{},{placement:Se(e,i)}))),r=t._tooltip=new ve(t,s);r.setClasses(n),r._vueEl=t;var o=void 0!==e.targetClasses?e.targetClasses:Te.options.defaultTargetClass;return t._tooltipTargetClasses=o,le(t,o),r}(t,i,n),void 0!==i.show&&i.show!==t._tooltipOldShow&&(t._tooltipOldShow=i.show,i.show?a.show():a.hide())):Ae(t)}var Te={options:we,bind:Pe,update:Pe,unbind:function(t){Ae(t)}};function Ee(t){t.addEventListener("click",Me),t.addEventListener("touchstart",Le,!!de&&{passive:!0})}function Oe(t){t.removeEventListener("click",Me),t.removeEventListener("touchstart",Le),t.removeEventListener("touchend",Ie),t.removeEventListener("touchcancel",_e)}function Me(t){var e=t.currentTarget;t.closePopover=!e.$_vclosepopover_touch,t.closeAllPopover=e.$_closePopoverModifiers&&!!e.$_closePopoverModifiers.all}function Le(t){if(1===t.changedTouches.length){var e=t.currentTarget;e.$_vclosepopover_touch=!0;var i=t.changedTouches[0];e.$_vclosepopover_touchPoint=i,e.addEventListener("touchend",Ie),e.addEventListener("touchcancel",_e)}}function Ie(t){var e=t.currentTarget;if(e.$_vclosepopover_touch=!1,1===t.changedTouches.length){var i=t.changedTouches[0],a=e.$_vclosepopover_touchPoint;t.closePopover=Math.abs(i.screenY-a.screenY)<20&&Math.abs(i.screenX-a.screenX)<20,t.closeAllPopover=e.$_closePopoverModifiers&&!!e.$_closePopoverModifiers.all}}function _e(t){t.currentTarget.$_vclosepopover_touch=!1}var De={bind:function(t,e){var i=e.value,a=e.modifiers;t.$_closePopoverModifiers=a,(void 0===i||i)&&Ee(t)},update:function(t,e){var i=e.value,a=e.oldValue,n=e.modifiers;t.$_closePopoverModifiers=n,i!==a&&(void 0===i||i?Ee(t):Oe(t))},unbind:function(t){Oe(t)}};function ze(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function Ne(t){for(var e=1;e0&&void 0!==arguments[0]?arguments[0]:{},i=e.event;e.skipDelay;var a=e.force,n=void 0!==a&&a;!n&&this.disabled||(this.$_scheduleShow(i),this.$emit("show")),this.$emit("update:open",!0),this.$_beingShowed=!0,requestAnimationFrame((function(){t.$_beingShowed=!1}))},hide:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.event;t.skipDelay,this.$_scheduleHide(e),this.$emit("hide"),this.$emit("update:open",!1)},dispose:function(){if(this.$_isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.popperInstance&&(this.popperInstance.destroy(),!this.popperInstance.options.removeOnDestroy)){var t=this.$refs.popover;t.parentNode&&t.parentNode.removeChild(t)}this.$_mounted=!1,this.popperInstance=null,this.isOpen=!1,this.$emit("dispose")},$_init:function(){-1===this.trigger.indexOf("manual")&&this.$_addEventListeners()},$_show:function(){var t=this,e=this.$refs.trigger,i=this.$refs.popover;if(clearTimeout(this.$_disposeTimer),!this.isOpen){if(this.popperInstance&&(this.isOpen=!0,this.popperInstance.enableEventListeners(),this.popperInstance.scheduleUpdate()),!this.$_mounted){var a=this.$_findContainer(this.container,e);if(!a)return void console.warn("No container for popover",this);a.appendChild(i),this.$_mounted=!0,this.isOpen=!1,this.popperInstance&&requestAnimationFrame((function(){t.hidden||(t.isOpen=!0)}))}if(!this.popperInstance){var n=Ne(Ne({},this.popperOptions),{},{placement:this.placement});if(n.modifiers=Ne(Ne({},n.modifiers),{},{arrow:Ne(Ne({},n.modifiers&&n.modifiers.arrow),{},{element:this.$refs.arrow})}),this.offset){var s=this.$_getOffset();n.modifiers.offset=Ne(Ne({},n.modifiers&&n.modifiers.offset),{},{offset:s})}this.boundariesElement&&(n.modifiers.preventOverflow=Ne(Ne({},n.modifiers&&n.modifiers.preventOverflow),{},{boundariesElement:this.boundariesElement})),this.popperInstance=new Ut(e,i,n),requestAnimationFrame((function(){if(t.hidden)return t.hidden=!1,void t.$_hide();!t.$_isDisposed&&t.popperInstance?(t.popperInstance.scheduleUpdate(),requestAnimationFrame((function(){if(t.hidden)return t.hidden=!1,void t.$_hide();t.$_isDisposed?t.dispose():t.isOpen=!0}))):t.dispose()}))}var r=this.openGroup;if(r)for(var o,l=0;l1&&void 0!==arguments[1]&&arguments[1];if(clearTimeout(this.$_scheduleTimer),t)this.$_show();else{var e=parseInt(this.delay&&this.delay.show||this.delay||0);this.$_scheduleTimer=setTimeout(this.$_show.bind(this),e)}},$_scheduleHide:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,i=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(clearTimeout(this.$_scheduleTimer),i)this.$_hide();else{var a=parseInt(this.delay&&this.delay.hide||this.delay||0);this.$_scheduleTimer=setTimeout((function(){if(t.isOpen){if(e&&"mouseleave"===e.type&&t.$_setTooltipNodeEvent(e))return;t.$_hide()}}),a)}},$_setTooltipNodeEvent:function(t){var e=this,i=this.$refs.trigger,a=this.$refs.popover,n=t.relatedreference||t.toElement||t.relatedTarget;return!!a.contains(n)&&(a.addEventListener(t.type,(function n(s){var r=s.relatedreference||s.toElement||s.relatedTarget;a.removeEventListener(t.type,n),i.contains(r)||e.hide({event:s})})),!0)},$_removeEventListeners:function(){var t=this.$refs.trigger;this.$_events.forEach((function(e){var i=e.func,a=e.event;t.removeEventListener(a,i)})),this.$_events=[]},$_updatePopper:function(t){this.popperInstance&&(t(),this.isOpen&&this.popperInstance.scheduleUpdate())},$_restartPopper:function(){if(this.popperInstance){var t=this.isOpen;this.dispose(),this.$_isDisposed=!1,this.$_init(),t&&this.show({skipDelay:!0,force:!0})}},$_handleGlobalClose:function(t){var e=this,i=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.$_beingShowed||(this.hide({event:t}),t.closePopover?this.$emit("close-directive"):this.$emit("auto-hide"),i&&(this.$_preventOpen=!0,setTimeout((function(){e.$_preventOpen=!1}),300)))},$_handleResize:function(){this.isOpen&&this.popperInstance&&(this.popperInstance.scheduleUpdate(),this.$emit("resize"))}}};function Fe(t){for(var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],i=function(i){var a=Xe[i];if(a.$refs.popover){var n=a.$refs.popover.contains(t.target);requestAnimationFrame((function(){(t.closeAllPopover||t.closePopover&&n||a.autoHide&&!n)&&a.$_handleGlobalClose(t,e)}))}},a=0;a1&&void 0!==arguments[1]?arguments[1]:{};if(!t.installed){t.installed=!0;var a={};se()(a,we,i),Ge.options=a,Te.options=a,e.directive("tooltip",Te),e.directive("close-popover",De),e.component("VPopover",Ve)}},get enabled(){return be.enabled},set enabled(t){be.enabled=t}},Ue=null;"undefined"!=typeof window?Ue=window.Vue:void 0!==i.g&&(Ue=i.g.Vue),Ue&&Ue.use(Ge);var qe=Ge;e().use(qe),qe.options.autoHide=!1;var Ze=(i(5376),u({},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"info-hud"},[e("v-popover",{attrs:{placement:"right"}},[e("c-icon",{attrs:{icon:"info-circle"}}),t._v(" "),e("template",{slot:"popover"},[t._t("default")],2)],2)],1)}),[],!1,null,null,null).exports);function Qe(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function Ke(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}i(452);var Je={props:["edition"],components:{LicenseStatus:u({props:["status","description"]},(function(){var t,e,i=this,a=i._self._c;return a("div",{staticClass:"license-status",class:(t={"tw-border tw-border-solid tw-px-4 tw-py-2 tw-rounded-md tw-text-base tw-opacity-100 tw-flex tw-items-center tw-justify-center tw-cursor-pointer":!0},e=i.status,!0,e in t?Object.defineProperty(t,e,{value:true,enumerable:!0,configurable:!0,writable:!0}):t[e]=true,t)},[a("c-icon",{staticClass:"tw-mr-2",attrs:{icon:"check"}}),i._v("\n "+i._s(i.description)+"\n")],1)}),[],!1,null,"1b8bf069",null).exports},computed:function(t){for(var e=1;e=t.edition?[e("license-status",{attrs:{status:"installed",description:t._f("t")("Installed","app")}})]:[e("license-status",{attrs:{status:"installed",description:t._f("t")("Installed as a trial","app")}})]]:t.licensedEdition==t.edition?[e("license-status",{attrs:{status:"licensed",description:t._f("t")("Licensed","app")}})]:t._e()],2)}),[],!1,null,null,null).exports;function ei(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function ii(t){for(var e=1;et.licensedEdition?[t.isCmsEditionInCart(t.editionHandle)?[e("c-btn",{attrs:{block:"",large:"",submit:"",disabled:""}},[t._v(t._s(t._f("t")("Added to cart","app"))+"\n ")])]:[e("c-btn",{attrs:{kind:"primary",block:"",large:""},on:{click:function(e){return t.buyCraft(t.editionHandle)}}},[t._v(t._s(t._f("t")("Buy now","app"))+"\n ")])]]:t._e(),t._v(" "),t.canTestEditions&&t.edition!=t.CraftEdition&&t.edition>t.licensedEdition?[e("c-btn",{attrs:{block:"",large:""},on:{click:function(e){return t.installCraft(t.editionHandle)}}},[t._v(t._s(t._f("t")("Try for free","app"))+"\n ")])]:t._e(),t._v(" "),t.edition==t.licensedEdition&&t.edition!=t.CraftEdition?[e("c-btn",{attrs:{block:"",large:""},on:{click:function(e){return t.installCraft(t.editionHandle)}}},[t._v(t._s(t._f("t")("Reactivate","app"))+"\n ")])]:t._e(),t._v(" "),t.loading?e("c-spinner"):t._e()],2)}),[],!1,null,null,null).exports,EditionBadge:p},computed:ri(ri({},(0,c.mapGetters)({getCmsEditionFeatures:"craft/getCmsEditionFeatures",getCmsEditionIndex:"craft/getCmsEditionIndex"})),{},{editionDescription:function(){switch(this.edition.handle){case"solo":return this.$options.filters.t("For when you’re building a website for yourself or a friend.","app");case"pro":return this.$options.filters.t("For when you’re building something professionally for a client or team.","app");default:return null}},editionIndex:function(){return this.getCmsEditionIndex(this.edition.handle)},features:function(){return this.getCmsEditionFeatures(this.edition.handle)}})};function ci(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function di(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}i(7426);var hi={components:{CmsEdition:u(li,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"cms-editions-edition"},[e("div",{staticClass:"description"},[e("edition-badge",{attrs:{name:t.edition.name,block:!0,big:!0}}),t._v(" "),e("p",{staticClass:"edition-description"},[t._v(t._s(t.editionDescription))]),t._v(" "),e("div",{staticClass:"price"},[t.edition.price&&t.edition.price>0?[t._v("\n "+t._s(t._f("currency")(t.edition.price))+"\n ")]:[t._v("\n "+t._s(t._f("t")("Free","app"))+"\n ")]],2),t._v(" "),t.edition.price&&t.edition.price>0?e("p",{staticClass:"tw--mt-8 tw-py-6 tw-text-gray-700"},[t._v("\n "+t._s(t._f("t")("Price includes 1 year of updates.","app"))),e("br"),t._v("\n "+t._s(t._f("t")("{renewalPrice}/year per site for updates after that.","app",{renewalPrice:t.$options.filters.currency(t.edition.renewalPrice)}))+"\n ")]):t._e(),t._v(" "),e("ul",t._l(t.features,(function(i,a){return e("li",{key:a},[e("c-icon",{attrs:{icon:"check"}}),t._v("\n "+t._s(i.name)+"\n\n "),i.description?e("info-hud",[t._v("\n "+t._s(i.description)+"\n ")]):t._e()],1)})),0)],1),t._v(" "),e("div",{staticClass:"cms-edition-actions"},[e("status-badge",{attrs:{edition:t.editionIndex}}),t._v(" "),e("buy-btn",{attrs:{edition:t.editionIndex,"edition-handle":t.edition.handle}})],1)])}),[],!1,null,null,null).exports},data:function(){return{loading:!1}},computed:function(t){for(var e=1;etest'})}},mounted:function(){this.modal=new Garnish.Modal(this.$refs.garnishmodalcontent,{autoShow:!1,resizable:!0})},methods:{openModal:function(){this.modal.show()}}},(function(){var t=this,e=t._self._c;return e("div",[e("h2",[t._v("Translations")]),t._v(" "),e("p",[t._v(t._s(t._f("currency")(t.somePrice))+" per year for updates")]),t._v(" "),e("p",[t._v("\n "+t._s(t._f("t")("{price} per year for updates","app",{price:t.$root.$options.filters.currency(t.somePrice)}))+"\n ")]),t._v(" "),t._m(0),t._v(" "),e("p",{domProps:{innerHTML:t._s(t.craftTranslation)}}),t._v(" "),e("h2",[t._v("Modal")]),t._v(" "),e("p",[e("a",{on:{click:function(e){return t.openModal()}}},[t._v("Open Garnish Modal")])]),t._v(" "),e("div",{staticClass:"tw-hidden"},[e("div",{ref:"garnishmodalcontent",staticClass:"modal"},[e("div",{staticClass:"body"},[t._v("Hello World")])])])])}),[function(){var t=this,e=t._self._c;return e("p",[t._v("{{ \"Go to {link}\"|t('app', {link: '"),e("a",{attrs:{href:"#"}},[t._v("test")]),t._v("' }) }}")])}],!1,null,null,null).exports,$i=u({components:{StatusMessage:Li},computed:{message:function(){return this.$options.filters.t("Page not found.","app")}}},(function(){return(0,this._self._c)("status-message",{attrs:{error:!0,message:this.message}})}),[],!1,null,null,null).exports,Fi=u({props:{activeTab:{type:String,required:!0}},data:function(){return{tabs:[{name:"Plugins",handle:"plugins"}]}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"search-tabs tw-mt-2"},[e("ul",{staticClass:"tw--mb-px tw-flex tw-space-x-6"},t._l(t.tabs,(function(i,a){return e("li",{key:a},[e("button",{class:{"tw-text-base tw-inline-block tw-px-1 tw-py-3 tw-border-0 tw-border-b-2 tw-border-solid tw-text-gray-500 tw-text-opacity-75 hover:tw-text-opacity-100":!0,"tw-border-transparent hover:tw-border-separator hover:tw-border-gray-200":i.handle!==t.activeTab,"tw-text-blue-600 tw-border-blue-600 tw-text-opacity-100":i.handle===t.activeTab},on:{click:function(e){return t.$emit("tab-click",i.handle)}}},[t._v("\n "+t._s(i.name)+"\n ")])])})),0)])}),[],!1,null,null,null).exports;function Yi(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function Bi(t){for(var e=1;ei&&(i=s)}return{min:e,max:i}}(t.editions),i=e.min,a=e.max;return 0===i&&0===a};function ia(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function aa(t){for(var e=1;e0&&t.licenseValidOrAstray?[e("del",[t._v(t._s(t._f("currency")(t.edition.price)))]),t._v("\n "+t._s(t._f("currency")(t.edition.price-t.licensedEdition.price))+"\n ")]:[t._v("\n "+t._s(t._f("currency")(t.edition.price))+"\n ")]]],2)}),[],!1,null,null,null).exports},mixins:[Ji],props:{edition:{type:Object,required:!0},plugin:{type:Object,required:!0}},data:function(){return{loading:!1,addToCartloading:!1}},computed:ra(ra({},(0,c.mapGetters)({getPluginLicenseInfo:"craft/getPluginLicenseInfo",isInCart:"cart/isInCart"})),{},{pluginLicenseInfo:function(){return this.getPluginLicenseInfo(this.plugin.handle)},isPluginEditionFree:function(){return this.$store.getters["pluginStore/isPluginEditionFree"](this.edition)},isPluginInstalled:function(){return this.$store.getters["craft/isPluginInstalled"](this.plugin.handle)},isEditionMoreExpensiveThanLicensed:function(){if(!this.edition)return!1;if(this.pluginLicenseInfo){var t=this.licensedEdition,e=this.plugin.editions.find((function(e){return e.handle===t}));if(e&&this.edition.price&&parseFloat(this.edition.price)<=parseFloat(e.price))return!1}return!0},licensedEdition:function(){return this.pluginLicenseInfo?this.pluginLicenseInfo.licensedEdition:null},currentEdition:function(){return this.pluginLicenseInfo?this.pluginLicenseInfo.edition:null},allowUpdates:function(){return Craft.allowUpdates&&Craft.allowAdminChanges},csrfTokenName:function(){return Craft.csrfTokenName},csrfTokenValue:function(){return Craft.csrfTokenValue}}),methods:{addEditionToCart:function(t){var e=this;this.addToCartloading=!0;var i={type:"plugin-edition",plugin:this.plugin.handle,edition:t};this.$store.dispatch("cart/addToCart",[i]).then((function(){e.addToCartloading=!1,e.$root.openModal("cart")})).catch((function(){e.addToCartloading=!1}))},onSwitchOrInstallSubmit:function(t){var e=this;if(this.loading=!0,this.isPluginInstalled)return t.preventDefault(),this.$store.dispatch("craft/switchPluginEdition",{pluginHandle:this.plugin.handle,edition:this.edition.handle}).then((function(){e.loading=!1,e.$root.displayNotice("Plugin edition changed.")})),!1},phpVersion:function(){return window.phpVersion},composerPhpVersion:function(){return window.composerPhpVersion}}},ca=(i(5336),u(la,(function(){var t=this,e=t._self._c;return t.plugin?e("div",{staticClass:"plugin-actions tw-relative tw-space-y-2"},[t.isPluginEditionFree?t._e():[t.isInCart(t.plugin,t.edition)?[t.allowUpdates?e("c-btn",{attrs:{kind:"primary",icon:"check",block:"",large:"",disabled:""},on:{click:function(e){return t.$root.openModal("cart")}}},[t._v(t._s(t._f("t")("Already in your cart","app"))+"\n ")]):t._e()]:[t.allowUpdates&&t.isEditionMoreExpensiveThanLicensed?e("c-btn",{attrs:{kind:"primary",loading:t.addToCartloading,disabled:t.addToCartloading||!t.plugin.latestCompatibleVersion||!t.plugin.phpVersionCompatible||t.licenseMismatched||t.plugin.abandoned,block:"",large:""},on:{click:function(e){return t.addEditionToCart(t.edition.handle)}}},[e("plugin-edition-price",{attrs:{edition:t.edition}})],1):t.licensedEdition===t.edition.handle?e("c-btn",{attrs:{kind:"primary",block:"",large:"",disabled:""}},[t._v(t._s(t._f("t")("Licensed","app"))+"\n ")]):t._e()]],t._v(" "),t.isPluginInstalled&&t.currentEdition===t.edition.handle?[t.currentEdition===t.licensedEdition||t.isPluginEditionFree?[e("c-btn",{attrs:{icon:"check",disabled:!0,block:"",large:""}},[t._v("\n "+t._s(t._f("t")("Installed","app"))+"\n ")])]:[e("c-btn",{attrs:{icon:"check",disabled:!0,large:"",block:""}},[t._v("\n "+t._s(t._f("t")("Installed as a trial","app"))+"\n ")])]]:[t.allowUpdates||t.isPluginInstalled?e("form",{attrs:{method:"post"},on:{submit:t.onSwitchOrInstallSubmit}},[e("input",{attrs:{type:"hidden",name:t.csrfTokenName},domProps:{value:t.csrfTokenValue}}),t._v(" "),t.isPluginInstalled?[e("input",{attrs:{type:"hidden",name:"action",value:"plugins/switch-edition"}}),t._v(" "),e("input",{attrs:{type:"hidden",name:"pluginHandle"},domProps:{value:t.plugin.handle}}),t._v(" "),e("input",{attrs:{type:"hidden",name:"edition"},domProps:{value:t.edition.handle}})]:[e("input",{attrs:{type:"hidden",name:"action",value:"pluginstore/install"}}),t._v(" "),e("input",{attrs:{type:"hidden",name:"packageName"},domProps:{value:t.plugin.packageName}}),t._v(" "),e("input",{attrs:{type:"hidden",name:"handle"},domProps:{value:t.plugin.handle}}),t._v(" "),e("input",{attrs:{type:"hidden",name:"edition"},domProps:{value:t.edition.handle}}),t._v(" "),e("input",{attrs:{type:"hidden",name:"version"},domProps:{value:t.plugin.latestCompatibleVersion}})],t._v(" "),t.isPluginEditionFree?[e("c-btn",{attrs:{kind:"primary",type:"submit",loading:t.loading,disabled:!t.plugin.latestCompatibleVersion||!t.plugin.phpVersionCompatible,block:"",large:""}},[t._v(t._s(t._f("t")("Install","app"))+"\n ")])]:[t.isEditionMoreExpensiveThanLicensed&&t.currentEdition===t.edition.handle||t.licensedEdition===t.edition.handle&&!t.currentEdition?[e("c-btn",{attrs:{type:"submit",loading:t.loading,disabled:!t.plugin.latestCompatibleVersion||!t.plugin.phpVersionCompatible,block:"",large:""}},[t._v(t._s(t._f("t")("Install","app"))+"\n ")])]:t.isEditionMoreExpensiveThanLicensed&&t.currentEdition!==t.edition.handle?[e("c-btn",{attrs:{type:"submit",disabled:!(t.pluginLicenseInfo&&t.pluginLicenseInfo.isInstalled&&t.pluginLicenseInfo.isEnabled||!t.pluginLicenseInfo)||!t.plugin.latestCompatibleVersion||!t.plugin.phpVersionCompatible,loading:t.loading,block:"",large:""}},[t._v(t._s(t._f("t")("Try","app"))+"\n ")])]:t.currentEdition&&t.licensedEdition===t.edition.handle&&t.currentEdition!==t.edition.handle?[e("c-btn",{attrs:{type:"submit",loading:t.loading,block:"",large:""}},[t._v(t._s(t._f("t")("Reactivate","app"))+"\n ")])]:t._e()]],2):t._e()],t._v(" "),t.plugin.latestCompatibleVersion&&t.plugin.latestCompatibleVersion!=t.plugin.version?[e("div",{staticClass:"tw-text-gray-600 tw-mt-4"},[e("p",[t._v("\n "+t._s(t._f("t")("Only up to {version} is compatible with your version of Craft.","app",{version:t.plugin.latestCompatibleVersion}))+"\n ")])])]:t.plugin.latestCompatibleVersion?t.plugin.phpVersionCompatible?!t.isPluginEditionFree&&t.plugin.abandoned?[e("div",{staticClass:"tw-text-gray-600 tw-mt-4"},[e("p",[t._v(t._s(t._f("t")("This plugin is no longer maintained.","app")))])])]:t._e():[e("div",{staticClass:"tw-text-gray-600 tw-mt-4"},["php"===t.plugin.incompatiblePhpVersion?e("p",[t._v("\n "+t._s(t._f("t")("This plugin requires PHP {v1}, but your environment is currently running {v2}.","app",{v1:t.plugin.phpConstraint,v2:t.phpVersion()}))+"\n ")]):e("p",[t._v("\n "+t._s(t._f("t")("This plugin requires PHP {v1}, but your composer.json file is currently set to {v2}.","app",{v1:t.plugin.phpConstraint,v2:t.composerPhpVersion()}))+"\n ")])])]:[e("div",{staticClass:"tw-text-gray-600 tw-mt-4"},[e("p",[t._v("\n "+t._s(t._f("t")("This plugin isn’t compatible with your version of Craft.","app"))+"\n ")])])]],2):t._e()}),[],!1,null,null,null).exports);function da(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function ha(t){for(var e=1;e1||!t.isPluginEditionFree(t.edition),"tw-p-8 tw-text-center":"meta"!==t.context,"tw-p-4":"meta"===t.context&&(t.plugin.editions.length>1||!t.isPluginEditionFree(t.edition))}},[e("div",{staticClass:"description tw-flex-1"},[t.plugin.editions.length>1?[e("div",{staticClass:"tw-text-xl tw-font-bold tw-mb-4"},[t._v("\n "+t._s(t.edition.name)+"\n ")])]:t._e(),t._v(" "),"meta"!==t.context?[t.plugin.editions.length>1&&t.edition.features&&t.edition.features.length>0?e("ul",{staticClass:"tw-text-left tw-mt-8 tw-mb-8"},t._l(t.edition.features,(function(i,a){return e("li",{key:a,staticClass:"tw-py-2 tw-border-b tw-border-gray-200 tw-border-solid",class:{"tw-border-t":0===a}},[e("c-icon",{attrs:{icon:"check"}}),t._v("\n "+t._s(i.name)+"\n\n "),i.description?e("info-hud",[t._v("\n "+t._s(i.description)+"\n ")]):t._e()],1)})),0):t._e()]:t._e()],2),t._v(" "),e("plugin-actions",{attrs:{plugin:t.plugin,edition:t.edition}}),t._v(" "),t.isPluginEditionFree(t.edition)?t._e():e("p",{staticClass:"tw-text-gray-700"},[t._v("\n "+t._s(t._f("t")("Price includes 1 year of updates.","app"))+"\n "+t._s(t._f("t")("{renewalPrice}/year per site for updates after that.","app",{renewalPrice:t.$options.filters.currency(t.edition.renewalPrice)}))+"\n ")])],1)}),[],!1,null,null,null).exports,ga=u({components:{PluginEdition:fa},props:{plugin:{type:Object,required:!0}},methods:{isPluginFree:ea}},(function(){var t=this,e=t._self._c;return e("div",{class:{"tw-space-y-2 tw-mb-2":t.isPluginFree(t.plugin),"tw-space-y-4 tw-mb-4":!t.isPluginFree(t.plugin)}},[t._l(t.plugin.editions,(function(i,a){return[e("div",{key:a},[e("plugin-edition",{attrs:{plugin:t.plugin,edition:i,context:"meta"}})],1)]}))],2)}),[],!1,null,null,null).exports,va=u({components:{MetaStat:ta},props:{plugin:{type:Object,required:!0}},data:function(){return{copyTimeout:null,showSuccess:!1,currentInstallModeHandle:"shell"}},computed:{currentInstallMode:function(){var t=this;return this.installModes.find((function(e){return e.handle===t.currentInstallModeHandle}))},installModes:function(){return[{name:"Shell",handle:"shell",copyValue:"composer require ".concat(this.plugin.packageName," -w && php craft plugin/install ").concat(this.plugin.handle)},{name:"DDEV",handle:"ddev",copyValue:"ddev composer require ".concat(this.plugin.packageName," -w && ddev craft plugin/install ").concat(this.plugin.handle)}]}},methods:{select:function(){this.$refs.input.$el.select()},copy:function(){var t=this;this.showSuccess||(this.select(),window.document.execCommand("copy"),this.showSuccess=!0,setTimeout((function(){t.showSuccess=!1}),3e3))},changeInstallMode:function(t){clearTimeout(this.copyTimeout),this.showSuccess=!1,this.currentInstallModeHandle=t}}},(function(){var t=this,e=t._self._c;return e("div",[e("meta-stat",{scopedSlots:t._u([{key:"title",fn:function(){return[t._v("\n "+t._s(t._f("t")("Installation Instructions","app"))+"\n ")]},proxy:!0},{key:"content",fn:function(){return[e("div",[e("ul",{staticClass:"tw-flex tw-space-x-4 tw-text-sm"},t._l(t.installModes,(function(i,a){return e("li",{key:a,staticClass:"tw-py-1"},[e("button",{class:{"tw-text-gray-700":!(i.handle===t.currentInstallModeHandle),"tw-font-medium tw-text-black tw-border-b-2 tw-border-orange-500":i.handle===t.currentInstallModeHandle},on:{click:function(e){return t.changeInstallMode(i.handle)}}},[t._v("\n "+t._s(i.name)+"\n ")])])})),0)]),t._v(" "),e("div",{staticClass:"copy-package"},[e("div",{staticClass:"tw-mt-2 tw-flex"},[e("c-textbox",{ref:"input",staticClass:"tw-w-full tw-flex tw-rounded-r-none tw-font-mono focus:tw-relative focus:tw-z-10 tw-text-sm",attrs:{readonly:"readonly",type:"text",value:t.currentInstallMode.copyValue},on:{focus:t.select}}),t._v(" "),e("c-btn",{staticClass:"tw--ml-px tw-w-14 tw-rounded-l-none",class:{"tw-border-green-500 hover:tw-border-green-500 active:tw-border-green-500":t.showSuccess},attrs:{"disable-shadow":!0},on:{click:t.copy}},[t.showSuccess?[e("c-icon",{staticClass:"tw-text-green-500",attrs:{icon:"check"}})]:[e("c-icon",{staticClass:"tw-text-black",attrs:{icon:"clipboard-copy"}})]],2)],1),t._v(" "),e("div",{staticClass:"tw-mt-4 tw-text-sm tw-text-gray-500"},[e("p",[t._v("\n "+t._s(t._f("t")("To install this plugin with composer, copy the command above to your terminal.","app"))+"\n ")])])])]},proxy:!0}])})],1)}),[],!1,null,null,null).exports,ma=u({},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"tw-p-4 tw-text-center"},[e("div",{staticClass:"tw-inline-block"},[e("div",{staticClass:"tw-flex tw-items-center"},[e("div",{staticClass:"tw-mr-1.5"},[t._t("icon")],2),t._v(" "),e("div",[t._t("count")],2)])]),t._v(" "),e("div",{staticClass:"tw-mt-1 tw-text-xs tw-text-gray-500"},[t._t("title")],2)])}),[],!1,null,null,null),xa=u({components:{ActivityStat:ma.exports,MetaStat:ta},props:{plugin:{type:Object,required:!0}},computed:{githubActivityTitle:function(){return this.$options.filters.t("Activity ({period} days)","app",{period:this.issueStats.period})},issueStats:function(){return this.plugin&&this.plugin.issueStats?this.plugin.issueStats.find((function(t){return 30===t.period})):null}}},(function(){var t=this,e=t._self._c;return t.issueStats?e("meta-stat",{staticClass:"tw-pt-4",attrs:{border:!1},scopedSlots:t._u([{key:"title",fn:function(){return[e("span",{domProps:{innerHTML:t._s(t.githubActivityTitle)}})]},proxy:!0},{key:"content",fn:function(){return[e("div",{staticClass:"tw-mt-4 tw-border tw-border-solid tw-border-gray-200 tw-rounded-lg"},[e("div",{staticClass:"tw-grid tw-grid-cols-2"},[e("activity-stat",{staticClass:"tw-border-r tw-border-solid tw-border-gray-200",scopedSlots:t._u([{key:"icon",fn:function(){return[e("svg",{staticClass:"tw-text-purple-500",attrs:{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",fill:"currentColor"}},[e("path",{attrs:{d:"M11.28 6.78a.75.75 0 00-1.06-1.06L7.25 8.69 5.78 7.22a.75.75 0 00-1.06 1.06l2 2a.75.75 0 001.06 0l3.5-3.5z"}}),t._v(" "),e("path",{attrs:{"fill-rule":"evenodd",d:"M16 8A8 8 0 110 8a8 8 0 0116 0zm-1.5 0a6.5 6.5 0 11-13 0 6.5 6.5 0 0113 0z"}})])]},proxy:!0},{key:"count",fn:function(){return[t._v("\n "+t._s(t.issueStats.closedIssues)+"\n ")]},proxy:!0},{key:"title",fn:function(){return[t._v("\n "+t._s(t._f("t")("Closed Issues","app"))+"\n ")]},proxy:!0}],null,!1,2809335390)}),t._v(" "),e("activity-stat",{scopedSlots:t._u([{key:"icon",fn:function(){return[e("svg",{staticClass:"tw-text-green-500",attrs:{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",fill:"currentColor"}},[e("path",{attrs:{d:"M8 9.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z"}}),t._v(" "),e("path",{attrs:{"fill-rule":"evenodd",d:"M8 0a8 8 0 100 16A8 8 0 008 0zM1.5 8a6.5 6.5 0 1113 0 6.5 6.5 0 01-13 0z"}})])]},proxy:!0},{key:"count",fn:function(){return[t._v("\n "+t._s(t.issueStats.openIssues)+"\n ")]},proxy:!0},{key:"title",fn:function(){return[t._v("\n "+t._s(t._f("t")("New Issues","app"))+"\n ")]},proxy:!0}],null,!1,1949602571)}),t._v(" "),e("activity-stat",{staticClass:"tw-border-t tw-border-r tw-border-solid tw-border-gray-200",scopedSlots:t._u([{key:"icon",fn:function(){return[e("svg",{staticClass:"tw-text-purple-500",attrs:{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",fill:"currentColor"}},[e("path",{attrs:{"fill-rule":"evenodd",d:"M5 3.254V3.25v.005a.75.75 0 110-.005v.004zm.45 1.9a2.25 2.25 0 10-1.95.218v5.256a2.25 2.25 0 101.5 0V7.123A5.735 5.735 0 009.25 9h1.378a2.251 2.251 0 100-1.5H9.25a4.25 4.25 0 01-3.8-2.346zM12.75 9a.75.75 0 100-1.5.75.75 0 000 1.5zm-8.5 4.5a.75.75 0 100-1.5.75.75 0 000 1.5z"}})])]},proxy:!0},{key:"count",fn:function(){return[t._v("\n "+t._s(t.issueStats.mergedPulls)+"\n ")]},proxy:!0},{key:"title",fn:function(){return[t._v("\n "+t._s(t._f("t")("Merged PRs","app"))+"\n ")]},proxy:!0}],null,!1,3605081137)}),t._v(" "),e("activity-stat",{staticClass:"tw-border-t tw-border-solid tw-border-gray-200",scopedSlots:t._u([{key:"icon",fn:function(){return[e("svg",{staticClass:"tw-text-green-500",attrs:{"aria-hidden":"true",height:"16",viewBox:"0 0 16 16",version:"1.1",width:"16","data-view-component":"true",fill:"currentColor"}},[e("path",{attrs:{"fill-rule":"evenodd",d:"M7.177 3.073L9.573.677A.25.25 0 0110 .854v4.792a.25.25 0 01-.427.177L7.177 3.427a.25.25 0 010-.354zM3.75 2.5a.75.75 0 100 1.5.75.75 0 000-1.5zm-2.25.75a2.25 2.25 0 113 2.122v5.256a2.251 2.251 0 11-1.5 0V5.372A2.25 2.25 0 011.5 3.25zM11 2.5h-1V4h1a1 1 0 011 1v5.628a2.251 2.251 0 101.5 0V5A2.5 2.5 0 0011 2.5zm1 10.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0zM3.75 12a.75.75 0 100 1.5.75.75 0 000-1.5z"}})])]},proxy:!0},{key:"count",fn:function(){return[t._v("\n "+t._s(t.issueStats.openPulls)+"\n ")]},proxy:!0},{key:"title",fn:function(){return[t._v("\n "+t._s(t._f("t")("Open PRs","app"))+"\n ")]},proxy:!0}],null,!1,3930490208)})],1)])]},proxy:!0}],null,!1,4069964360)}):t._e()}),[],!1,null,null,null).exports,ba={props:{plugin:{type:Object,required:!0}},data:function(){return{chartMounted:!1}},computed:{chartOptions:function(){return{fill:{opacity:1,type:"solid",colors:["var(--chart-fill-color)"],gradient:null},chart:{animations:{enabled:!1},sparkline:{enabled:!0},zoom:{enabled:!1},type:"area",events:{mounted:function(){this.chartMounted=!0}.bind(this),mouseLeave:function(){this.$emit("updateCurrentDataPoint",null)}.bind(this),mouseMove:function(t,e,i){var a=null,n=null;i.globals.series&&i.globals.series[0]&&i.globals.series[0][i.dataPointIndex]&&(a=i.globals.series[0][i.dataPointIndex]),i.globals.seriesX&&i.globals.seriesX[0]&&i.globals.seriesX[0][i.dataPointIndex]&&(n=new Date(i.globals.seriesX[0][i.dataPointIndex]).toISOString()),this.$emit("updateCurrentDataPoint",{value:a,date:n})}.bind(this)}},dataLabels:{enabled:!1},stroke:{curve:"straight"},grid:{xaxis:{lines:{show:!1}},yaxis:{lines:{show:!1}}},xaxis:{type:"datetime"},yaxis:{show:!1},tooltip:{enabled:!0,intersect:!1,shared:!0,x:{format:"dd/MM/yy"},custom:function(){return""}}}},series:function(){return[{name:"Active Installs",data:this.chartData}]},chartData:function(){if(!this.plugin.installHistory)return[];var t=[];return this.plugin.installHistory.forEach((function(e){t.push({x:new Date(e.date),y:e.activeInstalls})})),t}}},ya=(i(5501),u(ba,(function(){var t=this,e=t._self._c;return t.plugin.installHistory?e("div",[e("ClientOnly",[e("div",[e("apex-chart",{attrs:{type:"area",height:"40",options:t.chartOptions,series:t.series}}),t._v(" "),t.chartMounted?e("div",{staticClass:"tw-h-3 tw-bg-gradient-to-b tw-from-blue-100/100 tw-to-blue-100/0"}):t._e()],1)])],1):t._e()}),[],!1,null,null,null));function wa(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function Ca(t){for(var e=1;e0?e("ul",[t._l(t.pluginCategories,(function(i,a){return[e("li",{key:a,staticClass:"tw-inline-block tw-mr-2 tw-my-1.5"},[e("router-link",{key:a,staticClass:"tw-px-4 tw-py-1.5 tw-text-xs tw-font-medium tw-rounded-full tw-cursor-pointer hover:tw-no-underline",class:{"tw-bg-blue-50 hover:tw-bg-blue-600":!0,"hover:tw-text-white":!0},attrs:{to:"/categories/"+i.id,title:i.title+" plugins for Craft CMS"}},[t._v("\n "+t._s(i.title)+"\n ")])],1)]}))],2):t._e()]},proxy:!0}])}),t._v(" "),e("github-activity",{attrs:{plugin:t.plugin}}),t._v(" "),e("ul",{staticClass:"tw-list-reset tw-space-y-2 tw-mt-8"},[e("li",[e("c-btn",{attrs:{kind:"danger",href:"mailto:issues@craftcms.com?subject="+encodeURIComponent("Issue with "+t.plugin.name)+"&body="+encodeURIComponent("I would like to report the following issue with "+t.plugin.name+" (https://plugins.craftcms.com/"+t.plugin.handle+"):\n\n")}},[e("c-icon",{staticClass:"tw-mr-1.5",attrs:{icon:"flag",set:"solid"}}),t._v("\n "+t._s(t._f("t")("Report plugin","app"))+"\n ")],1)],1)])],1)])}),[],!1,null,null,null).exports;function Pa(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function Ta(t){for(var e=1;e1&&t.push({name:this.$options.filters.t("Editions","app"),slug:"editions"}),t.push({name:this.$options.filters.t("Changelog","app"),slug:"changelog"}),t},pluginId:function(){return this.plugin?this.plugin.id:null}}),methods:{isPluginFree:ea},mounted:function(){var t=this,e=this.$route.params.handle;this.plugin&&this.plugin.handle===e||(this.loading=!0,this.$store.commit("pluginStore/updatePluginDetails",null),this.$store.dispatch("pluginStore/getPluginDetailsByHandle",e).then((function(){t.loading=!1})).catch((function(){t.loading=!1})))}},Ma=u(Oa,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"plugin-layout"},[t.plugin?[e("div",{ref:"pluginDetailsHeader",staticClass:"plugin-details-header tw-mt-0"},[t.plugin?[e("div",{staticClass:"ps-container tw-pb-0"},[e("div",{staticClass:"description tw-flex"},[e("div",{staticClass:"icon tw-w-28"},[t.plugin.iconUrl?e("img",{attrs:{alt:t.plugin.name+" icon",src:t.plugin.iconUrl}}):e("img",{attrs:{alt:"Default plugin icon",src:t.defaultPluginSvg}})]),t._v(" "),e("div",{staticClass:"name tw-ml-8 tw-self-center"},[e("h1",{staticClass:"self-center tw-pb-0 tw-border-b-0 tw-mt-0 tw-mb-1 align-middle"},[t._v("\n "+t._s(t.plugin.name)+"\n ")]),t._v(" "),e("div",{staticClass:"developer tw-flex tw-items-center"},[e("router-link",{attrs:{to:"/developer/"+t.plugin.developerId,title:t.plugin.developerName}},[t._v("\n "+t._s(t.plugin.developerName)+"\n ")]),t._v(" "),t.plugin.developerPartner?[e("partner-badge",{staticClass:"tw-ml-2",attrs:{kind:"craft"}})]:t._e()],2)])]),t._v(" "),e("div",{staticClass:"tabs tw-mt-6 tw-border-b tw-border-solid tw-border-gray-200"},[e("ul",{staticClass:"tw--mb-px tw-flex tw-space-x-6"},t._l(t.tabs,(function(i,a){return e("li",{key:a},[e("router-link",{class:{"tw-inline-block tw-px-1 tw-py-3 tw-border-solid tw-border-b-2 tw-text-opacity-75 hover:tw-text-opacity-100 hover:tw-no-underline":!0,"tw-border-transparent hover:tw-border-separator hover:tw-border-gray-200 tw-text-gray-500":t.$route.path!=="/"+t.plugin.handle+(i.slug?"/"+i.slug:""),"tw-text-blue-600 tw-border-blue-600 tw-text-opacity-100":t.$route.path==="/"+t.plugin.handle+(i.slug?"/"+i.slug:"")},attrs:{to:"/"+t.plugin.handle+(i.slug?"/"+i.slug:"")}},[t._v("\n "+t._s(i.name)+"\n ")])],1)})),0)])])]:t._e()],2),t._v(" "),e("div",{staticClass:"ps-container tw-py-8"},[t._t("default")],2)]:[e("div",{staticClass:"ps-container tw-py-8"},[e("c-spinner")],1)]],2)}),[],!1,null,null,null).exports;function La(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function Ia(t){for(var e=1;e0?this.plugin.longDescription:null},pluginCategories:function(){var t=this;return this.categories.filter((function(e){return t.plugin.categoryIds.find((function(t){return t==e.id}))}))},licenseLabel:function(){switch(this.plugin.license){case"craft":return"Craft";case"mit":return"MIT"}return null},lastUpdate:function(){var t=new Date(this.plugin.lastUpdate.replace(/\s/,"T"));return Craft.formatDate(t)},pluginLicenseInfo:function(){return this.plugin?this.getPluginLicenseInfo(this.plugin.handle):null},licenseMismatchedMessage:function(){return this.$options.filters.t("This license is tied to another Craft install. Visit {accountLink} to detach it, or buy a new license.","app",{accountLink:'id.craftcms.com'})},recommendedLabel:function(){return this.plugin.replacementHandle?this.$options.filters.t('The developer recommends using {name} instead.',"app",{name:this.plugin.replacementName,url:Craft.getCpUrl("plugin-store/"+this.plugin.replacementHandle)}):null}}),methods:Ia({},(0,c.mapActions)({addToCart:"cart/addToCart"})),mounted:function(){var t=this,e=this.$route.params.handle;this.plugin&&this.plugin.handle===e||(this.loading=!0,this.$store.dispatch("pluginStore/getPluginDetailsByHandle",e).then((function(){t.loading=!1})).catch((function(){t.loading=!1})))},beforeDestroy:function(){this.$store.dispatch("pluginStore/cancelRequests")},beforeRouteLeave:function(t,e,i){this.showingScreenshotModal?this.$store.commit("app/updateShowingScreenshotModal",!1):i()}},za=u(Da,(function(){var t=this,e=t._self._c;return e("plugin-layout",[e("div",{staticClass:"plugin-details"},[!t.loading&&t.plugin?[e("div",{staticClass:"plugin-details-body"},[t.loading?[e("c-spinner")]:[t.plugin.abandoned?[e("div",{staticClass:"error tw-mb-6 tw-px-4 tw-py-3 tw-rounded tw-border tw-border-solid tw-border-red-500 tw-flex tw-flex-nowrap tw-text-base tw-items-center"},[e("c-icon",{staticClass:"tw-w-8 tw-h-8 tw-mr-2",attrs:{icon:"alert"}}),t._v(" "),e("div",{staticClass:"tw-flex-1 tw-mb-0"},[e("strong",[t._v(t._s(t._f("t")("This plugin is no longer maintained.","app"))+"\n ")]),t._v(" "),t.recommendedLabel?e("span",{domProps:{innerHTML:t._s(t.recommendedLabel)}}):t._e()])],1)]:t._e(),t._v(" "),t.plugin.thumbnailUrls.length?[e("div",{staticClass:"tw-border-b tw-border-solid tw-border-gray-200 tw-mb-8"},[e("plugin-screenshots",{attrs:{thumbnails:t.plugin.thumbnailUrls,images:t.plugin.screenshotUrls}})],1)]:t._e(),t._v(" "),e("div",{staticClass:"xl:tw-flex"},[e("div",{staticClass:"xl:tw-flex-1 xl:tw-pr-8 xl:tw-mr-4"},[t.longDescription?e("div",{staticClass:"readable",domProps:{innerHTML:t._s(t.longDescription)}}):t.plugin.shortDescription?e("div",{staticClass:"readable",domProps:{innerHTML:t._s(t.plugin.shortDescription)}}):e("p",[t._v("No description.")])]),t._v(" "),e("div",{staticClass:"xl:tw-ml-4 xl:tw-w-60 tw-mt-8 xl:tw-mt-0"},[e("plugin-meta",{attrs:{plugin:t.plugin}})],1)]),t._v(" "),t.licenseMismatched?[e("hr"),t._v(" "),e("div",{staticClass:"tw-py-8"},[e("div",{staticClass:"tw-mx-auto tw-max-w-sm tw-px-8"},[e("div",{staticClass:"tw-flex items-center"},[e("svg",{staticClass:"tw-text-blue-600 tw-fill-current tw-w-8 tw-h-8 tw-mr-4 tw-flex tw-items-center tw-shrink-0",attrs:{version:"1.1",xmlns:"http://www.w3.org/2000/svg",x:"0px",y:"0px",viewBox:"0 0 256 448","xml:space":"preserve"}},[e("path",{attrs:{fill:"currentColor",d:"M184,144c0,4.2-3.8,8-8,8s-8-3.8-8-8c0-17.2-26.8-24-40-24c-4.2,0-8-3.8-8-8s3.8-8,8-8C151.2,104,184,116.2,184,144z\n M224,144c0-50-50.8-80-96-80s-96,30-96,80c0,16,6.5,32.8,17,45c4.8,5.5,10.2,10.8,15.2,16.5C82,226.8,97,251.8,99.5,280h57\n c2.5-28.2,17.5-53.2,35.2-74.5c5-5.8,10.5-11,15.2-16.5C217.5,176.8,224,160,224,144z M256,144c0,25.8-8.5,48-25.8,67\n s-40,45.8-42,72.5c7.2,4.2,11.8,12.2,11.8,20.5c0,6-2.2,11.8-6.2,16c4,4.2,6.2,10,6.2,16c0,8.2-4.2,15.8-11.2,20.2\n c2,3.5,3.2,7.8,3.2,11.8c0,16.2-12.8,24-27.2,24c-6.5,14.5-21,24-36.8,24s-30.2-9.5-36.8-24c-14.5,0-27.2-7.8-27.2-24\n c0-4,1.2-8.2,3.2-11.8c-7-4.5-11.2-12-11.2-20.2c0-6,2.2-11.8,6.2-16c-4-4.2-6.2-10-6.2-16c0-8.2,4.5-16.2,11.8-20.5\n c-2-26.8-24.8-53.5-42-72.5S0,169.8,0,144C0,76,64.8,32,128,32S256,76,256,144z"}})]),t._v(" "),e("div",[e("div",{domProps:{innerHTML:t._s(t.licenseMismatchedMessage)}})])])])])]:t._e()]],2)]:[e("c-spinner")]],2)])}),[],!1,null,null,null).exports;function Na(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function ja(t){for(var e=1;e0&&w&&(S=b.price-y.price);var A=b&&v.editions.length>1,P=v.id;h.push({type:"plugin-edition",name:v.name,iconUrl:v.iconUrl,editionHandle:m.edition,editionName:b.name,pluginHandle:v.handle,licenseMismatched:x,discountPrice:S,price:k,navigateTo:C,showEditionBadge:A,pluginId:P})}}return h},pendingActiveTrials:function(t,e){var i=e.activeTrials,a=t.cart,n=e.isCmsEditionInCart;return i.filter((function(t){switch(t.type){case"cms-edition":return!n(t.editionHandle);case"plugin-edition":return!a.lineItems.find((function(e){return e.purchasable.pluginId==t.pluginId}));default:return!1}}))}},Qa={addToCart:function(t,e){var i=t.state,a=t.dispatch,n=t.rootGetters;return new Promise((function(t,s){var r=JSON.parse(JSON.stringify(i.cart)),o=Ka.getCartItemsData(r);e.forEach((function(t){var e=o.find((function(e){return e.plugin===t.plugin}));if(!e){var i=function(t){for(var e=1;e0&&a.licenseIssues.forEach((function(t){"wrong_edition"!==t&&"astray"!==t&&"no_trials"!==t&&(s=!0)})),s||(i.licenseKey=a.licenseKey)}i.cmsLicenseKey=window.cmsLicenseKey;break;case"cms-edition":i.licenseKey=window.cmsLicenseKey}o.push(i)}}));var l={items:o},c=r.number;a("updateCart",{cartNumber:c,data:l}).then((function(e){if(void 0!==e.errors)return s(e);t(e)})).catch((function(t){return s(t)}))}))},addAllTrialsToCart:function(t){var e=t.dispatch,i=t.getters,a=[];return i.pendingActiveTrials.forEach((function(t){var e={type:t.type,edition:t.editionHandle};"plugin-edition"===t.type&&(e.plugin=t.pluginHandle),a.push(e)})),e("addToCart",a)},createCart:function(t){var e=t.dispatch,i=t.rootState;return new Promise((function(t,a){(function(t){return new Promise((function(e,i){Craft.sendApiRequest("POST","carts",{data:t}).then((function(t){e(t)})).catch((function(t){i(t)}))}))})({email:i.craft.currentUser.email}).then((function(i){e("updateCartPlugins",{cartResponseData:i}).then((function(){e("saveOrderNumber",{orderNumber:i.cart.number}),t(i)})).catch((function(t){a(t)}))})).catch((function(t){a(t)}))}))},getActiveTrials:function(t){var e=t.dispatch;return new Promise((function(t,i){e("pluginStore/getCmsEditions",null,{root:!0}).then((function(){e("getActiveTrialPlugins").then((function(){t()})).catch((function(t){i(t)}))})).catch((function(t){i(t)}))}))},getActiveTrialPlugins:function(t){var e=t.commit,i=t.rootState,a=t.rootGetters;return new Promise((function(t,n){var s=[],r=i.craft.pluginLicenseInfo;for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&r[o].isEnabled&&s.push(o);Mi.getPluginsByHandles(s).then((function(i){if(i&&i.error)throw i.error;for(var n=i,s=[],o=function(t){var e=n[t];if(!e)return"continue";var i=r[e.handle];if(!i)return"continue";if(i.licenseKey&&i.edition===i.licensedEdition)return"continue";if(i.edition){var o=e.editions.find((function(t){return t.handle===i.edition}));if(o&&a["pluginStore/isPluginEditionFree"](o))return"continue"}if(!a["craft/isPluginInstalled"](e.handle))return"continue";s.push(e)},l=0;l0)Mi.getPluginsByIds(s).then((function(e){i("updateCart",{cartResponseData:a}),i("updateCartPlugins",{pluginsResponseData:e}),t(e)})).catch((function(t){e(t)}));else{var r=[];i("updateCart",{cartResponseData:a}),i("updateCartPlugins",{pluginsResponseData:r}),t(r)}}))},updateItem:function(t,e){var i=t.dispatch,a=t.state,n=e.itemKey,s=e.item;return new Promise((function(t,e){var r=a.cart,o=r.number,l=Ka.getCartItemsData(r);l[n]=s,i("updateCart",{cartNumber:o,data:{items:l}}).then((function(e){t(e)})).catch((function(t){e(t)}))}))}},Ka={getCartData:function(t){var e={email:t.email,billingAddress:{firstName:t.billingAddress.firstName,lastName:t.billingAddress.lastName},items:[]};return e.items=this.getCartItemsData(t),e},getCartItemsData:function(t){if(!t)return[];for(var e=[],i=0;it.length)&&(e=t.length);for(var i=0,a=new Array(e);it.length)&&(e=t.length);for(var i=0,a=new Array(e);i0}))}}},actions:{cancelRequests:function(){return Mi.cancelRequests()},getCoreData:function(t){var e=t.commit;return new Promise((function(t,i){Mi.getCoreData().then((function(i){e("updateCoreData",{responseData:i}),t(i)})).catch((function(t){i(t)}))}))},getCmsEditions:function(t,e){var i=t.commit,a=!(!e||!e.force)&&e.force;return new Promise((function(t,e){cn.cmsEditions&&!0!==a?t():Mi.getCmsEditions().then((function(e){i("updateCmsEditions",{responseData:e}),t(e)})).catch((function(t){e(t)}))}))},getDeveloper:function(t,e){var i=t.commit;return Mi.getDeveloper(e).then((function(t){i("updateDeveloper",t)}))},getFeaturedSectionByHandle:function(t,e){var i=t.commit;return Mi.getFeaturedSectionByHandle(e).then((function(t){i("updateFeaturedSection",t)}))},getFeaturedSections:function(t){var e=t.commit;return Mi.getFeaturedSections().then((function(t){e("updateFeaturedSections",t)}))},getPluginChangelog:function(t,e){var i=t.commit;return new Promise((function(t,a){Mi.getPluginChangelog(e).then((function(a){i("updatePluginChangelog",{pluginId:e,changelog:a}),t(a)})).catch((function(t){a(t)}))}))},getPluginDetails:function(t,e){var i=t.commit;return new Promise((function(t,a){Mi.getPluginDetails(e).then((function(e){i("updatePluginDetails",e),t(e)})).catch((function(t){a(t)}))}))},getPluginDetailsByHandle:function(t,e){var i=t.commit;return Mi.getPluginDetailsByHandle(e).then((function(t){i("updatePluginDetails",t)}))},getPluginsByCategory:function(t,e){var i=t.getters,a=t.dispatch;return new Promise((function(t,n){var s=i.getPluginIndexParams(e);Mi.getPluginsByCategory(e.categoryId,s).then((function(i){a("updatePluginIndex",{context:e,responseData:i}),t(i)})).catch((function(t){n(t)}))}))},getPluginsByDeveloperId:function(t,e){var i=t.getters,a=t.dispatch;return new Promise((function(t,n){var s=i.getPluginIndexParams(e);Mi.getPluginsByDeveloperId(e.developerId,s).then((function(i){a("updatePluginIndex",{context:e,responseData:i}),t(i)})).catch((function(t){n(t)}))}))},getPluginsByFeaturedSectionHandle:function(t,e){var i=t.getters,a=t.dispatch;return new Promise((function(t,n){var s=i.getPluginIndexParams(e);return Mi.getPluginsByFeaturedSectionHandle(e.featuredSectionHandle,s).then((function(i){a("updatePluginIndex",{context:e,responseData:i}),t(i)})).catch((function(t){n(t)}))}))},searchPlugins:function(t,e){var i=t.getters,a=t.dispatch;return new Promise((function(t,n){var s=i.getPluginIndexParams(e);Mi.searchPlugins(e.searchQuery,s).then((function(i){a("updatePluginIndex",{context:e,responseData:i}),t(i)})).catch((function(t){n(t)}))}))},updatePluginIndex:function(t,e){var i=t.commit,a=e.context,n=e.responseData;a.appendData&&!0===a.appendData?i("appendPlugins",n.plugins):i("updatePlugins",n.plugins)}},mutations:dn},un={namespaced:!0,state:{canTestEditions:null,countries:null,craftId:null,craftLogo:null,currentUser:null,licensedEdition:null,pluginLicenseInfo:{},CraftEdition:null,CraftPro:null,CraftSolo:null},getters:{getCmsEditionFeatures:function(){return function(t){var e={solo:[{name:"Ultra-flexible content modeling",description:"Define custom content types, fields, and relations needed to perfectly contain your unique content requirements."},{name:"Powerful front-end tools",description:"Develop custom front-end templates with Twig, or use Craft as a headless CMS."},{name:"Multi-Site",description:"Run multiple related sites from a single installation, with shared content and user accounts."},{name:"Localization",description:"Cater to distinct audiences from around the world with Craft’s best-in-class localization capabilities."},{name:"Single admin account",description:"The Solo edition is limited to a single admin account."}],pro:[{name:"Unlimited user accounts",description:"Create unlimited user accounts, user groups, user permissions, and public user registration."},{name:"Enhanced content previewing",description:"Preview your content from multiple targets, including single-page applications."},{name:"GraphQL API",description:"Make your content available to other applications with a self-generating GraphQL API."},{name:"System branding",description:"Personalize the control panel for your brand."},{name:"Basic developer support",description:"Get developer-to-developer support right from the Craft core development team."}]};return e[t]?e[t]:null}},getPluginLicenseInfo:function(t){return function(e){return t.pluginLicenseInfo&&t.pluginLicenseInfo[e]?t.pluginLicenseInfo[e]:null}},isPluginInstalled:function(t){return function(e){return!!t.pluginLicenseInfo&&!!t.pluginLicenseInfo[e]&&!!t.pluginLicenseInfo[e].isInstalled}},getCmsEditionIndex:function(t){return function(e){switch(e){case"solo":return t.CraftSolo;case"pro":return t.CraftPro;default:return null}}}},actions:{cancelRequests:function(){Oi.cancelRequests()},getCraftData:function(t){var e=t.commit;return new Promise((function(t,i){new Promise((function(t,e){Oi.sendActionRequest("GET","plugin-store/craft-data").then((function(e){t(e)})).catch((function(t){n().isCancel(t)||e(t)}))})).then((function(a){e("updateCraftData",{response:a}),new Promise((function(t,e){Oi.sendApiRequest("GET","countries").then((function(e){t(e)})).catch((function(t){n().isCancel(t)||e(t)}))})).then((function(i){e("updateCountries",{responseData:i}),t()})).catch((function(t){i(t)}))})).catch((function(t){i(t)}))}))},getCraftIdData:function(t,e){var i=t.commit,a=e.accessToken;return new Promise((function(t,e){(function(t){var e=t.accessToken;return new Promise((function(t,i){Oi.sendApiRequest("GET","account",{headers:{Authorization:"Bearer "+e}}).then((function(e){t(e)})).catch((function(t){n().isCancel(t)||i(t)}))}))})({accessToken:a}).then((function(e){i("updateCraftIdData",{responseData:e}),t()})).catch((function(t){e(t)}))}))},getPluginLicenseInfo:function(t){var e=t.commit;return new Promise((function(t,i){new Promise((function(t,e){Oi.sendApiRequest("GET","cms-licenses",{params:{include:"plugins"}}).then((function(i){Oi.sendActionRequest("POST","app/get-plugin-license-info",{data:{pluginLicenses:i.license.pluginLicenses||[]},headers:{"X-CSRF-Token":Craft.csrfTokenValue}}).then((function(e){t(e)})).catch((function(t){n().isCancel(t)||e(t)}))}))})).then((function(i){e("updatePluginLicenseInfo",{response:i}),t(i)})).catch((function(t){i(t)}))}))},switchPluginEdition:function(t,e){var i=t.dispatch,a=e.pluginHandle,s=e.edition;return new Promise((function(t,e){(function(t,e){return new Promise((function(i,a){var s="pluginHandle="+t+"&edition="+e;Oi.sendActionRequest("POST","plugins/switch-edition",{data:s,headers:{"X-CSRF-Token":Craft.csrfTokenValue}}).then((function(t){Craft.clearCachedApiHeaders(),i(t)})).catch((function(t){n().isCancel(t)||a(t)}))}))})(a,s).then((function(a){i("getPluginLicenseInfo").then((function(e){t({switchPluginEditionResponse:a,getPluginLicenseInfoResponse:e})})).catch((function(t){return e(t)}))})).catch((function(t){return e(t)}))}))},tryEdition:function(t,e){return new Promise((function(t,i){(function(t){return new Promise((function(e,i){Oi.sendActionRequest("POST","app/try-edition",{data:"edition="+t,headers:{"X-CSRF-Token":Craft.csrfTokenValue}}).then((function(t){Craft.clearCachedApiHeaders(),e(t)})).catch((function(t){n().isCancel(t)||i(t)}))}))})(e).then((function(e){t(e)})).catch((function(t){i(t)}))}))}},mutations:{updateCraftData:function(t,e){var i=e.response;t.canTestEditions=i.data.canTestEditions,t.craftLogo=i.data.craftLogo,t.currentUser=i.data.currentUser,t.licensedEdition=i.data.licensedEdition,t.CraftEdition=i.data.CraftEdition,t.CraftPro=i.data.CraftPro,t.CraftSolo=i.data.CraftSolo},updateCraftIdData:function(t,e){var i=e.responseData;t.craftId=i},updateCountries:function(t,e){var i=e.responseData;t.countries=i.countries},updateCraftId:function(t,e){t.craftId=e},updatePluginLicenseInfo:function(t,e){var i=e.response;t.pluginLicenseInfo=i.data}}};e().use(d());var pn=new(d().Store)({strict:!0,modules:{app:{namespaced:!0,state:{searchQuery:"",showingScreenshotModal:!1,screenshotModalImages:null,screenshotModalImageKey:0},getters:{},actions:{},mutations:{updateSearchQuery:function(t,e){t.searchQuery=e},updateShowingScreenshotModal:function(t,e){t.showingScreenshotModal=e},updateScreenshotModalImages:function(t,e){t.screenshotModalImages=e},updateScreenshotModalImageKey:function(t,e){t.screenshotModalImageKey=e}}},cart:Ja,developerIndex:rn,pluginStore:hn,craft:un}}),fn=u({},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"pluginstore-modal-flex"},[t.$slots.body?[t._t("body")]:[t.$slots.header?e("header",{staticClass:"header"},[t._t("header")],2):t._e(),t._v(" "),e("div",{staticClass:"pluginstore-modal-main"},[e("div",{staticClass:"pluginstore-modal-content"},[t._t("main")],2)])]],2)}),[],!1,null,null,null).exports,gn=u({components:{EditionBadge:p},props:{activeTrial:{type:Object,required:!0},loading:{type:Boolean,default:!1}},data:function(){return{addToCartLoading:!1}},methods:{addToCart:function(){var t=this;this.addToCartLoading=!0;var e={type:this.activeTrial.type,edition:this.activeTrial.editionHandle};"plugin-edition"===this.activeTrial.type&&(e.plugin=this.activeTrial.pluginHandle),this.$store.dispatch("cart/addToCart",[e]).then((function(){t.addToCartLoading=!1})).catch((function(e){t.addToCartLoading=!1;var i=e.errors&&e.errors[0]&&e.errors[0].message?e.errors[0].message:"Couldn’t add item to cart.";t.$root.displayError(i)}))},navigateToPlugin:function(){var t=this.activeTrial.navigateTo;this.$root.closeModal(),this.$route.path!==t&&this.$router.push({path:t})}}},(function(){var t=this,e=t._self._c;return e("div",{staticClass:"tw-border-t tw-border-solid tw-border-gray-200 md:tw-flex md:tw-justify-between md:tw-items-center tw-py-4 md:tw-py-2 tw-space-y-2 md:tw-space-y-0"},[e("div",{staticClass:"tw-flex tw-items-center tw-w-3/5"},[e("div",{staticClass:"tw-mr-4 tw-leading-3"},[t.activeTrial.iconUrl?e("img",{staticClass:"tw-w-10 tw-h-10",attrs:{src:t.activeTrial.iconUrl}}):e("div",{staticClass:"default-icon"})]),t._v(" "),e("div",{staticClass:"item-name"},[e("a",{staticClass:"tw-mr-2",attrs:{title:t.activeTrial.name},on:{click:function(e){return e.preventDefault(),t.navigateToPlugin.apply(null,arguments)}}},[e("strong",[t._v(t._s(t.activeTrial.name))])]),t._v(" "),t.activeTrial.editionName&&t.activeTrial.showEditionBadge?e("edition-badge",{attrs:{name:t.activeTrial.editionName}}):t._e()],1)]),t._v(" "),e("div",{staticClass:"tw-flex-1"},[t.activeTrial.price?[t.activeTrial.discountPrice?[e("del",{staticClass:"tw-mr-1"},[t._v(t._s(t._f("currency")(t.activeTrial.price)))]),t._v(" "),e("strong",[t._v(t._s(t._f("currency")(t.activeTrial.discountPrice)))])]:[e("strong",[t._v(t._s(t._f("currency")(t.activeTrial.price)))])]]:t._e()],2),t._v(" "),e("div",{staticClass:"md:tw-w-1/4"},[e("div",{staticClass:"md:tw-text-right"},[t.addToCartLoading||t.loading?[e("c-spinner",{attrs:{size:"sm"}})]:[e("button",{class:{"tw-text-blue-600 hover:tw-underline":!0,"disabled hover:tw-no-underline":t.activeTrial.licenseMismatched},attrs:{loading:t.addToCartLoading,disabled:t.loading},on:{click:function(e){return t.addToCart()}}},[t._v("\n "+t._s(t._f("t")("Add to cart","app"))+"\n ")])]],2)])])}),[],!1,null,null,null),vn=gn.exports;function mn(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function xn(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}var bn={mixins:[Ji],components:{ActiveTrial:vn},data:function(){return{loading:!1}},computed:function(t){for(var e=1;e0?e("div",{staticClass:"tw-border-t tw-border-solid tw-border-gray-200 tw-mt-6 tw-pt-6"},[t.pendingActiveTrials.length>1?e("div",{staticClass:"right"},[e("a",{class:{"tw-opacity-50 tw-cursor-default":t.loading},on:{click:function(e){return t.addAllTrialsToCart()}}},[t._v(t._s(t._f("t")("Add all to cart","app")))])]):t._e(),t._v(" "),e("h2",[t._v(t._s(t._f("t")("Active Trials","app")))]),t._v(" "),e("div",{staticClass:"cart-data"},t._l(t.pendingActiveTrials,(function(i,a){return e("div",{key:a},[e("active-trial",{attrs:{loading:t.loading,activeTrial:i}})],1)})),0)]):t._e()}),[],!1,null,null,null).exports;function wn(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function Cn(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}var Sn={props:{item:Object},computed:function(t){for(var e=1;e1?e("edition-badge",{attrs:{name:t.item.lineItem.purchasable.name}}):t._e()]:t._e()],2)}),[],!1,null,null,null).exports;function Pn(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function Tn(t){for(var e=1;e0&&(h="+"),d=this.$options.filters.currency(d),c=this.$options.filters.t("Updates until {date} ({sign}{price})","app",{date:l,sign:h,price:d})}a.push({label:c,value:o})}return a},itemLoading:function(t){return!!this.loadingItems[t]},onSelectedExpiryDateChange:function(t){var e=this;this.$set(this.loadingItems,t,!0);var i=this.cartItemsData[t];i.expiryDate=this.selectedExpiryDates[t],this.$store.dispatch("cart/updateItem",{itemKey:t,item:i}).then((function(){e.$delete(e.loadingItems,t)}))},payment:function(){this.$store.dispatch("cart/getOrderNumber").then((function(t){window.location.href="".concat(window.craftIdEndpoint,"/cart?orderNumber=").concat(t)}))},removeFromCart:function(t){var e=this;this.$set(this.loadingRemoveFromCart,t,!0),this.$store.dispatch("cart/removeFromCart",t).then((function(){e.$delete(e.loadingRemoveFromCart,t)})).catch((function(i){e.$delete(e.loadingRemoveFromCart,t);var a=i.errors&&i.errors[0]&&i.errors[0].message?i.errors[0].message:"Couldn’t remove item from cart.";e.$root.displayError(a)}))},removeFromCartLoading:function(t){return!!this.loadingRemoveFromCart[t]},pluginLicenseInfo:function(t){return this.getPluginLicenseInfo(t)}}),mounted:function(){var t=this;this.$store.dispatch("cart/getActiveTrials").then((function(){t.activeTrialsLoading=!1})).catch((function(){t.activeTrialsLoading=!1}))}},Mn={components:{Cart:u(On,(function(){var t=this,e=t._self._c;return e("step",[e("template",{slot:"header"},[e("h1",[t._v(t._s(t._f("t")("Cart","app")))])]),t._v(" "),e("template",{slot:"main"},[t.activeTrialsLoading?[e("c-spinner")]:[e("h2",[t._v(t._s(t._f("t")("Items in your cart","app")))]),t._v(" "),t.cart?[t.cartItems.length?[e("div",{staticClass:"cart-data tw-border-t tw-border-solid tw-border-gray-200"},[t._l(t.cartItems,(function(i,a){return e("div",{key:"item"+a,staticClass:"tw-border-b tw-border-solid tw-border-gray-200 md:tw-flex"},[e("div",{staticClass:"md:tw-mr-6 tw-pt-4 md:tw-pb-4 md:tw-px-4"},[e("item-icon",{attrs:{item:i}})],1),t._v(" "),e("div",{staticClass:"tw-flex-1"},[e("div",{staticClass:"tw-flex tw-py-4"},[e("item-name",{staticClass:"tw-flex-1",attrs:{item:i}}),t._v(" "),e("div",{staticClass:"price tw-w-24 tw-text-right"},[e("strong",[t._v(t._s(t._f("currency")(i.lineItem.price)))])])],1),t._v(" "),e("div",{staticClass:"tw-border-t tw-border-solid tw-border-gray-200 tw-flex tw-justify-between tw-py-4"},[e("div",{staticClass:"expiry-date"},["cms-edition"===i.lineItem.purchasable.type||"plugin-edition"===i.lineItem.purchasable.type&&("new:"===i.lineItem.options.licenseKey.substring(0,4)||t.pluginLicenseInfo(i.plugin.handle)&&t.pluginLicenseInfo(i.plugin.handle).isTrial)?[e("c-dropdown",{attrs:{options:t.itemExpiryDateOptions(a)},on:{input:function(e){return t.onSelectedExpiryDateChange(a)}},model:{value:t.selectedExpiryDates[a],callback:function(e){t.$set(t.selectedExpiryDates,a,e)},expression:"selectedExpiryDates[itemKey]"}})]:t._e(),t._v(" "),t.itemLoading(a)?e("c-spinner"):t._e()],2),t._v(" "),t._l(i.lineItem.adjustments.filter((function(t){return"extendedUpdates"===t.sourceSnapshot.type})),(function(i,n){return[e("div",{key:a+"adjustment-"+n},[t._v("\n "+t._s(t._f("currency")(i.amount))+"\n ")])]}))],2),t._v(" "),e("item-adjustments",{attrs:{item:i}}),t._v(" "),e("div",{staticClass:"tw-py-4 tw-text-right tw-border-t tw-border-solid tw-border-gray-200"},[t.removeFromCartLoading(a)?[e("c-spinner",{staticClass:"sm"})]:[e("a",{attrs:{role:"button"},on:{click:function(e){return t.removeFromCart(a)}}},[t._v(t._s(t._f("t")("Remove","app")))])]],2)],1)])})),t._v(" "),e("div",{staticClass:"tw-flex tw-mt-4 tw-text-lg"},[e("div",{staticClass:"tw-w-14 tw-mr-14"}),t._v(" "),e("div",{staticClass:"tw-flex-1 tw-flex tw-justify-between"},[e("div",[e("strong",[t._v(t._s(t._f("t")("Total Price","app")))])]),t._v(" "),e("div",[e("strong",[t._v(t._s(t._f("currency")(t.cart.totalPrice)))])])])])],2),t._v(" "),e("div",{staticClass:"tw-mt-4 tw-py-4 tw-text-right"},[e("c-btn",{attrs:{kind:"primary",loading:t.loadingCheckout},on:{click:function(e){return t.payment()}}},[t._v(t._s(t._f("t")("Checkout","app"))+"\n ")])],1)]:e("div",[e("p",[t._v("\n "+t._s(t._f("t")("Your cart is empty.","app"))+"\n "),e("a",{on:{click:function(e){return t.$emit("continue-shopping")}}},[t._v(t._s(t._f("t")("Continue shopping","app")))])])])]:t._e(),t._v(" "),e("active-trials")]],2)],2)}),[],!1,null,null,null).exports},props:["pluginId","show"],data:function(){return{modal:null}},computed:{modalStep:function(){return this.$root.modalStep}},watch:{show:function(t){t?this.modal.show():this.modal.hide()}},mounted:function(){var t=this;this.modal=new Garnish.Modal(this.$refs.pluginstoremodal,{autoShow:!1,resizable:!0,onHide:function(){t.$emit("update:show",!1)}})}},Ln=(i(5982),u(Mn,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"tw-hidden"},[e("div",{ref:"pluginstoremodal",staticClass:"pluginstore-modal modal",class:"step-"+t.modalStep,attrs:{id:"pluginstore-modal"}},["cart"===t.modalStep?e("cart",{on:{"continue-shopping":function(e){return t.$root.closeModal()}}}):t._e()],1)])}),[],!1,null,null,null).exports);function In(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function _n(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}var Dn={computed:function(t){for(var e=1;er?s*a/i:r*i/a,r>0&&t>r&&(t=r));for(var l=0;l1?[e("div",{staticClass:"ps-swiper-button-prev screenshot-modal-button"},[e("c-icon",{attrs:{icon:"chevron-left",size:"8"}})],1),t._v(" "),e("div",{staticClass:"ps-swiper-button-next screenshot-modal-button"},[e("c-icon",{attrs:{icon:"chevron-right",size:"8"}})],1),t._v(" "),e("div",{staticClass:"pagination-wrapper"},[e("div",{staticClass:"pagination-content"},[e("div",{class:"swiper-pagination",attrs:{slot:"pagination"},slot:"pagination"})])])]:t._e()],2):t._e()])}),[],!1,null,null,null)),qn=Un.exports;function Zn(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function Qn(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}var Kn={components:{Sidebar:Fn,Modal:Ln,StatusMessage:Li,ScreenshotModal:qn},computed:function(t){for(var e=1;e0?i("c-icon",{staticClass:"tw-mr-1",attrs:{icon:e.icon,size:"3"}}):e._e(),e._v(" "),e._t("default"),e._v(" "),e.trailingIcon&&e.trailingIcon.length>0?i("c-icon",{staticClass:"tw-ml-1",attrs:{icon:e.trailingIcon,size:"3"}}):e._e()],2)],2)}),[],!1,null,null,null).exports),cs={props:{disabled:{type:Boolean,default:!1},invalid:{type:Boolean,default:!1},fullwidth:{type:Boolean,default:!1},id:{type:String,default:function(){return"c-dropdown-id-"+Math.random().toString(36).substring(2,11)}},options:{type:Array,default:null},value:{type:[String,Number],default:null}}},ds=(i(8844),u(cs,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"c-dropdown",class:{"is-invalid":t.invalid,"tw-w-full":t.fullwidth,disabled:t.disabled}},[e("select",{class:{"form-select sm:tw-text-sm sm:tw-leading-5 tw-ps-3 tw-pe-10 tw-rounded-md":!0,"tw-w-full":t.fullwidth,"tw-border-danger":t.invalid,"tw-border-field":!t.invalid},attrs:{disabled:t.disabled},domProps:{value:t.value},on:{input:function(e){return t.$emit("input",e.target.value)}}},t._l(t.options,(function(i,a){return e("option",{key:a,domProps:{value:i.value}},[t._v("\n "+t._s(i.label)+"\n ")])})),0)])}),[],!1,null,null,null).exports),hs=u({},(function(){var t=this._self._c;return t("svg",{attrs:{version:"1.1",id:"alert",xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",x:"0px",y:"0px",viewBox:"0 0 448 448",fill:"currentColor","xml:space":"preserve"}},[t("path",{attrs:{d:"M256,343.8v-47.5c0-4.5-3.5-8.2-8-8.2h-48c-4.5,0-8,3.8-8,8.2v47.5c0,4.5,3.5,8.2,8,8.2h48C252.5,352,256,348.2,256,343.8z\nM255.5,250.2l4.5-114.8c0-1.5-0.8-3.5-2.5-4.8c-1.5-1.2-3.8-2.8-6-2.8h-55c-2.2,0-4.5,1.5-6,2.8c-1.8,1.2-2.5,3.8-2.5,5.2\nl4.2,114.2c0,3.2,3.8,5.8,8.5,5.8H247C251.5,256,255.2,253.5,255.5,250.2z M252,16.8l192,352c5.5,9.8,5.2,21.8-0.5,31.5\nS427.2,416,416,416H32c-11.2,0-21.8-6-27.5-15.8s-6-21.8-0.5-31.5l192-352C201.5,6.5,212.2,0,224,0S246.5,6.5,252,16.8z"}})])}),[],!1,null,null,null).exports,us=u({},(function(){var t=this._self._c;return t("svg",{staticStyle:{"enable-background":"new 0 0 417 448"},attrs:{version:"1.1",id:"Layer_1",xmlns:"http://www.w3.org/2000/svg",x:"0px",y:"0px",viewBox:"0 0 417 448","xml:space":"preserve",fill:"currentColor"}},[t("path",{attrs:{d:"M409.8,119.5c6.2,9,8,20.8,4.5,32.3l-68.8,226.5c-6.2,21.2-28.2,37.8-49.8,37.8H65c-25.5,0-52.8-20.2-62-46.2\n\tc-4-11.2-4-22.2-0.5-31.8c0.5-5,1.5-10,1.8-16c0.2-4-2-7.2-1.5-10.2c1-6,6.2-10.2,10.2-17c7.5-12.5,16-32.8,18.8-45.8\n\tc1.2-4.8-1.2-10.2,0-14.5c1.2-4.8,6-8.2,8.5-12.8C47,210.2,55.8,188,57,176.2c0.5-5.2-2-11-0.5-15c1.8-5.8,7.2-8.2,11-13.2\n\tc6-8.2,16-32,17.5-45.3c0.5-4.2-2-8.5-1.2-13c1-4.8,7-9.8,11-15.5c10.5-15.5,12.5-49.8,44.2-40.8l-0.2,0.8c4.2-1,8.5-2.2,12.8-2.2\n\th190.2c11.8,0,22.2,5.2,28.5,14c6.5,9,8,20.8,4.5,32.5L306.2,305c-11.8,38.5-18.2,47-50,47H39c-3.2,0-7.2,0.8-9.5,3.8\n\tc-2,3-2.2,5.2-0.2,10.8c5,14.5,22.2,17.5,36,17.5H296c9.2,0,20-5.2,22.8-14.2l75-246.8c1.5-4.8,1.5-9.8,1.2-14.2\n\tC400.8,111,406,114.5,409.8,119.5z M143.8,120c-1.5,4.5,1,8,5.5,8h152c4.2,0,9-3.5,10.5-8l5.2-16c1.5-4.5-1-8-5.5-8h-152\n\tc-4.2,0-9,3.5-10.5,8L143.8,120z M123,184c-1.5,4.5,1,8,5.5,8h152c4.2,0,9-3.5,10.5-8l5.2-16c1.5-4.5-1-8-5.5-8h-152\n\tc-4.2,0-9,3.5-10.5,8L123,184z"}})])}),[],!1,null,null,null).exports,ps=u({},(function(){var t=this,e=t._self._c;return e("svg",{attrs:{version:"1.1",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 28 28",fill:"currentColor"}},[e("title",[t._v("check")]),t._v(" "),e("path",{attrs:{d:"M26.109 8.844c0 0.391-0.156 0.781-0.438 1.062l-13.438 13.438c-0.281 0.281-0.672 0.438-1.062 0.438s-0.781-0.156-1.062-0.438l-7.781-7.781c-0.281-0.281-0.438-0.672-0.438-1.062s0.156-0.781 0.438-1.062l2.125-2.125c0.281-0.281 0.672-0.438 1.062-0.438s0.781 0.156 1.062 0.438l4.594 4.609 10.25-10.266c0.281-0.281 0.672-0.438 1.062-0.438s0.781 0.156 1.062 0.438l2.125 2.125c0.281 0.281 0.438 0.672 0.438 1.062z"}})])}),[],!1,null,null,null).exports,fs=u({},(function(){var t=this._self._c;return t("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor"}},[t("path",{attrs:{"fill-rule":"evenodd",d:"M12.707 5.293a1 1 0 010 1.414L9.414 10l3.293 3.293a1 1 0 01-1.414 1.414l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 0z","clip-rule":"evenodd"}})])}),[],!1,null,null,null).exports,gs=u({},(function(){var t=this._self._c;return t("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor"}},[t("path",{attrs:{"fill-rule":"evenodd",d:"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z","clip-rule":"evenodd"}})])}),[],!1,null,null,null).exports,vs=u({},(function(){var t=this._self._c;return t("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"}},[t("path",{attrs:{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M8 5H6a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2v-1M8 5a2 2 0 002 2h2a2 2 0 002-2M8 5a2 2 0 012-2h2a2 2 0 012 2m0 0h2a2 2 0 012 2v3m2 4H10m0 0l3-3m-3 3l3 3"}})])}),[],!1,null,null,null).exports,ms=u({},(function(){var t=this._self._c;return t("svg",{attrs:{"aria-hidden":"true",focusable:"false","data-prefix":"fas","data-icon":"copy",role:"img",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 448 512"}},[t("path",{attrs:{fill:"currentColor",d:"M320 448v40c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24V120c0-13.255 10.745-24 24-24h72v296c0 30.879 25.121 56 56 56h168zm0-344V0H152c-13.255 0-24 10.745-24 24v368c0 13.255 10.745 24 24 24h272c13.255 0 24-10.745 24-24V128H344c-13.2 0-24-10.8-24-24zm120.971-31.029L375.029 7.029A24 24 0 0 0 358.059 0H352v96h96v-6.059a24 24 0 0 0-7.029-16.97z"}})])}),[],!1,null,null,null).exports,xs=u({},(function(){var t=this._self._c;return t("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor"}},[t("path",{attrs:{"fill-rule":"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7 4a1 1 0 11-2 0 1 1 0 012 0zm-1-9a1 1 0 00-1 1v4a1 1 0 102 0V6a1 1 0 00-1-1z","clip-rule":"evenodd"}})])}),[],!1,null,null,null).exports,bs=u({},(function(){var t=this,e=t._self._c;return e("svg",{attrs:{version:"1.1",xmlns:"http://www.w3.org/2000/svg",width:"28",height:"28",viewBox:"0 0 28 28",fill:"currentColor"}},[e("title",[t._v("exclamation-triangle")]),t._v(" "),e("path",{attrs:{d:"M16 21.484v-2.969c0-0.281-0.219-0.516-0.5-0.516h-3c-0.281 0-0.5 0.234-0.5 0.516v2.969c0 0.281 0.219 0.516 0.5 0.516h3c0.281 0 0.5-0.234 0.5-0.516zM15.969 15.641l0.281-7.172c0-0.094-0.047-0.219-0.156-0.297-0.094-0.078-0.234-0.172-0.375-0.172h-3.437c-0.141 0-0.281 0.094-0.375 0.172-0.109 0.078-0.156 0.234-0.156 0.328l0.266 7.141c0 0.203 0.234 0.359 0.531 0.359h2.891c0.281 0 0.516-0.156 0.531-0.359zM15.75 1.047l12 22c0.344 0.609 0.328 1.359-0.031 1.969s-1.016 0.984-1.719 0.984h-24c-0.703 0-1.359-0.375-1.719-0.984s-0.375-1.359-0.031-1.969l12-22c0.344-0.641 1.016-1.047 1.75-1.047s1.406 0.406 1.75 1.047z"}})])}),[],!1,null,null,null).exports,ys=u({},(function(){var t=this._self._c;return t("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"}},[t("path",{attrs:{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14"}})])}),[],!1,null,null,null).exports,ws=u({},(function(){var t=this._self._c;return t("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor"}},[t("path",{attrs:{"fill-rule":"evenodd",d:"M3 6a3 3 0 013-3h10a1 1 0 01.8 1.6L14.25 8l2.55 3.4A1 1 0 0116 13H6a1 1 0 00-1 1v3a1 1 0 11-2 0V6z","clip-rule":"evenodd"}})])}),[],!1,null,null,null).exports,Cs=u({},(function(){var t=this._self._c;return t("svg",{attrs:{"aria-hidden":"true",focusable:"false","data-prefix":"fab","data-icon":"github",role:"img",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 496 512"}},[t("path",{attrs:{fill:"currentColor",d:"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3 .3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5 .3-6.2 2.3zm44.2-1.7c-2.9 .7-4.9 2.6-4.6 4.9 .3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3 .7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3 .3 2.9 2.3 3.9 1.6 1 3.6 .7 4.3-.7 .7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3 .7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3 .7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"}})])}),[],!1,null,null,null).exports,Ss=u({},(function(){var t=this,e=t._self._c;return e("svg",{attrs:{viewBox:"0 0 100 100",version:"1.1",xmlns:"http://www.w3.org/2000/svg"}},[e("title",[t._v("info-circle")]),t._v(" "),e("desc",[t._v("Created with Sketch.")]),t._v(" "),e("defs"),t._v(" "),e("g",{attrs:{id:"Page-1",stroke:"none","stroke-width":"1",fill:"none","fill-rule":"evenodd"}},[e("g",{attrs:{id:"info-circle",fill:"currentColor"}},[e("path",{attrs:{d:"M66.6666667,81.25 L66.6666667,70.8333333 C66.6666667,69.6614583 65.7552083,68.75 64.5833333,68.75 L58.3333333,68.75 L58.3333333,35.4166667 C58.3333333,34.2447917 57.421875,33.3333333 56.25,33.3333333 L35.4166667,33.3333333 C34.2447917,33.3333333 33.3333333,34.2447917 33.3333333,35.4166667 L33.3333333,45.8333333 C33.3333333,47.0052083 34.2447917,47.9166667 35.4166667,47.9166667 L41.6666667,47.9166667 L41.6666667,68.75 L35.4166667,68.75 C34.2447917,68.75 33.3333333,69.6614583 33.3333333,70.8333333 L33.3333333,81.25 C33.3333333,82.421875 34.2447917,83.3333333 35.4166667,83.3333333 L64.5833333,83.3333333 C65.7552083,83.3333333 66.6666667,82.421875 66.6666667,81.25 Z M58.3333333,22.9166667 L58.3333333,12.5 C58.3333333,11.328125 57.421875,10.4166667 56.25,10.4166667 L43.75,10.4166667 C42.578125,10.4166667 41.6666667,11.328125 41.6666667,12.5 L41.6666667,22.9166667 C41.6666667,24.0885417 42.578125,25 43.75,25 L56.25,25 C57.421875,25 58.3333333,24.0885417 58.3333333,22.9166667 Z M100,50 C100,77.6041667 77.6041667,100 50,100 C22.3958333,100 0,77.6041667 0,50 C0,22.3958333 22.3958333,0 50,0 C77.6041667,0 100,22.3958333 100,50 Z",id:"Shape"}})])])])}),[],!1,null,null,null).exports,ks=u({},(function(){var t=this._self._c;return t("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor"}},[t("path",{attrs:{"fill-rule":"evenodd",d:"M12.586 4.586a2 2 0 112.828 2.828l-3 3a2 2 0 01-2.828 0 1 1 0 00-1.414 1.414 4 4 0 005.656 0l3-3a4 4 0 00-5.656-5.656l-1.5 1.5a1 1 0 101.414 1.414l1.5-1.5zm-5 5a2 2 0 012.828 0 1 1 0 101.414-1.414 4 4 0 00-5.656 0l-3 3a4 4 0 105.656 5.656l1.5-1.5a1 1 0 10-1.414-1.414l-1.5 1.5a2 2 0 11-2.828-2.828l3-3z","clip-rule":"evenodd"}})])}),[],!1,null,null,null).exports,As=u({},(function(){var t=this._self._c;return t("svg",{attrs:{"aria-hidden":"true",focusable:"false","data-prefix":"fas","data-icon":"plug",role:"img",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 384 512"}},[t("path",{attrs:{fill:"currentColor",d:"M320 32c0-17.62-14.38-32-32-32s-32 14.38-32 32v96h64V32zM368 159.1h-352c-8.875 0-16 7.125-16 16v32c0 8.875 7.125 16 16 16H32V256c0 76 53.5 141.6 128 156.8V512h64v-99.25C298.5 397.6 352 332 352 256V223.1h16c8.875 0 16-7.125 16-16v-32C384 167.1 376.9 159.1 368 159.1zM128 32c0-17.62-14.38-32-32-32S64 14.38 64 32v96h64V32z"}})])}),[],!1,null,null,null).exports,Ps=u({},(function(){var t=this,e=t._self._c;return e("svg",{attrs:{version:"1.1",xmlns:"http://www.w3.org/2000/svg",width:"26",height:"28",viewBox:"0 0 26 28",fill:"currentColor"}},[e("title",[t._v("search")]),t._v(" "),e("path",{attrs:{d:"M18 13c0-3.859-3.141-7-7-7s-7 3.141-7 7 3.141 7 7 7 7-3.141 7-7zM26 26c0 1.094-0.906 2-2 2-0.531 0-1.047-0.219-1.406-0.594l-5.359-5.344c-1.828 1.266-4.016 1.937-6.234 1.937-6.078 0-11-4.922-11-11s4.922-11 11-11 11 4.922 11 11c0 2.219-0.672 4.406-1.937 6.234l5.359 5.359c0.359 0.359 0.578 0.875 0.578 1.406z"}})])}),[],!1,null,null,null).exports,Ts=u({},(function(){var t=this._self._c;return t("svg",{attrs:{"aria-hidden":"true",focusable:"false","data-prefix":"fal","data-icon":"star-sharp",role:"img",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 576 512"}},[t("path",{attrs:{fill:"currentColor",d:"M537.8 181.6h-177.6l-54.89-169.1C302.6 4.19 295.3 0 288 0S273.4 4.19 270.7 12.57L215.8 181.6H38.21c-17.6 0-24.92 22.54-10.68 32.9l143.7 104.5L116.3 488.1C112.2 500.9 122.3 512 133.7 512c3.553 0 7.227-1.09 10.62-3.556L288 403.1l143.7 104.5C435.1 510.9 438.8 512 442.3 512c11.36 0 21.49-11.13 17.35-23.89l-54.89-169.1l143.7-104.5C562.7 204.2 555.4 181.6 537.8 181.6zM370.8 317.9l45.34 139.7l-118.7-86.3c-5.61-4.079-13.21-4.079-18.82 0l-118.7 86.3l45.34-139.7c2.139-6.589-.2054-13.81-5.808-17.88L80.7 213.6h146.8c6.933 0 13.08-4.465 15.22-11.06L288 62.96l45.33 139.6c2.141 6.594 8.285 11.06 15.22 11.06h146.8l-118.7 86.35C370.1 304.1 368.6 311.3 370.8 317.9z"}})])}),[],!1,null,null,null).exports,Es=u({},(function(){var t=this._self._c;return t("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"}},[t("path",{attrs:{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M21 12a9 9 0 01-9 9m9-9a9 9 0 00-9-9m9 9H3m9 9a9 9 0 01-9-9m9 9c1.657 0 3-4.03 3-9s-1.343-9-3-9m0 18c-1.657 0-3-4.03-3-9s1.343-9 3-9m-9 9a9 9 0 019-9"}})])}),[],!1,null,null,null).exports,Os=u({},(function(){var t=this._self._c;return t("svg",{attrs:{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor"}},[t("path",{attrs:{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M6 18L18 6M6 6l12 12"}})])}),[],!1,null,null,null).exports,Ms=u({props:{icon:String,size:{type:[String,Number],default:4}},components:{AlertIcon:hs,BookIcon:us,CheckIcon:ps,ChevronLeftIcon:fs,ChevronRightIcon:gs,ClipboardCopyIcon:vs,CopyIcon:ms,ExclamationCircleIcon:xs,ExclamationTriangleIcon:bs,ExternalLinkIcon:ys,FlagIcon:ws,GithubIcon:Cs,InfoCircleIcon:Ss,PlugIcon:As,LinkIcon:ks,SearchIcon:Ps,StarIcon:Ts,WorldIcon:Es,XIcon:Os},computed:{computedComponent:function(){return this.icon+"-icon"}}},(function(){var t=this;return(0,t._self._c)(t.computedComponent,{tag:"component",staticClass:"tw-align-middle tw-inline-block",class:{"tw-w-3 tw-h-3":3===parseInt(t.size),"tw-w-4 tw-h-4":4===parseInt(t.size),"tw-w-5 tw-h-5":5===parseInt(t.size),"tw-w-6 tw-h-6":6===parseInt(t.size),"tw-w-7 tw-h-7":7===parseInt(t.size),"tw-w-8 tw-h-8":8===parseInt(t.size),"tw-w-10 tw-h-10":10===parseInt(t.size),"tw-w-12 tw-h-12":12===parseInt(t.size),"tw-w-16 tw-h-16":16===parseInt(t.size)}})}),[],!1,null,null,null).exports;function Ls(t,e,i){return e in t?Object.defineProperty(t,e,{value:i,enumerable:!0,configurable:!0,writable:!0}):t[e]=i,t}var Is={props:{animationClass:{type:String},size:{type:String,default:"base"}}},_s=(i(2670),u(Is,(function(){var t=this,e=t._self._c;return e("div",{staticClass:"c-spinner",class:Ls({"tw-inline-block":!0},t.size,!0)},[e("div",{staticClass:"animation",class:[Ls({"tw-border-gray-400":!t.animationClass},t.animationClass,t.animationClass)]})])}),[],!1,null,null,null).exports),Ds=u({name:"TextboxComponent",props:{type:{type:String,default:"text"},value:{type:[String,Number],default:""}},computed:{computedType:function(){return"textarea"===this.type?null:this.type}}},(function(){var t=this;return(0,t._self._c)("input",{staticClass:"tw-rounded-md tw-bg-gray-50 tw-border tw-border-solid tw-px-3 tw-py-2 tw-border-gray-300 tw-text-sm",attrs:{type:t.computedType},domProps:{value:t.value},on:{blur:function(e){return t.$emit("blur",e)},focus:function(e){return t.$emit("focus",e.target.value)},change:function(e){return t.$emit("change",e)},input:function(e){return t.$emit("input",e.target.value)},keydown:function(e){return t.$emit("keydown",e)},keypress:function(e){return t.$emit("keypress",e)},keyup:function(e){return t.$emit("keyup",e)}}})}),[],!1,null,null,null).exports;function zs(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function Ns(t){for(var e=1;e1&&void 0!==arguments[1]?arguments[1]:",.0f";return Craft.formatNumber(t,e)})),e().filter("t",(function(t,e,i){return Craft.t(e,t,i)})),e().component("c-btn",ls),e().component("c-dropdown",ds),e().component("c-icon",Ms),e().component("c-spinner",_s),e().component("c-textbox",Ds),Garnish.$doc.ready((function(){Craft.initUiElements(),window.pluginStoreApp=new(e())({router:Ga,store:pn,render:function(t){return t(es)},components:{Modal:Ln,StatusMessage:Li,App:es},data:function(){return{allDataLoaded:!1,cartDataLoaded:!1,coreDataLoaded:!1,craftDataLoaded:!1,craftIdDataLoaded:!1,modalStep:null,pageTitle:"Plugin Store",plugin:null,pluginId:null,pluginLicenseInfoLoaded:!1,pluginStoreDataError:!1,showModal:!1,statusMessage:null}},computed:Ns(Ns({},(0,c.mapState)({cart:function(t){return t.cart.cart},craftId:function(t){return t.craft.craftId}})),{},{pluginStoreDataLoaded:function(){return this.coreDataLoaded&&this.pluginLicenseInfoLoaded}}),watch:{cart:function(t){this.$emit("cartChange",t)},craftId:function(){this.$emit("craftIdChange")}},methods:{displayNotice:function(t,e){Craft.cp.displayNotice(t,e)},displaySuccess:function(t,e){Craft.cp.displaySuccess(t,e)},displayError:function(t,e){Craft.cp.displayError(t,e)},openModal:function(t){this.modalStep=t,this.showModal=!0},closeModal:function(){this.showModal=!1},updateCraftId:function(t,e){var i=this;if(this.$store.commit("craft/updateCraftId",t),this.craftId&&this.craftId.email!==this.cart.email){var a={email:this.craftId.email};this.$store.dispatch("cart/saveCart",a).then((function(){i.$emit("craftIdUpdated"),e&&e()})).catch((function(t){throw i.$root.displayError("Couldn’t update cart’s email."),e&&e(),t}))}else this.$emit("craftIdUpdated"),e&&e()},initializeOuterComponents:function(){var t=this;$("#header h1").on("click",(function(){t.$router.push({path:"/"})}));var e=$("#cart-button");e.on("click",(function(e){e.preventDefault(),t.openModal("cart")})),e.keydown((function(e){switch(e.which){case 13:case 32:e.preventDefault(),t.openModal("cart")}})),this.$on("cartChange",(function(t){var i=0;t&&(i=t.totalQty),$(".badge",e).html(i)}));var i=$("#pluginstore-actions"),a=$("#pluginstore-actions-spinner");this.$on("dataLoaded",(function(){!t.pluginStoreDataLoaded||t.craftDataLoaded&&t.cartDataLoaded&&t.craftIdDataLoaded||a.removeClass("hidden")})),this.$on("allDataLoaded",(function(){i.removeClass("hidden"),a.addClass("hidden")}));var n=$("#craftid-account"),s=$("#craftid-connect-form"),r=$("#craftid-disconnect-form");this.$on("craftIdChange",(function(){this.craftId?($(".label",n).text(this.craftId.username),n.removeClass("hidden"),s.addClass("hidden"),r.removeClass("hidden")):(n.addClass("hidden"),s.removeClass("hidden"),r.addClass("hidden"))})),$("a[href]").on("click",(function(){t.$store.dispatch("craft/cancelRequests"),t.$store.dispatch("pluginStore/cancelRequests")}))},loadCartData:function(){var t=this;this.$store.dispatch("cart/getCart").then((function(){t.cartDataLoaded=!0,t.$emit("dataLoaded")}))},loadCraftData:function(t){var e=this;this.$store.dispatch("craft/getCraftData").then((function(){e.craftDataLoaded=!0,e.$emit("dataLoaded"),"function"==typeof t&&t()})).catch((function(){e.craftDataLoaded=!0}))},loadCraftIdData:function(){var t=this;if(window.craftIdAccessToken){var e=window.craftIdAccessToken;this.$store.dispatch("craft/getCraftIdData",{accessToken:e}).then((function(){t.craftIdDataLoaded=!0,t.$emit("dataLoaded")}))}else this.craftIdDataLoaded=!0,this.$emit("dataLoaded")},loadData:function(){var t=this;this.loadPluginStoreData(),this.loadCraftData((function(){t.loadCraftIdData(),t.loadCartData()}))},loadPluginStoreData:function(){var t=this;this.$store.dispatch("pluginStore/getCoreData").then((function(){t.coreDataLoaded=!0,t.$emit("dataLoaded")})).catch((function(e){if(!n().isCancel(e))throw t.pluginStoreDataError=!0,t.statusMessage=t.$options.filters.t("The Plugin Store is not available, please try again later.","app"),e})),this.$store.dispatch("craft/getPluginLicenseInfo").then((function(){t.pluginLicenseInfoLoaded=!0,t.$emit("dataLoaded")})).catch((function(t){if(!n().isCancel(t))throw t}))},onDataLoaded:function(){return this.pluginStoreDataLoaded&&this.craftDataLoaded&&this.cartDataLoaded&&this.craftIdDataLoaded?(this.allDataLoaded=!0,void this.$emit("allDataLoaded")):null}},created:function(){this.pageTitle=this.$options.filters.t("Plugin Store","app"),this.statusMessage=this.$options.filters.t("Loading Plugin Store…","app"),this.initializeOuterComponents(),this.$on("dataLoaded",this.onDataLoaded),this.loadData()}}).$mount("#app")}))}()}(); //# sourceMappingURL=app.js.map \ No newline at end of file diff --git a/src/web/assets/pluginstore/dist/js/app.js.map b/src/web/assets/pluginstore/dist/js/app.js.map index ad0d56ef487..f9ce61e9288 100644 --- a/src/web/assets/pluginstore/dist/js/app.js.map +++ b/src/web/assets/pluginstore/dist/js/app.js.map @@ -1 +1 @@ -{"version":3,"file":"js/app.js","mappings":"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","sources":["webpack:///../../../../../node_modules/accounting/accounting.js","webpack:///../../../../../node_modules/apexcharts/dist/apexcharts.min.js","webpack:///../../../../../node_modules/lodash/_DataView.js","webpack:///../../../../../node_modules/lodash/_Hash.js","webpack:///../../../../../node_modules/lodash/_ListCache.js","webpack:///../../../../../node_modules/lodash/_Map.js","webpack:///../../../../../node_modules/lodash/_MapCache.js","webpack:///../../../../../node_modules/lodash/_Promise.js","webpack:///../../../../../node_modules/lodash/_Set.js","webpack:///../../../../../node_modules/lodash/_SetCache.js","webpack:///../../../../../node_modules/lodash/_Stack.js","webpack:///../../../../../node_modules/lodash/_Symbol.js","webpack:///../../../../../node_modules/lodash/_Uint8Array.js","webpack:///../../../../../node_modules/lodash/_WeakMap.js","webpack:///../../../../../node_modules/lodash/_apply.js","webpack:///../../../../../node_modules/lodash/_arrayFilter.js","webpack:///../../../../../node_modules/lodash/_arrayLikeKeys.js","webpack:///../../../../../node_modules/lodash/_arrayPush.js","webpack:///../../../../../node_modules/lodash/_arraySome.js","webpack:///../../../../../node_modules/lodash/_assignMergeValue.js","webpack:///../../../../../node_modules/lodash/_assignValue.js","webpack:///../../../../../node_modules/lodash/_assocIndexOf.js","webpack:///../../../../../node_modules/lodash/_baseAssignValue.js","webpack:///../../../../../node_modules/lodash/_baseCreate.js","webpack:///../../../../../node_modules/lodash/_baseFor.js","webpack:///../../../../../node_modules/lodash/_baseGetAllKeys.js","webpack:///../../../../../node_modules/lodash/_baseGetTag.js","webpack:///../../../../../node_modules/lodash/_baseIsArguments.js","webpack:///../../../../../node_modules/lodash/_baseIsEqual.js","webpack:///../../../../../node_modules/lodash/_baseIsEqualDeep.js","webpack:///../../../../../node_modules/lodash/_baseIsNative.js","webpack:///../../../../../node_modules/lodash/_baseIsTypedArray.js","webpack:///../../../../../node_modules/lodash/_baseKeys.js","webpack:///../../../../../node_modules/lodash/_baseKeysIn.js","webpack:///../../../../../node_modules/lodash/_baseMerge.js","webpack:///../../../../../node_modules/lodash/_baseMergeDeep.js","webpack:///../../../../../node_modules/lodash/_baseRest.js","webpack:///../../../../../node_modules/lodash/_baseSetToString.js","webpack:///../../../../../node_modules/lodash/_baseTimes.js","webpack:///../../../../../node_modules/lodash/_baseUnary.js","webpack:///../../../../../node_modules/lodash/_cacheHas.js","webpack:///../../../../../node_modules/lodash/_cloneArrayBuffer.js","webpack:///../../../../../node_modules/lodash/_cloneBuffer.js","webpack:///../../../../../node_modules/lodash/_cloneTypedArray.js","webpack:///../../../../../node_modules/lodash/_copyArray.js","webpack:///../../../../../node_modules/lodash/_copyObject.js","webpack:///../../../../../node_modules/lodash/_coreJsData.js","webpack:///../../../../../node_modules/lodash/_createAssigner.js","webpack:///../../../../../node_modules/lodash/_createBaseFor.js","webpack:///../../../../../node_modules/lodash/_defineProperty.js","webpack:///../../../../../node_modules/lodash/_equalArrays.js","webpack:///../../../../../node_modules/lodash/_equalByTag.js","webpack:///../../../../../node_modules/lodash/_equalObjects.js","webpack:///../../../../../node_modules/lodash/_freeGlobal.js","webpack:///../../../../../node_modules/lodash/_getAllKeys.js","webpack:///../../../../../node_modules/lodash/_getMapData.js","webpack:///../../../../../node_modules/lodash/_getNative.js","webpack:///../../../../../node_modules/lodash/_getPrototype.js","webpack:///../../../../../node_modules/lodash/_getRawTag.js","webpack:///../../../../../node_modules/lodash/_getSymbols.js","webpack:///../../../../../node_modules/lodash/_getTag.js","webpack:///../../../../../node_modules/lodash/_getValue.js","webpack:///../../../../../node_modules/lodash/_hashClear.js","webpack:///../../../../../node_modules/lodash/_hashDelete.js","webpack:///../../../../../node_modules/lodash/_hashGet.js","webpack:///../../../../../node_modules/lodash/_hashHas.js","webpack:///../../../../../node_modules/lodash/_hashSet.js","webpack:///../../../../../node_modules/lodash/_initCloneObject.js","webpack:///../../../../../node_modules/lodash/_isIndex.js","webpack:///../../../../../node_modules/lodash/_isIterateeCall.js","webpack:///../../../../../node_modules/lodash/_isKeyable.js","webpack:///../../../../../node_modules/lodash/_isMasked.js","webpack:///../../../../../node_modules/lodash/_isPrototype.js","webpack:///../../../../../node_modules/lodash/_listCacheClear.js","webpack:///../../../../../node_modules/lodash/_listCacheDelete.js","webpack:///../../../../../node_modules/lodash/_listCacheGet.js","webpack:///../../../../../node_modules/lodash/_listCacheHas.js","webpack:///../../../../../node_modules/lodash/_listCacheSet.js","webpack:///../../../../../node_modules/lodash/_mapCacheClear.js","webpack:///../../../../../node_modules/lodash/_mapCacheDelete.js","webpack:///../../../../../node_modules/lodash/_mapCacheGet.js","webpack:///../../../../../node_modules/lodash/_mapCacheHas.js","webpack:///../../../../../node_modules/lodash/_mapCacheSet.js","webpack:///../../../../../node_modules/lodash/_mapToArray.js","webpack:///../../../../../node_modules/lodash/_nativeCreate.js","webpack:///../../../../../node_modules/lodash/_nativeKeys.js","webpack:///../../../../../node_modules/lodash/_nativeKeysIn.js","webpack:///../../../../../node_modules/lodash/_nodeUtil.js","webpack:///../../../../../node_modules/lodash/_objectToString.js","webpack:///../../../../../node_modules/lodash/_overArg.js","webpack:///../../../../../node_modules/lodash/_overRest.js","webpack:///../../../../../node_modules/lodash/_root.js","webpack:///../../../../../node_modules/lodash/_safeGet.js","webpack:///../../../../../node_modules/lodash/_setCacheAdd.js","webpack:///../../../../../node_modules/lodash/_setCacheHas.js","webpack:///../../../../../node_modules/lodash/_setToArray.js","webpack:///../../../../../node_modules/lodash/_setToString.js","webpack:///../../../../../node_modules/lodash/_shortOut.js","webpack:///../../../../../node_modules/lodash/_stackClear.js","webpack:///../../../../../node_modules/lodash/_stackDelete.js","webpack:///../../../../../node_modules/lodash/_stackGet.js","webpack:///../../../../../node_modules/lodash/_stackHas.js","webpack:///../../../../../node_modules/lodash/_stackSet.js","webpack:///../../../../../node_modules/lodash/_toSource.js","webpack:///../../../../../node_modules/lodash/constant.js","webpack:///../../../../../node_modules/lodash/eq.js","webpack:///../../../../../node_modules/lodash/identity.js","webpack:///../../../../../node_modules/lodash/isArguments.js","webpack:///../../../../../node_modules/lodash/isArray.js","webpack:///../../../../../node_modules/lodash/isArrayLike.js","webpack:///../../../../../node_modules/lodash/isArrayLikeObject.js","webpack:///../../../../../node_modules/lodash/isBuffer.js","webpack:///../../../../../node_modules/lodash/isEqual.js","webpack:///../../../../../node_modules/lodash/isFunction.js","webpack:///../../../../../node_modules/lodash/isLength.js","webpack:///../../../../../node_modules/lodash/isObject.js","webpack:///../../../../../node_modules/lodash/isObjectLike.js","webpack:///../../../../../node_modules/lodash/isPlainObject.js","webpack:///../../../../../node_modules/lodash/isTypedArray.js","webpack:///../../../../../node_modules/lodash/keys.js","webpack:///../../../../../node_modules/lodash/keysIn.js","webpack:///../../../../../node_modules/lodash/merge.js","webpack:///../../../../../node_modules/lodash/stubArray.js","webpack:///../../../../../node_modules/lodash/stubFalse.js","webpack:///../../../../../node_modules/lodash/toPlainObject.js","webpack:///../../../../../node_modules/ssr-window/dist/ssr-window.esm.js","webpack:///../../../../../node_modules/dom7/dist/dom7.modular.js","webpack:///../../../../../node_modules/swiper/js/swiper.esm.bundle.js","webpack:///../../../../../node_modules/vue-apexcharts/dist/vue-apexcharts.js","webpack:///../../../../../node_modules/vue-awesome-swiper/dist/vue-awesome-swiper.js","webpack:///../../../../../node_modules/swiper/css/swiper.css?bfa6","webpack:///./App.vue?f8be","webpack:///./App.vue?be52","webpack:///./js/components/ActiveInstallsChart.vue?4679","webpack:///./js/components/CategorySelector.vue?eb51","webpack:///./js/components/ChangelogRelease.vue?f713","webpack:///./js/components/EditionBadge.vue?2516","webpack:///./js/components/InfoHud.vue?eaec","webpack:///./js/components/LicenseStatus.vue?f504","webpack:///./js/components/PluginActions.vue?bef0","webpack:///./js/components/PluginCard.vue?c495","webpack:///./js/components/ScreenshotModal.vue?a88f","webpack:///./js/components/StatusMessage.vue?f64a","webpack:///./js/components/modal/Modal.vue?30f4","webpack:///./js/components/ui/CBtn.vue?a871","webpack:///./js/components/ui/CDropdown.vue?749c","webpack:///./js/components/ui/CSpinner.vue?e567","webpack:///./js/components/upgradecraft/CmsEdition.vue?d191","webpack:///../../../../../node_modules/vue-style-loader/lib/listToStyles.js","webpack:///../../../../../node_modules/vue-style-loader/lib/addStylesClient.js","webpack:///external var \"Vue\"","webpack:///webpack/bootstrap","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/global","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///webpack/runtime/make namespace object","webpack:///webpack/runtime/node module decorator","webpack:///external var \"axios\"","webpack:///external var \"VueRouter\"","webpack:///external var \"Vuex\"","webpack:///./js/components/EditionBadge.vue?4699","webpack:///js/components/EditionBadge.vue","webpack:///../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack:///./js/components/EditionBadge.vue?9ebe","webpack:///./js/components/EditionBadge.vue?29bf","webpack:///js/components/PluginCard.vue","webpack:///./js/components/PluginCard.vue?3274","webpack:///./js/components/PluginCard.vue?261b","webpack:///./js/components/PluginCard.vue?8ef2","webpack:///./js/components/PluginGrid.vue","webpack:///js/components/PluginGrid.vue","webpack:///./js/components/PluginGrid.vue?2992","webpack:///js/pages/index.vue","webpack:///./js/pages/index.vue","webpack:///./js/pages/index.vue?8b11","webpack:///./js/pages/index.vue?a737","webpack:///js/components/SortMenuBtn.vue","webpack:///./js/components/SortMenuBtn.vue","webpack:///./js/components/SortMenuBtn.vue?e649","webpack:///./js/components/SortMenuBtn.vue?c19b","webpack:///js/components/PluginIndex.vue","webpack:///./js/components/PluginIndexSort.vue","webpack:///js/components/PluginIndexSort.vue","webpack:///./js/components/PluginIndexSort.vue?3ba8","webpack:///./js/components/PluginIndex.vue","webpack:///./js/components/PluginIndex.vue?5560","webpack:///./js/components/PluginIndex.vue?39c8","webpack:///js/pages/categories/_id.vue","webpack:///./js/pages/categories/_id.vue","webpack:///./js/pages/categories/_id.vue?422a","webpack:///./js/pages/categories/_id.vue?cbcf","webpack:///../../../../../node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///../../../../../node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///../../../../../node_modules/@babel/runtime/helpers/esm/createClass.js","webpack:///../../../../../node_modules/popper.js/dist/esm/popper.js","webpack:///../../../../../node_modules/vue-resize/dist/vue-resize.esm.js","webpack:///../../../../../node_modules/v-tooltip/dist/v-tooltip.esm.js","webpack:///../../../../../node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack:///js/components/InfoHud.vue","webpack:///./js/components/InfoHud.vue?5e9b","webpack:///./js/components/InfoHud.vue?77cf","webpack:///js/components/upgradecraft/StatusBadge.vue","webpack:///./js/components/LicenseStatus.vue?5b1f","webpack:///js/components/LicenseStatus.vue","webpack:///./js/components/LicenseStatus.vue?bc0f","webpack:///./js/components/upgradecraft/StatusBadge.vue","webpack:///./js/components/upgradecraft/StatusBadge.vue?84b3","webpack:///./js/components/upgradecraft/StatusBadge.vue?5107","webpack:///js/components/upgradecraft/BuyBtn.vue","webpack:///js/components/upgradecraft/CmsEdition.vue","webpack:///./js/components/upgradecraft/CmsEdition.vue?c37b","webpack:///./js/components/upgradecraft/BuyBtn.vue","webpack:///./js/components/upgradecraft/BuyBtn.vue?090a","webpack:///./js/components/upgradecraft/BuyBtn.vue?b85d","webpack:///js/components/upgradecraft/CmsEditions.vue","webpack:///./js/components/upgradecraft/CmsEdition.vue?eed5","webpack:///./js/components/upgradecraft/CmsEdition.vue?60eb","webpack:///./js/components/upgradecraft/CmsEditions.vue","webpack:///./js/components/upgradecraft/CmsEditions.vue?9444","webpack:///./js/components/upgradecraft/CmsEditions.vue?5aac","webpack:///./js/pages/upgrade-craft.vue","webpack:///js/pages/upgrade-craft.vue","webpack:///./js/pages/upgrade-craft.vue?f461","webpack:///./js/components/partner/icons/EnterpriseVerifiedIcon.vue","webpack:///./js/components/partner/icons/EnterpriseVerifiedIcon.vue?d216","webpack:///./js/components/partner/icons/CraftCommerceVerifiedIcon.vue","webpack:///./js/components/partner/icons/CraftCommerceVerifiedIcon.vue?b477","webpack:///./js/components/partner/icons/CraftVerifiedIcon.vue","webpack:///./js/components/partner/icons/CraftVerifiedIcon.vue?0d20","webpack:///./js/components/partner/PartnerBadge.vue","webpack:///js/components/partner/PartnerBadge.vue","webpack:///./js/components/partner/PartnerBadge.vue?dfc9","webpack:///js/pages/developer/_id.vue","webpack:///./js/pages/developer/_id.vue","webpack:///./js/pages/developer/_id.vue?2e89","webpack:///./js/pages/developer/_id.vue?f8fe","webpack:///js/pages/featured/_handle.vue","webpack:///./js/pages/featured/_handle.vue","webpack:///./js/pages/featured/_handle.vue?4b68","webpack:///./js/pages/featured/_handle.vue?f12f","webpack:///./js/utils/api.js","webpack:///./js/api/pluginstore.js","webpack:///./js/components/StatusMessage.vue?2651","webpack:///js/components/StatusMessage.vue","webpack:///./js/components/StatusMessage.vue?f0d7","webpack:///js/pages/buy/_plugin.vue","webpack:///./js/pages/buy/_plugin.vue","webpack:///./js/pages/buy/_plugin.vue?3a90","webpack:///./js/pages/buy/_plugin.vue?6950","webpack:///js/pages/buy-all-trials.vue","webpack:///./js/pages/buy-all-trials.vue","webpack:///./js/pages/buy-all-trials.vue?cf6c","webpack:///./js/pages/buy-all-trials.vue?c686","webpack:///./js/pages/tests.vue","webpack:///js/pages/tests.vue","webpack:///./js/pages/tests.vue?831e","webpack:///./js/pages/_not-found.vue","webpack:///js/pages/_not-found.vue","webpack:///./js/pages/_not-found.vue?43f4","webpack:///./js/components/SearchTabs.vue","webpack:///js/components/SearchTabs.vue","webpack:///./js/components/SearchTabs.vue?b2e9","webpack:///js/components/DeveloperIndex.vue","webpack:///js/pages/search.vue","webpack:///./js/components/DeveloperIndex.vue","webpack:///./js/components/DeveloperIndex.vue?b43c","webpack:///./js/components/DeveloperIndex.vue?0463","webpack:///./js/pages/search.vue","webpack:///./js/pages/search.vue?09de","webpack:///./js/pages/search.vue?11d4","webpack:///./js/components/PluginScreenshots.vue","webpack:///js/components/PluginScreenshots.vue","webpack:///./js/components/PluginScreenshots.vue?4736","webpack:///./js/mixins/licenses.js","webpack:///./js/components/MetaStat.vue","webpack:///js/components/MetaStat.vue","webpack:///./js/components/MetaStat.vue?aedc","webpack:///./js/utils/plugins.js","webpack:///js/components/PluginActions.vue","webpack:///./js/components/PluginActions.vue?421e","webpack:///./js/components/PluginEditionPrice.vue","webpack:///js/components/PluginEditionPrice.vue","webpack:///./js/components/PluginEditionPrice.vue?14fd","webpack:///./js/components/PluginActions.vue?292e","webpack:///./js/components/PluginActions.vue?26a6","webpack:///js/components/PluginEdition.vue","webpack:///./js/components/PluginEdition.vue","webpack:///./js/components/PluginEdition.vue?8493","webpack:///./js/components/PluginEdition.vue?6eb0","webpack:///./js/components/PluginMetaBuyButton.vue","webpack:///js/components/PluginMetaBuyButton.vue","webpack:///./js/components/PluginMetaBuyButton.vue?e76e","webpack:///./js/components/InstallPlugin.vue","webpack:///js/components/InstallPlugin.vue","webpack:///./js/components/InstallPlugin.vue?691e","webpack:///./js/components/github-activity/ActivityStat.vue","webpack:///./js/components/github-activity/ActivityStat.vue?18e6","webpack:///./js/components/github-activity/GithubActivity.vue","webpack:///js/components/github-activity/GithubActivity.vue","webpack:///./js/components/github-activity/GithubActivity.vue?6bf8","webpack:///./js/components/ActiveInstallsChart.vue?22f2","webpack:///js/components/ActiveInstallsChart.vue","webpack:///./js/components/ActiveInstallsChart.vue?e366","webpack:///./js/components/ActiveInstallsChart.vue?be9c","webpack:///js/components/PluginMeta.vue","webpack:///./js/components/ActiveInstalls.vue","webpack:///js/components/ActiveInstalls.vue","webpack:///./js/components/ActiveInstalls.vue?cc73","webpack:///./js/components/PluginMeta.vue","webpack:///./js/components/PluginMeta.vue?53aa","webpack:///./js/components/PluginMeta.vue?c9d8","webpack:///js/components/PluginLayout.vue","webpack:///./js/components/PluginLayout.vue","webpack:///./js/components/PluginLayout.vue?a49f","webpack:///./js/components/PluginLayout.vue?9bc0","webpack:///js/pages/_handle/index.vue","webpack:///./js/pages/_handle/index.vue","webpack:///./js/pages/_handle/index.vue?4847","webpack:///./js/pages/_handle/index.vue?a9da","webpack:///js/pages/_handle/editions.vue","webpack:///./js/components/PluginEditions.vue","webpack:///js/components/PluginEditions.vue","webpack:///./js/components/PluginEditions.vue?cacd","webpack:///./js/pages/_handle/editions.vue","webpack:///./js/pages/_handle/editions.vue?ceb8","webpack:///./js/pages/_handle/editions.vue?350d","webpack:///./js/components/ChangelogRelease.vue?19dc","webpack:///js/components/ChangelogRelease.vue","webpack:///js/pages/_handle/changelog.vue","webpack:///./js/components/ChangelogRelease.vue?03bc","webpack:///./js/components/ChangelogRelease.vue?850d","webpack:///./js/pages/_handle/changelog.vue","webpack:///./js/pages/_handle/changelog.vue?3ab8","webpack:///./js/pages/_handle/changelog.vue?d1a2","webpack:///./js/router/index.js","webpack:///./js/store/modules/cart.js","webpack:///./js/api/cart.js","webpack:///./js/api/developerIndex.js","webpack:///./js/utils/elementIndex.js","webpack:///./js/store/modules/developer-index.js","webpack:///./js/store/modules/plugin-store.js","webpack:///./js/store/modules/craft.js","webpack:///./js/api/craft.js","webpack:///./js/store/index.js","webpack:///./js/store/modules/app.js","webpack:///./js/components/modal/Step.vue","webpack:///./js/components/modal/Step.vue?9fcc","webpack:///./js/components/modal/steps/cart/ActiveTrial.vue","webpack:///js/components/modal/steps/cart/ActiveTrial.vue","webpack:///./js/components/modal/steps/cart/ActiveTrial.vue?ed19","webpack:///js/components/modal/steps/cart/ActiveTrials.vue","webpack:///./js/components/modal/steps/cart/ActiveTrials.vue","webpack:///./js/components/modal/steps/cart/ActiveTrials.vue?8acc","webpack:///./js/components/modal/steps/cart/ActiveTrials.vue?81d3","webpack:///js/components/modal/steps/cart/ItemIcon.vue","webpack:///./js/components/modal/steps/cart/ItemIcon.vue","webpack:///./js/components/modal/steps/cart/ItemIcon.vue?84e5","webpack:///./js/components/modal/steps/cart/ItemIcon.vue?480a","webpack:///./js/components/modal/steps/cart/ItemName.vue","webpack:///js/components/modal/steps/cart/ItemName.vue","webpack:///./js/components/modal/steps/cart/ItemName.vue?1421","webpack:///js/components/modal/steps/Cart.vue","webpack:///./js/components/modal/steps/cart/ItemAdjustments.vue","webpack:///js/components/modal/steps/cart/ItemAdjustments.vue","webpack:///./js/components/modal/steps/cart/ItemAdjustments.vue?a78c","webpack:///./js/components/modal/Modal.vue?aa76","webpack:///js/components/modal/Modal.vue","webpack:///./js/components/modal/steps/Cart.vue","webpack:///./js/components/modal/steps/Cart.vue?8f04","webpack:///./js/components/modal/steps/Cart.vue?087c","webpack:///./js/components/modal/Modal.vue?5f2a","webpack:///./js/components/modal/Modal.vue?f432","webpack:///js/components/NavItems.vue","webpack:///./js/components/NavItems.vue","webpack:///./js/components/NavItems.vue?fa6a","webpack:///./js/components/NavItems.vue?a5ab","webpack:///js/components/CategorySelector.vue","webpack:///./js/components/CategorySelector.vue?416d","webpack:///./js/components/CategorySelector.vue?9bd2","webpack:///./js/components/CategorySelector.vue?fadb","webpack:///./js/components/PluginSearch.vue","webpack:///js/components/PluginSearch.vue","webpack:///./js/components/PluginSearch.vue?2bcb","webpack:///./js/components/Sidebar.vue","webpack:///js/components/Sidebar.vue","webpack:///./js/components/Sidebar.vue?0d0f","webpack:///js/components/ScreenshotModal.vue","webpack:///./js/components/ScreenshotModal.vue?9252","webpack:///./js/components/ScreenshotModal.vue?95fc","webpack:///./js/components/ScreenshotModal.vue?7c98","webpack:///./App.vue","webpack:///./App.vue?20a9","webpack:///./App.vue?397a","webpack:///./App.vue?cd92","webpack:///./js/plugins/vue-awesome-swiper.js","webpack:///./js/plugins/vue-apex-charts.js","webpack:///./js/components/ui/CBtn.vue?0014","webpack:///./js/components/ui/CBtn.vue?65c4","webpack:///js/components/ui/CBtn.vue","webpack:///./js/components/ui/CBtn.vue?cde4","webpack:///./js/components/ui/CDropdown.vue?285a","webpack:///js/components/ui/CDropdown.vue","webpack:///./js/components/ui/CDropdown.vue?eeb7","webpack:///./js/components/ui/CDropdown.vue?a103","webpack:///./js/components/ui/icons/AlertIcon.vue","webpack:///./js/components/ui/icons/AlertIcon.vue?e64c","webpack:///./js/components/ui/icons/BookIcon.vue","webpack:///./js/components/ui/icons/BookIcon.vue?5f8b","webpack:///./js/components/ui/icons/CheckIcon.vue","webpack:///./js/components/ui/icons/CheckIcon.vue?5d72","webpack:///./js/components/ui/icons/ChevronLeftIcon.vue","webpack:///./js/components/ui/icons/ChevronLeftIcon.vue?3832","webpack:///./js/components/ui/icons/ChevronRightIcon.vue","webpack:///./js/components/ui/icons/ChevronRightIcon.vue?982f","webpack:///./js/components/ui/icons/ClipboardCopyIcon.vue","webpack:///./js/components/ui/icons/ClipboardCopyIcon.vue?05d9","webpack:///./js/components/ui/icons/CopyIcon.vue","webpack:///./js/components/ui/icons/CopyIcon.vue?46cc","webpack:///./js/components/ui/icons/ExclamationCircleIcon.vue","webpack:///./js/components/ui/icons/ExclamationCircleIcon.vue?c75f","webpack:///./js/components/ui/icons/ExclamationTriangleIcon.vue","webpack:///./js/components/ui/icons/ExclamationTriangleIcon.vue?4a12","webpack:///./js/components/ui/icons/ExternalLinkIcon.vue","webpack:///./js/components/ui/icons/ExternalLinkIcon.vue?406d","webpack:///./js/components/ui/icons/FlagIcon.vue","webpack:///./js/components/ui/icons/FlagIcon.vue?82c5","webpack:///./js/components/ui/icons/GithubIcon.vue","webpack:///./js/components/ui/icons/GithubIcon.vue?d565","webpack:///./js/components/ui/icons/InfoCircleIcon.vue","webpack:///./js/components/ui/icons/InfoCircleIcon.vue?8451","webpack:///./js/components/ui/icons/LinkIcon.vue","webpack:///./js/components/ui/icons/LinkIcon.vue?1830","webpack:///./js/components/ui/icons/PlugIcon.vue","webpack:///./js/components/ui/icons/PlugIcon.vue?c7e8","webpack:///./js/components/ui/icons/SearchIcon.vue","webpack:///./js/components/ui/icons/SearchIcon.vue?f318","webpack:///./js/components/ui/icons/StarIcon.vue","webpack:///./js/components/ui/icons/StarIcon.vue?c68d","webpack:///./js/components/ui/icons/WorldIcon.vue","webpack:///./js/components/ui/icons/WorldIcon.vue?e1e6","webpack:///./js/components/ui/icons/XIcon.vue","webpack:///./js/components/ui/icons/XIcon.vue?5040","webpack:///./js/components/ui/CIcon.vue","webpack:///js/components/ui/CIcon.vue","webpack:///./js/components/ui/CIcon.vue?9fb9","webpack:///./js/components/ui/CSpinner.vue?d126","webpack:///js/components/ui/CSpinner.vue","webpack:///./js/components/ui/CSpinner.vue?75e7","webpack:///./js/components/ui/CSpinner.vue?27b7","webpack:///./js/components/ui/CTextbox.vue","webpack:///js/components/ui/CTextbox.vue","webpack:///./js/components/ui/CTextbox.vue?af31","webpack:///./main.js","webpack:///./js/filters/currency.js","webpack:///./js/filters/craft.js"],"sourcesContent":["/*!\n * accounting.js v0.4.1\n * Copyright 2014 Open Exchange Rates\n *\n * Freely distributable under the MIT license.\n * Portions of accounting.js are inspired or borrowed from underscore.js\n *\n * Full details and documentation:\n * http://openexchangerates.github.io/accounting.js/\n */\n\n(function(root, undefined) {\n\n\t/* --- Setup --- */\n\n\t// Create the local library object, to be exported or referenced globally later\n\tvar lib = {};\n\n\t// Current version\n\tlib.version = '0.4.1';\n\n\n\t/* --- Exposed settings --- */\n\n\t// The library's settings configuration object. Contains default parameters for\n\t// currency and number formatting\n\tlib.settings = {\n\t\tcurrency: {\n\t\t\tsymbol : \"$\",\t\t// default currency symbol is '$'\n\t\t\tformat : \"%s%v\",\t// controls output: %s = symbol, %v = value (can be object, see docs)\n\t\t\tdecimal : \".\",\t\t// decimal point separator\n\t\t\tthousand : \",\",\t\t// thousands separator\n\t\t\tprecision : 2,\t\t// decimal places\n\t\t\tgrouping : 3\t\t// digit grouping (not implemented yet)\n\t\t},\n\t\tnumber: {\n\t\t\tprecision : 0,\t\t// default precision on numbers is 0\n\t\t\tgrouping : 3,\t\t// digit grouping (not implemented yet)\n\t\t\tthousand : \",\",\n\t\t\tdecimal : \".\"\n\t\t}\n\t};\n\n\n\t/* --- Internal Helper Methods --- */\n\n\t// Store reference to possibly-available ECMAScript 5 methods for later\n\tvar nativeMap = Array.prototype.map,\n\t\tnativeIsArray = Array.isArray,\n\t\ttoString = Object.prototype.toString;\n\n\t/**\n\t * Tests whether supplied parameter is a string\n\t * from underscore.js\n\t */\n\tfunction isString(obj) {\n\t\treturn !!(obj === '' || (obj && obj.charCodeAt && obj.substr));\n\t}\n\n\t/**\n\t * Tests whether supplied parameter is a string\n\t * from underscore.js, delegates to ECMA5's native Array.isArray\n\t */\n\tfunction isArray(obj) {\n\t\treturn nativeIsArray ? nativeIsArray(obj) : toString.call(obj) === '[object Array]';\n\t}\n\n\t/**\n\t * Tests whether supplied parameter is a true object\n\t */\n\tfunction isObject(obj) {\n\t\treturn obj && toString.call(obj) === '[object Object]';\n\t}\n\n\t/**\n\t * Extends an object with a defaults object, similar to underscore's _.defaults\n\t *\n\t * Used for abstracting parameter handling from API methods\n\t */\n\tfunction defaults(object, defs) {\n\t\tvar key;\n\t\tobject = object || {};\n\t\tdefs = defs || {};\n\t\t// Iterate over object non-prototype properties:\n\t\tfor (key in defs) {\n\t\t\tif (defs.hasOwnProperty(key)) {\n\t\t\t\t// Replace values with defaults only if undefined (allow empty/zero values):\n\t\t\t\tif (object[key] == null) object[key] = defs[key];\n\t\t\t}\n\t\t}\n\t\treturn object;\n\t}\n\n\t/**\n\t * Implementation of `Array.map()` for iteration loops\n\t *\n\t * Returns a new Array as a result of calling `iterator` on each array value.\n\t * Defers to native Array.map if available\n\t */\n\tfunction map(obj, iterator, context) {\n\t\tvar results = [], i, j;\n\n\t\tif (!obj) return results;\n\n\t\t// Use native .map method if it exists:\n\t\tif (nativeMap && obj.map === nativeMap) return obj.map(iterator, context);\n\n\t\t// Fallback for native .map:\n\t\tfor (i = 0, j = obj.length; i < j; i++ ) {\n\t\t\tresults[i] = iterator.call(context, obj[i], i, obj);\n\t\t}\n\t\treturn results;\n\t}\n\n\t/**\n\t * Check and normalise the value of precision (must be positive integer)\n\t */\n\tfunction checkPrecision(val, base) {\n\t\tval = Math.round(Math.abs(val));\n\t\treturn isNaN(val)? base : val;\n\t}\n\n\n\t/**\n\t * Parses a format string or object and returns format obj for use in rendering\n\t *\n\t * `format` is either a string with the default (positive) format, or object\n\t * containing `pos` (required), `neg` and `zero` values (or a function returning\n\t * either a string or object)\n\t *\n\t * Either string or format.pos must contain \"%v\" (value) to be valid\n\t */\n\tfunction checkCurrencyFormat(format) {\n\t\tvar defaults = lib.settings.currency.format;\n\n\t\t// Allow function as format parameter (should return string or object):\n\t\tif ( typeof format === \"function\" ) format = format();\n\n\t\t// Format can be a string, in which case `value` (\"%v\") must be present:\n\t\tif ( isString( format ) && format.match(\"%v\") ) {\n\n\t\t\t// Create and return positive, negative and zero formats:\n\t\t\treturn {\n\t\t\t\tpos : format,\n\t\t\t\tneg : format.replace(\"-\", \"\").replace(\"%v\", \"-%v\"),\n\t\t\t\tzero : format\n\t\t\t};\n\n\t\t// If no format, or object is missing valid positive value, use defaults:\n\t\t} else if ( !format || !format.pos || !format.pos.match(\"%v\") ) {\n\n\t\t\t// If defaults is a string, casts it to an object for faster checking next time:\n\t\t\treturn ( !isString( defaults ) ) ? defaults : lib.settings.currency.format = {\n\t\t\t\tpos : defaults,\n\t\t\t\tneg : defaults.replace(\"%v\", \"-%v\"),\n\t\t\t\tzero : defaults\n\t\t\t};\n\n\t\t}\n\t\t// Otherwise, assume format was fine:\n\t\treturn format;\n\t}\n\n\n\t/* --- API Methods --- */\n\n\t/**\n\t * Takes a string/array of strings, removes all formatting/cruft and returns the raw float value\n\t * Alias: `accounting.parse(string)`\n\t *\n\t * Decimal must be included in the regular expression to match floats (defaults to\n\t * accounting.settings.number.decimal), so if the number uses a non-standard decimal \n\t * separator, provide it as the second argument.\n\t *\n\t * Also matches bracketed negatives (eg. \"$ (1.99)\" => -1.99)\n\t *\n\t * Doesn't throw any errors (`NaN`s become 0) but this may change in future\n\t */\n\tvar unformat = lib.unformat = lib.parse = function(value, decimal) {\n\t\t// Recursively unformat arrays:\n\t\tif (isArray(value)) {\n\t\t\treturn map(value, function(val) {\n\t\t\t\treturn unformat(val, decimal);\n\t\t\t});\n\t\t}\n\n\t\t// Fails silently (need decent errors):\n\t\tvalue = value || 0;\n\n\t\t// Return the value as-is if it's already a number:\n\t\tif (typeof value === \"number\") return value;\n\n\t\t// Default decimal point comes from settings, but could be set to eg. \",\" in opts:\n\t\tdecimal = decimal || lib.settings.number.decimal;\n\n\t\t // Build regex to strip out everything except digits, decimal point and minus sign:\n\t\tvar regex = new RegExp(\"[^0-9-\" + decimal + \"]\", [\"g\"]),\n\t\t\tunformatted = parseFloat(\n\t\t\t\t(\"\" + value)\n\t\t\t\t.replace(/\\((.*)\\)/, \"-$1\") // replace bracketed values with negatives\n\t\t\t\t.replace(regex, '') // strip out any cruft\n\t\t\t\t.replace(decimal, '.') // make sure decimal point is standard\n\t\t\t);\n\n\t\t// This will fail silently which may cause trouble, let's wait and see:\n\t\treturn !isNaN(unformatted) ? unformatted : 0;\n\t};\n\n\n\t/**\n\t * Implementation of toFixed() that treats floats more like decimals\n\t *\n\t * Fixes binary rounding issues (eg. (0.615).toFixed(2) === \"0.61\") that present\n\t * problems for accounting- and finance-related software.\n\t */\n\tvar toFixed = lib.toFixed = function(value, precision) {\n\t\tprecision = checkPrecision(precision, lib.settings.number.precision);\n\t\tvar power = Math.pow(10, precision);\n\n\t\t// Multiply up by precision, round accurately, then divide and use native toFixed():\n\t\treturn (Math.round(lib.unformat(value) * power) / power).toFixed(precision);\n\t};\n\n\n\t/**\n\t * Format a number, with comma-separated thousands and custom precision/decimal places\n\t * Alias: `accounting.format()`\n\t *\n\t * Localise by overriding the precision and thousand / decimal separators\n\t * 2nd parameter `precision` can be an object matching `settings.number`\n\t */\n\tvar formatNumber = lib.formatNumber = lib.format = function(number, precision, thousand, decimal) {\n\t\t// Resursively format arrays:\n\t\tif (isArray(number)) {\n\t\t\treturn map(number, function(val) {\n\t\t\t\treturn formatNumber(val, precision, thousand, decimal);\n\t\t\t});\n\t\t}\n\n\t\t// Clean up number:\n\t\tnumber = unformat(number);\n\n\t\t// Build options object from second param (if object) or all params, extending defaults:\n\t\tvar opts = defaults(\n\t\t\t\t(isObject(precision) ? precision : {\n\t\t\t\t\tprecision : precision,\n\t\t\t\t\tthousand : thousand,\n\t\t\t\t\tdecimal : decimal\n\t\t\t\t}),\n\t\t\t\tlib.settings.number\n\t\t\t),\n\n\t\t\t// Clean up precision\n\t\t\tusePrecision = checkPrecision(opts.precision),\n\n\t\t\t// Do some calc:\n\t\t\tnegative = number < 0 ? \"-\" : \"\",\n\t\t\tbase = parseInt(toFixed(Math.abs(number || 0), usePrecision), 10) + \"\",\n\t\t\tmod = base.length > 3 ? base.length % 3 : 0;\n\n\t\t// Format the number:\n\t\treturn negative + (mod ? base.substr(0, mod) + opts.thousand : \"\") + base.substr(mod).replace(/(\\d{3})(?=\\d)/g, \"$1\" + opts.thousand) + (usePrecision ? opts.decimal + toFixed(Math.abs(number), usePrecision).split('.')[1] : \"\");\n\t};\n\n\n\t/**\n\t * Format a number into currency\n\t *\n\t * Usage: accounting.formatMoney(number, symbol, precision, thousandsSep, decimalSep, format)\n\t * defaults: (0, \"$\", 2, \",\", \".\", \"%s%v\")\n\t *\n\t * Localise by overriding the symbol, precision, thousand / decimal separators and format\n\t * Second param can be an object matching `settings.currency` which is the easiest way.\n\t *\n\t * To do: tidy up the parameters\n\t */\n\tvar formatMoney = lib.formatMoney = function(number, symbol, precision, thousand, decimal, format) {\n\t\t// Resursively format arrays:\n\t\tif (isArray(number)) {\n\t\t\treturn map(number, function(val){\n\t\t\t\treturn formatMoney(val, symbol, precision, thousand, decimal, format);\n\t\t\t});\n\t\t}\n\n\t\t// Clean up number:\n\t\tnumber = unformat(number);\n\n\t\t// Build options object from second param (if object) or all params, extending defaults:\n\t\tvar opts = defaults(\n\t\t\t\t(isObject(symbol) ? symbol : {\n\t\t\t\t\tsymbol : symbol,\n\t\t\t\t\tprecision : precision,\n\t\t\t\t\tthousand : thousand,\n\t\t\t\t\tdecimal : decimal,\n\t\t\t\t\tformat : format\n\t\t\t\t}),\n\t\t\t\tlib.settings.currency\n\t\t\t),\n\n\t\t\t// Check format (returns object with pos, neg and zero):\n\t\t\tformats = checkCurrencyFormat(opts.format),\n\n\t\t\t// Choose which format to use for this value:\n\t\t\tuseFormat = number > 0 ? formats.pos : number < 0 ? formats.neg : formats.zero;\n\n\t\t// Return with currency symbol added:\n\t\treturn useFormat.replace('%s', opts.symbol).replace('%v', formatNumber(Math.abs(number), checkPrecision(opts.precision), opts.thousand, opts.decimal));\n\t};\n\n\n\t/**\n\t * Format a list of numbers into an accounting column, padding with whitespace\n\t * to line up currency symbols, thousand separators and decimals places\n\t *\n\t * List should be an array of numbers\n\t * Second parameter can be an object containing keys that match the params\n\t *\n\t * Returns array of accouting-formatted number strings of same length\n\t *\n\t * NB: `white-space:pre` CSS rule is required on the list container to prevent\n\t * browsers from collapsing the whitespace in the output strings.\n\t */\n\tlib.formatColumn = function(list, symbol, precision, thousand, decimal, format) {\n\t\tif (!list) return [];\n\n\t\t// Build options object from second param (if object) or all params, extending defaults:\n\t\tvar opts = defaults(\n\t\t\t\t(isObject(symbol) ? symbol : {\n\t\t\t\t\tsymbol : symbol,\n\t\t\t\t\tprecision : precision,\n\t\t\t\t\tthousand : thousand,\n\t\t\t\t\tdecimal : decimal,\n\t\t\t\t\tformat : format\n\t\t\t\t}),\n\t\t\t\tlib.settings.currency\n\t\t\t),\n\n\t\t\t// Check format (returns object with pos, neg and zero), only need pos for now:\n\t\t\tformats = checkCurrencyFormat(opts.format),\n\n\t\t\t// Whether to pad at start of string or after currency symbol:\n\t\t\tpadAfterSymbol = formats.pos.indexOf(\"%s\") < formats.pos.indexOf(\"%v\") ? true : false,\n\n\t\t\t// Store value for the length of the longest string in the column:\n\t\t\tmaxLength = 0,\n\n\t\t\t// Format the list according to options, store the length of the longest string:\n\t\t\tformatted = map(list, function(val, i) {\n\t\t\t\tif (isArray(val)) {\n\t\t\t\t\t// Recursively format columns if list is a multi-dimensional array:\n\t\t\t\t\treturn lib.formatColumn(val, opts);\n\t\t\t\t} else {\n\t\t\t\t\t// Clean up the value\n\t\t\t\t\tval = unformat(val);\n\n\t\t\t\t\t// Choose which format to use for this value (pos, neg or zero):\n\t\t\t\t\tvar useFormat = val > 0 ? formats.pos : val < 0 ? formats.neg : formats.zero,\n\n\t\t\t\t\t\t// Format this value, push into formatted list and save the length:\n\t\t\t\t\t\tfVal = useFormat.replace('%s', opts.symbol).replace('%v', formatNumber(Math.abs(val), checkPrecision(opts.precision), opts.thousand, opts.decimal));\n\n\t\t\t\t\tif (fVal.length > maxLength) maxLength = fVal.length;\n\t\t\t\t\treturn fVal;\n\t\t\t\t}\n\t\t\t});\n\n\t\t// Pad each number in the list and send back the column of numbers:\n\t\treturn map(formatted, function(val, i) {\n\t\t\t// Only if this is a string (not a nested array, which would have already been padded):\n\t\t\tif (isString(val) && val.length < maxLength) {\n\t\t\t\t// Depending on symbol position, pad after symbol or at index 0:\n\t\t\t\treturn padAfterSymbol ? val.replace(opts.symbol, opts.symbol+(new Array(maxLength - val.length + 1).join(\" \"))) : (new Array(maxLength - val.length + 1).join(\" \")) + val;\n\t\t\t}\n\t\t\treturn val;\n\t\t});\n\t};\n\n\n\t/* --- Module Definition --- */\n\n\t// Export accounting for CommonJS. If being loaded as an AMD module, define it as such.\n\t// Otherwise, just add `accounting` to the global object\n\tif (typeof exports !== 'undefined') {\n\t\tif (typeof module !== 'undefined' && module.exports) {\n\t\t\texports = module.exports = lib;\n\t\t}\n\t\texports.accounting = lib;\n\t} else if (typeof define === 'function' && define.amd) {\n\t\t// Return the library as an AMD module:\n\t\tdefine([], function() {\n\t\t\treturn lib;\n\t\t});\n\t} else {\n\t\t// Use accounting.noConflict to restore `accounting` back to its original value.\n\t\t// Returns a reference to the library's `accounting` object;\n\t\t// e.g. `var numbers = accounting.noConflict();`\n\t\tlib.noConflict = (function(oldAccounting) {\n\t\t\treturn function() {\n\t\t\t\t// Reset the value of the root's `accounting` variable:\n\t\t\t\troot.accounting = oldAccounting;\n\t\t\t\t// Delete the noConflict method:\n\t\t\t\tlib.noConflict = undefined;\n\t\t\t\t// Return reference to the library to re-assign it:\n\t\t\t\treturn lib;\n\t\t\t};\n\t\t})(root.accounting);\n\n\t\t// Declare `fx` on the root (global/window) object:\n\t\troot['accounting'] = lib;\n\t}\n\n\t// Root will be `window` in browser or `global` on the server:\n}(this));\n","/*!\n * ApexCharts v3.36.2\n * (c) 2018-2022 ApexCharts\n * Released under the MIT License.\n */\n!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).ApexCharts=e()}(this,(function(){\"use strict\";function t(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function e(e){for(var i=1;it.length)&&(e=t.length);for(var i=0,a=new Array(e);i>16,o=i>>8&255,n=255&i;return\"#\"+(16777216+65536*(Math.round((a-r)*s)+r)+256*(Math.round((a-o)*s)+o)+(Math.round((a-n)*s)+n)).toString(16).slice(1)}},{key:\"shadeColor\",value:function(e,i){return t.isColorHex(i)?this.shadeHexColor(e,i):this.shadeRGBColor(e,i)}}],[{key:\"bind\",value:function(t,e){return function(){return t.apply(e,arguments)}}},{key:\"isObject\",value:function(t){return t&&\"object\"===i(t)&&!Array.isArray(t)&&null!=t}},{key:\"is\",value:function(t,e){return Object.prototype.toString.call(e)===\"[object \"+t+\"]\"}},{key:\"listToArray\",value:function(t){var e,i=[];for(e=0;ee.length?t:e}))),t.length>e.length?t:e}),0)}},{key:\"hexToRgba\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"#999999\",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:.6;\"#\"!==t.substring(0,1)&&(t=\"#999999\");var i=t.replace(\"#\",\"\");i=i.match(new RegExp(\"(.{\"+i.length/3+\"})\",\"g\"));for(var a=0;a1&&void 0!==arguments[1]?arguments[1]:\"x\",i=t.toString().slice();return i=i.replace(/[` ~!@#$%^&*()|+\\=?;:'\",.<>{}[\\]\\\\/]/gi,e)}},{key:\"negToZero\",value:function(t){return t<0?0:t}},{key:\"moveIndexInArray\",value:function(t,e,i){if(i>=t.length)for(var a=i-t.length+1;a--;)t.push(void 0);return t.splice(i,0,t.splice(e,1)[0]),t}},{key:\"extractNumber\",value:function(t){return parseFloat(t.replace(/[^\\d.]*/g,\"\"))}},{key:\"findAncestor\",value:function(t,e){for(;(t=t.parentElement)&&!t.classList.contains(e););return t}},{key:\"setELstyles\",value:function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t.style.key=e[i])}},{key:\"isNumber\",value:function(t){return!isNaN(t)&&parseFloat(Number(t))===t&&!isNaN(parseInt(t,10))}},{key:\"isFloat\",value:function(t){return Number(t)===t&&t%1!=0}},{key:\"isSafari\",value:function(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}},{key:\"isFirefox\",value:function(){return navigator.userAgent.toLowerCase().indexOf(\"firefox\")>-1}},{key:\"isIE11\",value:function(){if(-1!==window.navigator.userAgent.indexOf(\"MSIE\")||window.navigator.appVersion.indexOf(\"Trident/\")>-1)return!0}},{key:\"isIE\",value:function(){var t=window.navigator.userAgent,e=t.indexOf(\"MSIE \");if(e>0)return parseInt(t.substring(e+5,t.indexOf(\".\",e)),10);if(t.indexOf(\"Trident/\")>0){var i=t.indexOf(\"rv:\");return parseInt(t.substring(i+3,t.indexOf(\".\",i)),10)}var a=t.indexOf(\"Edge/\");return a>0&&parseInt(t.substring(a+5,t.indexOf(\".\",a)),10)}}]),t}(),b=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.setEasingFunctions()}return r(t,[{key:\"setEasingFunctions\",value:function(){var t;if(!this.w.globals.easing){switch(this.w.config.chart.animations.easing){case\"linear\":t=\"-\";break;case\"easein\":t=\"<\";break;case\"easeout\":t=\">\";break;case\"easeinout\":default:t=\"<>\";break;case\"swing\":t=function(t){var e=1.70158;return(t-=1)*t*((e+1)*t+e)+1};break;case\"bounce\":t=function(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375};break;case\"elastic\":t=function(t){return t===!!t?t:Math.pow(2,-10*t)*Math.sin((t-.075)*(2*Math.PI)/.3)+1}}this.w.globals.easing=t}}},{key:\"animateLine\",value:function(t,e,i,a){t.attr(e).animate(a).attr(i)}},{key:\"animateMarker\",value:function(t,e,i,a,s,r){e||(e=0),t.attr({r:e,width:e,height:e}).animate(a,s).attr({r:i,width:i.width,height:i.height}).afterAll((function(){r()}))}},{key:\"animateCircle\",value:function(t,e,i,a,s){t.attr({r:e.r,cx:e.cx,cy:e.cy}).animate(a,s).attr({r:i.r,cx:i.cx,cy:i.cy})}},{key:\"animateRect\",value:function(t,e,i,a,s){t.attr(e).animate(a).attr(i).afterAll((function(){return s()}))}},{key:\"animatePathsGradually\",value:function(t){var e=t.el,i=t.realIndex,a=t.j,s=t.fill,r=t.pathFrom,o=t.pathTo,n=t.speed,l=t.delay,h=this.w,c=0;h.config.chart.animations.animateGradually.enabled&&(c=h.config.chart.animations.animateGradually.delay),h.config.chart.animations.dynamicAnimation.enabled&&h.globals.dataChanged&&\"bar\"!==h.config.chart.type&&(c=0),this.morphSVG(e,i,a,\"line\"!==h.config.chart.type||h.globals.comboCharts?s:\"stroke\",r,o,n,l*c)}},{key:\"showDelayedElements\",value:function(){this.w.globals.delayedElements.forEach((function(t){t.el.classList.remove(\"apexcharts-element-hidden\")}))}},{key:\"animationCompleted\",value:function(t){var e=this.w;e.globals.animationEnded||(e.globals.animationEnded=!0,this.showDelayedElements(),\"function\"==typeof e.config.chart.events.animationEnd&&e.config.chart.events.animationEnd(this.ctx,{el:t,w:e}))}},{key:\"morphSVG\",value:function(t,e,i,a,s,r,o,n){var l=this,h=this.w;s||(s=t.attr(\"pathFrom\")),r||(r=t.attr(\"pathTo\"));var c=function(t){return\"radar\"===h.config.chart.type&&(o=1),\"M 0 \".concat(h.globals.gridHeight)};(!s||s.indexOf(\"undefined\")>-1||s.indexOf(\"NaN\")>-1)&&(s=c()),(!r||r.indexOf(\"undefined\")>-1||r.indexOf(\"NaN\")>-1)&&(r=c()),h.globals.shouldAnimate||(o=1),t.plot(s).animate(1,h.globals.easing,n).plot(s).animate(o,h.globals.easing,n).plot(r).afterAll((function(){x.isNumber(i)?i===h.globals.series[h.globals.maxValsInArrayIndex].length-2&&h.globals.shouldAnimate&&l.animationCompleted(t):\"none\"!==a&&h.globals.shouldAnimate&&(!h.globals.comboCharts&&e===h.globals.series.length-1||h.globals.comboCharts)&&l.animationCompleted(t),l.showDelayedElements()}))}}]),t}(),v=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"getDefaultFilter\",value:function(t,e){var i=this.w;t.unfilter(!0),(new window.SVG.Filter).size(\"120%\",\"180%\",\"-5%\",\"-40%\"),\"none\"!==i.config.states.normal.filter?this.applyFilter(t,e,i.config.states.normal.filter.type,i.config.states.normal.filter.value):i.config.chart.dropShadow.enabled&&this.dropShadow(t,i.config.chart.dropShadow,e)}},{key:\"addNormalFilter\",value:function(t,e){var i=this.w;i.config.chart.dropShadow.enabled&&!t.node.classList.contains(\"apexcharts-marker\")&&this.dropShadow(t,i.config.chart.dropShadow,e)}},{key:\"addLightenFilter\",value:function(t,e,i){var a=this,s=this.w,r=i.intensity;t.unfilter(!0);new window.SVG.Filter;t.filter((function(t){var i=s.config.chart.dropShadow;(i.enabled?a.addShadow(t,e,i):t).componentTransfer({rgb:{type:\"linear\",slope:1.5,intercept:r}})})),t.filterer.node.setAttribute(\"filterUnits\",\"userSpaceOnUse\"),this._scaleFilterSize(t.filterer.node)}},{key:\"addDarkenFilter\",value:function(t,e,i){var a=this,s=this.w,r=i.intensity;t.unfilter(!0);new window.SVG.Filter;t.filter((function(t){var i=s.config.chart.dropShadow;(i.enabled?a.addShadow(t,e,i):t).componentTransfer({rgb:{type:\"linear\",slope:r}})})),t.filterer.node.setAttribute(\"filterUnits\",\"userSpaceOnUse\"),this._scaleFilterSize(t.filterer.node)}},{key:\"applyFilter\",value:function(t,e,i){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:.5;switch(i){case\"none\":this.addNormalFilter(t,e);break;case\"lighten\":this.addLightenFilter(t,e,{intensity:a});break;case\"darken\":this.addDarkenFilter(t,e,{intensity:a})}}},{key:\"addShadow\",value:function(t,e,i){var a=i.blur,s=i.top,r=i.left,o=i.color,n=i.opacity,l=t.flood(Array.isArray(o)?o[e]:o,n).composite(t.sourceAlpha,\"in\").offset(r,s).gaussianBlur(a).merge(t.source);return t.blend(t.source,l)}},{key:\"dropShadow\",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,a=e.top,s=e.left,r=e.blur,o=e.color,n=e.opacity,l=e.noUserSpaceOnUse,h=this.w;return t.unfilter(!0),x.isIE()&&\"radialBar\"===h.config.chart.type||(o=Array.isArray(o)?o[i]:o,t.filter((function(t){var e=null;e=x.isSafari()||x.isFirefox()||x.isIE()?t.flood(o,n).composite(t.sourceAlpha,\"in\").offset(s,a).gaussianBlur(r):t.flood(o,n).composite(t.sourceAlpha,\"in\").offset(s,a).gaussianBlur(r).merge(t.source),t.blend(t.source,e)})),l||t.filterer.node.setAttribute(\"filterUnits\",\"userSpaceOnUse\"),this._scaleFilterSize(t.filterer.node)),t}},{key:\"setSelectionFilter\",value:function(t,e,i){var a=this.w;if(void 0!==a.globals.selectedDataPoints[e]&&a.globals.selectedDataPoints[e].indexOf(i)>-1){t.node.setAttribute(\"selected\",!0);var s=a.config.states.active.filter;\"none\"!==s&&this.applyFilter(t,e,s.type,s.value)}}},{key:\"_scaleFilterSize\",value:function(t){!function(e){for(var i in e)e.hasOwnProperty(i)&&t.setAttribute(i,e[i])}({width:\"200%\",height:\"200%\",x:\"-50%\",y:\"-50%\"})}}]),t}(),m=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"roundPathCorners\",value:function(t,e){function i(t,e,i){var s=e.x-t.x,r=e.y-t.y,o=Math.sqrt(s*s+r*r);return a(t,e,Math.min(1,i/o))}function a(t,e,i){return{x:t.x+(e.x-t.x)*i,y:t.y+(e.y-t.y)*i}}function s(t,e){t.length>2&&(t[t.length-2]=e.x,t[t.length-1]=e.y)}function r(t){return{x:parseFloat(t[t.length-2]),y:parseFloat(t[t.length-1])}}var o=t.split(/[,\\s]/).reduce((function(t,e){var i=e.match(\"([a-zA-Z])(.+)\");return i?(t.push(i[1]),t.push(i[2])):t.push(e),t}),[]).reduce((function(t,e){return parseFloat(e)==e&&t.length?t[t.length-1].push(e):t.push([e]),t}),[]),n=[];if(o.length>1){var l=r(o[0]),h=null;\"Z\"==o[o.length-1][0]&&o[0].length>2&&(h=[\"L\",l.x,l.y],o[o.length-1]=h),n.push(o[0]);for(var c=1;c2&&\"L\"==g[0]&&u.length>2&&\"L\"==u[0]){var f,p,x=r(d),b=r(g),v=r(u);f=i(b,x,e),p=i(b,v,e),s(g,f),g.origPoint=b,n.push(g);var m=a(f,b,.5),y=a(b,p,.5),w=[\"C\",m.x,m.y,y.x,y.y,p.x,p.y];w.origPoint=b,n.push(w)}else n.push(g)}if(h){var k=r(n[n.length-1]);n.push([\"Z\"]),s(n[0],k)}}else n=o;return n.reduce((function(t,e){return t+e.join(\" \")+\" \"}),\"\")}},{key:\"drawLine\",value:function(t,e,i,a){var s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"#a8a8a8\",r=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0,o=arguments.length>6&&void 0!==arguments[6]?arguments[6]:null,n=arguments.length>7&&void 0!==arguments[7]?arguments[7]:\"butt\",l=this.w,h=l.globals.dom.Paper.line().attr({x1:t,y1:e,x2:i,y2:a,stroke:s,\"stroke-dasharray\":r,\"stroke-width\":o,\"stroke-linecap\":n});return h}},{key:\"drawRect\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,r=arguments.length>5&&void 0!==arguments[5]?arguments[5]:\"#fefefe\",o=arguments.length>6&&void 0!==arguments[6]?arguments[6]:1,n=arguments.length>7&&void 0!==arguments[7]?arguments[7]:null,l=arguments.length>8&&void 0!==arguments[8]?arguments[8]:null,h=arguments.length>9&&void 0!==arguments[9]?arguments[9]:0,c=this.w,d=c.globals.dom.Paper.rect();return d.attr({x:t,y:e,width:i>0?i:0,height:a>0?a:0,rx:s,ry:s,opacity:o,\"stroke-width\":null!==n?n:0,stroke:null!==l?l:\"none\",\"stroke-dasharray\":h}),d.node.setAttribute(\"fill\",r),d}},{key:\"drawPolygon\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"#e1e1e1\",i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"none\",s=this.w,r=s.globals.dom.Paper.polygon(t).attr({fill:a,stroke:e,\"stroke-width\":i});return r}},{key:\"drawCircle\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,i=this.w;t<0&&(t=0);var a=i.globals.dom.Paper.circle(2*t);return null!==e&&a.attr(e),a}},{key:\"drawPath\",value:function(t){var e=t.d,i=void 0===e?\"\":e,a=t.stroke,s=void 0===a?\"#a8a8a8\":a,r=t.strokeWidth,o=void 0===r?1:r,n=t.fill,l=t.fillOpacity,h=void 0===l?1:l,c=t.strokeOpacity,d=void 0===c?1:c,g=t.classes,u=t.strokeLinecap,f=void 0===u?null:u,p=t.strokeDashArray,x=void 0===p?0:p,b=this.w;return null===f&&(f=b.config.stroke.lineCap),(i.indexOf(\"undefined\")>-1||i.indexOf(\"NaN\")>-1)&&(i=\"M 0 \".concat(b.globals.gridHeight)),b.globals.dom.Paper.path(i).attr({fill:n,\"fill-opacity\":h,stroke:s,\"stroke-opacity\":d,\"stroke-linecap\":f,\"stroke-width\":o,\"stroke-dasharray\":x,class:g})}},{key:\"group\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,e=this.w,i=e.globals.dom.Paper.group();return null!==t&&i.attr(t),i}},{key:\"move\",value:function(t,e){var i=[\"M\",t,e].join(\" \");return i}},{key:\"line\",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=null;return null===i?a=[\" L\",t,e].join(\" \"):\"H\"===i?a=[\" H\",t].join(\" \"):\"V\"===i&&(a=[\" V\",e].join(\" \")),a}},{key:\"curve\",value:function(t,e,i,a,s,r){var o=[\"C\",t,e,i,a,s,r].join(\" \");return o}},{key:\"quadraticCurve\",value:function(t,e,i,a){return[\"Q\",t,e,i,a].join(\" \")}},{key:\"arc\",value:function(t,e,i,a,s,r,o){var n=arguments.length>7&&void 0!==arguments[7]&&arguments[7],l=\"A\";n&&(l=\"a\");var h=[l,t,e,i,a,s,r,o].join(\" \");return h}},{key:\"renderPaths\",value:function(t){var i,a=t.j,s=t.realIndex,r=t.pathFrom,o=t.pathTo,n=t.stroke,l=t.strokeWidth,h=t.strokeLinecap,c=t.fill,d=t.animationDelay,g=t.initialSpeed,u=t.dataChangeSpeed,f=t.className,p=t.shouldClipToGrid,x=void 0===p||p,m=t.bindEventsOnPaths,y=void 0===m||m,w=t.drawShadow,k=void 0===w||w,A=this.w,S=new v(this.ctx),C=new b(this.ctx),L=this.w.config.chart.animations.enabled,P=L&&this.w.config.chart.animations.dynamicAnimation.enabled,T=!!(L&&!A.globals.resized||P&&A.globals.dataChanged&&A.globals.shouldAnimate);T?i=r:(i=o,A.globals.animationEnded=!0);var M=A.config.stroke.dashArray,I=0;I=Array.isArray(M)?M[s]:A.config.stroke.dashArray;var z=this.drawPath({d:i,stroke:n,strokeWidth:l,fill:c,fillOpacity:1,classes:f,strokeLinecap:h,strokeDashArray:I});if(z.attr(\"index\",s),x&&z.attr({\"clip-path\":\"url(#gridRectMask\".concat(A.globals.cuid,\")\")}),\"none\"!==A.config.states.normal.filter.type)S.getDefaultFilter(z,s);else if(A.config.chart.dropShadow.enabled&&k&&(!A.config.chart.dropShadow.enabledOnSeries||A.config.chart.dropShadow.enabledOnSeries&&-1!==A.config.chart.dropShadow.enabledOnSeries.indexOf(s))){var X=A.config.chart.dropShadow;S.dropShadow(z,X,s)}y&&(z.node.addEventListener(\"mouseenter\",this.pathMouseEnter.bind(this,z)),z.node.addEventListener(\"mouseleave\",this.pathMouseLeave.bind(this,z)),z.node.addEventListener(\"mousedown\",this.pathMouseDown.bind(this,z))),z.attr({pathTo:o,pathFrom:r});var E={el:z,j:a,realIndex:s,pathFrom:r,pathTo:o,fill:c,strokeWidth:l,delay:d};return!L||A.globals.resized||A.globals.dataChanged?!A.globals.resized&&A.globals.dataChanged||C.showDelayedElements():C.animatePathsGradually(e(e({},E),{},{speed:g})),A.globals.dataChanged&&P&&T&&C.animatePathsGradually(e(e({},E),{},{speed:u})),z}},{key:\"drawPattern\",value:function(t,e,i){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"#a8a8a8\",s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,r=this.w,o=r.globals.dom.Paper.pattern(e,i,(function(r){\"horizontalLines\"===t?r.line(0,0,i,0).stroke({color:a,width:s+1}):\"verticalLines\"===t?r.line(0,0,0,e).stroke({color:a,width:s+1}):\"slantedLines\"===t?r.line(0,0,e,i).stroke({color:a,width:s}):\"squares\"===t?r.rect(e,i).fill(\"none\").stroke({color:a,width:s}):\"circles\"===t&&r.circle(e).fill(\"none\").stroke({color:a,width:s})}));return o}},{key:\"drawGradient\",value:function(t,e,i,a,s){var r,o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null,n=arguments.length>6&&void 0!==arguments[6]?arguments[6]:null,l=arguments.length>7&&void 0!==arguments[7]?arguments[7]:null,h=arguments.length>8&&void 0!==arguments[8]?arguments[8]:0,c=this.w;e.length<9&&0===e.indexOf(\"#\")&&(e=x.hexToRgba(e,a)),i.length<9&&0===i.indexOf(\"#\")&&(i=x.hexToRgba(i,s));var d=0,g=1,u=1,f=null;null!==n&&(d=void 0!==n[0]?n[0]/100:0,g=void 0!==n[1]?n[1]/100:1,u=void 0!==n[2]?n[2]/100:1,f=void 0!==n[3]?n[3]/100:null);var p=!(\"donut\"!==c.config.chart.type&&\"pie\"!==c.config.chart.type&&\"polarArea\"!==c.config.chart.type&&\"bubble\"!==c.config.chart.type);if(r=null===l||0===l.length?c.globals.dom.Paper.gradient(p?\"radial\":\"linear\",(function(t){t.at(d,e,a),t.at(g,i,s),t.at(u,i,s),null!==f&&t.at(f,e,a)})):c.globals.dom.Paper.gradient(p?\"radial\":\"linear\",(function(t){(Array.isArray(l[h])?l[h]:l).forEach((function(e){t.at(e.offset/100,e.color,e.opacity)}))})),p){var b=c.globals.gridWidth/2,v=c.globals.gridHeight/2;\"bubble\"!==c.config.chart.type?r.attr({gradientUnits:\"userSpaceOnUse\",cx:b,cy:v,r:o}):r.attr({cx:.5,cy:.5,r:.8,fx:.2,fy:.2})}else\"vertical\"===t?r.from(0,0).to(0,1):\"diagonal\"===t?r.from(0,0).to(1,1):\"horizontal\"===t?r.from(0,1).to(1,1):\"diagonal2\"===t&&r.from(1,0).to(0,1);return r}},{key:\"getTextBasedOnMaxWidth\",value:function(t){var e=t.text,i=t.maxWidth,a=t.fontSize,s=t.fontFamily,r=this.getTextRects(e,a,s),o=r.width/e.length,n=Math.floor(i/o);return i-1){var n=i.globals.selectedDataPoints[s].indexOf(r);i.globals.selectedDataPoints[s].splice(n,1)}}else{if(!i.config.states.active.allowMultipleDataPointsSelection&&i.globals.selectedDataPoints.length>0){i.globals.selectedDataPoints=[];var l=i.globals.dom.Paper.select(\".apexcharts-series path\").members,h=i.globals.dom.Paper.select(\".apexcharts-series circle, .apexcharts-series rect\").members,c=function(t){Array.prototype.forEach.call(t,(function(t){t.node.setAttribute(\"selected\",\"false\"),a.getDefaultFilter(t,s)}))};c(l),c(h)}t.node.setAttribute(\"selected\",\"true\"),o=\"true\",void 0===i.globals.selectedDataPoints[s]&&(i.globals.selectedDataPoints[s]=[]),i.globals.selectedDataPoints[s].push(r)}if(\"true\"===o){var d=i.config.states.active.filter;if(\"none\"!==d)a.applyFilter(t,s,d.type,d.value);else if(\"none\"!==i.config.states.hover.filter&&!i.globals.isTouchDevice){var g=i.config.states.hover.filter;a.applyFilter(t,s,g.type,g.value)}}else if(\"none\"!==i.config.states.active.filter.type)if(\"none\"===i.config.states.hover.filter.type||i.globals.isTouchDevice)a.getDefaultFilter(t,s);else{g=i.config.states.hover.filter;a.applyFilter(t,s,g.type,g.value)}\"function\"==typeof i.config.chart.events.dataPointSelection&&i.config.chart.events.dataPointSelection(e,this.ctx,{selectedDataPoints:i.globals.selectedDataPoints,seriesIndex:s,dataPointIndex:r,w:i}),e&&this.ctx.events.fireEvent(\"dataPointSelection\",[e,this.ctx,{selectedDataPoints:i.globals.selectedDataPoints,seriesIndex:s,dataPointIndex:r,w:i}])}},{key:\"rotateAroundCenter\",value:function(t){var e={};return t&&\"function\"==typeof t.getBBox&&(e=t.getBBox()),{x:e.x+e.width/2,y:e.y+e.height/2}}},{key:\"getTextRects\",value:function(t,e,i,a){var s=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],r=this.w,o=this.drawText({x:-200,y:-200,text:t,textAnchor:\"start\",fontSize:e,fontFamily:i,foreColor:\"#fff\",opacity:0});a&&o.attr(\"transform\",a),r.globals.dom.Paper.add(o);var n=o.bbox();return s||(n=o.node.getBoundingClientRect()),o.remove(),{width:n.width,height:n.height}}},{key:\"placeTextWithEllipsis\",value:function(t,e,i){if(\"function\"==typeof t.getComputedTextLength&&(t.textContent=e,e.length>0&&t.getComputedTextLength()>=i/1.1)){for(var a=e.length-3;a>0;a-=3)if(t.getSubStringLength(0,a)<=i/1.1)return void(t.textContent=e.substring(0,a)+\"...\");t.textContent=\".\"}}}],[{key:\"setAttrs\",value:function(t,e){for(var i in e)e.hasOwnProperty(i)&&t.setAttribute(i,e[i])}}]),t}(),y=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"getStackedSeriesTotals\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=this.w,i=[];if(0===e.globals.series.length)return i;for(var a=0;a0&&void 0!==arguments[0]?arguments[0]:null;return null===t?this.w.config.series.reduce((function(t,e){return t+e}),0):this.w.globals.series[t].reduce((function(t,e){return t+e}),0)}},{key:\"isSeriesNull\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return 0===(null===t?this.w.config.series.filter((function(t){return null!==t})):this.w.config.series[t].data.filter((function(t){return null!==t}))).length}},{key:\"seriesHaveSameValues\",value:function(t){return this.w.globals.series[t].every((function(t,e,i){return t===i[0]}))}},{key:\"getCategoryLabels\",value:function(t){var e=this.w,i=t.slice();return e.config.xaxis.convertedCatToNumeric&&(i=t.map((function(t,i){return e.config.xaxis.labels.formatter(t-e.globals.minX+1)}))),i}},{key:\"getLargestSeries\",value:function(){var t=this.w;t.globals.maxValsInArrayIndex=t.globals.series.map((function(t){return t.length})).indexOf(Math.max.apply(Math,t.globals.series.map((function(t){return t.length}))))}},{key:\"getLargestMarkerSize\",value:function(){var t=this.w,e=0;return t.globals.markers.size.forEach((function(t){e=Math.max(e,t)})),t.config.markers.discrete&&t.config.markers.discrete.length&&t.config.markers.discrete.forEach((function(t){e=Math.max(e,t.size)})),e>0&&(e+=t.config.markers.hover.sizeOffset+1),t.globals.markers.largestSize=e,e}},{key:\"getSeriesTotals\",value:function(){var t=this.w;t.globals.seriesTotals=t.globals.series.map((function(t,e){var i=0;if(Array.isArray(t))for(var a=0;at&&i.globals.seriesX[s][o]0&&(e=!0),{comboBarCount:i,comboCharts:e}}},{key:\"extendArrayProps\",value:function(t,e,i){return e.yaxis&&(e=t.extendYAxis(e,i)),e.annotations&&(e.annotations.yaxis&&(e=t.extendYAxisAnnotations(e)),e.annotations.xaxis&&(e=t.extendXAxisAnnotations(e)),e.annotations.points&&(e=t.extendPointAnnotations(e))),e}}]),t}(),w=function(){function t(e){a(this,t),this.w=e.w,this.annoCtx=e}return r(t,[{key:\"setOrientations\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,i=this.w;if(\"vertical\"===t.label.orientation){var a=null!==e?e:0,s=i.globals.dom.baseEl.querySelector(\".apexcharts-xaxis-annotations .apexcharts-xaxis-annotation-label[rel='\".concat(a,\"']\"));if(null!==s){var r=s.getBoundingClientRect();s.setAttribute(\"x\",parseFloat(s.getAttribute(\"x\"))-r.height+4),\"top\"===t.label.position?s.setAttribute(\"y\",parseFloat(s.getAttribute(\"y\"))+r.width):s.setAttribute(\"y\",parseFloat(s.getAttribute(\"y\"))-r.width);var o=this.annoCtx.graphics.rotateAroundCenter(s),n=o.x,l=o.y;s.setAttribute(\"transform\",\"rotate(-90 \".concat(n,\" \").concat(l,\")\"))}}}},{key:\"addBackgroundToAnno\",value:function(t,e){var i=this.w;if(!t||void 0===e.label.text||void 0!==e.label.text&&!String(e.label.text).trim())return null;var a=i.globals.dom.baseEl.querySelector(\".apexcharts-grid\").getBoundingClientRect(),s=t.getBoundingClientRect(),r=e.label.style.padding.left,o=e.label.style.padding.right,n=e.label.style.padding.top,l=e.label.style.padding.bottom;\"vertical\"===e.label.orientation&&(n=e.label.style.padding.left,l=e.label.style.padding.right,r=e.label.style.padding.top,o=e.label.style.padding.bottom);var h=s.left-a.left-r,c=s.top-a.top-n,d=this.annoCtx.graphics.drawRect(h-i.globals.barPadForNumericAxis,c,s.width+r+o,s.height+n+l,e.label.borderRadius,e.label.style.background,1,e.label.borderWidth,e.label.borderColor,0);return e.id&&d.node.classList.add(e.id),d}},{key:\"annotationsBackground\",value:function(){var t=this,e=this.w,i=function(i,a,s){var r=e.globals.dom.baseEl.querySelector(\".apexcharts-\".concat(s,\"-annotations .apexcharts-\").concat(s,\"-annotation-label[rel='\").concat(a,\"']\"));if(r){var o=r.parentNode,n=t.addBackgroundToAnno(r,i);n&&(o.insertBefore(n.node,r),i.label.mouseEnter&&n.node.addEventListener(\"mouseenter\",i.label.mouseEnter.bind(t,i)),i.label.mouseLeave&&n.node.addEventListener(\"mouseleave\",i.label.mouseLeave.bind(t,i)),i.label.click&&n.node.addEventListener(\"click\",i.label.click.bind(t,i)))}};e.config.annotations.xaxis.map((function(t,e){i(t,e,\"xaxis\")})),e.config.annotations.yaxis.map((function(t,e){i(t,e,\"yaxis\")})),e.config.annotations.points.map((function(t,e){i(t,e,\"point\")}))}},{key:\"getY1Y2\",value:function(t,e){var i,a=\"y1\"===t?e.y:e.y2,s=this.w;if(this.annoCtx.invertAxis){var r=s.globals.labels.indexOf(a);s.config.xaxis.convertedCatToNumeric&&(r=s.globals.categoryLabels.indexOf(a));var o=s.globals.dom.baseEl.querySelector(\".apexcharts-yaxis-texts-g text:nth-child(\"+(r+1)+\")\");o&&(i=parseFloat(o.getAttribute(\"y\")))}else{var n;if(s.config.yaxis[e.yAxisIndex].logarithmic)n=(a=new y(this.annoCtx.ctx).getLogVal(a,e.yAxisIndex))/s.globals.yLogRatio[e.yAxisIndex];else n=(a-s.globals.minYArr[e.yAxisIndex])/(s.globals.yRange[e.yAxisIndex]/s.globals.gridHeight);i=s.globals.gridHeight-n,!e.marker||void 0!==e.y&&null!==e.y||(i=0),s.config.yaxis[e.yAxisIndex]&&s.config.yaxis[e.yAxisIndex].reversed&&(i=n)}return\"string\"==typeof a&&a.indexOf(\"px\")>-1&&(i=parseFloat(a)),i}},{key:\"getX1X2\",value:function(t,e){var i=this.w,a=this.annoCtx.invertAxis?i.globals.minY:i.globals.minX,s=this.annoCtx.invertAxis?i.globals.maxY:i.globals.maxX,r=this.annoCtx.invertAxis?i.globals.yRange[0]:i.globals.xRange,o=(e.x-a)/(r/i.globals.gridWidth);this.annoCtx.inversedReversedAxis&&(o=(s-e.x)/(r/i.globals.gridWidth)),\"category\"!==i.config.xaxis.type&&!i.config.xaxis.convertedCatToNumeric||this.annoCtx.invertAxis||i.globals.dataFormatXNumeric||(o=this.getStringX(e.x));var n=(e.x2-a)/(r/i.globals.gridWidth);return this.annoCtx.inversedReversedAxis&&(n=(s-e.x2)/(r/i.globals.gridWidth)),\"category\"!==i.config.xaxis.type&&!i.config.xaxis.convertedCatToNumeric||this.annoCtx.invertAxis||i.globals.dataFormatXNumeric||(n=this.getStringX(e.x2)),void 0!==e.x&&null!==e.x||!e.marker||(o=i.globals.gridWidth),\"x1\"===t&&\"string\"==typeof e.x&&e.x.indexOf(\"px\")>-1&&(o=parseFloat(e.x)),\"x2\"===t&&\"string\"==typeof e.x2&&e.x2.indexOf(\"px\")>-1&&(n=parseFloat(e.x2)),\"x1\"===t?o:n}},{key:\"getStringX\",value:function(t){var e=this.w,i=t;e.config.xaxis.convertedCatToNumeric&&e.globals.categoryLabels.length&&(t=e.globals.categoryLabels.indexOf(t)+1);var a=e.globals.labels.indexOf(t),s=e.globals.dom.baseEl.querySelector(\".apexcharts-xaxis-texts-g text:nth-child(\"+(a+1)+\")\");return s&&(i=parseFloat(s.getAttribute(\"x\"))),i}}]),t}(),k=function(){function t(e){a(this,t),this.w=e.w,this.annoCtx=e,this.invertAxis=this.annoCtx.invertAxis,this.helpers=new w(this.annoCtx)}return r(t,[{key:\"addXaxisAnnotation\",value:function(t,e,i){var a,s=this.w,r=this.helpers.getX1X2(\"x1\",t),o=t.label.text,n=t.strokeDashArray;if(x.isNumber(r)){if(null===t.x2||void 0===t.x2){var l=this.annoCtx.graphics.drawLine(r+t.offsetX,0+t.offsetY,r+t.offsetX,s.globals.gridHeight+t.offsetY,t.borderColor,n,t.borderWidth);e.appendChild(l.node),t.id&&l.node.classList.add(t.id)}else{if((a=this.helpers.getX1X2(\"x2\",t))o){var h=o;o=a,a=h}var c=this.annoCtx.graphics.drawRect(0+t.offsetX,a+t.offsetY,this._getYAxisAnnotationWidth(t),o-a,0,t.fillColor,t.opacity,1,t.borderColor,r);c.node.classList.add(\"apexcharts-annotation-rect\"),c.attr(\"clip-path\",\"url(#gridRectMask\".concat(s.globals.cuid,\")\")),e.appendChild(c.node),t.id&&c.node.classList.add(t.id)}var d=\"right\"===t.label.position?s.globals.gridWidth:\"center\"===t.label.position?s.globals.gridWidth/2:0,g=this.annoCtx.graphics.drawText({x:d+t.label.offsetX,y:(null!=a?a:o)+t.label.offsetY-3,text:n,textAnchor:t.label.textAnchor,fontSize:t.label.style.fontSize,fontFamily:t.label.style.fontFamily,fontWeight:t.label.style.fontWeight,foreColor:t.label.style.color,cssClass:\"apexcharts-yaxis-annotation-label \".concat(t.label.style.cssClass,\" \").concat(t.id?t.id:\"\")});g.attr({rel:i}),e.appendChild(g.node)}},{key:\"_getYAxisAnnotationWidth\",value:function(t){var e=this.w;e.globals.gridWidth;return(t.width.indexOf(\"%\")>-1?e.globals.gridWidth*parseInt(t.width,10)/100:parseInt(t.width,10))+t.offsetX}},{key:\"drawYAxisAnnotations\",value:function(){var t=this,e=this.w,i=this.annoCtx.graphics.group({class:\"apexcharts-yaxis-annotations\"});return e.config.annotations.yaxis.map((function(e,a){t.addYaxisAnnotation(e,i.node,a)})),i}}]),t}(),S=function(){function t(e){a(this,t),this.w=e.w,this.annoCtx=e,this.helpers=new w(this.annoCtx)}return r(t,[{key:\"addPointAnnotation\",value:function(t,e,i){this.w;var a=this.helpers.getX1X2(\"x1\",t),s=this.helpers.getY1Y2(\"y1\",t);if(x.isNumber(a)){var r={pSize:t.marker.size,pointStrokeWidth:t.marker.strokeWidth,pointFillColor:t.marker.fillColor,pointStrokeColor:t.marker.strokeColor,shape:t.marker.shape,pRadius:t.marker.radius,class:\"apexcharts-point-annotation-marker \".concat(t.marker.cssClass,\" \").concat(t.id?t.id:\"\")},o=this.annoCtx.graphics.drawMarker(a+t.marker.offsetX,s+t.marker.offsetY,r);e.appendChild(o.node);var n=t.label.text?t.label.text:\"\",l=this.annoCtx.graphics.drawText({x:a+t.label.offsetX,y:s+t.label.offsetY-t.marker.size-parseFloat(t.label.style.fontSize)/1.6,text:n,textAnchor:t.label.textAnchor,fontSize:t.label.style.fontSize,fontFamily:t.label.style.fontFamily,fontWeight:t.label.style.fontWeight,foreColor:t.label.style.color,cssClass:\"apexcharts-point-annotation-label \".concat(t.label.style.cssClass,\" \").concat(t.id?t.id:\"\")});if(l.attr({rel:i}),e.appendChild(l.node),t.customSVG.SVG){var h=this.annoCtx.graphics.group({class:\"apexcharts-point-annotations-custom-svg \"+t.customSVG.cssClass});h.attr({transform:\"translate(\".concat(a+t.customSVG.offsetX,\", \").concat(s+t.customSVG.offsetY,\")\")}),h.node.innerHTML=t.customSVG.SVG,e.appendChild(h.node)}if(t.image.path){var c=t.image.width?t.image.width:20,d=t.image.height?t.image.height:20;o=this.annoCtx.addImage({x:a+t.image.offsetX-c/2,y:s+t.image.offsetY-d/2,width:c,height:d,path:t.image.path,appendTo:\".apexcharts-point-annotations\"})}t.mouseEnter&&o.node.addEventListener(\"mouseenter\",t.mouseEnter.bind(this,t)),t.mouseLeave&&o.node.addEventListener(\"mouseleave\",t.mouseLeave.bind(this,t)),t.click&&o.node.addEventListener(\"click\",t.click.bind(this,t))}}},{key:\"drawPointAnnotations\",value:function(){var t=this,e=this.w,i=this.annoCtx.graphics.group({class:\"apexcharts-point-annotations\"});return e.config.annotations.points.map((function(e,a){t.addPointAnnotation(e,i.node,a)})),i}}]),t}();var C={name:\"en\",options:{months:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortMonths:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],days:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],shortDays:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],toolbar:{exportToSVG:\"Download SVG\",exportToPNG:\"Download PNG\",exportToCSV:\"Download CSV\",menu:\"Menu\",selection:\"Selection\",selectionZoom:\"Selection Zoom\",zoomIn:\"Zoom In\",zoomOut:\"Zoom Out\",pan:\"Panning\",reset:\"Reset Zoom\"}}},L=function(){function t(){a(this,t),this.yAxis={show:!0,showAlways:!1,showForNullSeries:!0,seriesName:void 0,opposite:!1,reversed:!1,logarithmic:!1,logBase:10,tickAmount:void 0,forceNiceScale:!1,max:void 0,min:void 0,floating:!1,decimalsInFloat:void 0,labels:{show:!0,minWidth:0,maxWidth:160,offsetX:0,offsetY:0,align:void 0,rotate:0,padding:20,style:{colors:[],fontSize:\"11px\",fontWeight:400,fontFamily:void 0,cssClass:\"\"},formatter:void 0},axisBorder:{show:!1,color:\"#e0e0e0\",width:1,offsetX:0,offsetY:0},axisTicks:{show:!1,color:\"#e0e0e0\",width:6,offsetX:0,offsetY:0},title:{text:void 0,rotate:-90,offsetY:0,offsetX:0,style:{color:void 0,fontSize:\"11px\",fontWeight:900,fontFamily:void 0,cssClass:\"\"}},tooltip:{enabled:!1,offsetX:0},crosshairs:{show:!0,position:\"front\",stroke:{color:\"#b6b6b6\",width:1,dashArray:0}}},this.pointAnnotation={id:void 0,x:0,y:null,yAxisIndex:0,seriesIndex:0,mouseEnter:void 0,mouseLeave:void 0,click:void 0,marker:{size:4,fillColor:\"#fff\",strokeWidth:2,strokeColor:\"#333\",shape:\"circle\",offsetX:0,offsetY:0,radius:2,cssClass:\"\"},label:{borderColor:\"#c2c2c2\",borderWidth:1,borderRadius:2,text:void 0,textAnchor:\"middle\",offsetX:0,offsetY:0,mouseEnter:void 0,mouseLeave:void 0,click:void 0,style:{background:\"#fff\",color:void 0,fontSize:\"11px\",fontFamily:void 0,fontWeight:400,cssClass:\"\",padding:{left:5,right:5,top:2,bottom:2}}},customSVG:{SVG:void 0,cssClass:void 0,offsetX:0,offsetY:0},image:{path:void 0,width:20,height:20,offsetX:0,offsetY:0}},this.yAxisAnnotation={id:void 0,y:0,y2:null,strokeDashArray:1,fillColor:\"#c2c2c2\",borderColor:\"#c2c2c2\",borderWidth:1,opacity:.3,offsetX:0,offsetY:0,width:\"100%\",yAxisIndex:0,label:{borderColor:\"#c2c2c2\",borderWidth:1,borderRadius:2,text:void 0,textAnchor:\"end\",position:\"right\",offsetX:0,offsetY:-3,mouseEnter:void 0,mouseLeave:void 0,click:void 0,style:{background:\"#fff\",color:void 0,fontSize:\"11px\",fontFamily:void 0,fontWeight:400,cssClass:\"\",padding:{left:5,right:5,top:2,bottom:2}}}},this.xAxisAnnotation={id:void 0,x:0,x2:null,strokeDashArray:1,fillColor:\"#c2c2c2\",borderColor:\"#c2c2c2\",borderWidth:1,opacity:.3,offsetX:0,offsetY:0,label:{borderColor:\"#c2c2c2\",borderWidth:1,borderRadius:2,text:void 0,textAnchor:\"middle\",orientation:\"vertical\",position:\"top\",offsetX:0,offsetY:0,mouseEnter:void 0,mouseLeave:void 0,click:void 0,style:{background:\"#fff\",color:void 0,fontSize:\"11px\",fontFamily:void 0,fontWeight:400,cssClass:\"\",padding:{left:5,right:5,top:2,bottom:2}}}},this.text={x:0,y:0,text:\"\",textAnchor:\"start\",foreColor:void 0,fontSize:\"13px\",fontFamily:void 0,fontWeight:400,appendTo:\".apexcharts-annotations\",backgroundColor:\"transparent\",borderColor:\"#c2c2c2\",borderRadius:0,borderWidth:0,paddingLeft:4,paddingRight:4,paddingTop:2,paddingBottom:2}}return r(t,[{key:\"init\",value:function(){return{annotations:{position:\"front\",yaxis:[this.yAxisAnnotation],xaxis:[this.xAxisAnnotation],points:[this.pointAnnotation],texts:[],images:[],shapes:[]},chart:{animations:{enabled:!0,easing:\"easeinout\",speed:800,animateGradually:{delay:150,enabled:!0},dynamicAnimation:{enabled:!0,speed:350}},background:\"transparent\",locales:[C],defaultLocale:\"en\",dropShadow:{enabled:!1,enabledOnSeries:void 0,top:2,left:2,blur:4,color:\"#000\",opacity:.35},events:{animationEnd:void 0,beforeMount:void 0,mounted:void 0,updated:void 0,click:void 0,mouseMove:void 0,mouseLeave:void 0,xAxisLabelClick:void 0,legendClick:void 0,markerClick:void 0,selection:void 0,dataPointSelection:void 0,dataPointMouseEnter:void 0,dataPointMouseLeave:void 0,beforeZoom:void 0,beforeResetZoom:void 0,zoomed:void 0,scrolled:void 0,brushScrolled:void 0},foreColor:\"#373d3f\",fontFamily:\"Helvetica, Arial, sans-serif\",height:\"auto\",parentHeightOffset:15,redrawOnParentResize:!0,redrawOnWindowResize:!0,id:void 0,group:void 0,offsetX:0,offsetY:0,selection:{enabled:!1,type:\"x\",fill:{color:\"#24292e\",opacity:.1},stroke:{width:1,color:\"#24292e\",opacity:.4,dashArray:3},xaxis:{min:void 0,max:void 0},yaxis:{min:void 0,max:void 0}},sparkline:{enabled:!1},brush:{enabled:!1,autoScaleYaxis:!0,target:void 0},stacked:!1,stackType:\"normal\",toolbar:{show:!0,offsetX:0,offsetY:0,tools:{download:!0,selection:!0,zoom:!0,zoomin:!0,zoomout:!0,pan:!0,reset:!0,customIcons:[]},export:{csv:{filename:void 0,columnDelimiter:\",\",headerCategory:\"category\",headerValue:\"value\",dateFormatter:function(t){return new Date(t).toDateString()}},png:{filename:void 0},svg:{filename:void 0}},autoSelected:\"zoom\"},type:\"line\",width:\"100%\",zoom:{enabled:!0,type:\"x\",autoScaleYaxis:!1,zoomedArea:{fill:{color:\"#90CAF9\",opacity:.4},stroke:{color:\"#0D47A1\",opacity:.4,width:1}}}},plotOptions:{area:{fillTo:\"origin\"},bar:{horizontal:!1,columnWidth:\"70%\",barHeight:\"70%\",distributed:!1,borderRadius:0,borderRadiusApplication:\"around\",borderRadiusWhenStacked:\"last\",rangeBarOverlap:!0,rangeBarGroupRows:!1,colors:{ranges:[],backgroundBarColors:[],backgroundBarOpacity:1,backgroundBarRadius:0},dataLabels:{position:\"top\",maxItems:100,hideOverflowingLabels:!0,orientation:\"horizontal\",total:{enabled:!1,formatter:void 0,offsetX:0,offsetY:0,style:{color:\"#373d3f\",fontSize:\"12px\",fontFamily:void 0,fontWeight:600}}}},bubble:{zScaling:!0,minBubbleRadius:void 0,maxBubbleRadius:void 0},candlestick:{colors:{upward:\"#00B746\",downward:\"#EF403C\"},wick:{useFillColor:!0}},boxPlot:{colors:{upper:\"#00E396\",lower:\"#008FFB\"}},heatmap:{radius:2,enableShades:!0,shadeIntensity:.5,reverseNegativeShade:!1,distributed:!1,useFillColorAsStroke:!1,colorScale:{inverse:!1,ranges:[],min:void 0,max:void 0}},treemap:{enableShades:!0,shadeIntensity:.5,distributed:!1,reverseNegativeShade:!1,useFillColorAsStroke:!1,colorScale:{inverse:!1,ranges:[],min:void 0,max:void 0}},radialBar:{inverseOrder:!1,startAngle:0,endAngle:360,offsetX:0,offsetY:0,hollow:{margin:5,size:\"50%\",background:\"transparent\",image:void 0,imageWidth:150,imageHeight:150,imageOffsetX:0,imageOffsetY:0,imageClipped:!0,position:\"front\",dropShadow:{enabled:!1,top:0,left:0,blur:3,color:\"#000\",opacity:.5}},track:{show:!0,startAngle:void 0,endAngle:void 0,background:\"#f2f2f2\",strokeWidth:\"97%\",opacity:1,margin:5,dropShadow:{enabled:!1,top:0,left:0,blur:3,color:\"#000\",opacity:.5}},dataLabels:{show:!0,name:{show:!0,fontSize:\"16px\",fontFamily:void 0,fontWeight:600,color:void 0,offsetY:0,formatter:function(t){return t}},value:{show:!0,fontSize:\"14px\",fontFamily:void 0,fontWeight:400,color:void 0,offsetY:16,formatter:function(t){return t+\"%\"}},total:{show:!1,label:\"Total\",fontSize:\"16px\",fontWeight:600,fontFamily:void 0,color:void 0,formatter:function(t){return t.globals.seriesTotals.reduce((function(t,e){return t+e}),0)/t.globals.series.length+\"%\"}}}},pie:{customScale:1,offsetX:0,offsetY:0,startAngle:0,endAngle:360,expandOnClick:!0,dataLabels:{offset:0,minAngleToShowLabel:10},donut:{size:\"65%\",background:\"transparent\",labels:{show:!1,name:{show:!0,fontSize:\"16px\",fontFamily:void 0,fontWeight:600,color:void 0,offsetY:-10,formatter:function(t){return t}},value:{show:!0,fontSize:\"20px\",fontFamily:void 0,fontWeight:400,color:void 0,offsetY:10,formatter:function(t){return t}},total:{show:!1,showAlways:!1,label:\"Total\",fontSize:\"16px\",fontWeight:400,fontFamily:void 0,color:void 0,formatter:function(t){return t.globals.seriesTotals.reduce((function(t,e){return t+e}),0)}}}}},polarArea:{rings:{strokeWidth:1,strokeColor:\"#e8e8e8\"},spokes:{strokeWidth:1,connectorColors:\"#e8e8e8\"}},radar:{size:void 0,offsetX:0,offsetY:0,polygons:{strokeWidth:1,strokeColors:\"#e8e8e8\",connectorColors:\"#e8e8e8\",fill:{colors:void 0}}}},colors:void 0,dataLabels:{enabled:!0,enabledOnSeries:void 0,formatter:function(t){return null!==t?t:\"\"},textAnchor:\"middle\",distributed:!1,offsetX:0,offsetY:0,style:{fontSize:\"12px\",fontFamily:void 0,fontWeight:600,colors:void 0},background:{enabled:!0,foreColor:\"#fff\",borderRadius:2,padding:4,opacity:.9,borderWidth:1,borderColor:\"#fff\",dropShadow:{enabled:!1,top:1,left:1,blur:1,color:\"#000\",opacity:.45}},dropShadow:{enabled:!1,top:1,left:1,blur:1,color:\"#000\",opacity:.45}},fill:{type:\"solid\",colors:void 0,opacity:.85,gradient:{shade:\"dark\",type:\"horizontal\",shadeIntensity:.5,gradientToColors:void 0,inverseColors:!0,opacityFrom:1,opacityTo:1,stops:[0,50,100],colorStops:[]},image:{src:[],width:void 0,height:void 0},pattern:{style:\"squares\",width:6,height:6,strokeWidth:2}},forecastDataPoints:{count:0,fillOpacity:.5,strokeWidth:void 0,dashArray:4},grid:{show:!0,borderColor:\"#e0e0e0\",strokeDashArray:0,position:\"back\",xaxis:{lines:{show:!1}},yaxis:{lines:{show:!0}},row:{colors:void 0,opacity:.5},column:{colors:void 0,opacity:.5},padding:{top:0,right:10,bottom:0,left:12}},labels:[],legend:{show:!0,showForSingleSeries:!1,showForNullSeries:!0,showForZeroSeries:!0,floating:!1,position:\"bottom\",horizontalAlign:\"center\",inverseOrder:!1,fontSize:\"12px\",fontFamily:void 0,fontWeight:400,width:void 0,height:void 0,formatter:void 0,tooltipHoverFormatter:void 0,offsetX:-20,offsetY:4,customLegendItems:[],labels:{colors:void 0,useSeriesColors:!1},markers:{width:12,height:12,strokeWidth:0,fillColors:void 0,strokeColor:\"#fff\",radius:12,customHTML:void 0,offsetX:0,offsetY:0,onClick:void 0},itemMargin:{horizontal:5,vertical:2},onItemClick:{toggleDataSeries:!0},onItemHover:{highlightDataSeries:!0}},markers:{discrete:[],size:0,colors:void 0,strokeColors:\"#fff\",strokeWidth:2,strokeOpacity:.9,strokeDashArray:0,fillOpacity:1,shape:\"circle\",width:8,height:8,radius:2,offsetX:0,offsetY:0,onClick:void 0,onDblClick:void 0,showNullDataPoints:!0,hover:{size:void 0,sizeOffset:3}},noData:{text:void 0,align:\"center\",verticalAlign:\"middle\",offsetX:0,offsetY:0,style:{color:void 0,fontSize:\"14px\",fontFamily:void 0}},responsive:[],series:void 0,states:{normal:{filter:{type:\"none\",value:0}},hover:{filter:{type:\"lighten\",value:.1}},active:{allowMultipleDataPointsSelection:!1,filter:{type:\"darken\",value:.5}}},title:{text:void 0,align:\"left\",margin:5,offsetX:0,offsetY:0,floating:!1,style:{fontSize:\"14px\",fontWeight:900,fontFamily:void 0,color:void 0}},subtitle:{text:void 0,align:\"left\",margin:5,offsetX:0,offsetY:30,floating:!1,style:{fontSize:\"12px\",fontWeight:400,fontFamily:void 0,color:void 0}},stroke:{show:!0,curve:\"smooth\",lineCap:\"butt\",width:2,colors:void 0,dashArray:0,fill:{type:\"solid\",colors:void 0,opacity:.85,gradient:{shade:\"dark\",type:\"horizontal\",shadeIntensity:.5,gradientToColors:void 0,inverseColors:!0,opacityFrom:1,opacityTo:1,stops:[0,50,100],colorStops:[]}}},tooltip:{enabled:!0,enabledOnSeries:void 0,shared:!0,followCursor:!1,intersect:!1,inverseOrder:!1,custom:void 0,fillSeriesColor:!1,theme:\"light\",cssClass:\"\",style:{fontSize:\"12px\",fontFamily:void 0},onDatasetHover:{highlightDataSeries:!1},x:{show:!0,format:\"dd MMM\",formatter:void 0},y:{formatter:void 0,title:{formatter:function(t){return t?t+\": \":\"\"}}},z:{formatter:void 0,title:\"Size: \"},marker:{show:!0,fillColors:void 0},items:{display:\"flex\"},fixed:{enabled:!1,position:\"topRight\",offsetX:0,offsetY:0}},xaxis:{type:\"category\",categories:[],convertedCatToNumeric:!1,offsetX:0,offsetY:0,overwriteCategories:void 0,labels:{show:!0,rotate:-45,rotateAlways:!1,hideOverlappingLabels:!0,trim:!1,minHeight:void 0,maxHeight:120,showDuplicates:!0,style:{colors:[],fontSize:\"12px\",fontWeight:400,fontFamily:void 0,cssClass:\"\"},offsetX:0,offsetY:0,format:void 0,formatter:void 0,datetimeUTC:!0,datetimeFormatter:{year:\"yyyy\",month:\"MMM 'yy\",day:\"dd MMM\",hour:\"HH:mm\",minute:\"HH:mm:ss\",second:\"HH:mm:ss\"}},group:{groups:[],style:{colors:[],fontSize:\"12px\",fontWeight:400,fontFamily:void 0,cssClass:\"\"}},axisBorder:{show:!0,color:\"#e0e0e0\",width:\"100%\",height:1,offsetX:0,offsetY:0},axisTicks:{show:!0,color:\"#e0e0e0\",height:6,offsetX:0,offsetY:0},tickAmount:void 0,tickPlacement:\"on\",min:void 0,max:void 0,range:void 0,floating:!1,decimalsInFloat:void 0,position:\"bottom\",title:{text:void 0,offsetX:0,offsetY:0,style:{color:void 0,fontSize:\"12px\",fontWeight:900,fontFamily:void 0,cssClass:\"\"}},crosshairs:{show:!0,width:1,position:\"back\",opacity:.9,stroke:{color:\"#b6b6b6\",width:1,dashArray:3},fill:{type:\"solid\",color:\"#B1B9C4\",gradient:{colorFrom:\"#D8E3F0\",colorTo:\"#BED1E6\",stops:[0,100],opacityFrom:.4,opacityTo:.5}},dropShadow:{enabled:!1,left:0,top:0,blur:1,opacity:.4}},tooltip:{enabled:!0,offsetY:0,formatter:void 0,style:{fontSize:\"12px\",fontFamily:void 0}}},yaxis:this.yAxis,theme:{mode:\"light\",palette:\"palette1\",monochrome:{enabled:!1,color:\"#008FFB\",shadeTo:\"light\",shadeIntensity:.65}}}}}]),t}(),P=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.graphics=new m(this.ctx),this.w.globals.isBarHorizontal&&(this.invertAxis=!0),this.helpers=new w(this),this.xAxisAnnotations=new k(this),this.yAxisAnnotations=new A(this),this.pointsAnnotations=new S(this),this.w.globals.isBarHorizontal&&this.w.config.yaxis[0].reversed&&(this.inversedReversedAxis=!0),this.xDivision=this.w.globals.gridWidth/this.w.globals.dataPoints}return r(t,[{key:\"drawAxesAnnotations\",value:function(){var t=this.w;if(t.globals.axisCharts){for(var e=this.yAxisAnnotations.drawYAxisAnnotations(),i=this.xAxisAnnotations.drawXAxisAnnotations(),a=this.pointsAnnotations.drawPointAnnotations(),s=t.config.chart.animations.enabled,r=[e,i,a],o=[i.node,e.node,a.node],n=0;n<3;n++)t.globals.dom.elGraphical.add(r[n]),!s||t.globals.resized||t.globals.dataChanged||\"scatter\"!==t.config.chart.type&&\"bubble\"!==t.config.chart.type&&t.globals.dataPoints>1&&o[n].classList.add(\"apexcharts-element-hidden\"),t.globals.delayedElements.push({el:o[n],index:0});this.helpers.annotationsBackground()}}},{key:\"drawImageAnnos\",value:function(){var t=this;this.w.config.annotations.images.map((function(e,i){t.addImage(e,i)}))}},{key:\"drawTextAnnos\",value:function(){var t=this;this.w.config.annotations.texts.map((function(e,i){t.addText(e,i)}))}},{key:\"addXaxisAnnotation\",value:function(t,e,i){this.xAxisAnnotations.addXaxisAnnotation(t,e,i)}},{key:\"addYaxisAnnotation\",value:function(t,e,i){this.yAxisAnnotations.addYaxisAnnotation(t,e,i)}},{key:\"addPointAnnotation\",value:function(t,e,i){this.pointsAnnotations.addPointAnnotation(t,e,i)}},{key:\"addText\",value:function(t,e){var i=t.x,a=t.y,s=t.text,r=t.textAnchor,o=t.foreColor,n=t.fontSize,l=t.fontFamily,h=t.fontWeight,c=t.cssClass,d=t.backgroundColor,g=t.borderWidth,u=t.strokeDashArray,f=t.borderRadius,p=t.borderColor,x=t.appendTo,b=void 0===x?\".apexcharts-annotations\":x,v=t.paddingLeft,m=void 0===v?4:v,y=t.paddingRight,w=void 0===y?4:y,k=t.paddingBottom,A=void 0===k?2:k,S=t.paddingTop,C=void 0===S?2:S,L=this.w,P=this.graphics.drawText({x:i,y:a,text:s,textAnchor:r||\"start\",fontSize:n||\"12px\",fontWeight:h||\"regular\",fontFamily:l||L.config.chart.fontFamily,foreColor:o||L.config.chart.foreColor,cssClass:c}),T=L.globals.dom.baseEl.querySelector(b);T&&T.appendChild(P.node);var M=P.bbox();if(s){var I=this.graphics.drawRect(M.x-m,M.y-C,M.width+m+w,M.height+A+C,f,d||\"transparent\",1,g,p,u);T.insertBefore(I.node,P.node)}}},{key:\"addImage\",value:function(t,e){var i=this.w,a=t.path,s=t.x,r=void 0===s?0:s,o=t.y,n=void 0===o?0:o,l=t.width,h=void 0===l?20:l,c=t.height,d=void 0===c?20:c,g=t.appendTo,u=void 0===g?\".apexcharts-annotations\":g,f=i.globals.dom.Paper.image(a);f.size(h,d).move(r,n);var p=i.globals.dom.baseEl.querySelector(u);return p&&p.appendChild(f.node),f}},{key:\"addXaxisAnnotationExternal\",value:function(t,e,i){return this.addAnnotationExternal({params:t,pushToMemory:e,context:i,type:\"xaxis\",contextMethod:i.addXaxisAnnotation}),i}},{key:\"addYaxisAnnotationExternal\",value:function(t,e,i){return this.addAnnotationExternal({params:t,pushToMemory:e,context:i,type:\"yaxis\",contextMethod:i.addYaxisAnnotation}),i}},{key:\"addPointAnnotationExternal\",value:function(t,e,i){return void 0===this.invertAxis&&(this.invertAxis=i.w.globals.isBarHorizontal),this.addAnnotationExternal({params:t,pushToMemory:e,context:i,type:\"point\",contextMethod:i.addPointAnnotation}),i}},{key:\"addAnnotationExternal\",value:function(t){var e=t.params,i=t.pushToMemory,a=t.context,s=t.type,r=t.contextMethod,o=a,n=o.w,l=n.globals.dom.baseEl.querySelector(\".apexcharts-\".concat(s,\"-annotations\")),h=l.childNodes.length+1,c=new L,d=Object.assign({},\"xaxis\"===s?c.xAxisAnnotation:\"yaxis\"===s?c.yAxisAnnotation:c.pointAnnotation),g=x.extend(d,e);switch(s){case\"xaxis\":this.addXaxisAnnotation(g,l,h);break;case\"yaxis\":this.addYaxisAnnotation(g,l,h);break;case\"point\":this.addPointAnnotation(g,l,h)}var u=n.globals.dom.baseEl.querySelector(\".apexcharts-\".concat(s,\"-annotations .apexcharts-\").concat(s,\"-annotation-label[rel='\").concat(h,\"']\")),f=this.helpers.addBackgroundToAnno(u,g);return f&&l.insertBefore(f.node,u),i&&n.globals.memory.methodsToExec.push({context:o,id:g.id?g.id:x.randomId(),method:r,label:\"addAnnotation\",params:e}),a}},{key:\"clearAnnotations\",value:function(t){var e=t.w,i=e.globals.dom.baseEl.querySelectorAll(\".apexcharts-yaxis-annotations, .apexcharts-xaxis-annotations, .apexcharts-point-annotations\");e.globals.memory.methodsToExec.map((function(t,i){\"addText\"!==t.label&&\"addAnnotation\"!==t.label||e.globals.memory.methodsToExec.splice(i,1)})),i=x.listToArray(i),Array.prototype.forEach.call(i,(function(t){for(;t.firstChild;)t.removeChild(t.firstChild)}))}},{key:\"removeAnnotation\",value:function(t,e){var i=t.w,a=i.globals.dom.baseEl.querySelectorAll(\".\".concat(e));a&&(i.globals.memory.methodsToExec.map((function(t,a){t.id===e&&i.globals.memory.methodsToExec.splice(a,1)})),Array.prototype.forEach.call(a,(function(t){t.parentElement.removeChild(t)})))}}]),t}(),T=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.months31=[1,3,5,7,8,10,12],this.months30=[2,4,6,9,11],this.daysCntOfYear=[0,31,59,90,120,151,181,212,243,273,304,334]}return r(t,[{key:\"isValidDate\",value:function(t){return!isNaN(this.parseDate(t))}},{key:\"getTimeStamp\",value:function(t){return Date.parse(t)?this.w.config.xaxis.labels.datetimeUTC?new Date(new Date(t).toISOString().substr(0,25)).getTime():new Date(t).getTime():t}},{key:\"getDate\",value:function(t){return this.w.config.xaxis.labels.datetimeUTC?new Date(new Date(t).toUTCString()):new Date(t)}},{key:\"parseDate\",value:function(t){var e=Date.parse(t);if(!isNaN(e))return this.getTimeStamp(t);var i=Date.parse(t.replace(/-/g,\"/\").replace(/[a-z]+/gi,\" \"));return i=this.getTimeStamp(i)}},{key:\"parseDateWithTimezone\",value:function(t){return Date.parse(t.replace(/-/g,\"/\").replace(/[a-z]+/gi,\" \"))}},{key:\"formatDate\",value:function(t,e){var i=this.w.globals.locale,a=this.w.config.xaxis.labels.datetimeUTC,s=[\"\\0\"].concat(u(i.months)),r=[\"\\x01\"].concat(u(i.shortMonths)),o=[\"\\x02\"].concat(u(i.days)),n=[\"\\x03\"].concat(u(i.shortDays));function l(t,e){var i=t+\"\";for(e=e||2;i.length12?g-12:0===g?12:g;e=(e=(e=(e=e.replace(/(^|[^\\\\])HH+/g,\"$1\"+l(g))).replace(/(^|[^\\\\])H/g,\"$1\"+g)).replace(/(^|[^\\\\])hh+/g,\"$1\"+l(f))).replace(/(^|[^\\\\])h/g,\"$1\"+f);var p=a?t.getUTCMinutes():t.getMinutes();e=(e=e.replace(/(^|[^\\\\])mm+/g,\"$1\"+l(p))).replace(/(^|[^\\\\])m/g,\"$1\"+p);var x=a?t.getUTCSeconds():t.getSeconds();e=(e=e.replace(/(^|[^\\\\])ss+/g,\"$1\"+l(x))).replace(/(^|[^\\\\])s/g,\"$1\"+x);var b=a?t.getUTCMilliseconds():t.getMilliseconds();e=e.replace(/(^|[^\\\\])fff+/g,\"$1\"+l(b,3)),b=Math.round(b/10),e=e.replace(/(^|[^\\\\])ff/g,\"$1\"+l(b)),b=Math.round(b/10);var v=g<12?\"AM\":\"PM\";e=(e=(e=e.replace(/(^|[^\\\\])f/g,\"$1\"+b)).replace(/(^|[^\\\\])TT+/g,\"$1\"+v)).replace(/(^|[^\\\\])T/g,\"$1\"+v.charAt(0));var m=v.toLowerCase();e=(e=e.replace(/(^|[^\\\\])tt+/g,\"$1\"+m)).replace(/(^|[^\\\\])t/g,\"$1\"+m.charAt(0));var y=-t.getTimezoneOffset(),w=a||!y?\"Z\":y>0?\"+\":\"-\";if(!a){var k=(y=Math.abs(y))%60;w+=l(Math.floor(y/60))+\":\"+l(k)}e=e.replace(/(^|[^\\\\])K/g,\"$1\"+w);var A=(a?t.getUTCDay():t.getDay())+1;return e=(e=(e=(e=(e=e.replace(new RegExp(o[0],\"g\"),o[A])).replace(new RegExp(n[0],\"g\"),n[A])).replace(new RegExp(s[0],\"g\"),s[c])).replace(new RegExp(r[0],\"g\"),r[c])).replace(/\\\\(.)/g,\"$1\")}},{key:\"getTimeUnitsfromTimestamp\",value:function(t,e,i){var a=this.w;void 0!==a.config.xaxis.min&&(t=a.config.xaxis.min),void 0!==a.config.xaxis.max&&(e=a.config.xaxis.max);var s=this.getDate(t),r=this.getDate(e),o=this.formatDate(s,\"yyyy MM dd HH mm ss fff\").split(\" \"),n=this.formatDate(r,\"yyyy MM dd HH mm ss fff\").split(\" \");return{minMillisecond:parseInt(o[6],10),maxMillisecond:parseInt(n[6],10),minSecond:parseInt(o[5],10),maxSecond:parseInt(n[5],10),minMinute:parseInt(o[4],10),maxMinute:parseInt(n[4],10),minHour:parseInt(o[3],10),maxHour:parseInt(n[3],10),minDate:parseInt(o[2],10),maxDate:parseInt(n[2],10),minMonth:parseInt(o[1],10)-1,maxMonth:parseInt(n[1],10)-1,minYear:parseInt(o[0],10),maxYear:parseInt(n[0],10)}}},{key:\"isLeapYear\",value:function(t){return t%4==0&&t%100!=0||t%400==0}},{key:\"calculcateLastDaysOfMonth\",value:function(t,e,i){return this.determineDaysOfMonths(t,e)-i}},{key:\"determineDaysOfYear\",value:function(t){var e=365;return this.isLeapYear(t)&&(e=366),e}},{key:\"determineRemainingDaysOfYear\",value:function(t,e,i){var a=this.daysCntOfYear[e]+i;return e>1&&this.isLeapYear()&&a++,a}},{key:\"determineDaysOfMonths\",value:function(t,e){var i=30;switch(t=x.monthMod(t),!0){case this.months30.indexOf(t)>-1:2===t&&(i=this.isLeapYear(e)?29:28);break;case this.months31.indexOf(t)>-1:default:i=31}return i}}]),t}(),M=function(t){var e,i=t.ctx,a=t.seriesIndex,s=t.dataPointIndex,r=t.y1,o=t.y2,n=t.w,l=n.globals.seriesRangeStart[a][s],h=n.globals.seriesRangeEnd[a][s],c=n.globals.labels[s],d=n.config.series[a].name?n.config.series[a].name:\"\",g=n.config.tooltip.y.formatter,u=n.config.tooltip.y.title.formatter,f={w:n,seriesIndex:a,dataPointIndex:s,start:l,end:h};\"function\"==typeof u&&(d=u(d,f)),null!==(e=n.config.series[a].data[s])&&void 0!==e&&e.x&&(c=n.config.series[a].data[s].x+\":\"),\"function\"==typeof g&&(c=g(c,f)),Number.isFinite(r)&&Number.isFinite(o)&&(l=r,h=o);var p=\"\",x=\"\",b=n.globals.colors[a];if(void 0===n.config.tooltip.x.formatter)if(\"datetime\"===n.config.xaxis.type){var v=new T(i);p=v.formatDate(v.getDate(l),n.config.tooltip.x.format),x=v.formatDate(v.getDate(h),n.config.tooltip.x.format)}else p=l,x=h;else p=n.config.tooltip.x.formatter(l),x=n.config.tooltip.x.formatter(h);return{start:l,end:h,startVal:p,endVal:x,ylabel:c,color:b,seriesName:d}},I=function(t){var e=t.color,i=t.seriesName,a=t.ylabel,s=t.start,r=t.end,o=t.seriesIndex,n=t.dataPointIndex,l=t.ctx.tooltip.tooltipLabels.getFormatters(o);s=l.yLbFormatter(s),r=l.yLbFormatter(r);var h=l.yLbFormatter(t.w.globals.series[o][n]),c='\\n '.concat(s,'\\n - \\n ').concat(r,\"\\n \");return'
'+(i||\"\")+'
'+a+\" \"+(t.w.globals.comboCharts?\"rangeArea\"===t.w.config.series[o].type||\"rangeBar\"===t.w.config.series[o].type?c:\"\".concat(h,\"\"):c)+\"
\"},z=function(){function t(e){a(this,t),this.opts=e}return r(t,[{key:\"line\",value:function(){return{chart:{animations:{easing:\"swing\"}},dataLabels:{enabled:!1},stroke:{width:5,curve:\"straight\"},markers:{size:0,hover:{sizeOffset:6}},xaxis:{crosshairs:{width:1}}}}},{key:\"sparkline\",value:function(t){this.opts.yaxis[0].show=!1,this.opts.yaxis[0].title.text=\"\",this.opts.yaxis[0].axisBorder.show=!1,this.opts.yaxis[0].axisTicks.show=!1,this.opts.yaxis[0].floating=!0;return x.extend(t,{grid:{show:!1,padding:{left:0,right:0,top:0,bottom:0}},legend:{show:!1},xaxis:{labels:{show:!1},tooltip:{enabled:!1},axisBorder:{show:!1},axisTicks:{show:!1}},chart:{toolbar:{show:!1},zoom:{enabled:!1}},dataLabels:{enabled:!1}})}},{key:\"bar\",value:function(){return{chart:{stacked:!1,animations:{easing:\"swing\"}},plotOptions:{bar:{dataLabels:{position:\"center\"}}},dataLabels:{style:{colors:[\"#fff\"]},background:{enabled:!1}},stroke:{width:0,lineCap:\"round\"},fill:{opacity:.85},legend:{markers:{shape:\"square\",radius:2,size:8}},tooltip:{shared:!1,intersect:!0},xaxis:{tooltip:{enabled:!1},tickPlacement:\"between\",crosshairs:{width:\"barWidth\",position:\"back\",fill:{type:\"gradient\"},dropShadow:{enabled:!1},stroke:{width:0}}}}}},{key:\"candlestick\",value:function(){var t=this;return{stroke:{width:1,colors:[\"#333\"]},fill:{opacity:1},dataLabels:{enabled:!1},tooltip:{shared:!0,custom:function(e){var i=e.seriesIndex,a=e.dataPointIndex,s=e.w;return t._getBoxTooltip(s,i,a,[\"Open\",\"High\",\"\",\"Low\",\"Close\"],\"candlestick\")}},states:{active:{filter:{type:\"none\"}}},xaxis:{crosshairs:{width:1}}}}},{key:\"boxPlot\",value:function(){var t=this;return{chart:{animations:{dynamicAnimation:{enabled:!1}}},stroke:{width:1,colors:[\"#24292e\"]},dataLabels:{enabled:!1},tooltip:{shared:!0,custom:function(e){var i=e.seriesIndex,a=e.dataPointIndex,s=e.w;return t._getBoxTooltip(s,i,a,[\"Minimum\",\"Q1\",\"Median\",\"Q3\",\"Maximum\"],\"boxPlot\")}},markers:{size:5,strokeWidth:1,strokeColors:\"#111\"},xaxis:{crosshairs:{width:1}}}}},{key:\"rangeBar\",value:function(){return{stroke:{width:0,lineCap:\"square\"},plotOptions:{bar:{borderRadius:0,dataLabels:{position:\"center\"}}},dataLabels:{enabled:!1,formatter:function(t,e){e.ctx;var i=e.seriesIndex,a=e.dataPointIndex,s=e.w,r=function(){var t=s.globals.seriesRangeStart[i][a];return s.globals.seriesRangeEnd[i][a]-t};return s.globals.comboCharts?\"rangeBar\"===s.config.series[i].type||\"rangeArea\"===s.config.series[i].type?r():t:r()},background:{enabled:!1},style:{colors:[\"#fff\"]}},tooltip:{shared:!1,followCursor:!0,custom:function(t){return t.w.config.plotOptions&&t.w.config.plotOptions.bar&&t.w.config.plotOptions.bar.horizontal?function(t){var i=M(t),a=i.color,s=i.seriesName,r=i.ylabel,o=i.startVal,n=i.endVal;return I(e(e({},t),{},{color:a,seriesName:s,ylabel:r,start:o,end:n}))}(t):function(t){var i=M(t),a=i.color,s=i.seriesName,r=i.ylabel,o=i.start,n=i.end;return I(e(e({},t),{},{color:a,seriesName:s,ylabel:r,start:o,end:n}))}(t)}},xaxis:{tickPlacement:\"between\",tooltip:{enabled:!1},crosshairs:{stroke:{width:0}}}}}},{key:\"area\",value:function(){return{stroke:{width:4,fill:{type:\"solid\",gradient:{inverseColors:!1,shade:\"light\",type:\"vertical\",opacityFrom:.65,opacityTo:.5,stops:[0,100,100]}}},fill:{type:\"gradient\",gradient:{inverseColors:!1,shade:\"light\",type:\"vertical\",opacityFrom:.65,opacityTo:.5,stops:[0,100,100]}},markers:{size:0,hover:{sizeOffset:6}},tooltip:{followCursor:!1}}}},{key:\"rangeArea\",value:function(){return{stroke:{curve:\"straight\",width:0},fill:{type:\"solid\",opacity:.6},markers:{size:0},states:{hover:{filter:{type:\"none\"}},active:{filter:{type:\"none\"}}},tooltip:{intersect:!1,shared:!0,followCursor:!0,custom:function(t){return function(t){var i=M(t),a=i.color,s=i.seriesName,r=i.ylabel,o=i.start,n=i.end;return I(e(e({},t),{},{color:a,seriesName:s,ylabel:r,start:o,end:n}))}(t)}}}}},{key:\"brush\",value:function(t){return x.extend(t,{chart:{toolbar:{autoSelected:\"selection\",show:!1},zoom:{enabled:!1}},dataLabels:{enabled:!1},stroke:{width:1},tooltip:{enabled:!1},xaxis:{tooltip:{enabled:!1}}})}},{key:\"stacked100\",value:function(t){t.dataLabels=t.dataLabels||{},t.dataLabels.formatter=t.dataLabels.formatter||void 0;var e=t.dataLabels.formatter;return t.yaxis.forEach((function(e,i){t.yaxis[i].min=0,t.yaxis[i].max=100})),\"bar\"===t.chart.type&&(t.dataLabels.formatter=e||function(t){return\"number\"==typeof t&&t?t.toFixed(0)+\"%\":t}),t}},{key:\"convertCatToNumeric\",value:function(t){return t.xaxis.convertedCatToNumeric=!0,t}},{key:\"convertCatToNumericXaxis\",value:function(t,e,i){t.xaxis.type=\"numeric\",t.xaxis.labels=t.xaxis.labels||{},t.xaxis.labels.formatter=t.xaxis.labels.formatter||function(t){return x.isNumber(t)?Math.floor(t):t};var a=t.xaxis.labels.formatter,s=t.xaxis.categories&&t.xaxis.categories.length?t.xaxis.categories:t.labels;return i&&i.length&&(s=i.map((function(t){return Array.isArray(t)?t:String(t)}))),s&&s.length&&(t.xaxis.labels.formatter=function(t){return x.isNumber(t)?a(s[Math.floor(t)-1]):a(t)}),t.xaxis.categories=[],t.labels=[],t.xaxis.tickAmount=t.xaxis.tickAmount||\"dataPoints\",t}},{key:\"bubble\",value:function(){return{dataLabels:{style:{colors:[\"#fff\"]}},tooltip:{shared:!1,intersect:!0},xaxis:{crosshairs:{width:0}},fill:{type:\"solid\",gradient:{shade:\"light\",inverse:!0,shadeIntensity:.55,opacityFrom:.4,opacityTo:.8}}}}},{key:\"scatter\",value:function(){return{dataLabels:{enabled:!1},tooltip:{shared:!1,intersect:!0},markers:{size:6,strokeWidth:1,hover:{sizeOffset:2}}}}},{key:\"heatmap\",value:function(){return{chart:{stacked:!1},fill:{opacity:1},dataLabels:{style:{colors:[\"#fff\"]}},stroke:{colors:[\"#fff\"]},tooltip:{followCursor:!0,marker:{show:!1},x:{show:!1}},legend:{position:\"top\",markers:{shape:\"square\",size:10,offsetY:2}},grid:{padding:{right:20}}}}},{key:\"treemap\",value:function(){return{chart:{zoom:{enabled:!1}},dataLabels:{style:{fontSize:14,fontWeight:600,colors:[\"#fff\"]}},stroke:{show:!0,width:2,colors:[\"#fff\"]},legend:{show:!1},fill:{gradient:{stops:[0,100]}},tooltip:{followCursor:!0,x:{show:!1}},grid:{padding:{left:0,right:0}},xaxis:{crosshairs:{show:!1},tooltip:{enabled:!1}}}}},{key:\"pie\",value:function(){return{chart:{toolbar:{show:!1}},plotOptions:{pie:{donut:{labels:{show:!1}}}},dataLabels:{formatter:function(t){return t.toFixed(1)+\"%\"},style:{colors:[\"#fff\"]},background:{enabled:!1},dropShadow:{enabled:!0}},stroke:{colors:[\"#fff\"]},fill:{opacity:1,gradient:{shade:\"light\",stops:[0,100]}},tooltip:{theme:\"dark\",fillSeriesColor:!0},legend:{position:\"right\"}}}},{key:\"donut\",value:function(){return{chart:{toolbar:{show:!1}},dataLabels:{formatter:function(t){return t.toFixed(1)+\"%\"},style:{colors:[\"#fff\"]},background:{enabled:!1},dropShadow:{enabled:!0}},stroke:{colors:[\"#fff\"]},fill:{opacity:1,gradient:{shade:\"light\",shadeIntensity:.35,stops:[80,100],opacityFrom:1,opacityTo:1}},tooltip:{theme:\"dark\",fillSeriesColor:!0},legend:{position:\"right\"}}}},{key:\"polarArea\",value:function(){return this.opts.yaxis[0].tickAmount=this.opts.yaxis[0].tickAmount?this.opts.yaxis[0].tickAmount:6,{chart:{toolbar:{show:!1}},dataLabels:{formatter:function(t){return t.toFixed(1)+\"%\"},enabled:!1},stroke:{show:!0,width:2},fill:{opacity:.7},tooltip:{theme:\"dark\",fillSeriesColor:!0},legend:{position:\"right\"}}}},{key:\"radar\",value:function(){return this.opts.yaxis[0].labels.offsetY=this.opts.yaxis[0].labels.offsetY?this.opts.yaxis[0].labels.offsetY:6,{dataLabels:{enabled:!1,style:{fontSize:\"11px\"}},stroke:{width:2},markers:{size:3,strokeWidth:1,strokeOpacity:1},fill:{opacity:.2},tooltip:{shared:!1,intersect:!0,followCursor:!0},grid:{show:!1},xaxis:{labels:{formatter:function(t){return t},style:{colors:[\"#a8a8a8\"],fontSize:\"11px\"}},tooltip:{enabled:!1},crosshairs:{show:!1}}}}},{key:\"radialBar\",value:function(){return{chart:{animations:{dynamicAnimation:{enabled:!0,speed:800}},toolbar:{show:!1}},fill:{gradient:{shade:\"dark\",shadeIntensity:.4,inverseColors:!1,type:\"diagonal2\",opacityFrom:1,opacityTo:1,stops:[70,98,100]}},legend:{show:!1,position:\"right\"},tooltip:{enabled:!1,fillSeriesColor:!0}}}},{key:\"_getBoxTooltip\",value:function(t,e,i,a,s){var r=t.globals.seriesCandleO[e][i],o=t.globals.seriesCandleH[e][i],n=t.globals.seriesCandleM[e][i],l=t.globals.seriesCandleL[e][i],h=t.globals.seriesCandleC[e][i];return t.config.series[e].type&&t.config.series[e].type!==s?'
\\n '.concat(t.config.series[e].name?t.config.series[e].name:\"series-\"+(e+1),\": \").concat(t.globals.series[e][i],\"\\n
\"):'
')+\"
\".concat(a[0],': ')+r+\"
\"+\"
\".concat(a[1],': ')+o+\"
\"+(n?\"
\".concat(a[2],': ')+n+\"
\":\"\")+\"
\".concat(a[3],': ')+l+\"
\"+\"
\".concat(a[4],': ')+h+\"
\"}}]),t}(),X=function(){function t(e){a(this,t),this.opts=e}return r(t,[{key:\"init\",value:function(t){var e=t.responsiveOverride,a=this.opts,s=new L,r=new z(a);this.chartType=a.chart.type,\"histogram\"===this.chartType&&(a.chart.type=\"bar\",a=x.extend({plotOptions:{bar:{columnWidth:\"99.99%\"}}},a)),a=this.extendYAxis(a),a=this.extendAnnotations(a);var o=s.init(),n={};if(a&&\"object\"===i(a)){var l={};l=-1!==[\"line\",\"area\",\"bar\",\"candlestick\",\"boxPlot\",\"rangeBar\",\"rangeArea\",\"histogram\",\"bubble\",\"scatter\",\"heatmap\",\"treemap\",\"pie\",\"polarArea\",\"donut\",\"radar\",\"radialBar\"].indexOf(a.chart.type)?r[a.chart.type]():r.line(),a.chart.brush&&a.chart.brush.enabled&&(l=r.brush(l)),a.chart.stacked&&\"100%\"===a.chart.stackType&&(a=r.stacked100(a)),this.checkForDarkTheme(window.Apex),this.checkForDarkTheme(a),a.xaxis=a.xaxis||window.Apex.xaxis||{},e||(a.xaxis.convertedCatToNumeric=!1),((a=this.checkForCatToNumericXAxis(this.chartType,l,a)).chart.sparkline&&a.chart.sparkline.enabled||window.Apex.chart&&window.Apex.chart.sparkline&&window.Apex.chart.sparkline.enabled)&&(l=r.sparkline(l)),n=x.extend(o,l)}var h=x.extend(n,window.Apex);return o=x.extend(h,a),o=this.handleUserInputErrors(o)}},{key:\"checkForCatToNumericXAxis\",value:function(t,e,i){var a=new z(i),s=(\"bar\"===t||\"boxPlot\"===t)&&i.plotOptions&&i.plotOptions.bar&&i.plotOptions.bar.horizontal,r=\"pie\"===t||\"polarArea\"===t||\"donut\"===t||\"radar\"===t||\"radialBar\"===t||\"heatmap\"===t,o=\"datetime\"!==i.xaxis.type&&\"numeric\"!==i.xaxis.type,n=i.xaxis.tickPlacement?i.xaxis.tickPlacement:e.xaxis&&e.xaxis.tickPlacement;return s||r||!o||\"between\"===n||(i=a.convertCatToNumeric(i)),i}},{key:\"extendYAxis\",value:function(t,e){var i=new L;(void 0===t.yaxis||!t.yaxis||Array.isArray(t.yaxis)&&0===t.yaxis.length)&&(t.yaxis={}),t.yaxis.constructor!==Array&&window.Apex.yaxis&&window.Apex.yaxis.constructor!==Array&&(t.yaxis=x.extend(t.yaxis,window.Apex.yaxis)),t.yaxis.constructor!==Array?t.yaxis=[x.extend(i.yAxis,t.yaxis)]:t.yaxis=x.extendArray(t.yaxis,i.yAxis);var a=!1;t.yaxis.forEach((function(t){t.logarithmic&&(a=!0)}));var s=t.series;return e&&!s&&(s=e.config.series),a&&s.length!==t.yaxis.length&&s.length&&(t.yaxis=s.map((function(e,a){if(e.name||(s[a].name=\"series-\".concat(a+1)),t.yaxis[a])return t.yaxis[a].seriesName=s[a].name,t.yaxis[a];var r=x.extend(i.yAxis,t.yaxis[0]);return r.show=!1,r}))),a&&s.length>1&&s.length!==t.yaxis.length&&console.warn(\"A multi-series logarithmic chart should have equal number of series and y-axes. Please make sure to equalize both.\"),t}},{key:\"extendAnnotations\",value:function(t){return void 0===t.annotations&&(t.annotations={},t.annotations.yaxis=[],t.annotations.xaxis=[],t.annotations.points=[]),t=this.extendYAxisAnnotations(t),t=this.extendXAxisAnnotations(t),t=this.extendPointAnnotations(t)}},{key:\"extendYAxisAnnotations\",value:function(t){var e=new L;return t.annotations.yaxis=x.extendArray(void 0!==t.annotations.yaxis?t.annotations.yaxis:[],e.yAxisAnnotation),t}},{key:\"extendXAxisAnnotations\",value:function(t){var e=new L;return t.annotations.xaxis=x.extendArray(void 0!==t.annotations.xaxis?t.annotations.xaxis:[],e.xAxisAnnotation),t}},{key:\"extendPointAnnotations\",value:function(t){var e=new L;return t.annotations.points=x.extendArray(void 0!==t.annotations.points?t.annotations.points:[],e.pointAnnotation),t}},{key:\"checkForDarkTheme\",value:function(t){t.theme&&\"dark\"===t.theme.mode&&(t.tooltip||(t.tooltip={}),\"light\"!==t.tooltip.theme&&(t.tooltip.theme=\"dark\"),t.chart.foreColor||(t.chart.foreColor=\"#f6f7f8\"),t.chart.background||(t.chart.background=\"#424242\"),t.theme.palette||(t.theme.palette=\"palette4\"))}},{key:\"handleUserInputErrors\",value:function(t){var e=t;if(e.tooltip.shared&&e.tooltip.intersect)throw new Error(\"tooltip.shared cannot be enabled when tooltip.intersect is true. Turn off any other option by setting it to false.\");if(\"bar\"===e.chart.type&&e.plotOptions.bar.horizontal){if(e.yaxis.length>1)throw new Error(\"Multiple Y Axis for bars are not supported. Switch to column chart by setting plotOptions.bar.horizontal=false\");e.yaxis[0].reversed&&(e.yaxis[0].opposite=!0),e.xaxis.tooltip.enabled=!1,e.yaxis[0].tooltip.enabled=!1,e.chart.zoom.enabled=!1}return\"bar\"!==e.chart.type&&\"rangeBar\"!==e.chart.type||e.tooltip.shared&&\"barWidth\"===e.xaxis.crosshairs.width&&e.series.length>1&&(e.xaxis.crosshairs.width=\"tickWidth\"),\"candlestick\"!==e.chart.type&&\"boxPlot\"!==e.chart.type||e.yaxis[0].reversed&&(console.warn(\"Reversed y-axis in \".concat(e.chart.type,\" chart is not supported.\")),e.yaxis[0].reversed=!1),e}}]),t}(),E=function(){function t(){a(this,t)}return r(t,[{key:\"initGlobalVars\",value:function(t){t.series=[],t.seriesCandleO=[],t.seriesCandleH=[],t.seriesCandleM=[],t.seriesCandleL=[],t.seriesCandleC=[],t.seriesRangeStart=[],t.seriesRangeEnd=[],t.seriesRange=[],t.seriesPercent=[],t.seriesGoals=[],t.seriesX=[],t.seriesZ=[],t.seriesNames=[],t.seriesTotals=[],t.seriesLog=[],t.seriesColors=[],t.stackedSeriesTotals=[],t.seriesXvalues=[],t.seriesYvalues=[],t.labels=[],t.hasGroups=!1,t.groups=[],t.categoryLabels=[],t.timescaleLabels=[],t.noLabelsProvided=!1,t.resizeTimer=null,t.selectionResizeTimer=null,t.delayedElements=[],t.pointsArray=[],t.dataLabelsRects=[],t.isXNumeric=!1,t.xaxisLabelsCount=0,t.skipLastTimelinelabel=!1,t.skipFirstTimelinelabel=!1,t.isDataXYZ=!1,t.isMultiLineX=!1,t.isMultipleYAxis=!1,t.maxY=-Number.MAX_VALUE,t.minY=Number.MIN_VALUE,t.minYArr=[],t.maxYArr=[],t.maxX=-Number.MAX_VALUE,t.minX=Number.MAX_VALUE,t.initialMaxX=-Number.MAX_VALUE,t.initialMinX=Number.MAX_VALUE,t.maxDate=0,t.minDate=Number.MAX_VALUE,t.minZ=Number.MAX_VALUE,t.maxZ=-Number.MAX_VALUE,t.minXDiff=Number.MAX_VALUE,t.yAxisScale=[],t.xAxisScale=null,t.xAxisTicksPositions=[],t.yLabelsCoords=[],t.yTitleCoords=[],t.barPadForNumericAxis=0,t.padHorizontal=0,t.xRange=0,t.yRange=[],t.zRange=0,t.dataPoints=0,t.xTickAmount=0}},{key:\"globalVars\",value:function(t){return{chartID:null,cuid:null,events:{beforeMount:[],mounted:[],updated:[],clicked:[],selection:[],dataPointSelection:[],zoomed:[],scrolled:[]},colors:[],clientX:null,clientY:null,fill:{colors:[]},stroke:{colors:[]},dataLabels:{style:{colors:[]}},radarPolygons:{fill:{colors:[]}},markers:{colors:[],size:t.markers.size,largestSize:0},animationEnded:!1,isTouchDevice:\"ontouchstart\"in window||navigator.msMaxTouchPoints,isDirty:!1,isExecCalled:!1,initialConfig:null,initialSeries:[],lastXAxis:[],lastYAxis:[],columnSeries:null,labels:[],timescaleLabels:[],noLabelsProvided:!1,allSeriesCollapsed:!1,collapsedSeries:[],collapsedSeriesIndices:[],ancillaryCollapsedSeries:[],ancillaryCollapsedSeriesIndices:[],risingSeries:[],dataFormatXNumeric:!1,capturedSeriesIndex:-1,capturedDataPointIndex:-1,selectedDataPoints:[],goldenPadding:35,invalidLogScale:!1,ignoreYAxisIndexes:[],yAxisSameScaleIndices:[],maxValsInArrayIndex:0,radialSize:0,selection:void 0,zoomEnabled:\"zoom\"===t.chart.toolbar.autoSelected&&t.chart.toolbar.tools.zoom&&t.chart.zoom.enabled,panEnabled:\"pan\"===t.chart.toolbar.autoSelected&&t.chart.toolbar.tools.pan,selectionEnabled:\"selection\"===t.chart.toolbar.autoSelected&&t.chart.toolbar.tools.selection,yaxis:null,mousedown:!1,lastClientPosition:{},visibleXRange:void 0,yValueDecimal:0,total:0,SVGNS:\"http://www.w3.org/2000/svg\",svgWidth:0,svgHeight:0,noData:!1,locale:{},dom:{},memory:{methodsToExec:[]},shouldAnimate:!0,skipLastTimelinelabel:!1,skipFirstTimelinelabel:!1,delayedElements:[],axisCharts:!0,isDataXYZ:!1,resized:!1,resizeTimer:null,comboCharts:!1,dataChanged:!1,previousPaths:[],allSeriesHasEqualX:!0,pointsArray:[],dataLabelsRects:[],lastDrawnDataLabelsIndexes:[],hasNullValues:!1,easing:null,zoomed:!1,gridWidth:0,gridHeight:0,rotateXLabels:!1,defaultLabels:!1,xLabelFormatter:void 0,yLabelFormatters:[],xaxisTooltipFormatter:void 0,ttKeyFormatter:void 0,ttVal:void 0,ttZFormatter:void 0,LINE_HEIGHT_RATIO:1.618,xAxisLabelsHeight:0,xAxisGroupLabelsHeight:0,xAxisLabelsWidth:0,yAxisLabelsWidth:0,scaleX:1,scaleY:1,translateX:0,translateY:0,translateYAxisX:[],yAxisWidths:[],translateXAxisY:0,translateXAxisX:0,tooltip:null}}},{key:\"init\",value:function(t){var e=this.globalVars(t);return this.initGlobalVars(e),e.initialConfig=x.extend({},t),e.initialSeries=x.clone(t.series),e.lastXAxis=x.clone(e.initialConfig.xaxis),e.lastYAxis=x.clone(e.initialConfig.yaxis),e}}]),t}(),Y=function(){function t(e){a(this,t),this.opts=e}return r(t,[{key:\"init\",value:function(){var t=new X(this.opts).init({responsiveOverride:!1});return{config:t,globals:(new E).init(t)}}}]),t}(),F=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.opts=null,this.seriesIndex=0}return r(t,[{key:\"clippedImgArea\",value:function(t){var e=this.w,i=e.config,a=parseInt(e.globals.gridWidth,10),s=parseInt(e.globals.gridHeight,10),r=a>s?a:s,o=t.image,n=0,l=0;void 0===t.width&&void 0===t.height?void 0!==i.fill.image.width&&void 0!==i.fill.image.height?(n=i.fill.image.width+1,l=i.fill.image.height):(n=r+1,l=r):(n=t.width,l=t.height);var h=document.createElementNS(e.globals.SVGNS,\"pattern\");m.setAttrs(h,{id:t.patternID,patternUnits:t.patternUnits?t.patternUnits:\"userSpaceOnUse\",width:n+\"px\",height:l+\"px\"});var c=document.createElementNS(e.globals.SVGNS,\"image\");h.appendChild(c),c.setAttributeNS(window.SVG.xlink,\"href\",o),m.setAttrs(c,{x:0,y:0,preserveAspectRatio:\"none\",width:n+\"px\",height:l+\"px\"}),c.style.opacity=t.opacity,e.globals.dom.elDefs.node.appendChild(h)}},{key:\"getSeriesIndex\",value:function(t){var e=this.w;return(\"bar\"===e.config.chart.type||\"rangeBar\"===e.config.chart.type)&&e.config.plotOptions.bar.distributed||\"heatmap\"===e.config.chart.type||\"treemap\"===e.config.chart.type?this.seriesIndex=t.seriesNumber:this.seriesIndex=t.seriesNumber%e.globals.series.length,this.seriesIndex}},{key:\"fillPath\",value:function(t){var e=this.w;this.opts=t;var i,a,s,r=this.w.config;this.seriesIndex=this.getSeriesIndex(t);var o=this.getFillColors()[this.seriesIndex];void 0!==e.globals.seriesColors[this.seriesIndex]&&(o=e.globals.seriesColors[this.seriesIndex]),\"function\"==typeof o&&(o=o({seriesIndex:this.seriesIndex,dataPointIndex:t.dataPointIndex,value:t.value,w:e}));var n=t.fillType?t.fillType:this.getFillType(this.seriesIndex),l=Array.isArray(r.fill.opacity)?r.fill.opacity[this.seriesIndex]:r.fill.opacity;t.color&&(o=t.color);var h=o;if(-1===o.indexOf(\"rgb\")?o.length<9&&(h=x.hexToRgba(o,l)):o.indexOf(\"rgba\")>-1&&(l=x.getOpacityFromRGBA(o)),t.opacity&&(l=t.opacity),\"pattern\"===n&&(a=this.handlePatternFill({fillConfig:t.fillConfig,patternFill:a,fillColor:o,fillOpacity:l,defaultColor:h})),\"gradient\"===n&&(s=this.handleGradientFill({fillConfig:t.fillConfig,fillColor:o,fillOpacity:l,i:this.seriesIndex})),\"image\"===n){var c=r.fill.image.src,d=t.patternID?t.patternID:\"\";this.clippedImgArea({opacity:l,image:Array.isArray(c)?t.seriesNumber-1&&(u=x.getOpacityFromRGBA(g));var f=void 0===o.gradient.opacityTo?a:Array.isArray(o.gradient.opacityTo)?o.gradient.opacityTo[r]:o.gradient.opacityTo;if(void 0===o.gradient.gradientToColors||0===o.gradient.gradientToColors.length)n=\"dark\"===o.gradient.shade?c.shadeColor(-1*parseFloat(o.gradient.shadeIntensity),i.indexOf(\"rgb\")>-1?x.rgb2hex(i):i):c.shadeColor(parseFloat(o.gradient.shadeIntensity),i.indexOf(\"rgb\")>-1?x.rgb2hex(i):i);else if(o.gradient.gradientToColors[l.seriesNumber]){var p=o.gradient.gradientToColors[l.seriesNumber];n=p,p.indexOf(\"rgba\")>-1&&(f=x.getOpacityFromRGBA(p))}else n=i;if(o.gradient.gradientFrom&&(g=o.gradient.gradientFrom),o.gradient.gradientTo&&(n=o.gradient.gradientTo),o.gradient.inverseColors){var b=g;g=n,n=b}return g.indexOf(\"rgb\")>-1&&(g=x.rgb2hex(g)),n.indexOf(\"rgb\")>-1&&(n=x.rgb2hex(n)),h.drawGradient(d,g,n,u,f,l.size,o.gradient.stops,o.gradient.colorStops,r)}}]),t}(),R=function(){function t(e,i){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"setGlobalMarkerSize\",value:function(){var t=this.w;if(t.globals.markers.size=Array.isArray(t.config.markers.size)?t.config.markers.size:[t.config.markers.size],t.globals.markers.size.length>0){if(t.globals.markers.size.length4&&void 0!==arguments[4]&&arguments[4],o=this.w,n=e,l=t,h=null,c=new m(this.ctx),d=o.config.markers.discrete&&o.config.markers.discrete.length;if((o.globals.markers.size[e]>0||r||d)&&(h=c.group({class:r||d?\"\":\"apexcharts-series-markers\"})).attr(\"clip-path\",\"url(#gridRectMarkerMask\".concat(o.globals.cuid,\")\")),Array.isArray(l.x))for(var g=0;g0:o.config.markers.size>0;if(p||r||d){x.isNumber(l.y[g])?f+=\" w\".concat(x.randomId()):f=\"apexcharts-nullpoint\";var b=this.getMarkerConfig({cssClass:f,seriesIndex:e,dataPointIndex:u});o.config.series[n].data[u]&&(o.config.series[n].data[u].fillColor&&(b.pointFillColor=o.config.series[n].data[u].fillColor),o.config.series[n].data[u].strokeColor&&(b.pointStrokeColor=o.config.series[n].data[u].strokeColor)),a&&(b.pSize=a),(s=c.drawMarker(l.x[g],l.y[g],b)).attr(\"rel\",u),s.attr(\"j\",u),s.attr(\"index\",e),s.node.setAttribute(\"default-marker-size\",b.pSize);var y=new v(this.ctx);y.setSelectionFilter(s,e,u),this.addEvents(s),h&&h.add(s)}else void 0===o.globals.pointsArray[e]&&(o.globals.pointsArray[e]=[]),o.globals.pointsArray[e].push([l.x[g],l.y[g]])}return h}},{key:\"getMarkerConfig\",value:function(t){var e=t.cssClass,i=t.seriesIndex,a=t.dataPointIndex,s=void 0===a?null:a,r=t.finishRadius,o=void 0===r?null:r,n=this.w,l=this.getMarkerStyle(i),h=n.globals.markers.size[i],c=n.config.markers;return null!==s&&c.discrete.length&&c.discrete.map((function(t){t.seriesIndex===i&&t.dataPointIndex===s&&(l.pointStrokeColor=t.strokeColor,l.pointFillColor=t.fillColor,h=t.size,l.pointShape=t.shape)})),{pSize:null===o?h:o,pRadius:c.radius,width:Array.isArray(c.width)?c.width[i]:c.width,height:Array.isArray(c.height)?c.height[i]:c.height,pointStrokeWidth:Array.isArray(c.strokeWidth)?c.strokeWidth[i]:c.strokeWidth,pointStrokeColor:l.pointStrokeColor,pointFillColor:l.pointFillColor,shape:l.pointShape||(Array.isArray(c.shape)?c.shape[i]:c.shape),class:e,pointStrokeOpacity:Array.isArray(c.strokeOpacity)?c.strokeOpacity[i]:c.strokeOpacity,pointStrokeDashArray:Array.isArray(c.strokeDashArray)?c.strokeDashArray[i]:c.strokeDashArray,pointFillOpacity:Array.isArray(c.fillOpacity)?c.fillOpacity[i]:c.fillOpacity,seriesIndex:i}}},{key:\"addEvents\",value:function(t){var e=this.w,i=new m(this.ctx);t.node.addEventListener(\"mouseenter\",i.pathMouseEnter.bind(this.ctx,t)),t.node.addEventListener(\"mouseleave\",i.pathMouseLeave.bind(this.ctx,t)),t.node.addEventListener(\"mousedown\",i.pathMouseDown.bind(this.ctx,t)),t.node.addEventListener(\"click\",e.config.markers.onClick),t.node.addEventListener(\"dblclick\",e.config.markers.onDblClick),t.node.addEventListener(\"touchstart\",i.pathMouseDown.bind(this.ctx,t),{passive:!0})}},{key:\"getMarkerStyle\",value:function(t){var e=this.w,i=e.globals.markers.colors,a=e.config.markers.strokeColor||e.config.markers.strokeColors;return{pointStrokeColor:Array.isArray(a)?a[t]:a,pointFillColor:Array.isArray(i)?i[t]:i}}}]),t}(),D=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.initialAnim=this.w.config.chart.animations.enabled,this.dynamicAnim=this.initialAnim&&this.w.config.chart.animations.dynamicAnimation.enabled}return r(t,[{key:\"draw\",value:function(t,e,i){var a=this.w,s=new m(this.ctx),r=i.realIndex,o=i.pointsPos,n=i.zRatio,l=i.elParent,h=s.group({class:\"apexcharts-series-markers apexcharts-series-\".concat(a.config.chart.type)});if(h.attr(\"clip-path\",\"url(#gridRectMarkerMask\".concat(a.globals.cuid,\")\")),Array.isArray(o.x))for(var c=0;cp.maxBubbleRadius&&(f=p.maxBubbleRadius)}a.config.chart.animations.enabled||(u=f);var x=o.x[c],b=o.y[c];if(u=u||0,null!==b&&void 0!==a.globals.series[r][d]||(g=!1),g){var v=this.drawPoint(x,b,u,f,r,d,e);h.add(v)}l.add(h)}}},{key:\"drawPoint\",value:function(t,e,i,a,s,r,o){var n=this.w,l=s,h=new b(this.ctx),c=new v(this.ctx),d=new F(this.ctx),g=new R(this.ctx),u=new m(this.ctx),f=g.getMarkerConfig({cssClass:\"apexcharts-marker\",seriesIndex:l,dataPointIndex:r,finishRadius:\"bubble\"===n.config.chart.type||n.globals.comboCharts&&n.config.series[s]&&\"bubble\"===n.config.series[s].type?a:null});a=f.pSize;var p,x=d.fillPath({seriesNumber:s,dataPointIndex:r,color:f.pointFillColor,patternUnits:\"objectBoundingBox\",value:n.globals.series[s][o]});if(\"circle\"===f.shape?p=u.drawCircle(i):\"square\"!==f.shape&&\"rect\"!==f.shape||(p=u.drawRect(0,0,f.width-f.pointStrokeWidth/2,f.height-f.pointStrokeWidth/2,f.pRadius)),n.config.series[l].data[r]&&n.config.series[l].data[r].fillColor&&(x=n.config.series[l].data[r].fillColor),p.attr({x:t-f.width/2-f.pointStrokeWidth/2,y:e-f.height/2-f.pointStrokeWidth/2,cx:t,cy:e,fill:x,\"fill-opacity\":f.pointFillOpacity,stroke:f.pointStrokeColor,r:a,\"stroke-width\":f.pointStrokeWidth,\"stroke-dasharray\":f.pointStrokeDashArray,\"stroke-opacity\":f.pointStrokeOpacity}),n.config.chart.dropShadow.enabled){var y=n.config.chart.dropShadow;c.dropShadow(p,y,s)}if(!this.initialAnim||n.globals.dataChanged||n.globals.resized)n.globals.animationEnded=!0;else{var w=n.config.chart.animations.speed;h.animateMarker(p,0,\"circle\"===f.shape?a:{width:f.width,height:f.height},w,n.globals.easing,(function(){window.setTimeout((function(){h.animationCompleted(p)}),100)}))}if(n.globals.dataChanged&&\"circle\"===f.shape)if(this.dynamicAnim){var k,A,S,C,L=n.config.chart.animations.dynamicAnimation.speed;null!=(C=n.globals.previousPaths[s]&&n.globals.previousPaths[s][o])&&(k=C.x,A=C.y,S=void 0!==C.r?C.r:a);for(var P=0;Pn.globals.gridHeight+d&&(e=n.globals.gridHeight+d/2),void 0===n.globals.dataLabelsRects[a]&&(n.globals.dataLabelsRects[a]=[]),n.globals.dataLabelsRects[a].push({x:t,y:e,width:c,height:d});var g=n.globals.dataLabelsRects[a].length-2,u=void 0!==n.globals.lastDrawnDataLabelsIndexes[a]?n.globals.lastDrawnDataLabelsIndexes[a][n.globals.lastDrawnDataLabelsIndexes[a].length-1]:0;if(void 0!==n.globals.dataLabelsRects[a][g]){var f=n.globals.dataLabelsRects[a][u];(t>f.x+f.width+2||e>f.y+f.height+2||t+ce.globals.gridWidth+p.textRects.width+10)&&(n=\"\");var x=e.globals.dataLabels.style.colors[r];((\"bar\"===e.config.chart.type||\"rangeBar\"===e.config.chart.type)&&e.config.plotOptions.bar.distributed||e.config.dataLabels.distributed)&&(x=e.globals.dataLabels.style.colors[o]),\"function\"==typeof x&&(x=x({series:e.globals.series,seriesIndex:r,dataPointIndex:o,w:e})),g&&(x=g);var b=d.offsetX,y=d.offsetY;if(\"bar\"!==e.config.chart.type&&\"rangeBar\"!==e.config.chart.type||(b=0,y=0),p.drawnextLabel){var w=i.drawText({width:100,height:parseInt(d.style.fontSize,10),x:a+b,y:s+y,foreColor:x,textAnchor:l||d.textAnchor,text:n,fontSize:h||d.style.fontSize,fontFamily:d.style.fontFamily,fontWeight:d.style.fontWeight||\"normal\"});if(w.attr({class:\"apexcharts-datalabel\",cx:a,cy:s}),d.dropShadow.enabled){var k=d.dropShadow;new v(this.ctx).dropShadow(w,k)}c.add(w),void 0===e.globals.lastDrawnDataLabelsIndexes[r]&&(e.globals.lastDrawnDataLabelsIndexes[r]=[]),e.globals.lastDrawnDataLabelsIndexes[r].push(o)}}}},{key:\"addBackgroundToDataLabel\",value:function(t,e){var i=this.w,a=i.config.dataLabels.background,s=a.padding,r=a.padding/2,o=e.width,n=e.height,l=new m(this.ctx).drawRect(e.x-s,e.y-r/2,o+2*s,n+r,a.borderRadius,\"transparent\"===i.config.chart.background?\"#fff\":i.config.chart.background,a.opacity,a.borderWidth,a.borderColor);a.dropShadow.enabled&&new v(this.ctx).dropShadow(l,a.dropShadow);return l}},{key:\"dataLabelsBackground\",value:function(){var t=this.w;if(\"bubble\"!==t.config.chart.type)for(var e=t.globals.dom.baseEl.querySelectorAll(\".apexcharts-datalabels text\"),i=0;i0&&void 0!==arguments[0])||arguments[0],e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=this.w,s=x.clone(a.globals.initialSeries);a.globals.previousPaths=[],i?(a.globals.collapsedSeries=[],a.globals.ancillaryCollapsedSeries=[],a.globals.collapsedSeriesIndices=[],a.globals.ancillaryCollapsedSeriesIndices=[]):s=this.emptyCollapsedSeries(s),a.config.series=s,t&&(e&&(a.globals.zoomed=!1,this.ctx.updateHelpers.revertDefaultAxisMinMax()),this.ctx.updateHelpers._updateSeries(s,a.config.chart.animations.dynamicAnimation.enabled))}},{key:\"emptyCollapsedSeries\",value:function(t){for(var e=this.w,i=0;i-1&&(t[i].data=[]);return t}},{key:\"toggleSeriesOnHover\",value:function(t,e){var i=this.w;e||(e=t.target);var a=i.globals.dom.baseEl.querySelectorAll(\".apexcharts-series, .apexcharts-datalabels\");if(\"mousemove\"===t.type){var s=parseInt(e.getAttribute(\"rel\"),10)-1,r=null,o=null;i.globals.axisCharts||\"radialBar\"===i.config.chart.type?i.globals.axisCharts?(r=i.globals.dom.baseEl.querySelector(\".apexcharts-series[data\\\\:realIndex='\".concat(s,\"']\")),o=i.globals.dom.baseEl.querySelector(\".apexcharts-datalabels[data\\\\:realIndex='\".concat(s,\"']\"))):r=i.globals.dom.baseEl.querySelector(\".apexcharts-series[rel='\".concat(s+1,\"']\")):r=i.globals.dom.baseEl.querySelector(\".apexcharts-series[rel='\".concat(s+1,\"'] path\"));for(var n=0;n=t.from&&a<=t.to&&s[e].classList.remove(i.legendInactiveClass)}}(a.config.plotOptions.heatmap.colorScale.ranges[o])}else\"mouseout\"===t.type&&r(\"remove\")}},{key:\"getActiveConfigSeriesIndex\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"asc\",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=this.w,a=0;if(i.config.series.length>1)for(var s=i.config.series.map((function(t,a){return t.data&&t.data.length>0&&-1===i.globals.collapsedSeriesIndices.indexOf(a)&&(!i.globals.comboCharts||0===e.length||e.length&&e.indexOf(i.config.series[a].type)>-1)?a:-1})),r=\"asc\"===t?0:s.length-1;\"asc\"===t?r=0;\"asc\"===t?r++:r--)if(-1!==s[r]){a=s[r];break}return a}},{key:\"getBarSeriesIndices\",value:function(){return this.w.globals.comboCharts?this.w.config.series.map((function(t,e){return\"bar\"===t.type||\"column\"===t.type?e:-1})).filter((function(t){return-1!==t})):this.w.config.series.map((function(t,e){return e}))}},{key:\"getPreviousPaths\",value:function(){var t=this.w;function e(e,i,a){for(var s=e[i].childNodes,r={type:a,paths:[],realIndex:e[i].getAttribute(\"data:realIndex\")},o=0;o0)for(var a=function(e){for(var i=t.globals.dom.baseEl.querySelectorAll(\".apexcharts-\".concat(t.config.chart.type,\" .apexcharts-series[data\\\\:realIndex='\").concat(e,\"'] rect\")),a=[],s=function(t){var e=function(e){return i[t].getAttribute(e)},s={x:parseFloat(e(\"x\")),y:parseFloat(e(\"y\")),width:parseFloat(e(\"width\")),height:parseFloat(e(\"height\"))};a.push({rect:s,color:i[t].getAttribute(\"color\")})},r=0;r0)for(var a=0;a0?t:[]}));return t}}]),t}(),N=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.twoDSeries=[],this.threeDSeries=[],this.twoDSeriesX=[],this.seriesGoals=[],this.coreUtils=new y(this.ctx)}return r(t,[{key:\"isMultiFormat\",value:function(){return this.isFormatXY()||this.isFormat2DArray()}},{key:\"isFormatXY\",value:function(){var t=this.w.config.series.slice(),e=new O(this.ctx);if(this.activeSeriesIndex=e.getActiveConfigSeriesIndex(),void 0!==t[this.activeSeriesIndex].data&&t[this.activeSeriesIndex].data.length>0&&null!==t[this.activeSeriesIndex].data[0]&&void 0!==t[this.activeSeriesIndex].data[0].x&&null!==t[this.activeSeriesIndex].data[0])return!0}},{key:\"isFormat2DArray\",value:function(){var t=this.w.config.series.slice(),e=new O(this.ctx);if(this.activeSeriesIndex=e.getActiveConfigSeriesIndex(),void 0!==t[this.activeSeriesIndex].data&&t[this.activeSeriesIndex].data.length>0&&void 0!==t[this.activeSeriesIndex].data[0]&&null!==t[this.activeSeriesIndex].data[0]&&t[this.activeSeriesIndex].data[0].constructor===Array)return!0}},{key:\"handleFormat2DArray\",value:function(t,e){for(var i=this.w.config,a=this.w.globals,s=\"boxPlot\"===i.chart.type||\"boxPlot\"===i.series[e].type,r=0;r=5?this.twoDSeries.push(x.parseNumber(t[e].data[r][4])):this.twoDSeries.push(x.parseNumber(t[e].data[r][1])),a.dataFormatXNumeric=!0),\"datetime\"===i.xaxis.type){var o=new Date(t[e].data[r][0]);o=new Date(o).getTime(),this.twoDSeriesX.push(o)}else this.twoDSeriesX.push(t[e].data[r][0]);for(var n=0;n-1&&(r=this.activeSeriesIndex);for(var o=0;o1&&void 0!==arguments[1]?arguments[1]:this.ctx,a=this.w.config,s=this.w.globals,r=new T(i),o=a.labels.length>0?a.labels.slice():a.xaxis.categories.slice();s.isRangeBar=\"rangeBar\"===a.chart.type&&s.isBarHorizontal,s.hasGroups=\"category\"===a.xaxis.type&&a.xaxis.group.groups.length>0,s.hasGroups&&(s.groups=a.xaxis.group.groups);for(var n=function(){for(var t=0;t0&&(this.twoDSeriesX=o,s.seriesX.push(this.twoDSeriesX))),s.labels.push(this.twoDSeriesX);var h=t[l].data.map((function(t){return x.parseNumber(t)}));s.series.push(h)}s.seriesZ.push(this.threeDSeries),void 0!==t[l].name?s.seriesNames.push(t[l].name):s.seriesNames.push(\"series-\"+parseInt(l+1,10)),void 0!==t[l].color?s.seriesColors.push(t[l].color):s.seriesColors.push(void 0)}return this.w}},{key:\"parseDataNonAxisCharts\",value:function(t){var e=this.w.globals,i=this.w.config;e.series=t.slice(),e.seriesNames=i.labels.slice();for(var a=0;a0)i.labels=e.xaxis.categories;else if(e.labels.length>0)i.labels=e.labels.slice();else if(this.fallbackToCategory){if(i.labels=i.labels[0],i.seriesRange.length&&(i.seriesRange.map((function(t){t.forEach((function(t){i.labels.indexOf(t.x)<0&&t.x&&i.labels.push(t.x)}))})),i.labels=i.labels.filter((function(t,e,i){return i.indexOf(t)===e}))),e.xaxis.convertedCatToNumeric)new z(e).convertCatToNumericXaxis(e,this.ctx,i.seriesX[0]),this._generateExternalLabels(t)}else this._generateExternalLabels(t)}},{key:\"_generateExternalLabels\",value:function(t){var e=this.w.globals,i=this.w.config,a=[];if(e.axisCharts){if(e.series.length>0)if(this.isFormatXY())for(var s=i.series.map((function(t,e){return t.data.filter((function(t,e,i){return i.findIndex((function(e){return e.x===t.x}))===e}))})),r=s.reduce((function(t,e,i,a){return a[t].length>e.length?t:i}),0),o=0;o0&&i<100?t.toFixed(1):t.toFixed(0)}if(e.globals.isBarHorizontal)if(e.globals.maxY-e.globals.minYArr<4)return t.toFixed(1);return t.toFixed(0)}return t},\"function\"==typeof e.config.tooltip.x.formatter?e.globals.ttKeyFormatter=e.config.tooltip.x.formatter:e.globals.ttKeyFormatter=e.globals.xLabelFormatter,\"function\"==typeof e.config.xaxis.tooltip.formatter&&(e.globals.xaxisTooltipFormatter=e.config.xaxis.tooltip.formatter),(Array.isArray(e.config.tooltip.y)||void 0!==e.config.tooltip.y.formatter)&&(e.globals.ttVal=e.config.tooltip.y),void 0!==e.config.tooltip.z.formatter&&(e.globals.ttZFormatter=e.config.tooltip.z.formatter),void 0!==e.config.legend.formatter&&(e.globals.legendFormatter=e.config.legend.formatter),e.config.yaxis.forEach((function(i,a){void 0!==i.labels.formatter?e.globals.yLabelFormatters[a]=i.labels.formatter:e.globals.yLabelFormatters[a]=function(s){return e.globals.xyCharts?Array.isArray(s)?s.map((function(e){return t.defaultYFormatter(e,i,a)})):t.defaultYFormatter(s,i,a):s}})),e.globals}},{key:\"heatmapLabelFormatters\",value:function(){var t=this.w;if(\"heatmap\"===t.config.chart.type){t.globals.yAxisScale[0].result=t.globals.seriesNames.slice();var e=t.globals.seriesNames.reduce((function(t,e){return t.length>e.length?t:e}),0);t.globals.yAxisScale[0].niceMax=e,t.globals.yAxisScale[0].niceMin=e}}}]),t}(),B=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"getLabel\",value:function(t,e,i,a){var s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[],r=arguments.length>5&&void 0!==arguments[5]?arguments[5]:\"12px\",o=!(arguments.length>6&&void 0!==arguments[6])||arguments[6],n=this.w,l=void 0===t[a]?\"\":t[a],h=l,c=n.globals.xLabelFormatter,d=n.config.xaxis.labels.formatter,g=!1,u=new W(this.ctx),f=l;o&&(h=u.xLabelFormat(c,l,f,{i:a,dateFormatter:new T(this.ctx).formatDate,w:n}),void 0!==d&&(h=d(l,t[a],{i:a,dateFormatter:new T(this.ctx).formatDate,w:n})));var p=function(t){var i=null;return e.forEach((function(t){\"month\"===t.unit?i=\"year\":\"day\"===t.unit?i=\"month\":\"hour\"===t.unit?i=\"day\":\"minute\"===t.unit&&(i=\"hour\")})),i===t};e.length>0?(g=p(e[a].unit),i=e[a].position,h=e[a].value):\"datetime\"===n.config.xaxis.type&&void 0===d&&(h=\"\"),void 0===h&&(h=\"\"),h=Array.isArray(h)?h:h.toString();var x=new m(this.ctx),b={};b=n.globals.rotateXLabels&&o?x.getTextRects(h,parseInt(r,10),null,\"rotate(\".concat(n.config.xaxis.labels.rotate,\" 0 0)\"),!1):x.getTextRects(h,parseInt(r,10));var v=!n.config.xaxis.labels.showDuplicates&&this.ctx.timeScale;return!Array.isArray(h)&&(0===h.indexOf(\"NaN\")||0===h.toLowerCase().indexOf(\"invalid\")||h.toLowerCase().indexOf(\"infinity\")>=0||s.indexOf(h)>=0&&v)&&(h=\"\"),{x:i,text:h,textRect:b,isBold:g}}},{key:\"checkLabelBasedOnTickamount\",value:function(t,e,i){var a=this.w,s=a.config.xaxis.tickAmount;return\"dataPoints\"===s&&(s=Math.round(a.globals.gridWidth/120)),s>i||t%Math.round(i/(s+1))==0||(e.text=\"\"),e}},{key:\"checkForOverflowingLabels\",value:function(t,e,i,a,s){var r=this.w;if(0===t&&r.globals.skipFirstTimelinelabel&&(e.text=\"\"),t===i-1&&r.globals.skipLastTimelinelabel&&(e.text=\"\"),r.config.xaxis.labels.hideOverlappingLabels&&a.length>0){var o=s[s.length-1];e.x0){!0===n.config.yaxis[s].opposite&&(t+=a.width);for(var c=e;c>=0;c--){var d=h+e/10+n.config.yaxis[s].labels.offsetY-1;n.globals.isBarHorizontal&&(d=r*c),\"heatmap\"===n.config.chart.type&&(d+=r/2);var g=l.drawLine(t+i.offsetX-a.width+a.offsetX,d+a.offsetY,t+i.offsetX+a.offsetX,d+a.offsetY,a.color);o.add(g),h+=r}}}}]),t}(),G=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"scaleSvgNode\",value:function(t,e){var i=parseFloat(t.getAttributeNS(null,\"width\")),a=parseFloat(t.getAttributeNS(null,\"height\"));t.setAttributeNS(null,\"width\",i*e),t.setAttributeNS(null,\"height\",a*e),t.setAttributeNS(null,\"viewBox\",\"0 0 \"+i+\" \"+a)}},{key:\"fixSvgStringForIe11\",value:function(t){if(!x.isIE11())return t.replace(/ /g,\" \");var e=0,i=t.replace(/xmlns=\"http:\\/\\/www.w3.org\\/2000\\/svg\"/g,(function(t){return 2===++e?'xmlns:xlink=\"http://www.w3.org/1999/xlink\" xmlns:svgjs=\"http://svgjs.dev\"':t}));return i=(i=i.replace(/xmlns:NS\\d+=\"\"/g,\"\")).replace(/NS\\d+:(\\w+:\\w+=\")/g,\"$1\")}},{key:\"getSvgString\",value:function(t){null==t&&(t=1);var e=this.w.globals.dom.Paper.svg();if(1!==t){var i=this.w.globals.dom.Paper.node.cloneNode(!0);this.scaleSvgNode(i,t),e=(new XMLSerializer).serializeToString(i)}return this.fixSvgStringForIe11(e)}},{key:\"cleanup\",value:function(){var t=this.w,e=t.globals.dom.baseEl.getElementsByClassName(\"apexcharts-xcrosshairs\"),i=t.globals.dom.baseEl.getElementsByClassName(\"apexcharts-ycrosshairs\"),a=t.globals.dom.baseEl.querySelectorAll(\".apexcharts-zoom-rect, .apexcharts-selection-rect\");Array.prototype.forEach.call(a,(function(t){t.setAttribute(\"width\",0)})),e&&e[0]&&(e[0].setAttribute(\"x\",-500),e[0].setAttribute(\"x1\",-500),e[0].setAttribute(\"x2\",-500)),i&&i[0]&&(i[0].setAttribute(\"y\",-100),i[0].setAttribute(\"y1\",-100),i[0].setAttribute(\"y2\",-100))}},{key:\"svgUrl\",value:function(){this.cleanup();var t=this.getSvgString(),e=new Blob([t],{type:\"image/svg+xml;charset=utf-8\"});return URL.createObjectURL(e)}},{key:\"dataURI\",value:function(t){var e=this;return new Promise((function(i){var a=e.w,s=t?t.scale||t.width/a.globals.svgWidth:1;e.cleanup();var r=document.createElement(\"canvas\");r.width=a.globals.svgWidth*s,r.height=parseInt(a.globals.dom.elWrap.style.height,10)*s;var o=\"transparent\"===a.config.chart.background?\"#fff\":a.config.chart.background,n=r.getContext(\"2d\");n.fillStyle=o,n.fillRect(0,0,r.width*s,r.height*s);var l=e.getSvgString(s);if(window.canvg&&x.isIE11()){var h=window.canvg.Canvg.fromString(n,l,{ignoreClear:!0,ignoreDimensions:!0});h.start();var c=r.msToBlob();h.stop(),i({blob:c})}else{var d=\"data:image/svg+xml,\"+encodeURIComponent(l),g=new Image;g.crossOrigin=\"anonymous\",g.onload=function(){if(n.drawImage(g,0,0),r.msToBlob){var t=r.msToBlob();i({blob:t})}else{var e=r.toDataURL(\"image/png\");i({imgURI:e})}},g.src=d}}))}},{key:\"exportToSVG\",value:function(){this.triggerDownload(this.svgUrl(),this.w.config.chart.toolbar.export.svg.filename,\".svg\")}},{key:\"exportToPng\",value:function(){var t=this;this.dataURI().then((function(e){var i=e.imgURI,a=e.blob;a?navigator.msSaveOrOpenBlob(a,t.w.globals.chartID+\".png\"):t.triggerDownload(i,t.w.config.chart.toolbar.export.png.filename,\".png\")}))}},{key:\"exportToCSV\",value:function(t){var e=this,i=t.series,a=t.fileName,s=t.columnDelimiter,r=void 0===s?\",\":s,o=t.lineDelimiter,n=void 0===o?\"\\n\":o,l=this.w;i||(i=l.config.series);var h=[],c=[],d=\"\",g=l.globals.series.map((function(t,e){return-1===l.globals.collapsedSeriesIndices.indexOf(e)?t:[]})),f=Math.max.apply(Math,u(i.map((function(t){return t.data?t.data.length:0})))),p=new N(this.ctx),b=new B(this.ctx),v=function(t){var i=\"\";if(l.globals.axisCharts){if(\"category\"===l.config.xaxis.type||l.config.xaxis.convertedCatToNumeric)if(l.globals.isBarHorizontal){var a=l.globals.yLabelFormatters[0],s=new O(e.ctx).getActiveConfigSeriesIndex();i=a(l.globals.labels[t],{seriesIndex:s,dataPointIndex:t,w:l})}else i=b.getLabel(l.globals.labels,l.globals.timescaleLabels,0,t).text;\"datetime\"===l.config.xaxis.type&&(l.config.xaxis.categories.length?i=l.config.xaxis.categories[t]:l.config.labels.length&&(i=l.config.labels[t]))}else i=l.config.labels[t];return Array.isArray(i)&&(i=i.join(\" \")),x.isNumber(i)?i:i.split(r).join(\"\")},m=function(t,e){if(h.length&&0===e&&c.push(h.join(r)),t.data){t.data=t.data.length&&t.data||u(Array(f)).map((function(){return\"\"}));for(var a=0;a=10?l.config.chart.toolbar.export.csv.dateFormatter(s):x.isNumber(s)?s:s.split(r).join(\"\")));for(var o=0;o0&&!s.globals.isBarHorizontal&&(this.xaxisLabels=s.globals.timescaleLabels.slice()),s.config.xaxis.overwriteCategories&&(this.xaxisLabels=s.config.xaxis.overwriteCategories),this.drawnLabels=[],this.drawnLabelsRects=[],\"top\"===s.config.xaxis.position?this.offY=0:this.offY=s.globals.gridHeight+1,this.offY=this.offY+s.config.xaxis.axisBorder.offsetY,this.isCategoryBarHorizontal=\"bar\"===s.config.chart.type&&s.config.plotOptions.bar.horizontal,this.xaxisFontSize=s.config.xaxis.labels.style.fontSize,this.xaxisFontFamily=s.config.xaxis.labels.style.fontFamily,this.xaxisForeColors=s.config.xaxis.labels.style.colors,this.xaxisBorderWidth=s.config.xaxis.axisBorder.width,this.isCategoryBarHorizontal&&(this.xaxisBorderWidth=s.config.yaxis[0].axisBorder.width.toString()),this.xaxisBorderWidth.indexOf(\"%\")>-1?this.xaxisBorderWidth=s.globals.gridWidth*parseInt(this.xaxisBorderWidth,10)/100:this.xaxisBorderWidth=parseInt(this.xaxisBorderWidth,10),this.xaxisBorderHeight=s.config.xaxis.axisBorder.height,this.yaxis=s.config.yaxis[0]}return r(t,[{key:\"drawXaxis\",value:function(){var t=this.w,e=new m(this.ctx),i=e.group({class:\"apexcharts-xaxis\",transform:\"translate(\".concat(t.config.xaxis.offsetX,\", \").concat(t.config.xaxis.offsetY,\")\")}),a=e.group({class:\"apexcharts-xaxis-texts-g\",transform:\"translate(\".concat(t.globals.translateXAxisX,\", \").concat(t.globals.translateXAxisY,\")\")});i.add(a);for(var s=[],r=0;r6&&void 0!==arguments[6]?arguments[6]:{},h=[],c=[],d=this.w,g=l.xaxisFontSize||this.xaxisFontSize,u=l.xaxisFontFamily||this.xaxisFontFamily,f=l.xaxisForeColors||this.xaxisForeColors,p=l.fontWeight||d.config.xaxis.labels.style.fontWeight,x=l.cssClass||d.config.xaxis.labels.style.cssClass,b=d.globals.padHorizontal,v=a.length,m=\"category\"===d.config.xaxis.type?d.globals.dataPoints:v;if(0===m&&v>m&&(m=v),s){var y=m>1?m-1:m;o=d.globals.gridWidth/y,b=b+r(0,o)/2+d.config.xaxis.labels.offsetX}else o=d.globals.gridWidth/m,b=b+r(0,o)+d.config.xaxis.labels.offsetX;for(var w=function(s){var l=b-r(s,o)/2+d.config.xaxis.labels.offsetX;0===s&&1===v&&o/2===b&&1===m&&(l=d.globals.gridWidth/2);var y=n.axesUtils.getLabel(a,d.globals.timescaleLabels,l,s,h,g,t),w=28;d.globals.rotateXLabels&&t&&(w=22),d.config.xaxis.title.text&&\"top\"===d.config.xaxis.position&&(w+=parseFloat(d.config.xaxis.title.style.fontSize)+2),t||(w=w+parseFloat(g)+(d.globals.xAxisLabelsHeight-d.globals.xAxisGroupLabelsHeight)+(d.globals.rotateXLabels?10:0)),y=void 0!==d.config.xaxis.tickAmount&&\"dataPoints\"!==d.config.xaxis.tickAmount&&\"datetime\"!==d.config.xaxis.type?n.axesUtils.checkLabelBasedOnTickamount(s,y,v):n.axesUtils.checkForOverflowingLabels(s,y,v,h,c);if(t&&y.text&&d.globals.xaxisLabelsCount++,d.config.xaxis.labels.show){var k=e.drawText({x:y.x,y:n.offY+d.config.xaxis.labels.offsetY+w-(\"top\"===d.config.xaxis.position?d.globals.xAxisHeight+d.config.xaxis.axisTicks.height-2:0),text:y.text,textAnchor:\"middle\",fontWeight:y.isBold?600:p,fontSize:g,fontFamily:u,foreColor:Array.isArray(f)?t&&d.config.xaxis.convertedCatToNumeric?f[d.globals.minX+s-1]:f[s]:f,isPlainText:!1,cssClass:(t?\"apexcharts-xaxis-label \":\"apexcharts-xaxis-group-label \")+x});if(i.add(k),k.on(\"click\",(function(t){if(\"function\"==typeof d.config.chart.events.xAxisLabelClick){var e=Object.assign({},d,{labelIndex:s});d.config.chart.events.xAxisLabelClick(t,n.ctx,e)}})),t){var A=document.createElementNS(d.globals.SVGNS,\"title\");A.textContent=Array.isArray(y.text)?y.text.join(\" \"):y.text,k.node.appendChild(A),\"\"!==y.text&&(h.push(y.text),c.push(y))}}sa.globals.gridWidth)){var r=this.offY+a.config.xaxis.axisTicks.offsetY;if(e=e+r+a.config.xaxis.axisTicks.height,\"top\"===a.config.xaxis.position&&(e=r-a.config.xaxis.axisTicks.height),a.config.xaxis.axisTicks.show){var o=new m(this.ctx).drawLine(t+a.config.xaxis.axisTicks.offsetX,r+a.config.xaxis.offsetY,s+a.config.xaxis.axisTicks.offsetX,e+a.config.xaxis.offsetY,a.config.xaxis.axisTicks.color);i.add(o),o.node.classList.add(\"apexcharts-xaxis-tick\")}}}},{key:\"getXAxisTicksPositions\",value:function(){var t=this.w,e=[],i=this.xaxisLabels.length,a=t.globals.padHorizontal;if(t.globals.timescaleLabels.length>0)for(var s=0;s0){var h=s[s.length-1].getBBox(),c=s[0].getBBox();h.x<-20&&s[s.length-1].parentNode.removeChild(s[s.length-1]),c.x+c.width>t.globals.gridWidth&&!t.globals.isBarHorizontal&&s[0].parentNode.removeChild(s[0]);for(var d=0;d0&&(this.xaxisLabels=i.globals.timescaleLabels.slice())}return r(t,[{key:\"drawGridArea\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,e=this.w,i=new m(this.ctx);null===t&&(t=i.group({class:\"apexcharts-grid\"}));var a=i.drawLine(e.globals.padHorizontal,1,e.globals.padHorizontal,e.globals.gridHeight,\"transparent\"),s=i.drawLine(e.globals.padHorizontal,e.globals.gridHeight,e.globals.gridWidth,e.globals.gridHeight,\"transparent\");return t.add(s),t.add(a),t}},{key:\"drawGrid\",value:function(){var t=null;return this.w.globals.axisCharts&&(t=this.renderGrid(),this.drawGridArea(t.el)),t}},{key:\"createGridMask\",value:function(){var t=this.w,e=t.globals,i=new m(this.ctx),a=Array.isArray(t.config.stroke.width)?0:t.config.stroke.width;if(Array.isArray(t.config.stroke.width)){var s=0;t.config.stroke.width.forEach((function(t){s=Math.max(s,t)})),a=s}e.dom.elGridRectMask=document.createElementNS(e.SVGNS,\"clipPath\"),e.dom.elGridRectMask.setAttribute(\"id\",\"gridRectMask\".concat(e.cuid)),e.dom.elGridRectMarkerMask=document.createElementNS(e.SVGNS,\"clipPath\"),e.dom.elGridRectMarkerMask.setAttribute(\"id\",\"gridRectMarkerMask\".concat(e.cuid)),e.dom.elForecastMask=document.createElementNS(e.SVGNS,\"clipPath\"),e.dom.elForecastMask.setAttribute(\"id\",\"forecastMask\".concat(e.cuid)),e.dom.elNonForecastMask=document.createElementNS(e.SVGNS,\"clipPath\"),e.dom.elNonForecastMask.setAttribute(\"id\",\"nonForecastMask\".concat(e.cuid));var r=t.config.chart.type,o=0,n=0;(\"bar\"===r||\"rangeBar\"===r||\"candlestick\"===r||\"boxPlot\"===r||t.globals.comboBarCount>0)&&t.globals.isXNumeric&&!t.globals.isBarHorizontal&&(o=t.config.grid.padding.left,n=t.config.grid.padding.right,e.barPadForNumericAxis>o&&(o=e.barPadForNumericAxis,n=e.barPadForNumericAxis)),e.dom.elGridRect=i.drawRect(-a/2-o-2,-a/2,e.gridWidth+a+n+o+4,e.gridHeight+a,0,\"#fff\");var l=t.globals.markers.largestSize+1;e.dom.elGridRectMarker=i.drawRect(2*-l,2*-l,e.gridWidth+4*l,e.gridHeight+4*l,0,\"#fff\"),e.dom.elGridRectMask.appendChild(e.dom.elGridRect.node),e.dom.elGridRectMarkerMask.appendChild(e.dom.elGridRectMarker.node);var h=e.dom.baseEl.querySelector(\"defs\");h.appendChild(e.dom.elGridRectMask),h.appendChild(e.dom.elForecastMask),h.appendChild(e.dom.elNonForecastMask),h.appendChild(e.dom.elGridRectMarkerMask)}},{key:\"_drawGridLines\",value:function(t){var e=t.i,i=t.x1,a=t.y1,s=t.x2,r=t.y2,o=t.xCount,n=t.parent,l=this.w;if(!(0===e&&l.globals.skipFirstTimelinelabel||e===o-1&&l.globals.skipLastTimelinelabel&&!l.config.xaxis.labels.formatter||\"radar\"===l.config.chart.type)){l.config.grid.xaxis.lines.show&&this._drawGridLine({i:e,x1:i,y1:a,x2:s,y2:r,xCount:o,parent:n});var h=0;if(l.globals.hasGroups&&\"between\"===l.config.xaxis.tickPlacement){var c=l.globals.groups;if(c){for(var d=0,g=0;d2));s++);return!t.globals.isBarHorizontal||this.isRangeBar?(i=this.xaxisLabels.length,this.isRangeBar&&(a=t.globals.labels.length,t.config.xaxis.tickAmount&&t.config.xaxis.labels.formatter&&(i=t.config.xaxis.tickAmount)),this._drawXYLines({xCount:i,tickAmount:a})):(i=a,a=t.globals.xTickAmount,this._drawInvertedXYLines({xCount:i,tickAmount:a})),this.drawGridBands(i,a),{el:this.elg,elGridBorders:this.elGridBorders,xAxisTickWidth:t.globals.gridWidth/i}}},{key:\"drawGridBands\",value:function(t,e){var i=this.w;if(void 0!==i.config.grid.row.colors&&i.config.grid.row.colors.length>0)for(var a=0,s=i.globals.gridHeight/e,r=i.globals.gridWidth,o=0,n=0;o=i.config.grid.row.colors.length&&(n=0),this._drawGridBandRect({c:n,x1:0,y1:a,x2:r,y2:s,type:\"row\"}),a+=i.globals.gridHeight/e;if(void 0!==i.config.grid.column.colors&&i.config.grid.column.colors.length>0)for(var l=i.globals.isBarHorizontal||\"category\"!==i.config.xaxis.type&&!i.config.xaxis.convertedCatToNumeric?t:t-1,h=i.globals.padHorizontal,c=i.globals.padHorizontal+i.globals.gridWidth/l,d=i.globals.gridHeight,g=0,u=0;g=i.config.grid.column.colors.length&&(u=0),this._drawGridBandRect({c:u,x1:h,y1:0,x2:c,y2:d,type:\"column\"}),h+=i.globals.gridWidth/l}}]),t}(),_=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"niceScale\",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,s=arguments.length>4?arguments[4]:void 0,r=this.w,o=Math.abs(e-t);if(\"dataPoints\"===(i=this._adjustTicksForSmallRange(i,a,o))&&(i=r.globals.dataPoints-1),t===Number.MIN_VALUE&&0===e||!x.isNumber(t)&&!x.isNumber(e)||t===Number.MIN_VALUE&&e===-Number.MAX_VALUE){t=0,e=i;var n=this.linearScale(t,e,i);return n}t>e?(console.warn(\"axis.min cannot be greater than axis.max\"),e=t+.1):t===e&&(t=0===t?0:t-.5,e=0===e?2:e+.5);var l=[];o<1&&s&&(\"candlestick\"===r.config.chart.type||\"candlestick\"===r.config.series[a].type||\"boxPlot\"===r.config.chart.type||\"boxPlot\"===r.config.series[a].type||r.globals.isRangeData)&&(e*=1.01);var h=i+1;h<2?h=2:h>2&&(h-=2);var c=o/h,d=Math.floor(x.log10(c)),g=Math.pow(10,d),u=Math.round(c/g);u<1&&(u=1);var f=u*g,p=f*Math.floor(t/f),b=f*Math.ceil(e/f),v=p;if(s&&o>2){for(;l.push(v),!((v+=f)>b););return{result:l,niceMin:l[0],niceMax:l[l.length-1]}}var m=t;(l=[]).push(m);for(var y=Math.abs(e-t)/i,w=0;w<=i;w++)m+=y,l.push(m);return l[l.length-2]>=e&&l.pop(),{result:l,niceMin:l[0],niceMax:l[l.length-1]}}},{key:\"linearScale\",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,a=arguments.length>3?arguments[3]:void 0,s=Math.abs(e-t);\"dataPoints\"===(i=this._adjustTicksForSmallRange(i,a,s))&&(i=this.w.globals.dataPoints-1);var r=s/i;i===Number.MAX_VALUE&&(i=10,r=1);for(var o=[],n=t;i>=0;)o.push(n),n+=r,i-=1;return{result:o,niceMin:o[0],niceMax:o[o.length-1]}}},{key:\"logarithmicScaleNice\",value:function(t,e,i){e<=0&&(e=Math.max(t,i)),t<=0&&(t=Math.min(e,i));for(var a=[],s=Math.ceil(Math.log(e)/Math.log(i)+1),r=Math.floor(Math.log(t)/Math.log(i));r5)a.allSeriesCollapsed=!1,a.yAxisScale[t]=this.logarithmicScale(e,i,r.logBase),a.yAxisScale[t]=r.forceNiceScale?this.logarithmicScaleNice(e,i,r.logBase):this.logarithmicScale(e,i,r.logBase);else if(i!==-Number.MAX_VALUE&&x.isNumber(i))if(a.allSeriesCollapsed=!1,void 0===r.min&&void 0===r.max||r.forceNiceScale){var n=void 0===s.yaxis[t].max&&void 0===s.yaxis[t].min||s.yaxis[t].forceNiceScale;a.yAxisScale[t]=this.niceScale(e,i,r.tickAmount?r.tickAmount:o<5&&o>1?o+1:5,t,n)}else a.yAxisScale[t]=this.linearScale(e,i,r.tickAmount,t);else a.yAxisScale[t]=this.linearScale(0,5,5)}},{key:\"setXScale\",value:function(t,e){var i=this.w,a=i.globals,s=i.config.xaxis,r=Math.abs(e-t);return e!==-Number.MAX_VALUE&&x.isNumber(e)?a.xAxisScale=this.linearScale(t,e,s.tickAmount?s.tickAmount:r<5&&r>1?r+1:5,0):a.xAxisScale=this.linearScale(0,5,5),a.xAxisScale}},{key:\"setMultipleYScales\",value:function(){var t=this,e=this.w.globals,i=this.w.config,a=e.minYArr.concat([]),s=e.maxYArr.concat([]),r=[];i.yaxis.forEach((function(e,o){var n=o;i.series.forEach((function(t,i){t.name===e.seriesName&&(n=i,o!==i?r.push({index:i,similarIndex:o,alreadyExists:!0}):r.push({index:i}))}));var l=a[n],h=s[n];t.setYScaleForIndex(o,l,h)})),this.sameScaleInMultipleAxes(a,s,r)}},{key:\"sameScaleInMultipleAxes\",value:function(t,e,i){var a=this,s=this.w.config,r=this.w.globals,o=[];i.forEach((function(t){t.alreadyExists&&(void 0===o[t.index]&&(o[t.index]=[]),o[t.index].push(t.index),o[t.index].push(t.similarIndex))})),r.yAxisSameScaleIndices=o,o.forEach((function(t,e){o.forEach((function(i,a){var s,r;e!==a&&(s=t,r=i,s.filter((function(t){return-1!==r.indexOf(t)}))).length>0&&(o[e]=o[e].concat(o[a]))}))}));var n=o.map((function(t){return t.filter((function(e,i){return t.indexOf(e)===i}))})).map((function(t){return t.sort()}));o=o.filter((function(t){return!!t}));var l=n.slice(),h=l.map((function(t){return JSON.stringify(t)}));l=l.filter((function(t,e){return h.indexOf(JSON.stringify(t))===e}));var c=[],d=[];t.forEach((function(t,i){l.forEach((function(a,s){a.indexOf(i)>-1&&(void 0===c[s]&&(c[s]=[],d[s]=[]),c[s].push({key:i,value:t}),d[s].push({key:i,value:e[i]}))}))}));var g=Array.apply(null,Array(l.length)).map(Number.prototype.valueOf,Number.MIN_VALUE),u=Array.apply(null,Array(l.length)).map(Number.prototype.valueOf,-Number.MAX_VALUE);c.forEach((function(t,e){t.forEach((function(t,i){g[e]=Math.min(t.value,g[e])}))})),d.forEach((function(t,e){t.forEach((function(t,i){u[e]=Math.max(t.value,u[e])}))})),t.forEach((function(t,e){d.forEach((function(t,i){var o=g[i],n=u[i];s.chart.stacked&&(n=0,t.forEach((function(t,e){t.value!==-Number.MAX_VALUE&&(n+=t.value),o!==Number.MIN_VALUE&&(o+=c[i][e].value)}))),t.forEach((function(i,l){t[l].key===e&&(void 0!==s.yaxis[e].min&&(o=\"function\"==typeof s.yaxis[e].min?s.yaxis[e].min(r.minY):s.yaxis[e].min),void 0!==s.yaxis[e].max&&(n=\"function\"==typeof s.yaxis[e].max?s.yaxis[e].max(r.maxY):s.yaxis[e].max),a.setYScaleForIndex(e,o,n))}))}))}))}},{key:\"autoScaleY\",value:function(t,e,i){t||(t=this);var a=t.w;if(a.globals.isMultipleYAxis||a.globals.collapsedSeries.length)return console.warn(\"autoScaleYaxis is not supported in a multi-yaxis chart.\"),e;var s=a.globals.seriesX[0],r=a.config.chart.stacked;return e.forEach((function(t,o){for(var n=0,l=0;l=i.xaxis.min){n=l;break}var h,c,d=a.globals.minYArr[o],g=a.globals.maxYArr[o],u=a.globals.stackedSeriesTotals;a.globals.series.forEach((function(o,l){var f=o[n];r?(f=u[n],h=c=f,u.forEach((function(t,e){s[e]<=i.xaxis.max&&s[e]>=i.xaxis.min&&(t>c&&null!==t&&(c=t),o[e]=i.xaxis.min){var r=t,o=t;a.globals.series.forEach((function(i,a){null!==t&&(r=Math.min(i[e],r),o=Math.max(i[e],o))})),o>c&&null!==o&&(c=o),rd&&(h=d),e.length>1?(e[l].min=void 0===t.min?h:t.min,e[l].max=void 0===t.max?c:t.max):(e[0].min=void 0===t.min?h:t.min,e[0].max=void 0===t.max?c:t.max)}))})),e}}]),t}(),U=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.scales=new _(e)}return r(t,[{key:\"init\",value:function(){this.setYRange(),this.setXRange(),this.setZRange()}},{key:\"getMinYMaxY\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.MAX_VALUE,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:-Number.MAX_VALUE,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,s=this.w.config,r=this.w.globals,o=-Number.MAX_VALUE,n=Number.MIN_VALUE;null===a&&(a=t+1);var l=r.series,h=l,c=l;\"candlestick\"===s.chart.type?(h=r.seriesCandleL,c=r.seriesCandleH):\"boxPlot\"===s.chart.type?(h=r.seriesCandleO,c=r.seriesCandleC):r.isRangeData&&(h=r.seriesRangeStart,c=r.seriesRangeEnd);for(var d=t;dh[d][g]&&h[d][g]<0&&(n=h[d][g])):r.hasNullValues=!0}}return\"rangeBar\"===s.chart.type&&r.seriesRangeStart.length&&r.isBarHorizontal&&(n=e),\"bar\"===s.chart.type&&(n<0&&o<0&&(o=0),n===Number.MIN_VALUE&&(n=0)),{minY:n,maxY:o,lowestY:e,highestY:i}}},{key:\"setYRange\",value:function(){var t=this.w.globals,e=this.w.config;t.maxY=-Number.MAX_VALUE,t.minY=Number.MIN_VALUE;var i=Number.MAX_VALUE;if(t.isMultipleYAxis)for(var a=0;a=0&&i<=10||void 0!==e.yaxis[0].min||void 0!==e.yaxis[0].max)&&(o=0),t.minY=i-5*o/100,i>0&&t.minY<0&&(t.minY=0),t.maxY=t.maxY+5*o/100}if(e.yaxis.forEach((function(e,i){void 0!==e.max&&(\"number\"==typeof e.max?t.maxYArr[i]=e.max:\"function\"==typeof e.max&&(t.maxYArr[i]=e.max(t.isMultipleYAxis?t.maxYArr[i]:t.maxY)),t.maxY=t.maxYArr[i]),void 0!==e.min&&(\"number\"==typeof e.min?t.minYArr[i]=e.min:\"function\"==typeof e.min&&(t.minYArr[i]=e.min(t.isMultipleYAxis?t.minYArr[i]===Number.MIN_VALUE?0:t.minYArr[i]:t.minY)),t.minY=t.minYArr[i])})),t.isBarHorizontal){[\"min\",\"max\"].forEach((function(i){void 0!==e.xaxis[i]&&\"number\"==typeof e.xaxis[i]&&(\"min\"===i?t.minY=e.xaxis[i]:t.maxY=e.xaxis[i])}))}return t.isMultipleYAxis?(this.scales.setMultipleYScales(),t.minY=i,t.yAxisScale.forEach((function(e,i){t.minYArr[i]=e.niceMin,t.maxYArr[i]=e.niceMax}))):(this.scales.setYScaleForIndex(0,t.minY,t.maxY),t.minY=t.yAxisScale[0].niceMin,t.maxY=t.yAxisScale[0].niceMax,t.minYArr[0]=t.yAxisScale[0].niceMin,t.maxYArr[0]=t.yAxisScale[0].niceMax),{minY:t.minY,maxY:t.maxY,minYArr:t.minYArr,maxYArr:t.maxYArr,yAxisScale:t.yAxisScale}}},{key:\"setXRange\",value:function(){var t=this.w.globals,e=this.w.config,i=\"numeric\"===e.xaxis.type||\"datetime\"===e.xaxis.type||\"category\"===e.xaxis.type&&!t.noLabelsProvided||t.noLabelsProvided||t.isXNumeric;if(t.isXNumeric&&function(){for(var e=0;et.dataPoints&&0!==t.dataPoints&&(a=t.dataPoints-1)):\"dataPoints\"===e.xaxis.tickAmount?(t.series.length>1&&(a=t.series[t.maxValsInArrayIndex].length-1),t.isXNumeric&&(a=t.maxX-t.minX-1)):a=e.xaxis.tickAmount,t.xTickAmount=a,void 0!==e.xaxis.max&&\"number\"==typeof e.xaxis.max&&(t.maxX=e.xaxis.max),void 0!==e.xaxis.min&&\"number\"==typeof e.xaxis.min&&(t.minX=e.xaxis.min),void 0!==e.xaxis.range&&(t.minX=t.maxX-e.xaxis.range),t.minX!==Number.MAX_VALUE&&t.maxX!==-Number.MAX_VALUE)if(e.xaxis.convertedCatToNumeric&&!t.dataFormatXNumeric){for(var s=[],r=t.minX-1;r0&&(t.xAxisScale=this.scales.linearScale(1,t.labels.length,a-1),t.seriesX=t.labels.slice());i&&(t.labels=t.xAxisScale.result.slice())}return t.isBarHorizontal&&t.labels.length&&(t.xTickAmount=t.labels.length),this._handleSingleDataPoint(),this._getMinXDiff(),{minX:t.minX,maxX:t.maxX}}},{key:\"setZRange\",value:function(){var t=this.w.globals;if(t.isDataXYZ)for(var e=0;e0){var s=e-a[i-1];s>0&&(t.minXDiff=Math.min(s,t.minXDiff))}})),1!==t.dataPoints&&t.minXDiff!==Number.MAX_VALUE||(t.minXDiff=.5)}))}},{key:\"_setStackedMinMax\",value:function(){var t=this.w.globals,e=[],i=[];if(t.series.length)for(var a=0;a0?s=s+parseFloat(t.series[o][a])+1e-4:r+=parseFloat(t.series[o][a])),o===t.series.length-1&&(e.push(s),i.push(r));for(var n=0;n=0;b--)x(b);if(void 0!==i.config.yaxis[t].title.text){var v=a.group({class:\"apexcharts-yaxis-title\"}),y=0;i.config.yaxis[t].opposite&&(y=i.globals.translateYAxisX[t]);var w=a.drawText({x:y,y:i.globals.gridHeight/2+i.globals.translateY+i.config.yaxis[t].title.offsetY,text:i.config.yaxis[t].title.text,textAnchor:\"end\",foreColor:i.config.yaxis[t].title.style.color,fontSize:i.config.yaxis[t].title.style.fontSize,fontWeight:i.config.yaxis[t].title.style.fontWeight,fontFamily:i.config.yaxis[t].title.style.fontFamily,cssClass:\"apexcharts-yaxis-title-text \"+i.config.yaxis[t].title.style.cssClass});v.add(w),l.add(v)}var k=i.config.yaxis[t].axisBorder,A=31+k.offsetX;if(i.config.yaxis[t].opposite&&(A=-31-k.offsetX),k.show){var S=a.drawLine(A,i.globals.translateY+k.offsetY-2,A,i.globals.gridHeight+i.globals.translateY+k.offsetY+2,k.color,0,k.width);l.add(S)}return i.config.yaxis[t].axisTicks.show&&this.axesUtils.drawYAxisTicks(A,c,k,i.config.yaxis[t].axisTicks,t,d,l),l}},{key:\"drawYaxisInversed\",value:function(t){var e=this.w,i=new m(this.ctx),a=i.group({class:\"apexcharts-xaxis apexcharts-yaxis-inversed\"}),s=i.group({class:\"apexcharts-xaxis-texts-g\",transform:\"translate(\".concat(e.globals.translateXAxisX,\", \").concat(e.globals.translateXAxisY,\")\")});a.add(s);var r=e.globals.yAxisScale[t].result.length-1,o=e.globals.gridWidth/r+.1,n=o+e.config.xaxis.labels.offsetX,l=e.globals.xLabelFormatter,h=e.globals.yAxisScale[t].result.slice(),c=e.globals.timescaleLabels;c.length>0&&(this.xaxisLabels=c.slice(),r=(h=c.slice()).length),h=this.axesUtils.checkForReversedLabels(t,h);var d=c.length;if(e.config.xaxis.labels.show)for(var g=d?0:r;d?g=0;d?g++:g--){var u=h[g];u=l(u,g,e);var f=e.globals.gridWidth+e.globals.padHorizontal-(n-o+e.config.xaxis.labels.offsetX);if(c.length){var p=this.axesUtils.getLabel(h,c,f,g,this.drawnLabels,this.xaxisFontSize);f=p.x,u=p.text,this.drawnLabels.push(p.text),0===g&&e.globals.skipFirstTimelinelabel&&(u=\"\"),g===h.length-1&&e.globals.skipLastTimelinelabel&&(u=\"\")}var x=i.drawText({x:f,y:this.xAxisoffX+e.config.xaxis.labels.offsetY+30-(\"top\"===e.config.xaxis.position?e.globals.xAxisHeight+e.config.xaxis.axisTicks.height-2:0),text:u,textAnchor:\"middle\",foreColor:Array.isArray(this.xaxisForeColors)?this.xaxisForeColors[t]:this.xaxisForeColors,fontSize:this.xaxisFontSize,fontFamily:this.xaxisFontFamily,fontWeight:e.config.xaxis.labels.style.fontWeight,isPlainText:!1,cssClass:\"apexcharts-xaxis-label \"+e.config.xaxis.labels.style.cssClass});s.add(x),x.tspan(u);var b=document.createElementNS(e.globals.SVGNS,\"title\");b.textContent=u,x.node.appendChild(b),n+=o}return this.inversedYAxisTitleText(a),this.inversedYAxisBorder(a),a}},{key:\"inversedYAxisBorder\",value:function(t){var e=this.w,i=new m(this.ctx),a=e.config.xaxis.axisBorder;if(a.show){var s=0;\"bar\"===e.config.chart.type&&e.globals.isXNumeric&&(s-=15);var r=i.drawLine(e.globals.padHorizontal+s+a.offsetX,this.xAxisoffX,e.globals.gridWidth,this.xAxisoffX,a.color,0,a.height);this.elgrid&&this.elgrid.elGridBorders?this.elgrid.elGridBorders.add(r):t.add(r)}}},{key:\"inversedYAxisTitleText\",value:function(t){var e=this.w,i=new m(this.ctx);if(void 0!==e.config.xaxis.title.text){var a=i.group({class:\"apexcharts-xaxis-title apexcharts-yaxis-title-inversed\"}),s=i.drawText({x:e.globals.gridWidth/2+e.config.xaxis.title.offsetX,y:this.xAxisoffX+parseFloat(this.xaxisFontSize)+parseFloat(e.config.xaxis.title.style.fontSize)+e.config.xaxis.title.offsetY+20,text:e.config.xaxis.title.text,textAnchor:\"middle\",fontSize:e.config.xaxis.title.style.fontSize,fontFamily:e.config.xaxis.title.style.fontFamily,fontWeight:e.config.xaxis.title.style.fontWeight,foreColor:e.config.xaxis.title.style.color,cssClass:\"apexcharts-xaxis-title-text \"+e.config.xaxis.title.style.cssClass});a.add(s),t.add(a)}}},{key:\"yAxisTitleRotate\",value:function(t,e){var i=this.w,a=new m(this.ctx),s={width:0,height:0},r={width:0,height:0},o=i.globals.dom.baseEl.querySelector(\" .apexcharts-yaxis[rel='\".concat(t,\"'] .apexcharts-yaxis-texts-g\"));null!==o&&(s=o.getBoundingClientRect());var n=i.globals.dom.baseEl.querySelector(\".apexcharts-yaxis[rel='\".concat(t,\"'] .apexcharts-yaxis-title text\"));if(null!==n&&(r=n.getBoundingClientRect()),null!==n){var l=this.xPaddingForYAxisTitle(t,s,r,e);n.setAttribute(\"x\",l.xPos-(e?10:0))}if(null!==n){var h=a.rotateAroundCenter(n);n.setAttribute(\"transform\",\"rotate(\".concat(e?-1*i.config.yaxis[t].title.rotate:i.config.yaxis[t].title.rotate,\" \").concat(h.x,\" \").concat(h.y,\")\"))}}},{key:\"xPaddingForYAxisTitle\",value:function(t,e,i,a){var s=this.w,r=0,o=0,n=10;return void 0===s.config.yaxis[t].title.text||t<0?{xPos:o,padd:0}:(a?(o=e.width+s.config.yaxis[t].title.offsetX+i.width/2+n/2,0===(r+=1)&&(o-=n/2)):(o=-1*e.width+s.config.yaxis[t].title.offsetX+n/2+i.width/2,s.globals.isBarHorizontal&&(n=25,o=-1*e.width-s.config.yaxis[t].title.offsetX-n)),{xPos:o,padd:n})}},{key:\"setYAxisXPosition\",value:function(t,e){var i=this.w,a=0,s=0,r=18,o=1;i.config.yaxis.length>1&&(this.multipleYs=!0),i.config.yaxis.map((function(n,l){var h=i.globals.ignoreYAxisIndexes.indexOf(l)>-1||!n.show||n.floating||0===t[l].width,c=t[l].width+e[l].width;n.opposite?i.globals.isBarHorizontal?(s=i.globals.gridWidth+i.globals.translateX-1,i.globals.translateYAxisX[l]=s-n.labels.offsetX):(s=i.globals.gridWidth+i.globals.translateX+o,h||(o=o+c+20),i.globals.translateYAxisX[l]=s-n.labels.offsetX+20):(a=i.globals.translateX-r,h||(r=r+c+20),i.globals.translateYAxisX[l]=a+n.labels.offsetX)}))}},{key:\"setYAxisTextAlignments\",value:function(){var t=this.w,e=t.globals.dom.baseEl.getElementsByClassName(\"apexcharts-yaxis\");(e=x.listToArray(e)).forEach((function(e,i){var a=t.config.yaxis[i];if(a&&void 0!==a.labels.align){var s=t.globals.dom.baseEl.querySelector(\".apexcharts-yaxis[rel='\".concat(i,\"'] .apexcharts-yaxis-texts-g\")),r=t.globals.dom.baseEl.querySelectorAll(\".apexcharts-yaxis[rel='\".concat(i,\"'] .apexcharts-yaxis-label\"));r=x.listToArray(r);var o=s.getBoundingClientRect();\"left\"===a.labels.align?(r.forEach((function(t,e){t.setAttribute(\"text-anchor\",\"start\")})),a.opposite||s.setAttribute(\"transform\",\"translate(-\".concat(o.width,\", 0)\"))):\"center\"===a.labels.align?(r.forEach((function(t,e){t.setAttribute(\"text-anchor\",\"middle\")})),s.setAttribute(\"transform\",\"translate(\".concat(o.width/2*(a.opposite?1:-1),\", 0)\"))):\"right\"===a.labels.align&&(r.forEach((function(t,e){t.setAttribute(\"text-anchor\",\"end\")})),a.opposite&&s.setAttribute(\"transform\",\"translate(\".concat(o.width,\", 0)\")))}}))}}]),t}(),Z=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.documentEvent=x.bind(this.documentEvent,this)}return r(t,[{key:\"addEventListener\",value:function(t,e){var i=this.w;i.globals.events.hasOwnProperty(t)?i.globals.events[t].push(e):i.globals.events[t]=[e]}},{key:\"removeEventListener\",value:function(t,e){var i=this.w;if(i.globals.events.hasOwnProperty(t)){var a=i.globals.events[t].indexOf(e);-1!==a&&i.globals.events[t].splice(a,1)}}},{key:\"fireEvent\",value:function(t,e){var i=this.w;if(i.globals.events.hasOwnProperty(t)){e&&e.length||(e=[]);for(var a=i.globals.events[t],s=a.length,r=0;r0&&(e=this.w.config.chart.locales.concat(window.Apex.chart.locales));var i=e.filter((function(e){return e.name===t}))[0];if(!i)throw new Error(\"Wrong locale name provided. Please make sure you set the correct locale name in options\");var a=x.extend(C,i);this.w.globals.locale=a.options}}]),t}(),J=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"drawAxis\",value:function(t,e){var i,a,s=this.w.globals,r=this.w.config,o=new V(this.ctx,e),n=new q(this.ctx,e);s.axisCharts&&\"radar\"!==t&&(s.isBarHorizontal?(a=n.drawYaxisInversed(0),i=o.drawXaxisInversed(0),s.dom.elGraphical.add(i),s.dom.elGraphical.add(a)):(i=o.drawXaxis(),s.dom.elGraphical.add(i),r.yaxis.map((function(t,e){-1===s.ignoreYAxisIndexes.indexOf(e)&&(a=n.drawYaxis(e),s.dom.Paper.add(a))}))))}}]),t}(),Q=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"drawXCrosshairs\",value:function(){var t=this.w,e=new m(this.ctx),i=new v(this.ctx),a=t.config.xaxis.crosshairs.fill.gradient,s=t.config.xaxis.crosshairs.dropShadow,r=t.config.xaxis.crosshairs.fill.type,o=a.colorFrom,n=a.colorTo,l=a.opacityFrom,h=a.opacityTo,c=a.stops,d=s.enabled,g=s.left,u=s.top,f=s.blur,p=s.color,b=s.opacity,y=t.config.xaxis.crosshairs.fill.color;if(t.config.xaxis.crosshairs.show){\"gradient\"===r&&(y=e.drawGradient(\"vertical\",o,n,l,h,null,c,null));var w=e.drawRect();1===t.config.xaxis.crosshairs.width&&(w=e.drawLine());var k=t.globals.gridHeight;(!x.isNumber(k)||k<0)&&(k=0);var A=t.config.xaxis.crosshairs.width;(!x.isNumber(A)||A<0)&&(A=0),w.attr({class:\"apexcharts-xcrosshairs\",x:0,y:0,y2:k,width:A,height:k,fill:y,filter:\"none\",\"fill-opacity\":t.config.xaxis.crosshairs.opacity,stroke:t.config.xaxis.crosshairs.stroke.color,\"stroke-width\":t.config.xaxis.crosshairs.stroke.width,\"stroke-dasharray\":t.config.xaxis.crosshairs.stroke.dashArray}),d&&(w=i.dropShadow(w,{left:g,top:u,blur:f,color:p,opacity:b})),t.globals.dom.elGraphical.add(w)}}},{key:\"drawYCrosshairs\",value:function(){var t=this.w,e=new m(this.ctx),i=t.config.yaxis[0].crosshairs,a=t.globals.barPadForNumericAxis;if(t.config.yaxis[0].crosshairs.show){var s=e.drawLine(-a,0,t.globals.gridWidth+a,0,i.stroke.color,i.stroke.dashArray,i.stroke.width);s.attr({class:\"apexcharts-ycrosshairs\"}),t.globals.dom.elGraphical.add(s)}var r=e.drawLine(-a,0,t.globals.gridWidth+a,0,i.stroke.color,0,0);r.attr({class:\"apexcharts-ycrosshairs-hidden\"}),t.globals.dom.elGraphical.add(r)}}]),t}(),K=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"checkResponsiveConfig\",value:function(t){var e=this,i=this.w,a=i.config;if(0!==a.responsive.length){var s=a.responsive.slice();s.sort((function(t,e){return t.breakpoint>e.breakpoint?1:e.breakpoint>t.breakpoint?-1:0})).reverse();var r=new X({}),o=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},a=s[0].breakpoint,o=window.innerWidth>0?window.innerWidth:screen.width;if(o>a){var n=y.extendArrayProps(r,i.globals.initialConfig,i);t=x.extend(n,t),t=x.extend(i.config,t),e.overrideResponsiveOptions(t)}else for(var l=0;l0&&\"function\"==typeof e.config.colors[0]&&(e.globals.colors=e.config.series.map((function(i,a){var s=e.config.colors[a];return s||(s=e.config.colors[0]),\"function\"==typeof s?(t.isColorFn=!0,s({value:e.globals.axisCharts?e.globals.series[a][0]?e.globals.series[a][0]:0:e.globals.series[a],seriesIndex:a,dataPointIndex:a,w:e})):s})))),e.globals.seriesColors.map((function(t,i){t&&(e.globals.colors[i]=t)})),e.config.theme.monochrome.enabled){var a=[],s=e.globals.series.length;(this.isBarDistributed||this.isHeatmapDistributed)&&(s=e.globals.series[0].length*e.globals.series.length);for(var r=e.config.theme.monochrome.color,o=1/(s/e.config.theme.monochrome.shadeIntensity),n=e.config.theme.monochrome.shadeTo,l=0,h=0;h2&&void 0!==arguments[2]?arguments[2]:null,a=this.w,s=e||a.globals.series.length;if(null===i&&(i=this.isBarDistributed||this.isHeatmapDistributed||\"heatmap\"===a.config.chart.type&&a.config.plotOptions.heatmap.colorScale.inverse),i&&a.globals.series.length&&(s=a.globals.series[a.globals.maxValsInArrayIndex].length*a.globals.series.length),t.lengtht.globals.svgWidth&&(this.dCtx.lgRect.width=t.globals.svgWidth/1.5),this.dCtx.lgRect}},{key:\"getLargestStringFromMultiArr\",value:function(t,e){var i=t;if(this.w.globals.isMultiLineX){var a=e.map((function(t,e){return Array.isArray(t)?t.length:1})),s=Math.max.apply(Math,u(a));i=e[a.indexOf(s)]}return i}}]),t}(),at=function(){function t(e){a(this,t),this.w=e.w,this.dCtx=e}return r(t,[{key:\"getxAxisLabelsCoords\",value:function(){var t,e=this.w,i=e.globals.labels.slice();if(e.config.xaxis.convertedCatToNumeric&&0===i.length&&(i=e.globals.categoryLabels),e.globals.timescaleLabels.length>0){var a=this.getxAxisTimeScaleLabelsCoords();t={width:a.width,height:a.height},e.globals.rotateXLabels=!1}else{this.dCtx.lgWidthForSideLegends=\"left\"!==e.config.legend.position&&\"right\"!==e.config.legend.position||e.config.legend.floating?0:this.dCtx.lgRect.width;var s=e.globals.xLabelFormatter,r=x.getLargestStringFromArr(i),o=this.dCtx.dimHelpers.getLargestStringFromMultiArr(r,i);e.globals.isBarHorizontal&&(o=r=e.globals.yAxisScale[0].result.reduce((function(t,e){return t.length>e.length?t:e}),0));var n=new W(this.dCtx.ctx),l=r;r=n.xLabelFormat(s,r,l,{i:void 0,dateFormatter:new T(this.dCtx.ctx).formatDate,w:e}),o=n.xLabelFormat(s,o,l,{i:void 0,dateFormatter:new T(this.dCtx.ctx).formatDate,w:e}),(e.config.xaxis.convertedCatToNumeric&&void 0===r||\"\"===String(r).trim())&&(o=r=\"1\");var h=new m(this.dCtx.ctx),c=h.getTextRects(r,e.config.xaxis.labels.style.fontSize),d=c;if(r!==o&&(d=h.getTextRects(o,e.config.xaxis.labels.style.fontSize)),(t={width:c.width>=d.width?c.width:d.width,height:c.height>=d.height?c.height:d.height}).width*i.length>e.globals.svgWidth-this.dCtx.lgWidthForSideLegends-this.dCtx.yAxisWidth-this.dCtx.gridPad.left-this.dCtx.gridPad.right&&0!==e.config.xaxis.labels.rotate||e.config.xaxis.labels.rotateAlways){if(!e.globals.isBarHorizontal){e.globals.rotateXLabels=!0;var g=function(t){return h.getTextRects(t,e.config.xaxis.labels.style.fontSize,e.config.xaxis.labels.style.fontFamily,\"rotate(\".concat(e.config.xaxis.labels.rotate,\" 0 0)\"),!1)};c=g(r),r!==o&&(d=g(o)),t.height=(c.height>d.height?c.height:d.height)/1.5,t.width=c.width>d.width?c.width:d.width}}else e.globals.rotateXLabels=!1}return e.config.xaxis.labels.show||(t={width:0,height:0}),{width:t.width,height:t.height}}},{key:\"getxAxisGroupLabelsCoords\",value:function(){var t,e=this.w;if(!e.globals.hasGroups)return{width:0,height:0};var i,a=(null===(t=e.config.xaxis.group.style)||void 0===t?void 0:t.fontSize)||e.config.xaxis.labels.style.fontSize,s=e.globals.groups.map((function(t){return t.title})),r=x.getLargestStringFromArr(s),o=this.dCtx.dimHelpers.getLargestStringFromMultiArr(r,s),n=new m(this.dCtx.ctx),l=n.getTextRects(r,a),h=l;return r!==o&&(h=n.getTextRects(o,a)),i={width:l.width>=h.width?l.width:h.width,height:l.height>=h.height?l.height:h.height},e.config.xaxis.labels.show||(i={width:0,height:0}),{width:i.width,height:i.height}}},{key:\"getxAxisTitleCoords\",value:function(){var t=this.w,e=0,i=0;if(void 0!==t.config.xaxis.title.text){var a=new m(this.dCtx.ctx).getTextRects(t.config.xaxis.title.text,t.config.xaxis.title.style.fontSize);e=a.width,i=a.height}return{width:e,height:i}}},{key:\"getxAxisTimeScaleLabelsCoords\",value:function(){var t,e=this.w;this.dCtx.timescaleLabels=e.globals.timescaleLabels.slice();var i=this.dCtx.timescaleLabels.map((function(t){return t.value})),a=i.reduce((function(t,e){return void 0===t?(console.error(\"You have possibly supplied invalid Date format. Please supply a valid JavaScript Date\"),0):t.length>e.length?t:e}),0);return 1.05*(t=new m(this.dCtx.ctx).getTextRects(a,e.config.xaxis.labels.style.fontSize)).width*i.length>e.globals.gridWidth&&0!==e.config.xaxis.labels.rotate&&(e.globals.overlappingXLabels=!0),t}},{key:\"additionalPaddingXLabels\",value:function(t){var e=this,i=this.w,a=i.globals,s=i.config,r=s.xaxis.type,o=t.width;a.skipLastTimelinelabel=!1,a.skipFirstTimelinelabel=!1;var n=i.config.yaxis[0].opposite&&i.globals.isBarHorizontal,l=function(t,n){(function(t){return-1!==a.collapsedSeriesIndices.indexOf(t)})(n)||function(t){if(e.dCtx.timescaleLabels&&e.dCtx.timescaleLabels.length){var n=e.dCtx.timescaleLabels[0],l=e.dCtx.timescaleLabels[e.dCtx.timescaleLabels.length-1].position+o/1.75-e.dCtx.yAxisWidthRight,h=n.position-o/1.75+e.dCtx.yAxisWidthLeft,c=\"right\"===i.config.legend.position&&e.dCtx.lgRect.width>0?e.dCtx.lgRect.width:0;l>a.svgWidth-a.translateX-c&&(a.skipLastTimelinelabel=!0),h<-(t.show&&!t.floating||\"bar\"!==s.chart.type&&\"candlestick\"!==s.chart.type&&\"rangeBar\"!==s.chart.type&&\"boxPlot\"!==s.chart.type?10:o/1.75)&&(a.skipFirstTimelinelabel=!0)}else\"datetime\"===r?e.dCtx.gridPad.rightString(n.niceMax).length?c:n.niceMax,g=h(d,{seriesIndex:o,dataPointIndex:-1,w:e}),u=g;if(void 0!==g&&0!==g.length||(g=d),e.globals.isBarHorizontal){a=0;var f=e.globals.labels.slice();g=h(g=x.getLargestStringFromArr(f),{seriesIndex:o,dataPointIndex:-1,w:e}),u=t.dCtx.dimHelpers.getLargestStringFromMultiArr(g,f)}var p=new m(t.dCtx.ctx),b=\"rotate(\".concat(r.labels.rotate,\" 0 0)\"),v=p.getTextRects(g,r.labels.style.fontSize,r.labels.style.fontFamily,b,!1),y=v;g!==u&&(y=p.getTextRects(u,r.labels.style.fontSize,r.labels.style.fontFamily,b,!1)),i.push({width:(l>y.width||l>v.width?l:y.width>v.width?y.width:v.width)+a,height:y.height>v.height?y.height:v.height})}else i.push({width:0,height:0})})),i}},{key:\"getyAxisTitleCoords\",value:function(){var t=this,e=this.w,i=[];return e.config.yaxis.map((function(e,a){if(e.show&&void 0!==e.title.text){var s=new m(t.dCtx.ctx),r=\"rotate(\".concat(e.title.rotate,\" 0 0)\"),o=s.getTextRects(e.title.text,e.title.style.fontSize,e.title.style.fontFamily,r,!1);i.push({width:o.width,height:o.height})}else i.push({width:0,height:0})})),i}},{key:\"getTotalYAxisWidth\",value:function(){var t=this.w,e=0,i=0,a=0,s=t.globals.yAxisScale.length>1?10:0,r=new B(this.dCtx.ctx),o=function(o,n){var l=t.config.yaxis[n].floating,h=0;o.width>0&&!l?(h=o.width+s,function(e){return t.globals.ignoreYAxisIndexes.indexOf(e)>-1}(n)&&(h=h-o.width-s)):h=l||r.isYAxisHidden(n)?0:5,t.config.yaxis[n].opposite?a+=h:i+=h,e+=h};return t.globals.yLabelsCoords.map((function(t,e){o(t,e)})),t.globals.yTitleCoords.map((function(t,e){o(t,e)})),t.globals.isBarHorizontal&&!t.config.yaxis[0].floating&&(e=t.globals.yLabelsCoords[0].width+t.globals.yTitleCoords[0].width+15),this.dCtx.yAxisWidthLeft=i,this.dCtx.yAxisWidthRight=a,e}}]),t}(),rt=function(){function t(e){a(this,t),this.w=e.w,this.dCtx=e}return r(t,[{key:\"gridPadForColumnsInNumericAxis\",value:function(t){var e=this.w;if(e.globals.noData||e.globals.allSeriesCollapsed)return 0;var i=function(t){return\"bar\"===t||\"rangeBar\"===t||\"candlestick\"===t||\"boxPlot\"===t},a=e.config.chart.type,s=0,r=i(a)?e.config.series.length:1;if(e.globals.comboBarCount>0&&(r=e.globals.comboBarCount),e.globals.collapsedSeries.forEach((function(t){i(t.type)&&(r-=1)})),e.config.chart.stacked&&(r=1),(i(a)||e.globals.comboBarCount>0)&&e.globals.isXNumeric&&!e.globals.isBarHorizontal&&r>0){var o,n,l=Math.abs(e.globals.initialMaxX-e.globals.initialMinX);l<=3&&(l=e.globals.dataPoints),o=l/t,e.globals.minXDiff&&e.globals.minXDiff/o>0&&(n=e.globals.minXDiff/o),n>t/2&&(n/=2),(s=n/r*parseInt(e.config.plotOptions.bar.columnWidth,10)/100)<1&&(s=1),s=s/(r>1?1:1.5)+5,e.globals.barPadForNumericAxis=s}return s}},{key:\"gridPadFortitleSubtitle\",value:function(){var t=this,e=this.w,i=e.globals,a=this.dCtx.isSparkline||!e.globals.axisCharts?0:10;[\"title\",\"subtitle\"].forEach((function(i){void 0!==e.config[i].text?a+=e.config[i].margin:a+=t.dCtx.isSparkline||!e.globals.axisCharts?0:5})),!e.config.legend.show||\"bottom\"!==e.config.legend.position||e.config.legend.floating||e.globals.axisCharts||(a+=10);var s=this.dCtx.dimHelpers.getTitleSubtitleCoords(\"title\"),r=this.dCtx.dimHelpers.getTitleSubtitleCoords(\"subtitle\");i.gridHeight=i.gridHeight-s.height-r.height-a,i.translateY=i.translateY+s.height+r.height+a}},{key:\"setGridXPosForDualYAxis\",value:function(t,e){var i=this.w,a=new B(this.dCtx.ctx);i.config.yaxis.map((function(s,r){-1!==i.globals.ignoreYAxisIndexes.indexOf(r)||s.floating||a.isYAxisHidden(r)||(s.opposite&&(i.globals.translateX=i.globals.translateX-(e[r].width+t[r].width)-parseInt(i.config.yaxis[r].labels.style.fontSize,10)/1.2-12),i.globals.translateX<2&&(i.globals.translateX=2))}))}}]),t}(),ot=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.lgRect={},this.yAxisWidth=0,this.yAxisWidthLeft=0,this.yAxisWidthRight=0,this.xAxisHeight=0,this.isSparkline=this.w.config.chart.sparkline.enabled,this.dimHelpers=new it(this),this.dimYAxis=new st(this),this.dimXAxis=new at(this),this.dimGrid=new rt(this),this.lgWidthForSideLegends=0,this.gridPad=this.w.config.grid.padding,this.xPadRight=0,this.xPadLeft=0}return r(t,[{key:\"plotCoords\",value:function(){var t=this,e=this.w,i=e.globals;this.lgRect=this.dimHelpers.getLegendsRect(),this.isSparkline&&(e.config.markers.discrete.length>0||e.config.markers.size>0)&&Object.entries(this.gridPad).forEach((function(e){var i=g(e,2),a=i[0],s=i[1];t.gridPad[a]=Math.max(s,t.w.globals.markers.largestSize/1.5)})),i.axisCharts?this.setDimensionsForAxisCharts():this.setDimensionsForNonAxisCharts(),this.dimGrid.gridPadFortitleSubtitle(),i.gridHeight=i.gridHeight-this.gridPad.top-this.gridPad.bottom,i.gridWidth=i.gridWidth-this.gridPad.left-this.gridPad.right-this.xPadRight-this.xPadLeft;var a=this.dimGrid.gridPadForColumnsInNumericAxis(i.gridWidth);i.gridWidth=i.gridWidth-2*a,i.translateX=i.translateX+this.gridPad.left+this.xPadLeft+(a>0?a+4:0),i.translateY=i.translateY+this.gridPad.top}},{key:\"setDimensionsForAxisCharts\",value:function(){var t=this,e=this.w,i=e.globals,a=this.dimYAxis.getyAxisLabelsCoords(),s=this.dimYAxis.getyAxisTitleCoords();e.globals.yLabelsCoords=[],e.globals.yTitleCoords=[],e.config.yaxis.map((function(t,i){e.globals.yLabelsCoords.push({width:a[i].width,index:i}),e.globals.yTitleCoords.push({width:s[i].width,index:i})})),this.yAxisWidth=this.dimYAxis.getTotalYAxisWidth();var r=this.dimXAxis.getxAxisLabelsCoords(),o=this.dimXAxis.getxAxisGroupLabelsCoords(),n=this.dimXAxis.getxAxisTitleCoords();this.conditionalChecksForAxisCoords(r,n,o),i.translateXAxisY=e.globals.rotateXLabels?this.xAxisHeight/8:-4,i.translateXAxisX=e.globals.rotateXLabels&&e.globals.isXNumeric&&e.config.xaxis.labels.rotate<=-45?-this.xAxisWidth/4:0,e.globals.isBarHorizontal&&(i.rotateXLabels=!1,i.translateXAxisY=parseInt(e.config.xaxis.labels.style.fontSize,10)/1.5*-1),i.translateXAxisY=i.translateXAxisY+e.config.xaxis.labels.offsetY,i.translateXAxisX=i.translateXAxisX+e.config.xaxis.labels.offsetX;var l=this.yAxisWidth,h=this.xAxisHeight;i.xAxisLabelsHeight=this.xAxisHeight-n.height,i.xAxisGroupLabelsHeight=i.xAxisLabelsHeight-r.height,i.xAxisLabelsWidth=this.xAxisWidth,i.xAxisHeight=this.xAxisHeight;var c=10;(\"radar\"===e.config.chart.type||this.isSparkline)&&(l=0,h=i.goldenPadding),this.isSparkline&&(this.lgRect={height:0,width:0}),(this.isSparkline||\"treemap\"===e.config.chart.type)&&(l=0,h=0,c=0),this.isSparkline||this.dimXAxis.additionalPaddingXLabels(r);var d=function(){i.translateX=l,i.gridHeight=i.svgHeight-t.lgRect.height-h-(t.isSparkline||\"treemap\"===e.config.chart.type?0:e.globals.rotateXLabels?10:15),i.gridWidth=i.svgWidth-l};switch(\"top\"===e.config.xaxis.position&&(c=i.xAxisHeight-e.config.xaxis.axisTicks.height-5),e.config.legend.position){case\"bottom\":i.translateY=c,d();break;case\"top\":i.translateY=this.lgRect.height+c,d();break;case\"left\":i.translateY=c,i.translateX=this.lgRect.width+l,i.gridHeight=i.svgHeight-h-12,i.gridWidth=i.svgWidth-this.lgRect.width-l;break;case\"right\":i.translateY=c,i.translateX=l,i.gridHeight=i.svgHeight-h-12,i.gridWidth=i.svgWidth-this.lgRect.width-l-5;break;default:throw new Error(\"Legend position not supported\")}this.dimGrid.setGridXPosForDualYAxis(s,a),new q(this.ctx).setYAxisXPosition(a,s)}},{key:\"setDimensionsForNonAxisCharts\",value:function(){var t=this.w,e=t.globals,i=t.config,a=0;t.config.legend.show&&!t.config.legend.floating&&(a=20);var s=\"pie\"===i.chart.type||\"polarArea\"===i.chart.type||\"donut\"===i.chart.type?\"pie\":\"radialBar\",r=i.plotOptions[s].offsetY,o=i.plotOptions[s].offsetX;if(!i.legend.show||i.legend.floating)return e.gridHeight=e.svgHeight-i.grid.padding.left+i.grid.padding.right,e.gridWidth=e.gridHeight,e.translateY=r,void(e.translateX=o+(e.svgWidth-e.gridWidth)/2);switch(i.legend.position){case\"bottom\":e.gridHeight=e.svgHeight-this.lgRect.height-e.goldenPadding,e.gridWidth=e.svgWidth,e.translateY=r-10,e.translateX=o+(e.svgWidth-e.gridWidth)/2;break;case\"top\":e.gridHeight=e.svgHeight-this.lgRect.height-e.goldenPadding,e.gridWidth=e.svgWidth,e.translateY=this.lgRect.height+r+10,e.translateX=o+(e.svgWidth-e.gridWidth)/2;break;case\"left\":e.gridWidth=e.svgWidth-this.lgRect.width-a,e.gridHeight=\"auto\"!==i.chart.height?e.svgHeight:e.gridWidth,e.translateY=r,e.translateX=o+this.lgRect.width+a;break;case\"right\":e.gridWidth=e.svgWidth-this.lgRect.width-a-5,e.gridHeight=\"auto\"!==i.chart.height?e.svgHeight:e.gridWidth,e.translateY=r,e.translateX=o+10;break;default:throw new Error(\"Legend position not supported\")}}},{key:\"conditionalChecksForAxisCoords\",value:function(t,e,i){var a=this.w,s=a.globals.hasGroups?2:1,r=i.height+t.height+e.height,o=a.globals.isMultiLineX?1.2:a.globals.LINE_HEIGHT_RATIO,n=a.globals.rotateXLabels?22:10,l=a.globals.rotateXLabels&&\"bottom\"===a.config.legend.position?10:0;this.xAxisHeight=r*o+s*n+l,this.xAxisWidth=t.width,this.xAxisHeight-e.height>a.config.xaxis.labels.maxHeight&&(this.xAxisHeight=a.config.xaxis.labels.maxHeight),a.config.xaxis.labels.minHeight&&this.xAxisHeightc&&(this.yAxisWidth=c)}}]),t}(),nt=function(){function t(e){a(this,t),this.w=e.w,this.lgCtx=e}return r(t,[{key:\"getLegendStyles\",value:function(){var t=document.createElement(\"style\");t.setAttribute(\"type\",\"text/css\");var e=document.createTextNode(\"\\t\\n \\t\\n .apexcharts-legend {\\t\\n display: flex;\\t\\n overflow: auto;\\t\\n padding: 0 10px;\\t\\n }\\t\\n .apexcharts-legend.apx-legend-position-bottom, .apexcharts-legend.apx-legend-position-top {\\t\\n flex-wrap: wrap\\t\\n }\\t\\n .apexcharts-legend.apx-legend-position-right, .apexcharts-legend.apx-legend-position-left {\\t\\n flex-direction: column;\\t\\n bottom: 0;\\t\\n }\\t\\n .apexcharts-legend.apx-legend-position-bottom.apexcharts-align-left, .apexcharts-legend.apx-legend-position-top.apexcharts-align-left, .apexcharts-legend.apx-legend-position-right, .apexcharts-legend.apx-legend-position-left {\\t\\n justify-content: flex-start;\\t\\n }\\t\\n .apexcharts-legend.apx-legend-position-bottom.apexcharts-align-center, .apexcharts-legend.apx-legend-position-top.apexcharts-align-center {\\t\\n justify-content: center; \\t\\n }\\t\\n .apexcharts-legend.apx-legend-position-bottom.apexcharts-align-right, .apexcharts-legend.apx-legend-position-top.apexcharts-align-right {\\t\\n justify-content: flex-end;\\t\\n }\\t\\n .apexcharts-legend-series {\\t\\n cursor: pointer;\\t\\n line-height: normal;\\t\\n }\\t\\n .apexcharts-legend.apx-legend-position-bottom .apexcharts-legend-series, .apexcharts-legend.apx-legend-position-top .apexcharts-legend-series{\\t\\n display: flex;\\t\\n align-items: center;\\t\\n }\\t\\n .apexcharts-legend-text {\\t\\n position: relative;\\t\\n font-size: 14px;\\t\\n }\\t\\n .apexcharts-legend-text *, .apexcharts-legend-marker * {\\t\\n pointer-events: none;\\t\\n }\\t\\n .apexcharts-legend-marker {\\t\\n position: relative;\\t\\n display: inline-block;\\t\\n cursor: pointer;\\t\\n margin-right: 3px;\\t\\n border-style: solid;\\n }\\t\\n \\t\\n .apexcharts-legend.apexcharts-align-right .apexcharts-legend-series, .apexcharts-legend.apexcharts-align-left .apexcharts-legend-series{\\t\\n display: inline-block;\\t\\n }\\t\\n .apexcharts-legend-series.apexcharts-no-click {\\t\\n cursor: auto;\\t\\n }\\t\\n .apexcharts-legend .apexcharts-hidden-zero-series, .apexcharts-legend .apexcharts-hidden-null-series {\\t\\n display: none !important;\\t\\n }\\t\\n .apexcharts-inactive-legend {\\t\\n opacity: 0.45;\\t\\n }\");return t.appendChild(e),t}},{key:\"getLegendBBox\",value:function(){var t=this.w.globals.dom.baseEl.querySelector(\".apexcharts-legend\").getBoundingClientRect(),e=t.width;return{clwh:t.height,clww:e}}},{key:\"appendToForeignObject\",value:function(){var t=this.w.globals;t.dom.elLegendForeign=document.createElementNS(t.SVGNS,\"foreignObject\");var e=t.dom.elLegendForeign;e.setAttribute(\"x\",0),e.setAttribute(\"y\",0),e.setAttribute(\"width\",t.svgWidth),e.setAttribute(\"height\",t.svgHeight),t.dom.elLegendWrap.setAttribute(\"xmlns\",\"http://www.w3.org/1999/xhtml\"),e.appendChild(t.dom.elLegendWrap),e.appendChild(this.getLegendStyles()),t.dom.Paper.node.insertBefore(e,t.dom.elGraphical.node)}},{key:\"toggleDataSeries\",value:function(t,e){var i=this,a=this.w;if(a.globals.axisCharts||\"radialBar\"===a.config.chart.type){a.globals.resized=!0;var s=null,r=null;if(a.globals.risingSeries=[],a.globals.axisCharts?(s=a.globals.dom.baseEl.querySelector(\".apexcharts-series[data\\\\:realIndex='\".concat(t,\"']\")),r=parseInt(s.getAttribute(\"data:realIndex\"),10)):(s=a.globals.dom.baseEl.querySelector(\".apexcharts-series[rel='\".concat(t+1,\"']\")),r=parseInt(s.getAttribute(\"rel\"),10)-1),e)[{cs:a.globals.collapsedSeries,csi:a.globals.collapsedSeriesIndices},{cs:a.globals.ancillaryCollapsedSeries,csi:a.globals.ancillaryCollapsedSeriesIndices}].forEach((function(t){i.riseCollapsedSeries(t.cs,t.csi,r)}));else this.hideSeries({seriesEl:s,realIndex:r})}else{var o=a.globals.dom.Paper.select(\" .apexcharts-series[rel='\".concat(t+1,\"'] path\")),n=a.config.chart.type;if(\"pie\"===n||\"polarArea\"===n||\"donut\"===n){var l=a.config.plotOptions.pie.donut.labels;new m(this.lgCtx.ctx).pathMouseDown(o.members[0],null),this.lgCtx.ctx.pie.printDataLabelsInner(o.members[0].node,l)}o.fire(\"click\")}}},{key:\"hideSeries\",value:function(t){var e=t.seriesEl,i=t.realIndex,a=this.w,s=x.clone(a.config.series);if(a.globals.axisCharts){var r=!1;if(a.config.yaxis[i]&&a.config.yaxis[i].show&&a.config.yaxis[i].showAlways&&(r=!0,a.globals.ancillaryCollapsedSeriesIndices.indexOf(i)<0&&(a.globals.ancillaryCollapsedSeries.push({index:i,data:s[i].data.slice(),type:e.parentNode.className.baseVal.split(\"-\")[1]}),a.globals.ancillaryCollapsedSeriesIndices.push(i))),!r){a.globals.collapsedSeries.push({index:i,data:s[i].data.slice(),type:e.parentNode.className.baseVal.split(\"-\")[1]}),a.globals.collapsedSeriesIndices.push(i);var o=a.globals.risingSeries.indexOf(i);a.globals.risingSeries.splice(o,1)}}else a.globals.collapsedSeries.push({index:i,data:s[i]}),a.globals.collapsedSeriesIndices.push(i);for(var n=e.childNodes,l=0;l0){for(var r=0;r-1&&(t[a].data=[])})):t.forEach((function(i,a){e.globals.collapsedSeriesIndices.indexOf(a)>-1&&(t[a]=0)})),t}}]),t}(),lt=function(){function t(e,i){a(this,t),this.ctx=e,this.w=e.w,this.onLegendClick=this.onLegendClick.bind(this),this.onLegendHovered=this.onLegendHovered.bind(this),this.isBarsDistributed=\"bar\"===this.w.config.chart.type&&this.w.config.plotOptions.bar.distributed&&1===this.w.config.series.length,this.legendHelpers=new nt(this)}return r(t,[{key:\"init\",value:function(){var t=this.w,e=t.globals,i=t.config;if((i.legend.showForSingleSeries&&1===e.series.length||this.isBarsDistributed||e.series.length>1||!e.axisCharts)&&i.legend.show){for(;e.dom.elLegendWrap.firstChild;)e.dom.elLegendWrap.removeChild(e.dom.elLegendWrap.firstChild);this.drawLegends(),x.isIE11()?document.getElementsByTagName(\"head\")[0].appendChild(this.legendHelpers.getLegendStyles()):this.legendHelpers.appendToForeignObject(),\"bottom\"===i.legend.position||\"top\"===i.legend.position?this.legendAlignHorizontal():\"right\"!==i.legend.position&&\"left\"!==i.legend.position||this.legendAlignVertical()}}},{key:\"drawLegends\",value:function(){var t=this,e=this.w,i=e.config.legend.fontFamily,a=e.globals.seriesNames,s=e.globals.colors.slice();if(\"heatmap\"===e.config.chart.type){var r=e.config.plotOptions.heatmap.colorScale.ranges;a=r.map((function(t){return t.name?t.name:t.from+\" - \"+t.to})),s=r.map((function(t){return t.color}))}else this.isBarsDistributed&&(a=e.globals.labels.slice());e.config.legend.customLegendItems.length&&(a=e.config.legend.customLegendItems);for(var o=e.globals.legendFormatter,n=e.config.legend.inverseOrder,l=n?a.length-1:0;n?l>=0:l<=a.length-1;n?l--:l++){var h=o(a[l],{seriesIndex:l,w:e}),c=!1,d=!1;if(e.globals.collapsedSeries.length>0)for(var g=0;g0)for(var u=0;u0?l-10:0)+(h>0?h-10:0)}a.style.position=\"absolute\",r=r+t+i.config.legend.offsetX,o=o+e+i.config.legend.offsetY,a.style.left=r+\"px\",a.style.top=o+\"px\",\"bottom\"===i.config.legend.position?(a.style.top=\"auto\",a.style.bottom=5-i.config.legend.offsetY+\"px\"):\"right\"===i.config.legend.position&&(a.style.left=\"auto\",a.style.right=25+i.config.legend.offsetX+\"px\");[\"width\",\"height\"].forEach((function(t){a.style[t]&&(a.style[t]=parseInt(i.config.legend[t],10)+\"px\")}))}},{key:\"legendAlignHorizontal\",value:function(){var t=this.w;t.globals.dom.baseEl.querySelector(\".apexcharts-legend\").style.right=0;var e=this.legendHelpers.getLegendBBox(),i=new ot(this.ctx),a=i.dimHelpers.getTitleSubtitleCoords(\"title\"),s=i.dimHelpers.getTitleSubtitleCoords(\"subtitle\"),r=0;\"bottom\"===t.config.legend.position?r=-e.clwh/1.8:\"top\"===t.config.legend.position&&(r=a.height+s.height+t.config.title.margin+t.config.subtitle.margin-10),this.setLegendWrapXY(20,r)}},{key:\"legendAlignVertical\",value:function(){var t=this.w,e=this.legendHelpers.getLegendBBox(),i=0;\"left\"===t.config.legend.position&&(i=20),\"right\"===t.config.legend.position&&(i=t.globals.svgWidth-e.clww-10),this.setLegendWrapXY(i,20)}},{key:\"onLegendHovered\",value:function(t){var e=this.w,i=t.target.classList.contains(\"apexcharts-legend-text\")||t.target.classList.contains(\"apexcharts-legend-marker\");if(\"heatmap\"===e.config.chart.type||this.isBarsDistributed){if(i){var a=parseInt(t.target.getAttribute(\"rel\"),10)-1;this.ctx.events.fireEvent(\"legendHover\",[this.ctx,a,this.w]),new O(this.ctx).highlightRangeInSeries(t,t.target)}}else!t.target.classList.contains(\"apexcharts-inactive-legend\")&&i&&new O(this.ctx).toggleSeriesOnHover(t,t.target)}},{key:\"onLegendClick\",value:function(t){var e=this.w;if(!e.config.legend.customLegendItems.length&&(t.target.classList.contains(\"apexcharts-legend-text\")||t.target.classList.contains(\"apexcharts-legend-marker\"))){var i=parseInt(t.target.getAttribute(\"rel\"),10)-1,a=\"true\"===t.target.getAttribute(\"data:collapsed\"),s=this.w.config.chart.events.legendClick;\"function\"==typeof s&&s(this.ctx,i,this.w),this.ctx.events.fireEvent(\"legendClick\",[this.ctx,i,this.w]);var r=this.w.config.legend.markers.onClick;\"function\"==typeof r&&t.target.classList.contains(\"apexcharts-legend-marker\")&&(r(this.ctx,i,this.w),this.ctx.events.fireEvent(\"legendMarkerClick\",[this.ctx,i,this.w])),\"treemap\"!==e.config.chart.type&&\"heatmap\"!==e.config.chart.type&&!this.isBarsDistributed&&e.config.legend.onItemClick.toggleDataSeries&&this.legendHelpers.toggleDataSeries(i,a)}}}]),t}(),ht=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w;var i=this.w;this.ev=this.w.config.chart.events,this.selectedClass=\"apexcharts-selected\",this.localeValues=this.w.globals.locale.toolbar,this.minX=i.globals.minX,this.maxX=i.globals.maxX}return r(t,[{key:\"createToolbar\",value:function(){var t=this,e=this.w,i=function(){return document.createElement(\"div\")},a=i();if(a.setAttribute(\"class\",\"apexcharts-toolbar\"),a.style.top=e.config.chart.toolbar.offsetY+\"px\",a.style.right=3-e.config.chart.toolbar.offsetX+\"px\",e.globals.dom.elWrap.appendChild(a),this.elZoom=i(),this.elZoomIn=i(),this.elZoomOut=i(),this.elPan=i(),this.elSelection=i(),this.elZoomReset=i(),this.elMenuIcon=i(),this.elMenu=i(),this.elCustomIcons=[],this.t=e.config.chart.toolbar.tools,Array.isArray(this.t.customIcons))for(var s=0;s\\n \\n \\n\\n'),o(\"zoomOut\",this.elZoomOut,'\\n \\n \\n\\n');var n=function(i){t.t[i]&&e.config.chart[i].enabled&&r.push({el:\"zoom\"===i?t.elZoom:t.elSelection,icon:\"string\"==typeof t.t[i]?t.t[i]:\"zoom\"===i?'\\n \\n \\n \\n':'\\n \\n \\n',title:t.localeValues[\"zoom\"===i?\"selectionZoom\":\"selection\"],class:e.globals.isTouchDevice?\"apexcharts-element-hidden\":\"apexcharts-\".concat(i,\"-icon\")})};n(\"zoom\"),n(\"selection\"),this.t.pan&&e.config.chart.zoom.enabled&&r.push({el:this.elPan,icon:\"string\"==typeof this.t.pan?this.t.pan:'\\n \\n \\n \\n \\n \\n \\n \\n',title:this.localeValues.pan,class:e.globals.isTouchDevice?\"apexcharts-element-hidden\":\"apexcharts-pan-icon\"}),o(\"reset\",this.elZoomReset,'\\n \\n \\n'),this.t.download&&r.push({el:this.elMenuIcon,icon:\"string\"==typeof this.t.download?this.t.download:'',title:this.localeValues.menu,class:\"apexcharts-menu-icon\"});for(var l=0;l0&&e.height>0&&this.slDraggableRect.selectize({points:\"l, r\",pointSize:8,pointType:\"rect\"}).resize({constraint:{minX:0,minY:0,maxX:t.globals.gridWidth,maxY:t.globals.gridHeight}}).on(\"resizing\",this.selectionDragging.bind(this,\"resizing\"))}}},{key:\"preselectedSelection\",value:function(){var t=this.w,e=this.xyRatios;if(!t.globals.zoomEnabled)if(void 0!==t.globals.selection&&null!==t.globals.selection)this.drawSelectionRect(t.globals.selection);else if(void 0!==t.config.chart.selection.xaxis.min&&void 0!==t.config.chart.selection.xaxis.max){var i=(t.config.chart.selection.xaxis.min-t.globals.minX)/e.xRatio,a={x:i,y:0,width:t.globals.gridWidth-(t.globals.maxX-t.config.chart.selection.xaxis.max)/e.xRatio-i,height:t.globals.gridHeight,translateX:0,translateY:0,selectionEnabled:!0};this.drawSelectionRect(a),this.makeSelectionRectDraggable(),\"function\"==typeof t.config.chart.events.selection&&t.config.chart.events.selection(this.ctx,{xaxis:{min:t.config.chart.selection.xaxis.min,max:t.config.chart.selection.xaxis.max},yaxis:{}})}}},{key:\"drawSelectionRect\",value:function(t){var e=t.x,i=t.y,a=t.width,s=t.height,r=t.translateX,o=void 0===r?0:r,n=t.translateY,l=void 0===n?0:n,h=this.w,c=this.zoomRect,d=this.selectionRect;if(this.dragged||null!==h.globals.selection){var g={transform:\"translate(\"+o+\", \"+l+\")\"};h.globals.zoomEnabled&&this.dragged&&(a<0&&(a=1),c.attr({x:e,y:i,width:a,height:s,fill:h.config.chart.zoom.zoomedArea.fill.color,\"fill-opacity\":h.config.chart.zoom.zoomedArea.fill.opacity,stroke:h.config.chart.zoom.zoomedArea.stroke.color,\"stroke-width\":h.config.chart.zoom.zoomedArea.stroke.width,\"stroke-opacity\":h.config.chart.zoom.zoomedArea.stroke.opacity}),m.setAttrs(c.node,g)),h.globals.selectionEnabled&&(d.attr({x:e,y:i,width:a>0?a:0,height:s>0?s:0,fill:h.config.chart.selection.fill.color,\"fill-opacity\":h.config.chart.selection.fill.opacity,stroke:h.config.chart.selection.stroke.color,\"stroke-width\":h.config.chart.selection.stroke.width,\"stroke-dasharray\":h.config.chart.selection.stroke.dashArray,\"stroke-opacity\":h.config.chart.selection.stroke.opacity}),m.setAttrs(d.node,g))}}},{key:\"hideSelectionRect\",value:function(t){t&&t.attr({x:0,y:0,width:0,height:0})}},{key:\"selectionDrawing\",value:function(t){var e=t.context,i=t.zoomtype,a=this.w,s=e,r=this.gridRect.getBoundingClientRect(),o=s.startX-1,n=s.startY,l=!1,h=!1,c=s.clientX-r.left-o,d=s.clientY-r.top-n,g={};return Math.abs(c+o)>a.globals.gridWidth?c=a.globals.gridWidth-o:s.clientX-r.left<0&&(c=o),o>s.clientX-r.left&&(l=!0,c=Math.abs(c)),n>s.clientY-r.top&&(h=!0,d=Math.abs(d)),g=\"x\"===i?{x:l?o-c:o,y:0,width:c,height:a.globals.gridHeight}:\"y\"===i?{x:0,y:h?n-d:n,width:a.globals.gridWidth,height:d}:{x:l?o-c:o,y:h?n-d:n,width:c,height:d},s.drawSelectionRect(g),s.selectionDragging(\"resizing\"),g}},{key:\"selectionDragging\",value:function(t,e){var i=this,a=this.w,s=this.xyRatios,r=this.selectionRect,o=0;\"resizing\"===t&&(o=30);var n=function(t){return parseFloat(r.node.getAttribute(t))},l={x:n(\"x\"),y:n(\"y\"),width:n(\"width\"),height:n(\"height\")};a.globals.selection=l,\"function\"==typeof a.config.chart.events.selection&&a.globals.selectionEnabled&&(clearTimeout(this.w.globals.selectionResizeTimer),this.w.globals.selectionResizeTimer=window.setTimeout((function(){var t=i.gridRect.getBoundingClientRect(),e=r.node.getBoundingClientRect(),o={xaxis:{min:a.globals.xAxisScale.niceMin+(e.left-t.left)*s.xRatio,max:a.globals.xAxisScale.niceMin+(e.right-t.left)*s.xRatio},yaxis:{min:a.globals.yAxisScale[0].niceMin+(t.bottom-e.bottom)*s.yRatio[0],max:a.globals.yAxisScale[0].niceMax-(e.top-t.top)*s.yRatio[0]}};a.config.chart.events.selection(i.ctx,o),a.config.chart.brush.enabled&&void 0!==a.config.chart.events.brushScrolled&&a.config.chart.events.brushScrolled(i.ctx,o)}),o))}},{key:\"selectionDrawn\",value:function(t){var e=t.context,i=t.zoomtype,a=this.w,s=e,r=this.xyRatios,o=this.ctx.toolbar;if(s.startX>s.endX){var n=s.startX;s.startX=s.endX,s.endX=n}if(s.startY>s.endY){var l=s.startY;s.startY=s.endY,s.endY=l}var h=void 0,c=void 0;a.globals.isRangeBar?(h=a.globals.yAxisScale[0].niceMin+s.startX*r.invertedYRatio,c=a.globals.yAxisScale[0].niceMin+s.endX*r.invertedYRatio):(h=a.globals.xAxisScale.niceMin+s.startX*r.xRatio,c=a.globals.xAxisScale.niceMin+s.endX*r.xRatio);var d=[],g=[];if(a.config.yaxis.forEach((function(t,e){d.push(a.globals.yAxisScale[e].niceMax-r.yRatio[e]*s.startY),g.push(a.globals.yAxisScale[e].niceMax-r.yRatio[e]*s.endY)})),s.dragged&&(s.dragX>10||s.dragY>10)&&h!==c)if(a.globals.zoomEnabled){var u=x.clone(a.globals.initialConfig.yaxis),f=x.clone(a.globals.initialConfig.xaxis);if(a.globals.zoomed=!0,a.config.xaxis.convertedCatToNumeric&&(h=Math.floor(h),c=Math.floor(c),h<1&&(h=1,c=a.globals.dataPoints),c-h<2&&(c=h+1)),\"xy\"!==i&&\"x\"!==i||(f={min:h,max:c}),\"xy\"!==i&&\"y\"!==i||u.forEach((function(t,e){u[e].min=g[e],u[e].max=d[e]})),a.config.chart.zoom.autoScaleYaxis){var p=new _(s.ctx);u=p.autoScaleY(s.ctx,u,{xaxis:f})}if(o){var b=o.getBeforeZoomRange(f,u);b&&(f=b.xaxis?b.xaxis:f,u=b.yaxis?b.yaxis:u)}var v={xaxis:f};a.config.chart.group||(v.yaxis=u),s.ctx.updateHelpers._updateOptions(v,!1,s.w.config.chart.animations.dynamicAnimation.enabled),\"function\"==typeof a.config.chart.events.zoomed&&o.zoomCallback(f,u)}else if(a.globals.selectionEnabled){var m,y=null;m={min:h,max:c},\"xy\"!==i&&\"y\"!==i||(y=x.clone(a.config.yaxis)).forEach((function(t,e){y[e].min=g[e],y[e].max=d[e]})),a.globals.selection=s.selection,\"function\"==typeof a.config.chart.events.selection&&a.config.chart.events.selection(s.ctx,{xaxis:m,yaxis:y})}}},{key:\"panDragging\",value:function(t){var e=t.context,i=this.w,a=e;if(void 0!==i.globals.lastClientPosition.x){var s=i.globals.lastClientPosition.x-a.clientX,r=i.globals.lastClientPosition.y-a.clientY;Math.abs(s)>Math.abs(r)&&s>0?this.moveDirection=\"left\":Math.abs(s)>Math.abs(r)&&s<0?this.moveDirection=\"right\":Math.abs(r)>Math.abs(s)&&r>0?this.moveDirection=\"up\":Math.abs(r)>Math.abs(s)&&r<0&&(this.moveDirection=\"down\")}i.globals.lastClientPosition={x:a.clientX,y:a.clientY};var o=i.globals.isRangeBar?i.globals.minY:i.globals.minX,n=i.globals.isRangeBar?i.globals.maxY:i.globals.maxX;i.config.xaxis.convertedCatToNumeric||a.panScrolled(o,n)}},{key:\"delayedPanScrolled\",value:function(){var t=this.w,e=t.globals.minX,i=t.globals.maxX,a=(t.globals.maxX-t.globals.minX)/2;\"left\"===this.moveDirection?(e=t.globals.minX+a,i=t.globals.maxX+a):\"right\"===this.moveDirection&&(e=t.globals.minX-a,i=t.globals.maxX-a),e=Math.floor(e),i=Math.floor(i),this.updateScrolledChart({xaxis:{min:e,max:i}},e,i)}},{key:\"panScrolled\",value:function(t,e){var i=this.w,a=this.xyRatios,s=x.clone(i.globals.initialConfig.yaxis),r=a.xRatio,o=i.globals.minX,n=i.globals.maxX;i.globals.isRangeBar&&(r=a.invertedYRatio,o=i.globals.minY,n=i.globals.maxY),\"left\"===this.moveDirection?(t=o+i.globals.gridWidth/15*r,e=n+i.globals.gridWidth/15*r):\"right\"===this.moveDirection&&(t=o-i.globals.gridWidth/15*r,e=n-i.globals.gridWidth/15*r),i.globals.isRangeBar||(ti.globals.initialMaxX)&&(t=o,e=n);var l={min:t,max:e};i.config.chart.zoom.autoScaleYaxis&&(s=new _(this.ctx).autoScaleY(this.ctx,s,{xaxis:l}));var h={xaxis:{min:t,max:e}};i.config.chart.group||(h.yaxis=s),this.updateScrolledChart(h,t,e)}},{key:\"updateScrolledChart\",value:function(t,e,i){var a=this.w;this.ctx.updateHelpers._updateOptions(t,!1,!1),\"function\"==typeof a.config.chart.events.scrolled&&a.config.chart.events.scrolled(this.ctx,{xaxis:{min:e,max:i}})}}]),i}(ht),dt=function(){function t(e){a(this,t),this.w=e.w,this.ttCtx=e,this.ctx=e.ctx}return r(t,[{key:\"getNearestValues\",value:function(t){var e=t.hoverArea,i=t.elGrid,a=t.clientX,s=t.clientY,r=this.w,o=i.getBoundingClientRect(),n=o.width,l=o.height,h=n/(r.globals.dataPoints-1),c=l/r.globals.dataPoints,d=this.hasBars();!r.globals.comboCharts&&!d||r.config.xaxis.convertedCatToNumeric||(h=n/r.globals.dataPoints);var g=a-o.left-r.globals.barPadForNumericAxis,u=s-o.top;g<0||u<0||g>n||u>l?(e.classList.remove(\"hovering-zoom\"),e.classList.remove(\"hovering-pan\")):r.globals.zoomEnabled?(e.classList.remove(\"hovering-pan\"),e.classList.add(\"hovering-zoom\")):r.globals.panEnabled&&(e.classList.remove(\"hovering-zoom\"),e.classList.add(\"hovering-pan\"));var f=Math.round(g/h),p=Math.floor(u/c);d&&!r.config.xaxis.convertedCatToNumeric&&(f=Math.ceil(g/h),f-=1);var b=null,v=null,m=[],y=[];if(r.globals.seriesXvalues.forEach((function(t){m.push([t[0]+1e-6].concat(t))})),r.globals.seriesYvalues.forEach((function(t){y.push([t[0]+1e-6].concat(t))})),m=m.map((function(t){return t.filter((function(t){return x.isNumber(t)}))})),y=y.map((function(t){return t.filter((function(t){return x.isNumber(t)}))})),r.globals.isXNumeric){var w=this.ttCtx.getElGrid().getBoundingClientRect(),k=g*(w.width/n),A=u*(w.height/l);b=(v=this.closestInMultiArray(k,A,m,y)).index,f=v.j,null!==b&&(m=r.globals.seriesXvalues[b],f=(v=this.closestInArray(k,m)).index)}return r.globals.capturedSeriesIndex=null===b?-1:b,(!f||f<1)&&(f=0),r.globals.isBarHorizontal?r.globals.capturedDataPointIndex=p:r.globals.capturedDataPointIndex=f,{capturedSeries:b,j:r.globals.isBarHorizontal?p:f,hoverX:g,hoverY:u}}},{key:\"closestInMultiArray\",value:function(t,e,i,a){var s=this.w,r=0,o=null,n=-1;s.globals.series.length>1?r=this.getFirstActiveXArray(i):o=0;var l=i[r][0],h=Math.abs(t-l);if(i.forEach((function(e){e.forEach((function(e,i){var a=Math.abs(t-e);a0?e:-1})),s=0;s0)for(var a=0;ai?-1:0}));var e=[];return t.forEach((function(t){e.push(t.querySelector(\".apexcharts-marker\"))})),e}},{key:\"hasMarkers\",value:function(){return this.getElMarkers().length>0}},{key:\"getElBars\",value:function(){return this.w.globals.dom.baseEl.querySelectorAll(\".apexcharts-bar-series, .apexcharts-candlestick-series, .apexcharts-boxPlot-series, .apexcharts-rangebar-series\")}},{key:\"hasBars\",value:function(){return this.getElBars().length>0}},{key:\"getHoverMarkerSize\",value:function(t){var e=this.w,i=e.config.markers.hover.size;return void 0===i&&(i=e.globals.markers.size[t]+e.config.markers.hover.sizeOffset),i}},{key:\"toggleAllTooltipSeriesGroups\",value:function(t){var e=this.w,i=this.ttCtx;0===i.allTooltipSeriesGroups.length&&(i.allTooltipSeriesGroups=e.globals.dom.baseEl.querySelectorAll(\".apexcharts-tooltip-series-group\"));for(var a=i.allTooltipSeriesGroups,s=0;s\",e=\"
\";d.forEach((function(i,a){t+='
').concat(i.attrs.name,\"
\"),e+=\"
\".concat(i.val,\"
\")})),v.innerHTML=t+\"
\",m.innerHTML=e+\"\"};o?l.globals.seriesGoals[e][i]&&Array.isArray(l.globals.seriesGoals[e][i])?y():(v.innerHTML=\"\",m.innerHTML=\"\"):y()}else v.innerHTML=\"\",m.innerHTML=\"\";null!==f&&(a[e].querySelector(\".apexcharts-tooltip-text-z-label\").innerHTML=l.config.tooltip.z.title,a[e].querySelector(\".apexcharts-tooltip-text-z-value\").innerHTML=void 0!==f?f:\"\");o&&p[0]&&(null==c||l.globals.ancillaryCollapsedSeriesIndices.indexOf(e)>-1||l.globals.collapsedSeriesIndices.indexOf(e)>-1?p[0].parentNode.style.display=\"none\":p[0].parentNode.style.display=l.config.tooltip.items.display)}},{key:\"toggleActiveInactiveSeries\",value:function(t){var e=this.w;if(t)this.tooltipUtil.toggleAllTooltipSeriesGroups(\"enable\");else{this.tooltipUtil.toggleAllTooltipSeriesGroups(\"disable\");var i=e.globals.dom.baseEl.querySelector(\".apexcharts-tooltip-series-group\");i&&(i.classList.add(\"apexcharts-active\"),i.style.display=e.config.tooltip.items.display)}}},{key:\"getValuesToPrint\",value:function(t){var e=t.i,i=t.j,a=this.w,s=this.ctx.series.filteredSeriesX(),r=\"\",o=\"\",n=null,l=null,h={series:a.globals.series,seriesIndex:e,dataPointIndex:i,w:a},c=a.globals.ttZFormatter;null===i?l=a.globals.series[e]:a.globals.isXNumeric&&\"treemap\"!==a.config.chart.type?(r=s[e][i],0===s[e].length&&(r=s[this.tooltipUtil.getFirstActiveXArray(s)][i])):r=void 0!==a.globals.labels[i]?a.globals.labels[i]:\"\";var d=r;a.globals.isXNumeric&&\"datetime\"===a.config.xaxis.type?r=new W(this.ctx).xLabelFormat(a.globals.ttKeyFormatter,d,d,{i:void 0,dateFormatter:new T(this.ctx).formatDate,w:this.w}):r=a.globals.isBarHorizontal?a.globals.yLabelFormatters[0](d,h):a.globals.xLabelFormatter(d,h);return void 0!==a.config.tooltip.x.formatter&&(r=a.globals.ttKeyFormatter(d,h)),a.globals.seriesZ.length>0&&a.globals.seriesZ[e].length>0&&(n=c(a.globals.seriesZ[e][i],a)),o=\"function\"==typeof a.config.xaxis.tooltip.formatter?a.globals.xaxisTooltipFormatter(d,h):r,{val:Array.isArray(l)?l.join(\" \"):l,xVal:Array.isArray(r)?r.join(\" \"):r,xAxisTTVal:Array.isArray(o)?o.join(\" \"):o,zVal:n}}},{key:\"handleCustomTooltip\",value:function(t){var e=t.i,i=t.j,a=t.y1,s=t.y2,r=t.w,o=this.ttCtx.getElTooltip(),n=r.config.tooltip.custom;Array.isArray(n)&&n[e]&&(n=n[e]),o.innerHTML=n({ctx:this.ctx,series:r.globals.series,seriesIndex:e,dataPointIndex:i,y1:a,y2:s,w:r})}}]),t}(),ut=function(){function t(e){a(this,t),this.ttCtx=e,this.ctx=e.ctx,this.w=e.w}return r(t,[{key:\"moveXCrosshairs\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,i=this.ttCtx,a=this.w,s=i.getElXCrosshairs(),r=t-i.xcrosshairsWidth/2,o=a.globals.labels.slice().length;if(null!==e&&(r=a.globals.gridWidth/o*e),null===s||a.globals.isBarHorizontal||(s.setAttribute(\"x\",r),s.setAttribute(\"x1\",r),s.setAttribute(\"x2\",r),s.setAttribute(\"y2\",a.globals.gridHeight),s.classList.add(\"apexcharts-active\")),r<0&&(r=0),r>a.globals.gridWidth&&(r=a.globals.gridWidth),i.isXAxisTooltipEnabled){var n=r;\"tickWidth\"!==a.config.xaxis.crosshairs.width&&\"barWidth\"!==a.config.xaxis.crosshairs.width||(n=r+i.xcrosshairsWidth/2),this.moveXAxisTooltip(n)}}},{key:\"moveYCrosshairs\",value:function(t){var e=this.ttCtx;null!==e.ycrosshairs&&m.setAttrs(e.ycrosshairs,{y1:t,y2:t}),null!==e.ycrosshairsHidden&&m.setAttrs(e.ycrosshairsHidden,{y1:t,y2:t})}},{key:\"moveXAxisTooltip\",value:function(t){var e=this.w,i=this.ttCtx;if(null!==i.xaxisTooltip&&0!==i.xcrosshairsWidth){i.xaxisTooltip.classList.add(\"apexcharts-active\");var a=i.xaxisOffY+e.config.xaxis.tooltip.offsetY+e.globals.translateY+1+e.config.xaxis.offsetY;if(t-=i.xaxisTooltip.getBoundingClientRect().width/2,!isNaN(t)){t+=e.globals.translateX;var s;s=new m(this.ctx).getTextRects(i.xaxisTooltipText.innerHTML),i.xaxisTooltipText.style.minWidth=s.width+\"px\",i.xaxisTooltip.style.left=t+\"px\",i.xaxisTooltip.style.top=a+\"px\"}}}},{key:\"moveYAxisTooltip\",value:function(t){var e=this.w,i=this.ttCtx;null===i.yaxisTTEls&&(i.yaxisTTEls=e.globals.dom.baseEl.querySelectorAll(\".apexcharts-yaxistooltip\"));var a=parseInt(i.ycrosshairsHidden.getAttribute(\"y1\"),10),s=e.globals.translateY+a,r=i.yaxisTTEls[t].getBoundingClientRect().height,o=e.globals.translateYAxisX[t]-2;e.config.yaxis[t].opposite&&(o-=26),s-=r/2,-1===e.globals.ignoreYAxisIndexes.indexOf(t)?(i.yaxisTTEls[t].classList.add(\"apexcharts-active\"),i.yaxisTTEls[t].style.top=s+\"px\",i.yaxisTTEls[t].style.left=o+e.config.yaxis[t].tooltip.offsetX+\"px\"):i.yaxisTTEls[t].classList.remove(\"apexcharts-active\")}},{key:\"moveTooltip\",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=this.w,s=this.ttCtx,r=s.getElTooltip(),o=s.tooltipRect,n=null!==i?parseFloat(i):1,l=parseFloat(t)+n+5,h=parseFloat(e)+n/2;if(l>a.globals.gridWidth/2&&(l=l-o.ttWidth-n-10),l>a.globals.gridWidth-o.ttWidth-10&&(l=a.globals.gridWidth-o.ttWidth),l<-20&&(l=-20),a.config.tooltip.followCursor){var c=s.getElGrid(),d=c.getBoundingClientRect();h=s.e.clientY+a.globals.translateY-d.top-o.ttHeight/2}else a.globals.isBarHorizontal||(o.ttHeight/2+h>a.globals.gridHeight&&(h=a.globals.gridHeight-o.ttHeight+a.globals.translateY),h<0&&(h=0));isNaN(l)||(l+=a.globals.translateX,r.style.left=l+\"px\",r.style.top=h+\"px\")}},{key:\"moveMarkers\",value:function(t,e){var i=this.w,a=this.ttCtx;if(i.globals.markers.size[t]>0)for(var s=i.globals.dom.baseEl.querySelectorAll(\" .apexcharts-series[data\\\\:realIndex='\".concat(t,\"'] .apexcharts-marker\")),r=0;r0&&(h.setAttribute(\"r\",n),h.setAttribute(\"cx\",i),h.setAttribute(\"cy\",a)),this.moveXCrosshairs(i),r.fixedTooltip||this.moveTooltip(i,a,n)}}},{key:\"moveDynamicPointsOnHover\",value:function(t){var e,i=this.ttCtx,a=i.w,s=0,r=0,o=a.globals.pointsArray;e=new O(this.ctx).getActiveConfigSeriesIndex(\"asc\",[\"line\",\"area\",\"scatter\",\"bubble\"]);var n=i.tooltipUtil.getHoverMarkerSize(e);o[e]&&(s=o[e][t][0],r=o[e][t][1]);var l=i.tooltipUtil.getAllMarkers();if(null!==l)for(var h=0;h0?(l[h]&&l[h].setAttribute(\"r\",n),l[h]&&l[h].setAttribute(\"cy\",d)):l[h]&&l[h].setAttribute(\"r\",0)}}if(this.moveXCrosshairs(s),!i.fixedTooltip){var f=r||a.globals.gridHeight;this.moveTooltip(s,f,n)}}},{key:\"moveStickyTooltipOverBars\",value:function(t){var e=this.w,i=this.ttCtx,a=e.globals.columnSeries?e.globals.columnSeries.length:e.globals.series.length,s=a>=2&&a%2==0?Math.floor(a/2):Math.floor(a/2)+1;e.globals.isBarHorizontal&&(s=new O(this.ctx).getActiveConfigSeriesIndex(\"desc\")+1);var r=e.globals.dom.baseEl.querySelector(\".apexcharts-bar-series .apexcharts-series[rel='\".concat(s,\"'] path[j='\").concat(t,\"'], .apexcharts-candlestick-series .apexcharts-series[rel='\").concat(s,\"'] path[j='\").concat(t,\"'], .apexcharts-boxPlot-series .apexcharts-series[rel='\").concat(s,\"'] path[j='\").concat(t,\"'], .apexcharts-rangebar-series .apexcharts-series[rel='\").concat(s,\"'] path[j='\").concat(t,\"']\")),o=r?parseFloat(r.getAttribute(\"cx\")):0,n=r?parseFloat(r.getAttribute(\"cy\")):0,l=r?parseFloat(r.getAttribute(\"barWidth\")):0,h=r?parseFloat(r.getAttribute(\"barHeight\")):0,c=i.getElGrid().getBoundingClientRect(),d=r.classList.contains(\"apexcharts-candlestick-area\")||r.classList.contains(\"apexcharts-boxPlot-area\");if(e.globals.isXNumeric?(r&&!d&&(o-=a%2!=0?l/2:0),r&&d&&e.globals.comboCharts&&(o-=l/2)):e.globals.isBarHorizontal||(o=i.xAxisTicksPositions[t-1]+i.dataPointsDividedWidth/2,isNaN(o)&&(o=i.xAxisTicksPositions[t]-i.dataPointsDividedWidth/2)),e.globals.isBarHorizontal?(n>e.globals.gridHeight/2&&(n-=i.tooltipRect.ttHeight),(n=n+e.config.grid.padding.top+h/3)+h>e.globals.gridHeight&&(n=e.globals.gridHeight-h)):e.config.tooltip.followCursor?n=i.e.clientY-c.top-i.tooltipRect.ttHeight/2:n+i.tooltipRect.ttHeight+15>e.globals.gridHeight&&(n=e.globals.gridHeight),n<-10&&(n=-10),e.globals.isBarHorizontal||this.moveXCrosshairs(o),!i.fixedTooltip){var g=n||e.globals.gridHeight;this.moveTooltip(o,g)}}}]),t}(),ft=function(){function t(e){a(this,t),this.w=e.w,this.ttCtx=e,this.ctx=e.ctx,this.tooltipPosition=new ut(e)}return r(t,[{key:\"drawDynamicPoints\",value:function(){var t=this.w,e=new m(this.ctx),i=new R(this.ctx),a=t.globals.dom.baseEl.querySelectorAll(\".apexcharts-series\");a=u(a),t.config.chart.stacked&&a.sort((function(t,e){return parseFloat(t.getAttribute(\"data:realIndex\"))-parseFloat(e.getAttribute(\"data:realIndex\"))}));for(var s=0;s2&&void 0!==arguments[2]?arguments[2]:null,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,s=this.w;\"bubble\"!==s.config.chart.type&&this.newPointSize(t,e);var r=e.getAttribute(\"cx\"),o=e.getAttribute(\"cy\");if(null!==i&&null!==a&&(r=i,o=a),this.tooltipPosition.moveXCrosshairs(r),!this.fixedTooltip){if(\"radar\"===s.config.chart.type){var n=this.ttCtx.getElGrid(),l=n.getBoundingClientRect();r=this.ttCtx.e.clientX-l.left}this.tooltipPosition.moveTooltip(r,o,s.config.markers.hover.size)}}},{key:\"enlargePoints\",value:function(t){for(var e=this.w,i=this,a=this.ttCtx,s=t,r=e.globals.dom.baseEl.querySelectorAll(\".apexcharts-series:not(.apexcharts-series-collapsed) .apexcharts-marker\"),o=e.config.markers.hover.size,n=0;n=0?t[e].setAttribute(\"r\",i):t[e].setAttribute(\"r\",0)}}}]),t}(),pt=function(){function t(e){a(this,t),this.w=e.w,this.ttCtx=e}return r(t,[{key:\"getAttr\",value:function(t,e){return parseFloat(t.target.getAttribute(e))}},{key:\"handleHeatTreeTooltip\",value:function(t){var e=t.e,i=t.opt,a=t.x,s=t.y,r=t.type,o=this.ttCtx,n=this.w;if(e.target.classList.contains(\"apexcharts-\".concat(r,\"-rect\"))){var l=this.getAttr(e,\"i\"),h=this.getAttr(e,\"j\"),c=this.getAttr(e,\"cx\"),d=this.getAttr(e,\"cy\"),g=this.getAttr(e,\"width\"),u=this.getAttr(e,\"height\");if(o.tooltipLabels.drawSeriesTexts({ttItems:i.ttItems,i:l,j:h,shared:!1,e:e}),n.globals.capturedSeriesIndex=l,n.globals.capturedDataPointIndex=h,a=c+o.tooltipRect.ttWidth/2+g,s=d+o.tooltipRect.ttHeight/2-u/2,o.tooltipPosition.moveXCrosshairs(c+g/2),a>n.globals.gridWidth/2&&(a=c-o.tooltipRect.ttWidth/2+g),o.w.config.tooltip.followCursor){var f=n.globals.dom.elWrap.getBoundingClientRect();a=n.globals.clientX-f.left-(a>n.globals.gridWidth/2?o.tooltipRect.ttWidth:0),s=n.globals.clientY-f.top-(s>n.globals.gridHeight/2?o.tooltipRect.ttHeight:0)}}return{x:a,y:s}}},{key:\"handleMarkerTooltip\",value:function(t){var e,i,a=t.e,s=t.opt,r=t.x,o=t.y,n=this.w,l=this.ttCtx;if(a.target.classList.contains(\"apexcharts-marker\")){var h=parseInt(s.paths.getAttribute(\"cx\"),10),c=parseInt(s.paths.getAttribute(\"cy\"),10),d=parseFloat(s.paths.getAttribute(\"val\"));if(i=parseInt(s.paths.getAttribute(\"rel\"),10),e=parseInt(s.paths.parentNode.parentNode.parentNode.getAttribute(\"rel\"),10)-1,l.intersect){var g=x.findAncestor(s.paths,\"apexcharts-series\");g&&(e=parseInt(g.getAttribute(\"data:realIndex\"),10))}if(l.tooltipLabels.drawSeriesTexts({ttItems:s.ttItems,i:e,j:i,shared:!l.showOnIntersect&&n.config.tooltip.shared,e:a}),\"mouseup\"===a.type&&l.markerClick(a,e,i),n.globals.capturedSeriesIndex=e,n.globals.capturedDataPointIndex=i,r=h,o=c+n.globals.translateY-1.4*l.tooltipRect.ttHeight,l.w.config.tooltip.followCursor){var u=l.getElGrid().getBoundingClientRect();o=l.e.clientY+n.globals.translateY-u.top}d<0&&(o=c),l.marker.enlargeCurrentPoint(i,s.paths,r,o)}return{x:r,y:o}}},{key:\"handleBarTooltip\",value:function(t){var e,i,a=t.e,s=t.opt,r=this.w,o=this.ttCtx,n=o.getElTooltip(),l=0,h=0,c=0,d=this.getBarTooltipXY({e:a,opt:s});e=d.i;var g=d.barHeight,u=d.j;r.globals.capturedSeriesIndex=e,r.globals.capturedDataPointIndex=u,r.globals.isBarHorizontal&&o.tooltipUtil.hasBars()||!r.config.tooltip.shared?(h=d.x,c=d.y,i=Array.isArray(r.config.stroke.width)?r.config.stroke.width[e]:r.config.stroke.width,l=h):r.globals.comboCharts||r.config.tooltip.shared||(l/=2),isNaN(c)?c=r.globals.svgHeight-o.tooltipRect.ttHeight:c<0&&(c=0);var f=parseInt(s.paths.parentNode.getAttribute(\"data:realIndex\"),10),p=r.globals.isMultipleYAxis?r.config.yaxis[f]&&r.config.yaxis[f].reversed:r.config.yaxis[0].reversed;if(h+o.tooltipRect.ttWidth>r.globals.gridWidth&&!p?h-=o.tooltipRect.ttWidth:h<0&&(h=0),o.w.config.tooltip.followCursor){var x=o.getElGrid().getBoundingClientRect();c=o.e.clientY-x.top}null===o.tooltip&&(o.tooltip=r.globals.dom.baseEl.querySelector(\".apexcharts-tooltip\")),r.config.tooltip.shared||(r.globals.comboBarCount>0?o.tooltipPosition.moveXCrosshairs(l+i/2):o.tooltipPosition.moveXCrosshairs(l)),!o.fixedTooltip&&(!r.config.tooltip.shared||r.globals.isBarHorizontal&&o.tooltipUtil.hasBars())&&(p&&(h-=o.tooltipRect.ttWidth)<0&&(h=0),!p||r.globals.isBarHorizontal&&o.tooltipUtil.hasBars()||(c=c+g-2*(r.globals.series[e][u]<0?g:0)),o.tooltipRect.ttHeight+c>r.globals.gridHeight?c=r.globals.gridHeight-o.tooltipRect.ttHeight+r.globals.translateY:(c=c+r.globals.translateY-o.tooltipRect.ttHeight/2)<0&&(c=0),n.style.left=h+r.globals.translateX+\"px\",n.style.top=c+\"px\")}},{key:\"getBarTooltipXY\",value:function(t){var e=t.e,i=t.opt,a=this.w,s=null,r=this.ttCtx,o=0,n=0,l=0,h=0,c=0,d=e.target.classList;if(d.contains(\"apexcharts-bar-area\")||d.contains(\"apexcharts-candlestick-area\")||d.contains(\"apexcharts-boxPlot-area\")||d.contains(\"apexcharts-rangebar-area\")){var g=e.target,u=g.getBoundingClientRect(),f=i.elGrid.getBoundingClientRect(),p=u.height;c=u.height;var x=u.width,b=parseInt(g.getAttribute(\"cx\"),10),v=parseInt(g.getAttribute(\"cy\"),10);h=parseFloat(g.getAttribute(\"barWidth\"));var m=\"touchmove\"===e.type?e.touches[0].clientX:e.clientX;s=parseInt(g.getAttribute(\"j\"),10),o=parseInt(g.parentNode.getAttribute(\"rel\"),10)-1;var y=g.getAttribute(\"data-range-y1\"),w=g.getAttribute(\"data-range-y2\");a.globals.comboCharts&&(o=parseInt(g.parentNode.getAttribute(\"data:realIndex\"),10)),r.tooltipLabels.drawSeriesTexts({ttItems:i.ttItems,i:o,j:s,y1:y?parseInt(y,10):null,y2:w?parseInt(w,10):null,shared:!r.showOnIntersect&&a.config.tooltip.shared,e:e}),a.config.tooltip.followCursor?a.globals.isBarHorizontal?(n=m-f.left+15,l=v-r.dataPointsDividedHeight+p/2-r.tooltipRect.ttHeight/2):(n=a.globals.isXNumeric?b-x/2:b-r.dataPointsDividedWidth+x/2,l=e.clientY-f.top-r.tooltipRect.ttHeight/2-15):a.globals.isBarHorizontal?((n=b)0&&i.setAttribute(\"width\",e.xcrosshairsWidth)}},{key:\"handleYCrosshair\",value:function(){var t=this.w,e=this.ttCtx;e.ycrosshairs=t.globals.dom.baseEl.querySelector(\".apexcharts-ycrosshairs\"),e.ycrosshairsHidden=t.globals.dom.baseEl.querySelector(\".apexcharts-ycrosshairs-hidden\")}},{key:\"drawYaxisTooltipText\",value:function(t,e,i){var a=this.ttCtx,s=this.w,r=s.globals.yLabelFormatters[t];if(a.yaxisTooltips[t]){var o=a.getElGrid().getBoundingClientRect(),n=(e-o.top)*i.yRatio[t],l=s.globals.maxYArr[t]-s.globals.minYArr[t],h=s.globals.minYArr[t]+(l-n);a.tooltipPosition.moveYCrosshairs(e-o.top),a.yaxisTooltipText[t].innerHTML=r(h),a.tooltipPosition.moveYAxisTooltip(t)}}}]),t}(),bt=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w;var i=this.w;this.tConfig=i.config.tooltip,this.tooltipUtil=new dt(this),this.tooltipLabels=new gt(this),this.tooltipPosition=new ut(this),this.marker=new ft(this),this.intersect=new pt(this),this.axesTooltip=new xt(this),this.showOnIntersect=this.tConfig.intersect,this.showTooltipTitle=this.tConfig.x.show,this.fixedTooltip=this.tConfig.fixed.enabled,this.xaxisTooltip=null,this.yaxisTTEls=null,this.isBarShared=!i.globals.isBarHorizontal&&this.tConfig.shared,this.lastHoverTime=Date.now()}return r(t,[{key:\"getElTooltip\",value:function(t){return t||(t=this),t.w.globals.dom.baseEl?t.w.globals.dom.baseEl.querySelector(\".apexcharts-tooltip\"):null}},{key:\"getElXCrosshairs\",value:function(){return this.w.globals.dom.baseEl.querySelector(\".apexcharts-xcrosshairs\")}},{key:\"getElGrid\",value:function(){return this.w.globals.dom.baseEl.querySelector(\".apexcharts-grid\")}},{key:\"drawTooltip\",value:function(t){var e=this.w;this.xyRatios=t,this.isXAxisTooltipEnabled=e.config.xaxis.tooltip.enabled&&e.globals.axisCharts,this.yaxisTooltips=e.config.yaxis.map((function(t,i){return!!(t.show&&t.tooltip.enabled&&e.globals.axisCharts)})),this.allTooltipSeriesGroups=[],e.globals.axisCharts||(this.showTooltipTitle=!1);var i=document.createElement(\"div\");if(i.classList.add(\"apexcharts-tooltip\"),e.config.tooltip.cssClass&&i.classList.add(e.config.tooltip.cssClass),i.classList.add(\"apexcharts-theme-\".concat(this.tConfig.theme)),e.globals.dom.elWrap.appendChild(i),e.globals.axisCharts){this.axesTooltip.drawXaxisTooltip(),this.axesTooltip.drawYaxisTooltip(),this.axesTooltip.setXCrosshairWidth(),this.axesTooltip.handleYCrosshair();var a=new V(this.ctx);this.xAxisTicksPositions=a.getXAxisTicksPositions()}if(!e.globals.comboCharts&&!this.tConfig.intersect&&\"rangeBar\"!==e.config.chart.type||this.tConfig.shared||(this.showOnIntersect=!0),0!==e.config.markers.size&&0!==e.globals.markers.largestSize||this.marker.drawDynamicPoints(this),e.globals.collapsedSeries.length!==e.globals.series.length){this.dataPointsDividedHeight=e.globals.gridHeight/e.globals.dataPoints,this.dataPointsDividedWidth=e.globals.gridWidth/e.globals.dataPoints,this.showTooltipTitle&&(this.tooltipTitle=document.createElement(\"div\"),this.tooltipTitle.classList.add(\"apexcharts-tooltip-title\"),this.tooltipTitle.style.fontFamily=this.tConfig.style.fontFamily||e.config.chart.fontFamily,this.tooltipTitle.style.fontSize=this.tConfig.style.fontSize,i.appendChild(this.tooltipTitle));var s=e.globals.series.length;(e.globals.xyCharts||e.globals.comboCharts)&&this.tConfig.shared&&(s=this.showOnIntersect?1:e.globals.series.length),this.legendLabels=e.globals.dom.baseEl.querySelectorAll(\".apexcharts-legend-text\"),this.ttItems=this.createTTElements(s),this.addSVGEvents()}}},{key:\"createTTElements\",value:function(t){for(var e=this,i=this.w,a=[],s=this.getElTooltip(),r=function(r){var o=document.createElement(\"div\");o.classList.add(\"apexcharts-tooltip-series-group\"),o.style.order=i.config.tooltip.inverseOrder?t-r:r+1,e.tConfig.shared&&e.tConfig.enabledOnSeries&&Array.isArray(e.tConfig.enabledOnSeries)&&e.tConfig.enabledOnSeries.indexOf(r)<0&&o.classList.add(\"apexcharts-tooltip-series-group-hidden\");var n=document.createElement(\"span\");n.classList.add(\"apexcharts-tooltip-marker\"),n.style.backgroundColor=i.globals.colors[r],o.appendChild(n);var l=document.createElement(\"div\");l.classList.add(\"apexcharts-tooltip-text\"),l.style.fontFamily=e.tConfig.style.fontFamily||i.config.chart.fontFamily,l.style.fontSize=e.tConfig.style.fontSize,[\"y\",\"goals\",\"z\"].forEach((function(t){var e=document.createElement(\"div\");e.classList.add(\"apexcharts-tooltip-\".concat(t,\"-group\"));var i=document.createElement(\"span\");i.classList.add(\"apexcharts-tooltip-text-\".concat(t,\"-label\")),e.appendChild(i);var a=document.createElement(\"span\");a.classList.add(\"apexcharts-tooltip-text-\".concat(t,\"-value\")),e.appendChild(a),l.appendChild(e)})),o.appendChild(l),s.appendChild(o),a.push(o)},o=0;o0&&this.addPathsEventListeners(u,c),this.tooltipUtil.hasBars()&&!this.tConfig.shared&&this.addDatapointEventsListeners(c)}}},{key:\"drawFixedTooltipRect\",value:function(){var t=this.w,e=this.getElTooltip(),i=e.getBoundingClientRect(),a=i.width+10,s=i.height+10,r=this.tConfig.fixed.offsetX,o=this.tConfig.fixed.offsetY,n=this.tConfig.fixed.position.toLowerCase();return n.indexOf(\"right\")>-1&&(r=r+t.globals.svgWidth-a+10),n.indexOf(\"bottom\")>-1&&(o=o+t.globals.svgHeight-s-10),e.style.left=r+\"px\",e.style.top=o+\"px\",{x:r,y:o,ttWidth:a,ttHeight:s}}},{key:\"addDatapointEventsListeners\",value:function(t){var e=this.w.globals.dom.baseEl.querySelectorAll(\".apexcharts-series-markers .apexcharts-marker, .apexcharts-bar-area, .apexcharts-candlestick-area, .apexcharts-boxPlot-area, .apexcharts-rangebar-area\");this.addPathsEventListeners(e,t)}},{key:\"addPathsEventListeners\",value:function(t,e){for(var i=this,a=function(a){var s={paths:t[a],tooltipEl:e.tooltipEl,tooltipY:e.tooltipY,tooltipX:e.tooltipX,elGrid:e.elGrid,hoverArea:e.hoverArea,ttItems:e.ttItems};[\"mousemove\",\"mouseup\",\"touchmove\",\"mouseout\",\"touchend\"].map((function(e){return t[a].addEventListener(e,i.onSeriesHover.bind(i,s),{capture:!1,passive:!0})}))},s=0;s=100?this.seriesHover(t,e):(clearTimeout(this.seriesHoverTimeout),this.seriesHoverTimeout=setTimeout((function(){i.seriesHover(t,e)}),100-a))}},{key:\"seriesHover\",value:function(t,e){var i=this;this.lastHoverTime=Date.now();var a=[],s=this.w;s.config.chart.group&&(a=this.ctx.getGroupedCharts()),s.globals.axisCharts&&(s.globals.minX===-1/0&&s.globals.maxX===1/0||0===s.globals.dataPoints)||(a.length?a.forEach((function(a){var s=i.getElTooltip(a),r={paths:t.paths,tooltipEl:s,tooltipY:t.tooltipY,tooltipX:t.tooltipX,elGrid:t.elGrid,hoverArea:t.hoverArea,ttItems:a.w.globals.tooltip.ttItems};a.w.globals.minX===i.w.globals.minX&&a.w.globals.maxX===i.w.globals.maxX&&a.w.globals.tooltip.seriesHoverByContext({chartCtx:a,ttCtx:a.w.globals.tooltip,opt:r,e:e})})):this.seriesHoverByContext({chartCtx:this.ctx,ttCtx:this.w.globals.tooltip,opt:t,e:e}))}},{key:\"seriesHoverByContext\",value:function(t){var e=t.chartCtx,i=t.ttCtx,a=t.opt,s=t.e,r=e.w,o=this.getElTooltip();if(o){if(i.tooltipRect={x:0,y:0,ttWidth:o.getBoundingClientRect().width,ttHeight:o.getBoundingClientRect().height},i.e=s,i.tooltipUtil.hasBars()&&!r.globals.comboCharts&&!i.isBarShared)if(this.tConfig.onDatasetHover.highlightDataSeries)new O(e).toggleSeriesOnHover(s,s.target.parentNode);i.fixedTooltip&&i.drawFixedTooltipRect(),r.globals.axisCharts?i.axisChartsTooltips({e:s,opt:a,tooltipRect:i.tooltipRect}):i.nonAxisChartsTooltips({e:s,opt:a,tooltipRect:i.tooltipRect})}}},{key:\"axisChartsTooltips\",value:function(t){var e,i,a=t.e,s=t.opt,r=this.w,o=s.elGrid.getBoundingClientRect(),n=\"touchmove\"===a.type?a.touches[0].clientX:a.clientX,l=\"touchmove\"===a.type?a.touches[0].clientY:a.clientY;if(this.clientY=l,this.clientX=n,r.globals.capturedSeriesIndex=-1,r.globals.capturedDataPointIndex=-1,lo.top+o.height)this.handleMouseOut(s);else{if(Array.isArray(this.tConfig.enabledOnSeries)&&!r.config.tooltip.shared){var h=parseInt(s.paths.getAttribute(\"index\"),10);if(this.tConfig.enabledOnSeries.indexOf(h)<0)return void this.handleMouseOut(s)}var c=this.getElTooltip(),d=this.getElXCrosshairs(),g=r.globals.xyCharts||\"bar\"===r.config.chart.type&&!r.globals.isBarHorizontal&&this.tooltipUtil.hasBars()&&this.tConfig.shared||r.globals.comboCharts&&this.tooltipUtil.hasBars();if(\"mousemove\"===a.type||\"touchmove\"===a.type||\"mouseup\"===a.type){if(r.globals.collapsedSeries.length+r.globals.ancillaryCollapsedSeries.length===r.globals.series.length)return;null!==d&&d.classList.add(\"apexcharts-active\");var u=this.yaxisTooltips.filter((function(t){return!0===t}));if(null!==this.ycrosshairs&&u.length&&this.ycrosshairs.classList.add(\"apexcharts-active\"),g&&!this.showOnIntersect)this.handleStickyTooltip(a,n,l,s);else if(\"heatmap\"===r.config.chart.type||\"treemap\"===r.config.chart.type){var f=this.intersect.handleHeatTreeTooltip({e:a,opt:s,x:e,y:i,type:r.config.chart.type});e=f.x,i=f.y,c.style.left=e+\"px\",c.style.top=i+\"px\"}else this.tooltipUtil.hasBars()&&this.intersect.handleBarTooltip({e:a,opt:s}),this.tooltipUtil.hasMarkers()&&this.intersect.handleMarkerTooltip({e:a,opt:s,x:e,y:i});if(this.yaxisTooltips.length)for(var p=0;pl.width?this.handleMouseOut(a):null!==n?this.handleStickyCapturedSeries(t,n,a,o):(this.tooltipUtil.isXoverlap(o)||s.globals.isBarHorizontal)&&this.create(t,this,0,o,a.ttItems)}},{key:\"handleStickyCapturedSeries\",value:function(t,e,i,a){var s=this.w;if(!this.tConfig.shared&&null===s.globals.series[e][a])return void this.handleMouseOut(i);void 0!==s.globals.series[e][a]?this.tConfig.shared&&this.tooltipUtil.isXoverlap(a)&&this.tooltipUtil.isInitialSeriesSameLen()?this.create(t,this,e,a,i.ttItems):this.create(t,this,e,a,i.ttItems,!1):this.tooltipUtil.isXoverlap(a)&&this.create(t,this,0,a,i.ttItems)}},{key:\"deactivateHoverFilter\",value:function(){for(var t=this.w,e=new m(this.ctx),i=t.globals.dom.Paper.select(\".apexcharts-bar-area\"),a=0;a5&&void 0!==arguments[5]?arguments[5]:null,o=this.w,n=e;\"mouseup\"===t.type&&this.markerClick(t,i,a),null===r&&(r=this.tConfig.shared);var l=this.tooltipUtil.hasMarkers(),h=this.tooltipUtil.getElBars();if(o.config.legend.tooltipHoverFormatter){var c=o.config.legend.tooltipHoverFormatter,d=Array.from(this.legendLabels);d.forEach((function(t){var e=t.getAttribute(\"data:default-text\");t.innerHTML=decodeURIComponent(e)}));for(var g=0;g0?n.marker.enlargePoints(a):n.tooltipPosition.moveDynamicPointsOnHover(a)),this.tooltipUtil.hasBars()&&(this.barSeriesHeight=this.tooltipUtil.getBarsHeight(h),this.barSeriesHeight>0)){var b=new m(this.ctx),v=o.globals.dom.Paper.select(\".apexcharts-bar-area[j='\".concat(a,\"']\"));this.deactivateHoverFilter(),this.tooltipPosition.moveStickyTooltipOverBars(a);for(var y=0;ys.globals.gridHeight&&(u=s.globals.gridHeight-b)),{bcx:h,bcy:l,dataLabelsX:e,dataLabelsY:u,totalDataLabelsX:a,totalDataLabelsY:i,totalDataLabelsAnchor:\"middle\"}}},{key:\"calculateBarsDataLabelsPosition\",value:function(t){var e=this.w,i=t.x,a=t.i,s=t.j,r=t.realIndex,o=t.bcy,n=t.barHeight,l=t.barWidth,h=t.textRects,c=t.dataLabelsX,d=t.strokeWidth,g=t.dataLabelsConfig,u=t.barDataLabelsConfig,f=t.barTotalDataLabelsConfig,p=t.offX,x=t.offY,b=e.globals.gridHeight/e.globals.dataPoints;l=Math.abs(l);var v,y,w=o-(this.barCtx.isRangeBar?0:b)+n/2+h.height/2+x-3,k=\"start\",A=this.barCtx.series[a][s]<0,S=i;switch(this.barCtx.isReversed&&(S=i+l-(A?2*l:0),i=e.globals.gridWidth-l),u.position){case\"center\":c=A?S+l/2-p:Math.max(h.width/2,S-l/2)+p;break;case\"bottom\":c=A?S+l-d-Math.round(h.width/2)-p:S-l+d+Math.round(h.width/2)+p;break;case\"top\":c=A?S-d+Math.round(h.width/2)-p:S-d-Math.round(h.width/2)+p}if(this.barCtx.lastActiveBarSerieIndex===r&&f.enabled){var C=new m(this.barCtx.ctx).getTextRects(this.getStackedTotalDataLabel({realIndex:r,j:s}),g.fontSize);A?(v=S-d+Math.round(C.width/2)-p-f.offsetX-15,k=\"end\"):v=S-d-Math.round(C.width/2)+p+f.offsetX+15,y=w+f.offsetY}return e.config.chart.stacked||(c<0?c=c+h.width+d:c+h.width/2>e.globals.gridWidth&&(c=e.globals.gridWidth-h.width-d)),{bcx:i,bcy:o,dataLabelsX:c,dataLabelsY:w,totalDataLabelsX:v,totalDataLabelsY:y,totalDataLabelsAnchor:k}}},{key:\"drawCalculatedDataLabels\",value:function(t){var i=t.x,a=t.y,s=t.val,r=t.i,o=t.j,n=t.textRects,l=t.barHeight,h=t.barWidth,c=t.dataLabelsConfig,d=this.w,g=\"rotate(0)\";\"vertical\"===d.config.plotOptions.bar.dataLabels.orientation&&(g=\"rotate(-90, \".concat(i,\", \").concat(a,\")\"));var u=new H(this.barCtx.ctx),f=new m(this.barCtx.ctx),p=c.formatter,x=null,b=d.globals.collapsedSeriesIndices.indexOf(r)>-1;if(c.enabled&&!b){x=f.group({class:\"apexcharts-data-labels\",transform:g});var v=\"\";void 0!==s&&(v=p(s,e(e({},d),{},{seriesIndex:r,dataPointIndex:o,w:d})));var y=d.globals.series[r][o]<0,w=d.config.plotOptions.bar.dataLabels.position;if(\"vertical\"===d.config.plotOptions.bar.dataLabels.orientation&&(\"top\"===w&&(c.textAnchor=y?\"end\":\"start\"),\"center\"===w&&(c.textAnchor=\"middle\"),\"bottom\"===w&&(c.textAnchor=y?\"end\":\"start\")),this.barCtx.isRangeBar&&this.barCtx.barOptions.dataLabels.hideOverflowingLabels)hMath.abs(h)&&(v=\"\"):n.height/1.6>Math.abs(l)&&(v=\"\"));var k=e({},c);this.barCtx.isHorizontal&&s<0&&(\"start\"===c.textAnchor?k.textAnchor=\"end\":\"end\"===c.textAnchor&&(k.textAnchor=\"start\")),u.plotDataLabelsText({x:i,y:a,text:v,i:r,j:o,parent:x,dataLabelsConfig:k,alwaysDrawDataLabel:!0,offsetCorrection:!0})}return x}},{key:\"drawTotalDataLabels\",value:function(t){var e,i=t.x,a=t.y,s=t.val,r=t.realIndex,o=t.textAnchor,n=t.barTotalDataLabelsConfig,l=new m(this.barCtx.ctx);return n.enabled&&void 0!==i&&void 0!==a&&this.barCtx.lastActiveBarSerieIndex===r&&(e=l.drawText({x:i,y:a,foreColor:n.style.color,text:s,textAnchor:o,fontFamily:n.style.fontFamily,fontSize:n.style.fontSize,fontWeight:n.style.fontWeight})),e}}]),t}(),mt=function(){function t(e){a(this,t),this.w=e.w,this.barCtx=e}return r(t,[{key:\"initVariables\",value:function(t){var e=this.w;this.barCtx.series=t,this.barCtx.totalItems=0,this.barCtx.seriesLen=0,this.barCtx.visibleI=-1,this.barCtx.visibleItems=1;for(var i=0;i0&&(this.barCtx.seriesLen=this.barCtx.seriesLen+1,this.barCtx.totalItems+=t[i].length),e.globals.isXNumeric)for(var a=0;ae.globals.minX&&e.globals.seriesX[i][a]0&&(a=l.globals.minXDiff/d),(r=a/this.barCtx.seriesLen*parseInt(this.barCtx.barOptions.columnWidth,10)/100)<1&&(r=1)}o=l.globals.gridHeight-this.barCtx.baseLineY[this.barCtx.yaxisIndex]-(this.barCtx.isReversed?l.globals.gridHeight:0)+(this.barCtx.isReversed?2*this.barCtx.baseLineY[this.barCtx.yaxisIndex]:0),t=l.globals.padHorizontal+(a-r*this.barCtx.seriesLen)/2}return{x:t,y:e,yDivision:i,xDivision:a,barHeight:s,barWidth:r,zeroH:o,zeroW:n}}},{key:\"getPathFillColor\",value:function(t,e,i,a){var s,r,o,n,l=this.w,h=new F(this.barCtx.ctx),c=null,d=this.barCtx.barOptions.distributed?i:e;this.barCtx.barOptions.colors.ranges.length>0&&this.barCtx.barOptions.colors.ranges.map((function(a){t[e][i]>=a.from&&t[e][i]<=a.to&&(c=a.color)}));return l.config.series[e].data[i]&&l.config.series[e].data[i].fillColor&&(c=l.config.series[e].data[i].fillColor),h.fillPath({seriesNumber:this.barCtx.barOptions.distributed?d:a,dataPointIndex:i,color:c,value:t[e][i],fillConfig:null===(s=l.config.series[e].data[i])||void 0===s?void 0:s.fill,fillType:null!==(r=l.config.series[e].data[i])&&void 0!==r&&null!==(o=r.fill)&&void 0!==o&&o.type?null===(n=l.config.series[e].data[i])||void 0===n?void 0:n.fill.type:l.config.fill.type})}},{key:\"getStrokeWidth\",value:function(t,e,i){var a=0,s=this.w;return void 0===this.barCtx.series[t][e]||null===this.barCtx.series[t][e]?this.barCtx.isNullValue=!0:this.barCtx.isNullValue=!1,s.config.stroke.show&&(this.barCtx.isNullValue||(a=Array.isArray(this.barCtx.strokeWidth)?this.barCtx.strokeWidth[i]:this.barCtx.strokeWidth)),a}},{key:\"shouldApplyRadius\",value:function(t){var e=this.w,i=!1;return e.config.plotOptions.bar.borderRadius>0&&(e.config.chart.stacked&&\"last\"===e.config.plotOptions.bar.borderRadiusWhenStacked?this.barCtx.lastActiveBarSerieIndex===t&&(i=!0):i=!0),i}},{key:\"barBackground\",value:function(t){var e=t.j,i=t.i,a=t.x1,s=t.x2,r=t.y1,o=t.y2,n=t.elSeries,l=this.w,h=new m(this.barCtx.ctx),c=new O(this.barCtx.ctx).getActiveConfigSeriesIndex();if(this.barCtx.barOptions.colors.backgroundBarColors.length>0&&c===i){e>=this.barCtx.barOptions.colors.backgroundBarColors.length&&(e%=this.barCtx.barOptions.colors.backgroundBarColors.length);var d=this.barCtx.barOptions.colors.backgroundBarColors[e],g=h.drawRect(void 0!==a?a:0,void 0!==r?r:0,void 0!==s?s:l.globals.gridWidth,void 0!==o?o:l.globals.gridHeight,this.barCtx.barOptions.colors.backgroundBarRadius,d,this.barCtx.barOptions.colors.backgroundBarOpacity);n.add(g),g.node.classList.add(\"apexcharts-backgroundBar\")}}},{key:\"getColumnPaths\",value:function(t){var e,i=t.barWidth,a=t.barXPosition,s=t.y1,r=t.y2,o=t.strokeWidth,n=t.realIndex,l=t.i,h=t.j,c=t.w,d=new m(this.barCtx.ctx);(o=Array.isArray(o)?o[n]:o)||(o=0);var g=i,u=a;null!==(e=c.config.series[n].data[h])&&void 0!==e&&e.columnWidthOffset&&(u=a-c.config.series[n].data[h].columnWidthOffset/2,g=i+c.config.series[n].data[h].columnWidthOffset);var f=u,p=u+g;s+=.001,r+=.001;var x=d.move(f,s),b=d.move(f,s),v=d.line(p-o,s);return c.globals.previousPaths.length>0&&(b=this.barCtx.getPreviousPath(n,h,!1)),x=x+d.line(f,r)+d.line(p-o,r)+d.line(p-o,s)+(\"around\"===c.config.plotOptions.bar.borderRadiusApplication?\" Z\":\" z\"),b=b+d.line(f,s)+v+v+v+v+v+d.line(f,s)+(\"around\"===c.config.plotOptions.bar.borderRadiusApplication?\" Z\":\" z\"),this.shouldApplyRadius(n)&&(x=d.roundPathCorners(x,c.config.plotOptions.bar.borderRadius)),c.config.chart.stacked&&(this.barCtx.yArrj.push(r),this.barCtx.yArrjF.push(Math.abs(s-r)),this.barCtx.yArrjVal.push(this.barCtx.series[l][h])),{pathTo:x,pathFrom:b}}},{key:\"getBarpaths\",value:function(t){var e,i=t.barYPosition,a=t.barHeight,s=t.x1,r=t.x2,o=t.strokeWidth,n=t.realIndex,l=t.i,h=t.j,c=t.w,d=new m(this.barCtx.ctx);(o=Array.isArray(o)?o[n]:o)||(o=0);var g=i,u=a;null!==(e=c.config.series[n].data[h])&&void 0!==e&&e.barHeightOffset&&(g=i-c.config.series[n].data[h].barHeightOffset/2,u=a+c.config.series[n].data[h].barHeightOffset);var f=g,p=g+u;s+=.001,r+=.001;var x=d.move(s,f),b=d.move(s,f);c.globals.previousPaths.length>0&&(b=this.barCtx.getPreviousPath(n,h,!1));var v=d.line(s,p-o);return x=x+d.line(r,f)+d.line(r,p-o)+v+(\"around\"===c.config.plotOptions.bar.borderRadiusApplication?\" Z\":\" z\"),b=b+d.line(s,f)+v+v+v+v+v+d.line(s,f)+(\"around\"===c.config.plotOptions.bar.borderRadiusApplication?\" Z\":\" z\"),this.shouldApplyRadius(n)&&(x=d.roundPathCorners(x,c.config.plotOptions.bar.borderRadius)),c.config.chart.stacked&&(this.barCtx.xArrj.push(r),this.barCtx.xArrjF.push(Math.abs(s-r)),this.barCtx.xArrjVal.push(this.barCtx.series[l][h])),{pathTo:x,pathFrom:b}}},{key:\"checkZeroSeries\",value:function(t){for(var e=t.series,i=this.w,a=0;a=0;o--)this.barCtx.zeroSerieses.indexOf(o)>-1&&o===this.radiusOnSeriesNumber&&(this.barCtx.radiusOnSeriesNumber-=1);for(var n=e.length-1;n>=0;n--)i.globals.collapsedSeriesIndices.indexOf(this.barCtx.radiusOnSeriesNumber)>-1&&(this.barCtx.radiusOnSeriesNumber-=1)}},{key:\"getXForValue\",value:function(t,e){var i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=i?e:null;return null!=t&&(a=e+t/this.barCtx.invertedYRatio-2*(this.barCtx.isReversed?t/this.barCtx.invertedYRatio:0)),a}},{key:\"getYForValue\",value:function(t,e){var i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=i?e:null;return null!=t&&(a=e-t/this.barCtx.yRatio[this.barCtx.yaxisIndex]+2*(this.barCtx.isReversed?t/this.barCtx.yRatio[this.barCtx.yaxisIndex]:0)),a}},{key:\"getGoalValues\",value:function(t,e,i,a,s){var r=this,n=this.w,l=[];return n.globals.seriesGoals[a]&&n.globals.seriesGoals[a][s]&&Array.isArray(n.globals.seriesGoals[a][s])&&n.globals.seriesGoals[a][s].forEach((function(a){var s;l.push((o(s={},t,\"x\"===t?r.getXForValue(a.value,e,!1):r.getYForValue(a.value,i,!1)),o(s,\"attrs\",a),s))})),l}},{key:\"drawGoalLine\",value:function(t){var e=t.barXPosition,i=t.barYPosition,a=t.goalX,s=t.goalY,r=t.barWidth,o=t.barHeight,n=new m(this.barCtx.ctx),l=n.group({className:\"apexcharts-bar-goals-groups\"}),h=null;return this.barCtx.isHorizontal?Array.isArray(a)&&a.forEach((function(t){var e=void 0!==t.attrs.strokeHeight?t.attrs.strokeHeight:o/2,a=i+e+o/2;h=n.drawLine(t.x,a-2*e,t.x,a,t.attrs.strokeColor?t.attrs.strokeColor:void 0,t.attrs.strokeDashArray,t.attrs.strokeWidth?t.attrs.strokeWidth:2,t.attrs.strokeLineCap),l.add(h)})):Array.isArray(s)&&s.forEach((function(t){var i=void 0!==t.attrs.strokeWidth?t.attrs.strokeWidth:r/2,a=e+i+r/2;h=n.drawLine(a-2*i,t.y,a,t.y,t.attrs.strokeColor?t.attrs.strokeColor:void 0,t.attrs.strokeDashArray,t.attrs.strokeHeight?t.attrs.strokeHeight:2,t.attrs.strokeLineCap),l.add(h)})),l}}]),t}(),yt=function(){function t(e,i){a(this,t),this.ctx=e,this.w=e.w;var s=this.w;this.barOptions=s.config.plotOptions.bar,this.isHorizontal=this.barOptions.horizontal,this.strokeWidth=s.config.stroke.width,this.isNullValue=!1,this.isRangeBar=s.globals.seriesRange.length&&this.isHorizontal,this.xyRatios=i,null!==this.xyRatios&&(this.xRatio=i.xRatio,this.initialXRatio=i.initialXRatio,this.yRatio=i.yRatio,this.invertedXRatio=i.invertedXRatio,this.invertedYRatio=i.invertedYRatio,this.baseLineY=i.baseLineY,this.baseLineInvertedY=i.baseLineInvertedY),this.yaxisIndex=0,this.seriesLen=0;var r=new O(this.ctx);this.lastActiveBarSerieIndex=r.getActiveConfigSeriesIndex(\"desc\",[\"bar\",\"column\"]);var o=r.getBarSeriesIndices(),n=new y(this.ctx);this.stackedSeriesTotals=n.getStackedSeriesTotals(this.w.config.series.map((function(t,e){return-1===o.indexOf(e)?e:-1})).filter((function(t){return-1!==t}))),this.barHelpers=new mt(this)}return r(t,[{key:\"draw\",value:function(t,i){var a=this.w,s=new m(this.ctx),r=new y(this.ctx,a);t=r.getLogSeries(t),this.series=t,this.yRatio=r.getLogYRatios(this.yRatio),this.barHelpers.initVariables(t);var o=s.group({class:\"apexcharts-bar-series apexcharts-plot-series\"});a.config.dataLabels.enabled&&this.totalItems>this.barOptions.dataLabels.maxItems&&console.warn(\"WARNING: DataLabels are enabled but there are too many to display. This may cause performance issue when rendering.\");for(var n=0,l=0;n0&&(this.visibleI=this.visibleI+1);var k=0,A=0;this.yRatio.length>1&&(this.yaxisIndex=v),this.isReversed=a.config.yaxis[this.yaxisIndex]&&a.config.yaxis[this.yaxisIndex].reversed;var S=this.barHelpers.initialPositions();f=S.y,k=S.barHeight,c=S.yDivision,g=S.zeroW,u=S.x,A=S.barWidth,h=S.xDivision,d=S.zeroH,this.horizontal||b.push(u+A/2);for(var C=s.group({class:\"apexcharts-datalabels\",\"data:realIndex\":v}),L=s.group({class:\"apexcharts-bar-goals-markers\",style:\"pointer-events: none\"}),P=0;P0&&b.push(u+A/2),p.push(f);var X=this.barHelpers.getPathFillColor(t,n,P,v);this.renderSeries({realIndex:v,pathFill:X,j:P,i:n,pathFrom:M.pathFrom,pathTo:M.pathTo,strokeWidth:T,elSeries:w,x:u,y:f,series:t,barHeight:k,barWidth:A,elDataLabelsWrap:C,elGoalsMarkers:L,visibleSeries:this.visibleI,type:\"bar\"})}a.globals.seriesXvalues[v]=b,a.globals.seriesYvalues[v]=p,o.add(w)}return o}},{key:\"renderSeries\",value:function(t){var e=t.realIndex,i=t.pathFill,a=t.lineFill,s=t.j,r=t.i,o=t.pathFrom,n=t.pathTo,l=t.strokeWidth,h=t.elSeries,c=t.x,d=t.y,g=t.y1,u=t.y2,f=t.series,p=t.barHeight,x=t.barWidth,b=t.barYPosition,y=t.elDataLabelsWrap,w=t.elGoalsMarkers,k=t.visibleSeries,A=t.type,S=this.w,C=new m(this.ctx);a||(a=this.barOptions.distributed?S.globals.stroke.colors[s]:S.globals.stroke.colors[e]),S.config.series[r].data[s]&&S.config.series[r].data[s].strokeColor&&(a=S.config.series[r].data[s].strokeColor),this.isNullValue&&(i=\"none\");var L=s/S.config.chart.animations.animateGradually.delay*(S.config.chart.animations.speed/S.globals.dataPoints)/2.4,P=C.renderPaths({i:r,j:s,realIndex:e,pathFrom:o,pathTo:n,stroke:a,strokeWidth:l,strokeLineCap:S.config.stroke.lineCap,fill:i,animationDelay:L,initialSpeed:S.config.chart.animations.speed,dataChangeSpeed:S.config.chart.animations.dynamicAnimation.speed,className:\"apexcharts-\".concat(A,\"-area\")});P.attr(\"clip-path\",\"url(#gridRectMask\".concat(S.globals.cuid,\")\"));var T=S.config.forecastDataPoints;T.count>0&&s>=S.globals.dataPoints-T.count&&(P.node.setAttribute(\"stroke-dasharray\",T.dashArray),P.node.setAttribute(\"stroke-width\",T.strokeWidth),P.node.setAttribute(\"fill-opacity\",T.fillOpacity)),void 0!==g&&void 0!==u&&(P.attr(\"data-range-y1\",g),P.attr(\"data-range-y2\",u)),new v(this.ctx).setSelectionFilter(P,e,s),h.add(P);var M=new vt(this).handleBarDataLabels({x:c,y:d,y1:g,y2:u,i:r,j:s,series:f,realIndex:e,barHeight:p,barWidth:x,barYPosition:b,renderedPath:P,visibleSeries:k});return null!==M.dataLabels&&y.add(M.dataLabels),M.totalDataLabels&&y.add(M.totalDataLabels),h.add(y),w&&h.add(w),h}},{key:\"drawBarPaths\",value:function(t){var e=t.indexes,i=t.barHeight,a=t.strokeWidth,s=t.zeroW,r=t.x,o=t.y,n=t.yDivision,l=t.elSeries,h=this.w,c=e.i,d=e.j;h.globals.isXNumeric&&(o=(h.globals.seriesX[c][d]-h.globals.minX)/this.invertedXRatio-i);var g=o+i*this.visibleI;r=this.barHelpers.getXForValue(this.series[c][d],s);var u=this.barHelpers.getBarpaths({barYPosition:g,barHeight:i,x1:s,x2:r,strokeWidth:a,series:this.series,realIndex:e.realIndex,i:c,j:d,w:h});return h.globals.isXNumeric||(o+=n),this.barHelpers.barBackground({j:d,i:c,y1:g-i*this.visibleI,y2:i*this.seriesLen,elSeries:l}),{pathTo:u.pathTo,pathFrom:u.pathFrom,x:r,y:o,goalX:this.barHelpers.getGoalValues(\"x\",s,null,c,d),barYPosition:g}}},{key:\"drawColumnPaths\",value:function(t){var e=t.indexes,i=t.x,a=t.y,s=t.xDivision,r=t.barWidth,o=t.zeroH,n=t.strokeWidth,l=t.elSeries,h=this.w,c=e.realIndex,d=e.i,g=e.j,u=e.bc;if(h.globals.isXNumeric){var f=c;h.globals.seriesX[c].length||(f=h.globals.maxValsInArrayIndex),i=(h.globals.seriesX[f][g]-h.globals.minX)/this.xRatio-r*this.seriesLen/2}var p=i+r*this.visibleI;a=this.barHelpers.getYForValue(this.series[d][g],o);var x=this.barHelpers.getColumnPaths({barXPosition:p,barWidth:r,y1:o,y2:a,strokeWidth:n,series:this.series,realIndex:e.realIndex,i:d,j:g,w:h});return h.globals.isXNumeric||(i+=s),this.barHelpers.barBackground({bc:u,j:g,i:d,x1:p-n/2-r*this.visibleI,x2:r*this.seriesLen+n/2,elSeries:l}),{pathTo:x.pathTo,pathFrom:x.pathFrom,x:i,y:a,goalY:this.barHelpers.getGoalValues(\"y\",null,o,d,g),barXPosition:p}}},{key:\"getPreviousPath\",value:function(t,e){for(var i,a=this.w,s=0;s0&&parseInt(r.realIndex,10)===parseInt(t,10)&&void 0!==a.globals.previousPaths[s].paths[e]&&(i=a.globals.previousPaths[s].paths[e].d)}return i}}]),t}(),wt=function(t){n(s,t);var i=d(s);function s(){return a(this,s),i.apply(this,arguments)}return r(s,[{key:\"draw\",value:function(t,i){var a=this,s=this.w;this.graphics=new m(this.ctx),this.bar=new yt(this.ctx,this.xyRatios);var r=new y(this.ctx,s);t=r.getLogSeries(t),this.yRatio=r.getLogYRatios(this.yRatio),this.barHelpers.initVariables(t),\"100%\"===s.config.chart.stackType&&(t=s.globals.seriesPercent.slice()),this.series=t,this.totalItems=0,this.prevY=[],this.prevX=[],this.prevYF=[],this.prevXF=[],this.prevYVal=[],this.prevXVal=[],this.xArrj=[],this.xArrjF=[],this.xArrjVal=[],this.yArrj=[],this.yArrjF=[],this.yArrjVal=[];for(var o=0;o0&&(this.totalItems+=t[o].length);for(var n=this.graphics.group({class:\"apexcharts-bar-series apexcharts-plot-series\"}),l=0,h=0,c=function(r,o){var c=void 0,d=void 0,g=void 0,u=void 0,f=[],p=[],b=s.globals.comboCharts?i[r]:r;a.yRatio.length>1&&(a.yaxisIndex=b),a.isReversed=s.config.yaxis[a.yaxisIndex]&&s.config.yaxis[a.yaxisIndex].reversed;var v=a.graphics.group({class:\"apexcharts-series\",seriesName:x.escapeString(s.globals.seriesNames[b]),rel:r+1,\"data:realIndex\":b});a.ctx.series.addCollapsedClassToSeries(v,b);var m=a.graphics.group({class:\"apexcharts-datalabels\",\"data:realIndex\":b}),y=a.graphics.group({class:\"apexcharts-bar-goals-markers\",style:\"pointer-events: none\"}),w=0,k=0,A=a.initialPositions(l,h,c,d,g,u);h=A.y,w=A.barHeight,d=A.yDivision,u=A.zeroW,l=A.x,k=A.barWidth,c=A.xDivision,g=A.zeroH,a.yArrj=[],a.yArrjF=[],a.yArrjVal=[],a.xArrj=[],a.xArrjF=[],a.xArrjVal=[],1===a.prevY.length&&a.prevY[0].every((function(t){return isNaN(t)}))&&(a.prevY[0]=a.prevY[0].map((function(t){return g})),a.prevYF[0]=a.prevYF[0].map((function(t){return 0})));for(var S=0;S1?(i=l.globals.minXDiff/this.xRatio)*parseInt(this.barOptions.columnWidth,10)/100:n*parseInt(l.config.plotOptions.bar.columnWidth,10)/100,s=l.globals.gridHeight-this.baseLineY[this.yaxisIndex]-(this.isReversed?l.globals.gridHeight:0)+(this.isReversed?2*this.baseLineY[this.yaxisIndex]:0),t=l.globals.padHorizontal+(i-n)/2),{x:t,y:e,yDivision:a,xDivision:i,barHeight:o,barWidth:n,zeroH:s,zeroW:r}}},{key:\"drawStackedBarPaths\",value:function(t){for(var e,i=t.indexes,a=t.barHeight,s=t.strokeWidth,r=t.zeroW,o=t.x,n=t.y,l=t.yDivision,h=t.elSeries,c=this.w,d=n,g=i.i,u=i.j,f=0,p=0;p0){var x=r;this.prevXVal[g-1][u]<0?x=this.series[g][u]>=0?this.prevX[g-1][u]+f-2*(this.isReversed?f:0):this.prevX[g-1][u]:this.prevXVal[g-1][u]>=0&&(x=this.series[g][u]>=0?this.prevX[g-1][u]:this.prevX[g-1][u]-f+2*(this.isReversed?f:0)),e=x}else e=r;o=null===this.series[g][u]?e:e+this.series[g][u]/this.invertedYRatio-2*(this.isReversed?this.series[g][u]/this.invertedYRatio:0);var b=this.barHelpers.getBarpaths({barYPosition:d,barHeight:a,x1:e,x2:o,strokeWidth:s,series:this.series,realIndex:i.realIndex,i:g,j:u,w:c});return this.barHelpers.barBackground({j:u,i:g,y1:d,y2:a,elSeries:h}),n+=l,{pathTo:b.pathTo,pathFrom:b.pathFrom,goalX:this.barHelpers.getGoalValues(\"x\",r,null,g,u),barYPosition:d,x:o,y:n}}},{key:\"drawStackedColumnPaths\",value:function(t){var e=t.indexes,i=t.x,a=t.y,s=t.xDivision,r=t.barWidth,o=t.zeroH;t.strokeWidth;var n=t.elSeries,l=this.w,h=e.i,c=e.j,d=e.bc;if(l.globals.isXNumeric){var g=l.globals.seriesX[h][c];g||(g=0),i=(g-l.globals.minX)/this.xRatio-r/2}for(var u,f=i,p=0,x=0;x0&&!l.globals.isXNumeric||h>0&&l.globals.isXNumeric&&l.globals.seriesX[h-1][c]===l.globals.seriesX[h][c]){var b,v,m=Math.min(this.yRatio.length+1,h+1);if(void 0!==this.prevY[h-1])for(var y=1;y=0?v-p+2*(this.isReversed?p:0):v;break}if(this.prevYVal[h-w][c]>=0){b=this.series[h][c]>=0?v:v+p-2*(this.isReversed?p:0);break}}void 0===b&&(b=l.globals.gridHeight),u=this.prevYF[0].every((function(t){return 0===t}))&&this.prevYF.slice(1,h).every((function(t){return t.every((function(t){return isNaN(t)}))}))?o:b}else u=o;a=u-this.series[h][c]/this.yRatio[this.yaxisIndex]+2*(this.isReversed?this.series[h][c]/this.yRatio[this.yaxisIndex]:0);var k=this.barHelpers.getColumnPaths({barXPosition:f,barWidth:r,y1:u,y2:a,yRatio:this.yRatio[this.yaxisIndex],strokeWidth:this.strokeWidth,series:this.series,realIndex:e.realIndex,i:h,j:c,w:l});return this.barHelpers.barBackground({bc:d,j:c,i:h,x1:f,x2:r,elSeries:n}),i+=s,{pathTo:k.pathTo,pathFrom:k.pathFrom,goalY:this.barHelpers.getGoalValues(\"y\",null,o,h,c),barXPosition:f,x:l.globals.isXNumeric?i-s:i,y:a}}}]),s}(yt),kt=function(t){n(s,t);var i=d(s);function s(){return a(this,s),i.apply(this,arguments)}return r(s,[{key:\"draw\",value:function(t,i){var a=this,s=this.w,r=new m(this.ctx),o=new F(this.ctx);this.candlestickOptions=this.w.config.plotOptions.candlestick,this.boxOptions=this.w.config.plotOptions.boxPlot,this.isHorizontal=s.config.plotOptions.bar.horizontal;var n=new y(this.ctx,s);t=n.getLogSeries(t),this.series=t,this.yRatio=n.getLogYRatios(this.yRatio),this.barHelpers.initVariables(t);for(var l=r.group({class:\"apexcharts-\".concat(s.config.chart.type,\"-series apexcharts-plot-series\")}),h=function(n){a.isBoxPlot=\"boxPlot\"===s.config.chart.type||\"boxPlot\"===s.config.series[n].type;var h,c,d,g,u=void 0,f=void 0,p=[],b=[],v=s.globals.comboCharts?i[n]:n,m=r.group({class:\"apexcharts-series\",seriesName:x.escapeString(s.globals.seriesNames[v]),rel:n+1,\"data:realIndex\":v});a.ctx.series.addCollapsedClassToSeries(m,v),t[n].length>0&&(a.visibleI=a.visibleI+1);var y,w;a.yRatio.length>1&&(a.yaxisIndex=v);var k=a.barHelpers.initialPositions();f=k.y,y=k.barHeight,c=k.yDivision,g=k.zeroW,u=k.x,w=k.barWidth,h=k.xDivision,d=k.zeroH,b.push(u+w/2);for(var A=r.group({class:\"apexcharts-datalabels\",\"data:realIndex\":v}),S=function(i){var r=a.barHelpers.getStrokeWidth(n,i,v),l=null,x={indexes:{i:n,j:i,realIndex:v},x:u,y:f,strokeWidth:r,elSeries:m};l=a.isHorizontal?a.drawHorizontalBoxPaths(e(e({},x),{},{yDivision:c,barHeight:y,zeroW:g})):a.drawVerticalBoxPaths(e(e({},x),{},{xDivision:h,barWidth:w,zeroH:d})),f=l.y,u=l.x,i>0&&b.push(u+w/2),p.push(f),l.pathTo.forEach((function(e,h){var c=!a.isBoxPlot&&a.candlestickOptions.wick.useFillColor?l.color[h]:s.globals.stroke.colors[n],d=o.fillPath({seriesNumber:v,dataPointIndex:i,color:l.color[h],value:t[n][i]});a.renderSeries({realIndex:v,pathFill:d,lineFill:c,j:i,i:n,pathFrom:l.pathFrom,pathTo:e,strokeWidth:r,elSeries:m,x:u,y:f,series:t,barHeight:y,barWidth:w,elDataLabelsWrap:A,visibleSeries:a.visibleI,type:s.config.chart.type})}))},C=0;Cb.c&&(d=!1);var w=Math.min(b.o,b.c),k=Math.max(b.o,b.c),A=b.m;n.globals.isXNumeric&&(i=(n.globals.seriesX[x][c]-n.globals.minX)/this.xRatio-s/2);var S=i+s*this.visibleI;void 0===this.series[h][c]||null===this.series[h][c]?(w=r,k=r):(w=r-w/p,k=r-k/p,v=r-b.h/p,y=r-b.l/p,A=r-b.m/p);var C=l.move(S,r),L=l.move(S+s/2,w);return n.globals.previousPaths.length>0&&(L=this.getPreviousPath(x,c,!0)),C=this.isBoxPlot?[l.move(S,w)+l.line(S+s/2,w)+l.line(S+s/2,v)+l.line(S+s/4,v)+l.line(S+s-s/4,v)+l.line(S+s/2,v)+l.line(S+s/2,w)+l.line(S+s,w)+l.line(S+s,A)+l.line(S,A)+l.line(S,w+o/2),l.move(S,A)+l.line(S+s,A)+l.line(S+s,k)+l.line(S+s/2,k)+l.line(S+s/2,y)+l.line(S+s-s/4,y)+l.line(S+s/4,y)+l.line(S+s/2,y)+l.line(S+s/2,k)+l.line(S,k)+l.line(S,A)+\"z\"]:[l.move(S,k)+l.line(S+s/2,k)+l.line(S+s/2,v)+l.line(S+s/2,k)+l.line(S+s,k)+l.line(S+s,w)+l.line(S+s/2,w)+l.line(S+s/2,y)+l.line(S+s/2,w)+l.line(S,w)+l.line(S,k-o/2)],L+=l.move(S,w),n.globals.isXNumeric||(i+=a),{pathTo:C,pathFrom:L,x:i,y:k,barXPosition:S,color:this.isBoxPlot?f:d?[g]:[u]}}},{key:\"drawHorizontalBoxPaths\",value:function(t){var e=t.indexes;t.x;var i=t.y,a=t.yDivision,s=t.barHeight,r=t.zeroW,o=t.strokeWidth,n=this.w,l=new m(this.ctx),h=e.i,c=e.j,d=this.boxOptions.colors.lower;this.isBoxPlot&&(d=[this.boxOptions.colors.lower,this.boxOptions.colors.upper]);var g=this.invertedYRatio,u=e.realIndex,f=this.getOHLCValue(u,c),p=r,x=r,b=Math.min(f.o,f.c),v=Math.max(f.o,f.c),y=f.m;n.globals.isXNumeric&&(i=(n.globals.seriesX[u][c]-n.globals.minX)/this.invertedXRatio-s/2);var w=i+s*this.visibleI;void 0===this.series[h][c]||null===this.series[h][c]?(b=r,v=r):(b=r+b/g,v=r+v/g,p=r+f.h/g,x=r+f.l/g,y=r+f.m/g);var k=l.move(r,w),A=l.move(b,w+s/2);return n.globals.previousPaths.length>0&&(A=this.getPreviousPath(u,c,!0)),k=[l.move(b,w)+l.line(b,w+s/2)+l.line(p,w+s/2)+l.line(p,w+s/2-s/4)+l.line(p,w+s/2+s/4)+l.line(p,w+s/2)+l.line(b,w+s/2)+l.line(b,w+s)+l.line(y,w+s)+l.line(y,w)+l.line(b+o/2,w),l.move(y,w)+l.line(y,w+s)+l.line(v,w+s)+l.line(v,w+s/2)+l.line(x,w+s/2)+l.line(x,w+s-s/4)+l.line(x,w+s/4)+l.line(x,w+s/2)+l.line(v,w+s/2)+l.line(v,w)+l.line(y,w)+\"z\"],A+=l.move(b,w),n.globals.isXNumeric||(i+=a),{pathTo:k,pathFrom:A,x:v,y:i,barYPosition:w,color:d}}},{key:\"getOHLCValue\",value:function(t,e){var i=this.w;return{o:this.isBoxPlot?i.globals.seriesCandleH[t][e]:i.globals.seriesCandleO[t][e],h:this.isBoxPlot?i.globals.seriesCandleO[t][e]:i.globals.seriesCandleH[t][e],m:i.globals.seriesCandleM[t][e],l:this.isBoxPlot?i.globals.seriesCandleC[t][e]:i.globals.seriesCandleL[t][e],c:this.isBoxPlot?i.globals.seriesCandleL[t][e]:i.globals.seriesCandleC[t][e]}}}]),s}(yt),At=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"checkColorRange\",value:function(){var t=this.w,e=!1,i=t.config.plotOptions[t.config.chart.type];return i.colorScale.ranges.length>0&&i.colorScale.ranges.map((function(t,i){t.from<=0&&(e=!0)})),e}},{key:\"getShadeColor\",value:function(t,e,i,a){var s=this.w,r=1,o=s.config.plotOptions[t].shadeIntensity,n=this.determineColor(t,e,i);s.globals.hasNegs||a?r=s.config.plotOptions[t].reverseNegativeShade?n.percent<0?n.percent/100*(1.25*o):(1-n.percent/100)*(1.25*o):n.percent<=0?1-(1+n.percent/100)*o:(1-n.percent/100)*o:(r=1-n.percent/100,\"treemap\"===t&&(r=(1-n.percent/100)*(1.25*o)));var l=n.color,h=new x;return s.config.plotOptions[t].enableShades&&(l=\"dark\"===this.w.config.theme.mode?x.hexToRgba(h.shadeColor(-1*r,n.color),s.config.fill.opacity):x.hexToRgba(h.shadeColor(r,n.color),s.config.fill.opacity)),{color:l,colorProps:n}}},{key:\"determineColor\",value:function(t,e,i){var a=this.w,s=a.globals.series[e][i],r=a.config.plotOptions[t],o=r.colorScale.inverse?i:e;r.distributed&&\"treemap\"===a.config.chart.type&&(o=i);var n=a.globals.colors[o],l=null,h=Math.min.apply(Math,u(a.globals.series[e])),c=Math.max.apply(Math,u(a.globals.series[e]));r.distributed||\"heatmap\"!==t||(h=a.globals.minY,c=a.globals.maxY),void 0!==r.colorScale.min&&(h=r.colorScale.mina.globals.maxY?r.colorScale.max:a.globals.maxY);var d=Math.abs(c)+Math.abs(h),g=100*s/(0===d?d-1e-6:d);r.colorScale.ranges.length>0&&r.colorScale.ranges.map((function(t,e){if(s>=t.from&&s<=t.to){n=t.color,l=t.foreColor?t.foreColor:null,h=t.from,c=t.to;var i=Math.abs(c)+Math.abs(h);g=100*s/(0===i?i-1e-6:i)}}));return{color:n,foreColor:l,percent:g}}},{key:\"calculateDataLabels\",value:function(t){var e=t.text,i=t.x,a=t.y,s=t.i,r=t.j,o=t.colorProps,n=t.fontSize,l=this.w.config.dataLabels,h=new m(this.ctx),c=new H(this.ctx),d=null;if(l.enabled){d=h.group({class:\"apexcharts-data-labels\"});var g=l.offsetX,u=l.offsetY,f=i+g,p=a+parseFloat(l.style.fontSize)/3+u;c.plotDataLabelsText({x:f,y:p,text:e,i:s,j:r,color:o.foreColor,parent:d,fontSize:n,dataLabelsConfig:l})}return d}},{key:\"addListeners\",value:function(t){var e=new m(this.ctx);t.node.addEventListener(\"mouseenter\",e.pathMouseEnter.bind(this,t)),t.node.addEventListener(\"mouseleave\",e.pathMouseLeave.bind(this,t)),t.node.addEventListener(\"mousedown\",e.pathMouseDown.bind(this,t))}}]),t}(),St=function(){function t(e,i){a(this,t),this.ctx=e,this.w=e.w,this.xRatio=i.xRatio,this.yRatio=i.yRatio,this.dynamicAnim=this.w.config.chart.animations.dynamicAnimation,this.helpers=new At(e),this.rectRadius=this.w.config.plotOptions.heatmap.radius,this.strokeWidth=this.w.config.stroke.show?this.w.config.stroke.width:0}return r(t,[{key:\"draw\",value:function(t){var e=this.w,i=new m(this.ctx),a=i.group({class:\"apexcharts-heatmap\"});a.attr(\"clip-path\",\"url(#gridRectMask\".concat(e.globals.cuid,\")\"));var s=e.globals.gridWidth/e.globals.dataPoints,r=e.globals.gridHeight/e.globals.series.length,o=0,n=!1;this.negRange=this.helpers.checkColorRange();var l=t.slice();e.config.yaxis[0].reversed&&(n=!0,l.reverse());for(var h=n?0:l.length-1;n?h=0;n?h++:h--){var c=i.group({class:\"apexcharts-series apexcharts-heatmap-series\",seriesName:x.escapeString(e.globals.seriesNames[h]),rel:h+1,\"data:realIndex\":h});if(this.ctx.series.addCollapsedClassToSeries(c,h),e.config.chart.dropShadow.enabled){var d=e.config.chart.dropShadow;new v(this.ctx).dropShadow(c,d,h)}for(var g=0,u=e.config.plotOptions.heatmap.shadeIntensity,f=0;f-1&&this.pieClicked(d),i.config.dataLabels.enabled){var A=w.x,S=w.y,C=100*u/this.fullAngle+\"%\";if(0!==u&&i.config.plotOptions.pie.dataLabels.minAngleToShowLabelthis.fullAngle?e.endAngle=e.endAngle-(a+o):a+o=this.fullAngle+this.w.config.plotOptions.pie.startAngle%this.fullAngle&&(n=this.fullAngle+this.w.config.plotOptions.pie.startAngle%this.fullAngle-.01),Math.ceil(n)>this.fullAngle&&(n-=this.fullAngle);var l=Math.PI*(n-90)/180,h=e.centerX+s*Math.cos(o),c=e.centerY+s*Math.sin(o),d=e.centerX+s*Math.cos(l),g=e.centerY+s*Math.sin(l),u=x.polarToCartesian(e.centerX,e.centerY,e.donutSize,n),f=x.polarToCartesian(e.centerX,e.centerY,e.donutSize,r),p=a>180?1:0,b=[\"M\",h,c,\"A\",s,s,0,p,1,d,g];return\"donut\"===e.chartType?[].concat(b,[\"L\",u.x,u.y,\"A\",e.donutSize,e.donutSize,0,p,0,f.x,f.y,\"L\",h,c,\"z\"]).join(\" \"):\"pie\"===e.chartType||\"polarArea\"===e.chartType?[].concat(b,[\"L\",e.centerX,e.centerY,\"L\",h,c]).join(\" \"):[].concat(b).join(\" \")}},{key:\"drawPolarElements\",value:function(t){var e=this.w,i=new _(this.ctx),a=new m(this.ctx),s=new Ct(this.ctx),r=a.group(),o=a.group(),n=i.niceScale(0,Math.ceil(this.maxY),e.config.yaxis[0].tickAmount,0,!0),l=n.result.reverse(),h=n.result.length;this.maxY=n.niceMax;for(var c=e.globals.radialSize,d=c/(h-1),g=0;g1&&t.total.show&&(s=t.total.color);var o=r.globals.dom.baseEl.querySelector(\".apexcharts-datalabel-label\"),n=r.globals.dom.baseEl.querySelector(\".apexcharts-datalabel-value\");i=(0,t.value.formatter)(i,r),a||\"function\"!=typeof t.total.formatter||(i=t.total.formatter(r));var l=e===t.total.label;e=t.name.formatter(e,l,r),null!==o&&(o.textContent=e),null!==n&&(n.textContent=i),null!==o&&(o.style.fill=s)}},{key:\"printDataLabelsInner\",value:function(t,e){var i=this.w,a=t.getAttribute(\"data:value\"),s=i.globals.seriesNames[parseInt(t.parentNode.getAttribute(\"rel\"),10)-1];i.globals.series.length>1&&this.printInnerLabels(e,s,a,t);var r=i.globals.dom.baseEl.querySelector(\".apexcharts-datalabels-group\");null!==r&&(r.style.opacity=1)}},{key:\"drawSpokes\",value:function(t){var e=this,i=this.w,a=new m(this.ctx),s=i.config.plotOptions.polarArea.spokes;if(0!==s.strokeWidth){for(var r=[],o=360/i.globals.series.length,n=0;n1)o&&!e.total.showAlways?l({makeSliceOut:!1,printLabel:!0}):this.printInnerLabels(e,e.total.label,e.total.formatter(s));else if(l({makeSliceOut:!1,printLabel:!0}),!o)if(s.globals.selectedDataPoints.length&&s.globals.series.length>1)if(s.globals.selectedDataPoints[0].length>0){var h=s.globals.selectedDataPoints[0],c=s.globals.dom.baseEl.querySelector(\".apexcharts-\".concat(this.chartType.toLowerCase(),\"-slice-\").concat(h));this.printDataLabelsInner(c,e)}else r&&s.globals.selectedDataPoints.length&&0===s.globals.selectedDataPoints[0].length&&(r.style.opacity=0);else r&&s.globals.series.length>1&&(r.style.opacity=0)}}]),t}(),Pt=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.chartType=this.w.config.chart.type,this.initialAnim=this.w.config.chart.animations.enabled,this.dynamicAnim=this.initialAnim&&this.w.config.chart.animations.dynamicAnimation.enabled,this.animDur=0;var i=this.w;this.graphics=new m(this.ctx),this.lineColorArr=void 0!==i.globals.stroke.colors?i.globals.stroke.colors:i.globals.colors,this.defaultSize=i.globals.svgHeight0&&(p=i.getPreviousPath(n));for(var b=0;b=10?t.x>0?(i=\"start\",a+=10):t.x<0&&(i=\"end\",a-=10):i=\"middle\",Math.abs(t.y)>=e-10&&(t.y<0?s-=10:t.y>0&&(s+=10)),{textAnchor:i,newX:a,newY:s}}},{key:\"getPreviousPath\",value:function(t){for(var e=this.w,i=null,a=0;a0&&parseInt(s.realIndex,10)===parseInt(t,10)&&void 0!==e.globals.previousPaths[a].paths[0]&&(i=e.globals.previousPaths[a].paths[0].d)}return i}},{key:\"getDataPointsPos\",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.dataPointsLen;t=t||[],e=e||[];for(var a=[],s=0;s=360&&(g=360-Math.abs(this.startAngle)-.1);var u=i.drawPath({d:\"\",stroke:c,strokeWidth:o*parseInt(h.strokeWidth,10)/100,fill:\"none\",strokeOpacity:h.opacity,classes:\"apexcharts-radialbar-area\"});if(h.dropShadow.enabled){var f=h.dropShadow;s.dropShadow(u,f)}l.add(u),u.attr(\"id\",\"apexcharts-radialbarTrack-\"+n),this.animatePaths(u,{centerX:t.centerX,centerY:t.centerY,endAngle:g,startAngle:d,size:t.size,i:n,totalItems:2,animBeginArr:0,dur:0,isTrack:!0,easing:e.globals.easing})}return a}},{key:\"drawArcs\",value:function(t){var e=this.w,i=new m(this.ctx),a=new F(this.ctx),s=new v(this.ctx),r=i.group(),o=this.getStrokeWidth(t);t.size=t.size-o/2;var n=e.config.plotOptions.radialBar.hollow.background,l=t.size-o*t.series.length-this.margin*t.series.length-o*parseInt(e.config.plotOptions.radialBar.track.strokeWidth,10)/100/2,h=l-e.config.plotOptions.radialBar.hollow.margin;void 0!==e.config.plotOptions.radialBar.hollow.image&&(n=this.drawHollowImage(t,r,l,n));var c=this.drawHollow({size:h,centerX:t.centerX,centerY:t.centerY,fill:n||\"transparent\"});if(e.config.plotOptions.radialBar.hollow.dropShadow.enabled){var d=e.config.plotOptions.radialBar.hollow.dropShadow;s.dropShadow(c,d)}var g=1;!this.radialDataLabels.total.show&&e.globals.series.length>1&&(g=0);var u=null;this.radialDataLabels.show&&(u=this.renderInnerDataLabels(this.radialDataLabels,{hollowSize:l,centerX:t.centerX,centerY:t.centerY,opacity:g})),\"back\"===e.config.plotOptions.radialBar.hollow.position&&(r.add(c),u&&r.add(u));var f=!1;e.config.plotOptions.radialBar.inverseOrder&&(f=!0);for(var p=f?t.series.length-1:0;f?p>=0:p100?100:t.series[p])/100,S=Math.round(this.totalAngle*A)+this.startAngle,C=void 0;e.globals.dataChanged&&(k=this.startAngle,C=Math.round(this.totalAngle*x.negToZero(e.globals.previousPaths[p])/100)+k),Math.abs(S)+Math.abs(w)>=360&&(S-=.01),Math.abs(C)+Math.abs(k)>=360&&(C-=.01);var L=S-w,P=Array.isArray(e.config.stroke.dashArray)?e.config.stroke.dashArray[p]:e.config.stroke.dashArray,T=i.drawPath({d:\"\",stroke:y,strokeWidth:o,fill:\"none\",fillOpacity:e.config.fill.opacity,classes:\"apexcharts-radialbar-area apexcharts-radialbar-slice-\"+p,strokeDashArray:P});if(m.setAttrs(T.node,{\"data:angle\":L,\"data:value\":t.series[p]}),e.config.chart.dropShadow.enabled){var M=e.config.chart.dropShadow;s.dropShadow(T,M,p)}s.setSelectionFilter(T,0,p),this.addListeners(T,this.radialDataLabels),b.add(T),T.attr({index:0,j:p});var I=0;!this.initialAnim||e.globals.resized||e.globals.dataChanged||(I=e.config.chart.animations.speed),e.globals.dataChanged&&(I=e.config.chart.animations.dynamicAnimation.speed),this.animDur=I/(1.2*t.series.length)+this.animDur,this.animBeginArr.push(this.animDur),this.animatePaths(T,{centerX:t.centerX,centerY:t.centerY,endAngle:S,startAngle:w,prevEndAngle:C,prevStartAngle:k,size:t.size,i:p,totalItems:2,animBeginArr:this.animBeginArr,dur:I,shouldSetPrevPaths:!0,easing:e.globals.easing})}return{g:r,elHollow:c,dataLabels:u}}},{key:\"drawHollow\",value:function(t){var e=new m(this.ctx).drawCircle(2*t.size);return e.attr({class:\"apexcharts-radialbar-hollow\",cx:t.centerX,cy:t.centerY,r:t.size,fill:t.fill}),e}},{key:\"drawHollowImage\",value:function(t,e,i,a){var s=this.w,r=new F(this.ctx),o=x.randomId(),n=s.config.plotOptions.radialBar.hollow.image;if(s.config.plotOptions.radialBar.hollow.imageClipped)r.clippedImgArea({width:i,height:i,image:n,patternID:\"pattern\".concat(s.globals.cuid).concat(o)}),a=\"url(#pattern\".concat(s.globals.cuid).concat(o,\")\");else{var l=s.config.plotOptions.radialBar.hollow.imageWidth,h=s.config.plotOptions.radialBar.hollow.imageHeight;if(void 0===l&&void 0===h){var c=s.globals.dom.Paper.image(n).loaded((function(e){this.move(t.centerX-e.width/2+s.config.plotOptions.radialBar.hollow.imageOffsetX,t.centerY-e.height/2+s.config.plotOptions.radialBar.hollow.imageOffsetY)}));e.add(c)}else{var d=s.globals.dom.Paper.image(n).loaded((function(e){this.move(t.centerX-l/2+s.config.plotOptions.radialBar.hollow.imageOffsetX,t.centerY-h/2+s.config.plotOptions.radialBar.hollow.imageOffsetY),this.size(l,h)}));e.add(d)}}return a}},{key:\"getStrokeWidth\",value:function(t){var e=this.w;return t.size*(100-parseInt(e.config.plotOptions.radialBar.hollow.size,10))/100/(t.series.length+1)-this.margin}}]),i}(Lt),Mt=function(t){n(s,t);var i=d(s);function s(){return a(this,s),i.apply(this,arguments)}return r(s,[{key:\"draw\",value:function(t,i){var a=this.w,s=new m(this.ctx);this.rangeBarOptions=this.w.config.plotOptions.rangeBar,this.series=t,this.seriesRangeStart=a.globals.seriesRangeStart,this.seriesRangeEnd=a.globals.seriesRangeEnd,this.barHelpers.initVariables(t);for(var r=s.group({class:\"apexcharts-rangebar-series apexcharts-plot-series\"}),o=0;o0&&(this.visibleI=this.visibleI+1);var p=0,b=0;this.yRatio.length>1&&(this.yaxisIndex=u);var v=this.barHelpers.initialPositions();d=v.y,h=v.zeroW,c=v.x,b=v.barWidth,n=v.xDivision,l=v.zeroH;for(var y=s.group({class:\"apexcharts-datalabels\",\"data:realIndex\":u}),w=s.group({class:\"apexcharts-rangebar-goals-markers\",style:\"pointer-events: none\"}),k=0;k0}));return a=l.config.plotOptions.bar.rangeBarGroupRows?s+o*g:s+r*this.visibleI+o*g,u>-1&&!l.config.plotOptions.bar.rangeBarOverlap&&(h=l.globals.seriesRange[e][u].overlaps).indexOf(c)>-1&&(a=(r=n.barHeight/h.length)*this.visibleI+o*(100-parseInt(this.barOptions.barHeight,10))/100/2+r*(this.visibleI+h.indexOf(c))+o*g),{barYPosition:a,barHeight:r}}},{key:\"drawRangeColumnPaths\",value:function(t){var e=t.indexes,i=t.x;t.strokeWidth;var a=t.xDivision,s=t.barWidth,r=t.zeroH,o=this.w,n=e.i,l=e.j,h=this.yRatio[this.yaxisIndex],c=e.realIndex,d=this.getRangeValue(c,l),g=Math.min(d.start,d.end),u=Math.max(d.start,d.end);o.globals.isXNumeric&&(i=(o.globals.seriesX[n][l]-o.globals.minX)/this.xRatio-s/2);var f=i+s*this.visibleI;void 0===this.series[n][l]||null===this.series[n][l]?g=r:(g=r-g/h,u=r-u/h);var p=Math.abs(u-g),x=this.barHelpers.getColumnPaths({barXPosition:f,barWidth:s,y1:g,y2:u,strokeWidth:this.strokeWidth,series:this.seriesRangeEnd,realIndex:e.realIndex,i:c,j:l,w:o});return o.globals.isXNumeric||(i+=a),{pathTo:x.pathTo,pathFrom:x.pathFrom,barHeight:p,x:i,y:u,goalY:this.barHelpers.getGoalValues(\"y\",null,r,n,l),barXPosition:f}}},{key:\"drawRangeBarPaths\",value:function(t){var e=t.indexes,i=t.y,a=t.y1,s=t.y2,r=t.yDivision,o=t.barHeight,n=t.barYPosition,l=t.zeroW,h=this.w,c=l+a/this.invertedYRatio,d=l+s/this.invertedYRatio,g=Math.abs(d-c),u=this.barHelpers.getBarpaths({barYPosition:n,barHeight:o,x1:c,x2:d,strokeWidth:this.strokeWidth,series:this.seriesRangeEnd,i:e.realIndex,realIndex:e.realIndex,j:e.j,w:h});return h.globals.isXNumeric||(i+=r),{pathTo:u.pathTo,pathFrom:u.pathFrom,barWidth:g,x:d,goalX:this.barHelpers.getGoalValues(\"x\",l,null,e.realIndex,e.j),y:i}}},{key:\"getRangeValue\",value:function(t,e){var i=this.w;return{start:i.globals.seriesRangeStart[t][e],end:i.globals.seriesRangeEnd[t][e]}}}]),s}(yt),It=function(){function t(e){a(this,t),this.w=e.w,this.lineCtx=e}return r(t,[{key:\"sameValueSeriesFix\",value:function(t,e){var i=this.w;if((\"gradient\"===i.config.fill.type||\"gradient\"===i.config.fill.type[t])&&new y(this.lineCtx.ctx,i).seriesHaveSameValues(t)){var a=e[t].slice();a[a.length-1]=a[a.length-1]+1e-6,e[t]=a}return e}},{key:\"calculatePoints\",value:function(t){var e=t.series,i=t.realIndex,a=t.x,s=t.y,r=t.i,o=t.j,n=t.prevY,l=this.w,h=[],c=[];if(0===o){var d=this.lineCtx.categoryAxisCorrection+l.config.markers.offsetX;l.globals.isXNumeric&&(d=(l.globals.seriesX[i][0]-l.globals.minX)/this.lineCtx.xRatio+l.config.markers.offsetX),h.push(d),c.push(x.isNumber(e[r][0])?n+l.config.markers.offsetY:null),h.push(a+l.config.markers.offsetX),c.push(x.isNumber(e[r][o+1])?s+l.config.markers.offsetY:null)}else h.push(a+l.config.markers.offsetX),c.push(x.isNumber(e[r][o+1])?s+l.config.markers.offsetY:null);return{x:h,y:c}}},{key:\"checkPreviousPaths\",value:function(t){for(var e=t.pathFromLine,i=t.pathFromArea,a=t.realIndex,s=this.w,r=0;r0&&parseInt(o.realIndex,10)===parseInt(a,10)&&(\"line\"===o.type?(this.lineCtx.appendPathFrom=!1,e=s.globals.previousPaths[r].paths[0].d):\"area\"===o.type&&(this.lineCtx.appendPathFrom=!1,i=s.globals.previousPaths[r].paths[0].d,s.config.stroke.show&&s.globals.previousPaths[r].paths[1]&&(e=s.globals.previousPaths[r].paths[1].d)))}return{pathFromLine:e,pathFromArea:i}}},{key:\"determineFirstPrevY\",value:function(t){var e,i=t.i,a=t.series,s=t.prevY,r=t.lineYPosition,o=this.w;if(void 0!==(null===(e=a[i])||void 0===e?void 0:e[0]))s=(r=o.config.chart.stacked&&i>0?this.lineCtx.prevSeriesY[i-1][0]:this.lineCtx.zeroY)-a[i][0]/this.lineCtx.yRatio[this.lineCtx.yaxisIndex]+2*(this.lineCtx.isReversed?a[i][0]/this.lineCtx.yRatio[this.lineCtx.yaxisIndex]:0);else if(o.config.chart.stacked&&i>0&&void 0===a[i][0])for(var n=i-1;n>=0;n--)if(null!==a[n][0]&&void 0!==a[n][0]){s=r=this.lineCtx.prevSeriesY[n][0];break}return{prevY:s,lineYPosition:r}}}]),t}(),zt=function(){function t(e,i,s){a(this,t),this.ctx=e,this.w=e.w,this.xyRatios=i,this.pointsChart=!(\"bubble\"!==this.w.config.chart.type&&\"scatter\"!==this.w.config.chart.type)||s,this.scatter=new D(this.ctx),this.noNegatives=this.w.globals.minX===Number.MAX_VALUE,this.lineHelpers=new It(this),this.markers=new R(this.ctx),this.prevSeriesY=[],this.categoryAxisCorrection=0,this.yaxisIndex=0}return r(t,[{key:\"draw\",value:function(t,i,a,s){var r=this.w,o=new m(this.ctx),n=r.globals.comboCharts?i:r.config.chart.type,l=o.group({class:\"apexcharts-\".concat(n,\"-series apexcharts-plot-series\")}),h=new y(this.ctx,r);this.yRatio=this.xyRatios.yRatio,this.zRatio=this.xyRatios.zRatio,this.xRatio=this.xyRatios.xRatio,this.baseLineY=this.xyRatios.baseLineY,t=h.getLogSeries(t),this.yRatio=h.getLogYRatios(this.yRatio);for(var c=[],d=0;d0&&(p=(r.globals.seriesX[g][0]-r.globals.minX)/this.xRatio),f.push(p);var x,b=p,v=void 0,w=b,k=this.zeroY,A=this.zeroY;k=this.lineHelpers.determineFirstPrevY({i:d,series:t,prevY:k,lineYPosition:0}).prevY,u.push(k),x=k;\"rangeArea\"===n&&(v=A=this.lineHelpers.determineFirstPrevY({i:d,series:s,prevY:A,lineYPosition:0}).prevY);var S={type:n,series:t,realIndex:g,i:d,x:p,y:1,pX:b,pY:x,pathsFrom:this._calculatePathsFrom({type:n,series:t,i:d,realIndex:g,prevX:w,prevY:k,prevY2:A}),linePaths:[],areaPaths:[],seriesIndex:a,lineYPosition:0,xArrj:f,yArrj:u,seriesRangeEnd:s},C=this._iterateOverDataPoints(e(e({},S),{},{iterations:\"rangeArea\"===n?t[d].length-1:void 0,isRangeStart:!0}));if(\"rangeArea\"===n){var L=this._calculatePathsFrom({series:s,i:d,realIndex:g,prevX:w,prevY:A}),P=this._iterateOverDataPoints(e(e({},S),{},{series:s,pY:v,pathsFrom:L,iterations:s[d].length-1,isRangeStart:!1}));C.linePaths[0]=P.linePath+C.linePath,C.pathFromLine=P.pathFromLine+C.pathFromLine}this._handlePaths({type:n,realIndex:g,i:d,paths:C}),this.elSeries.add(this.elPointsMain),this.elSeries.add(this.elDataLabelsWrap),c.push(this.elSeries)}if(r.config.chart.stacked)for(var T=c.length;T>0;T--)l.add(c[T-1]);else for(var M=0;M1&&(this.yaxisIndex=i),this.isReversed=a.config.yaxis[this.yaxisIndex]&&a.config.yaxis[this.yaxisIndex].reversed,this.zeroY=a.globals.gridHeight-this.baseLineY[this.yaxisIndex]-(this.isReversed?a.globals.gridHeight:0)+(this.isReversed?2*this.baseLineY[this.yaxisIndex]:0),this.areaBottomY=this.zeroY,(this.zeroY>a.globals.gridHeight||\"end\"===a.config.plotOptions.area.fillTo)&&(this.areaBottomY=a.globals.gridHeight),this.categoryAxisCorrection=this.xDivision/2,this.elSeries=s.group({class:\"apexcharts-series\",seriesName:x.escapeString(a.globals.seriesNames[i])}),this.elPointsMain=s.group({class:\"apexcharts-series-markers-wrap\",\"data:realIndex\":i}),this.elDataLabelsWrap=s.group({class:\"apexcharts-datalabels\",\"data:realIndex\":i});var r=t[e].length===a.globals.dataPoints;this.elSeries.attr({\"data:longestSeries\":r,rel:e+1,\"data:realIndex\":i}),this.appendPathFrom=!0}},{key:\"_calculatePathsFrom\",value:function(t){var e,i,a,s,r=t.type,o=t.series,n=t.i,l=t.realIndex,h=t.prevX,c=t.prevY,d=t.prevY2,g=this.w,u=new m(this.ctx);if(null===o[n][0]){for(var f=0;f0){var p=this.lineHelpers.checkPreviousPaths({pathFromLine:a,pathFromArea:s,realIndex:l});a=p.pathFromLine,s=p.pathFromArea}return{prevX:h,prevY:c,linePath:e,areaPath:i,pathFromLine:a,pathFromArea:s}}},{key:\"_handlePaths\",value:function(t){var i=t.type,a=t.realIndex,s=t.i,r=t.paths,o=this.w,n=new m(this.ctx),l=new F(this.ctx);this.prevSeriesY.push(r.yArrj),o.globals.seriesXvalues[a]=r.xArrj,o.globals.seriesYvalues[a]=r.yArrj;var h=o.config.forecastDataPoints;if(h.count>0&&\"rangeArea\"!==i){var c=o.globals.seriesXvalues[a][o.globals.seriesXvalues[a].length-h.count-1],d=n.drawRect(c,0,o.globals.gridWidth,o.globals.gridHeight,0);o.globals.dom.elForecastMask.appendChild(d.node);var g=n.drawRect(0,0,c,o.globals.gridHeight,0);o.globals.dom.elNonForecastMask.appendChild(g.node)}this.pointsChart||o.globals.delayedElements.push({el:this.elPointsMain.node,index:a});var u={i:s,realIndex:a,animationDelay:s,initialSpeed:o.config.chart.animations.speed,dataChangeSpeed:o.config.chart.animations.dynamicAnimation.speed,className:\"apexcharts-\".concat(i)};if(\"area\"===i)for(var f=l.fillPath({seriesNumber:a}),p=0;p0&&\"rangeArea\"!==i){var S=n.renderPaths(k);S.node.setAttribute(\"stroke-dasharray\",h.dashArray),h.strokeWidth&&S.node.setAttribute(\"stroke-width\",h.strokeWidth),this.elSeries.add(S),S.attr(\"clip-path\",\"url(#forecastMask\".concat(o.globals.cuid,\")\")),A.attr(\"clip-path\",\"url(#nonForecastMask\".concat(o.globals.cuid,\")\"))}}}}},{key:\"_iterateOverDataPoints\",value:function(t){var e=t.type,i=t.series,a=t.iterations,s=t.realIndex,r=t.i,o=t.x,n=t.y,l=t.pX,h=t.pY,c=t.pathsFrom,d=t.linePaths,g=t.areaPaths,u=t.seriesIndex,f=t.lineYPosition,p=t.xArrj,b=t.yArrj,v=t.isRangeStart,y=t.seriesRangeEnd,w=this.w,k=new m(this.ctx),A=this.yRatio,S=c.prevY,C=c.linePath,L=c.areaPath,P=c.pathFromLine,T=c.pathFromArea,M=x.isNumber(w.globals.minYArr[s])?w.globals.minYArr[s]:w.globals.minY;a||(a=w.globals.dataPoints>1?w.globals.dataPoints-1:w.globals.dataPoints);for(var I=n,z=0;z0&&w.globals.collapsedSeries.length-1){e--;break}return e>=0?e:0}(r-1)][z+1]}else f=this.zeroY;else f=this.zeroY;X?n=f-M/A[this.yaxisIndex]+2*(this.isReversed?M/A[this.yaxisIndex]:0):(n=f-i[r][z+1]/A[this.yaxisIndex]+2*(this.isReversed?i[r][z+1]/A[this.yaxisIndex]:0),\"rangeArea\"===e&&(I=f-y[r][z+1]/A[this.yaxisIndex]+2*(this.isReversed?y[r][z+1]/A[this.yaxisIndex]:0))),p.push(o),b.push(n);var Y=this.lineHelpers.calculatePoints({series:i,x:o,y:n,realIndex:s,i:r,j:z,prevY:S}),F=this._createPaths({type:e,series:i,i:r,realIndex:s,j:z,x:o,y:n,y2:I,pX:l,pY:h,linePath:C,areaPath:L,linePaths:d,areaPaths:g,seriesIndex:u,isRangeStart:v});g=F.areaPaths,d=F.linePaths,l=F.pX,h=F.pY,L=F.areaPath,C=F.linePath,this.appendPathFrom&&(P+=k.line(o,this.zeroY),T+=k.line(o,this.zeroY)),this.handleNullDataPoints(i,Y,r,z,s),this._handleMarkersAndLabels({type:e,pointsPos:Y,i:r,j:z,realIndex:s,isRangeStart:v})}return{yArrj:b,xArrj:p,pathFromArea:T,areaPaths:g,pathFromLine:P,linePaths:d,linePath:C,areaPath:L}}},{key:\"_handleMarkersAndLabels\",value:function(t){var e=t.type,i=t.pointsPos,a=t.isRangeStart,s=t.i,r=t.j,o=t.realIndex,n=this.w,l=new H(this.ctx);if(this.pointsChart)this.scatter.draw(this.elSeries,r,{realIndex:o,pointsPos:i,zRatio:this.zRatio,elParent:this.elPointsMain});else{n.globals.series[s].length>1&&this.elPointsMain.node.classList.add(\"apexcharts-element-hidden\");var h=this.markers.plotChartMarkers(i,o,r+1);null!==h&&this.elPointsMain.add(h)}var c=l.drawDataLabel({type:e,isRangeStart:a,pos:i,i:o,j:r+1});null!==c&&this.elDataLabelsWrap.add(c)}},{key:\"_createPaths\",value:function(t){var e=t.type,i=t.series,a=t.i,s=t.realIndex,r=t.j,o=t.x,n=t.y,l=t.y2,h=t.pX,c=t.pY,d=t.linePath,g=t.areaPath,u=t.linePaths,f=t.areaPaths,p=t.seriesIndex,x=t.isRangeStart,b=this.w,v=new m(this.ctx),y=b.config.stroke.curve,w=this.areaBottomY;if(Array.isArray(b.config.stroke.curve)&&(y=Array.isArray(p)?b.config.stroke.curve[p[a]]:b.config.stroke.curve[a]),\"smooth\"===y){var k=.35*(o-h);b.globals.hasNullValues?(null!==i[a][r]&&(null!==i[a][r+1]?(d=v.move(h,c)+v.curve(h+k,c,o-k,n,o+1,n),g=v.move(h+1,c)+v.curve(h+k,c,o-k,n,o+1,n)+v.line(o,w)+v.line(h,w)+\"z\"):(d=v.move(h,c),g=v.move(h,c)+\"z\")),u.push(d),f.push(g)):(d+=v.curve(h+k,c,o-k,n,o,n),g+=v.curve(h+k,c,o-k,n,o,n)),h=o,c=n,r===i[a].length-2&&(g=g+v.curve(h,c,o,n,o,w)+v.move(o,n)+\"z\",\"rangeArea\"===e&&x?d=d+v.curve(h,c,o,n,o,l)+v.move(o,l)+\"z\":b.globals.hasNullValues||(u.push(d),f.push(g)))}else{if(null===i[a][r+1]){d+=v.move(o,n);var A=b.globals.isXNumeric?(b.globals.seriesX[s][r]-b.globals.minX)/this.xRatio:o-this.xDivision;g=g+v.line(A,w)+v.move(o,n)+\"z\"}null===i[a][r]&&(d+=v.move(o,n),g+=v.move(o,w)),\"stepline\"===y?(d=d+v.line(o,null,\"H\")+v.line(null,n,\"V\"),g=g+v.line(o,null,\"H\")+v.line(null,n,\"V\")):\"straight\"===y&&(d+=v.line(o,n),g+=v.line(o,n)),r===i[a].length-2&&(g=g+v.line(o,w)+v.move(o,n)+\"z\",\"rangeArea\"===e&&x?d=d+v.line(o,l)+v.move(o,l)+\"z\":(u.push(d),f.push(g)))}return{linePaths:u,areaPaths:f,pX:h,pY:c,linePath:d,areaPath:g}}},{key:\"handleNullDataPoints\",value:function(t,e,i,a,s){var r=this.w;if(null===t[i][a]&&r.config.markers.showNullDataPoints||1===t[i].length){var o=this.markers.plotChartMarkers(e,s,a+1,this.strokeWidth-r.config.markers.strokeWidth/2,!0);null!==o&&this.elPointsMain.add(o)}}}]),t}();window.TreemapSquared={},window.TreemapSquared.generate=function(){function t(e,i,a,s){this.xoffset=e,this.yoffset=i,this.height=s,this.width=a,this.shortestEdge=function(){return Math.min(this.height,this.width)},this.getCoordinates=function(t){var e,i=[],a=this.xoffset,s=this.yoffset,o=r(t)/this.height,n=r(t)/this.width;if(this.width>=this.height)for(e=0;e=this.height){var a=e/this.height,s=this.width-a;i=new t(this.xoffset+a,this.yoffset,s,this.height)}else{var r=e/this.width,o=this.height-r;i=new t(this.xoffset,this.yoffset+r,this.width,o)}return i}}function e(e,a,s,o,n){o=void 0===o?0:o,n=void 0===n?0:n;var l=i(function(t,e){var i,a=[],s=e/r(t);for(i=0;i=o}(e,l=t[0],n)?(e.push(l),i(t.slice(1),e,s,o)):(h=s.cutArea(r(e),o),o.push(s.getCoordinates(e)),i(t,[],h,o)),o;o.push(s.getCoordinates(e))}function a(t,e){var i=Math.min.apply(Math,t),a=Math.max.apply(Math,t),s=r(t);return Math.max(Math.pow(e,2)*a/Math.pow(s,2),Math.pow(s,2)/(Math.pow(e,2)*i))}function s(t){return t&&t.constructor===Array}function r(t){var e,i=0;for(e=0;er-a&&l.width<=o-s){var h=n.rotateAroundCenter(t.node);t.node.setAttribute(\"transform\",\"rotate(-90 \".concat(h.x,\" \").concat(h.y,\")\"))}}},{key:\"animateTreemap\",value:function(t,e,i,a){var s=new b(this.ctx);s.animateRect(t,{x:e.x,y:e.y,width:e.width,height:e.height},{x:i.x,y:i.y,width:i.width,height:i.height},a,(function(){s.animationCompleted(t)}))}}]),t}(),Ft=86400,Rt=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.timeScaleArray=[],this.utc=this.w.config.xaxis.labels.datetimeUTC}return r(t,[{key:\"calculateTimeScaleTicks\",value:function(t,i){var a=this,s=this.w;if(s.globals.allSeriesCollapsed)return s.globals.labels=[],s.globals.timescaleLabels=[],[];var r=new T(this.ctx),o=(i-t)/864e5;this.determineInterval(o),s.globals.disableZoomIn=!1,s.globals.disableZoomOut=!1,o<.00011574074074074075?s.globals.disableZoomIn=!0:o>5e4&&(s.globals.disableZoomOut=!0);var n=r.getTimeUnitsfromTimestamp(t,i,this.utc),l=s.globals.gridWidth/o,h=l/24,c=h/60,d=c/60,g=Math.floor(24*o),u=Math.floor(1440*o),f=Math.floor(o*Ft),p=Math.floor(o),x=Math.floor(o/30),b=Math.floor(o/365),v={minMillisecond:n.minMillisecond,minSecond:n.minSecond,minMinute:n.minMinute,minHour:n.minHour,minDate:n.minDate,minMonth:n.minMonth,minYear:n.minYear},m={firstVal:v,currentMillisecond:v.minMillisecond,currentSecond:v.minSecond,currentMinute:v.minMinute,currentHour:v.minHour,currentMonthDate:v.minDate,currentDate:v.minDate,currentMonth:v.minMonth,currentYear:v.minYear,daysWidthOnXAxis:l,hoursWidthOnXAxis:h,minutesWidthOnXAxis:c,secondsWidthOnXAxis:d,numberOfSeconds:f,numberOfMinutes:u,numberOfHours:g,numberOfDays:p,numberOfMonths:x,numberOfYears:b};switch(this.tickInterval){case\"years\":this.generateYearScale(m);break;case\"months\":case\"half_year\":this.generateMonthScale(m);break;case\"months_days\":case\"months_fortnight\":case\"days\":case\"week_days\":this.generateDayScale(m);break;case\"hours\":this.generateHourScale(m);break;case\"minutes_fives\":case\"minutes\":this.generateMinuteScale(m);break;case\"seconds_tens\":case\"seconds_fives\":case\"seconds\":this.generateSecondScale(m)}var y=this.timeScaleArray.map((function(t){var i={position:t.position,unit:t.unit,year:t.year,day:t.day?t.day:1,hour:t.hour?t.hour:0,month:t.month+1};return\"month\"===t.unit?e(e({},i),{},{day:1,value:t.value+1}):\"day\"===t.unit||\"hour\"===t.unit?e(e({},i),{},{value:t.value}):\"minute\"===t.unit?e(e({},i),{},{value:t.value,minute:t.value}):\"second\"===t.unit?e(e({},i),{},{value:t.value,minute:t.minute,second:t.second}):t}));return y.filter((function(t){var e=1,i=Math.ceil(s.globals.gridWidth/120),r=t.value;void 0!==s.config.xaxis.tickAmount&&(i=s.config.xaxis.tickAmount),y.length>i&&(e=Math.floor(y.length/i));var o=!1,n=!1;switch(a.tickInterval){case\"years\":\"year\"===t.unit&&(o=!0);break;case\"half_year\":e=7,\"year\"===t.unit&&(o=!0);break;case\"months\":e=1,\"year\"===t.unit&&(o=!0);break;case\"months_fortnight\":e=15,\"year\"!==t.unit&&\"month\"!==t.unit||(o=!0),30===r&&(n=!0);break;case\"months_days\":e=10,\"month\"===t.unit&&(o=!0),30===r&&(n=!0);break;case\"week_days\":e=8,\"month\"===t.unit&&(o=!0);break;case\"days\":e=1,\"month\"===t.unit&&(o=!0);break;case\"hours\":\"day\"===t.unit&&(o=!0);break;case\"minutes_fives\":case\"seconds_fives\":r%5!=0&&(n=!0);break;case\"seconds_tens\":r%10!=0&&(n=!0)}if(\"hours\"===a.tickInterval||\"minutes_fives\"===a.tickInterval||\"seconds_tens\"===a.tickInterval||\"seconds_fives\"===a.tickInterval){if(!n)return!0}else if((r%e==0||o)&&!n)return!0}))}},{key:\"recalcDimensionsBasedOnFormat\",value:function(t,e){var i=this.w,a=this.formatDates(t),s=this.removeOverlappingTS(a);i.globals.timescaleLabels=s.slice(),new ot(this.ctx).plotCoords()}},{key:\"determineInterval\",value:function(t){var e=24*t,i=60*e;switch(!0){case t/365>5:this.tickInterval=\"years\";break;case t>800:this.tickInterval=\"half_year\";break;case t>180:this.tickInterval=\"months\";break;case t>90:this.tickInterval=\"months_fortnight\";break;case t>60:this.tickInterval=\"months_days\";break;case t>30:this.tickInterval=\"week_days\";break;case t>2:this.tickInterval=\"days\";break;case e>2.4:this.tickInterval=\"hours\";break;case i>15:this.tickInterval=\"minutes_fives\";break;case i>5:this.tickInterval=\"minutes\";break;case i>1:this.tickInterval=\"seconds_tens\";break;case 60*i>20:this.tickInterval=\"seconds_fives\";break;default:this.tickInterval=\"seconds\"}}},{key:\"generateYearScale\",value:function(t){var e=t.firstVal,i=t.currentMonth,a=t.currentYear,s=t.daysWidthOnXAxis,r=t.numberOfYears,o=e.minYear,n=0,l=new T(this.ctx),h=\"year\";if(e.minDate>1||e.minMonth>0){var c=l.determineRemainingDaysOfYear(e.minYear,e.minMonth,e.minDate);n=(l.determineDaysOfYear(e.minYear)-c+1)*s,o=e.minYear+1,this.timeScaleArray.push({position:n,value:o,unit:h,year:o,month:x.monthMod(i+1)})}else 1===e.minDate&&0===e.minMonth&&this.timeScaleArray.push({position:n,value:o,unit:h,year:a,month:x.monthMod(i+1)});for(var d=o,g=n,u=0;u1){l=(h.determineDaysOfMonths(a+1,e.minYear)-i+1)*r,n=x.monthMod(a+1);var g=s+d,u=x.monthMod(n),f=n;0===n&&(c=\"year\",f=g,u=1,g+=d+=1),this.timeScaleArray.push({position:l,value:f,unit:c,year:g,month:u})}else this.timeScaleArray.push({position:l,value:n,unit:c,year:s,month:x.monthMod(a)});for(var p=n+1,b=l,v=0,m=1;vo.determineDaysOfMonths(e+1,i)?(h=1,n=\"month\",g=e+=1,e):e},d=(24-e.minHour)*s,g=l,u=c(h,i,a);0===e.minHour&&1===e.minDate?(d=0,g=x.monthMod(e.minMonth),n=\"month\",h=e.minDate,r++):1!==e.minDate&&0===e.minHour&&0===e.minMinute&&(d=0,l=e.minDate,g=l,u=c(h=l,i,a)),this.timeScaleArray.push({position:d,value:g,unit:n,year:this._getYear(a,u,0),month:x.monthMod(u),day:h});for(var f=d,p=0;pn.determineDaysOfMonths(e+1,s)&&(p=1,e+=1),{month:e,date:p}},c=function(t,e){return t>n.determineDaysOfMonths(e+1,s)?e+=1:e},d=60-(e.minMinute+e.minSecond/60),g=d*r,u=e.minHour+1,f=u+1;60===d&&(g=0,f=(u=e.minHour)+1);var p=i,b=c(p,a);this.timeScaleArray.push({position:g,value:u,unit:l,day:p,hour:f,year:s,month:x.monthMod(b)});for(var v=g,m=0;m=24)f=0,l=\"day\",b=h(p+=1,b).month,b=c(p,b);var y=this._getYear(s,b,0);v=0===f&&0===m?d*r:60*r+v;var w=0===f?p:f;this.timeScaleArray.push({position:v,value:w,unit:l,hour:f,day:p,year:y,month:x.monthMod(b)}),f++}}},{key:\"generateMinuteScale\",value:function(t){for(var e=t.currentMillisecond,i=t.currentSecond,a=t.currentMinute,s=t.currentHour,r=t.currentDate,o=t.currentMonth,n=t.currentYear,l=t.minutesWidthOnXAxis,h=t.secondsWidthOnXAxis,c=t.numberOfMinutes,d=a+1,g=r,u=o,f=n,p=s,b=(60-i-e/1e3)*h,v=0;v=60&&(d=0,24===(p+=1)&&(p=0)),this.timeScaleArray.push({position:b,value:d,unit:\"minute\",hour:p,minute:d,day:g,year:this._getYear(f,u,0),month:x.monthMod(u)}),b+=l,d++}},{key:\"generateSecondScale\",value:function(t){for(var e=t.currentMillisecond,i=t.currentSecond,a=t.currentMinute,s=t.currentHour,r=t.currentDate,o=t.currentMonth,n=t.currentYear,l=t.secondsWidthOnXAxis,h=t.numberOfSeconds,c=i+1,d=a,g=r,u=o,f=n,p=s,b=(1e3-e)/1e3*l,v=0;v=60&&(c=0,++d>=60&&(d=0,24===++p&&(p=0))),this.timeScaleArray.push({position:b,value:c,unit:\"second\",hour:p,minute:d,second:c,day:g,year:this._getYear(f,u,0),month:x.monthMod(u)}),b+=l,c++}},{key:\"createRawDateString\",value:function(t,e){var i=t.year;return 0===t.month&&(t.month=1),i+=\"-\"+(\"0\"+t.month.toString()).slice(-2),\"day\"===t.unit?i+=\"day\"===t.unit?\"-\"+(\"0\"+e).slice(-2):\"-01\":i+=\"-\"+(\"0\"+(t.day?t.day:\"1\")).slice(-2),\"hour\"===t.unit?i+=\"hour\"===t.unit?\"T\"+(\"0\"+e).slice(-2):\"T00\":i+=\"T\"+(\"0\"+(t.hour?t.hour:\"0\")).slice(-2),\"minute\"===t.unit?i+=\":\"+(\"0\"+e).slice(-2):i+=\":\"+(t.minute?(\"0\"+t.minute).slice(-2):\"00\"),\"second\"===t.unit?i+=\":\"+(\"0\"+e).slice(-2):i+=\":00\",this.utc&&(i+=\".000Z\"),i}},{key:\"formatDates\",value:function(t){var e=this,i=this.w;return t.map((function(t){var a=t.value.toString(),s=new T(e.ctx),r=e.createRawDateString(t,a),o=s.getDate(s.parseDate(r));if(e.utc||(o=s.getDate(s.parseDateWithTimezone(r))),void 0===i.config.xaxis.labels.format){var n=\"dd MMM\",l=i.config.xaxis.labels.datetimeFormatter;\"year\"===t.unit&&(n=l.year),\"month\"===t.unit&&(n=l.month),\"day\"===t.unit&&(n=l.day),\"hour\"===t.unit&&(n=l.hour),\"minute\"===t.unit&&(n=l.minute),\"second\"===t.unit&&(n=l.second),a=s.formatDate(o,n)}else a=s.formatDate(o,i.config.xaxis.labels.format);return{dateString:r,position:t.position,value:a,unit:t.unit,year:t.year,month:t.month}}))}},{key:\"removeOverlappingTS\",value:function(t){var e,i=this,a=new m(this.ctx),s=!1;t.length>0&&t[0].value&&t.every((function(e){return e.value.length===t[0].value.length}))&&(s=!0,e=a.getTextRects(t[0].value).width);var r=0,o=t.map((function(o,n){if(n>0&&i.w.config.xaxis.labels.hideOverlappingLabels){var l=s?e:a.getTextRects(t[r].value).width,h=t[r].position;return o.position>h+l+10?(r=n,o):null}return o}));return o=o.filter((function(t){return null!==t}))}},{key:\"_getYear\",value:function(t,e,i){return t+Math.floor(e/12)+i}}]),t}(),Dt=function(){function t(e,i){a(this,t),this.ctx=i,this.w=i.w,this.el=e}return r(t,[{key:\"setupElements\",value:function(){var t=this.w.globals,e=this.w.config,i=e.chart.type;t.axisCharts=[\"line\",\"area\",\"bar\",\"rangeBar\",\"rangeArea\",\"candlestick\",\"boxPlot\",\"scatter\",\"bubble\",\"radar\",\"heatmap\",\"treemap\"].indexOf(i)>-1,t.xyCharts=[\"line\",\"area\",\"bar\",\"rangeBar\",\"rangeArea\",\"candlestick\",\"boxPlot\",\"scatter\",\"bubble\"].indexOf(i)>-1,t.isBarHorizontal=(\"bar\"===e.chart.type||\"rangeBar\"===e.chart.type||\"boxPlot\"===e.chart.type)&&e.plotOptions.bar.horizontal,t.chartClass=\".apexcharts\"+t.chartID,t.dom.baseEl=this.el,t.dom.elWrap=document.createElement(\"div\"),m.setAttrs(t.dom.elWrap,{id:t.chartClass.substring(1),class:\"apexcharts-canvas \"+t.chartClass.substring(1)}),this.el.appendChild(t.dom.elWrap),t.dom.Paper=new window.SVG.Doc(t.dom.elWrap),t.dom.Paper.attr({class:\"apexcharts-svg\",\"xmlns:data\":\"ApexChartsNS\",transform:\"translate(\".concat(e.chart.offsetX,\", \").concat(e.chart.offsetY,\")\")}),t.dom.Paper.node.style.background=e.chart.background,this.setSVGDimensions(),t.dom.elGraphical=t.dom.Paper.group().attr({class:\"apexcharts-inner apexcharts-graphical\"}),t.dom.elAnnotations=t.dom.Paper.group().attr({class:\"apexcharts-annotations\"}),t.dom.elDefs=t.dom.Paper.defs(),t.dom.elLegendWrap=document.createElement(\"div\"),t.dom.elLegendWrap.classList.add(\"apexcharts-legend\"),t.dom.elWrap.appendChild(t.dom.elLegendWrap),t.dom.Paper.add(t.dom.elGraphical),t.dom.elGraphical.add(t.dom.elDefs)}},{key:\"plotChartType\",value:function(t,e){var i=this.w,a=i.config,s=i.globals,r={series:[],i:[]},o={series:[],i:[]},n={series:[],i:[]},l={series:[],i:[]},h={series:[],i:[]},c={series:[],i:[]},d={series:[],i:[]},g={series:[],i:[]},u={series:[],seriesRangeEnd:[],i:[]};s.series.map((function(e,f){var p=0;void 0!==t[f].type?(\"column\"===t[f].type||\"bar\"===t[f].type?(s.series.length>1&&a.plotOptions.bar.horizontal&&console.warn(\"Horizontal bars are not supported in a mixed/combo chart. Please turn off `plotOptions.bar.horizontal`\"),h.series.push(e),h.i.push(f),p++,i.globals.columnSeries=h.series):\"area\"===t[f].type?(o.series.push(e),o.i.push(f),p++):\"line\"===t[f].type?(r.series.push(e),r.i.push(f),p++):\"scatter\"===t[f].type?(n.series.push(e),n.i.push(f)):\"bubble\"===t[f].type?(l.series.push(e),l.i.push(f),p++):\"candlestick\"===t[f].type?(c.series.push(e),c.i.push(f),p++):\"boxPlot\"===t[f].type?(d.series.push(e),d.i.push(f),p++):\"rangeBar\"===t[f].type?(g.series.push(e),g.i.push(f),p++):\"rangeArea\"===t[f].type?(u.series.push(s.seriesRangeStart[f]),u.seriesRangeEnd.push(s.seriesRangeEnd[f]),u.i.push(f),p++):console.warn(\"You have specified an unrecognized chart type. Available types for this property are line/area/column/bar/scatter/bubble\"),p>1&&(s.comboCharts=!0)):(r.series.push(e),r.i.push(f))}));var f=new zt(this.ctx,e),p=new kt(this.ctx,e);this.ctx.pie=new Lt(this.ctx);var x=new Tt(this.ctx);this.ctx.rangeBar=new Mt(this.ctx,e);var b=new Pt(this.ctx),v=[];if(s.comboCharts){if(o.series.length>0&&v.push(f.draw(o.series,\"area\",o.i)),h.series.length>0)if(i.config.chart.stacked){var m=new wt(this.ctx,e);v.push(m.draw(h.series,h.i))}else this.ctx.bar=new yt(this.ctx,e),v.push(this.ctx.bar.draw(h.series,h.i));if(u.series.length>0&&v.push(f.draw(u.series,\"rangeArea\",u.i,u.seriesRangeEnd)),r.series.length>0&&v.push(f.draw(r.series,\"line\",r.i)),c.series.length>0&&v.push(p.draw(c.series,c.i)),d.series.length>0&&v.push(p.draw(d.series,d.i)),g.series.length>0&&v.push(this.ctx.rangeBar.draw(g.series,g.i)),n.series.length>0){var y=new zt(this.ctx,e,!0);v.push(y.draw(n.series,\"scatter\",n.i))}if(l.series.length>0){var w=new zt(this.ctx,e,!0);v.push(w.draw(l.series,\"bubble\",l.i))}}else switch(a.chart.type){case\"line\":v=f.draw(s.series,\"line\");break;case\"area\":v=f.draw(s.series,\"area\");break;case\"bar\":if(a.chart.stacked)v=new wt(this.ctx,e).draw(s.series);else this.ctx.bar=new yt(this.ctx,e),v=this.ctx.bar.draw(s.series);break;case\"candlestick\":v=new kt(this.ctx,e).draw(s.series);break;case\"boxPlot\":v=new kt(this.ctx,e).draw(s.series);break;case\"rangeBar\":v=this.ctx.rangeBar.draw(s.series);break;case\"rangeArea\":v=f.draw(s.seriesRangeStart,\"rangeArea\",void 0,s.seriesRangeEnd);break;case\"heatmap\":v=new St(this.ctx,e).draw(s.series);break;case\"treemap\":v=new Yt(this.ctx,e).draw(s.series);break;case\"pie\":case\"donut\":case\"polarArea\":v=this.ctx.pie.draw(s.series);break;case\"radialBar\":v=x.draw(s.series);break;case\"radar\":v=b.draw(s.series);break;default:v=f.draw(s.series)}return v}},{key:\"setSVGDimensions\",value:function(){var t=this.w.globals,e=this.w.config;t.svgWidth=e.chart.width,t.svgHeight=e.chart.height;var i=x.getDimensions(this.el),a=e.chart.width.toString().split(/[0-9]+/g).pop();\"%\"===a?x.isNumber(i[0])&&(0===i[0].width&&(i=x.getDimensions(this.el.parentNode)),t.svgWidth=i[0]*parseInt(e.chart.width,10)/100):\"px\"!==a&&\"\"!==a||(t.svgWidth=parseInt(e.chart.width,10));var s=e.chart.height.toString().split(/[0-9]+/g).pop();if(\"auto\"!==t.svgHeight&&\"\"!==t.svgHeight)if(\"%\"===s){var r=x.getDimensions(this.el.parentNode);t.svgHeight=r[1]*parseInt(e.chart.height,10)/100}else t.svgHeight=parseInt(e.chart.height,10);else t.axisCharts?t.svgHeight=t.svgWidth/1.61:t.svgHeight=t.svgWidth/1.2;if(t.svgWidth<0&&(t.svgWidth=0),t.svgHeight<0&&(t.svgHeight=0),m.setAttrs(t.dom.Paper.node,{width:t.svgWidth,height:t.svgHeight}),\"%\"!==s){var o=e.chart.sparkline.enabled?0:t.axisCharts?e.chart.parentHeightOffset:0;t.dom.Paper.node.parentNode.parentNode.style.minHeight=t.svgHeight+o+\"px\"}t.dom.elWrap.style.width=t.svgWidth+\"px\",t.dom.elWrap.style.height=t.svgHeight+\"px\"}},{key:\"shiftGraphPosition\",value:function(){var t=this.w.globals,e=t.translateY,i={transform:\"translate(\"+t.translateX+\", \"+e+\")\"};m.setAttrs(t.dom.elGraphical.node,i)}},{key:\"resizeNonAxisCharts\",value:function(){var t=this.w,e=t.globals,i=0,a=t.config.chart.sparkline.enabled?1:15;a+=t.config.grid.padding.bottom,\"top\"!==t.config.legend.position&&\"bottom\"!==t.config.legend.position||!t.config.legend.show||t.config.legend.floating||(i=new lt(this.ctx).legendHelpers.getLegendBBox().clwh+10);var s=t.globals.dom.baseEl.querySelector(\".apexcharts-radialbar, .apexcharts-pie\"),r=2.05*t.globals.radialSize;if(s&&!t.config.chart.sparkline.enabled&&0!==t.config.plotOptions.radialBar.startAngle){var o=x.getBoundingClientRect(s);r=o.bottom;var n=o.bottom-o.top;r=Math.max(2.05*t.globals.radialSize,n)}var l=r+e.translateY+i+a;e.dom.elLegendForeign&&e.dom.elLegendForeign.setAttribute(\"height\",l),t.config.chart.height&&String(t.config.chart.height).indexOf(\"%\")>0||(e.dom.elWrap.style.height=l+\"px\",m.setAttrs(e.dom.Paper.node,{height:l}),e.dom.Paper.node.parentNode.parentNode.style.minHeight=l+\"px\")}},{key:\"coreCalculations\",value:function(){new U(this.ctx).init()}},{key:\"resetGlobals\",value:function(){var t=this,e=function(){return t.w.config.series.map((function(t){return[]}))},i=new E,a=this.w.globals;i.initGlobalVars(a),a.seriesXvalues=e(),a.seriesYvalues=e()}},{key:\"isMultipleY\",value:function(){if(this.w.config.yaxis.constructor===Array&&this.w.config.yaxis.length>1)return this.w.globals.isMultipleYAxis=!0,!0}},{key:\"xySettings\",value:function(){var t=null,e=this.w;if(e.globals.axisCharts){if(\"back\"===e.config.xaxis.crosshairs.position)new Q(this.ctx).drawXCrosshairs();if(\"back\"===e.config.yaxis[0].crosshairs.position)new Q(this.ctx).drawYCrosshairs();if(\"datetime\"===e.config.xaxis.type&&void 0===e.config.xaxis.labels.formatter){this.ctx.timeScale=new Rt(this.ctx);var i=[];isFinite(e.globals.minX)&&isFinite(e.globals.maxX)&&!e.globals.isBarHorizontal?i=this.ctx.timeScale.calculateTimeScaleTicks(e.globals.minX,e.globals.maxX):e.globals.isBarHorizontal&&(i=this.ctx.timeScale.calculateTimeScaleTicks(e.globals.minY,e.globals.maxY)),this.ctx.timeScale.recalcDimensionsBasedOnFormat(i)}t=new y(this.ctx).getCalculatedRatios()}return t}},{key:\"updateSourceChart\",value:function(t){this.ctx.w.globals.selection=void 0,this.ctx.updateHelpers._updateOptions({chart:{selection:{xaxis:{min:t.w.globals.minX,max:t.w.globals.maxX}}}},!1,!1)}},{key:\"setupBrushHandler\",value:function(){var t=this,i=this.w;if(i.config.chart.brush.enabled&&\"function\"!=typeof i.config.chart.events.selection){var a=i.config.chart.brush.targets||[i.config.chart.brush.target];a.forEach((function(e){var i=ApexCharts.getChartByID(e);i.w.globals.brushSource=t.ctx,\"function\"!=typeof i.w.config.chart.events.zoomed&&(i.w.config.chart.events.zoomed=function(){t.updateSourceChart(i)}),\"function\"!=typeof i.w.config.chart.events.scrolled&&(i.w.config.chart.events.scrolled=function(){t.updateSourceChart(i)})})),i.config.chart.events.selection=function(t,s){a.forEach((function(t){var a=ApexCharts.getChartByID(t),r=x.clone(i.config.yaxis);if(i.config.chart.brush.autoScaleYaxis&&1===a.w.globals.series.length){var o=new _(a);r=o.autoScaleY(a,r,s)}var n=a.w.config.yaxis.reduce((function(t,i,s){return[].concat(u(t),[e(e({},a.w.config.yaxis[s]),{},{min:r[0].min,max:r[0].max})])}),[]);a.ctx.updateHelpers._updateOptions({xaxis:{min:s.xaxis.min,max:s.xaxis.max},yaxis:n},!1,!1,!1,!1)}))}}}}]),t}(),Ht=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"_updateOptions\",value:function(t){var e=this,a=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],o=arguments.length>4&&void 0!==arguments[4]&&arguments[4];return new Promise((function(n){var l=[e.ctx];r&&(l=e.ctx.getSyncedCharts()),e.ctx.w.globals.isExecCalled&&(l=[e.ctx],e.ctx.w.globals.isExecCalled=!1),l.forEach((function(r,h){var c=r.w;if(c.globals.shouldAnimate=s,a||(c.globals.resized=!0,c.globals.dataChanged=!0,s&&r.series.getPreviousPaths()),t&&\"object\"===i(t)&&(r.config=new X(t),t=y.extendArrayProps(r.config,t,c),r.w.globals.chartID!==e.ctx.w.globals.chartID&&delete t.series,c.config=x.extend(c.config,t),o&&(c.globals.lastXAxis=t.xaxis?x.clone(t.xaxis):[],c.globals.lastYAxis=t.yaxis?x.clone(t.yaxis):[],c.globals.initialConfig=x.extend({},c.config),c.globals.initialSeries=x.clone(c.config.series),t.series))){for(var d=0;d2&&void 0!==arguments[2]&&arguments[2];return new Promise((function(s){var r,o=i.w;return o.globals.shouldAnimate=e,o.globals.dataChanged=!0,e&&i.ctx.series.getPreviousPaths(),o.globals.axisCharts?(0===(r=t.map((function(t,e){return i._extendSeries(t,e)}))).length&&(r=[{data:[]}]),o.config.series=r):o.config.series=t.slice(),a&&(o.globals.initialConfig.series=x.clone(o.config.series),o.globals.initialSeries=x.clone(o.config.series)),i.ctx.update().then((function(){s(i.ctx)}))}))}},{key:\"_extendSeries\",value:function(t,i){var a=this.w,s=a.config.series[i];return e(e({},a.config.series[i]),{},{name:t.name?t.name:s&&s.name,color:t.color?t.color:s&&s.color,type:t.type?t.type:s&&s.type,data:t.data?t.data:s&&s.data})}},{key:\"toggleDataPointSelection\",value:function(t,e){var i=this.w,a=null,s=\".apexcharts-series[data\\\\:realIndex='\".concat(t,\"']\");return i.globals.axisCharts?a=i.globals.dom.Paper.select(\"\".concat(s,\" path[j='\").concat(e,\"'], \").concat(s,\" circle[j='\").concat(e,\"'], \").concat(s,\" rect[j='\").concat(e,\"']\")).members[0]:void 0===e&&(a=i.globals.dom.Paper.select(\"\".concat(s,\" path[j='\").concat(t,\"']\")).members[0],\"pie\"!==i.config.chart.type&&\"polarArea\"!==i.config.chart.type&&\"donut\"!==i.config.chart.type||this.ctx.pie.pieClicked(t)),a?(new m(this.ctx).pathMouseDown(a,null),a.node?a.node:null):(console.warn(\"toggleDataPointSelection: Element not found\"),null)}},{key:\"forceXAxisUpdate\",value:function(t){var e=this.w;if([\"min\",\"max\"].forEach((function(i){void 0!==t.xaxis[i]&&(e.config.xaxis[i]=t.xaxis[i],e.globals.lastXAxis[i]=t.xaxis[i])})),t.xaxis.categories&&t.xaxis.categories.length&&(e.config.xaxis.categories=t.xaxis.categories),e.config.xaxis.convertedCatToNumeric){var i=new z(t);t=i.convertCatToNumericXaxis(t,this.ctx)}return t}},{key:\"forceYAxisUpdate\",value:function(t){return t.chart&&t.chart.stacked&&\"100%\"===t.chart.stackType&&(Array.isArray(t.yaxis)?t.yaxis.forEach((function(e,i){t.yaxis[i].min=0,t.yaxis[i].max=100})):(t.yaxis.min=0,t.yaxis.max=100)),t}},{key:\"revertDefaultAxisMinMax\",value:function(t){var e=this,i=this.w,a=i.globals.lastXAxis,s=i.globals.lastYAxis;t&&t.xaxis&&(a=t.xaxis),t&&t.yaxis&&(s=t.yaxis),i.config.xaxis.min=a.min,i.config.xaxis.max=a.max;var r=function(t){void 0!==s[t]&&(i.config.yaxis[t].min=s[t].min,i.config.yaxis[t].max=s[t].max)};i.config.yaxis.map((function(t,a){i.globals.zoomed||void 0!==s[a]?r(a):void 0!==e.ctx.opts.yaxis[a]&&(t.min=e.ctx.opts.yaxis[a].min,t.max=e.ctx.opts.yaxis[a].max)}))}}]),t}();Xt=\"undefined\"!=typeof window?window:void 0,Et=function(t,e){var a=(void 0!==this?this:t).SVG=function(t){if(a.supported)return t=new a.Doc(t),a.parser.draw||a.prepare(),t};if(a.ns=\"http://www.w3.org/2000/svg\",a.xmlns=\"http://www.w3.org/2000/xmlns/\",a.xlink=\"http://www.w3.org/1999/xlink\",a.svgjs=\"http://svgjs.dev\",a.supported=!0,!a.supported)return!1;a.did=1e3,a.eid=function(t){return\"Svgjs\"+d(t)+a.did++},a.create=function(t){var i=e.createElementNS(this.ns,t);return i.setAttribute(\"id\",this.eid(t)),i},a.extend=function(){var t,e;e=(t=[].slice.call(arguments)).pop();for(var i=t.length-1;i>=0;i--)if(t[i])for(var s in e)t[i].prototype[s]=e[s];a.Set&&a.Set.inherit&&a.Set.inherit()},a.invent=function(t){var e=\"function\"==typeof t.create?t.create:function(){this.constructor.call(this,a.create(t.create))};return t.inherit&&(e.prototype=new t.inherit),t.extend&&a.extend(e,t.extend),t.construct&&a.extend(t.parent||a.Container,t.construct),e},a.adopt=function(e){return e?e.instance?e.instance:((i=\"svg\"==e.nodeName?e.parentNode instanceof t.SVGElement?new a.Nested:new a.Doc:\"linearGradient\"==e.nodeName?new a.Gradient(\"linear\"):\"radialGradient\"==e.nodeName?new a.Gradient(\"radial\"):a[d(e.nodeName)]?new(a[d(e.nodeName)]):new a.Element(e)).type=e.nodeName,i.node=e,e.instance=i,i instanceof a.Doc&&i.namespace().defs(),i.setData(JSON.parse(e.getAttribute(\"svgjs:data\"))||{}),i):null;var i},a.prepare=function(){var t=e.getElementsByTagName(\"body\")[0],i=(t?new a.Doc(t):a.adopt(e.documentElement).nested()).size(2,0);a.parser={body:t||e.documentElement,draw:i.style(\"opacity:0;position:absolute;left:-100%;top:-100%;overflow:hidden\").node,poly:i.polyline().node,path:i.path().node,native:a.create(\"svg\")}},a.parser={native:a.create(\"svg\")},e.addEventListener(\"DOMContentLoaded\",(function(){a.parser.draw||a.prepare()}),!1),a.regex={numberAndUnit:/^([+-]?(\\d+(\\.\\d*)?|\\.\\d+)(e[+-]?\\d+)?)([a-z%]*)$/i,hex:/^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i,rgb:/rgb\\((\\d+),(\\d+),(\\d+)\\)/,reference:/#([a-z0-9\\-_]+)/i,transforms:/\\)\\s*,?\\s*/,whitespace:/\\s/g,isHex:/^#[a-f0-9]{3,6}$/i,isRgb:/^rgb\\(/,isCss:/[^:]+:[^;]+;?/,isBlank:/^(\\s+)?$/,isNumber:/^[+-]?(\\d+(\\.\\d*)?|\\.\\d+)(e[+-]?\\d+)?$/i,isPercent:/^-?[\\d\\.]+%$/,isImage:/\\.(jpg|jpeg|png|gif|svg)(\\?[^=]+.*)?/i,delimiter:/[\\s,]+/,hyphen:/([^e])\\-/gi,pathLetters:/[MLHVCSQTAZ]/gi,isPathLetter:/[MLHVCSQTAZ]/i,numbersWithDots:/((\\d?\\.\\d+(?:e[+-]?\\d+)?)((?:\\.\\d+(?:e[+-]?\\d+)?)+))+/gi,dots:/\\./g},a.utils={map:function(t,e){for(var i=t.length,a=[],s=0;s1?1:t,new a.Color({r:~~(this.r+(this.destination.r-this.r)*t),g:~~(this.g+(this.destination.g-this.g)*t),b:~~(this.b+(this.destination.b-this.b)*t)})):this}}),a.Color.test=function(t){return t+=\"\",a.regex.isHex.test(t)||a.regex.isRgb.test(t)},a.Color.isRgb=function(t){return t&&\"number\"==typeof t.r&&\"number\"==typeof t.g&&\"number\"==typeof t.b},a.Color.isColor=function(t){return a.Color.isRgb(t)||a.Color.test(t)},a.Array=function(t,e){0==(t=(t||[]).valueOf()).length&&e&&(t=e.valueOf()),this.value=this.parse(t)},a.extend(a.Array,{toString:function(){return this.value.join(\" \")},valueOf:function(){return this.value},parse:function(t){return t=t.valueOf(),Array.isArray(t)?t:this.split(t)}}),a.PointArray=function(t,e){a.Array.call(this,t,e||[[0,0]])},a.PointArray.prototype=new a.Array,a.PointArray.prototype.constructor=a.PointArray;for(var s={M:function(t,e,i){return e.x=i.x=t[0],e.y=i.y=t[1],[\"M\",e.x,e.y]},L:function(t,e){return e.x=t[0],e.y=t[1],[\"L\",t[0],t[1]]},H:function(t,e){return e.x=t[0],[\"H\",t[0]]},V:function(t,e){return e.y=t[0],[\"V\",t[0]]},C:function(t,e){return e.x=t[4],e.y=t[5],[\"C\",t[0],t[1],t[2],t[3],t[4],t[5]]},Q:function(t,e){return e.x=t[2],e.y=t[3],[\"Q\",t[0],t[1],t[2],t[3]]},Z:function(t,e,i){return e.x=i.x,e.y=i.y,[\"Z\"]}},r=\"mlhvqtcsaz\".split(\"\"),o=0,n=r.length;ol);return r},bbox:function(){return a.parser.draw||a.prepare(),a.parser.path.setAttribute(\"d\",this.toString()),a.parser.path.getBBox()}}),a.Number=a.invent({create:function(t,e){this.value=0,this.unit=e||\"\",\"number\"==typeof t?this.value=isNaN(t)?0:isFinite(t)?t:t<0?-34e37:34e37:\"string\"==typeof t?(e=t.match(a.regex.numberAndUnit))&&(this.value=parseFloat(e[1]),\"%\"==e[5]?this.value/=100:\"s\"==e[5]&&(this.value*=1e3),this.unit=e[5]):t instanceof a.Number&&(this.value=t.valueOf(),this.unit=t.unit)},extend:{toString:function(){return(\"%\"==this.unit?~~(1e8*this.value)/1e6:\"s\"==this.unit?this.value/1e3:this.value)+this.unit},toJSON:function(){return this.toString()},valueOf:function(){return this.value},plus:function(t){return t=new a.Number(t),new a.Number(this+t,this.unit||t.unit)},minus:function(t){return t=new a.Number(t),new a.Number(this-t,this.unit||t.unit)},times:function(t){return t=new a.Number(t),new a.Number(this*t,this.unit||t.unit)},divide:function(t){return t=new a.Number(t),new a.Number(this/t,this.unit||t.unit)},to:function(t){var e=new a.Number(this);return\"string\"==typeof t&&(e.unit=t),e},morph:function(t){return this.destination=new a.Number(t),t.relative&&(this.destination.value+=this.value),this},at:function(t){return this.destination?new a.Number(this.destination).minus(this).times(t).plus(this):this}}}),a.Element=a.invent({create:function(t){this._stroke=a.defaults.attrs.stroke,this._event=null,this.dom={},(this.node=t)&&(this.type=t.nodeName,this.node.instance=this,this._stroke=t.getAttribute(\"stroke\")||this._stroke)},extend:{x:function(t){return this.attr(\"x\",t)},y:function(t){return this.attr(\"y\",t)},cx:function(t){return null==t?this.x()+this.width()/2:this.x(t-this.width()/2)},cy:function(t){return null==t?this.y()+this.height()/2:this.y(t-this.height()/2)},move:function(t,e){return this.x(t).y(e)},center:function(t,e){return this.cx(t).cy(e)},width:function(t){return this.attr(\"width\",t)},height:function(t){return this.attr(\"height\",t)},size:function(t,e){var i=u(this,t,e);return this.width(new a.Number(i.width)).height(new a.Number(i.height))},clone:function(t){this.writeDataToDom();var e=x(this.node.cloneNode(!0));return t?t.add(e):this.after(e),e},remove:function(){return this.parent()&&this.parent().removeElement(this),this},replace:function(t){return this.after(t).remove(),t},addTo:function(t){return t.put(this)},putIn:function(t){return t.add(this)},id:function(t){return this.attr(\"id\",t)},show:function(){return this.style(\"display\",\"\")},hide:function(){return this.style(\"display\",\"none\")},visible:function(){return\"none\"!=this.style(\"display\")},toString:function(){return this.attr(\"id\")},classes:function(){var t=this.attr(\"class\");return null==t?[]:t.trim().split(a.regex.delimiter)},hasClass:function(t){return-1!=this.classes().indexOf(t)},addClass:function(t){if(!this.hasClass(t)){var e=this.classes();e.push(t),this.attr(\"class\",e.join(\" \"))}return this},removeClass:function(t){return this.hasClass(t)&&this.attr(\"class\",this.classes().filter((function(e){return e!=t})).join(\" \")),this},toggleClass:function(t){return this.hasClass(t)?this.removeClass(t):this.addClass(t)},reference:function(t){return a.get(this.attr(t))},parent:function(e){var i=this;if(!i.node.parentNode)return null;if(i=a.adopt(i.node.parentNode),!e)return i;for(;i&&i.node instanceof t.SVGElement;){if(\"string\"==typeof e?i.matches(e):i instanceof e)return i;if(!i.node.parentNode||\"#document\"==i.node.parentNode.nodeName)return null;i=a.adopt(i.node.parentNode)}},doc:function(){return this instanceof a.Doc?this:this.parent(a.Doc)},parents:function(t){var e=[],i=this;do{if(!(i=i.parent(t))||!i.node)break;e.push(i)}while(i.parent);return e},matches:function(t){return function(t,e){return(t.matches||t.matchesSelector||t.msMatchesSelector||t.mozMatchesSelector||t.webkitMatchesSelector||t.oMatchesSelector).call(t,e)}(this.node,t)},native:function(){return this.node},svg:function(t){var i=e.createElement(\"svg\");if(!(t&&this instanceof a.Parent))return i.appendChild(t=e.createElement(\"svg\")),this.writeDataToDom(),t.appendChild(this.node.cloneNode(!0)),i.innerHTML.replace(/^/,\"\").replace(/<\\/svg>$/,\"\");i.innerHTML=\"\"+t.replace(/\\n/,\"\").replace(/<([\\w:-]+)([^<]+?)\\/>/g,\"<$1$2>\")+\"\";for(var s=0,r=i.firstChild.childNodes.length;s\":function(t){return-Math.cos(t*Math.PI)/2+.5},\">\":function(t){return Math.sin(t*Math.PI/2)},\"<\":function(t){return 1-Math.cos(t*Math.PI/2)}},a.morph=function(t){return function(e,i){return new a.MorphObj(e,i).at(t)}},a.Situation=a.invent({create:function(t){this.init=!1,this.reversed=!1,this.reversing=!1,this.duration=new a.Number(t.duration).valueOf(),this.delay=new a.Number(t.delay).valueOf(),this.start=+new Date+this.delay,this.finish=this.start+this.duration,this.ease=t.ease,this.loop=0,this.loops=!1,this.animations={},this.attrs={},this.styles={},this.transforms=[],this.once={}}}),a.FX=a.invent({create:function(t){this._target=t,this.situations=[],this.active=!1,this.situation=null,this.paused=!1,this.lastPos=0,this.pos=0,this.absPos=0,this._speed=1},extend:{animate:function(t,e,s){\"object\"===i(t)&&(e=t.ease,s=t.delay,t=t.duration);var r=new a.Situation({duration:t||1e3,delay:s||0,ease:a.easing[e||\"-\"]||e});return this.queue(r),this},target:function(t){return t&&t instanceof a.Element?(this._target=t,this):this._target},timeToAbsPos:function(t){return(t-this.situation.start)/(this.situation.duration/this._speed)},absPosToTime:function(t){return this.situation.duration/this._speed*t+this.situation.start},startAnimFrame:function(){this.stopAnimFrame(),this.animationFrame=t.requestAnimationFrame(function(){this.step()}.bind(this))},stopAnimFrame:function(){t.cancelAnimationFrame(this.animationFrame)},start:function(){return!this.active&&this.situation&&(this.active=!0,this.startCurrent()),this},startCurrent:function(){return this.situation.start=+new Date+this.situation.delay/this._speed,this.situation.finish=this.situation.start+this.situation.duration/this._speed,this.initAnimations().step()},queue:function(t){return(\"function\"==typeof t||t instanceof a.Situation)&&this.situations.push(t),this.situation||(this.situation=this.situations.shift()),this},dequeue:function(){return this.stop(),this.situation=this.situations.shift(),this.situation&&(this.situation instanceof a.Situation?this.start():this.situation.call(this)),this},initAnimations:function(){var t,e=this.situation;if(e.init)return this;for(var i in e.animations){t=this.target()[i](),Array.isArray(t)||(t=[t]),Array.isArray(e.animations[i])||(e.animations[i]=[e.animations[i]]);for(var s=t.length;s--;)e.animations[i][s]instanceof a.Number&&(t[s]=new a.Number(t[s])),e.animations[i][s]=t[s].morph(e.animations[i][s])}for(var i in e.attrs)e.attrs[i]=new a.MorphObj(this.target().attr(i),e.attrs[i]);for(var i in e.styles)e.styles[i]=new a.MorphObj(this.target().style(i),e.styles[i]);return e.initialTransformation=this.target().matrixify(),e.init=!0,this},clearQueue:function(){return this.situations=[],this},clearCurrent:function(){return this.situation=null,this},stop:function(t,e){var i=this.active;return this.active=!1,e&&this.clearQueue(),t&&this.situation&&(!i&&this.startCurrent(),this.atEnd()),this.stopAnimFrame(),this.clearCurrent()},after:function(t){var e=this.last();return this.target().on(\"finished.fx\",(function i(a){a.detail.situation==e&&(t.call(this,e),this.off(\"finished.fx\",i))})),this._callStart()},during:function(t){var e=this.last(),i=function(i){i.detail.situation==e&&t.call(this,i.detail.pos,a.morph(i.detail.pos),i.detail.eased,e)};return this.target().off(\"during.fx\",i).on(\"during.fx\",i),this.after((function(){this.off(\"during.fx\",i)})),this._callStart()},afterAll:function(t){var e=function e(i){t.call(this),this.off(\"allfinished.fx\",e)};return this.target().off(\"allfinished.fx\",e).on(\"allfinished.fx\",e),this._callStart()},last:function(){return this.situations.length?this.situations[this.situations.length-1]:this.situation},add:function(t,e,i){return this.last()[i||\"animations\"][t]=e,this._callStart()},step:function(t){var e,i,a;t||(this.absPos=this.timeToAbsPos(+new Date)),!1!==this.situation.loops?(e=Math.max(this.absPos,0),i=Math.floor(e),!0===this.situation.loops||ithis.lastPos&&r<=s&&(this.situation.once[r].call(this.target(),this.pos,s),delete this.situation.once[r]);return this.active&&this.target().fire(\"during\",{pos:this.pos,eased:s,fx:this,situation:this.situation}),this.situation?(this.eachAt(),1==this.pos&&!this.situation.reversed||this.situation.reversed&&0==this.pos?(this.stopAnimFrame(),this.target().fire(\"finished\",{fx:this,situation:this.situation}),this.situations.length||(this.target().fire(\"allfinished\"),this.situations.length||(this.target().off(\".fx\"),this.active=!1)),this.active?this.dequeue():this.clearCurrent()):!this.paused&&this.active&&this.startAnimFrame(),this.lastPos=s,this):this},eachAt:function(){var t,e=this,i=this.target(),s=this.situation;for(var r in s.animations)t=[].concat(s.animations[r]).map((function(t){return\"string\"!=typeof t&&t.at?t.at(s.ease(e.pos),e.pos):t})),i[r].apply(i,t);for(var r in s.attrs)t=[r].concat(s.attrs[r]).map((function(t){return\"string\"!=typeof t&&t.at?t.at(s.ease(e.pos),e.pos):t})),i.attr.apply(i,t);for(var r in s.styles)t=[r].concat(s.styles[r]).map((function(t){return\"string\"!=typeof t&&t.at?t.at(s.ease(e.pos),e.pos):t})),i.style.apply(i,t);if(s.transforms.length){t=s.initialTransformation,r=0;for(var o=s.transforms.length;r=0;--s)this[m[s]]=null!=t[m[s]]?t[m[s]]:e[m[s]]},extend:{extract:function(){var t=f(this,0,1);f(this,1,0);var e=180/Math.PI*Math.atan2(t.y,t.x)-90;return{x:this.e,y:this.f,transformedX:(this.e*Math.cos(e*Math.PI/180)+this.f*Math.sin(e*Math.PI/180))/Math.sqrt(this.a*this.a+this.b*this.b),transformedY:(this.f*Math.cos(e*Math.PI/180)+this.e*Math.sin(-e*Math.PI/180))/Math.sqrt(this.c*this.c+this.d*this.d),rotation:e,a:this.a,b:this.b,c:this.c,d:this.d,e:this.e,f:this.f,matrix:new a.Matrix(this)}},clone:function(){return new a.Matrix(this)},morph:function(t){return this.destination=new a.Matrix(t),this},multiply:function(t){return new a.Matrix(this.native().multiply(function(t){return t instanceof a.Matrix||(t=new a.Matrix(t)),t}(t).native()))},inverse:function(){return new a.Matrix(this.native().inverse())},translate:function(t,e){return new a.Matrix(this.native().translate(t||0,e||0))},native:function(){for(var t=a.parser.native.createSVGMatrix(),e=m.length-1;e>=0;e--)t[m[e]]=this[m[e]];return t},toString:function(){return\"matrix(\"+v(this.a)+\",\"+v(this.b)+\",\"+v(this.c)+\",\"+v(this.d)+\",\"+v(this.e)+\",\"+v(this.f)+\")\"}},parent:a.Element,construct:{ctm:function(){return new a.Matrix(this.node.getCTM())},screenCTM:function(){if(this instanceof a.Nested){var t=this.rect(1,1),e=t.node.getScreenCTM();return t.remove(),new a.Matrix(e)}return new a.Matrix(this.node.getScreenCTM())}}}),a.Point=a.invent({create:function(t,e){var a;a=Array.isArray(t)?{x:t[0],y:t[1]}:\"object\"===i(t)?{x:t.x,y:t.y}:null!=t?{x:t,y:null!=e?e:t}:{x:0,y:0},this.x=a.x,this.y=a.y},extend:{clone:function(){return new a.Point(this)},morph:function(t,e){return this.destination=new a.Point(t,e),this}}}),a.extend(a.Element,{point:function(t,e){return new a.Point(t,e).transform(this.screenCTM().inverse())}}),a.extend(a.Element,{attr:function(t,e,s){if(null==t){for(t={},s=(e=this.node.attributes).length-1;s>=0;s--)t[e[s].nodeName]=a.regex.isNumber.test(e[s].nodeValue)?parseFloat(e[s].nodeValue):e[s].nodeValue;return t}if(\"object\"===i(t))for(var r in t)this.attr(r,t[r]);else if(null===e)this.node.removeAttribute(t);else{if(null==e)return null==(e=this.node.getAttribute(t))?a.defaults.attrs[t]:a.regex.isNumber.test(e)?parseFloat(e):e;\"stroke-width\"==t?this.attr(\"stroke\",parseFloat(e)>0?this._stroke:null):\"stroke\"==t&&(this._stroke=e),\"fill\"!=t&&\"stroke\"!=t||(a.regex.isImage.test(e)&&(e=this.doc().defs().image(e,0,0)),e instanceof a.Image&&(e=this.doc().defs().pattern(0,0,(function(){this.add(e)})))),\"number\"==typeof e?e=new a.Number(e):a.Color.isColor(e)?e=new a.Color(e):Array.isArray(e)&&(e=new a.Array(e)),\"leading\"==t?this.leading&&this.leading(e):\"string\"==typeof s?this.node.setAttributeNS(s,t,e.toString()):this.node.setAttribute(t,e.toString()),!this.rebuild||\"font-size\"!=t&&\"x\"!=t||this.rebuild(t,e)}return this}}),a.extend(a.Element,{transform:function(t,e){var s;return\"object\"!==i(t)?(s=new a.Matrix(this).extract(),\"string\"==typeof t?s[t]:s):(s=new a.Matrix(this),e=!!e||!!t.relative,null!=t.a&&(s=e?s.multiply(new a.Matrix(t)):new a.Matrix(t)),this.attr(\"transform\",s))}}),a.extend(a.Element,{untransform:function(){return this.attr(\"transform\",null)},matrixify:function(){return(this.attr(\"transform\")||\"\").split(a.regex.transforms).slice(0,-1).map((function(t){var e=t.trim().split(\"(\");return[e[0],e[1].split(a.regex.delimiter).map((function(t){return parseFloat(t)}))]})).reduce((function(t,e){return\"matrix\"==e[0]?t.multiply(p(e[1])):t[e[0]].apply(t,e[1])}),new a.Matrix)},toParent:function(t){if(this==t)return this;var e=this.screenCTM(),i=t.screenCTM().inverse();return this.addTo(t).untransform().transform(i.multiply(e)),this},toDoc:function(){return this.toParent(this.doc())}}),a.Transformation=a.invent({create:function(t,e){if(arguments.length>1&&\"boolean\"!=typeof e)return this.constructor.call(this,[].slice.call(arguments));if(Array.isArray(t))for(var a=0,s=this.arguments.length;a=0},index:function(t){return[].slice.call(this.node.childNodes).indexOf(t.node)},get:function(t){return a.adopt(this.node.childNodes[t])},first:function(){return this.get(0)},last:function(){return this.get(this.node.childNodes.length-1)},each:function(t,e){for(var i=this.children(),s=0,r=i.length;s=0;i--)e.childNodes[i]instanceof t.SVGElement&&x(e.childNodes[i]);return a.adopt(e).id(a.eid(e.nodeName))}function b(t){return null==t.x&&(t.x=0,t.y=0,t.width=0,t.height=0),t.w=t.width,t.h=t.height,t.x2=t.x+t.width,t.y2=t.y+t.height,t.cx=t.x+t.width/2,t.cy=t.y+t.height/2,t}function v(t){return Math.abs(t)>1e-37?t:0}[\"fill\",\"stroke\"].forEach((function(t){var e={};e[t]=function(e){if(void 0===e)return this;if(\"string\"==typeof e||a.Color.isRgb(e)||e&&\"function\"==typeof e.fill)this.attr(t,e);else for(var i=l[t].length-1;i>=0;i--)null!=e[l[t][i]]&&this.attr(l.prefix(t,l[t][i]),e[l[t][i]]);return this},a.extend(a.Element,a.FX,e)})),a.extend(a.Element,a.FX,{translate:function(t,e){return this.transform({x:t,y:e})},matrix:function(t){return this.attr(\"transform\",new a.Matrix(6==arguments.length?[].slice.call(arguments):t))},opacity:function(t){return this.attr(\"opacity\",t)},dx:function(t){return this.x(new a.Number(t).plus(this instanceof a.FX?0:this.x()),!0)},dy:function(t){return this.y(new a.Number(t).plus(this instanceof a.FX?0:this.y()),!0)}}),a.extend(a.Path,{length:function(){return this.node.getTotalLength()},pointAt:function(t){return this.node.getPointAtLength(t)}}),a.Set=a.invent({create:function(t){Array.isArray(t)?this.members=t:this.clear()},extend:{add:function(){for(var t=[].slice.call(arguments),e=0,i=t.length;e-1&&this.members.splice(e,1),this},each:function(t){for(var e=0,i=this.members.length;e=0},index:function(t){return this.members.indexOf(t)},get:function(t){return this.members[t]},first:function(){return this.get(0)},last:function(){return this.get(this.members.length-1)},valueOf:function(){return this.members}},construct:{set:function(t){return new a.Set(t)}}}),a.FX.Set=a.invent({create:function(t){this.set=t}}),a.Set.inherit=function(){var t=[];for(var e in a.Shape.prototype)\"function\"==typeof a.Shape.prototype[e]&&\"function\"!=typeof a.Set.prototype[e]&&t.push(e);for(var e in t.forEach((function(t){a.Set.prototype[t]=function(){for(var e=0,i=this.members.length;e=0;t--)delete this.memory()[arguments[t]];return this},memory:function(){return this._memory||(this._memory={})}}),a.get=function(t){var i=e.getElementById(function(t){var e=(t||\"\").toString().match(a.regex.reference);if(e)return e[1]}(t)||t);return a.adopt(i)},a.select=function(t,i){return new a.Set(a.utils.map((i||e).querySelectorAll(t),(function(t){return a.adopt(t)})))},a.extend(a.Parent,{select:function(t){return a.select(t,this.node)}});var m=\"abcdef\".split(\"\");if(\"function\"!=typeof t.CustomEvent){var y=function(t,i){i=i||{bubbles:!1,cancelable:!1,detail:void 0};var a=e.createEvent(\"CustomEvent\");return a.initCustomEvent(t,i.bubbles,i.cancelable,i.detail),a};y.prototype=t.Event.prototype,a.CustomEvent=y}else a.CustomEvent=t.CustomEvent;return a},\"function\"==typeof define&&define.amd?define((function(){return Et(Xt,Xt.document)})):\"object\"===(\"undefined\"==typeof exports?\"undefined\":i(exports))&&\"undefined\"!=typeof module?module.exports=Xt.document?Et(Xt,Xt.document):function(t){return Et(t,t.document)}:Xt.SVG=Et(Xt,Xt.document),\n/*! svg.filter.js - v2.0.2 - 2016-02-24\n * https://github.com/wout/svg.filter.js\n * Copyright (c) 2016 Wout Fierens; Licensed MIT */\nfunction(){SVG.Filter=SVG.invent({create:\"filter\",inherit:SVG.Parent,extend:{source:\"SourceGraphic\",sourceAlpha:\"SourceAlpha\",background:\"BackgroundImage\",backgroundAlpha:\"BackgroundAlpha\",fill:\"FillPaint\",stroke:\"StrokePaint\",autoSetIn:!0,put:function(t,e){return this.add(t,e),!t.attr(\"in\")&&this.autoSetIn&&t.attr(\"in\",this.source),t.attr(\"result\")||t.attr(\"result\",t),t},blend:function(t,e,i){return this.put(new SVG.BlendEffect(t,e,i))},colorMatrix:function(t,e){return this.put(new SVG.ColorMatrixEffect(t,e))},convolveMatrix:function(t){return this.put(new SVG.ConvolveMatrixEffect(t))},componentTransfer:function(t){return this.put(new SVG.ComponentTransferEffect(t))},composite:function(t,e,i){return this.put(new SVG.CompositeEffect(t,e,i))},flood:function(t,e){return this.put(new SVG.FloodEffect(t,e))},offset:function(t,e){return this.put(new SVG.OffsetEffect(t,e))},image:function(t){return this.put(new SVG.ImageEffect(t))},merge:function(){var t=[void 0];for(var e in arguments)t.push(arguments[e]);return this.put(new(SVG.MergeEffect.bind.apply(SVG.MergeEffect,t)))},gaussianBlur:function(t,e){return this.put(new SVG.GaussianBlurEffect(t,e))},morphology:function(t,e){return this.put(new SVG.MorphologyEffect(t,e))},diffuseLighting:function(t,e,i){return this.put(new SVG.DiffuseLightingEffect(t,e,i))},displacementMap:function(t,e,i,a,s){return this.put(new SVG.DisplacementMapEffect(t,e,i,a,s))},specularLighting:function(t,e,i,a){return this.put(new SVG.SpecularLightingEffect(t,e,i,a))},tile:function(){return this.put(new SVG.TileEffect)},turbulence:function(t,e,i,a,s){return this.put(new SVG.TurbulenceEffect(t,e,i,a,s))},toString:function(){return\"url(#\"+this.attr(\"id\")+\")\"}}}),SVG.extend(SVG.Defs,{filter:function(t){var e=this.put(new SVG.Filter);return\"function\"==typeof t&&t.call(e,e),e}}),SVG.extend(SVG.Container,{filter:function(t){return this.defs().filter(t)}}),SVG.extend(SVG.Element,SVG.G,SVG.Nested,{filter:function(t){return this.filterer=t instanceof SVG.Element?t:this.doc().filter(t),this.doc()&&this.filterer.doc()!==this.doc()&&this.doc().defs().add(this.filterer),this.attr(\"filter\",this.filterer),this.filterer},unfilter:function(t){return this.filterer&&!0===t&&this.filterer.remove(),delete this.filterer,this.attr(\"filter\",null)}}),SVG.Effect=SVG.invent({create:function(){this.constructor.call(this)},inherit:SVG.Element,extend:{in:function(t){return null==t?this.parent()&&this.parent().select('[result=\"'+this.attr(\"in\")+'\"]').get(0)||this.attr(\"in\"):this.attr(\"in\",t)},result:function(t){return null==t?this.attr(\"result\"):this.attr(\"result\",t)},toString:function(){return this.result()}}}),SVG.ParentEffect=SVG.invent({create:function(){this.constructor.call(this)},inherit:SVG.Parent,extend:{in:function(t){return null==t?this.parent()&&this.parent().select('[result=\"'+this.attr(\"in\")+'\"]').get(0)||this.attr(\"in\"):this.attr(\"in\",t)},result:function(t){return null==t?this.attr(\"result\"):this.attr(\"result\",t)},toString:function(){return this.result()}}});var t={blend:function(t,e){return this.parent()&&this.parent().blend(this,t,e)},colorMatrix:function(t,e){return this.parent()&&this.parent().colorMatrix(t,e).in(this)},convolveMatrix:function(t){return this.parent()&&this.parent().convolveMatrix(t).in(this)},componentTransfer:function(t){return this.parent()&&this.parent().componentTransfer(t).in(this)},composite:function(t,e){return this.parent()&&this.parent().composite(this,t,e)},flood:function(t,e){return this.parent()&&this.parent().flood(t,e)},offset:function(t,e){return this.parent()&&this.parent().offset(t,e).in(this)},image:function(t){return this.parent()&&this.parent().image(t)},merge:function(){return this.parent()&&this.parent().merge.apply(this.parent(),[this].concat(arguments))},gaussianBlur:function(t,e){return this.parent()&&this.parent().gaussianBlur(t,e).in(this)},morphology:function(t,e){return this.parent()&&this.parent().morphology(t,e).in(this)},diffuseLighting:function(t,e,i){return this.parent()&&this.parent().diffuseLighting(t,e,i).in(this)},displacementMap:function(t,e,i,a){return this.parent()&&this.parent().displacementMap(this,t,e,i,a)},specularLighting:function(t,e,i,a){return this.parent()&&this.parent().specularLighting(t,e,i,a).in(this)},tile:function(){return this.parent()&&this.parent().tile().in(this)},turbulence:function(t,e,i,a,s){return this.parent()&&this.parent().turbulence(t,e,i,a,s).in(this)}};SVG.extend(SVG.Effect,t),SVG.extend(SVG.ParentEffect,t),SVG.ChildEffect=SVG.invent({create:function(){this.constructor.call(this)},inherit:SVG.Element,extend:{in:function(t){this.attr(\"in\",t)}}});var e={blend:function(t,e,i){this.attr({in:t,in2:e,mode:i||\"normal\"})},colorMatrix:function(t,e){\"matrix\"==t&&(e=s(e)),this.attr({type:t,values:void 0===e?null:e})},convolveMatrix:function(t){t=s(t),this.attr({order:Math.sqrt(t.split(\" \").length),kernelMatrix:t})},composite:function(t,e,i){this.attr({in:t,in2:e,operator:i})},flood:function(t,e){this.attr(\"flood-color\",t),null!=e&&this.attr(\"flood-opacity\",e)},offset:function(t,e){this.attr({dx:t,dy:e})},image:function(t){this.attr(\"href\",t,SVG.xlink)},displacementMap:function(t,e,i,a,s){this.attr({in:t,in2:e,scale:i,xChannelSelector:a,yChannelSelector:s})},gaussianBlur:function(t,e){null!=t||null!=e?this.attr(\"stdDeviation\",r(Array.prototype.slice.call(arguments))):this.attr(\"stdDeviation\",\"0 0\")},morphology:function(t,e){this.attr({operator:t,radius:e})},tile:function(){},turbulence:function(t,e,i,a,s){this.attr({numOctaves:e,seed:i,stitchTiles:a,baseFrequency:t,type:s})}},i={merge:function(){var t;if(arguments[0]instanceof SVG.Set){var e=this;arguments[0].each((function(t){this instanceof SVG.MergeNode?e.put(this):(this instanceof SVG.Effect||this instanceof SVG.ParentEffect)&&e.put(new SVG.MergeNode(this))}))}else{t=Array.isArray(arguments[0])?arguments[0]:arguments;for(var i=0;i1&&(T*=a=Math.sqrt(a),M*=a);s=(new SVG.Matrix).rotate(I).scale(1/T,1/M).rotate(-I),F=F.transform(s),R=R.transform(s),r=[R.x-F.x,R.y-F.y],n=r[0]*r[0]+r[1]*r[1],o=Math.sqrt(n),r[0]/=o,r[1]/=o,l=n<4?Math.sqrt(1-n/4):0,z===X&&(l*=-1);h=new SVG.Point((R.x+F.x)/2+l*-r[1],(R.y+F.y)/2+l*r[0]),c=new SVG.Point(F.x-h.x,F.y-h.y),d=new SVG.Point(R.x-h.x,R.y-h.y),g=Math.acos(c.x/Math.sqrt(c.x*c.x+c.y*c.y)),c.y<0&&(g*=-1);u=Math.acos(d.x/Math.sqrt(d.x*d.x+d.y*d.y)),d.y<0&&(u*=-1);X&&g>u&&(u+=2*Math.PI);!X&&gr.maxX-e.width&&(o=(a=r.maxX-e.width)-this.startPoints.box.x),null!=r.minY&&sr.maxY-e.height&&(n=(s=r.maxY-e.height)-this.startPoints.box.y),null!=r.snapToGrid&&(a-=a%r.snapToGrid,s-=s%r.snapToGrid,o-=o%r.snapToGrid,n-=n%r.snapToGrid),this.el instanceof SVG.G?this.el.matrix(this.startPoints.transform).transform({x:o,y:n},!0):this.el.move(a,s));return i},t.prototype.end=function(t){var e=this.drag(t);this.el.fire(\"dragend\",{event:t,p:e,m:this.m,handler:this}),SVG.off(window,\"mousemove.drag\"),SVG.off(window,\"touchmove.drag\"),SVG.off(window,\"mouseup.drag\"),SVG.off(window,\"touchend.drag\")},SVG.extend(SVG.Element,{draggable:function(e,i){\"function\"!=typeof e&&\"object\"!=typeof e||(i=e,e=!0);var a=this.remember(\"_draggable\")||new t(this);return(e=void 0===e||e)?a.init(i||{},e):(this.off(\"mousedown.drag\"),this.off(\"touchstart.drag\")),this}})}.call(void 0),function(){function t(t){this.el=t,t.remember(\"_selectHandler\",this),this.pointSelection={isSelected:!1},this.rectSelection={isSelected:!1},this.pointsList={lt:[0,0],rt:[\"width\",0],rb:[\"width\",\"height\"],lb:[0,\"height\"],t:[\"width\",0],r:[\"width\",\"height\"],b:[\"width\",\"height\"],l:[0,\"height\"]},this.pointCoord=function(t,e,i){var a=\"string\"!=typeof t?t:e[t];return i?a/2:a},this.pointCoords=function(t,e){var i=this.pointsList[t];return{x:this.pointCoord(i[0],e,\"t\"===t||\"b\"===t),y:this.pointCoord(i[1],e,\"r\"===t||\"l\"===t)}}}t.prototype.init=function(t,e){var i=this.el.bbox();this.options={};var a=this.el.selectize.defaults.points;for(var s in this.el.selectize.defaults)this.options[s]=this.el.selectize.defaults[s],void 0!==e[s]&&(this.options[s]=e[s]);var r=[\"points\",\"pointsExclude\"];for(var s in r){var o=this.options[r[s]];\"string\"==typeof o?o=o.length>0?o.split(/\\s*,\\s*/i):[]:\"boolean\"==typeof o&&\"points\"===r[s]&&(o=o?a:[]),this.options[r[s]]=o}this.options.points=[a,this.options.points].reduce((function(t,e){return t.filter((function(t){return e.indexOf(t)>-1}))})),this.options.points=[this.options.points,this.options.pointsExclude].reduce((function(t,e){return t.filter((function(t){return e.indexOf(t)<0}))})),this.parent=this.el.parent(),this.nested=this.nested||this.parent.group(),this.nested.matrix(new SVG.Matrix(this.el).translate(i.x,i.y)),this.options.deepSelect&&-1!==[\"line\",\"polyline\",\"polygon\"].indexOf(this.el.type)?this.selectPoints(t):this.selectRect(t),this.observe(),this.cleanup()},t.prototype.selectPoints=function(t){return this.pointSelection.isSelected=t,this.pointSelection.set||(this.pointSelection.set=this.parent.set(),this.drawPoints()),this},t.prototype.getPointArray=function(){var t=this.el.bbox();return this.el.array().valueOf().map((function(e){return[e[0]-t.x,e[1]-t.y]}))},t.prototype.drawPoints=function(){for(var t=this,e=this.getPointArray(),i=0,a=e.length;i0&&this.parameters.box.height-i[1]>0){if(\"text\"===this.parameters.type)return this.el.move(this.parameters.box.x+i[0],this.parameters.box.y),void this.el.attr(\"font-size\",this.parameters.fontSize-i[0]);i=this.checkAspectRatio(i),this.el.move(this.parameters.box.x+i[0],this.parameters.box.y+i[1]).size(this.parameters.box.width-i[0],this.parameters.box.height-i[1])}};break;case\"rt\":this.calc=function(t,e){var i=this.snapToGrid(t,e,2);if(this.parameters.box.width+i[0]>0&&this.parameters.box.height-i[1]>0){if(\"text\"===this.parameters.type)return this.el.move(this.parameters.box.x-i[0],this.parameters.box.y),void this.el.attr(\"font-size\",this.parameters.fontSize+i[0]);i=this.checkAspectRatio(i,!0),this.el.move(this.parameters.box.x,this.parameters.box.y+i[1]).size(this.parameters.box.width+i[0],this.parameters.box.height-i[1])}};break;case\"rb\":this.calc=function(t,e){var i=this.snapToGrid(t,e,0);if(this.parameters.box.width+i[0]>0&&this.parameters.box.height+i[1]>0){if(\"text\"===this.parameters.type)return this.el.move(this.parameters.box.x-i[0],this.parameters.box.y),void this.el.attr(\"font-size\",this.parameters.fontSize+i[0]);i=this.checkAspectRatio(i),this.el.move(this.parameters.box.x,this.parameters.box.y).size(this.parameters.box.width+i[0],this.parameters.box.height+i[1])}};break;case\"lb\":this.calc=function(t,e){var i=this.snapToGrid(t,e,1);if(this.parameters.box.width-i[0]>0&&this.parameters.box.height+i[1]>0){if(\"text\"===this.parameters.type)return this.el.move(this.parameters.box.x+i[0],this.parameters.box.y),void this.el.attr(\"font-size\",this.parameters.fontSize-i[0]);i=this.checkAspectRatio(i,!0),this.el.move(this.parameters.box.x+i[0],this.parameters.box.y).size(this.parameters.box.width-i[0],this.parameters.box.height+i[1])}};break;case\"t\":this.calc=function(t,e){var i=this.snapToGrid(t,e,2);if(this.parameters.box.height-i[1]>0){if(\"text\"===this.parameters.type)return;this.el.move(this.parameters.box.x,this.parameters.box.y+i[1]).height(this.parameters.box.height-i[1])}};break;case\"r\":this.calc=function(t,e){var i=this.snapToGrid(t,e,0);if(this.parameters.box.width+i[0]>0){if(\"text\"===this.parameters.type)return;this.el.move(this.parameters.box.x,this.parameters.box.y).width(this.parameters.box.width+i[0])}};break;case\"b\":this.calc=function(t,e){var i=this.snapToGrid(t,e,0);if(this.parameters.box.height+i[1]>0){if(\"text\"===this.parameters.type)return;this.el.move(this.parameters.box.x,this.parameters.box.y).height(this.parameters.box.height+i[1])}};break;case\"l\":this.calc=function(t,e){var i=this.snapToGrid(t,e,1);if(this.parameters.box.width-i[0]>0){if(\"text\"===this.parameters.type)return;this.el.move(this.parameters.box.x+i[0],this.parameters.box.y).width(this.parameters.box.width-i[0])}};break;case\"rot\":this.calc=function(t,e){var i=t+this.parameters.p.x,a=e+this.parameters.p.y,s=Math.atan2(this.parameters.p.y-this.parameters.box.y-this.parameters.box.height/2,this.parameters.p.x-this.parameters.box.x-this.parameters.box.width/2),r=Math.atan2(a-this.parameters.box.y-this.parameters.box.height/2,i-this.parameters.box.x-this.parameters.box.width/2),o=this.parameters.rotation+180*(r-s)/Math.PI+this.options.snapToAngle/2;this.el.center(this.parameters.box.cx,this.parameters.box.cy).rotate(o-o%this.options.snapToAngle,this.parameters.box.cx,this.parameters.box.cy)};break;case\"point\":this.calc=function(t,e){var i=this.snapToGrid(t,e,this.parameters.pointCoords[0],this.parameters.pointCoords[1]),a=this.el.array().valueOf();a[this.parameters.i][0]=this.parameters.pointCoords[0]+i[0],a[this.parameters.i][1]=this.parameters.pointCoords[1]+i[1],this.el.plot(a)}}this.el.fire(\"resizestart\",{dx:this.parameters.x,dy:this.parameters.y,event:t}),SVG.on(window,\"touchmove.resize\",(function(t){e.update(t||window.event)})),SVG.on(window,\"touchend.resize\",(function(){e.done()})),SVG.on(window,\"mousemove.resize\",(function(t){e.update(t||window.event)})),SVG.on(window,\"mouseup.resize\",(function(){e.done()}))},t.prototype.update=function(t){if(t){var e=this._extractPosition(t),i=this.transformPoint(e.x,e.y),a=i.x-this.parameters.p.x,s=i.y-this.parameters.p.y;this.lastUpdateCall=[a,s],this.calc(a,s),this.el.fire(\"resizing\",{dx:a,dy:s,event:t})}else this.lastUpdateCall&&this.calc(this.lastUpdateCall[0],this.lastUpdateCall[1])},t.prototype.done=function(){this.lastUpdateCall=null,SVG.off(window,\"mousemove.resize\"),SVG.off(window,\"mouseup.resize\"),SVG.off(window,\"touchmove.resize\"),SVG.off(window,\"touchend.resize\"),this.el.fire(\"resizedone\")},t.prototype.snapToGrid=function(t,e,i,a){var s;return void 0!==a?s=[(i+t)%this.options.snapToGrid,(a+e)%this.options.snapToGrid]:(i=null==i?3:i,s=[(this.parameters.box.x+t+(1&i?0:this.parameters.box.width))%this.options.snapToGrid,(this.parameters.box.y+e+(2&i?0:this.parameters.box.height))%this.options.snapToGrid]),t<0&&(s[0]-=this.options.snapToGrid),e<0&&(s[1]-=this.options.snapToGrid),t-=Math.abs(s[0])o.maxX&&(t=o.maxX-s),void 0!==o.minY&&r+eo.maxY&&(e=o.maxY-r),[t,e]},t.prototype.checkAspectRatio=function(t,e){if(!this.options.saveAspectRatio)return t;var i=t.slice(),a=this.parameters.box.width/this.parameters.box.height,s=this.parameters.box.width+t[0],r=this.parameters.box.height-t[1],o=s/r;return oa&&(i[0]=this.parameters.box.width-r*a,e&&(i[0]=-i[0])),i},SVG.extend(SVG.Element,{resize:function(e){return(this.remember(\"_resizeHandler\")||new t(this)).init(e||{}),this}}),SVG.Element.prototype.resize.defaults={snapToAngle:.1,snapToGrid:1,constraint:{},saveAspectRatio:!1}}).call(this)}(),void 0===window.Apex&&(window.Apex={});var Ot=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"initModules\",value:function(){this.ctx.publicMethods=[\"updateOptions\",\"updateSeries\",\"appendData\",\"appendSeries\",\"toggleSeries\",\"showSeries\",\"hideSeries\",\"setLocale\",\"resetSeries\",\"zoomX\",\"toggleDataPointSelection\",\"dataURI\",\"exportToCSV\",\"addXaxisAnnotation\",\"addYaxisAnnotation\",\"addPointAnnotation\",\"clearAnnotations\",\"removeAnnotation\",\"paper\",\"destroy\"],this.ctx.eventList=[\"click\",\"mousedown\",\"mousemove\",\"mouseleave\",\"touchstart\",\"touchmove\",\"touchleave\",\"mouseup\",\"touchend\"],this.ctx.animations=new b(this.ctx),this.ctx.axes=new J(this.ctx),this.ctx.core=new Dt(this.ctx.el,this.ctx),this.ctx.config=new X({}),this.ctx.data=new N(this.ctx),this.ctx.grid=new j(this.ctx),this.ctx.graphics=new m(this.ctx),this.ctx.coreUtils=new y(this.ctx),this.ctx.crosshairs=new Q(this.ctx),this.ctx.events=new Z(this.ctx),this.ctx.exports=new G(this.ctx),this.ctx.localization=new $(this.ctx),this.ctx.options=new L,this.ctx.responsive=new K(this.ctx),this.ctx.series=new O(this.ctx),this.ctx.theme=new tt(this.ctx),this.ctx.formatters=new W(this.ctx),this.ctx.titleSubtitle=new et(this.ctx),this.ctx.legend=new lt(this.ctx),this.ctx.toolbar=new ht(this.ctx),this.ctx.tooltip=new bt(this.ctx),this.ctx.dimensions=new ot(this.ctx),this.ctx.updateHelpers=new Ht(this.ctx),this.ctx.zoomPanSelection=new ct(this.ctx),this.ctx.w.globals.tooltip=new bt(this.ctx)}}]),t}(),Nt=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"clear\",value:function(t){var e=t.isUpdating;this.ctx.zoomPanSelection&&this.ctx.zoomPanSelection.destroy(),this.ctx.toolbar&&this.ctx.toolbar.destroy(),this.ctx.animations=null,this.ctx.axes=null,this.ctx.annotations=null,this.ctx.core=null,this.ctx.data=null,this.ctx.grid=null,this.ctx.series=null,this.ctx.responsive=null,this.ctx.theme=null,this.ctx.formatters=null,this.ctx.titleSubtitle=null,this.ctx.legend=null,this.ctx.dimensions=null,this.ctx.options=null,this.ctx.crosshairs=null,this.ctx.zoomPanSelection=null,this.ctx.updateHelpers=null,this.ctx.toolbar=null,this.ctx.localization=null,this.ctx.w.globals.tooltip=null,this.clearDomElements({isUpdating:e})}},{key:\"killSVG\",value:function(t){t.each((function(t,e){this.removeClass(\"*\"),this.off(),this.stop()}),!0),t.ungroup(),t.clear()}},{key:\"clearDomElements\",value:function(t){var e=this,i=t.isUpdating,a=this.w.globals.dom.Paper.node;a.parentNode&&a.parentNode.parentNode&&!i&&(a.parentNode.parentNode.style.minHeight=\"unset\");var s=this.w.globals.dom.baseEl;s&&this.ctx.eventList.forEach((function(t){s.removeEventListener(t,e.ctx.events.documentEvent)}));var r=this.w.globals.dom;if(null!==this.ctx.el)for(;this.ctx.el.firstChild;)this.ctx.el.removeChild(this.ctx.el.firstChild);this.killSVG(r.Paper),r.Paper.remove(),r.elWrap=null,r.elGraphical=null,r.elAnnotations=null,r.elLegendWrap=null,r.baseEl=null,r.elGridRect=null,r.elGridRectMask=null,r.elGridRectMarkerMask=null,r.elForecastMask=null,r.elNonForecastMask=null,r.elDefs=null}}]),t}(),Wt=new WeakMap;var Bt=function(){function t(e,i){a(this,t),this.opts=i,this.ctx=this,this.w=new Y(i).init(),this.el=e,this.w.globals.cuid=x.randomId(),this.w.globals.chartID=this.w.config.chart.id?x.escapeString(this.w.config.chart.id):this.w.globals.cuid,new Ot(this).initModules(),this.create=x.bind(this.create,this),this.windowResizeHandler=this._windowResizeHandler.bind(this),this.parentResizeHandler=this._parentResizeCallback.bind(this)}return r(t,[{key:\"render\",value:function(){var t=this;return new Promise((function(e,i){if(null!==t.el){void 0===Apex._chartInstances&&(Apex._chartInstances=[]),t.w.config.chart.id&&Apex._chartInstances.push({id:t.w.globals.chartID,group:t.w.config.chart.group,chart:t}),t.setLocale(t.w.config.chart.defaultLocale);var a=t.w.config.chart.events.beforeMount;if(\"function\"==typeof a&&a(t,t.w),t.events.fireEvent(\"beforeMount\",[t,t.w]),window.addEventListener(\"resize\",t.windowResizeHandler),function(t,e){var i=!1;if(t.nodeType!==Node.DOCUMENT_FRAGMENT_NODE){var a=t.getBoundingClientRect();\"none\"!==t.style.display&&0!==a.width||(i=!0)}var s=new ResizeObserver((function(a){i&&e.call(t,a),i=!0}));t.nodeType===Node.DOCUMENT_FRAGMENT_NODE?Array.from(t.children).forEach((function(t){return s.observe(t)})):s.observe(t),Wt.set(e,s)}(t.el.parentNode,t.parentResizeHandler),!t.css){var s=t.el.getRootNode&&t.el.getRootNode(),r=x.is(\"ShadowRoot\",s),o=t.el.ownerDocument,n=o.getElementById(\"apexcharts-css\");!r&&n||(t.css=document.createElement(\"style\"),t.css.id=\"apexcharts-css\",t.css.textContent='@keyframes opaque {\\n 0% {\\n opacity: 0\\n }\\n\\n to {\\n opacity: 1\\n }\\n}\\n\\n@keyframes resizeanim {\\n 0%,to {\\n opacity: 0\\n }\\n}\\n\\n.apexcharts-canvas {\\n position: relative;\\n user-select: none\\n}\\n\\n.apexcharts-canvas ::-webkit-scrollbar {\\n -webkit-appearance: none;\\n width: 6px\\n}\\n\\n.apexcharts-canvas ::-webkit-scrollbar-thumb {\\n border-radius: 4px;\\n background-color: rgba(0,0,0,.5);\\n box-shadow: 0 0 1px rgba(255,255,255,.5);\\n -webkit-box-shadow: 0 0 1px rgba(255,255,255,.5)\\n}\\n\\n.apexcharts-inner {\\n position: relative\\n}\\n\\n.apexcharts-text tspan {\\n font-family: inherit\\n}\\n\\n.legend-mouseover-inactive {\\n transition: .15s ease all;\\n opacity: .2\\n}\\n\\n.apexcharts-legend-text {\\n padding-left: 15px;\\n margin-left: -15px;\\n}\\n\\n.apexcharts-series-collapsed {\\n opacity: 0\\n}\\n\\n.apexcharts-tooltip {\\n border-radius: 5px;\\n box-shadow: 2px 2px 6px -4px #999;\\n cursor: default;\\n font-size: 14px;\\n left: 62px;\\n opacity: 0;\\n pointer-events: none;\\n position: absolute;\\n top: 20px;\\n display: flex;\\n flex-direction: column;\\n overflow: hidden;\\n white-space: nowrap;\\n z-index: 12;\\n transition: .15s ease all\\n}\\n\\n.apexcharts-tooltip.apexcharts-active {\\n opacity: 1;\\n transition: .15s ease all\\n}\\n\\n.apexcharts-tooltip.apexcharts-theme-light {\\n border: 1px solid #e3e3e3;\\n background: rgba(255,255,255,.96)\\n}\\n\\n.apexcharts-tooltip.apexcharts-theme-dark {\\n color: #fff;\\n background: rgba(30,30,30,.8)\\n}\\n\\n.apexcharts-tooltip * {\\n font-family: inherit\\n}\\n\\n.apexcharts-tooltip-title {\\n padding: 6px;\\n font-size: 15px;\\n margin-bottom: 4px\\n}\\n\\n.apexcharts-tooltip.apexcharts-theme-light .apexcharts-tooltip-title {\\n background: #eceff1;\\n border-bottom: 1px solid #ddd\\n}\\n\\n.apexcharts-tooltip.apexcharts-theme-dark .apexcharts-tooltip-title {\\n background: rgba(0,0,0,.7);\\n border-bottom: 1px solid #333\\n}\\n\\n.apexcharts-tooltip-text-goals-value,.apexcharts-tooltip-text-y-value,.apexcharts-tooltip-text-z-value {\\n display: inline-block;\\n margin-left: 5px;\\n font-weight: 600\\n}\\n\\n.apexcharts-tooltip-text-goals-label:empty,.apexcharts-tooltip-text-goals-value:empty,.apexcharts-tooltip-text-y-label:empty,.apexcharts-tooltip-text-y-value:empty,.apexcharts-tooltip-text-z-value:empty,.apexcharts-tooltip-title:empty {\\n display: none\\n}\\n\\n.apexcharts-tooltip-text-goals-label,.apexcharts-tooltip-text-goals-value {\\n padding: 6px 0 5px\\n}\\n\\n.apexcharts-tooltip-goals-group,.apexcharts-tooltip-text-goals-label,.apexcharts-tooltip-text-goals-value {\\n display: flex\\n}\\n\\n.apexcharts-tooltip-text-goals-label:not(:empty),.apexcharts-tooltip-text-goals-value:not(:empty) {\\n margin-top: -6px\\n}\\n\\n.apexcharts-tooltip-marker {\\n width: 12px;\\n height: 12px;\\n position: relative;\\n top: 0;\\n margin-right: 10px;\\n border-radius: 50%\\n}\\n\\n.apexcharts-tooltip-series-group {\\n padding: 0 10px;\\n display: none;\\n text-align: left;\\n justify-content: left;\\n align-items: center\\n}\\n\\n.apexcharts-tooltip-series-group.apexcharts-active .apexcharts-tooltip-marker {\\n opacity: 1\\n}\\n\\n.apexcharts-tooltip-series-group.apexcharts-active,.apexcharts-tooltip-series-group:last-child {\\n padding-bottom: 4px\\n}\\n\\n.apexcharts-tooltip-series-group-hidden {\\n opacity: 0;\\n height: 0;\\n line-height: 0;\\n padding: 0!important\\n}\\n\\n.apexcharts-tooltip-y-group {\\n padding: 6px 0 5px\\n}\\n\\n.apexcharts-custom-tooltip,.apexcharts-tooltip-box {\\n padding: 4px 8px\\n}\\n\\n.apexcharts-tooltip-boxPlot {\\n display: flex;\\n flex-direction: column-reverse\\n}\\n\\n.apexcharts-tooltip-box>div {\\n margin: 4px 0\\n}\\n\\n.apexcharts-tooltip-box span.value {\\n font-weight: 700\\n}\\n\\n.apexcharts-tooltip-rangebar {\\n padding: 5px 8px\\n}\\n\\n.apexcharts-tooltip-rangebar .category {\\n font-weight: 600;\\n color: #777\\n}\\n\\n.apexcharts-tooltip-rangebar .series-name {\\n font-weight: 700;\\n display: block;\\n margin-bottom: 5px\\n}\\n\\n.apexcharts-xaxistooltip,.apexcharts-yaxistooltip {\\n opacity: 0;\\n pointer-events: none;\\n color: #373d3f;\\n font-size: 13px;\\n text-align: center;\\n border-radius: 2px;\\n position: absolute;\\n z-index: 10;\\n background: #eceff1;\\n border: 1px solid #90a4ae\\n}\\n\\n.apexcharts-xaxistooltip {\\n padding: 9px 10px;\\n transition: .15s ease all\\n}\\n\\n.apexcharts-xaxistooltip.apexcharts-theme-dark {\\n background: rgba(0,0,0,.7);\\n border: 1px solid rgba(0,0,0,.5);\\n color: #fff\\n}\\n\\n.apexcharts-xaxistooltip:after,.apexcharts-xaxistooltip:before {\\n left: 50%;\\n border: solid transparent;\\n content: \" \";\\n height: 0;\\n width: 0;\\n position: absolute;\\n pointer-events: none\\n}\\n\\n.apexcharts-xaxistooltip:after {\\n border-color: transparent;\\n border-width: 6px;\\n margin-left: -6px\\n}\\n\\n.apexcharts-xaxistooltip:before {\\n border-color: transparent;\\n border-width: 7px;\\n margin-left: -7px\\n}\\n\\n.apexcharts-xaxistooltip-bottom:after,.apexcharts-xaxistooltip-bottom:before {\\n bottom: 100%\\n}\\n\\n.apexcharts-xaxistooltip-top:after,.apexcharts-xaxistooltip-top:before {\\n top: 100%\\n}\\n\\n.apexcharts-xaxistooltip-bottom:after {\\n border-bottom-color: #eceff1\\n}\\n\\n.apexcharts-xaxistooltip-bottom:before {\\n border-bottom-color: #90a4ae\\n}\\n\\n.apexcharts-xaxistooltip-bottom.apexcharts-theme-dark:after,.apexcharts-xaxistooltip-bottom.apexcharts-theme-dark:before {\\n border-bottom-color: rgba(0,0,0,.5)\\n}\\n\\n.apexcharts-xaxistooltip-top:after {\\n border-top-color: #eceff1\\n}\\n\\n.apexcharts-xaxistooltip-top:before {\\n border-top-color: #90a4ae\\n}\\n\\n.apexcharts-xaxistooltip-top.apexcharts-theme-dark:after,.apexcharts-xaxistooltip-top.apexcharts-theme-dark:before {\\n border-top-color: rgba(0,0,0,.5)\\n}\\n\\n.apexcharts-xaxistooltip.apexcharts-active {\\n opacity: 1;\\n transition: .15s ease all\\n}\\n\\n.apexcharts-yaxistooltip {\\n padding: 4px 10px\\n}\\n\\n.apexcharts-yaxistooltip.apexcharts-theme-dark {\\n background: rgba(0,0,0,.7);\\n border: 1px solid rgba(0,0,0,.5);\\n color: #fff\\n}\\n\\n.apexcharts-yaxistooltip:after,.apexcharts-yaxistooltip:before {\\n top: 50%;\\n border: solid transparent;\\n content: \" \";\\n height: 0;\\n width: 0;\\n position: absolute;\\n pointer-events: none\\n}\\n\\n.apexcharts-yaxistooltip:after {\\n border-color: transparent;\\n border-width: 6px;\\n margin-top: -6px\\n}\\n\\n.apexcharts-yaxistooltip:before {\\n border-color: transparent;\\n border-width: 7px;\\n margin-top: -7px\\n}\\n\\n.apexcharts-yaxistooltip-left:after,.apexcharts-yaxistooltip-left:before {\\n left: 100%\\n}\\n\\n.apexcharts-yaxistooltip-right:after,.apexcharts-yaxistooltip-right:before {\\n right: 100%\\n}\\n\\n.apexcharts-yaxistooltip-left:after {\\n border-left-color: #eceff1\\n}\\n\\n.apexcharts-yaxistooltip-left:before {\\n border-left-color: #90a4ae\\n}\\n\\n.apexcharts-yaxistooltip-left.apexcharts-theme-dark:after,.apexcharts-yaxistooltip-left.apexcharts-theme-dark:before {\\n border-left-color: rgba(0,0,0,.5)\\n}\\n\\n.apexcharts-yaxistooltip-right:after {\\n border-right-color: #eceff1\\n}\\n\\n.apexcharts-yaxistooltip-right:before {\\n border-right-color: #90a4ae\\n}\\n\\n.apexcharts-yaxistooltip-right.apexcharts-theme-dark:after,.apexcharts-yaxistooltip-right.apexcharts-theme-dark:before {\\n border-right-color: rgba(0,0,0,.5)\\n}\\n\\n.apexcharts-yaxistooltip.apexcharts-active {\\n opacity: 1\\n}\\n\\n.apexcharts-yaxistooltip-hidden {\\n display: none\\n}\\n\\n.apexcharts-xcrosshairs,.apexcharts-ycrosshairs {\\n pointer-events: none;\\n opacity: 0;\\n transition: .15s ease all\\n}\\n\\n.apexcharts-xcrosshairs.apexcharts-active,.apexcharts-ycrosshairs.apexcharts-active {\\n opacity: 1;\\n transition: .15s ease all\\n}\\n\\n.apexcharts-ycrosshairs-hidden {\\n opacity: 0\\n}\\n\\n.apexcharts-selection-rect {\\n cursor: move\\n}\\n\\n.svg_select_boundingRect,.svg_select_points_rot {\\n pointer-events: none;\\n opacity: 0;\\n visibility: hidden\\n}\\n\\n.apexcharts-selection-rect+g .svg_select_boundingRect,.apexcharts-selection-rect+g .svg_select_points_rot {\\n opacity: 0;\\n visibility: hidden\\n}\\n\\n.apexcharts-selection-rect+g .svg_select_points_l,.apexcharts-selection-rect+g .svg_select_points_r {\\n cursor: ew-resize;\\n opacity: 1;\\n visibility: visible\\n}\\n\\n.svg_select_points {\\n fill: #efefef;\\n stroke: #333;\\n rx: 2\\n}\\n\\n.apexcharts-svg.apexcharts-zoomable.hovering-zoom {\\n cursor: crosshair\\n}\\n\\n.apexcharts-svg.apexcharts-zoomable.hovering-pan {\\n cursor: move\\n}\\n\\n.apexcharts-menu-icon,.apexcharts-pan-icon,.apexcharts-reset-icon,.apexcharts-selection-icon,.apexcharts-toolbar-custom-icon,.apexcharts-zoom-icon,.apexcharts-zoomin-icon,.apexcharts-zoomout-icon {\\n cursor: pointer;\\n width: 20px;\\n height: 20px;\\n line-height: 24px;\\n color: #6e8192;\\n text-align: center\\n}\\n\\n.apexcharts-menu-icon svg,.apexcharts-reset-icon svg,.apexcharts-zoom-icon svg,.apexcharts-zoomin-icon svg,.apexcharts-zoomout-icon svg {\\n fill: #6e8192\\n}\\n\\n.apexcharts-selection-icon svg {\\n fill: #444;\\n transform: scale(.76)\\n}\\n\\n.apexcharts-theme-dark .apexcharts-menu-icon svg,.apexcharts-theme-dark .apexcharts-pan-icon svg,.apexcharts-theme-dark .apexcharts-reset-icon svg,.apexcharts-theme-dark .apexcharts-selection-icon svg,.apexcharts-theme-dark .apexcharts-toolbar-custom-icon svg,.apexcharts-theme-dark .apexcharts-zoom-icon svg,.apexcharts-theme-dark .apexcharts-zoomin-icon svg,.apexcharts-theme-dark .apexcharts-zoomout-icon svg {\\n fill: #f3f4f5\\n}\\n\\n.apexcharts-canvas .apexcharts-reset-zoom-icon.apexcharts-selected svg,.apexcharts-canvas .apexcharts-selection-icon.apexcharts-selected svg,.apexcharts-canvas .apexcharts-zoom-icon.apexcharts-selected svg {\\n fill: #008ffb\\n}\\n\\n.apexcharts-theme-light .apexcharts-menu-icon:hover svg,.apexcharts-theme-light .apexcharts-reset-icon:hover svg,.apexcharts-theme-light .apexcharts-selection-icon:not(.apexcharts-selected):hover svg,.apexcharts-theme-light .apexcharts-zoom-icon:not(.apexcharts-selected):hover svg,.apexcharts-theme-light .apexcharts-zoomin-icon:hover svg,.apexcharts-theme-light .apexcharts-zoomout-icon:hover svg {\\n fill: #333\\n}\\n\\n.apexcharts-menu-icon,.apexcharts-selection-icon {\\n position: relative\\n}\\n\\n.apexcharts-reset-icon {\\n margin-left: 5px\\n}\\n\\n.apexcharts-menu-icon,.apexcharts-reset-icon,.apexcharts-zoom-icon {\\n transform: scale(.85)\\n}\\n\\n.apexcharts-zoomin-icon,.apexcharts-zoomout-icon {\\n transform: scale(.7)\\n}\\n\\n.apexcharts-zoomout-icon {\\n margin-right: 3px\\n}\\n\\n.apexcharts-pan-icon {\\n transform: scale(.62);\\n position: relative;\\n left: 1px;\\n top: 0\\n}\\n\\n.apexcharts-pan-icon svg {\\n fill: #fff;\\n stroke: #6e8192;\\n stroke-width: 2\\n}\\n\\n.apexcharts-pan-icon.apexcharts-selected svg {\\n stroke: #008ffb\\n}\\n\\n.apexcharts-pan-icon:not(.apexcharts-selected):hover svg {\\n stroke: #333\\n}\\n\\n.apexcharts-toolbar {\\n position: absolute;\\n z-index: 11;\\n max-width: 176px;\\n text-align: right;\\n border-radius: 3px;\\n padding: 0 6px 2px;\\n display: flex;\\n justify-content: space-between;\\n align-items: center\\n}\\n\\n.apexcharts-menu {\\n background: #fff;\\n position: absolute;\\n top: 100%;\\n border: 1px solid #ddd;\\n border-radius: 3px;\\n padding: 3px;\\n right: 10px;\\n opacity: 0;\\n min-width: 110px;\\n transition: .15s ease all;\\n pointer-events: none\\n}\\n\\n.apexcharts-menu.apexcharts-menu-open {\\n opacity: 1;\\n pointer-events: all;\\n transition: .15s ease all\\n}\\n\\n.apexcharts-menu-item {\\n padding: 6px 7px;\\n font-size: 12px;\\n cursor: pointer\\n}\\n\\n.apexcharts-theme-light .apexcharts-menu-item:hover {\\n background: #eee\\n}\\n\\n.apexcharts-theme-dark .apexcharts-menu {\\n background: rgba(0,0,0,.7);\\n color: #fff\\n}\\n\\n@media screen and (min-width:768px) {\\n .apexcharts-canvas:hover .apexcharts-toolbar {\\n opacity: 1\\n }\\n}\\n\\n.apexcharts-canvas .apexcharts-element-hidden,.apexcharts-datalabel.apexcharts-element-hidden,.apexcharts-hide .apexcharts-series-points {\\n opacity: 0\\n}\\n\\n.apexcharts-datalabel,.apexcharts-datalabel-label,.apexcharts-datalabel-value,.apexcharts-datalabels,.apexcharts-pie-label {\\n cursor: default;\\n pointer-events: none\\n}\\n\\n.apexcharts-pie-label-delay {\\n opacity: 0;\\n animation-name: opaque;\\n animation-duration: .3s;\\n animation-fill-mode: forwards;\\n animation-timing-function: ease\\n}\\n\\n.apexcharts-annotation-rect,.apexcharts-area-series .apexcharts-area,.apexcharts-area-series .apexcharts-series-markers .apexcharts-marker.no-pointer-events,.apexcharts-gridline,.apexcharts-line,.apexcharts-line-series .apexcharts-series-markers .apexcharts-marker.no-pointer-events,.apexcharts-point-annotation-label,.apexcharts-radar-series path,.apexcharts-radar-series polygon,.apexcharts-toolbar svg,.apexcharts-tooltip .apexcharts-marker,.apexcharts-xaxis-annotation-label,.apexcharts-yaxis-annotation-label,.apexcharts-zoom-rect {\\n pointer-events: none\\n}\\n\\n.apexcharts-marker {\\n transition: .15s ease all\\n}\\n\\n.resize-triggers {\\n animation: 1ms resizeanim;\\n visibility: hidden;\\n opacity: 0;\\n height: 100%;\\n width: 100%;\\n overflow: hidden\\n}\\n\\n.contract-trigger:before,.resize-triggers,.resize-triggers>div {\\n content: \" \";\\n display: block;\\n position: absolute;\\n top: 0;\\n left: 0\\n}\\n\\n.resize-triggers>div {\\n height: 100%;\\n width: 100%;\\n background: #eee;\\n overflow: auto\\n}\\n\\n.contract-trigger:before {\\n overflow: hidden;\\n width: 200%;\\n height: 200%\\n}\\n',r?s.prepend(t.css):o.head.appendChild(t.css))}var l=t.create(t.w.config.series,{});if(!l)return e(t);t.mount(l).then((function(){\"function\"==typeof t.w.config.chart.events.mounted&&t.w.config.chart.events.mounted(t,t.w),t.events.fireEvent(\"mounted\",[t,t.w]),e(l)})).catch((function(t){i(t)}))}else i(new Error(\"Element not found\"))}))}},{key:\"create\",value:function(t,e){var i=this.w;new Ot(this).initModules();var a=this.w.globals;(a.noData=!1,a.animationEnded=!1,this.responsive.checkResponsiveConfig(e),i.config.xaxis.convertedCatToNumeric)&&new z(i.config).convertCatToNumericXaxis(i.config,this.ctx);if(null===this.el)return a.animationEnded=!0,null;if(this.core.setupElements(),\"treemap\"===i.config.chart.type&&(i.config.grid.show=!1,i.config.yaxis[0].show=!1),0===a.svgWidth)return a.animationEnded=!0,null;var s=y.checkComboSeries(t);a.comboCharts=s.comboCharts,a.comboBarCount=s.comboBarCount;var r=t.every((function(t){return t.data&&0===t.data.length}));(0===t.length||r)&&this.series.handleNoData(),this.events.setupEventHandlers(),this.data.parseData(t),this.theme.init(),new R(this).setGlobalMarkerSize(),this.formatters.setLabelFormatters(),this.titleSubtitle.draw(),a.noData&&a.collapsedSeries.length!==a.series.length&&!i.config.legend.showForSingleSeries||this.legend.init(),this.series.hasAllSeriesEqualX(),a.axisCharts&&(this.core.coreCalculations(),\"category\"!==i.config.xaxis.type&&this.formatters.setLabelFormatters(),this.ctx.toolbar.minX=i.globals.minX,this.ctx.toolbar.maxX=i.globals.maxX),this.formatters.heatmapLabelFormatters(),new y(this).getLargestMarkerSize(),this.dimensions.plotCoords();var o=this.core.xySettings();this.grid.createGridMask();var n=this.core.plotChartType(t,o),l=new H(this);l.bringForward(),i.config.dataLabels.background.enabled&&l.dataLabelsBackground(),this.core.shiftGraphPosition();var h={plot:{left:i.globals.translateX,top:i.globals.translateY,width:i.globals.gridWidth,height:i.globals.gridHeight}};return{elGraph:n,xyRatios:o,elInner:i.globals.dom.elGraphical,dimensions:h}}},{key:\"mount\",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,i=this,a=i.w;return new Promise((function(s,r){if(null===i.el)return r(new Error(\"Not enough data to display or target element not found\"));(null===e||a.globals.allSeriesCollapsed)&&i.series.handleNoData(),i.grid=new j(i);var o=i.grid.drawGrid();\"treemap\"!==a.config.chart.type&&i.axes.drawAxis(a.config.chart.type,o),i.annotations=new P(i),i.annotations.drawImageAnnos(),i.annotations.drawTextAnnos(),\"back\"===a.config.grid.position&&o&&a.globals.dom.elGraphical.add(o.el);var n=new V(t.ctx,o),l=new q(t.ctx,o);if(null!==o&&(n.xAxisLabelCorrections(o.xAxisTickWidth),l.setYAxisTextAlignments(),a.config.yaxis.map((function(t,e){-1===a.globals.ignoreYAxisIndexes.indexOf(e)&&l.yAxisTitleRotate(e,t.opposite)}))),\"back\"===a.config.annotations.position&&(a.globals.dom.Paper.add(a.globals.dom.elAnnotations),i.annotations.drawAxesAnnotations()),Array.isArray(e.elGraph))for(var h=0;h0&&a.globals.memory.methodsToExec.forEach((function(t){t.method(t.params,!1,t.context)})),a.globals.axisCharts||a.globals.noData||i.core.resizeNonAxisCharts(),s(i)}))}},{key:\"destroy\",value:function(){var t,e;window.removeEventListener(\"resize\",this.windowResizeHandler),this.el.parentNode,t=this.parentResizeHandler,(e=Wt.get(t))&&(e.disconnect(),Wt.delete(t));var i=this.w.config.chart.id;i&&Apex._chartInstances.forEach((function(t,e){t.id===x.escapeString(i)&&Apex._chartInstances.splice(e,1)})),new Nt(this.ctx).clear({isUpdating:!1})}},{key:\"updateOptions\",value:function(t){var e=this,i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],a=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],s=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],r=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],o=this.w;return o.globals.selection=void 0,t.series&&(this.series.resetSeries(!1,!0,!1),t.series.length&&t.series[0].data&&(t.series=t.series.map((function(t,i){return e.updateHelpers._extendSeries(t,i)}))),this.updateHelpers.revertDefaultAxisMinMax()),t.xaxis&&(t=this.updateHelpers.forceXAxisUpdate(t)),t.yaxis&&(t=this.updateHelpers.forceYAxisUpdate(t)),o.globals.collapsedSeriesIndices.length>0&&this.series.clearPreviousPaths(),t.theme&&(t=this.theme.updateThemeOptions(t)),this.updateHelpers._updateOptions(t,i,a,s,r)}},{key:\"updateSeries\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];return this.series.resetSeries(!1),this.updateHelpers.revertDefaultAxisMinMax(),this.updateHelpers._updateSeries(t,e,i)}},{key:\"appendSeries\",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=this.w.config.series.slice();return a.push(t),this.series.resetSeries(!1),this.updateHelpers.revertDefaultAxisMinMax(),this.updateHelpers._updateSeries(a,e,i)}},{key:\"appendData\",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=this;i.w.globals.dataChanged=!0,i.series.getPreviousPaths();for(var a=i.w.config.series.slice(),s=0;s0&&void 0!==arguments[0])||arguments[0],e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];this.series.resetSeries(t,e)}},{key:\"addEventListener\",value:function(t,e){this.events.addEventListener(t,e)}},{key:\"removeEventListener\",value:function(t,e){this.events.removeEventListener(t,e)}},{key:\"addXaxisAnnotation\",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,a=this;i&&(a=i),a.annotations.addXaxisAnnotationExternal(t,e,a)}},{key:\"addYaxisAnnotation\",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,a=this;i&&(a=i),a.annotations.addYaxisAnnotationExternal(t,e,a)}},{key:\"addPointAnnotation\",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,a=this;i&&(a=i),a.annotations.addPointAnnotationExternal(t,e,a)}},{key:\"clearAnnotations\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0,e=this;t&&(e=t),e.annotations.clearAnnotations(e)}},{key:\"removeAnnotation\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,i=this;e&&(i=e),i.annotations.removeAnnotation(i,t)}},{key:\"getChartArea\",value:function(){return this.w.globals.dom.baseEl.querySelector(\".apexcharts-inner\")}},{key:\"getSeriesTotalXRange\",value:function(t,e){return this.coreUtils.getSeriesTotalsXRange(t,e)}},{key:\"getHighestValueInSeries\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=new U(this.ctx);return e.getMinYMaxY(t).highestY}},{key:\"getLowestValueInSeries\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=new U(this.ctx);return e.getMinYMaxY(t).lowestY}},{key:\"getSeriesTotal\",value:function(){return this.w.globals.seriesTotals}},{key:\"toggleDataPointSelection\",value:function(t,e){return this.updateHelpers.toggleDataPointSelection(t,e)}},{key:\"zoomX\",value:function(t,e){this.ctx.toolbar.zoomUpdateOptions(t,e)}},{key:\"setLocale\",value:function(t){this.localization.setCurrentLocaleValues(t)}},{key:\"dataURI\",value:function(t){return new G(this.ctx).dataURI(t)}},{key:\"exportToCSV\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=new G(this.ctx);return e.exportToCSV(t)}},{key:\"paper\",value:function(){return this.w.globals.dom.Paper}},{key:\"_parentResizeCallback\",value:function(){this.w.globals.animationEnded&&this.w.config.chart.redrawOnParentResize&&this._windowResize()}},{key:\"_windowResize\",value:function(){var t=this;clearTimeout(this.w.globals.resizeTimer),this.w.globals.resizeTimer=window.setTimeout((function(){t.w.globals.resized=!0,t.w.globals.dataChanged=!1,t.ctx.update()}),150)}},{key:\"_windowResizeHandler\",value:function(){var t=this.w.config.chart.redrawOnWindowResize;\"function\"==typeof t&&(t=t()),t&&this._windowResize()}}],[{key:\"getChartByID\",value:function(t){var e=x.escapeString(t),i=Apex._chartInstances.filter((function(t){return t.id===e}))[0];return i&&i.chart}},{key:\"initOnLoad\",value:function(){for(var e=document.querySelectorAll(\"[data-apexcharts]\"),i=0;i2?s-2:0),o=2;o 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n}\n\nmodule.exports = createAssigner;\n","/**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n}\n\nmodule.exports = createBaseFor;\n","var getNative = require('./_getNative');\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nmodule.exports = defineProperty;\n","var SetCache = require('./_SetCache'),\n arraySome = require('./_arraySome'),\n cacheHas = require('./_cacheHas');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\nfunction equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Check that cyclic values are equal.\n var arrStacked = stack.get(array);\n var othStacked = stack.get(other);\n if (arrStacked && othStacked) {\n return arrStacked == other && othStacked == array;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!arraySome(other, function(othValue, othIndex) {\n if (!cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n}\n\nmodule.exports = equalArrays;\n","var Symbol = require('./_Symbol'),\n Uint8Array = require('./_Uint8Array'),\n eq = require('./eq'),\n equalArrays = require('./_equalArrays'),\n mapToArray = require('./_mapToArray'),\n setToArray = require('./_setToArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n}\n\nmodule.exports = equalByTag;\n","var getAllKeys = require('./_getAllKeys');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n objProps = getAllKeys(object),\n objLength = objProps.length,\n othProps = getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n return false;\n }\n }\n // Check that cyclic values are equal.\n var objStacked = stack.get(object);\n var othStacked = stack.get(other);\n if (objStacked && othStacked) {\n return objStacked == other && othStacked == object;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n}\n\nmodule.exports = equalObjects;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n","var baseGetAllKeys = require('./_baseGetAllKeys'),\n getSymbols = require('./_getSymbols'),\n keys = require('./keys');\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n}\n\nmodule.exports = getAllKeys;\n","var isKeyable = require('./_isKeyable');\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\nmodule.exports = getMapData;\n","var baseIsNative = require('./_baseIsNative'),\n getValue = require('./_getValue');\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\nmodule.exports = getNative;\n","var overArg = require('./_overArg');\n\n/** Built-in value references. */\nvar getPrototype = overArg(Object.getPrototypeOf, Object);\n\nmodule.exports = getPrototype;\n","var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\n","var arrayFilter = require('./_arrayFilter'),\n stubArray = require('./stubArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\nmodule.exports = getSymbols;\n","var DataView = require('./_DataView'),\n Map = require('./_Map'),\n Promise = require('./_Promise'),\n Set = require('./_Set'),\n WeakMap = require('./_WeakMap'),\n baseGetTag = require('./_baseGetTag'),\n toSource = require('./_toSource');\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n setTag = '[object Set]',\n weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\nmodule.exports = getTag;\n","/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\nmodule.exports = getValue;\n","var nativeCreate = require('./_nativeCreate');\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\nmodule.exports = hashClear;\n","/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = hashDelete;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nmodule.exports = hashGet;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\nmodule.exports = hashHas;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nmodule.exports = hashSet;\n","var baseCreate = require('./_baseCreate'),\n getPrototype = require('./_getPrototype'),\n isPrototype = require('./_isPrototype');\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n}\n\nmodule.exports = initCloneObject;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\nmodule.exports = isIndex;\n","var eq = require('./eq'),\n isArrayLike = require('./isArrayLike'),\n isIndex = require('./_isIndex'),\n isObject = require('./isObject');\n\n/**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\nfunction isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n}\n\nmodule.exports = isIterateeCall;\n","/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\nmodule.exports = isKeyable;\n","var coreJsData = require('./_coreJsData');\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\nmodule.exports = isMasked;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\nmodule.exports = isPrototype;\n","/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\nmodule.exports = listCacheClear;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\nmodule.exports = listCacheDelete;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\nmodule.exports = listCacheGet;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\nmodule.exports = listCacheHas;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nmodule.exports = listCacheSet;\n","var Hash = require('./_Hash'),\n ListCache = require('./_ListCache'),\n Map = require('./_Map');\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\nmodule.exports = mapCacheClear;\n","var getMapData = require('./_getMapData');\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = mapCacheDelete;\n","var getMapData = require('./_getMapData');\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\nmodule.exports = mapCacheGet;\n","var getMapData = require('./_getMapData');\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\nmodule.exports = mapCacheHas;\n","var getMapData = require('./_getMapData');\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nmodule.exports = mapCacheSet;\n","/**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\nfunction mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n}\n\nmodule.exports = mapToArray;\n","var getNative = require('./_getNative');\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nmodule.exports = nativeCreate;\n","var overArg = require('./_overArg');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = overArg(Object.keys, Object);\n\nmodule.exports = nativeKeys;\n","/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = nativeKeysIn;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\nmodule.exports = nodeUtil;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n","/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\nmodule.exports = overArg;\n","var apply = require('./_apply');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max;\n\n/**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\nfunction overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n}\n\nmodule.exports = overRest;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n","/**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n}\n\nmodule.exports = safeGet;\n","/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\nfunction setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED);\n return this;\n}\n\nmodule.exports = setCacheAdd;\n","/**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\nfunction setCacheHas(value) {\n return this.__data__.has(value);\n}\n\nmodule.exports = setCacheHas;\n","/**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\nfunction setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n}\n\nmodule.exports = setToArray;\n","var baseSetToString = require('./_baseSetToString'),\n shortOut = require('./_shortOut');\n\n/**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar setToString = shortOut(baseSetToString);\n\nmodule.exports = setToString;\n","/** Used to detect hot functions by number of calls within a span of milliseconds. */\nvar HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeNow = Date.now;\n\n/**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\nfunction shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n}\n\nmodule.exports = shortOut;\n","var ListCache = require('./_ListCache');\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\nmodule.exports = stackClear;\n","/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nmodule.exports = stackDelete;\n","/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\nmodule.exports = stackGet;\n","/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\nmodule.exports = stackHas;\n","var ListCache = require('./_ListCache'),\n Map = require('./_Map'),\n MapCache = require('./_MapCache');\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\nmodule.exports = stackSet;\n","/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\nmodule.exports = toSource;\n","/**\n * Creates a function that returns `value`.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {*} value The value to return from the new function.\n * @returns {Function} Returns the new constant function.\n * @example\n *\n * var objects = _.times(2, _.constant({ 'a': 1 }));\n *\n * console.log(objects);\n * // => [{ 'a': 1 }, { 'a': 1 }]\n *\n * console.log(objects[0] === objects[1]);\n * // => true\n */\nfunction constant(value) {\n return function() {\n return value;\n };\n}\n\nmodule.exports = constant;\n","/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\nmodule.exports = eq;\n","/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n return value;\n}\n\nmodule.exports = identity;\n","var baseIsArguments = require('./_baseIsArguments'),\n isObjectLike = require('./isObjectLike');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\nmodule.exports = isArguments;\n","/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nmodule.exports = isArray;\n","var isFunction = require('./isFunction'),\n isLength = require('./isLength');\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\nmodule.exports = isArrayLike;\n","var isArrayLike = require('./isArrayLike'),\n isObjectLike = require('./isObjectLike');\n\n/**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\nfunction isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n}\n\nmodule.exports = isArrayLikeObject;\n","var root = require('./_root'),\n stubFalse = require('./stubFalse');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\nmodule.exports = isBuffer;\n","var baseIsEqual = require('./_baseIsEqual');\n\n/**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\nfunction isEqual(value, other) {\n return baseIsEqual(value, other);\n}\n\nmodule.exports = isEqual;\n","var baseGetTag = require('./_baseGetTag'),\n isObject = require('./isObject');\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n proxyTag = '[object Proxy]';\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nmodule.exports = isFunction;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\nmodule.exports = isLength;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nmodule.exports = isObject;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n","var baseGetTag = require('./_baseGetTag'),\n getPrototype = require('./_getPrototype'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString.call(Object);\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n}\n\nmodule.exports = isPlainObject;\n","var baseIsTypedArray = require('./_baseIsTypedArray'),\n baseUnary = require('./_baseUnary'),\n nodeUtil = require('./_nodeUtil');\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\nmodule.exports = isTypedArray;\n","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeys = require('./_baseKeys'),\n isArrayLike = require('./isArrayLike');\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\nmodule.exports = keys;\n","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeysIn = require('./_baseKeysIn'),\n isArrayLike = require('./isArrayLike');\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n}\n\nmodule.exports = keysIn;\n","var baseMerge = require('./_baseMerge'),\n createAssigner = require('./_createAssigner');\n\n/**\n * This method is like `_.assign` except that it recursively merges own and\n * inherited enumerable string keyed properties of source objects into the\n * destination object. Source properties that resolve to `undefined` are\n * skipped if a destination value exists. Array and plain object properties\n * are merged recursively. Other objects and value types are overridden by\n * assignment. Source objects are applied from left to right. Subsequent\n * sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {\n * 'a': [{ 'b': 2 }, { 'd': 4 }]\n * };\n *\n * var other = {\n * 'a': [{ 'c': 3 }, { 'e': 5 }]\n * };\n *\n * _.merge(object, other);\n * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }\n */\nvar merge = createAssigner(function(object, source, srcIndex) {\n baseMerge(object, source, srcIndex);\n});\n\nmodule.exports = merge;\n","/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n return [];\n}\n\nmodule.exports = stubArray;\n","/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nmodule.exports = stubFalse;\n","var copyObject = require('./_copyObject'),\n keysIn = require('./keysIn');\n\n/**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\nfunction toPlainObject(value) {\n return copyObject(value, keysIn(value));\n}\n\nmodule.exports = toPlainObject;\n","/**\n * SSR Window 2.0.0\n * Better handling for window object in SSR environment\n * https://github.com/nolimits4web/ssr-window\n *\n * Copyright 2020, Vladimir Kharlampidi\n *\n * Licensed under MIT\n *\n * Released on: May 12, 2020\n */\n/* eslint-disable no-param-reassign */\nfunction isObject(obj) {\n return (obj !== null &&\n typeof obj === 'object' &&\n 'constructor' in obj &&\n obj.constructor === Object);\n}\nfunction extend(target, src) {\n if (target === void 0) { target = {}; }\n if (src === void 0) { src = {}; }\n Object.keys(src).forEach(function (key) {\n if (typeof target[key] === 'undefined')\n target[key] = src[key];\n else if (isObject(src[key]) &&\n isObject(target[key]) &&\n Object.keys(src[key]).length > 0) {\n extend(target[key], src[key]);\n }\n });\n}\n\nvar doc = typeof document !== 'undefined' ? document : {};\nvar ssrDocument = {\n body: {},\n addEventListener: function () { },\n removeEventListener: function () { },\n activeElement: {\n blur: function () { },\n nodeName: '',\n },\n querySelector: function () {\n return null;\n },\n querySelectorAll: function () {\n return [];\n },\n getElementById: function () {\n return null;\n },\n createEvent: function () {\n return {\n initEvent: function () { },\n };\n },\n createElement: function () {\n return {\n children: [],\n childNodes: [],\n style: {},\n setAttribute: function () { },\n getElementsByTagName: function () {\n return [];\n },\n };\n },\n createElementNS: function () {\n return {};\n },\n importNode: function () {\n return null;\n },\n location: {\n hash: '',\n host: '',\n hostname: '',\n href: '',\n origin: '',\n pathname: '',\n protocol: '',\n search: '',\n },\n};\nextend(doc, ssrDocument);\n\nvar win = typeof window !== 'undefined' ? window : {};\nvar ssrWindow = {\n document: ssrDocument,\n navigator: {\n userAgent: '',\n },\n location: {\n hash: '',\n host: '',\n hostname: '',\n href: '',\n origin: '',\n pathname: '',\n protocol: '',\n search: '',\n },\n history: {\n replaceState: function () { },\n pushState: function () { },\n go: function () { },\n back: function () { },\n },\n CustomEvent: function CustomEvent() {\n return this;\n },\n addEventListener: function () { },\n removeEventListener: function () { },\n getComputedStyle: function () {\n return {\n getPropertyValue: function () {\n return '';\n },\n };\n },\n Image: function () { },\n Date: function () { },\n screen: {},\n setTimeout: function () { },\n clearTimeout: function () { },\n matchMedia: function () {\n return {};\n },\n};\nextend(win, ssrWindow);\n\nexport { doc as document, extend, win as window };\n","/**\n * Dom7 2.1.5\n * Minimalistic JavaScript library for DOM manipulation, with a jQuery-compatible API\n * http://framework7.io/docs/dom.html\n *\n * Copyright 2020, Vladimir Kharlampidi\n * The iDangero.us\n * http://www.idangero.us/\n *\n * Licensed under MIT\n *\n * Released on: May 15, 2020\n */\nimport { document, window } from 'ssr-window';\n\nclass Dom7 {\n constructor(arr) {\n const self = this;\n // Create array-like object\n for (let i = 0; i < arr.length; i += 1) {\n self[i] = arr[i];\n }\n self.length = arr.length;\n // Return collection with methods\n return this;\n }\n}\n\nfunction $(selector, context) {\n const arr = [];\n let i = 0;\n if (selector && !context) {\n if (selector instanceof Dom7) {\n return selector;\n }\n }\n if (selector) {\n // String\n if (typeof selector === 'string') {\n let els;\n let tempParent;\n const html = selector.trim();\n if (html.indexOf('<') >= 0 && html.indexOf('>') >= 0) {\n let toCreate = 'div';\n if (html.indexOf(':~]/)) {\n // Pure ID selector\n els = [document.getElementById(selector.trim().split('#')[1])];\n } else {\n // Other selectors\n els = (context || document).querySelectorAll(selector.trim());\n }\n for (i = 0; i < els.length; i += 1) {\n if (els[i]) arr.push(els[i]);\n }\n }\n } else if (selector.nodeType || selector === window || selector === document) {\n // Node/element\n arr.push(selector);\n } else if (selector.length > 0 && selector[0].nodeType) {\n // Array of elements or instance of Dom\n for (i = 0; i < selector.length; i += 1) {\n arr.push(selector[i]);\n }\n }\n }\n return new Dom7(arr);\n}\n\n$.fn = Dom7.prototype;\n$.Class = Dom7;\n$.Dom7 = Dom7;\n\nfunction unique(arr) {\n const uniqueArray = [];\n for (let i = 0; i < arr.length; i += 1) {\n if (uniqueArray.indexOf(arr[i]) === -1) uniqueArray.push(arr[i]);\n }\n return uniqueArray;\n}\nfunction toCamelCase(string) {\n return string.toLowerCase().replace(/-(.)/g, (match, group1) => group1.toUpperCase());\n}\n\nfunction requestAnimationFrame(callback) {\n if (window.requestAnimationFrame) return window.requestAnimationFrame(callback);\n else if (window.webkitRequestAnimationFrame) return window.webkitRequestAnimationFrame(callback);\n return window.setTimeout(callback, 1000 / 60);\n}\nfunction cancelAnimationFrame(id) {\n if (window.cancelAnimationFrame) return window.cancelAnimationFrame(id);\n else if (window.webkitCancelAnimationFrame) return window.webkitCancelAnimationFrame(id);\n return window.clearTimeout(id);\n}\n\n// Classes and attributes\nfunction addClass(className) {\n if (typeof className === 'undefined') {\n return this;\n }\n const classes = className.split(' ');\n for (let i = 0; i < classes.length; i += 1) {\n for (let j = 0; j < this.length; j += 1) {\n if (typeof this[j] !== 'undefined' && typeof this[j].classList !== 'undefined') this[j].classList.add(classes[i]);\n }\n }\n return this;\n}\nfunction removeClass(className) {\n const classes = className.split(' ');\n for (let i = 0; i < classes.length; i += 1) {\n for (let j = 0; j < this.length; j += 1) {\n if (typeof this[j] !== 'undefined' && typeof this[j].classList !== 'undefined') this[j].classList.remove(classes[i]);\n }\n }\n return this;\n}\nfunction hasClass(className) {\n if (!this[0]) return false;\n return this[0].classList.contains(className);\n}\nfunction toggleClass(className) {\n const classes = className.split(' ');\n for (let i = 0; i < classes.length; i += 1) {\n for (let j = 0; j < this.length; j += 1) {\n if (typeof this[j] !== 'undefined' && typeof this[j].classList !== 'undefined') this[j].classList.toggle(classes[i]);\n }\n }\n return this;\n}\nfunction attr(attrs, value) {\n if (arguments.length === 1 && typeof attrs === 'string') {\n // Get attr\n if (this[0]) return this[0].getAttribute(attrs);\n return undefined;\n }\n\n // Set attrs\n for (let i = 0; i < this.length; i += 1) {\n if (arguments.length === 2) {\n // String\n this[i].setAttribute(attrs, value);\n } else {\n // Object\n // eslint-disable-next-line\n for (const attrName in attrs) {\n this[i][attrName] = attrs[attrName];\n this[i].setAttribute(attrName, attrs[attrName]);\n }\n }\n }\n return this;\n}\n// eslint-disable-next-line\nfunction removeAttr(attr) {\n for (let i = 0; i < this.length; i += 1) {\n this[i].removeAttribute(attr);\n }\n return this;\n}\n// eslint-disable-next-line\nfunction prop(props, value) {\n if (arguments.length === 1 && typeof props === 'string') {\n // Get prop\n if (this[0]) return this[0][props];\n } else {\n // Set props\n for (let i = 0; i < this.length; i += 1) {\n if (arguments.length === 2) {\n // String\n this[i][props] = value;\n } else {\n // Object\n // eslint-disable-next-line\n for (const propName in props) {\n this[i][propName] = props[propName];\n }\n }\n }\n return this;\n }\n}\nfunction data(key, value) {\n let el;\n if (typeof value === 'undefined') {\n el = this[0];\n // Get value\n if (el) {\n if (el.dom7ElementDataStorage && (key in el.dom7ElementDataStorage)) {\n return el.dom7ElementDataStorage[key];\n }\n\n const dataKey = el.getAttribute(`data-${key}`);\n if (dataKey) {\n return dataKey;\n }\n return undefined;\n }\n return undefined;\n }\n\n // Set value\n for (let i = 0; i < this.length; i += 1) {\n el = this[i];\n if (!el.dom7ElementDataStorage) el.dom7ElementDataStorage = {};\n el.dom7ElementDataStorage[key] = value;\n }\n return this;\n}\nfunction removeData(key) {\n for (let i = 0; i < this.length; i += 1) {\n const el = this[i];\n if (el.dom7ElementDataStorage && el.dom7ElementDataStorage[key]) {\n el.dom7ElementDataStorage[key] = null;\n delete el.dom7ElementDataStorage[key];\n }\n }\n}\nfunction dataset() {\n const el = this[0];\n if (!el) return undefined;\n const dataset = {}; // eslint-disable-line\n if (el.dataset) {\n // eslint-disable-next-line\n for (const dataKey in el.dataset) {\n dataset[dataKey] = el.dataset[dataKey];\n }\n } else {\n for (let i = 0; i < el.attributes.length; i += 1) {\n // eslint-disable-next-line\n const attr = el.attributes[i];\n if (attr.name.indexOf('data-') >= 0) {\n dataset[toCamelCase(attr.name.split('data-')[1])] = attr.value;\n }\n }\n }\n // eslint-disable-next-line\n for (const key in dataset) {\n if (dataset[key] === 'false') dataset[key] = false;\n else if (dataset[key] === 'true') dataset[key] = true;\n else if (parseFloat(dataset[key]) === dataset[key] * 1) dataset[key] *= 1;\n }\n return dataset;\n}\nfunction val(value) {\n const dom = this;\n if (typeof value === 'undefined') {\n if (dom[0]) {\n if (dom[0].multiple && dom[0].nodeName.toLowerCase() === 'select') {\n const values = [];\n for (let i = 0; i < dom[0].selectedOptions.length; i += 1) {\n values.push(dom[0].selectedOptions[i].value);\n }\n return values;\n }\n return dom[0].value;\n }\n return undefined;\n }\n\n for (let i = 0; i < dom.length; i += 1) {\n const el = dom[i];\n if (Array.isArray(value) && el.multiple && el.nodeName.toLowerCase() === 'select') {\n for (let j = 0; j < el.options.length; j += 1) {\n el.options[j].selected = value.indexOf(el.options[j].value) >= 0;\n }\n } else {\n el.value = value;\n }\n }\n return dom;\n}\n// Transforms\n// eslint-disable-next-line\nfunction transform(transform) {\n for (let i = 0; i < this.length; i += 1) {\n const elStyle = this[i].style;\n elStyle.webkitTransform = transform;\n elStyle.transform = transform;\n }\n return this;\n}\nfunction transition(duration) {\n if (typeof duration !== 'string') {\n duration = `${duration}ms`; // eslint-disable-line\n }\n for (let i = 0; i < this.length; i += 1) {\n const elStyle = this[i].style;\n elStyle.webkitTransitionDuration = duration;\n elStyle.transitionDuration = duration;\n }\n return this;\n}\n// Events\nfunction on(...args) {\n let [eventType, targetSelector, listener, capture] = args;\n if (typeof args[1] === 'function') {\n [eventType, listener, capture] = args;\n targetSelector = undefined;\n }\n if (!capture) capture = false;\n\n function handleLiveEvent(e) {\n const target = e.target;\n if (!target) return;\n const eventData = e.target.dom7EventData || [];\n if (eventData.indexOf(e) < 0) {\n eventData.unshift(e);\n }\n if ($(target).is(targetSelector)) listener.apply(target, eventData);\n else {\n const parents = $(target).parents(); // eslint-disable-line\n for (let k = 0; k < parents.length; k += 1) {\n if ($(parents[k]).is(targetSelector)) listener.apply(parents[k], eventData);\n }\n }\n }\n function handleEvent(e) {\n const eventData = e && e.target ? e.target.dom7EventData || [] : [];\n if (eventData.indexOf(e) < 0) {\n eventData.unshift(e);\n }\n listener.apply(this, eventData);\n }\n const events = eventType.split(' ');\n let j;\n for (let i = 0; i < this.length; i += 1) {\n const el = this[i];\n if (!targetSelector) {\n for (j = 0; j < events.length; j += 1) {\n const event = events[j];\n if (!el.dom7Listeners) el.dom7Listeners = {};\n if (!el.dom7Listeners[event]) el.dom7Listeners[event] = [];\n el.dom7Listeners[event].push({\n listener,\n proxyListener: handleEvent,\n });\n el.addEventListener(event, handleEvent, capture);\n }\n } else {\n // Live events\n for (j = 0; j < events.length; j += 1) {\n const event = events[j];\n if (!el.dom7LiveListeners) el.dom7LiveListeners = {};\n if (!el.dom7LiveListeners[event]) el.dom7LiveListeners[event] = [];\n el.dom7LiveListeners[event].push({\n listener,\n proxyListener: handleLiveEvent,\n });\n el.addEventListener(event, handleLiveEvent, capture);\n }\n }\n }\n return this;\n}\nfunction off(...args) {\n let [eventType, targetSelector, listener, capture] = args;\n if (typeof args[1] === 'function') {\n [eventType, listener, capture] = args;\n targetSelector = undefined;\n }\n if (!capture) capture = false;\n\n const events = eventType.split(' ');\n for (let i = 0; i < events.length; i += 1) {\n const event = events[i];\n for (let j = 0; j < this.length; j += 1) {\n const el = this[j];\n let handlers;\n if (!targetSelector && el.dom7Listeners) {\n handlers = el.dom7Listeners[event];\n } else if (targetSelector && el.dom7LiveListeners) {\n handlers = el.dom7LiveListeners[event];\n }\n if (handlers && handlers.length) {\n for (let k = handlers.length - 1; k >= 0; k -= 1) {\n const handler = handlers[k];\n if (listener && handler.listener === listener) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n } else if (listener && handler.listener && handler.listener.dom7proxy && handler.listener.dom7proxy === listener) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n } else if (!listener) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n }\n }\n }\n }\n }\n return this;\n}\nfunction once(...args) {\n const dom = this;\n let [eventName, targetSelector, listener, capture] = args;\n if (typeof args[1] === 'function') {\n [eventName, listener, capture] = args;\n targetSelector = undefined;\n }\n function onceHandler(...eventArgs) {\n listener.apply(this, eventArgs);\n dom.off(eventName, targetSelector, onceHandler, capture);\n if (onceHandler.dom7proxy) {\n delete onceHandler.dom7proxy;\n }\n }\n onceHandler.dom7proxy = listener;\n return dom.on(eventName, targetSelector, onceHandler, capture);\n}\nfunction trigger(...args) {\n const events = args[0].split(' ');\n const eventData = args[1];\n for (let i = 0; i < events.length; i += 1) {\n const event = events[i];\n for (let j = 0; j < this.length; j += 1) {\n const el = this[j];\n let evt;\n try {\n evt = new window.CustomEvent(event, {\n detail: eventData,\n bubbles: true,\n cancelable: true,\n });\n } catch (e) {\n evt = document.createEvent('Event');\n evt.initEvent(event, true, true);\n evt.detail = eventData;\n }\n // eslint-disable-next-line\n el.dom7EventData = args.filter((data, dataIndex) => dataIndex > 0);\n el.dispatchEvent(evt);\n el.dom7EventData = [];\n delete el.dom7EventData;\n }\n }\n return this;\n}\nfunction transitionEnd(callback) {\n const events = ['webkitTransitionEnd', 'transitionend'];\n const dom = this;\n let i;\n function fireCallBack(e) {\n /* jshint validthis:true */\n if (e.target !== this) return;\n callback.call(this, e);\n for (i = 0; i < events.length; i += 1) {\n dom.off(events[i], fireCallBack);\n }\n }\n if (callback) {\n for (i = 0; i < events.length; i += 1) {\n dom.on(events[i], fireCallBack);\n }\n }\n return this;\n}\nfunction animationEnd(callback) {\n const events = ['webkitAnimationEnd', 'animationend'];\n const dom = this;\n let i;\n function fireCallBack(e) {\n if (e.target !== this) return;\n callback.call(this, e);\n for (i = 0; i < events.length; i += 1) {\n dom.off(events[i], fireCallBack);\n }\n }\n if (callback) {\n for (i = 0; i < events.length; i += 1) {\n dom.on(events[i], fireCallBack);\n }\n }\n return this;\n}\n// Sizing/Styles\nfunction width() {\n if (this[0] === window) {\n return window.innerWidth;\n }\n\n if (this.length > 0) {\n return parseFloat(this.css('width'));\n }\n\n return null;\n}\nfunction outerWidth(includeMargins) {\n if (this.length > 0) {\n if (includeMargins) {\n // eslint-disable-next-line\n const styles = this.styles();\n return this[0].offsetWidth + parseFloat(styles.getPropertyValue('margin-right')) + parseFloat(styles.getPropertyValue('margin-left'));\n }\n return this[0].offsetWidth;\n }\n return null;\n}\nfunction height() {\n if (this[0] === window) {\n return window.innerHeight;\n }\n\n if (this.length > 0) {\n return parseFloat(this.css('height'));\n }\n\n return null;\n}\nfunction outerHeight(includeMargins) {\n if (this.length > 0) {\n if (includeMargins) {\n // eslint-disable-next-line\n const styles = this.styles();\n return this[0].offsetHeight + parseFloat(styles.getPropertyValue('margin-top')) + parseFloat(styles.getPropertyValue('margin-bottom'));\n }\n return this[0].offsetHeight;\n }\n return null;\n}\nfunction offset() {\n if (this.length > 0) {\n const el = this[0];\n const box = el.getBoundingClientRect();\n const body = document.body;\n const clientTop = el.clientTop || body.clientTop || 0;\n const clientLeft = el.clientLeft || body.clientLeft || 0;\n const scrollTop = el === window ? window.scrollY : el.scrollTop;\n const scrollLeft = el === window ? window.scrollX : el.scrollLeft;\n return {\n top: (box.top + scrollTop) - clientTop,\n left: (box.left + scrollLeft) - clientLeft,\n };\n }\n\n return null;\n}\nfunction hide() {\n for (let i = 0; i < this.length; i += 1) {\n this[i].style.display = 'none';\n }\n return this;\n}\nfunction show() {\n for (let i = 0; i < this.length; i += 1) {\n const el = this[i];\n if (el.style.display === 'none') {\n el.style.display = '';\n }\n if (window.getComputedStyle(el, null).getPropertyValue('display') === 'none') {\n // Still not visible\n el.style.display = 'block';\n }\n }\n return this;\n}\nfunction styles() {\n if (this[0]) return window.getComputedStyle(this[0], null);\n return {};\n}\nfunction css(props, value) {\n let i;\n if (arguments.length === 1) {\n if (typeof props === 'string') {\n if (this[0]) return window.getComputedStyle(this[0], null).getPropertyValue(props);\n } else {\n for (i = 0; i < this.length; i += 1) {\n // eslint-disable-next-line\n for (let prop in props) {\n this[i].style[prop] = props[prop];\n }\n }\n return this;\n }\n }\n if (arguments.length === 2 && typeof props === 'string') {\n for (i = 0; i < this.length; i += 1) {\n this[i].style[props] = value;\n }\n return this;\n }\n return this;\n}\n\n// Dom manipulation\nfunction toArray() {\n const arr = [];\n for (let i = 0; i < this.length; i += 1) {\n arr.push(this[i]);\n }\n return arr;\n}\n// Iterate over the collection passing elements to `callback`\nfunction each(callback) {\n // Don't bother continuing without a callback\n if (!callback) return this;\n // Iterate over the current collection\n for (let i = 0; i < this.length; i += 1) {\n // If the callback returns false\n if (callback.call(this[i], i, this[i]) === false) {\n // End the loop early\n return this;\n }\n }\n // Return `this` to allow chained DOM operations\n return this;\n}\nfunction forEach(callback) {\n // Don't bother continuing without a callback\n if (!callback) return this;\n // Iterate over the current collection\n for (let i = 0; i < this.length; i += 1) {\n // If the callback returns false\n if (callback.call(this[i], this[i], i) === false) {\n // End the loop early\n return this;\n }\n }\n // Return `this` to allow chained DOM operations\n return this;\n}\nfunction filter(callback) {\n const matchedItems = [];\n const dom = this;\n for (let i = 0; i < dom.length; i += 1) {\n if (callback.call(dom[i], i, dom[i])) matchedItems.push(dom[i]);\n }\n return new Dom7(matchedItems);\n}\nfunction map(callback) {\n const modifiedItems = [];\n const dom = this;\n for (let i = 0; i < dom.length; i += 1) {\n modifiedItems.push(callback.call(dom[i], i, dom[i]));\n }\n return new Dom7(modifiedItems);\n}\n// eslint-disable-next-line\nfunction html(html) {\n if (typeof html === 'undefined') {\n return this[0] ? this[0].innerHTML : undefined;\n }\n\n for (let i = 0; i < this.length; i += 1) {\n this[i].innerHTML = html;\n }\n return this;\n}\n// eslint-disable-next-line\nfunction text(text) {\n if (typeof text === 'undefined') {\n if (this[0]) {\n return this[0].textContent.trim();\n }\n return null;\n }\n\n for (let i = 0; i < this.length; i += 1) {\n this[i].textContent = text;\n }\n return this;\n}\nfunction is(selector) {\n const el = this[0];\n let compareWith;\n let i;\n if (!el || typeof selector === 'undefined') return false;\n if (typeof selector === 'string') {\n if (el.matches) return el.matches(selector);\n else if (el.webkitMatchesSelector) return el.webkitMatchesSelector(selector);\n else if (el.msMatchesSelector) return el.msMatchesSelector(selector);\n\n compareWith = $(selector);\n for (i = 0; i < compareWith.length; i += 1) {\n if (compareWith[i] === el) return true;\n }\n return false;\n } else if (selector === document) return el === document;\n else if (selector === window) return el === window;\n\n if (selector.nodeType || selector instanceof Dom7) {\n compareWith = selector.nodeType ? [selector] : selector;\n for (i = 0; i < compareWith.length; i += 1) {\n if (compareWith[i] === el) return true;\n }\n return false;\n }\n return false;\n}\nfunction indexOf(el) {\n for (let i = 0; i < this.length; i += 1) {\n if (this[i] === el) return i;\n }\n return -1;\n}\nfunction index() {\n let child = this[0];\n let i;\n if (child) {\n i = 0;\n // eslint-disable-next-line\n while ((child = child.previousSibling) !== null) {\n if (child.nodeType === 1) i += 1;\n }\n return i;\n }\n return undefined;\n}\n// eslint-disable-next-line\nfunction eq(index) {\n if (typeof index === 'undefined') return this;\n const length = this.length;\n let returnIndex;\n if (index > length - 1) {\n return new Dom7([]);\n }\n if (index < 0) {\n returnIndex = length + index;\n if (returnIndex < 0) return new Dom7([]);\n return new Dom7([this[returnIndex]]);\n }\n return new Dom7([this[index]]);\n}\nfunction append(...args) {\n let newChild;\n\n for (let k = 0; k < args.length; k += 1) {\n newChild = args[k];\n for (let i = 0; i < this.length; i += 1) {\n if (typeof newChild === 'string') {\n const tempDiv = document.createElement('div');\n tempDiv.innerHTML = newChild;\n while (tempDiv.firstChild) {\n this[i].appendChild(tempDiv.firstChild);\n }\n } else if (newChild instanceof Dom7) {\n for (let j = 0; j < newChild.length; j += 1) {\n this[i].appendChild(newChild[j]);\n }\n } else {\n this[i].appendChild(newChild);\n }\n }\n }\n\n return this;\n}\n// eslint-disable-next-line\nfunction appendTo(parent) {\n $(parent).append(this);\n return this;\n}\nfunction prepend(newChild) {\n let i;\n let j;\n for (i = 0; i < this.length; i += 1) {\n if (typeof newChild === 'string') {\n const tempDiv = document.createElement('div');\n tempDiv.innerHTML = newChild;\n for (j = tempDiv.childNodes.length - 1; j >= 0; j -= 1) {\n this[i].insertBefore(tempDiv.childNodes[j], this[i].childNodes[0]);\n }\n } else if (newChild instanceof Dom7) {\n for (j = 0; j < newChild.length; j += 1) {\n this[i].insertBefore(newChild[j], this[i].childNodes[0]);\n }\n } else {\n this[i].insertBefore(newChild, this[i].childNodes[0]);\n }\n }\n return this;\n}\n// eslint-disable-next-line\nfunction prependTo(parent) {\n $(parent).prepend(this);\n return this;\n}\nfunction insertBefore(selector) {\n const before = $(selector);\n for (let i = 0; i < this.length; i += 1) {\n if (before.length === 1) {\n before[0].parentNode.insertBefore(this[i], before[0]);\n } else if (before.length > 1) {\n for (let j = 0; j < before.length; j += 1) {\n before[j].parentNode.insertBefore(this[i].cloneNode(true), before[j]);\n }\n }\n }\n}\nfunction insertAfter(selector) {\n const after = $(selector);\n for (let i = 0; i < this.length; i += 1) {\n if (after.length === 1) {\n after[0].parentNode.insertBefore(this[i], after[0].nextSibling);\n } else if (after.length > 1) {\n for (let j = 0; j < after.length; j += 1) {\n after[j].parentNode.insertBefore(this[i].cloneNode(true), after[j].nextSibling);\n }\n }\n }\n}\nfunction next(selector) {\n if (this.length > 0) {\n if (selector) {\n if (this[0].nextElementSibling && $(this[0].nextElementSibling).is(selector)) {\n return new Dom7([this[0].nextElementSibling]);\n }\n return new Dom7([]);\n }\n\n if (this[0].nextElementSibling) return new Dom7([this[0].nextElementSibling]);\n return new Dom7([]);\n }\n return new Dom7([]);\n}\nfunction nextAll(selector) {\n const nextEls = [];\n let el = this[0];\n if (!el) return new Dom7([]);\n while (el.nextElementSibling) {\n const next = el.nextElementSibling; // eslint-disable-line\n if (selector) {\n if ($(next).is(selector)) nextEls.push(next);\n } else nextEls.push(next);\n el = next;\n }\n return new Dom7(nextEls);\n}\nfunction prev(selector) {\n if (this.length > 0) {\n const el = this[0];\n if (selector) {\n if (el.previousElementSibling && $(el.previousElementSibling).is(selector)) {\n return new Dom7([el.previousElementSibling]);\n }\n return new Dom7([]);\n }\n\n if (el.previousElementSibling) return new Dom7([el.previousElementSibling]);\n return new Dom7([]);\n }\n return new Dom7([]);\n}\nfunction prevAll(selector) {\n const prevEls = [];\n let el = this[0];\n if (!el) return new Dom7([]);\n while (el.previousElementSibling) {\n const prev = el.previousElementSibling; // eslint-disable-line\n if (selector) {\n if ($(prev).is(selector)) prevEls.push(prev);\n } else prevEls.push(prev);\n el = prev;\n }\n return new Dom7(prevEls);\n}\nfunction siblings(selector) {\n return this.nextAll(selector).add(this.prevAll(selector));\n}\nfunction parent(selector) {\n const parents = []; // eslint-disable-line\n for (let i = 0; i < this.length; i += 1) {\n if (this[i].parentNode !== null) {\n if (selector) {\n if ($(this[i].parentNode).is(selector)) parents.push(this[i].parentNode);\n } else {\n parents.push(this[i].parentNode);\n }\n }\n }\n return $(unique(parents));\n}\nfunction parents(selector) {\n const parents = []; // eslint-disable-line\n for (let i = 0; i < this.length; i += 1) {\n let parent = this[i].parentNode; // eslint-disable-line\n while (parent) {\n if (selector) {\n if ($(parent).is(selector)) parents.push(parent);\n } else {\n parents.push(parent);\n }\n parent = parent.parentNode;\n }\n }\n return $(unique(parents));\n}\nfunction closest(selector) {\n let closest = this; // eslint-disable-line\n if (typeof selector === 'undefined') {\n return new Dom7([]);\n }\n if (!closest.is(selector)) {\n closest = closest.parents(selector).eq(0);\n }\n return closest;\n}\nfunction find(selector) {\n const foundElements = [];\n for (let i = 0; i < this.length; i += 1) {\n const found = this[i].querySelectorAll(selector);\n for (let j = 0; j < found.length; j += 1) {\n foundElements.push(found[j]);\n }\n }\n return new Dom7(foundElements);\n}\nfunction children(selector) {\n const children = []; // eslint-disable-line\n for (let i = 0; i < this.length; i += 1) {\n const childNodes = this[i].childNodes;\n\n for (let j = 0; j < childNodes.length; j += 1) {\n if (!selector) {\n if (childNodes[j].nodeType === 1) children.push(childNodes[j]);\n } else if (childNodes[j].nodeType === 1 && $(childNodes[j]).is(selector)) {\n children.push(childNodes[j]);\n }\n }\n }\n return new Dom7(unique(children));\n}\nfunction remove() {\n for (let i = 0; i < this.length; i += 1) {\n if (this[i].parentNode) this[i].parentNode.removeChild(this[i]);\n }\n return this;\n}\nfunction detach() {\n return this.remove();\n}\nfunction add(...args) {\n const dom = this;\n let i;\n let j;\n for (i = 0; i < args.length; i += 1) {\n const toAdd = $(args[i]);\n for (j = 0; j < toAdd.length; j += 1) {\n dom[dom.length] = toAdd[j];\n dom.length += 1;\n }\n }\n return dom;\n}\nfunction empty() {\n for (let i = 0; i < this.length; i += 1) {\n const el = this[i];\n if (el.nodeType === 1) {\n for (let j = 0; j < el.childNodes.length; j += 1) {\n if (el.childNodes[j].parentNode) {\n el.childNodes[j].parentNode.removeChild(el.childNodes[j]);\n }\n }\n el.textContent = '';\n }\n }\n return this;\n}\n\nfunction scrollTo(...args) {\n let [left, top, duration, easing, callback] = args;\n if (args.length === 4 && typeof easing === 'function') {\n callback = easing;\n [left, top, duration, callback, easing] = args;\n }\n if (typeof easing === 'undefined') easing = 'swing';\n\n return this.each(function animate() {\n const el = this;\n let currentTop;\n let currentLeft;\n let maxTop;\n let maxLeft;\n let newTop;\n let newLeft;\n let scrollTop; // eslint-disable-line\n let scrollLeft; // eslint-disable-line\n let animateTop = top > 0 || top === 0;\n let animateLeft = left > 0 || left === 0;\n if (typeof easing === 'undefined') {\n easing = 'swing';\n }\n if (animateTop) {\n currentTop = el.scrollTop;\n if (!duration) {\n el.scrollTop = top;\n }\n }\n if (animateLeft) {\n currentLeft = el.scrollLeft;\n if (!duration) {\n el.scrollLeft = left;\n }\n }\n if (!duration) return;\n if (animateTop) {\n maxTop = el.scrollHeight - el.offsetHeight;\n newTop = Math.max(Math.min(top, maxTop), 0);\n }\n if (animateLeft) {\n maxLeft = el.scrollWidth - el.offsetWidth;\n newLeft = Math.max(Math.min(left, maxLeft), 0);\n }\n let startTime = null;\n if (animateTop && newTop === currentTop) animateTop = false;\n if (animateLeft && newLeft === currentLeft) animateLeft = false;\n function render(time = new Date().getTime()) {\n if (startTime === null) {\n startTime = time;\n }\n const progress = Math.max(Math.min((time - startTime) / duration, 1), 0);\n const easeProgress = easing === 'linear' ? progress : (0.5 - (Math.cos(progress * Math.PI) / 2));\n let done;\n if (animateTop) scrollTop = currentTop + (easeProgress * (newTop - currentTop));\n if (animateLeft) scrollLeft = currentLeft + (easeProgress * (newLeft - currentLeft));\n if (animateTop && newTop > currentTop && scrollTop >= newTop) {\n el.scrollTop = newTop;\n done = true;\n }\n if (animateTop && newTop < currentTop && scrollTop <= newTop) {\n el.scrollTop = newTop;\n done = true;\n }\n if (animateLeft && newLeft > currentLeft && scrollLeft >= newLeft) {\n el.scrollLeft = newLeft;\n done = true;\n }\n if (animateLeft && newLeft < currentLeft && scrollLeft <= newLeft) {\n el.scrollLeft = newLeft;\n done = true;\n }\n\n if (done) {\n if (callback) callback();\n return;\n }\n if (animateTop) el.scrollTop = scrollTop;\n if (animateLeft) el.scrollLeft = scrollLeft;\n requestAnimationFrame(render);\n }\n requestAnimationFrame(render);\n });\n}\n// scrollTop(top, duration, easing, callback) {\nfunction scrollTop(...args) {\n let [top, duration, easing, callback] = args;\n if (args.length === 3 && typeof easing === 'function') {\n [top, duration, callback, easing] = args;\n }\n const dom = this;\n if (typeof top === 'undefined') {\n if (dom.length > 0) return dom[0].scrollTop;\n return null;\n }\n return dom.scrollTo(undefined, top, duration, easing, callback);\n}\nfunction scrollLeft(...args) {\n let [left, duration, easing, callback] = args;\n if (args.length === 3 && typeof easing === 'function') {\n [left, duration, callback, easing] = args;\n }\n const dom = this;\n if (typeof left === 'undefined') {\n if (dom.length > 0) return dom[0].scrollLeft;\n return null;\n }\n return dom.scrollTo(left, undefined, duration, easing, callback);\n}\n\nfunction animate(initialProps, initialParams) {\n const els = this;\n const a = {\n props: Object.assign({}, initialProps),\n params: Object.assign({\n duration: 300,\n easing: 'swing', // or 'linear'\n /* Callbacks\n begin(elements)\n complete(elements)\n progress(elements, complete, remaining, start, tweenValue)\n */\n }, initialParams),\n\n elements: els,\n animating: false,\n que: [],\n\n easingProgress(easing, progress) {\n if (easing === 'swing') {\n return 0.5 - (Math.cos(progress * Math.PI) / 2);\n }\n if (typeof easing === 'function') {\n return easing(progress);\n }\n return progress;\n },\n stop() {\n if (a.frameId) {\n cancelAnimationFrame(a.frameId);\n }\n a.animating = false;\n a.elements.each((index, el) => {\n const element = el;\n delete element.dom7AnimateInstance;\n });\n a.que = [];\n },\n done(complete) {\n a.animating = false;\n a.elements.each((index, el) => {\n const element = el;\n delete element.dom7AnimateInstance;\n });\n if (complete) complete(els);\n if (a.que.length > 0) {\n const que = a.que.shift();\n a.animate(que[0], que[1]);\n }\n },\n animate(props, params) {\n if (a.animating) {\n a.que.push([props, params]);\n return a;\n }\n const elements = [];\n\n // Define & Cache Initials & Units\n a.elements.each((index, el) => {\n let initialFullValue;\n let initialValue;\n let unit;\n let finalValue;\n let finalFullValue;\n\n if (!el.dom7AnimateInstance) a.elements[index].dom7AnimateInstance = a;\n\n elements[index] = {\n container: el,\n };\n Object.keys(props).forEach((prop) => {\n initialFullValue = window.getComputedStyle(el, null).getPropertyValue(prop).replace(',', '.');\n initialValue = parseFloat(initialFullValue);\n unit = initialFullValue.replace(initialValue, '');\n finalValue = parseFloat(props[prop]);\n finalFullValue = props[prop] + unit;\n elements[index][prop] = {\n initialFullValue,\n initialValue,\n unit,\n finalValue,\n finalFullValue,\n currentValue: initialValue,\n };\n });\n });\n\n let startTime = null;\n let time;\n let elementsDone = 0;\n let propsDone = 0;\n let done;\n let began = false;\n\n a.animating = true;\n\n function render() {\n time = new Date().getTime();\n let progress;\n let easeProgress;\n // let el;\n if (!began) {\n began = true;\n if (params.begin) params.begin(els);\n }\n if (startTime === null) {\n startTime = time;\n }\n if (params.progress) {\n // eslint-disable-next-line\n params.progress(els, Math.max(Math.min((time - startTime) / params.duration, 1), 0), ((startTime + params.duration) - time < 0 ? 0 : (startTime + params.duration) - time), startTime);\n }\n\n elements.forEach((element) => {\n const el = element;\n if (done || el.done) return;\n Object.keys(props).forEach((prop) => {\n if (done || el.done) return;\n progress = Math.max(Math.min((time - startTime) / params.duration, 1), 0);\n easeProgress = a.easingProgress(params.easing, progress);\n const { initialValue, finalValue, unit } = el[prop];\n el[prop].currentValue = initialValue + (easeProgress * (finalValue - initialValue));\n const currentValue = el[prop].currentValue;\n\n if (\n (finalValue > initialValue && currentValue >= finalValue) ||\n (finalValue < initialValue && currentValue <= finalValue)) {\n el.container.style[prop] = finalValue + unit;\n propsDone += 1;\n if (propsDone === Object.keys(props).length) {\n el.done = true;\n elementsDone += 1;\n }\n if (elementsDone === elements.length) {\n done = true;\n }\n }\n if (done) {\n a.done(params.complete);\n return;\n }\n el.container.style[prop] = currentValue + unit;\n });\n });\n if (done) return;\n // Then call\n a.frameId = requestAnimationFrame(render);\n }\n a.frameId = requestAnimationFrame(render);\n return a;\n },\n };\n\n if (a.elements.length === 0) {\n return els;\n }\n\n let animateInstance;\n for (let i = 0; i < a.elements.length; i += 1) {\n if (a.elements[i].dom7AnimateInstance) {\n animateInstance = a.elements[i].dom7AnimateInstance;\n } else a.elements[i].dom7AnimateInstance = a;\n }\n if (!animateInstance) {\n animateInstance = a;\n }\n\n if (initialProps === 'stop') {\n animateInstance.stop();\n } else {\n animateInstance.animate(a.props, a.params);\n }\n\n return els;\n}\n\nfunction stop() {\n const els = this;\n for (let i = 0; i < els.length; i += 1) {\n if (els[i].dom7AnimateInstance) {\n els[i].dom7AnimateInstance.stop();\n }\n }\n}\n\nconst noTrigger = ('resize scroll').split(' ');\nfunction eventShortcut(name, ...args) {\n if (typeof args[0] === 'undefined') {\n for (let i = 0; i < this.length; i += 1) {\n if (noTrigger.indexOf(name) < 0) {\n if (name in this[i]) this[i][name]();\n else {\n $(this[i]).trigger(name);\n }\n }\n }\n return this;\n }\n return this.on(name, ...args);\n}\n\nfunction click(...args) {\n return eventShortcut.bind(this)('click', ...args);\n}\nfunction blur(...args) {\n return eventShortcut.bind(this)('blur', ...args);\n}\nfunction focus(...args) {\n return eventShortcut.bind(this)('focus', ...args);\n}\nfunction focusin(...args) {\n return eventShortcut.bind(this)('focusin', ...args);\n}\nfunction focusout(...args) {\n return eventShortcut.bind(this)('focusout', ...args);\n}\nfunction keyup(...args) {\n return eventShortcut.bind(this)('keyup', ...args);\n}\nfunction keydown(...args) {\n return eventShortcut.bind(this)('keydown', ...args);\n}\nfunction keypress(...args) {\n return eventShortcut.bind(this)('keypress', ...args);\n}\nfunction submit(...args) {\n return eventShortcut.bind(this)('submit', ...args);\n}\nfunction change(...args) {\n return eventShortcut.bind(this)('change', ...args);\n}\nfunction mousedown(...args) {\n return eventShortcut.bind(this)('mousedown', ...args);\n}\nfunction mousemove(...args) {\n return eventShortcut.bind(this)('mousemove', ...args);\n}\nfunction mouseup(...args) {\n return eventShortcut.bind(this)('mouseup', ...args);\n}\nfunction mouseenter(...args) {\n return eventShortcut.bind(this)('mouseenter', ...args);\n}\nfunction mouseleave(...args) {\n return eventShortcut.bind(this)('mouseleave', ...args);\n}\nfunction mouseout(...args) {\n return eventShortcut.bind(this)('mouseout', ...args);\n}\nfunction mouseover(...args) {\n return eventShortcut.bind(this)('mouseover', ...args);\n}\nfunction touchstart(...args) {\n return eventShortcut.bind(this)('touchstart', ...args);\n}\nfunction touchend(...args) {\n return eventShortcut.bind(this)('touchend', ...args);\n}\nfunction touchmove(...args) {\n return eventShortcut.bind(this)('touchmove', ...args);\n}\nfunction resize(...args) {\n return eventShortcut.bind(this)('resize', ...args);\n}\nfunction scroll(...args) {\n return eventShortcut.bind(this)('scroll', ...args);\n}\n\nexport { $, addClass, removeClass, hasClass, toggleClass, attr, removeAttr, prop, data, removeData, dataset, val, transform, transition, on, off, once, trigger, transitionEnd, animationEnd, width, outerWidth, height, outerHeight, offset, hide, show, styles, css, toArray, each, forEach, filter, map, html, text, is, indexOf, index, eq, append, appendTo, prepend, prependTo, insertBefore, insertAfter, next, nextAll, prev, prevAll, siblings, parent, parents, closest, find, children, remove, detach, add, empty, scrollTo, scrollTop, scrollLeft, animate, stop, click, blur, focus, focusin, focusout, keyup, keydown, keypress, submit, change, mousedown, mousemove, mouseup, mouseenter, mouseleave, mouseout, mouseover, touchstart, touchend, touchmove, resize, scroll };\n","/**\n * Swiper 5.4.5\n * Most modern mobile touch slider and framework with hardware accelerated transitions\n * http://swiperjs.com\n *\n * Copyright 2014-2020 Vladimir Kharlampidi\n *\n * Released under the MIT License\n *\n * Released on: June 16, 2020\n */\n\nimport { $, addClass, removeClass, hasClass, toggleClass, attr, removeAttr, data, transform, transition as transition$1, on, off, trigger, transitionEnd as transitionEnd$1, outerWidth, outerHeight, offset, css, each, html, text, is, index, eq, append, prepend, next, nextAll, prev, prevAll, parent, parents, closest, find, children, filter, remove, add, styles } from 'dom7/dist/dom7.modular';\nimport { window, document as document$1 } from 'ssr-window';\n\nconst Methods = {\n addClass,\n removeClass,\n hasClass,\n toggleClass,\n attr,\n removeAttr,\n data,\n transform,\n transition: transition$1,\n on,\n off,\n trigger,\n transitionEnd: transitionEnd$1,\n outerWidth,\n outerHeight,\n offset,\n css,\n each,\n html,\n text,\n is,\n index,\n eq,\n append,\n prepend,\n next,\n nextAll,\n prev,\n prevAll,\n parent,\n parents,\n closest,\n find,\n children,\n filter,\n remove,\n add,\n styles,\n};\n\nObject.keys(Methods).forEach((methodName) => {\n $.fn[methodName] = $.fn[methodName] || Methods[methodName];\n});\n\nconst Utils = {\n deleteProps(obj) {\n const object = obj;\n Object.keys(object).forEach((key) => {\n try {\n object[key] = null;\n } catch (e) {\n // no getter for object\n }\n try {\n delete object[key];\n } catch (e) {\n // something got wrong\n }\n });\n },\n nextTick(callback, delay = 0) {\n return setTimeout(callback, delay);\n },\n now() {\n return Date.now();\n },\n getTranslate(el, axis = 'x') {\n let matrix;\n let curTransform;\n let transformMatrix;\n\n const curStyle = window.getComputedStyle(el, null);\n\n if (window.WebKitCSSMatrix) {\n curTransform = curStyle.transform || curStyle.webkitTransform;\n if (curTransform.split(',').length > 6) {\n curTransform = curTransform.split(', ').map((a) => a.replace(',', '.')).join(', ');\n }\n // Some old versions of Webkit choke when 'none' is passed; pass\n // empty string instead in this case\n transformMatrix = new window.WebKitCSSMatrix(curTransform === 'none' ? '' : curTransform);\n } else {\n transformMatrix = curStyle.MozTransform || curStyle.OTransform || curStyle.MsTransform || curStyle.msTransform || curStyle.transform || curStyle.getPropertyValue('transform').replace('translate(', 'matrix(1, 0, 0, 1,');\n matrix = transformMatrix.toString().split(',');\n }\n\n if (axis === 'x') {\n // Latest Chrome and webkits Fix\n if (window.WebKitCSSMatrix) curTransform = transformMatrix.m41;\n // Crazy IE10 Matrix\n else if (matrix.length === 16) curTransform = parseFloat(matrix[12]);\n // Normal Browsers\n else curTransform = parseFloat(matrix[4]);\n }\n if (axis === 'y') {\n // Latest Chrome and webkits Fix\n if (window.WebKitCSSMatrix) curTransform = transformMatrix.m42;\n // Crazy IE10 Matrix\n else if (matrix.length === 16) curTransform = parseFloat(matrix[13]);\n // Normal Browsers\n else curTransform = parseFloat(matrix[5]);\n }\n return curTransform || 0;\n },\n parseUrlQuery(url) {\n const query = {};\n let urlToParse = url || window.location.href;\n let i;\n let params;\n let param;\n let length;\n if (typeof urlToParse === 'string' && urlToParse.length) {\n urlToParse = urlToParse.indexOf('?') > -1 ? urlToParse.replace(/\\S*\\?/, '') : '';\n params = urlToParse.split('&').filter((paramsPart) => paramsPart !== '');\n length = params.length;\n\n for (i = 0; i < length; i += 1) {\n param = params[i].replace(/#\\S+/g, '').split('=');\n query[decodeURIComponent(param[0])] = typeof param[1] === 'undefined' ? undefined : decodeURIComponent(param[1]) || '';\n }\n }\n return query;\n },\n isObject(o) {\n return typeof o === 'object' && o !== null && o.constructor && o.constructor === Object;\n },\n extend(...args) {\n const to = Object(args[0]);\n for (let i = 1; i < args.length; i += 1) {\n const nextSource = args[i];\n if (nextSource !== undefined && nextSource !== null) {\n const keysArray = Object.keys(Object(nextSource));\n for (let nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex += 1) {\n const nextKey = keysArray[nextIndex];\n const desc = Object.getOwnPropertyDescriptor(nextSource, nextKey);\n if (desc !== undefined && desc.enumerable) {\n if (Utils.isObject(to[nextKey]) && Utils.isObject(nextSource[nextKey])) {\n Utils.extend(to[nextKey], nextSource[nextKey]);\n } else if (!Utils.isObject(to[nextKey]) && Utils.isObject(nextSource[nextKey])) {\n to[nextKey] = {};\n Utils.extend(to[nextKey], nextSource[nextKey]);\n } else {\n to[nextKey] = nextSource[nextKey];\n }\n }\n }\n }\n }\n return to;\n },\n};\n\nconst Support = (function Support() {\n return {\n touch: !!(('ontouchstart' in window) || (window.DocumentTouch && document$1 instanceof window.DocumentTouch)),\n\n pointerEvents: !!window.PointerEvent && ('maxTouchPoints' in window.navigator) && window.navigator.maxTouchPoints >= 0,\n\n observer: (function checkObserver() {\n return ('MutationObserver' in window || 'WebkitMutationObserver' in window);\n }()),\n\n passiveListener: (function checkPassiveListener() {\n let supportsPassive = false;\n try {\n const opts = Object.defineProperty({}, 'passive', {\n // eslint-disable-next-line\n get() {\n supportsPassive = true;\n },\n });\n window.addEventListener('testPassiveListener', null, opts);\n } catch (e) {\n // No support\n }\n return supportsPassive;\n }()),\n\n gestures: (function checkGestures() {\n return 'ongesturestart' in window;\n }()),\n };\n}());\n\nclass SwiperClass {\n constructor(params = {}) {\n const self = this;\n self.params = params;\n\n // Events\n self.eventsListeners = {};\n\n if (self.params && self.params.on) {\n Object.keys(self.params.on).forEach((eventName) => {\n self.on(eventName, self.params.on[eventName]);\n });\n }\n }\n\n on(events, handler, priority) {\n const self = this;\n if (typeof handler !== 'function') return self;\n const method = priority ? 'unshift' : 'push';\n events.split(' ').forEach((event) => {\n if (!self.eventsListeners[event]) self.eventsListeners[event] = [];\n self.eventsListeners[event][method](handler);\n });\n return self;\n }\n\n once(events, handler, priority) {\n const self = this;\n if (typeof handler !== 'function') return self;\n function onceHandler(...args) {\n self.off(events, onceHandler);\n if (onceHandler.f7proxy) {\n delete onceHandler.f7proxy;\n }\n handler.apply(self, args);\n }\n onceHandler.f7proxy = handler;\n return self.on(events, onceHandler, priority);\n }\n\n off(events, handler) {\n const self = this;\n if (!self.eventsListeners) return self;\n events.split(' ').forEach((event) => {\n if (typeof handler === 'undefined') {\n self.eventsListeners[event] = [];\n } else if (self.eventsListeners[event] && self.eventsListeners[event].length) {\n self.eventsListeners[event].forEach((eventHandler, index) => {\n if (eventHandler === handler || (eventHandler.f7proxy && eventHandler.f7proxy === handler)) {\n self.eventsListeners[event].splice(index, 1);\n }\n });\n }\n });\n return self;\n }\n\n emit(...args) {\n const self = this;\n if (!self.eventsListeners) return self;\n let events;\n let data;\n let context;\n if (typeof args[0] === 'string' || Array.isArray(args[0])) {\n events = args[0];\n data = args.slice(1, args.length);\n context = self;\n } else {\n events = args[0].events;\n data = args[0].data;\n context = args[0].context || self;\n }\n const eventsArray = Array.isArray(events) ? events : events.split(' ');\n eventsArray.forEach((event) => {\n if (self.eventsListeners && self.eventsListeners[event]) {\n const handlers = [];\n self.eventsListeners[event].forEach((eventHandler) => {\n handlers.push(eventHandler);\n });\n handlers.forEach((eventHandler) => {\n eventHandler.apply(context, data);\n });\n }\n });\n return self;\n }\n\n useModulesParams(instanceParams) {\n const instance = this;\n if (!instance.modules) return;\n Object.keys(instance.modules).forEach((moduleName) => {\n const module = instance.modules[moduleName];\n // Extend params\n if (module.params) {\n Utils.extend(instanceParams, module.params);\n }\n });\n }\n\n useModules(modulesParams = {}) {\n const instance = this;\n if (!instance.modules) return;\n Object.keys(instance.modules).forEach((moduleName) => {\n const module = instance.modules[moduleName];\n const moduleParams = modulesParams[moduleName] || {};\n // Extend instance methods and props\n if (module.instance) {\n Object.keys(module.instance).forEach((modulePropName) => {\n const moduleProp = module.instance[modulePropName];\n if (typeof moduleProp === 'function') {\n instance[modulePropName] = moduleProp.bind(instance);\n } else {\n instance[modulePropName] = moduleProp;\n }\n });\n }\n // Add event listeners\n if (module.on && instance.on) {\n Object.keys(module.on).forEach((moduleEventName) => {\n instance.on(moduleEventName, module.on[moduleEventName]);\n });\n }\n\n // Module create callback\n if (module.create) {\n module.create.bind(instance)(moduleParams);\n }\n });\n }\n\n static set components(components) {\n const Class = this;\n if (!Class.use) return;\n Class.use(components);\n }\n\n static installModule(module, ...params) {\n const Class = this;\n if (!Class.prototype.modules) Class.prototype.modules = {};\n const name = module.name || (`${Object.keys(Class.prototype.modules).length}_${Utils.now()}`);\n Class.prototype.modules[name] = module;\n // Prototype\n if (module.proto) {\n Object.keys(module.proto).forEach((key) => {\n Class.prototype[key] = module.proto[key];\n });\n }\n // Class\n if (module.static) {\n Object.keys(module.static).forEach((key) => {\n Class[key] = module.static[key];\n });\n }\n // Callback\n if (module.install) {\n module.install.apply(Class, params);\n }\n return Class;\n }\n\n static use(module, ...params) {\n const Class = this;\n if (Array.isArray(module)) {\n module.forEach((m) => Class.installModule(m));\n return Class;\n }\n return Class.installModule(module, ...params);\n }\n}\n\nfunction updateSize () {\n const swiper = this;\n let width;\n let height;\n const $el = swiper.$el;\n if (typeof swiper.params.width !== 'undefined') {\n width = swiper.params.width;\n } else {\n width = $el[0].clientWidth;\n }\n if (typeof swiper.params.height !== 'undefined') {\n height = swiper.params.height;\n } else {\n height = $el[0].clientHeight;\n }\n if ((width === 0 && swiper.isHorizontal()) || (height === 0 && swiper.isVertical())) {\n return;\n }\n\n // Subtract paddings\n width = width - parseInt($el.css('padding-left'), 10) - parseInt($el.css('padding-right'), 10);\n height = height - parseInt($el.css('padding-top'), 10) - parseInt($el.css('padding-bottom'), 10);\n\n Utils.extend(swiper, {\n width,\n height,\n size: swiper.isHorizontal() ? width : height,\n });\n}\n\nfunction updateSlides () {\n const swiper = this;\n const params = swiper.params;\n\n const {\n $wrapperEl, size: swiperSize, rtlTranslate: rtl, wrongRTL,\n } = swiper;\n const isVirtual = swiper.virtual && params.virtual.enabled;\n const previousSlidesLength = isVirtual ? swiper.virtual.slides.length : swiper.slides.length;\n const slides = $wrapperEl.children(`.${swiper.params.slideClass}`);\n const slidesLength = isVirtual ? swiper.virtual.slides.length : slides.length;\n let snapGrid = [];\n const slidesGrid = [];\n const slidesSizesGrid = [];\n\n function slidesForMargin(slideIndex) {\n if (!params.cssMode) return true;\n if (slideIndex === slides.length - 1) {\n return false;\n }\n return true;\n }\n\n let offsetBefore = params.slidesOffsetBefore;\n if (typeof offsetBefore === 'function') {\n offsetBefore = params.slidesOffsetBefore.call(swiper);\n }\n\n let offsetAfter = params.slidesOffsetAfter;\n if (typeof offsetAfter === 'function') {\n offsetAfter = params.slidesOffsetAfter.call(swiper);\n }\n\n const previousSnapGridLength = swiper.snapGrid.length;\n const previousSlidesGridLength = swiper.snapGrid.length;\n\n let spaceBetween = params.spaceBetween;\n let slidePosition = -offsetBefore;\n let prevSlideSize = 0;\n let index = 0;\n if (typeof swiperSize === 'undefined') {\n return;\n }\n if (typeof spaceBetween === 'string' && spaceBetween.indexOf('%') >= 0) {\n spaceBetween = (parseFloat(spaceBetween.replace('%', '')) / 100) * swiperSize;\n }\n\n swiper.virtualSize = -spaceBetween;\n\n // reset margins\n if (rtl) slides.css({ marginLeft: '', marginTop: '' });\n else slides.css({ marginRight: '', marginBottom: '' });\n\n let slidesNumberEvenToRows;\n if (params.slidesPerColumn > 1) {\n if (Math.floor(slidesLength / params.slidesPerColumn) === slidesLength / swiper.params.slidesPerColumn) {\n slidesNumberEvenToRows = slidesLength;\n } else {\n slidesNumberEvenToRows = Math.ceil(slidesLength / params.slidesPerColumn) * params.slidesPerColumn;\n }\n if (params.slidesPerView !== 'auto' && params.slidesPerColumnFill === 'row') {\n slidesNumberEvenToRows = Math.max(slidesNumberEvenToRows, params.slidesPerView * params.slidesPerColumn);\n }\n }\n\n // Calc slides\n let slideSize;\n const slidesPerColumn = params.slidesPerColumn;\n const slidesPerRow = slidesNumberEvenToRows / slidesPerColumn;\n const numFullColumns = Math.floor(slidesLength / params.slidesPerColumn);\n for (let i = 0; i < slidesLength; i += 1) {\n slideSize = 0;\n const slide = slides.eq(i);\n if (params.slidesPerColumn > 1) {\n // Set slides order\n let newSlideOrderIndex;\n let column;\n let row;\n if (params.slidesPerColumnFill === 'row' && params.slidesPerGroup > 1) {\n const groupIndex = Math.floor(i / (params.slidesPerGroup * params.slidesPerColumn));\n const slideIndexInGroup = i - params.slidesPerColumn * params.slidesPerGroup * groupIndex;\n const columnsInGroup = groupIndex === 0\n ? params.slidesPerGroup\n : Math.min(Math.ceil((slidesLength - groupIndex * slidesPerColumn * params.slidesPerGroup) / slidesPerColumn), params.slidesPerGroup);\n row = Math.floor(slideIndexInGroup / columnsInGroup);\n column = (slideIndexInGroup - row * columnsInGroup) + groupIndex * params.slidesPerGroup;\n\n newSlideOrderIndex = column + ((row * slidesNumberEvenToRows) / slidesPerColumn);\n slide\n .css({\n '-webkit-box-ordinal-group': newSlideOrderIndex,\n '-moz-box-ordinal-group': newSlideOrderIndex,\n '-ms-flex-order': newSlideOrderIndex,\n '-webkit-order': newSlideOrderIndex,\n order: newSlideOrderIndex,\n });\n } else if (params.slidesPerColumnFill === 'column') {\n column = Math.floor(i / slidesPerColumn);\n row = i - (column * slidesPerColumn);\n if (column > numFullColumns || (column === numFullColumns && row === slidesPerColumn - 1)) {\n row += 1;\n if (row >= slidesPerColumn) {\n row = 0;\n column += 1;\n }\n }\n } else {\n row = Math.floor(i / slidesPerRow);\n column = i - (row * slidesPerRow);\n }\n slide.css(\n `margin-${swiper.isHorizontal() ? 'top' : 'left'}`,\n (row !== 0 && params.spaceBetween) && (`${params.spaceBetween}px`)\n );\n }\n if (slide.css('display') === 'none') continue; // eslint-disable-line\n\n if (params.slidesPerView === 'auto') {\n const slideStyles = window.getComputedStyle(slide[0], null);\n const currentTransform = slide[0].style.transform;\n const currentWebKitTransform = slide[0].style.webkitTransform;\n if (currentTransform) {\n slide[0].style.transform = 'none';\n }\n if (currentWebKitTransform) {\n slide[0].style.webkitTransform = 'none';\n }\n if (params.roundLengths) {\n slideSize = swiper.isHorizontal()\n ? slide.outerWidth(true)\n : slide.outerHeight(true);\n } else {\n // eslint-disable-next-line\n if (swiper.isHorizontal()) {\n const width = parseFloat(slideStyles.getPropertyValue('width'));\n const paddingLeft = parseFloat(slideStyles.getPropertyValue('padding-left'));\n const paddingRight = parseFloat(slideStyles.getPropertyValue('padding-right'));\n const marginLeft = parseFloat(slideStyles.getPropertyValue('margin-left'));\n const marginRight = parseFloat(slideStyles.getPropertyValue('margin-right'));\n const boxSizing = slideStyles.getPropertyValue('box-sizing');\n if (boxSizing && boxSizing === 'border-box') {\n slideSize = width + marginLeft + marginRight;\n } else {\n slideSize = width + paddingLeft + paddingRight + marginLeft + marginRight;\n }\n } else {\n const height = parseFloat(slideStyles.getPropertyValue('height'));\n const paddingTop = parseFloat(slideStyles.getPropertyValue('padding-top'));\n const paddingBottom = parseFloat(slideStyles.getPropertyValue('padding-bottom'));\n const marginTop = parseFloat(slideStyles.getPropertyValue('margin-top'));\n const marginBottom = parseFloat(slideStyles.getPropertyValue('margin-bottom'));\n const boxSizing = slideStyles.getPropertyValue('box-sizing');\n if (boxSizing && boxSizing === 'border-box') {\n slideSize = height + marginTop + marginBottom;\n } else {\n slideSize = height + paddingTop + paddingBottom + marginTop + marginBottom;\n }\n }\n }\n if (currentTransform) {\n slide[0].style.transform = currentTransform;\n }\n if (currentWebKitTransform) {\n slide[0].style.webkitTransform = currentWebKitTransform;\n }\n if (params.roundLengths) slideSize = Math.floor(slideSize);\n } else {\n slideSize = (swiperSize - ((params.slidesPerView - 1) * spaceBetween)) / params.slidesPerView;\n if (params.roundLengths) slideSize = Math.floor(slideSize);\n\n if (slides[i]) {\n if (swiper.isHorizontal()) {\n slides[i].style.width = `${slideSize}px`;\n } else {\n slides[i].style.height = `${slideSize}px`;\n }\n }\n }\n if (slides[i]) {\n slides[i].swiperSlideSize = slideSize;\n }\n slidesSizesGrid.push(slideSize);\n\n\n if (params.centeredSlides) {\n slidePosition = slidePosition + (slideSize / 2) + (prevSlideSize / 2) + spaceBetween;\n if (prevSlideSize === 0 && i !== 0) slidePosition = slidePosition - (swiperSize / 2) - spaceBetween;\n if (i === 0) slidePosition = slidePosition - (swiperSize / 2) - spaceBetween;\n if (Math.abs(slidePosition) < 1 / 1000) slidePosition = 0;\n if (params.roundLengths) slidePosition = Math.floor(slidePosition);\n if ((index) % params.slidesPerGroup === 0) snapGrid.push(slidePosition);\n slidesGrid.push(slidePosition);\n } else {\n if (params.roundLengths) slidePosition = Math.floor(slidePosition);\n if ((index - Math.min(swiper.params.slidesPerGroupSkip, index)) % swiper.params.slidesPerGroup === 0) snapGrid.push(slidePosition);\n slidesGrid.push(slidePosition);\n slidePosition = slidePosition + slideSize + spaceBetween;\n }\n\n swiper.virtualSize += slideSize + spaceBetween;\n\n prevSlideSize = slideSize;\n\n index += 1;\n }\n swiper.virtualSize = Math.max(swiper.virtualSize, swiperSize) + offsetAfter;\n let newSlidesGrid;\n\n if (\n rtl && wrongRTL && (params.effect === 'slide' || params.effect === 'coverflow')) {\n $wrapperEl.css({ width: `${swiper.virtualSize + params.spaceBetween}px` });\n }\n if (params.setWrapperSize) {\n if (swiper.isHorizontal()) $wrapperEl.css({ width: `${swiper.virtualSize + params.spaceBetween}px` });\n else $wrapperEl.css({ height: `${swiper.virtualSize + params.spaceBetween}px` });\n }\n\n if (params.slidesPerColumn > 1) {\n swiper.virtualSize = (slideSize + params.spaceBetween) * slidesNumberEvenToRows;\n swiper.virtualSize = Math.ceil(swiper.virtualSize / params.slidesPerColumn) - params.spaceBetween;\n if (swiper.isHorizontal()) $wrapperEl.css({ width: `${swiper.virtualSize + params.spaceBetween}px` });\n else $wrapperEl.css({ height: `${swiper.virtualSize + params.spaceBetween}px` });\n if (params.centeredSlides) {\n newSlidesGrid = [];\n for (let i = 0; i < snapGrid.length; i += 1) {\n let slidesGridItem = snapGrid[i];\n if (params.roundLengths) slidesGridItem = Math.floor(slidesGridItem);\n if (snapGrid[i] < swiper.virtualSize + snapGrid[0]) newSlidesGrid.push(slidesGridItem);\n }\n snapGrid = newSlidesGrid;\n }\n }\n\n // Remove last grid elements depending on width\n if (!params.centeredSlides) {\n newSlidesGrid = [];\n for (let i = 0; i < snapGrid.length; i += 1) {\n let slidesGridItem = snapGrid[i];\n if (params.roundLengths) slidesGridItem = Math.floor(slidesGridItem);\n if (snapGrid[i] <= swiper.virtualSize - swiperSize) {\n newSlidesGrid.push(slidesGridItem);\n }\n }\n snapGrid = newSlidesGrid;\n if (Math.floor(swiper.virtualSize - swiperSize) - Math.floor(snapGrid[snapGrid.length - 1]) > 1) {\n snapGrid.push(swiper.virtualSize - swiperSize);\n }\n }\n if (snapGrid.length === 0) snapGrid = [0];\n\n if (params.spaceBetween !== 0) {\n if (swiper.isHorizontal()) {\n if (rtl) slides.filter(slidesForMargin).css({ marginLeft: `${spaceBetween}px` });\n else slides.filter(slidesForMargin).css({ marginRight: `${spaceBetween}px` });\n } else slides.filter(slidesForMargin).css({ marginBottom: `${spaceBetween}px` });\n }\n\n if (params.centeredSlides && params.centeredSlidesBounds) {\n let allSlidesSize = 0;\n slidesSizesGrid.forEach((slideSizeValue) => {\n allSlidesSize += slideSizeValue + (params.spaceBetween ? params.spaceBetween : 0);\n });\n allSlidesSize -= params.spaceBetween;\n const maxSnap = allSlidesSize - swiperSize;\n snapGrid = snapGrid.map((snap) => {\n if (snap < 0) return -offsetBefore;\n if (snap > maxSnap) return maxSnap + offsetAfter;\n return snap;\n });\n }\n\n if (params.centerInsufficientSlides) {\n let allSlidesSize = 0;\n slidesSizesGrid.forEach((slideSizeValue) => {\n allSlidesSize += slideSizeValue + (params.spaceBetween ? params.spaceBetween : 0);\n });\n allSlidesSize -= params.spaceBetween;\n if (allSlidesSize < swiperSize) {\n const allSlidesOffset = (swiperSize - allSlidesSize) / 2;\n snapGrid.forEach((snap, snapIndex) => {\n snapGrid[snapIndex] = snap - allSlidesOffset;\n });\n slidesGrid.forEach((snap, snapIndex) => {\n slidesGrid[snapIndex] = snap + allSlidesOffset;\n });\n }\n }\n\n Utils.extend(swiper, {\n slides,\n snapGrid,\n slidesGrid,\n slidesSizesGrid,\n });\n\n if (slidesLength !== previousSlidesLength) {\n swiper.emit('slidesLengthChange');\n }\n if (snapGrid.length !== previousSnapGridLength) {\n if (swiper.params.watchOverflow) swiper.checkOverflow();\n swiper.emit('snapGridLengthChange');\n }\n if (slidesGrid.length !== previousSlidesGridLength) {\n swiper.emit('slidesGridLengthChange');\n }\n\n if (params.watchSlidesProgress || params.watchSlidesVisibility) {\n swiper.updateSlidesOffset();\n }\n}\n\nfunction updateAutoHeight (speed) {\n const swiper = this;\n const activeSlides = [];\n let newHeight = 0;\n let i;\n if (typeof speed === 'number') {\n swiper.setTransition(speed);\n } else if (speed === true) {\n swiper.setTransition(swiper.params.speed);\n }\n // Find slides currently in view\n if (swiper.params.slidesPerView !== 'auto' && swiper.params.slidesPerView > 1) {\n if (swiper.params.centeredSlides) {\n swiper.visibleSlides.each((index, slide) => {\n activeSlides.push(slide);\n });\n } else {\n for (i = 0; i < Math.ceil(swiper.params.slidesPerView); i += 1) {\n const index = swiper.activeIndex + i;\n if (index > swiper.slides.length) break;\n activeSlides.push(swiper.slides.eq(index)[0]);\n }\n }\n } else {\n activeSlides.push(swiper.slides.eq(swiper.activeIndex)[0]);\n }\n\n // Find new height from highest slide in view\n for (i = 0; i < activeSlides.length; i += 1) {\n if (typeof activeSlides[i] !== 'undefined') {\n const height = activeSlides[i].offsetHeight;\n newHeight = height > newHeight ? height : newHeight;\n }\n }\n\n // Update Height\n if (newHeight) swiper.$wrapperEl.css('height', `${newHeight}px`);\n}\n\nfunction updateSlidesOffset () {\n const swiper = this;\n const slides = swiper.slides;\n for (let i = 0; i < slides.length; i += 1) {\n slides[i].swiperSlideOffset = swiper.isHorizontal() ? slides[i].offsetLeft : slides[i].offsetTop;\n }\n}\n\nfunction updateSlidesProgress (translate = (this && this.translate) || 0) {\n const swiper = this;\n const params = swiper.params;\n\n const { slides, rtlTranslate: rtl } = swiper;\n\n if (slides.length === 0) return;\n if (typeof slides[0].swiperSlideOffset === 'undefined') swiper.updateSlidesOffset();\n\n let offsetCenter = -translate;\n if (rtl) offsetCenter = translate;\n\n // Visible Slides\n slides.removeClass(params.slideVisibleClass);\n\n swiper.visibleSlidesIndexes = [];\n swiper.visibleSlides = [];\n\n for (let i = 0; i < slides.length; i += 1) {\n const slide = slides[i];\n const slideProgress = (\n (offsetCenter + (params.centeredSlides ? swiper.minTranslate() : 0)) - slide.swiperSlideOffset\n ) / (slide.swiperSlideSize + params.spaceBetween);\n if (params.watchSlidesVisibility || (params.centeredSlides && params.autoHeight)) {\n const slideBefore = -(offsetCenter - slide.swiperSlideOffset);\n const slideAfter = slideBefore + swiper.slidesSizesGrid[i];\n const isVisible = (slideBefore >= 0 && slideBefore < swiper.size - 1)\n || (slideAfter > 1 && slideAfter <= swiper.size)\n || (slideBefore <= 0 && slideAfter >= swiper.size);\n if (isVisible) {\n swiper.visibleSlides.push(slide);\n swiper.visibleSlidesIndexes.push(i);\n slides.eq(i).addClass(params.slideVisibleClass);\n }\n }\n slide.progress = rtl ? -slideProgress : slideProgress;\n }\n swiper.visibleSlides = $(swiper.visibleSlides);\n}\n\nfunction updateProgress (translate) {\n const swiper = this;\n if (typeof translate === 'undefined') {\n const multiplier = swiper.rtlTranslate ? -1 : 1;\n // eslint-disable-next-line\n translate = (swiper && swiper.translate && (swiper.translate * multiplier)) || 0;\n }\n const params = swiper.params;\n const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n let { progress, isBeginning, isEnd } = swiper;\n const wasBeginning = isBeginning;\n const wasEnd = isEnd;\n if (translatesDiff === 0) {\n progress = 0;\n isBeginning = true;\n isEnd = true;\n } else {\n progress = (translate - swiper.minTranslate()) / (translatesDiff);\n isBeginning = progress <= 0;\n isEnd = progress >= 1;\n }\n Utils.extend(swiper, {\n progress,\n isBeginning,\n isEnd,\n });\n\n if (params.watchSlidesProgress || params.watchSlidesVisibility || (params.centeredSlides && params.autoHeight)) swiper.updateSlidesProgress(translate);\n\n if (isBeginning && !wasBeginning) {\n swiper.emit('reachBeginning toEdge');\n }\n if (isEnd && !wasEnd) {\n swiper.emit('reachEnd toEdge');\n }\n if ((wasBeginning && !isBeginning) || (wasEnd && !isEnd)) {\n swiper.emit('fromEdge');\n }\n\n swiper.emit('progress', progress);\n}\n\nfunction updateSlidesClasses () {\n const swiper = this;\n\n const {\n slides, params, $wrapperEl, activeIndex, realIndex,\n } = swiper;\n const isVirtual = swiper.virtual && params.virtual.enabled;\n\n slides.removeClass(`${params.slideActiveClass} ${params.slideNextClass} ${params.slidePrevClass} ${params.slideDuplicateActiveClass} ${params.slideDuplicateNextClass} ${params.slideDuplicatePrevClass}`);\n\n let activeSlide;\n if (isVirtual) {\n activeSlide = swiper.$wrapperEl.find(`.${params.slideClass}[data-swiper-slide-index=\"${activeIndex}\"]`);\n } else {\n activeSlide = slides.eq(activeIndex);\n }\n\n // Active classes\n activeSlide.addClass(params.slideActiveClass);\n\n if (params.loop) {\n // Duplicate to all looped slides\n if (activeSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children(`.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index=\"${realIndex}\"]`)\n .addClass(params.slideDuplicateActiveClass);\n } else {\n $wrapperEl\n .children(`.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index=\"${realIndex}\"]`)\n .addClass(params.slideDuplicateActiveClass);\n }\n }\n // Next Slide\n let nextSlide = activeSlide.nextAll(`.${params.slideClass}`).eq(0).addClass(params.slideNextClass);\n if (params.loop && nextSlide.length === 0) {\n nextSlide = slides.eq(0);\n nextSlide.addClass(params.slideNextClass);\n }\n // Prev Slide\n let prevSlide = activeSlide.prevAll(`.${params.slideClass}`).eq(0).addClass(params.slidePrevClass);\n if (params.loop && prevSlide.length === 0) {\n prevSlide = slides.eq(-1);\n prevSlide.addClass(params.slidePrevClass);\n }\n if (params.loop) {\n // Duplicate to all looped slides\n if (nextSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children(`.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index=\"${nextSlide.attr('data-swiper-slide-index')}\"]`)\n .addClass(params.slideDuplicateNextClass);\n } else {\n $wrapperEl\n .children(`.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index=\"${nextSlide.attr('data-swiper-slide-index')}\"]`)\n .addClass(params.slideDuplicateNextClass);\n }\n if (prevSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children(`.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index=\"${prevSlide.attr('data-swiper-slide-index')}\"]`)\n .addClass(params.slideDuplicatePrevClass);\n } else {\n $wrapperEl\n .children(`.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index=\"${prevSlide.attr('data-swiper-slide-index')}\"]`)\n .addClass(params.slideDuplicatePrevClass);\n }\n }\n}\n\nfunction updateActiveIndex (newActiveIndex) {\n const swiper = this;\n const translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate;\n const {\n slidesGrid, snapGrid, params, activeIndex: previousIndex, realIndex: previousRealIndex, snapIndex: previousSnapIndex,\n } = swiper;\n let activeIndex = newActiveIndex;\n let snapIndex;\n if (typeof activeIndex === 'undefined') {\n for (let i = 0; i < slidesGrid.length; i += 1) {\n if (typeof slidesGrid[i + 1] !== 'undefined') {\n if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1] - ((slidesGrid[i + 1] - slidesGrid[i]) / 2)) {\n activeIndex = i;\n } else if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1]) {\n activeIndex = i + 1;\n }\n } else if (translate >= slidesGrid[i]) {\n activeIndex = i;\n }\n }\n // Normalize slideIndex\n if (params.normalizeSlideIndex) {\n if (activeIndex < 0 || typeof activeIndex === 'undefined') activeIndex = 0;\n }\n }\n if (snapGrid.indexOf(translate) >= 0) {\n snapIndex = snapGrid.indexOf(translate);\n } else {\n const skip = Math.min(params.slidesPerGroupSkip, activeIndex);\n snapIndex = skip + Math.floor((activeIndex - skip) / params.slidesPerGroup);\n }\n if (snapIndex >= snapGrid.length) snapIndex = snapGrid.length - 1;\n if (activeIndex === previousIndex) {\n if (snapIndex !== previousSnapIndex) {\n swiper.snapIndex = snapIndex;\n swiper.emit('snapIndexChange');\n }\n return;\n }\n\n // Get real index\n const realIndex = parseInt(swiper.slides.eq(activeIndex).attr('data-swiper-slide-index') || activeIndex, 10);\n\n Utils.extend(swiper, {\n snapIndex,\n realIndex,\n previousIndex,\n activeIndex,\n });\n swiper.emit('activeIndexChange');\n swiper.emit('snapIndexChange');\n if (previousRealIndex !== realIndex) {\n swiper.emit('realIndexChange');\n }\n if (swiper.initialized || swiper.params.runCallbacksOnInit) {\n swiper.emit('slideChange');\n }\n}\n\nfunction updateClickedSlide (e) {\n const swiper = this;\n const params = swiper.params;\n const slide = $(e.target).closest(`.${params.slideClass}`)[0];\n let slideFound = false;\n if (slide) {\n for (let i = 0; i < swiper.slides.length; i += 1) {\n if (swiper.slides[i] === slide) slideFound = true;\n }\n }\n\n if (slide && slideFound) {\n swiper.clickedSlide = slide;\n if (swiper.virtual && swiper.params.virtual.enabled) {\n swiper.clickedIndex = parseInt($(slide).attr('data-swiper-slide-index'), 10);\n } else {\n swiper.clickedIndex = $(slide).index();\n }\n } else {\n swiper.clickedSlide = undefined;\n swiper.clickedIndex = undefined;\n return;\n }\n if (params.slideToClickedSlide && swiper.clickedIndex !== undefined && swiper.clickedIndex !== swiper.activeIndex) {\n swiper.slideToClickedSlide();\n }\n}\n\nvar update = {\n updateSize,\n updateSlides,\n updateAutoHeight,\n updateSlidesOffset,\n updateSlidesProgress,\n updateProgress,\n updateSlidesClasses,\n updateActiveIndex,\n updateClickedSlide,\n};\n\nfunction getTranslate (axis = this.isHorizontal() ? 'x' : 'y') {\n const swiper = this;\n\n const {\n params, rtlTranslate: rtl, translate, $wrapperEl,\n } = swiper;\n\n if (params.virtualTranslate) {\n return rtl ? -translate : translate;\n }\n if (params.cssMode) {\n return translate;\n }\n\n let currentTranslate = Utils.getTranslate($wrapperEl[0], axis);\n if (rtl) currentTranslate = -currentTranslate;\n\n return currentTranslate || 0;\n}\n\nfunction setTranslate (translate, byController) {\n const swiper = this;\n const {\n rtlTranslate: rtl, params, $wrapperEl, wrapperEl, progress,\n } = swiper;\n let x = 0;\n let y = 0;\n const z = 0;\n\n if (swiper.isHorizontal()) {\n x = rtl ? -translate : translate;\n } else {\n y = translate;\n }\n\n if (params.roundLengths) {\n x = Math.floor(x);\n y = Math.floor(y);\n }\n\n if (params.cssMode) {\n wrapperEl[swiper.isHorizontal() ? 'scrollLeft' : 'scrollTop'] = swiper.isHorizontal() ? -x : -y;\n } else if (!params.virtualTranslate) {\n $wrapperEl.transform(`translate3d(${x}px, ${y}px, ${z}px)`);\n }\n swiper.previousTranslate = swiper.translate;\n swiper.translate = swiper.isHorizontal() ? x : y;\n\n // Check if we need to update progress\n let newProgress;\n const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n if (translatesDiff === 0) {\n newProgress = 0;\n } else {\n newProgress = (translate - swiper.minTranslate()) / (translatesDiff);\n }\n if (newProgress !== progress) {\n swiper.updateProgress(translate);\n }\n\n swiper.emit('setTranslate', swiper.translate, byController);\n}\n\nfunction minTranslate () {\n return (-this.snapGrid[0]);\n}\n\nfunction maxTranslate () {\n return (-this.snapGrid[this.snapGrid.length - 1]);\n}\n\nfunction translateTo (translate = 0, speed = this.params.speed, runCallbacks = true, translateBounds = true, internal) {\n const swiper = this;\n\n const {\n params,\n wrapperEl,\n } = swiper;\n\n if (swiper.animating && params.preventInteractionOnTransition) {\n return false;\n }\n\n const minTranslate = swiper.minTranslate();\n const maxTranslate = swiper.maxTranslate();\n let newTranslate;\n if (translateBounds && translate > minTranslate) newTranslate = minTranslate;\n else if (translateBounds && translate < maxTranslate) newTranslate = maxTranslate;\n else newTranslate = translate;\n\n // Update progress\n swiper.updateProgress(newTranslate);\n\n if (params.cssMode) {\n const isH = swiper.isHorizontal();\n if (speed === 0) {\n wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = -newTranslate;\n } else {\n // eslint-disable-next-line\n if (wrapperEl.scrollTo) {\n wrapperEl.scrollTo({\n [isH ? 'left' : 'top']: -newTranslate,\n behavior: 'smooth',\n });\n } else {\n wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = -newTranslate;\n }\n }\n return true;\n }\n\n if (speed === 0) {\n swiper.setTransition(0);\n swiper.setTranslate(newTranslate);\n if (runCallbacks) {\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.emit('transitionEnd');\n }\n } else {\n swiper.setTransition(speed);\n swiper.setTranslate(newTranslate);\n if (runCallbacks) {\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.emit('transitionStart');\n }\n if (!swiper.animating) {\n swiper.animating = true;\n if (!swiper.onTranslateToWrapperTransitionEnd) {\n swiper.onTranslateToWrapperTransitionEnd = function transitionEnd(e) {\n if (!swiper || swiper.destroyed) return;\n if (e.target !== this) return;\n swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.onTranslateToWrapperTransitionEnd);\n swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.onTranslateToWrapperTransitionEnd);\n swiper.onTranslateToWrapperTransitionEnd = null;\n delete swiper.onTranslateToWrapperTransitionEnd;\n if (runCallbacks) {\n swiper.emit('transitionEnd');\n }\n };\n }\n swiper.$wrapperEl[0].addEventListener('transitionend', swiper.onTranslateToWrapperTransitionEnd);\n swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.onTranslateToWrapperTransitionEnd);\n }\n }\n\n return true;\n}\n\nvar translate = {\n getTranslate,\n setTranslate,\n minTranslate,\n maxTranslate,\n translateTo,\n};\n\nfunction setTransition (duration, byController) {\n const swiper = this;\n\n if (!swiper.params.cssMode) {\n swiper.$wrapperEl.transition(duration);\n }\n\n swiper.emit('setTransition', duration, byController);\n}\n\nfunction transitionStart (runCallbacks = true, direction) {\n const swiper = this;\n const { activeIndex, params, previousIndex } = swiper;\n if (params.cssMode) return;\n if (params.autoHeight) {\n swiper.updateAutoHeight();\n }\n\n let dir = direction;\n if (!dir) {\n if (activeIndex > previousIndex) dir = 'next';\n else if (activeIndex < previousIndex) dir = 'prev';\n else dir = 'reset';\n }\n\n swiper.emit('transitionStart');\n\n if (runCallbacks && activeIndex !== previousIndex) {\n if (dir === 'reset') {\n swiper.emit('slideResetTransitionStart');\n return;\n }\n swiper.emit('slideChangeTransitionStart');\n if (dir === 'next') {\n swiper.emit('slideNextTransitionStart');\n } else {\n swiper.emit('slidePrevTransitionStart');\n }\n }\n}\n\nfunction transitionEnd (runCallbacks = true, direction) {\n const swiper = this;\n const { activeIndex, previousIndex, params } = swiper;\n swiper.animating = false;\n if (params.cssMode) return;\n swiper.setTransition(0);\n\n let dir = direction;\n if (!dir) {\n if (activeIndex > previousIndex) dir = 'next';\n else if (activeIndex < previousIndex) dir = 'prev';\n else dir = 'reset';\n }\n\n swiper.emit('transitionEnd');\n\n if (runCallbacks && activeIndex !== previousIndex) {\n if (dir === 'reset') {\n swiper.emit('slideResetTransitionEnd');\n return;\n }\n swiper.emit('slideChangeTransitionEnd');\n if (dir === 'next') {\n swiper.emit('slideNextTransitionEnd');\n } else {\n swiper.emit('slidePrevTransitionEnd');\n }\n }\n}\n\nvar transition = {\n setTransition,\n transitionStart,\n transitionEnd,\n};\n\nfunction slideTo (index = 0, speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n let slideIndex = index;\n if (slideIndex < 0) slideIndex = 0;\n\n const {\n params, snapGrid, slidesGrid, previousIndex, activeIndex, rtlTranslate: rtl, wrapperEl,\n } = swiper;\n if (swiper.animating && params.preventInteractionOnTransition) {\n return false;\n }\n\n const skip = Math.min(swiper.params.slidesPerGroupSkip, slideIndex);\n let snapIndex = skip + Math.floor((slideIndex - skip) / swiper.params.slidesPerGroup);\n if (snapIndex >= snapGrid.length) snapIndex = snapGrid.length - 1;\n\n if ((activeIndex || params.initialSlide || 0) === (previousIndex || 0) && runCallbacks) {\n swiper.emit('beforeSlideChangeStart');\n }\n\n const translate = -snapGrid[snapIndex];\n\n // Update progress\n swiper.updateProgress(translate);\n\n // Normalize slideIndex\n if (params.normalizeSlideIndex) {\n for (let i = 0; i < slidesGrid.length; i += 1) {\n if (-Math.floor(translate * 100) >= Math.floor(slidesGrid[i] * 100)) {\n slideIndex = i;\n }\n }\n }\n // Directions locks\n if (swiper.initialized && slideIndex !== activeIndex) {\n if (!swiper.allowSlideNext && translate < swiper.translate && translate < swiper.minTranslate()) {\n return false;\n }\n if (!swiper.allowSlidePrev && translate > swiper.translate && translate > swiper.maxTranslate()) {\n if ((activeIndex || 0) !== slideIndex) return false;\n }\n }\n\n let direction;\n if (slideIndex > activeIndex) direction = 'next';\n else if (slideIndex < activeIndex) direction = 'prev';\n else direction = 'reset';\n\n\n // Update Index\n if ((rtl && -translate === swiper.translate) || (!rtl && translate === swiper.translate)) {\n swiper.updateActiveIndex(slideIndex);\n // Update Height\n if (params.autoHeight) {\n swiper.updateAutoHeight();\n }\n swiper.updateSlidesClasses();\n if (params.effect !== 'slide') {\n swiper.setTranslate(translate);\n }\n if (direction !== 'reset') {\n swiper.transitionStart(runCallbacks, direction);\n swiper.transitionEnd(runCallbacks, direction);\n }\n return false;\n }\n if (params.cssMode) {\n const isH = swiper.isHorizontal();\n let t = -translate;\n if (rtl) {\n t = wrapperEl.scrollWidth - wrapperEl.offsetWidth - t;\n }\n if (speed === 0) {\n wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = t;\n } else {\n // eslint-disable-next-line\n if (wrapperEl.scrollTo) {\n wrapperEl.scrollTo({\n [isH ? 'left' : 'top']: t,\n behavior: 'smooth',\n });\n } else {\n wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = t;\n }\n }\n return true;\n }\n\n if (speed === 0) {\n swiper.setTransition(0);\n swiper.setTranslate(translate);\n swiper.updateActiveIndex(slideIndex);\n swiper.updateSlidesClasses();\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.transitionStart(runCallbacks, direction);\n swiper.transitionEnd(runCallbacks, direction);\n } else {\n swiper.setTransition(speed);\n swiper.setTranslate(translate);\n swiper.updateActiveIndex(slideIndex);\n swiper.updateSlidesClasses();\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.transitionStart(runCallbacks, direction);\n if (!swiper.animating) {\n swiper.animating = true;\n if (!swiper.onSlideToWrapperTransitionEnd) {\n swiper.onSlideToWrapperTransitionEnd = function transitionEnd(e) {\n if (!swiper || swiper.destroyed) return;\n if (e.target !== this) return;\n swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd);\n swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd);\n swiper.onSlideToWrapperTransitionEnd = null;\n delete swiper.onSlideToWrapperTransitionEnd;\n swiper.transitionEnd(runCallbacks, direction);\n };\n }\n swiper.$wrapperEl[0].addEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd);\n swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd);\n }\n }\n\n return true;\n}\n\nfunction slideToLoop (index = 0, speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n let newIndex = index;\n if (swiper.params.loop) {\n newIndex += swiper.loopedSlides;\n }\n\n return swiper.slideTo(newIndex, speed, runCallbacks, internal);\n}\n\n/* eslint no-unused-vars: \"off\" */\nfunction slideNext (speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n const { params, animating } = swiper;\n const increment = swiper.activeIndex < params.slidesPerGroupSkip ? 1 : params.slidesPerGroup;\n if (params.loop) {\n if (animating) return false;\n swiper.loopFix();\n // eslint-disable-next-line\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n }\n return swiper.slideTo(swiper.activeIndex + increment, speed, runCallbacks, internal);\n}\n\n/* eslint no-unused-vars: \"off\" */\nfunction slidePrev (speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n const {\n params, animating, snapGrid, slidesGrid, rtlTranslate,\n } = swiper;\n\n if (params.loop) {\n if (animating) return false;\n swiper.loopFix();\n // eslint-disable-next-line\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n }\n const translate = rtlTranslate ? swiper.translate : -swiper.translate;\n function normalize(val) {\n if (val < 0) return -Math.floor(Math.abs(val));\n return Math.floor(val);\n }\n const normalizedTranslate = normalize(translate);\n const normalizedSnapGrid = snapGrid.map((val) => normalize(val));\n const normalizedSlidesGrid = slidesGrid.map((val) => normalize(val));\n\n const currentSnap = snapGrid[normalizedSnapGrid.indexOf(normalizedTranslate)];\n let prevSnap = snapGrid[normalizedSnapGrid.indexOf(normalizedTranslate) - 1];\n if (typeof prevSnap === 'undefined' && params.cssMode) {\n snapGrid.forEach((snap) => {\n if (!prevSnap && normalizedTranslate >= snap) prevSnap = snap;\n });\n }\n let prevIndex;\n if (typeof prevSnap !== 'undefined') {\n prevIndex = slidesGrid.indexOf(prevSnap);\n if (prevIndex < 0) prevIndex = swiper.activeIndex - 1;\n }\n return swiper.slideTo(prevIndex, speed, runCallbacks, internal);\n}\n\n/* eslint no-unused-vars: \"off\" */\nfunction slideReset (speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n return swiper.slideTo(swiper.activeIndex, speed, runCallbacks, internal);\n}\n\n/* eslint no-unused-vars: \"off\" */\nfunction slideToClosest (speed = this.params.speed, runCallbacks = true, internal, threshold = 0.5) {\n const swiper = this;\n let index = swiper.activeIndex;\n const skip = Math.min(swiper.params.slidesPerGroupSkip, index);\n const snapIndex = skip + Math.floor((index - skip) / swiper.params.slidesPerGroup);\n\n const translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate;\n\n if (translate >= swiper.snapGrid[snapIndex]) {\n // The current translate is on or after the current snap index, so the choice\n // is between the current index and the one after it.\n const currentSnap = swiper.snapGrid[snapIndex];\n const nextSnap = swiper.snapGrid[snapIndex + 1];\n if ((translate - currentSnap) > (nextSnap - currentSnap) * threshold) {\n index += swiper.params.slidesPerGroup;\n }\n } else {\n // The current translate is before the current snap index, so the choice\n // is between the current index and the one before it.\n const prevSnap = swiper.snapGrid[snapIndex - 1];\n const currentSnap = swiper.snapGrid[snapIndex];\n if ((translate - prevSnap) <= (currentSnap - prevSnap) * threshold) {\n index -= swiper.params.slidesPerGroup;\n }\n }\n index = Math.max(index, 0);\n index = Math.min(index, swiper.slidesGrid.length - 1);\n\n return swiper.slideTo(index, speed, runCallbacks, internal);\n}\n\nfunction slideToClickedSlide () {\n const swiper = this;\n const { params, $wrapperEl } = swiper;\n\n const slidesPerView = params.slidesPerView === 'auto' ? swiper.slidesPerViewDynamic() : params.slidesPerView;\n let slideToIndex = swiper.clickedIndex;\n let realIndex;\n if (params.loop) {\n if (swiper.animating) return;\n realIndex = parseInt($(swiper.clickedSlide).attr('data-swiper-slide-index'), 10);\n if (params.centeredSlides) {\n if (\n (slideToIndex < swiper.loopedSlides - (slidesPerView / 2))\n || (slideToIndex > (swiper.slides.length - swiper.loopedSlides) + (slidesPerView / 2))\n ) {\n swiper.loopFix();\n slideToIndex = $wrapperEl\n .children(`.${params.slideClass}[data-swiper-slide-index=\"${realIndex}\"]:not(.${params.slideDuplicateClass})`)\n .eq(0)\n .index();\n\n Utils.nextTick(() => {\n swiper.slideTo(slideToIndex);\n });\n } else {\n swiper.slideTo(slideToIndex);\n }\n } else if (slideToIndex > swiper.slides.length - slidesPerView) {\n swiper.loopFix();\n slideToIndex = $wrapperEl\n .children(`.${params.slideClass}[data-swiper-slide-index=\"${realIndex}\"]:not(.${params.slideDuplicateClass})`)\n .eq(0)\n .index();\n\n Utils.nextTick(() => {\n swiper.slideTo(slideToIndex);\n });\n } else {\n swiper.slideTo(slideToIndex);\n }\n } else {\n swiper.slideTo(slideToIndex);\n }\n}\n\nvar slide = {\n slideTo,\n slideToLoop,\n slideNext,\n slidePrev,\n slideReset,\n slideToClosest,\n slideToClickedSlide,\n};\n\nfunction loopCreate () {\n const swiper = this;\n const { params, $wrapperEl } = swiper;\n // Remove duplicated slides\n $wrapperEl.children(`.${params.slideClass}.${params.slideDuplicateClass}`).remove();\n\n let slides = $wrapperEl.children(`.${params.slideClass}`);\n\n if (params.loopFillGroupWithBlank) {\n const blankSlidesNum = params.slidesPerGroup - (slides.length % params.slidesPerGroup);\n if (blankSlidesNum !== params.slidesPerGroup) {\n for (let i = 0; i < blankSlidesNum; i += 1) {\n const blankNode = $(document$1.createElement('div')).addClass(`${params.slideClass} ${params.slideBlankClass}`);\n $wrapperEl.append(blankNode);\n }\n slides = $wrapperEl.children(`.${params.slideClass}`);\n }\n }\n\n if (params.slidesPerView === 'auto' && !params.loopedSlides) params.loopedSlides = slides.length;\n\n swiper.loopedSlides = Math.ceil(parseFloat(params.loopedSlides || params.slidesPerView, 10));\n swiper.loopedSlides += params.loopAdditionalSlides;\n if (swiper.loopedSlides > slides.length) {\n swiper.loopedSlides = slides.length;\n }\n\n const prependSlides = [];\n const appendSlides = [];\n slides.each((index, el) => {\n const slide = $(el);\n if (index < swiper.loopedSlides) appendSlides.push(el);\n if (index < slides.length && index >= slides.length - swiper.loopedSlides) prependSlides.push(el);\n slide.attr('data-swiper-slide-index', index);\n });\n for (let i = 0; i < appendSlides.length; i += 1) {\n $wrapperEl.append($(appendSlides[i].cloneNode(true)).addClass(params.slideDuplicateClass));\n }\n for (let i = prependSlides.length - 1; i >= 0; i -= 1) {\n $wrapperEl.prepend($(prependSlides[i].cloneNode(true)).addClass(params.slideDuplicateClass));\n }\n}\n\nfunction loopFix () {\n const swiper = this;\n\n swiper.emit('beforeLoopFix');\n\n const {\n activeIndex, slides, loopedSlides, allowSlidePrev, allowSlideNext, snapGrid, rtlTranslate: rtl,\n } = swiper;\n let newIndex;\n swiper.allowSlidePrev = true;\n swiper.allowSlideNext = true;\n\n const snapTranslate = -snapGrid[activeIndex];\n const diff = snapTranslate - swiper.getTranslate();\n\n // Fix For Negative Oversliding\n if (activeIndex < loopedSlides) {\n newIndex = (slides.length - (loopedSlides * 3)) + activeIndex;\n newIndex += loopedSlides;\n const slideChanged = swiper.slideTo(newIndex, 0, false, true);\n if (slideChanged && diff !== 0) {\n swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff);\n }\n } else if (activeIndex >= slides.length - loopedSlides) {\n // Fix For Positive Oversliding\n newIndex = -slides.length + activeIndex + loopedSlides;\n newIndex += loopedSlides;\n const slideChanged = swiper.slideTo(newIndex, 0, false, true);\n if (slideChanged && diff !== 0) {\n swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff);\n }\n }\n swiper.allowSlidePrev = allowSlidePrev;\n swiper.allowSlideNext = allowSlideNext;\n\n swiper.emit('loopFix');\n}\n\nfunction loopDestroy () {\n const swiper = this;\n const { $wrapperEl, params, slides } = swiper;\n $wrapperEl.children(`.${params.slideClass}.${params.slideDuplicateClass},.${params.slideClass}.${params.slideBlankClass}`).remove();\n slides.removeAttr('data-swiper-slide-index');\n}\n\nvar loop = {\n loopCreate,\n loopFix,\n loopDestroy,\n};\n\nfunction setGrabCursor (moving) {\n const swiper = this;\n if (Support.touch || !swiper.params.simulateTouch || (swiper.params.watchOverflow && swiper.isLocked) || swiper.params.cssMode) return;\n const el = swiper.el;\n el.style.cursor = 'move';\n el.style.cursor = moving ? '-webkit-grabbing' : '-webkit-grab';\n el.style.cursor = moving ? '-moz-grabbin' : '-moz-grab';\n el.style.cursor = moving ? 'grabbing' : 'grab';\n}\n\nfunction unsetGrabCursor () {\n const swiper = this;\n if (Support.touch || (swiper.params.watchOverflow && swiper.isLocked) || swiper.params.cssMode) return;\n swiper.el.style.cursor = '';\n}\n\nvar grabCursor = {\n setGrabCursor,\n unsetGrabCursor,\n};\n\nfunction appendSlide (slides) {\n const swiper = this;\n const { $wrapperEl, params } = swiper;\n if (params.loop) {\n swiper.loopDestroy();\n }\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) $wrapperEl.append(slides[i]);\n }\n } else {\n $wrapperEl.append(slides);\n }\n if (params.loop) {\n swiper.loopCreate();\n }\n if (!(params.observer && Support.observer)) {\n swiper.update();\n }\n}\n\nfunction prependSlide (slides) {\n const swiper = this;\n const { params, $wrapperEl, activeIndex } = swiper;\n\n if (params.loop) {\n swiper.loopDestroy();\n }\n let newActiveIndex = activeIndex + 1;\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) $wrapperEl.prepend(slides[i]);\n }\n newActiveIndex = activeIndex + slides.length;\n } else {\n $wrapperEl.prepend(slides);\n }\n if (params.loop) {\n swiper.loopCreate();\n }\n if (!(params.observer && Support.observer)) {\n swiper.update();\n }\n swiper.slideTo(newActiveIndex, 0, false);\n}\n\nfunction addSlide (index, slides) {\n const swiper = this;\n const { $wrapperEl, params, activeIndex } = swiper;\n let activeIndexBuffer = activeIndex;\n if (params.loop) {\n activeIndexBuffer -= swiper.loopedSlides;\n swiper.loopDestroy();\n swiper.slides = $wrapperEl.children(`.${params.slideClass}`);\n }\n const baseLength = swiper.slides.length;\n if (index <= 0) {\n swiper.prependSlide(slides);\n return;\n }\n if (index >= baseLength) {\n swiper.appendSlide(slides);\n return;\n }\n let newActiveIndex = activeIndexBuffer > index ? activeIndexBuffer + 1 : activeIndexBuffer;\n\n const slidesBuffer = [];\n for (let i = baseLength - 1; i >= index; i -= 1) {\n const currentSlide = swiper.slides.eq(i);\n currentSlide.remove();\n slidesBuffer.unshift(currentSlide);\n }\n\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) $wrapperEl.append(slides[i]);\n }\n newActiveIndex = activeIndexBuffer > index ? activeIndexBuffer + slides.length : activeIndexBuffer;\n } else {\n $wrapperEl.append(slides);\n }\n\n for (let i = 0; i < slidesBuffer.length; i += 1) {\n $wrapperEl.append(slidesBuffer[i]);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n if (!(params.observer && Support.observer)) {\n swiper.update();\n }\n if (params.loop) {\n swiper.slideTo(newActiveIndex + swiper.loopedSlides, 0, false);\n } else {\n swiper.slideTo(newActiveIndex, 0, false);\n }\n}\n\nfunction removeSlide (slidesIndexes) {\n const swiper = this;\n const { params, $wrapperEl, activeIndex } = swiper;\n\n let activeIndexBuffer = activeIndex;\n if (params.loop) {\n activeIndexBuffer -= swiper.loopedSlides;\n swiper.loopDestroy();\n swiper.slides = $wrapperEl.children(`.${params.slideClass}`);\n }\n let newActiveIndex = activeIndexBuffer;\n let indexToRemove;\n\n if (typeof slidesIndexes === 'object' && 'length' in slidesIndexes) {\n for (let i = 0; i < slidesIndexes.length; i += 1) {\n indexToRemove = slidesIndexes[i];\n if (swiper.slides[indexToRemove]) swiper.slides.eq(indexToRemove).remove();\n if (indexToRemove < newActiveIndex) newActiveIndex -= 1;\n }\n newActiveIndex = Math.max(newActiveIndex, 0);\n } else {\n indexToRemove = slidesIndexes;\n if (swiper.slides[indexToRemove]) swiper.slides.eq(indexToRemove).remove();\n if (indexToRemove < newActiveIndex) newActiveIndex -= 1;\n newActiveIndex = Math.max(newActiveIndex, 0);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n\n if (!(params.observer && Support.observer)) {\n swiper.update();\n }\n if (params.loop) {\n swiper.slideTo(newActiveIndex + swiper.loopedSlides, 0, false);\n } else {\n swiper.slideTo(newActiveIndex, 0, false);\n }\n}\n\nfunction removeAllSlides () {\n const swiper = this;\n\n const slidesIndexes = [];\n for (let i = 0; i < swiper.slides.length; i += 1) {\n slidesIndexes.push(i);\n }\n swiper.removeSlide(slidesIndexes);\n}\n\nvar manipulation = {\n appendSlide,\n prependSlide,\n addSlide,\n removeSlide,\n removeAllSlides,\n};\n\nconst Device = (function Device() {\n const platform = window.navigator.platform;\n const ua = window.navigator.userAgent;\n\n const device = {\n ios: false,\n android: false,\n androidChrome: false,\n desktop: false,\n iphone: false,\n ipod: false,\n ipad: false,\n edge: false,\n ie: false,\n firefox: false,\n macos: false,\n windows: false,\n cordova: !!(window.cordova || window.phonegap),\n phonegap: !!(window.cordova || window.phonegap),\n electron: false,\n };\n\n const screenWidth = window.screen.width;\n const screenHeight = window.screen.height;\n\n const android = ua.match(/(Android);?[\\s\\/]+([\\d.]+)?/); // eslint-disable-line\n let ipad = ua.match(/(iPad).*OS\\s([\\d_]+)/);\n const ipod = ua.match(/(iPod)(.*OS\\s([\\d_]+))?/);\n const iphone = !ipad && ua.match(/(iPhone\\sOS|iOS)\\s([\\d_]+)/);\n const ie = ua.indexOf('MSIE ') >= 0 || ua.indexOf('Trident/') >= 0;\n const edge = ua.indexOf('Edge/') >= 0;\n const firefox = ua.indexOf('Gecko/') >= 0 && ua.indexOf('Firefox/') >= 0;\n const windows = platform === 'Win32';\n const electron = ua.toLowerCase().indexOf('electron') >= 0;\n let macos = platform === 'MacIntel';\n\n // iPadOs 13 fix\n if (!ipad\n && macos\n && Support.touch\n && (\n (screenWidth === 1024 && screenHeight === 1366) // Pro 12.9\n || (screenWidth === 834 && screenHeight === 1194) // Pro 11\n || (screenWidth === 834 && screenHeight === 1112) // Pro 10.5\n || (screenWidth === 768 && screenHeight === 1024) // other\n )\n ) {\n ipad = ua.match(/(Version)\\/([\\d.]+)/);\n macos = false;\n }\n\n device.ie = ie;\n device.edge = edge;\n device.firefox = firefox;\n\n // Android\n if (android && !windows) {\n device.os = 'android';\n device.osVersion = android[2];\n device.android = true;\n device.androidChrome = ua.toLowerCase().indexOf('chrome') >= 0;\n }\n if (ipad || iphone || ipod) {\n device.os = 'ios';\n device.ios = true;\n }\n // iOS\n if (iphone && !ipod) {\n device.osVersion = iphone[2].replace(/_/g, '.');\n device.iphone = true;\n }\n if (ipad) {\n device.osVersion = ipad[2].replace(/_/g, '.');\n device.ipad = true;\n }\n if (ipod) {\n device.osVersion = ipod[3] ? ipod[3].replace(/_/g, '.') : null;\n device.ipod = true;\n }\n // iOS 8+ changed UA\n if (device.ios && device.osVersion && ua.indexOf('Version/') >= 0) {\n if (device.osVersion.split('.')[0] === '10') {\n device.osVersion = ua.toLowerCase().split('version/')[1].split(' ')[0];\n }\n }\n\n // Webview\n device.webView = !!((iphone || ipad || ipod) && (ua.match(/.*AppleWebKit(?!.*Safari)/i) || window.navigator.standalone))\n || (window.matchMedia && window.matchMedia('(display-mode: standalone)').matches);\n device.webview = device.webView;\n device.standalone = device.webView;\n\n // Desktop\n device.desktop = !(device.ios || device.android) || electron;\n if (device.desktop) {\n device.electron = electron;\n device.macos = macos;\n device.windows = windows;\n if (device.macos) {\n device.os = 'macos';\n }\n if (device.windows) {\n device.os = 'windows';\n }\n }\n\n // Pixel Ratio\n device.pixelRatio = window.devicePixelRatio || 1;\n\n // Export object\n return device;\n}());\n\nfunction onTouchStart (event) {\n const swiper = this;\n const data = swiper.touchEventsData;\n const { params, touches } = swiper;\n\n if (swiper.animating && params.preventInteractionOnTransition) {\n return;\n }\n let e = event;\n if (e.originalEvent) e = e.originalEvent;\n const $targetEl = $(e.target);\n\n if (params.touchEventsTarget === 'wrapper') {\n if (!$targetEl.closest(swiper.wrapperEl).length) return;\n }\n data.isTouchEvent = e.type === 'touchstart';\n if (!data.isTouchEvent && 'which' in e && e.which === 3) return;\n if (!data.isTouchEvent && 'button' in e && e.button > 0) return;\n if (data.isTouched && data.isMoved) return;\n if (params.noSwiping && $targetEl.closest(params.noSwipingSelector ? params.noSwipingSelector : `.${params.noSwipingClass}`)[0]) {\n swiper.allowClick = true;\n return;\n }\n if (params.swipeHandler) {\n if (!$targetEl.closest(params.swipeHandler)[0]) return;\n }\n\n touches.currentX = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX;\n touches.currentY = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY;\n const startX = touches.currentX;\n const startY = touches.currentY;\n\n // Do NOT start if iOS edge swipe is detected. Otherwise iOS app cannot swipe-to-go-back anymore\n\n const edgeSwipeDetection = params.edgeSwipeDetection || params.iOSEdgeSwipeDetection;\n const edgeSwipeThreshold = params.edgeSwipeThreshold || params.iOSEdgeSwipeThreshold;\n if (\n edgeSwipeDetection\n && ((startX <= edgeSwipeThreshold)\n || (startX >= window.screen.width - edgeSwipeThreshold))\n ) {\n return;\n }\n\n Utils.extend(data, {\n isTouched: true,\n isMoved: false,\n allowTouchCallbacks: true,\n isScrolling: undefined,\n startMoving: undefined,\n });\n\n touches.startX = startX;\n touches.startY = startY;\n data.touchStartTime = Utils.now();\n swiper.allowClick = true;\n swiper.updateSize();\n swiper.swipeDirection = undefined;\n if (params.threshold > 0) data.allowThresholdMove = false;\n if (e.type !== 'touchstart') {\n let preventDefault = true;\n if ($targetEl.is(data.formElements)) preventDefault = false;\n if (\n document$1.activeElement\n && $(document$1.activeElement).is(data.formElements)\n && document$1.activeElement !== $targetEl[0]\n ) {\n document$1.activeElement.blur();\n }\n\n const shouldPreventDefault = preventDefault && swiper.allowTouchMove && params.touchStartPreventDefault;\n if (params.touchStartForcePreventDefault || shouldPreventDefault) {\n e.preventDefault();\n }\n }\n swiper.emit('touchStart', e);\n}\n\nfunction onTouchMove (event) {\n const swiper = this;\n const data = swiper.touchEventsData;\n const { params, touches, rtlTranslate: rtl } = swiper;\n let e = event;\n if (e.originalEvent) e = e.originalEvent;\n if (!data.isTouched) {\n if (data.startMoving && data.isScrolling) {\n swiper.emit('touchMoveOpposite', e);\n }\n return;\n }\n if (data.isTouchEvent && e.type !== 'touchmove') return;\n const targetTouch = e.type === 'touchmove' && e.targetTouches && (e.targetTouches[0] || e.changedTouches[0]);\n const pageX = e.type === 'touchmove' ? targetTouch.pageX : e.pageX;\n const pageY = e.type === 'touchmove' ? targetTouch.pageY : e.pageY;\n if (e.preventedByNestedSwiper) {\n touches.startX = pageX;\n touches.startY = pageY;\n return;\n }\n if (!swiper.allowTouchMove) {\n // isMoved = true;\n swiper.allowClick = false;\n if (data.isTouched) {\n Utils.extend(touches, {\n startX: pageX,\n startY: pageY,\n currentX: pageX,\n currentY: pageY,\n });\n data.touchStartTime = Utils.now();\n }\n return;\n }\n if (data.isTouchEvent && params.touchReleaseOnEdges && !params.loop) {\n if (swiper.isVertical()) {\n // Vertical\n if (\n (pageY < touches.startY && swiper.translate <= swiper.maxTranslate())\n || (pageY > touches.startY && swiper.translate >= swiper.minTranslate())\n ) {\n data.isTouched = false;\n data.isMoved = false;\n return;\n }\n } else if (\n (pageX < touches.startX && swiper.translate <= swiper.maxTranslate())\n || (pageX > touches.startX && swiper.translate >= swiper.minTranslate())\n ) {\n return;\n }\n }\n if (data.isTouchEvent && document$1.activeElement) {\n if (e.target === document$1.activeElement && $(e.target).is(data.formElements)) {\n data.isMoved = true;\n swiper.allowClick = false;\n return;\n }\n }\n if (data.allowTouchCallbacks) {\n swiper.emit('touchMove', e);\n }\n if (e.targetTouches && e.targetTouches.length > 1) return;\n\n touches.currentX = pageX;\n touches.currentY = pageY;\n\n const diffX = touches.currentX - touches.startX;\n const diffY = touches.currentY - touches.startY;\n if (swiper.params.threshold && Math.sqrt((diffX ** 2) + (diffY ** 2)) < swiper.params.threshold) return;\n\n if (typeof data.isScrolling === 'undefined') {\n let touchAngle;\n if ((swiper.isHorizontal() && touches.currentY === touches.startY) || (swiper.isVertical() && touches.currentX === touches.startX)) {\n data.isScrolling = false;\n } else {\n // eslint-disable-next-line\n if ((diffX * diffX) + (diffY * diffY) >= 25) {\n touchAngle = (Math.atan2(Math.abs(diffY), Math.abs(diffX)) * 180) / Math.PI;\n data.isScrolling = swiper.isHorizontal() ? touchAngle > params.touchAngle : (90 - touchAngle > params.touchAngle);\n }\n }\n }\n if (data.isScrolling) {\n swiper.emit('touchMoveOpposite', e);\n }\n if (typeof data.startMoving === 'undefined') {\n if (touches.currentX !== touches.startX || touches.currentY !== touches.startY) {\n data.startMoving = true;\n }\n }\n if (data.isScrolling) {\n data.isTouched = false;\n return;\n }\n if (!data.startMoving) {\n return;\n }\n swiper.allowClick = false;\n if (!params.cssMode && e.cancelable) {\n e.preventDefault();\n }\n if (params.touchMoveStopPropagation && !params.nested) {\n e.stopPropagation();\n }\n\n if (!data.isMoved) {\n if (params.loop) {\n swiper.loopFix();\n }\n data.startTranslate = swiper.getTranslate();\n swiper.setTransition(0);\n if (swiper.animating) {\n swiper.$wrapperEl.trigger('webkitTransitionEnd transitionend');\n }\n data.allowMomentumBounce = false;\n // Grab Cursor\n if (params.grabCursor && (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)) {\n swiper.setGrabCursor(true);\n }\n swiper.emit('sliderFirstMove', e);\n }\n swiper.emit('sliderMove', e);\n data.isMoved = true;\n\n let diff = swiper.isHorizontal() ? diffX : diffY;\n touches.diff = diff;\n\n diff *= params.touchRatio;\n if (rtl) diff = -diff;\n\n swiper.swipeDirection = diff > 0 ? 'prev' : 'next';\n data.currentTranslate = diff + data.startTranslate;\n\n let disableParentSwiper = true;\n let resistanceRatio = params.resistanceRatio;\n if (params.touchReleaseOnEdges) {\n resistanceRatio = 0;\n }\n if ((diff > 0 && data.currentTranslate > swiper.minTranslate())) {\n disableParentSwiper = false;\n if (params.resistance) data.currentTranslate = (swiper.minTranslate() - 1) + ((-swiper.minTranslate() + data.startTranslate + diff) ** resistanceRatio);\n } else if (diff < 0 && data.currentTranslate < swiper.maxTranslate()) {\n disableParentSwiper = false;\n if (params.resistance) data.currentTranslate = (swiper.maxTranslate() + 1) - ((swiper.maxTranslate() - data.startTranslate - diff) ** resistanceRatio);\n }\n\n if (disableParentSwiper) {\n e.preventedByNestedSwiper = true;\n }\n\n // Directions locks\n if (!swiper.allowSlideNext && swiper.swipeDirection === 'next' && data.currentTranslate < data.startTranslate) {\n data.currentTranslate = data.startTranslate;\n }\n if (!swiper.allowSlidePrev && swiper.swipeDirection === 'prev' && data.currentTranslate > data.startTranslate) {\n data.currentTranslate = data.startTranslate;\n }\n\n\n // Threshold\n if (params.threshold > 0) {\n if (Math.abs(diff) > params.threshold || data.allowThresholdMove) {\n if (!data.allowThresholdMove) {\n data.allowThresholdMove = true;\n touches.startX = touches.currentX;\n touches.startY = touches.currentY;\n data.currentTranslate = data.startTranslate;\n touches.diff = swiper.isHorizontal() ? touches.currentX - touches.startX : touches.currentY - touches.startY;\n return;\n }\n } else {\n data.currentTranslate = data.startTranslate;\n return;\n }\n }\n\n if (!params.followFinger || params.cssMode) return;\n\n // Update active index in free mode\n if (params.freeMode || params.watchSlidesProgress || params.watchSlidesVisibility) {\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n if (params.freeMode) {\n // Velocity\n if (data.velocities.length === 0) {\n data.velocities.push({\n position: touches[swiper.isHorizontal() ? 'startX' : 'startY'],\n time: data.touchStartTime,\n });\n }\n data.velocities.push({\n position: touches[swiper.isHorizontal() ? 'currentX' : 'currentY'],\n time: Utils.now(),\n });\n }\n // Update progress\n swiper.updateProgress(data.currentTranslate);\n // Update translate\n swiper.setTranslate(data.currentTranslate);\n}\n\nfunction onTouchEnd (event) {\n const swiper = this;\n const data = swiper.touchEventsData;\n\n const {\n params, touches, rtlTranslate: rtl, $wrapperEl, slidesGrid, snapGrid,\n } = swiper;\n let e = event;\n if (e.originalEvent) e = e.originalEvent;\n if (data.allowTouchCallbacks) {\n swiper.emit('touchEnd', e);\n }\n data.allowTouchCallbacks = false;\n if (!data.isTouched) {\n if (data.isMoved && params.grabCursor) {\n swiper.setGrabCursor(false);\n }\n data.isMoved = false;\n data.startMoving = false;\n return;\n }\n // Return Grab Cursor\n if (params.grabCursor && data.isMoved && data.isTouched && (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)) {\n swiper.setGrabCursor(false);\n }\n\n // Time diff\n const touchEndTime = Utils.now();\n const timeDiff = touchEndTime - data.touchStartTime;\n\n // Tap, doubleTap, Click\n if (swiper.allowClick) {\n swiper.updateClickedSlide(e);\n swiper.emit('tap click', e);\n if (timeDiff < 300 && (touchEndTime - data.lastClickTime) < 300) {\n swiper.emit('doubleTap doubleClick', e);\n }\n }\n\n data.lastClickTime = Utils.now();\n Utils.nextTick(() => {\n if (!swiper.destroyed) swiper.allowClick = true;\n });\n\n if (!data.isTouched || !data.isMoved || !swiper.swipeDirection || touches.diff === 0 || data.currentTranslate === data.startTranslate) {\n data.isTouched = false;\n data.isMoved = false;\n data.startMoving = false;\n return;\n }\n data.isTouched = false;\n data.isMoved = false;\n data.startMoving = false;\n\n let currentPos;\n if (params.followFinger) {\n currentPos = rtl ? swiper.translate : -swiper.translate;\n } else {\n currentPos = -data.currentTranslate;\n }\n\n if (params.cssMode) {\n return;\n }\n\n if (params.freeMode) {\n if (currentPos < -swiper.minTranslate()) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n if (currentPos > -swiper.maxTranslate()) {\n if (swiper.slides.length < snapGrid.length) {\n swiper.slideTo(snapGrid.length - 1);\n } else {\n swiper.slideTo(swiper.slides.length - 1);\n }\n return;\n }\n\n if (params.freeModeMomentum) {\n if (data.velocities.length > 1) {\n const lastMoveEvent = data.velocities.pop();\n const velocityEvent = data.velocities.pop();\n\n const distance = lastMoveEvent.position - velocityEvent.position;\n const time = lastMoveEvent.time - velocityEvent.time;\n swiper.velocity = distance / time;\n swiper.velocity /= 2;\n if (Math.abs(swiper.velocity) < params.freeModeMinimumVelocity) {\n swiper.velocity = 0;\n }\n // this implies that the user stopped moving a finger then released.\n // There would be no events with distance zero, so the last event is stale.\n if (time > 150 || (Utils.now() - lastMoveEvent.time) > 300) {\n swiper.velocity = 0;\n }\n } else {\n swiper.velocity = 0;\n }\n swiper.velocity *= params.freeModeMomentumVelocityRatio;\n\n data.velocities.length = 0;\n let momentumDuration = 1000 * params.freeModeMomentumRatio;\n const momentumDistance = swiper.velocity * momentumDuration;\n\n let newPosition = swiper.translate + momentumDistance;\n if (rtl) newPosition = -newPosition;\n\n let doBounce = false;\n let afterBouncePosition;\n const bounceAmount = Math.abs(swiper.velocity) * 20 * params.freeModeMomentumBounceRatio;\n let needsLoopFix;\n if (newPosition < swiper.maxTranslate()) {\n if (params.freeModeMomentumBounce) {\n if (newPosition + swiper.maxTranslate() < -bounceAmount) {\n newPosition = swiper.maxTranslate() - bounceAmount;\n }\n afterBouncePosition = swiper.maxTranslate();\n doBounce = true;\n data.allowMomentumBounce = true;\n } else {\n newPosition = swiper.maxTranslate();\n }\n if (params.loop && params.centeredSlides) needsLoopFix = true;\n } else if (newPosition > swiper.minTranslate()) {\n if (params.freeModeMomentumBounce) {\n if (newPosition - swiper.minTranslate() > bounceAmount) {\n newPosition = swiper.minTranslate() + bounceAmount;\n }\n afterBouncePosition = swiper.minTranslate();\n doBounce = true;\n data.allowMomentumBounce = true;\n } else {\n newPosition = swiper.minTranslate();\n }\n if (params.loop && params.centeredSlides) needsLoopFix = true;\n } else if (params.freeModeSticky) {\n let nextSlide;\n for (let j = 0; j < snapGrid.length; j += 1) {\n if (snapGrid[j] > -newPosition) {\n nextSlide = j;\n break;\n }\n }\n\n if (Math.abs(snapGrid[nextSlide] - newPosition) < Math.abs(snapGrid[nextSlide - 1] - newPosition) || swiper.swipeDirection === 'next') {\n newPosition = snapGrid[nextSlide];\n } else {\n newPosition = snapGrid[nextSlide - 1];\n }\n newPosition = -newPosition;\n }\n if (needsLoopFix) {\n swiper.once('transitionEnd', () => {\n swiper.loopFix();\n });\n }\n // Fix duration\n if (swiper.velocity !== 0) {\n if (rtl) {\n momentumDuration = Math.abs((-newPosition - swiper.translate) / swiper.velocity);\n } else {\n momentumDuration = Math.abs((newPosition - swiper.translate) / swiper.velocity);\n }\n if (params.freeModeSticky) {\n // If freeModeSticky is active and the user ends a swipe with a slow-velocity\n // event, then durations can be 20+ seconds to slide one (or zero!) slides.\n // It's easy to see this when simulating touch with mouse events. To fix this,\n // limit single-slide swipes to the default slide duration. This also has the\n // nice side effect of matching slide speed if the user stopped moving before\n // lifting finger or mouse vs. moving slowly before lifting the finger/mouse.\n // For faster swipes, also apply limits (albeit higher ones).\n const moveDistance = Math.abs((rtl ? -newPosition : newPosition) - swiper.translate);\n const currentSlideSize = swiper.slidesSizesGrid[swiper.activeIndex];\n if (moveDistance < currentSlideSize) {\n momentumDuration = params.speed;\n } else if (moveDistance < 2 * currentSlideSize) {\n momentumDuration = params.speed * 1.5;\n } else {\n momentumDuration = params.speed * 2.5;\n }\n }\n } else if (params.freeModeSticky) {\n swiper.slideToClosest();\n return;\n }\n\n if (params.freeModeMomentumBounce && doBounce) {\n swiper.updateProgress(afterBouncePosition);\n swiper.setTransition(momentumDuration);\n swiper.setTranslate(newPosition);\n swiper.transitionStart(true, swiper.swipeDirection);\n swiper.animating = true;\n $wrapperEl.transitionEnd(() => {\n if (!swiper || swiper.destroyed || !data.allowMomentumBounce) return;\n swiper.emit('momentumBounce');\n swiper.setTransition(params.speed);\n setTimeout(() => {\n swiper.setTranslate(afterBouncePosition);\n $wrapperEl.transitionEnd(() => {\n if (!swiper || swiper.destroyed) return;\n swiper.transitionEnd();\n });\n }, 0);\n });\n } else if (swiper.velocity) {\n swiper.updateProgress(newPosition);\n swiper.setTransition(momentumDuration);\n swiper.setTranslate(newPosition);\n swiper.transitionStart(true, swiper.swipeDirection);\n if (!swiper.animating) {\n swiper.animating = true;\n $wrapperEl.transitionEnd(() => {\n if (!swiper || swiper.destroyed) return;\n swiper.transitionEnd();\n });\n }\n } else {\n swiper.updateProgress(newPosition);\n }\n\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n } else if (params.freeModeSticky) {\n swiper.slideToClosest();\n return;\n }\n\n if (!params.freeModeMomentum || timeDiff >= params.longSwipesMs) {\n swiper.updateProgress();\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n return;\n }\n\n // Find current slide\n let stopIndex = 0;\n let groupSize = swiper.slidesSizesGrid[0];\n for (let i = 0; i < slidesGrid.length; i += (i < params.slidesPerGroupSkip ? 1 : params.slidesPerGroup)) {\n const increment = (i < params.slidesPerGroupSkip - 1 ? 1 : params.slidesPerGroup);\n if (typeof slidesGrid[i + increment] !== 'undefined') {\n if (currentPos >= slidesGrid[i] && currentPos < slidesGrid[i + increment]) {\n stopIndex = i;\n groupSize = slidesGrid[i + increment] - slidesGrid[i];\n }\n } else if (currentPos >= slidesGrid[i]) {\n stopIndex = i;\n groupSize = slidesGrid[slidesGrid.length - 1] - slidesGrid[slidesGrid.length - 2];\n }\n }\n\n // Find current slide size\n const ratio = (currentPos - slidesGrid[stopIndex]) / groupSize;\n const increment = (stopIndex < params.slidesPerGroupSkip - 1 ? 1 : params.slidesPerGroup);\n\n if (timeDiff > params.longSwipesMs) {\n // Long touches\n if (!params.longSwipes) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n if (swiper.swipeDirection === 'next') {\n if (ratio >= params.longSwipesRatio) swiper.slideTo(stopIndex + increment);\n else swiper.slideTo(stopIndex);\n }\n if (swiper.swipeDirection === 'prev') {\n if (ratio > (1 - params.longSwipesRatio)) swiper.slideTo(stopIndex + increment);\n else swiper.slideTo(stopIndex);\n }\n } else {\n // Short swipes\n if (!params.shortSwipes) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n const isNavButtonTarget = swiper.navigation && (e.target === swiper.navigation.nextEl || e.target === swiper.navigation.prevEl);\n if (!isNavButtonTarget) {\n if (swiper.swipeDirection === 'next') {\n swiper.slideTo(stopIndex + increment);\n }\n if (swiper.swipeDirection === 'prev') {\n swiper.slideTo(stopIndex);\n }\n } else if (e.target === swiper.navigation.nextEl) {\n swiper.slideTo(stopIndex + increment);\n } else {\n swiper.slideTo(stopIndex);\n }\n }\n}\n\nfunction onResize () {\n const swiper = this;\n\n const { params, el } = swiper;\n\n if (el && el.offsetWidth === 0) return;\n\n // Breakpoints\n if (params.breakpoints) {\n swiper.setBreakpoint();\n }\n\n // Save locks\n const { allowSlideNext, allowSlidePrev, snapGrid } = swiper;\n\n // Disable locks on resize\n swiper.allowSlideNext = true;\n swiper.allowSlidePrev = true;\n\n swiper.updateSize();\n swiper.updateSlides();\n\n swiper.updateSlidesClasses();\n if ((params.slidesPerView === 'auto' || params.slidesPerView > 1) && swiper.isEnd && !swiper.isBeginning && !swiper.params.centeredSlides) {\n swiper.slideTo(swiper.slides.length - 1, 0, false, true);\n } else {\n swiper.slideTo(swiper.activeIndex, 0, false, true);\n }\n\n if (swiper.autoplay && swiper.autoplay.running && swiper.autoplay.paused) {\n swiper.autoplay.run();\n }\n // Return locks after resize\n swiper.allowSlidePrev = allowSlidePrev;\n swiper.allowSlideNext = allowSlideNext;\n\n if (swiper.params.watchOverflow && snapGrid !== swiper.snapGrid) {\n swiper.checkOverflow();\n }\n}\n\nfunction onClick (e) {\n const swiper = this;\n if (!swiper.allowClick) {\n if (swiper.params.preventClicks) e.preventDefault();\n if (swiper.params.preventClicksPropagation && swiper.animating) {\n e.stopPropagation();\n e.stopImmediatePropagation();\n }\n }\n}\n\nfunction onScroll () {\n const swiper = this;\n const { wrapperEl, rtlTranslate } = swiper;\n swiper.previousTranslate = swiper.translate;\n if (swiper.isHorizontal()) {\n if (rtlTranslate) {\n swiper.translate = ((wrapperEl.scrollWidth - wrapperEl.offsetWidth) - wrapperEl.scrollLeft);\n } else {\n swiper.translate = -wrapperEl.scrollLeft;\n }\n } else {\n swiper.translate = -wrapperEl.scrollTop;\n }\n // eslint-disable-next-line\n if (swiper.translate === -0) swiper.translate = 0;\n\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n\n let newProgress;\n const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n if (translatesDiff === 0) {\n newProgress = 0;\n } else {\n newProgress = (swiper.translate - swiper.minTranslate()) / (translatesDiff);\n }\n if (newProgress !== swiper.progress) {\n swiper.updateProgress(rtlTranslate ? -swiper.translate : swiper.translate);\n }\n\n swiper.emit('setTranslate', swiper.translate, false);\n}\n\nlet dummyEventAttached = false;\nfunction dummyEventListener() {}\n\nfunction attachEvents() {\n const swiper = this;\n const {\n params, touchEvents, el, wrapperEl,\n } = swiper;\n\n swiper.onTouchStart = onTouchStart.bind(swiper);\n swiper.onTouchMove = onTouchMove.bind(swiper);\n swiper.onTouchEnd = onTouchEnd.bind(swiper);\n if (params.cssMode) {\n swiper.onScroll = onScroll.bind(swiper);\n }\n\n swiper.onClick = onClick.bind(swiper);\n\n const capture = !!params.nested;\n\n // Touch Events\n if (!Support.touch && Support.pointerEvents) {\n el.addEventListener(touchEvents.start, swiper.onTouchStart, false);\n document$1.addEventListener(touchEvents.move, swiper.onTouchMove, capture);\n document$1.addEventListener(touchEvents.end, swiper.onTouchEnd, false);\n } else {\n if (Support.touch) {\n const passiveListener = touchEvents.start === 'touchstart' && Support.passiveListener && params.passiveListeners ? { passive: true, capture: false } : false;\n el.addEventListener(touchEvents.start, swiper.onTouchStart, passiveListener);\n el.addEventListener(touchEvents.move, swiper.onTouchMove, Support.passiveListener ? { passive: false, capture } : capture);\n el.addEventListener(touchEvents.end, swiper.onTouchEnd, passiveListener);\n if (touchEvents.cancel) {\n el.addEventListener(touchEvents.cancel, swiper.onTouchEnd, passiveListener);\n }\n if (!dummyEventAttached) {\n document$1.addEventListener('touchstart', dummyEventListener);\n dummyEventAttached = true;\n }\n }\n if ((params.simulateTouch && !Device.ios && !Device.android) || (params.simulateTouch && !Support.touch && Device.ios)) {\n el.addEventListener('mousedown', swiper.onTouchStart, false);\n document$1.addEventListener('mousemove', swiper.onTouchMove, capture);\n document$1.addEventListener('mouseup', swiper.onTouchEnd, false);\n }\n }\n // Prevent Links Clicks\n if (params.preventClicks || params.preventClicksPropagation) {\n el.addEventListener('click', swiper.onClick, true);\n }\n if (params.cssMode) {\n wrapperEl.addEventListener('scroll', swiper.onScroll);\n }\n\n // Resize handler\n if (params.updateOnWindowResize) {\n swiper.on((Device.ios || Device.android ? 'resize orientationchange observerUpdate' : 'resize observerUpdate'), onResize, true);\n } else {\n swiper.on('observerUpdate', onResize, true);\n }\n}\n\nfunction detachEvents() {\n const swiper = this;\n\n const {\n params, touchEvents, el, wrapperEl,\n } = swiper;\n\n const capture = !!params.nested;\n\n // Touch Events\n if (!Support.touch && Support.pointerEvents) {\n el.removeEventListener(touchEvents.start, swiper.onTouchStart, false);\n document$1.removeEventListener(touchEvents.move, swiper.onTouchMove, capture);\n document$1.removeEventListener(touchEvents.end, swiper.onTouchEnd, false);\n } else {\n if (Support.touch) {\n const passiveListener = touchEvents.start === 'onTouchStart' && Support.passiveListener && params.passiveListeners ? { passive: true, capture: false } : false;\n el.removeEventListener(touchEvents.start, swiper.onTouchStart, passiveListener);\n el.removeEventListener(touchEvents.move, swiper.onTouchMove, capture);\n el.removeEventListener(touchEvents.end, swiper.onTouchEnd, passiveListener);\n if (touchEvents.cancel) {\n el.removeEventListener(touchEvents.cancel, swiper.onTouchEnd, passiveListener);\n }\n }\n if ((params.simulateTouch && !Device.ios && !Device.android) || (params.simulateTouch && !Support.touch && Device.ios)) {\n el.removeEventListener('mousedown', swiper.onTouchStart, false);\n document$1.removeEventListener('mousemove', swiper.onTouchMove, capture);\n document$1.removeEventListener('mouseup', swiper.onTouchEnd, false);\n }\n }\n // Prevent Links Clicks\n if (params.preventClicks || params.preventClicksPropagation) {\n el.removeEventListener('click', swiper.onClick, true);\n }\n\n if (params.cssMode) {\n wrapperEl.removeEventListener('scroll', swiper.onScroll);\n }\n\n // Resize handler\n swiper.off((Device.ios || Device.android ? 'resize orientationchange observerUpdate' : 'resize observerUpdate'), onResize);\n}\n\nvar events = {\n attachEvents,\n detachEvents,\n};\n\nfunction setBreakpoint () {\n const swiper = this;\n const {\n activeIndex, initialized, loopedSlides = 0, params, $el,\n } = swiper;\n const breakpoints = params.breakpoints;\n if (!breakpoints || (breakpoints && Object.keys(breakpoints).length === 0)) return;\n\n // Get breakpoint for window width and update parameters\n const breakpoint = swiper.getBreakpoint(breakpoints);\n\n if (breakpoint && swiper.currentBreakpoint !== breakpoint) {\n const breakpointOnlyParams = breakpoint in breakpoints ? breakpoints[breakpoint] : undefined;\n if (breakpointOnlyParams) {\n ['slidesPerView', 'spaceBetween', 'slidesPerGroup', 'slidesPerGroupSkip', 'slidesPerColumn'].forEach((param) => {\n const paramValue = breakpointOnlyParams[param];\n if (typeof paramValue === 'undefined') return;\n if (param === 'slidesPerView' && (paramValue === 'AUTO' || paramValue === 'auto')) {\n breakpointOnlyParams[param] = 'auto';\n } else if (param === 'slidesPerView') {\n breakpointOnlyParams[param] = parseFloat(paramValue);\n } else {\n breakpointOnlyParams[param] = parseInt(paramValue, 10);\n }\n });\n }\n\n const breakpointParams = breakpointOnlyParams || swiper.originalParams;\n const wasMultiRow = params.slidesPerColumn > 1;\n const isMultiRow = breakpointParams.slidesPerColumn > 1;\n if (wasMultiRow && !isMultiRow) {\n $el.removeClass(`${params.containerModifierClass}multirow ${params.containerModifierClass}multirow-column`);\n } else if (!wasMultiRow && isMultiRow) {\n $el.addClass(`${params.containerModifierClass}multirow`);\n if (breakpointParams.slidesPerColumnFill === 'column') {\n $el.addClass(`${params.containerModifierClass}multirow-column`);\n }\n }\n\n const directionChanged = breakpointParams.direction && breakpointParams.direction !== params.direction;\n const needsReLoop = params.loop && (breakpointParams.slidesPerView !== params.slidesPerView || directionChanged);\n\n if (directionChanged && initialized) {\n swiper.changeDirection();\n }\n\n Utils.extend(swiper.params, breakpointParams);\n\n Utils.extend(swiper, {\n allowTouchMove: swiper.params.allowTouchMove,\n allowSlideNext: swiper.params.allowSlideNext,\n allowSlidePrev: swiper.params.allowSlidePrev,\n });\n\n swiper.currentBreakpoint = breakpoint;\n\n if (needsReLoop && initialized) {\n swiper.loopDestroy();\n swiper.loopCreate();\n swiper.updateSlides();\n swiper.slideTo((activeIndex - loopedSlides) + swiper.loopedSlides, 0, false);\n }\n\n swiper.emit('breakpoint', breakpointParams);\n }\n}\n\nfunction getBreakpoint (breakpoints) {\n // Get breakpoint for window width\n if (!breakpoints) return undefined;\n let breakpoint = false;\n\n const points = Object.keys(breakpoints).map((point) => {\n if (typeof point === 'string' && point.indexOf('@') === 0) {\n const minRatio = parseFloat(point.substr(1));\n const value = window.innerHeight * minRatio;\n return { value, point };\n }\n return { value: point, point };\n });\n\n points.sort((a, b) => parseInt(a.value, 10) - parseInt(b.value, 10));\n for (let i = 0; i < points.length; i += 1) {\n const { point, value } = points[i];\n if (value <= window.innerWidth) {\n breakpoint = point;\n }\n }\n return breakpoint || 'max';\n}\n\nvar breakpoints = { setBreakpoint, getBreakpoint };\n\nfunction addClasses () {\n const swiper = this;\n const {\n classNames, params, rtl, $el,\n } = swiper;\n const suffixes = [];\n\n suffixes.push('initialized');\n suffixes.push(params.direction);\n\n if (params.freeMode) {\n suffixes.push('free-mode');\n }\n if (params.autoHeight) {\n suffixes.push('autoheight');\n }\n if (rtl) {\n suffixes.push('rtl');\n }\n if (params.slidesPerColumn > 1) {\n suffixes.push('multirow');\n if (params.slidesPerColumnFill === 'column') {\n suffixes.push('multirow-column');\n }\n }\n if (Device.android) {\n suffixes.push('android');\n }\n if (Device.ios) {\n suffixes.push('ios');\n }\n\n if (params.cssMode) {\n suffixes.push('css-mode');\n }\n\n suffixes.forEach((suffix) => {\n classNames.push(params.containerModifierClass + suffix);\n });\n\n $el.addClass(classNames.join(' '));\n}\n\nfunction removeClasses () {\n const swiper = this;\n const { $el, classNames } = swiper;\n\n $el.removeClass(classNames.join(' '));\n}\n\nvar classes = { addClasses, removeClasses };\n\nfunction loadImage (imageEl, src, srcset, sizes, checkForComplete, callback) {\n let image;\n function onReady() {\n if (callback) callback();\n }\n const isPicture = $(imageEl).parent('picture')[0];\n\n if (!isPicture && (!imageEl.complete || !checkForComplete)) {\n if (src) {\n image = new window.Image();\n image.onload = onReady;\n image.onerror = onReady;\n if (sizes) {\n image.sizes = sizes;\n }\n if (srcset) {\n image.srcset = srcset;\n }\n if (src) {\n image.src = src;\n }\n } else {\n onReady();\n }\n } else {\n // image already loaded...\n onReady();\n }\n}\n\nfunction preloadImages () {\n const swiper = this;\n swiper.imagesToLoad = swiper.$el.find('img');\n function onReady() {\n if (typeof swiper === 'undefined' || swiper === null || !swiper || swiper.destroyed) return;\n if (swiper.imagesLoaded !== undefined) swiper.imagesLoaded += 1;\n if (swiper.imagesLoaded === swiper.imagesToLoad.length) {\n if (swiper.params.updateOnImagesReady) swiper.update();\n swiper.emit('imagesReady');\n }\n }\n for (let i = 0; i < swiper.imagesToLoad.length; i += 1) {\n const imageEl = swiper.imagesToLoad[i];\n swiper.loadImage(\n imageEl,\n imageEl.currentSrc || imageEl.getAttribute('src'),\n imageEl.srcset || imageEl.getAttribute('srcset'),\n imageEl.sizes || imageEl.getAttribute('sizes'),\n true,\n onReady\n );\n }\n}\n\nvar images = {\n loadImage,\n preloadImages,\n};\n\nfunction checkOverflow() {\n const swiper = this;\n const params = swiper.params;\n const wasLocked = swiper.isLocked;\n const lastSlidePosition = swiper.slides.length > 0 && (params.slidesOffsetBefore + (params.spaceBetween * (swiper.slides.length - 1)) + ((swiper.slides[0]).offsetWidth) * swiper.slides.length);\n\n if (params.slidesOffsetBefore && params.slidesOffsetAfter && lastSlidePosition) {\n swiper.isLocked = lastSlidePosition <= swiper.size;\n } else {\n swiper.isLocked = swiper.snapGrid.length === 1;\n }\n\n swiper.allowSlideNext = !swiper.isLocked;\n swiper.allowSlidePrev = !swiper.isLocked;\n\n // events\n if (wasLocked !== swiper.isLocked) swiper.emit(swiper.isLocked ? 'lock' : 'unlock');\n\n if (wasLocked && wasLocked !== swiper.isLocked) {\n swiper.isEnd = false;\n if (swiper.navigation) swiper.navigation.update();\n }\n}\n\nvar checkOverflow$1 = { checkOverflow };\n\nvar defaults = {\n init: true,\n direction: 'horizontal',\n touchEventsTarget: 'container',\n initialSlide: 0,\n speed: 300,\n cssMode: false,\n updateOnWindowResize: true,\n //\n preventInteractionOnTransition: false,\n\n // To support iOS's swipe-to-go-back gesture (when being used in-app).\n edgeSwipeDetection: false,\n edgeSwipeThreshold: 20,\n\n // Free mode\n freeMode: false,\n freeModeMomentum: true,\n freeModeMomentumRatio: 1,\n freeModeMomentumBounce: true,\n freeModeMomentumBounceRatio: 1,\n freeModeMomentumVelocityRatio: 1,\n freeModeSticky: false,\n freeModeMinimumVelocity: 0.02,\n\n // Autoheight\n autoHeight: false,\n\n // Set wrapper width\n setWrapperSize: false,\n\n // Virtual Translate\n virtualTranslate: false,\n\n // Effects\n effect: 'slide', // 'slide' or 'fade' or 'cube' or 'coverflow' or 'flip'\n\n // Breakpoints\n breakpoints: undefined,\n\n // Slides grid\n spaceBetween: 0,\n slidesPerView: 1,\n slidesPerColumn: 1,\n slidesPerColumnFill: 'column',\n slidesPerGroup: 1,\n slidesPerGroupSkip: 0,\n centeredSlides: false,\n centeredSlidesBounds: false,\n slidesOffsetBefore: 0, // in px\n slidesOffsetAfter: 0, // in px\n normalizeSlideIndex: true,\n centerInsufficientSlides: false,\n\n // Disable swiper and hide navigation when container not overflow\n watchOverflow: false,\n\n // Round length\n roundLengths: false,\n\n // Touches\n touchRatio: 1,\n touchAngle: 45,\n simulateTouch: true,\n shortSwipes: true,\n longSwipes: true,\n longSwipesRatio: 0.5,\n longSwipesMs: 300,\n followFinger: true,\n allowTouchMove: true,\n threshold: 0,\n touchMoveStopPropagation: false,\n touchStartPreventDefault: true,\n touchStartForcePreventDefault: false,\n touchReleaseOnEdges: false,\n\n // Unique Navigation Elements\n uniqueNavElements: true,\n\n // Resistance\n resistance: true,\n resistanceRatio: 0.85,\n\n // Progress\n watchSlidesProgress: false,\n watchSlidesVisibility: false,\n\n // Cursor\n grabCursor: false,\n\n // Clicks\n preventClicks: true,\n preventClicksPropagation: true,\n slideToClickedSlide: false,\n\n // Images\n preloadImages: true,\n updateOnImagesReady: true,\n\n // loop\n loop: false,\n loopAdditionalSlides: 0,\n loopedSlides: null,\n loopFillGroupWithBlank: false,\n\n // Swiping/no swiping\n allowSlidePrev: true,\n allowSlideNext: true,\n swipeHandler: null, // '.swipe-handler',\n noSwiping: true,\n noSwipingClass: 'swiper-no-swiping',\n noSwipingSelector: null,\n\n // Passive Listeners\n passiveListeners: true,\n\n // NS\n containerModifierClass: 'swiper-container-', // NEW\n slideClass: 'swiper-slide',\n slideBlankClass: 'swiper-slide-invisible-blank',\n slideActiveClass: 'swiper-slide-active',\n slideDuplicateActiveClass: 'swiper-slide-duplicate-active',\n slideVisibleClass: 'swiper-slide-visible',\n slideDuplicateClass: 'swiper-slide-duplicate',\n slideNextClass: 'swiper-slide-next',\n slideDuplicateNextClass: 'swiper-slide-duplicate-next',\n slidePrevClass: 'swiper-slide-prev',\n slideDuplicatePrevClass: 'swiper-slide-duplicate-prev',\n wrapperClass: 'swiper-wrapper',\n\n // Callbacks\n runCallbacksOnInit: true,\n};\n\n/* eslint no-param-reassign: \"off\" */\n\nconst prototypes = {\n update,\n translate,\n transition,\n slide,\n loop,\n grabCursor,\n manipulation,\n events,\n breakpoints,\n checkOverflow: checkOverflow$1,\n classes,\n images,\n};\n\nconst extendedDefaults = {};\n\nclass Swiper extends SwiperClass {\n constructor(...args) {\n let el;\n let params;\n if (args.length === 1 && args[0].constructor && args[0].constructor === Object) {\n params = args[0];\n } else {\n [el, params] = args;\n }\n if (!params) params = {};\n\n params = Utils.extend({}, params);\n if (el && !params.el) params.el = el;\n\n super(params);\n\n Object.keys(prototypes).forEach((prototypeGroup) => {\n Object.keys(prototypes[prototypeGroup]).forEach((protoMethod) => {\n if (!Swiper.prototype[protoMethod]) {\n Swiper.prototype[protoMethod] = prototypes[prototypeGroup][protoMethod];\n }\n });\n });\n\n // Swiper Instance\n const swiper = this;\n if (typeof swiper.modules === 'undefined') {\n swiper.modules = {};\n }\n Object.keys(swiper.modules).forEach((moduleName) => {\n const module = swiper.modules[moduleName];\n if (module.params) {\n const moduleParamName = Object.keys(module.params)[0];\n const moduleParams = module.params[moduleParamName];\n if (typeof moduleParams !== 'object' || moduleParams === null) return;\n if (!(moduleParamName in params && 'enabled' in moduleParams)) return;\n if (params[moduleParamName] === true) {\n params[moduleParamName] = { enabled: true };\n }\n if (\n typeof params[moduleParamName] === 'object'\n && !('enabled' in params[moduleParamName])\n ) {\n params[moduleParamName].enabled = true;\n }\n if (!params[moduleParamName]) params[moduleParamName] = { enabled: false };\n }\n });\n\n // Extend defaults with modules params\n const swiperParams = Utils.extend({}, defaults);\n swiper.useModulesParams(swiperParams);\n\n // Extend defaults with passed params\n swiper.params = Utils.extend({}, swiperParams, extendedDefaults, params);\n swiper.originalParams = Utils.extend({}, swiper.params);\n swiper.passedParams = Utils.extend({}, params);\n\n // Save Dom lib\n swiper.$ = $;\n\n // Find el\n const $el = $(swiper.params.el);\n el = $el[0];\n\n if (!el) {\n return undefined;\n }\n\n if ($el.length > 1) {\n const swipers = [];\n $el.each((index, containerEl) => {\n const newParams = Utils.extend({}, params, { el: containerEl });\n swipers.push(new Swiper(newParams));\n });\n return swipers;\n }\n\n el.swiper = swiper;\n $el.data('swiper', swiper);\n\n // Find Wrapper\n let $wrapperEl;\n if (el && el.shadowRoot && el.shadowRoot.querySelector) {\n $wrapperEl = $(el.shadowRoot.querySelector(`.${swiper.params.wrapperClass}`));\n // Children needs to return slot items\n $wrapperEl.children = (options) => $el.children(options);\n } else {\n $wrapperEl = $el.children(`.${swiper.params.wrapperClass}`);\n }\n // Extend Swiper\n Utils.extend(swiper, {\n $el,\n el,\n $wrapperEl,\n wrapperEl: $wrapperEl[0],\n\n // Classes\n classNames: [],\n\n // Slides\n slides: $(),\n slidesGrid: [],\n snapGrid: [],\n slidesSizesGrid: [],\n\n // isDirection\n isHorizontal() {\n return swiper.params.direction === 'horizontal';\n },\n isVertical() {\n return swiper.params.direction === 'vertical';\n },\n // RTL\n rtl: (el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl'),\n rtlTranslate: swiper.params.direction === 'horizontal' && (el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl'),\n wrongRTL: $wrapperEl.css('display') === '-webkit-box',\n\n // Indexes\n activeIndex: 0,\n realIndex: 0,\n\n //\n isBeginning: true,\n isEnd: false,\n\n // Props\n translate: 0,\n previousTranslate: 0,\n progress: 0,\n velocity: 0,\n animating: false,\n\n // Locks\n allowSlideNext: swiper.params.allowSlideNext,\n allowSlidePrev: swiper.params.allowSlidePrev,\n\n // Touch Events\n touchEvents: (function touchEvents() {\n const touch = ['touchstart', 'touchmove', 'touchend', 'touchcancel'];\n let desktop = ['mousedown', 'mousemove', 'mouseup'];\n if (Support.pointerEvents) {\n desktop = ['pointerdown', 'pointermove', 'pointerup'];\n }\n swiper.touchEventsTouch = {\n start: touch[0],\n move: touch[1],\n end: touch[2],\n cancel: touch[3],\n };\n swiper.touchEventsDesktop = {\n start: desktop[0],\n move: desktop[1],\n end: desktop[2],\n };\n return Support.touch || !swiper.params.simulateTouch ? swiper.touchEventsTouch : swiper.touchEventsDesktop;\n }()),\n touchEventsData: {\n isTouched: undefined,\n isMoved: undefined,\n allowTouchCallbacks: undefined,\n touchStartTime: undefined,\n isScrolling: undefined,\n currentTranslate: undefined,\n startTranslate: undefined,\n allowThresholdMove: undefined,\n // Form elements to match\n formElements: 'input, select, option, textarea, button, video, label',\n // Last click time\n lastClickTime: Utils.now(),\n clickTimeout: undefined,\n // Velocities\n velocities: [],\n allowMomentumBounce: undefined,\n isTouchEvent: undefined,\n startMoving: undefined,\n },\n\n // Clicks\n allowClick: true,\n\n // Touches\n allowTouchMove: swiper.params.allowTouchMove,\n\n touches: {\n startX: 0,\n startY: 0,\n currentX: 0,\n currentY: 0,\n diff: 0,\n },\n\n // Images\n imagesToLoad: [],\n imagesLoaded: 0,\n\n });\n\n // Install Modules\n swiper.useModules();\n\n // Init\n if (swiper.params.init) {\n swiper.init();\n }\n\n // Return app instance\n return swiper;\n }\n\n slidesPerViewDynamic() {\n const swiper = this;\n const {\n params, slides, slidesGrid, size: swiperSize, activeIndex,\n } = swiper;\n let spv = 1;\n if (params.centeredSlides) {\n let slideSize = slides[activeIndex].swiperSlideSize;\n let breakLoop;\n for (let i = activeIndex + 1; i < slides.length; i += 1) {\n if (slides[i] && !breakLoop) {\n slideSize += slides[i].swiperSlideSize;\n spv += 1;\n if (slideSize > swiperSize) breakLoop = true;\n }\n }\n for (let i = activeIndex - 1; i >= 0; i -= 1) {\n if (slides[i] && !breakLoop) {\n slideSize += slides[i].swiperSlideSize;\n spv += 1;\n if (slideSize > swiperSize) breakLoop = true;\n }\n }\n } else {\n for (let i = activeIndex + 1; i < slides.length; i += 1) {\n if (slidesGrid[i] - slidesGrid[activeIndex] < swiperSize) {\n spv += 1;\n }\n }\n }\n return spv;\n }\n\n update() {\n const swiper = this;\n if (!swiper || swiper.destroyed) return;\n const { snapGrid, params } = swiper;\n // Breakpoints\n if (params.breakpoints) {\n swiper.setBreakpoint();\n }\n swiper.updateSize();\n swiper.updateSlides();\n swiper.updateProgress();\n swiper.updateSlidesClasses();\n\n function setTranslate() {\n const translateValue = swiper.rtlTranslate ? swiper.translate * -1 : swiper.translate;\n const newTranslate = Math.min(Math.max(translateValue, swiper.maxTranslate()), swiper.minTranslate());\n swiper.setTranslate(newTranslate);\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n let translated;\n if (swiper.params.freeMode) {\n setTranslate();\n if (swiper.params.autoHeight) {\n swiper.updateAutoHeight();\n }\n } else {\n if ((swiper.params.slidesPerView === 'auto' || swiper.params.slidesPerView > 1) && swiper.isEnd && !swiper.params.centeredSlides) {\n translated = swiper.slideTo(swiper.slides.length - 1, 0, false, true);\n } else {\n translated = swiper.slideTo(swiper.activeIndex, 0, false, true);\n }\n if (!translated) {\n setTranslate();\n }\n }\n if (params.watchOverflow && snapGrid !== swiper.snapGrid) {\n swiper.checkOverflow();\n }\n swiper.emit('update');\n }\n\n changeDirection(newDirection, needUpdate = true) {\n const swiper = this;\n const currentDirection = swiper.params.direction;\n if (!newDirection) {\n // eslint-disable-next-line\n newDirection = currentDirection === 'horizontal' ? 'vertical' : 'horizontal';\n }\n if ((newDirection === currentDirection) || (newDirection !== 'horizontal' && newDirection !== 'vertical')) {\n return swiper;\n }\n\n swiper.$el\n .removeClass(`${swiper.params.containerModifierClass}${currentDirection}`)\n .addClass(`${swiper.params.containerModifierClass}${newDirection}`);\n\n swiper.params.direction = newDirection;\n\n swiper.slides.each((slideIndex, slideEl) => {\n if (newDirection === 'vertical') {\n slideEl.style.width = '';\n } else {\n slideEl.style.height = '';\n }\n });\n\n swiper.emit('changeDirection');\n if (needUpdate) swiper.update();\n\n return swiper;\n }\n\n init() {\n const swiper = this;\n if (swiper.initialized) return;\n\n swiper.emit('beforeInit');\n\n // Set breakpoint\n if (swiper.params.breakpoints) {\n swiper.setBreakpoint();\n }\n\n // Add Classes\n swiper.addClasses();\n\n // Create loop\n if (swiper.params.loop) {\n swiper.loopCreate();\n }\n\n // Update size\n swiper.updateSize();\n\n // Update slides\n swiper.updateSlides();\n\n if (swiper.params.watchOverflow) {\n swiper.checkOverflow();\n }\n\n // Set Grab Cursor\n if (swiper.params.grabCursor) {\n swiper.setGrabCursor();\n }\n\n if (swiper.params.preloadImages) {\n swiper.preloadImages();\n }\n\n // Slide To Initial Slide\n if (swiper.params.loop) {\n swiper.slideTo(swiper.params.initialSlide + swiper.loopedSlides, 0, swiper.params.runCallbacksOnInit);\n } else {\n swiper.slideTo(swiper.params.initialSlide, 0, swiper.params.runCallbacksOnInit);\n }\n\n // Attach events\n swiper.attachEvents();\n\n // Init Flag\n swiper.initialized = true;\n\n // Emit\n swiper.emit('init');\n }\n\n destroy(deleteInstance = true, cleanStyles = true) {\n const swiper = this;\n const {\n params, $el, $wrapperEl, slides,\n } = swiper;\n\n if (typeof swiper.params === 'undefined' || swiper.destroyed) {\n return null;\n }\n\n swiper.emit('beforeDestroy');\n\n // Init Flag\n swiper.initialized = false;\n\n // Detach events\n swiper.detachEvents();\n\n // Destroy loop\n if (params.loop) {\n swiper.loopDestroy();\n }\n\n // Cleanup styles\n if (cleanStyles) {\n swiper.removeClasses();\n $el.removeAttr('style');\n $wrapperEl.removeAttr('style');\n if (slides && slides.length) {\n slides\n .removeClass([\n params.slideVisibleClass,\n params.slideActiveClass,\n params.slideNextClass,\n params.slidePrevClass,\n ].join(' '))\n .removeAttr('style')\n .removeAttr('data-swiper-slide-index');\n }\n }\n\n swiper.emit('destroy');\n\n // Detach emitter events\n Object.keys(swiper.eventsListeners).forEach((eventName) => {\n swiper.off(eventName);\n });\n\n if (deleteInstance !== false) {\n swiper.$el[0].swiper = null;\n swiper.$el.data('swiper', null);\n Utils.deleteProps(swiper);\n }\n swiper.destroyed = true;\n\n return null;\n }\n\n static extendDefaults(newDefaults) {\n Utils.extend(extendedDefaults, newDefaults);\n }\n\n static get extendedDefaults() {\n return extendedDefaults;\n }\n\n static get defaults() {\n return defaults;\n }\n\n static get Class() {\n return SwiperClass;\n }\n\n static get $() {\n return $;\n }\n}\n\nvar Device$1 = {\n name: 'device',\n proto: {\n device: Device,\n },\n static: {\n device: Device,\n },\n};\n\nvar Support$1 = {\n name: 'support',\n proto: {\n support: Support,\n },\n static: {\n support: Support,\n },\n};\n\nconst Browser = (function Browser() {\n function isSafari() {\n const ua = window.navigator.userAgent.toLowerCase();\n return (ua.indexOf('safari') >= 0 && ua.indexOf('chrome') < 0 && ua.indexOf('android') < 0);\n }\n return {\n isEdge: !!window.navigator.userAgent.match(/Edge/g),\n isSafari: isSafari(),\n isWebView: /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(window.navigator.userAgent),\n };\n}());\n\nvar Browser$1 = {\n name: 'browser',\n proto: {\n browser: Browser,\n },\n static: {\n browser: Browser,\n },\n};\n\nvar Resize = {\n name: 'resize',\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n resize: {\n resizeHandler() {\n if (!swiper || swiper.destroyed || !swiper.initialized) return;\n swiper.emit('beforeResize');\n swiper.emit('resize');\n },\n orientationChangeHandler() {\n if (!swiper || swiper.destroyed || !swiper.initialized) return;\n swiper.emit('orientationchange');\n },\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n // Emit resize\n window.addEventListener('resize', swiper.resize.resizeHandler);\n\n // Emit orientationchange\n window.addEventListener('orientationchange', swiper.resize.orientationChangeHandler);\n },\n destroy() {\n const swiper = this;\n window.removeEventListener('resize', swiper.resize.resizeHandler);\n window.removeEventListener('orientationchange', swiper.resize.orientationChangeHandler);\n },\n },\n};\n\nconst Observer = {\n func: window.MutationObserver || window.WebkitMutationObserver,\n attach(target, options = {}) {\n const swiper = this;\n\n const ObserverFunc = Observer.func;\n const observer = new ObserverFunc((mutations) => {\n // The observerUpdate event should only be triggered\n // once despite the number of mutations. Additional\n // triggers are redundant and are very costly\n if (mutations.length === 1) {\n swiper.emit('observerUpdate', mutations[0]);\n return;\n }\n const observerUpdate = function observerUpdate() {\n swiper.emit('observerUpdate', mutations[0]);\n };\n\n if (window.requestAnimationFrame) {\n window.requestAnimationFrame(observerUpdate);\n } else {\n window.setTimeout(observerUpdate, 0);\n }\n });\n\n observer.observe(target, {\n attributes: typeof options.attributes === 'undefined' ? true : options.attributes,\n childList: typeof options.childList === 'undefined' ? true : options.childList,\n characterData: typeof options.characterData === 'undefined' ? true : options.characterData,\n });\n\n swiper.observer.observers.push(observer);\n },\n init() {\n const swiper = this;\n if (!Support.observer || !swiper.params.observer) return;\n if (swiper.params.observeParents) {\n const containerParents = swiper.$el.parents();\n for (let i = 0; i < containerParents.length; i += 1) {\n swiper.observer.attach(containerParents[i]);\n }\n }\n // Observe container\n swiper.observer.attach(swiper.$el[0], { childList: swiper.params.observeSlideChildren });\n\n // Observe wrapper\n swiper.observer.attach(swiper.$wrapperEl[0], { attributes: false });\n },\n destroy() {\n const swiper = this;\n swiper.observer.observers.forEach((observer) => {\n observer.disconnect();\n });\n swiper.observer.observers = [];\n },\n};\n\nvar Observer$1 = {\n name: 'observer',\n params: {\n observer: false,\n observeParents: false,\n observeSlideChildren: false,\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n observer: {\n init: Observer.init.bind(swiper),\n attach: Observer.attach.bind(swiper),\n destroy: Observer.destroy.bind(swiper),\n observers: [],\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n swiper.observer.init();\n },\n destroy() {\n const swiper = this;\n swiper.observer.destroy();\n },\n },\n};\n\nconst Virtual = {\n update(force) {\n const swiper = this;\n const { slidesPerView, slidesPerGroup, centeredSlides } = swiper.params;\n const { addSlidesBefore, addSlidesAfter } = swiper.params.virtual;\n const {\n from: previousFrom,\n to: previousTo,\n slides,\n slidesGrid: previousSlidesGrid,\n renderSlide,\n offset: previousOffset,\n } = swiper.virtual;\n swiper.updateActiveIndex();\n const activeIndex = swiper.activeIndex || 0;\n\n let offsetProp;\n if (swiper.rtlTranslate) offsetProp = 'right';\n else offsetProp = swiper.isHorizontal() ? 'left' : 'top';\n\n let slidesAfter;\n let slidesBefore;\n if (centeredSlides) {\n slidesAfter = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesBefore;\n slidesBefore = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesAfter;\n } else {\n slidesAfter = slidesPerView + (slidesPerGroup - 1) + addSlidesBefore;\n slidesBefore = slidesPerGroup + addSlidesAfter;\n }\n const from = Math.max((activeIndex || 0) - slidesBefore, 0);\n const to = Math.min((activeIndex || 0) + slidesAfter, slides.length - 1);\n const offset = (swiper.slidesGrid[from] || 0) - (swiper.slidesGrid[0] || 0);\n\n Utils.extend(swiper.virtual, {\n from,\n to,\n offset,\n slidesGrid: swiper.slidesGrid,\n });\n\n function onRendered() {\n swiper.updateSlides();\n swiper.updateProgress();\n swiper.updateSlidesClasses();\n if (swiper.lazy && swiper.params.lazy.enabled) {\n swiper.lazy.load();\n }\n }\n\n if (previousFrom === from && previousTo === to && !force) {\n if (swiper.slidesGrid !== previousSlidesGrid && offset !== previousOffset) {\n swiper.slides.css(offsetProp, `${offset}px`);\n }\n swiper.updateProgress();\n return;\n }\n if (swiper.params.virtual.renderExternal) {\n swiper.params.virtual.renderExternal.call(swiper, {\n offset,\n from,\n to,\n slides: (function getSlides() {\n const slidesToRender = [];\n for (let i = from; i <= to; i += 1) {\n slidesToRender.push(slides[i]);\n }\n return slidesToRender;\n }()),\n });\n onRendered();\n return;\n }\n const prependIndexes = [];\n const appendIndexes = [];\n if (force) {\n swiper.$wrapperEl.find(`.${swiper.params.slideClass}`).remove();\n } else {\n for (let i = previousFrom; i <= previousTo; i += 1) {\n if (i < from || i > to) {\n swiper.$wrapperEl.find(`.${swiper.params.slideClass}[data-swiper-slide-index=\"${i}\"]`).remove();\n }\n }\n }\n for (let i = 0; i < slides.length; i += 1) {\n if (i >= from && i <= to) {\n if (typeof previousTo === 'undefined' || force) {\n appendIndexes.push(i);\n } else {\n if (i > previousTo) appendIndexes.push(i);\n if (i < previousFrom) prependIndexes.push(i);\n }\n }\n }\n appendIndexes.forEach((index) => {\n swiper.$wrapperEl.append(renderSlide(slides[index], index));\n });\n prependIndexes.sort((a, b) => b - a).forEach((index) => {\n swiper.$wrapperEl.prepend(renderSlide(slides[index], index));\n });\n swiper.$wrapperEl.children('.swiper-slide').css(offsetProp, `${offset}px`);\n onRendered();\n },\n renderSlide(slide, index) {\n const swiper = this;\n const params = swiper.params.virtual;\n if (params.cache && swiper.virtual.cache[index]) {\n return swiper.virtual.cache[index];\n }\n const $slideEl = params.renderSlide\n ? $(params.renderSlide.call(swiper, slide, index))\n : $(`
${slide}
`);\n if (!$slideEl.attr('data-swiper-slide-index')) $slideEl.attr('data-swiper-slide-index', index);\n if (params.cache) swiper.virtual.cache[index] = $slideEl;\n return $slideEl;\n },\n appendSlide(slides) {\n const swiper = this;\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) swiper.virtual.slides.push(slides[i]);\n }\n } else {\n swiper.virtual.slides.push(slides);\n }\n swiper.virtual.update(true);\n },\n prependSlide(slides) {\n const swiper = this;\n const activeIndex = swiper.activeIndex;\n let newActiveIndex = activeIndex + 1;\n let numberOfNewSlides = 1;\n\n if (Array.isArray(slides)) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) swiper.virtual.slides.unshift(slides[i]);\n }\n newActiveIndex = activeIndex + slides.length;\n numberOfNewSlides = slides.length;\n } else {\n swiper.virtual.slides.unshift(slides);\n }\n if (swiper.params.virtual.cache) {\n const cache = swiper.virtual.cache;\n const newCache = {};\n Object.keys(cache).forEach((cachedIndex) => {\n const $cachedEl = cache[cachedIndex];\n const cachedElIndex = $cachedEl.attr('data-swiper-slide-index');\n if (cachedElIndex) {\n $cachedEl.attr('data-swiper-slide-index', parseInt(cachedElIndex, 10) + 1);\n }\n newCache[parseInt(cachedIndex, 10) + numberOfNewSlides] = $cachedEl;\n });\n swiper.virtual.cache = newCache;\n }\n swiper.virtual.update(true);\n swiper.slideTo(newActiveIndex, 0);\n },\n removeSlide(slidesIndexes) {\n const swiper = this;\n if (typeof slidesIndexes === 'undefined' || slidesIndexes === null) return;\n let activeIndex = swiper.activeIndex;\n if (Array.isArray(slidesIndexes)) {\n for (let i = slidesIndexes.length - 1; i >= 0; i -= 1) {\n swiper.virtual.slides.splice(slidesIndexes[i], 1);\n if (swiper.params.virtual.cache) {\n delete swiper.virtual.cache[slidesIndexes[i]];\n }\n if (slidesIndexes[i] < activeIndex) activeIndex -= 1;\n activeIndex = Math.max(activeIndex, 0);\n }\n } else {\n swiper.virtual.slides.splice(slidesIndexes, 1);\n if (swiper.params.virtual.cache) {\n delete swiper.virtual.cache[slidesIndexes];\n }\n if (slidesIndexes < activeIndex) activeIndex -= 1;\n activeIndex = Math.max(activeIndex, 0);\n }\n swiper.virtual.update(true);\n swiper.slideTo(activeIndex, 0);\n },\n removeAllSlides() {\n const swiper = this;\n swiper.virtual.slides = [];\n if (swiper.params.virtual.cache) {\n swiper.virtual.cache = {};\n }\n swiper.virtual.update(true);\n swiper.slideTo(0, 0);\n },\n};\n\nvar Virtual$1 = {\n name: 'virtual',\n params: {\n virtual: {\n enabled: false,\n slides: [],\n cache: true,\n renderSlide: null,\n renderExternal: null,\n addSlidesBefore: 0,\n addSlidesAfter: 0,\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n virtual: {\n update: Virtual.update.bind(swiper),\n appendSlide: Virtual.appendSlide.bind(swiper),\n prependSlide: Virtual.prependSlide.bind(swiper),\n removeSlide: Virtual.removeSlide.bind(swiper),\n removeAllSlides: Virtual.removeAllSlides.bind(swiper),\n renderSlide: Virtual.renderSlide.bind(swiper),\n slides: swiper.params.virtual.slides,\n cache: {},\n },\n });\n },\n on: {\n beforeInit() {\n const swiper = this;\n if (!swiper.params.virtual.enabled) return;\n swiper.classNames.push(`${swiper.params.containerModifierClass}virtual`);\n const overwriteParams = {\n watchSlidesProgress: true,\n };\n Utils.extend(swiper.params, overwriteParams);\n Utils.extend(swiper.originalParams, overwriteParams);\n\n if (!swiper.params.initialSlide) {\n swiper.virtual.update();\n }\n },\n setTranslate() {\n const swiper = this;\n if (!swiper.params.virtual.enabled) return;\n swiper.virtual.update();\n },\n },\n};\n\nconst Keyboard = {\n handle(event) {\n const swiper = this;\n const { rtlTranslate: rtl } = swiper;\n let e = event;\n if (e.originalEvent) e = e.originalEvent; // jquery fix\n const kc = e.keyCode || e.charCode;\n const pageUpDown = swiper.params.keyboard.pageUpDown;\n const isPageUp = pageUpDown && kc === 33;\n const isPageDown = pageUpDown && kc === 34;\n const isArrowLeft = kc === 37;\n const isArrowRight = kc === 39;\n const isArrowUp = kc === 38;\n const isArrowDown = kc === 40;\n // Directions locks\n if (!swiper.allowSlideNext && ((swiper.isHorizontal() && isArrowRight) || (swiper.isVertical() && isArrowDown) || isPageDown)) {\n return false;\n }\n if (!swiper.allowSlidePrev && ((swiper.isHorizontal() && isArrowLeft) || (swiper.isVertical() && isArrowUp) || isPageUp)) {\n return false;\n }\n if (e.shiftKey || e.altKey || e.ctrlKey || e.metaKey) {\n return undefined;\n }\n if (document$1.activeElement && document$1.activeElement.nodeName && (document$1.activeElement.nodeName.toLowerCase() === 'input' || document$1.activeElement.nodeName.toLowerCase() === 'textarea')) {\n return undefined;\n }\n if (swiper.params.keyboard.onlyInViewport && (isPageUp || isPageDown || isArrowLeft || isArrowRight || isArrowUp || isArrowDown)) {\n let inView = false;\n // Check that swiper should be inside of visible area of window\n if (swiper.$el.parents(`.${swiper.params.slideClass}`).length > 0 && swiper.$el.parents(`.${swiper.params.slideActiveClass}`).length === 0) {\n return undefined;\n }\n const windowWidth = window.innerWidth;\n const windowHeight = window.innerHeight;\n const swiperOffset = swiper.$el.offset();\n if (rtl) swiperOffset.left -= swiper.$el[0].scrollLeft;\n const swiperCoord = [\n [swiperOffset.left, swiperOffset.top],\n [swiperOffset.left + swiper.width, swiperOffset.top],\n [swiperOffset.left, swiperOffset.top + swiper.height],\n [swiperOffset.left + swiper.width, swiperOffset.top + swiper.height],\n ];\n for (let i = 0; i < swiperCoord.length; i += 1) {\n const point = swiperCoord[i];\n if (\n point[0] >= 0 && point[0] <= windowWidth\n && point[1] >= 0 && point[1] <= windowHeight\n ) {\n inView = true;\n }\n }\n if (!inView) return undefined;\n }\n if (swiper.isHorizontal()) {\n if (isPageUp || isPageDown || isArrowLeft || isArrowRight) {\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n }\n if (((isPageDown || isArrowRight) && !rtl) || ((isPageUp || isArrowLeft) && rtl)) swiper.slideNext();\n if (((isPageUp || isArrowLeft) && !rtl) || ((isPageDown || isArrowRight) && rtl)) swiper.slidePrev();\n } else {\n if (isPageUp || isPageDown || isArrowUp || isArrowDown) {\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n }\n if (isPageDown || isArrowDown) swiper.slideNext();\n if (isPageUp || isArrowUp) swiper.slidePrev();\n }\n swiper.emit('keyPress', kc);\n return undefined;\n },\n enable() {\n const swiper = this;\n if (swiper.keyboard.enabled) return;\n $(document$1).on('keydown', swiper.keyboard.handle);\n swiper.keyboard.enabled = true;\n },\n disable() {\n const swiper = this;\n if (!swiper.keyboard.enabled) return;\n $(document$1).off('keydown', swiper.keyboard.handle);\n swiper.keyboard.enabled = false;\n },\n};\n\nvar Keyboard$1 = {\n name: 'keyboard',\n params: {\n keyboard: {\n enabled: false,\n onlyInViewport: true,\n pageUpDown: true,\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n keyboard: {\n enabled: false,\n enable: Keyboard.enable.bind(swiper),\n disable: Keyboard.disable.bind(swiper),\n handle: Keyboard.handle.bind(swiper),\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n if (swiper.params.keyboard.enabled) {\n swiper.keyboard.enable();\n }\n },\n destroy() {\n const swiper = this;\n if (swiper.keyboard.enabled) {\n swiper.keyboard.disable();\n }\n },\n },\n};\n\nfunction isEventSupported() {\n const eventName = 'onwheel';\n let isSupported = eventName in document$1;\n\n if (!isSupported) {\n const element = document$1.createElement('div');\n element.setAttribute(eventName, 'return;');\n isSupported = typeof element[eventName] === 'function';\n }\n\n if (!isSupported\n && document$1.implementation\n && document$1.implementation.hasFeature\n // always returns true in newer browsers as per the standard.\n // @see http://dom.spec.whatwg.org/#dom-domimplementation-hasfeature\n && document$1.implementation.hasFeature('', '') !== true\n ) {\n // This is the only way to test support for the `wheel` event in IE9+.\n isSupported = document$1.implementation.hasFeature('Events.wheel', '3.0');\n }\n\n return isSupported;\n}\nconst Mousewheel = {\n lastScrollTime: Utils.now(),\n lastEventBeforeSnap: undefined,\n recentWheelEvents: [],\n event() {\n if (window.navigator.userAgent.indexOf('firefox') > -1) return 'DOMMouseScroll';\n return isEventSupported() ? 'wheel' : 'mousewheel';\n },\n normalize(e) {\n // Reasonable defaults\n const PIXEL_STEP = 10;\n const LINE_HEIGHT = 40;\n const PAGE_HEIGHT = 800;\n\n let sX = 0;\n let sY = 0; // spinX, spinY\n let pX = 0;\n let pY = 0; // pixelX, pixelY\n\n // Legacy\n if ('detail' in e) {\n sY = e.detail;\n }\n if ('wheelDelta' in e) {\n sY = -e.wheelDelta / 120;\n }\n if ('wheelDeltaY' in e) {\n sY = -e.wheelDeltaY / 120;\n }\n if ('wheelDeltaX' in e) {\n sX = -e.wheelDeltaX / 120;\n }\n\n // side scrolling on FF with DOMMouseScroll\n if ('axis' in e && e.axis === e.HORIZONTAL_AXIS) {\n sX = sY;\n sY = 0;\n }\n\n pX = sX * PIXEL_STEP;\n pY = sY * PIXEL_STEP;\n\n if ('deltaY' in e) {\n pY = e.deltaY;\n }\n if ('deltaX' in e) {\n pX = e.deltaX;\n }\n\n if (e.shiftKey && !pX) { // if user scrolls with shift he wants horizontal scroll\n pX = pY;\n pY = 0;\n }\n\n if ((pX || pY) && e.deltaMode) {\n if (e.deltaMode === 1) { // delta in LINE units\n pX *= LINE_HEIGHT;\n pY *= LINE_HEIGHT;\n } else { // delta in PAGE units\n pX *= PAGE_HEIGHT;\n pY *= PAGE_HEIGHT;\n }\n }\n\n // Fall-back if spin cannot be determined\n if (pX && !sX) {\n sX = (pX < 1) ? -1 : 1;\n }\n if (pY && !sY) {\n sY = (pY < 1) ? -1 : 1;\n }\n\n return {\n spinX: sX,\n spinY: sY,\n pixelX: pX,\n pixelY: pY,\n };\n },\n handleMouseEnter() {\n const swiper = this;\n swiper.mouseEntered = true;\n },\n handleMouseLeave() {\n const swiper = this;\n swiper.mouseEntered = false;\n },\n handle(event) {\n let e = event;\n const swiper = this;\n const params = swiper.params.mousewheel;\n\n if (swiper.params.cssMode) {\n e.preventDefault();\n }\n\n let target = swiper.$el;\n if (swiper.params.mousewheel.eventsTarged !== 'container') {\n target = $(swiper.params.mousewheel.eventsTarged);\n }\n if (!swiper.mouseEntered && !target[0].contains(e.target) && !params.releaseOnEdges) return true;\n\n if (e.originalEvent) e = e.originalEvent; // jquery fix\n let delta = 0;\n const rtlFactor = swiper.rtlTranslate ? -1 : 1;\n\n const data = Mousewheel.normalize(e);\n\n if (params.forceToAxis) {\n if (swiper.isHorizontal()) {\n if (Math.abs(data.pixelX) > Math.abs(data.pixelY)) delta = -data.pixelX * rtlFactor;\n else return true;\n } else if (Math.abs(data.pixelY) > Math.abs(data.pixelX)) delta = -data.pixelY;\n else return true;\n } else {\n delta = Math.abs(data.pixelX) > Math.abs(data.pixelY) ? -data.pixelX * rtlFactor : -data.pixelY;\n }\n\n if (delta === 0) return true;\n\n if (params.invert) delta = -delta;\n\n if (!swiper.params.freeMode) {\n // Register the new event in a variable which stores the relevant data\n const newEvent = {\n time: Utils.now(),\n delta: Math.abs(delta),\n direction: Math.sign(delta),\n raw: event,\n };\n\n // Keep the most recent events\n const recentWheelEvents = swiper.mousewheel.recentWheelEvents;\n if (recentWheelEvents.length >= 2) {\n recentWheelEvents.shift(); // only store the last N events\n }\n const prevEvent = recentWheelEvents.length ? recentWheelEvents[recentWheelEvents.length - 1] : undefined;\n recentWheelEvents.push(newEvent);\n\n // If there is at least one previous recorded event:\n // If direction has changed or\n // if the scroll is quicker than the previous one:\n // Animate the slider.\n // Else (this is the first time the wheel is moved):\n // Animate the slider.\n if (prevEvent) {\n if (newEvent.direction !== prevEvent.direction || newEvent.delta > prevEvent.delta || newEvent.time > prevEvent.time + 150) {\n swiper.mousewheel.animateSlider(newEvent);\n }\n } else {\n swiper.mousewheel.animateSlider(newEvent);\n }\n\n // If it's time to release the scroll:\n // Return now so you don't hit the preventDefault.\n if (swiper.mousewheel.releaseScroll(newEvent)) {\n return true;\n }\n } else {\n // Freemode or scrollContainer:\n\n // If we recently snapped after a momentum scroll, then ignore wheel events\n // to give time for the deceleration to finish. Stop ignoring after 500 msecs\n // or if it's a new scroll (larger delta or inverse sign as last event before\n // an end-of-momentum snap).\n const newEvent = { time: Utils.now(), delta: Math.abs(delta), direction: Math.sign(delta) };\n const { lastEventBeforeSnap } = swiper.mousewheel;\n const ignoreWheelEvents = lastEventBeforeSnap\n && newEvent.time < lastEventBeforeSnap.time + 500\n && newEvent.delta <= lastEventBeforeSnap.delta\n && newEvent.direction === lastEventBeforeSnap.direction;\n if (!ignoreWheelEvents) {\n swiper.mousewheel.lastEventBeforeSnap = undefined;\n\n if (swiper.params.loop) {\n swiper.loopFix();\n }\n let position = swiper.getTranslate() + (delta * params.sensitivity);\n const wasBeginning = swiper.isBeginning;\n const wasEnd = swiper.isEnd;\n\n if (position >= swiper.minTranslate()) position = swiper.minTranslate();\n if (position <= swiper.maxTranslate()) position = swiper.maxTranslate();\n\n swiper.setTransition(0);\n swiper.setTranslate(position);\n swiper.updateProgress();\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n\n if ((!wasBeginning && swiper.isBeginning) || (!wasEnd && swiper.isEnd)) {\n swiper.updateSlidesClasses();\n }\n\n if (swiper.params.freeModeSticky) {\n // When wheel scrolling starts with sticky (aka snap) enabled, then detect\n // the end of a momentum scroll by storing recent (N=15?) wheel events.\n // 1. do all N events have decreasing or same (absolute value) delta?\n // 2. did all N events arrive in the last M (M=500?) msecs?\n // 3. does the earliest event have an (absolute value) delta that's\n // at least P (P=1?) larger than the most recent event's delta?\n // 4. does the latest event have a delta that's smaller than Q (Q=6?) pixels?\n // If 1-4 are \"yes\" then we're near the end of a momuntum scroll deceleration.\n // Snap immediately and ignore remaining wheel events in this scroll.\n // See comment above for \"remaining wheel events in this scroll\" determination.\n // If 1-4 aren't satisfied, then wait to snap until 500ms after the last event.\n clearTimeout(swiper.mousewheel.timeout);\n swiper.mousewheel.timeout = undefined;\n const recentWheelEvents = swiper.mousewheel.recentWheelEvents;\n if (recentWheelEvents.length >= 15) {\n recentWheelEvents.shift(); // only store the last N events\n }\n const prevEvent = recentWheelEvents.length ? recentWheelEvents[recentWheelEvents.length - 1] : undefined;\n const firstEvent = recentWheelEvents[0];\n recentWheelEvents.push(newEvent);\n if (prevEvent && (newEvent.delta > prevEvent.delta || newEvent.direction !== prevEvent.direction)) {\n // Increasing or reverse-sign delta means the user started scrolling again. Clear the wheel event log.\n recentWheelEvents.splice(0);\n } else if (recentWheelEvents.length >= 15\n && newEvent.time - firstEvent.time < 500\n && firstEvent.delta - newEvent.delta >= 1\n && newEvent.delta <= 6\n ) {\n // We're at the end of the deceleration of a momentum scroll, so there's no need\n // to wait for more events. Snap ASAP on the next tick.\n // Also, because there's some remaining momentum we'll bias the snap in the\n // direction of the ongoing scroll because it's better UX for the scroll to snap\n // in the same direction as the scroll instead of reversing to snap. Therefore,\n // if it's already scrolled more than 20% in the current direction, keep going.\n const snapToThreshold = delta > 0 ? 0.8 : 0.2;\n swiper.mousewheel.lastEventBeforeSnap = newEvent;\n recentWheelEvents.splice(0);\n swiper.mousewheel.timeout = Utils.nextTick(() => {\n swiper.slideToClosest(swiper.params.speed, true, undefined, snapToThreshold);\n }, 0); // no delay; move on next tick\n }\n if (!swiper.mousewheel.timeout) {\n // if we get here, then we haven't detected the end of a momentum scroll, so\n // we'll consider a scroll \"complete\" when there haven't been any wheel events\n // for 500ms.\n swiper.mousewheel.timeout = Utils.nextTick(() => {\n const snapToThreshold = 0.5;\n swiper.mousewheel.lastEventBeforeSnap = newEvent;\n recentWheelEvents.splice(0);\n swiper.slideToClosest(swiper.params.speed, true, undefined, snapToThreshold);\n }, 500);\n }\n }\n\n // Emit event\n if (!ignoreWheelEvents) swiper.emit('scroll', e);\n\n // Stop autoplay\n if (swiper.params.autoplay && swiper.params.autoplayDisableOnInteraction) swiper.autoplay.stop();\n // Return page scroll on edge positions\n if (position === swiper.minTranslate() || position === swiper.maxTranslate()) return true;\n }\n }\n\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n return false;\n },\n animateSlider(newEvent) {\n const swiper = this;\n // If the movement is NOT big enough and\n // if the last time the user scrolled was too close to the current one (avoid continuously triggering the slider):\n // Don't go any further (avoid insignificant scroll movement).\n if (newEvent.delta >= 6 && Utils.now() - swiper.mousewheel.lastScrollTime < 60) {\n // Return false as a default\n return true;\n }\n // If user is scrolling towards the end:\n // If the slider hasn't hit the latest slide or\n // if the slider is a loop and\n // if the slider isn't moving right now:\n // Go to next slide and\n // emit a scroll event.\n // Else (the user is scrolling towards the beginning) and\n // if the slider hasn't hit the first slide or\n // if the slider is a loop and\n // if the slider isn't moving right now:\n // Go to prev slide and\n // emit a scroll event.\n if (newEvent.direction < 0) {\n if ((!swiper.isEnd || swiper.params.loop) && !swiper.animating) {\n swiper.slideNext();\n swiper.emit('scroll', newEvent.raw);\n }\n } else if ((!swiper.isBeginning || swiper.params.loop) && !swiper.animating) {\n swiper.slidePrev();\n swiper.emit('scroll', newEvent.raw);\n }\n // If you got here is because an animation has been triggered so store the current time\n swiper.mousewheel.lastScrollTime = (new window.Date()).getTime();\n // Return false as a default\n return false;\n },\n releaseScroll(newEvent) {\n const swiper = this;\n const params = swiper.params.mousewheel;\n if (newEvent.direction < 0) {\n if (swiper.isEnd && !swiper.params.loop && params.releaseOnEdges) {\n // Return true to animate scroll on edges\n return true;\n }\n } else if (swiper.isBeginning && !swiper.params.loop && params.releaseOnEdges) {\n // Return true to animate scroll on edges\n return true;\n }\n return false;\n },\n enable() {\n const swiper = this;\n const event = Mousewheel.event();\n if (swiper.params.cssMode) {\n swiper.wrapperEl.removeEventListener(event, swiper.mousewheel.handle);\n return true;\n }\n if (!event) return false;\n if (swiper.mousewheel.enabled) return false;\n let target = swiper.$el;\n if (swiper.params.mousewheel.eventsTarged !== 'container') {\n target = $(swiper.params.mousewheel.eventsTarged);\n }\n target.on('mouseenter', swiper.mousewheel.handleMouseEnter);\n target.on('mouseleave', swiper.mousewheel.handleMouseLeave);\n target.on(event, swiper.mousewheel.handle);\n swiper.mousewheel.enabled = true;\n return true;\n },\n disable() {\n const swiper = this;\n const event = Mousewheel.event();\n if (swiper.params.cssMode) {\n swiper.wrapperEl.addEventListener(event, swiper.mousewheel.handle);\n return true;\n }\n if (!event) return false;\n if (!swiper.mousewheel.enabled) return false;\n let target = swiper.$el;\n if (swiper.params.mousewheel.eventsTarged !== 'container') {\n target = $(swiper.params.mousewheel.eventsTarged);\n }\n target.off(event, swiper.mousewheel.handle);\n swiper.mousewheel.enabled = false;\n return true;\n },\n};\n\nvar Mousewheel$1 = {\n name: 'mousewheel',\n params: {\n mousewheel: {\n enabled: false,\n releaseOnEdges: false,\n invert: false,\n forceToAxis: false,\n sensitivity: 1,\n eventsTarged: 'container',\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n mousewheel: {\n enabled: false,\n enable: Mousewheel.enable.bind(swiper),\n disable: Mousewheel.disable.bind(swiper),\n handle: Mousewheel.handle.bind(swiper),\n handleMouseEnter: Mousewheel.handleMouseEnter.bind(swiper),\n handleMouseLeave: Mousewheel.handleMouseLeave.bind(swiper),\n animateSlider: Mousewheel.animateSlider.bind(swiper),\n releaseScroll: Mousewheel.releaseScroll.bind(swiper),\n lastScrollTime: Utils.now(),\n lastEventBeforeSnap: undefined,\n recentWheelEvents: [],\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n if (!swiper.params.mousewheel.enabled && swiper.params.cssMode) {\n swiper.mousewheel.disable();\n }\n if (swiper.params.mousewheel.enabled) swiper.mousewheel.enable();\n },\n destroy() {\n const swiper = this;\n if (swiper.params.cssMode) {\n swiper.mousewheel.enable();\n }\n if (swiper.mousewheel.enabled) swiper.mousewheel.disable();\n },\n },\n};\n\nconst Navigation = {\n update() {\n // Update Navigation Buttons\n const swiper = this;\n const params = swiper.params.navigation;\n\n if (swiper.params.loop) return;\n const { $nextEl, $prevEl } = swiper.navigation;\n\n if ($prevEl && $prevEl.length > 0) {\n if (swiper.isBeginning) {\n $prevEl.addClass(params.disabledClass);\n } else {\n $prevEl.removeClass(params.disabledClass);\n }\n $prevEl[swiper.params.watchOverflow && swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);\n }\n if ($nextEl && $nextEl.length > 0) {\n if (swiper.isEnd) {\n $nextEl.addClass(params.disabledClass);\n } else {\n $nextEl.removeClass(params.disabledClass);\n }\n $nextEl[swiper.params.watchOverflow && swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);\n }\n },\n onPrevClick(e) {\n const swiper = this;\n e.preventDefault();\n if (swiper.isBeginning && !swiper.params.loop) return;\n swiper.slidePrev();\n },\n onNextClick(e) {\n const swiper = this;\n e.preventDefault();\n if (swiper.isEnd && !swiper.params.loop) return;\n swiper.slideNext();\n },\n init() {\n const swiper = this;\n const params = swiper.params.navigation;\n if (!(params.nextEl || params.prevEl)) return;\n\n let $nextEl;\n let $prevEl;\n if (params.nextEl) {\n $nextEl = $(params.nextEl);\n if (\n swiper.params.uniqueNavElements\n && typeof params.nextEl === 'string'\n && $nextEl.length > 1\n && swiper.$el.find(params.nextEl).length === 1\n ) {\n $nextEl = swiper.$el.find(params.nextEl);\n }\n }\n if (params.prevEl) {\n $prevEl = $(params.prevEl);\n if (\n swiper.params.uniqueNavElements\n && typeof params.prevEl === 'string'\n && $prevEl.length > 1\n && swiper.$el.find(params.prevEl).length === 1\n ) {\n $prevEl = swiper.$el.find(params.prevEl);\n }\n }\n\n if ($nextEl && $nextEl.length > 0) {\n $nextEl.on('click', swiper.navigation.onNextClick);\n }\n if ($prevEl && $prevEl.length > 0) {\n $prevEl.on('click', swiper.navigation.onPrevClick);\n }\n\n Utils.extend(swiper.navigation, {\n $nextEl,\n nextEl: $nextEl && $nextEl[0],\n $prevEl,\n prevEl: $prevEl && $prevEl[0],\n });\n },\n destroy() {\n const swiper = this;\n const { $nextEl, $prevEl } = swiper.navigation;\n if ($nextEl && $nextEl.length) {\n $nextEl.off('click', swiper.navigation.onNextClick);\n $nextEl.removeClass(swiper.params.navigation.disabledClass);\n }\n if ($prevEl && $prevEl.length) {\n $prevEl.off('click', swiper.navigation.onPrevClick);\n $prevEl.removeClass(swiper.params.navigation.disabledClass);\n }\n },\n};\n\nvar Navigation$1 = {\n name: 'navigation',\n params: {\n navigation: {\n nextEl: null,\n prevEl: null,\n\n hideOnClick: false,\n disabledClass: 'swiper-button-disabled',\n hiddenClass: 'swiper-button-hidden',\n lockClass: 'swiper-button-lock',\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n navigation: {\n init: Navigation.init.bind(swiper),\n update: Navigation.update.bind(swiper),\n destroy: Navigation.destroy.bind(swiper),\n onNextClick: Navigation.onNextClick.bind(swiper),\n onPrevClick: Navigation.onPrevClick.bind(swiper),\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n swiper.navigation.init();\n swiper.navigation.update();\n },\n toEdge() {\n const swiper = this;\n swiper.navigation.update();\n },\n fromEdge() {\n const swiper = this;\n swiper.navigation.update();\n },\n destroy() {\n const swiper = this;\n swiper.navigation.destroy();\n },\n click(e) {\n const swiper = this;\n const { $nextEl, $prevEl } = swiper.navigation;\n if (\n swiper.params.navigation.hideOnClick\n && !$(e.target).is($prevEl)\n && !$(e.target).is($nextEl)\n ) {\n let isHidden;\n if ($nextEl) {\n isHidden = $nextEl.hasClass(swiper.params.navigation.hiddenClass);\n } else if ($prevEl) {\n isHidden = $prevEl.hasClass(swiper.params.navigation.hiddenClass);\n }\n if (isHidden === true) {\n swiper.emit('navigationShow', swiper);\n } else {\n swiper.emit('navigationHide', swiper);\n }\n if ($nextEl) {\n $nextEl.toggleClass(swiper.params.navigation.hiddenClass);\n }\n if ($prevEl) {\n $prevEl.toggleClass(swiper.params.navigation.hiddenClass);\n }\n }\n },\n },\n};\n\nconst Pagination = {\n update() {\n // Render || Update Pagination bullets/items\n const swiper = this;\n const rtl = swiper.rtl;\n const params = swiper.params.pagination;\n if (!params.el || !swiper.pagination.el || !swiper.pagination.$el || swiper.pagination.$el.length === 0) return;\n const slidesLength = swiper.virtual && swiper.params.virtual.enabled ? swiper.virtual.slides.length : swiper.slides.length;\n const $el = swiper.pagination.$el;\n // Current/Total\n let current;\n const total = swiper.params.loop ? Math.ceil((slidesLength - (swiper.loopedSlides * 2)) / swiper.params.slidesPerGroup) : swiper.snapGrid.length;\n if (swiper.params.loop) {\n current = Math.ceil((swiper.activeIndex - swiper.loopedSlides) / swiper.params.slidesPerGroup);\n if (current > slidesLength - 1 - (swiper.loopedSlides * 2)) {\n current -= (slidesLength - (swiper.loopedSlides * 2));\n }\n if (current > total - 1) current -= total;\n if (current < 0 && swiper.params.paginationType !== 'bullets') current = total + current;\n } else if (typeof swiper.snapIndex !== 'undefined') {\n current = swiper.snapIndex;\n } else {\n current = swiper.activeIndex || 0;\n }\n // Types\n if (params.type === 'bullets' && swiper.pagination.bullets && swiper.pagination.bullets.length > 0) {\n const bullets = swiper.pagination.bullets;\n let firstIndex;\n let lastIndex;\n let midIndex;\n if (params.dynamicBullets) {\n swiper.pagination.bulletSize = bullets.eq(0)[swiper.isHorizontal() ? 'outerWidth' : 'outerHeight'](true);\n $el.css(swiper.isHorizontal() ? 'width' : 'height', `${swiper.pagination.bulletSize * (params.dynamicMainBullets + 4)}px`);\n if (params.dynamicMainBullets > 1 && swiper.previousIndex !== undefined) {\n swiper.pagination.dynamicBulletIndex += (current - swiper.previousIndex);\n if (swiper.pagination.dynamicBulletIndex > (params.dynamicMainBullets - 1)) {\n swiper.pagination.dynamicBulletIndex = params.dynamicMainBullets - 1;\n } else if (swiper.pagination.dynamicBulletIndex < 0) {\n swiper.pagination.dynamicBulletIndex = 0;\n }\n }\n firstIndex = current - swiper.pagination.dynamicBulletIndex;\n lastIndex = firstIndex + (Math.min(bullets.length, params.dynamicMainBullets) - 1);\n midIndex = (lastIndex + firstIndex) / 2;\n }\n bullets.removeClass(`${params.bulletActiveClass} ${params.bulletActiveClass}-next ${params.bulletActiveClass}-next-next ${params.bulletActiveClass}-prev ${params.bulletActiveClass}-prev-prev ${params.bulletActiveClass}-main`);\n if ($el.length > 1) {\n bullets.each((index, bullet) => {\n const $bullet = $(bullet);\n const bulletIndex = $bullet.index();\n if (bulletIndex === current) {\n $bullet.addClass(params.bulletActiveClass);\n }\n if (params.dynamicBullets) {\n if (bulletIndex >= firstIndex && bulletIndex <= lastIndex) {\n $bullet.addClass(`${params.bulletActiveClass}-main`);\n }\n if (bulletIndex === firstIndex) {\n $bullet\n .prev()\n .addClass(`${params.bulletActiveClass}-prev`)\n .prev()\n .addClass(`${params.bulletActiveClass}-prev-prev`);\n }\n if (bulletIndex === lastIndex) {\n $bullet\n .next()\n .addClass(`${params.bulletActiveClass}-next`)\n .next()\n .addClass(`${params.bulletActiveClass}-next-next`);\n }\n }\n });\n } else {\n const $bullet = bullets.eq(current);\n const bulletIndex = $bullet.index();\n $bullet.addClass(params.bulletActiveClass);\n if (params.dynamicBullets) {\n const $firstDisplayedBullet = bullets.eq(firstIndex);\n const $lastDisplayedBullet = bullets.eq(lastIndex);\n for (let i = firstIndex; i <= lastIndex; i += 1) {\n bullets.eq(i).addClass(`${params.bulletActiveClass}-main`);\n }\n if (swiper.params.loop) {\n if (bulletIndex >= bullets.length - params.dynamicMainBullets) {\n for (let i = params.dynamicMainBullets; i >= 0; i -= 1) {\n bullets.eq(bullets.length - i).addClass(`${params.bulletActiveClass}-main`);\n }\n bullets.eq(bullets.length - params.dynamicMainBullets - 1).addClass(`${params.bulletActiveClass}-prev`);\n } else {\n $firstDisplayedBullet\n .prev()\n .addClass(`${params.bulletActiveClass}-prev`)\n .prev()\n .addClass(`${params.bulletActiveClass}-prev-prev`);\n $lastDisplayedBullet\n .next()\n .addClass(`${params.bulletActiveClass}-next`)\n .next()\n .addClass(`${params.bulletActiveClass}-next-next`);\n }\n } else {\n $firstDisplayedBullet\n .prev()\n .addClass(`${params.bulletActiveClass}-prev`)\n .prev()\n .addClass(`${params.bulletActiveClass}-prev-prev`);\n $lastDisplayedBullet\n .next()\n .addClass(`${params.bulletActiveClass}-next`)\n .next()\n .addClass(`${params.bulletActiveClass}-next-next`);\n }\n }\n }\n if (params.dynamicBullets) {\n const dynamicBulletsLength = Math.min(bullets.length, params.dynamicMainBullets + 4);\n const bulletsOffset = (((swiper.pagination.bulletSize * dynamicBulletsLength) - (swiper.pagination.bulletSize)) / 2) - (midIndex * swiper.pagination.bulletSize);\n const offsetProp = rtl ? 'right' : 'left';\n bullets.css(swiper.isHorizontal() ? offsetProp : 'top', `${bulletsOffset}px`);\n }\n }\n if (params.type === 'fraction') {\n $el.find(`.${params.currentClass}`).text(params.formatFractionCurrent(current + 1));\n $el.find(`.${params.totalClass}`).text(params.formatFractionTotal(total));\n }\n if (params.type === 'progressbar') {\n let progressbarDirection;\n if (params.progressbarOpposite) {\n progressbarDirection = swiper.isHorizontal() ? 'vertical' : 'horizontal';\n } else {\n progressbarDirection = swiper.isHorizontal() ? 'horizontal' : 'vertical';\n }\n const scale = (current + 1) / total;\n let scaleX = 1;\n let scaleY = 1;\n if (progressbarDirection === 'horizontal') {\n scaleX = scale;\n } else {\n scaleY = scale;\n }\n $el.find(`.${params.progressbarFillClass}`).transform(`translate3d(0,0,0) scaleX(${scaleX}) scaleY(${scaleY})`).transition(swiper.params.speed);\n }\n if (params.type === 'custom' && params.renderCustom) {\n $el.html(params.renderCustom(swiper, current + 1, total));\n swiper.emit('paginationRender', swiper, $el[0]);\n } else {\n swiper.emit('paginationUpdate', swiper, $el[0]);\n }\n $el[swiper.params.watchOverflow && swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);\n },\n render() {\n // Render Container\n const swiper = this;\n const params = swiper.params.pagination;\n if (!params.el || !swiper.pagination.el || !swiper.pagination.$el || swiper.pagination.$el.length === 0) return;\n const slidesLength = swiper.virtual && swiper.params.virtual.enabled ? swiper.virtual.slides.length : swiper.slides.length;\n\n const $el = swiper.pagination.$el;\n let paginationHTML = '';\n if (params.type === 'bullets') {\n const numberOfBullets = swiper.params.loop ? Math.ceil((slidesLength - (swiper.loopedSlides * 2)) / swiper.params.slidesPerGroup) : swiper.snapGrid.length;\n for (let i = 0; i < numberOfBullets; i += 1) {\n if (params.renderBullet) {\n paginationHTML += params.renderBullet.call(swiper, i, params.bulletClass);\n } else {\n paginationHTML += `<${params.bulletElement} class=\"${params.bulletClass}\">`;\n }\n }\n $el.html(paginationHTML);\n swiper.pagination.bullets = $el.find(`.${params.bulletClass}`);\n }\n if (params.type === 'fraction') {\n if (params.renderFraction) {\n paginationHTML = params.renderFraction.call(swiper, params.currentClass, params.totalClass);\n } else {\n paginationHTML = ``\n + ' / '\n + ``;\n }\n $el.html(paginationHTML);\n }\n if (params.type === 'progressbar') {\n if (params.renderProgressbar) {\n paginationHTML = params.renderProgressbar.call(swiper, params.progressbarFillClass);\n } else {\n paginationHTML = ``;\n }\n $el.html(paginationHTML);\n }\n if (params.type !== 'custom') {\n swiper.emit('paginationRender', swiper.pagination.$el[0]);\n }\n },\n init() {\n const swiper = this;\n const params = swiper.params.pagination;\n if (!params.el) return;\n\n let $el = $(params.el);\n if ($el.length === 0) return;\n\n if (\n swiper.params.uniqueNavElements\n && typeof params.el === 'string'\n && $el.length > 1\n ) {\n $el = swiper.$el.find(params.el);\n }\n\n if (params.type === 'bullets' && params.clickable) {\n $el.addClass(params.clickableClass);\n }\n\n $el.addClass(params.modifierClass + params.type);\n\n if (params.type === 'bullets' && params.dynamicBullets) {\n $el.addClass(`${params.modifierClass}${params.type}-dynamic`);\n swiper.pagination.dynamicBulletIndex = 0;\n if (params.dynamicMainBullets < 1) {\n params.dynamicMainBullets = 1;\n }\n }\n if (params.type === 'progressbar' && params.progressbarOpposite) {\n $el.addClass(params.progressbarOppositeClass);\n }\n\n if (params.clickable) {\n $el.on('click', `.${params.bulletClass}`, function onClick(e) {\n e.preventDefault();\n let index = $(this).index() * swiper.params.slidesPerGroup;\n if (swiper.params.loop) index += swiper.loopedSlides;\n swiper.slideTo(index);\n });\n }\n\n Utils.extend(swiper.pagination, {\n $el,\n el: $el[0],\n });\n },\n destroy() {\n const swiper = this;\n const params = swiper.params.pagination;\n if (!params.el || !swiper.pagination.el || !swiper.pagination.$el || swiper.pagination.$el.length === 0) return;\n const $el = swiper.pagination.$el;\n\n $el.removeClass(params.hiddenClass);\n $el.removeClass(params.modifierClass + params.type);\n if (swiper.pagination.bullets) swiper.pagination.bullets.removeClass(params.bulletActiveClass);\n if (params.clickable) {\n $el.off('click', `.${params.bulletClass}`);\n }\n },\n};\n\nvar Pagination$1 = {\n name: 'pagination',\n params: {\n pagination: {\n el: null,\n bulletElement: 'span',\n clickable: false,\n hideOnClick: false,\n renderBullet: null,\n renderProgressbar: null,\n renderFraction: null,\n renderCustom: null,\n progressbarOpposite: false,\n type: 'bullets', // 'bullets' or 'progressbar' or 'fraction' or 'custom'\n dynamicBullets: false,\n dynamicMainBullets: 1,\n formatFractionCurrent: (number) => number,\n formatFractionTotal: (number) => number,\n bulletClass: 'swiper-pagination-bullet',\n bulletActiveClass: 'swiper-pagination-bullet-active',\n modifierClass: 'swiper-pagination-', // NEW\n currentClass: 'swiper-pagination-current',\n totalClass: 'swiper-pagination-total',\n hiddenClass: 'swiper-pagination-hidden',\n progressbarFillClass: 'swiper-pagination-progressbar-fill',\n progressbarOppositeClass: 'swiper-pagination-progressbar-opposite',\n clickableClass: 'swiper-pagination-clickable', // NEW\n lockClass: 'swiper-pagination-lock',\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n pagination: {\n init: Pagination.init.bind(swiper),\n render: Pagination.render.bind(swiper),\n update: Pagination.update.bind(swiper),\n destroy: Pagination.destroy.bind(swiper),\n dynamicBulletIndex: 0,\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n swiper.pagination.init();\n swiper.pagination.render();\n swiper.pagination.update();\n },\n activeIndexChange() {\n const swiper = this;\n if (swiper.params.loop) {\n swiper.pagination.update();\n } else if (typeof swiper.snapIndex === 'undefined') {\n swiper.pagination.update();\n }\n },\n snapIndexChange() {\n const swiper = this;\n if (!swiper.params.loop) {\n swiper.pagination.update();\n }\n },\n slidesLengthChange() {\n const swiper = this;\n if (swiper.params.loop) {\n swiper.pagination.render();\n swiper.pagination.update();\n }\n },\n snapGridLengthChange() {\n const swiper = this;\n if (!swiper.params.loop) {\n swiper.pagination.render();\n swiper.pagination.update();\n }\n },\n destroy() {\n const swiper = this;\n swiper.pagination.destroy();\n },\n click(e) {\n const swiper = this;\n if (\n swiper.params.pagination.el\n && swiper.params.pagination.hideOnClick\n && swiper.pagination.$el.length > 0\n && !$(e.target).hasClass(swiper.params.pagination.bulletClass)\n ) {\n const isHidden = swiper.pagination.$el.hasClass(swiper.params.pagination.hiddenClass);\n if (isHidden === true) {\n swiper.emit('paginationShow', swiper);\n } else {\n swiper.emit('paginationHide', swiper);\n }\n swiper.pagination.$el.toggleClass(swiper.params.pagination.hiddenClass);\n }\n },\n },\n};\n\nconst Scrollbar = {\n setTranslate() {\n const swiper = this;\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return;\n const { scrollbar, rtlTranslate: rtl, progress } = swiper;\n const {\n dragSize, trackSize, $dragEl, $el,\n } = scrollbar;\n const params = swiper.params.scrollbar;\n\n let newSize = dragSize;\n let newPos = (trackSize - dragSize) * progress;\n if (rtl) {\n newPos = -newPos;\n if (newPos > 0) {\n newSize = dragSize - newPos;\n newPos = 0;\n } else if (-newPos + dragSize > trackSize) {\n newSize = trackSize + newPos;\n }\n } else if (newPos < 0) {\n newSize = dragSize + newPos;\n newPos = 0;\n } else if (newPos + dragSize > trackSize) {\n newSize = trackSize - newPos;\n }\n if (swiper.isHorizontal()) {\n $dragEl.transform(`translate3d(${newPos}px, 0, 0)`);\n $dragEl[0].style.width = `${newSize}px`;\n } else {\n $dragEl.transform(`translate3d(0px, ${newPos}px, 0)`);\n $dragEl[0].style.height = `${newSize}px`;\n }\n if (params.hide) {\n clearTimeout(swiper.scrollbar.timeout);\n $el[0].style.opacity = 1;\n swiper.scrollbar.timeout = setTimeout(() => {\n $el[0].style.opacity = 0;\n $el.transition(400);\n }, 1000);\n }\n },\n setTransition(duration) {\n const swiper = this;\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return;\n swiper.scrollbar.$dragEl.transition(duration);\n },\n updateSize() {\n const swiper = this;\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return;\n\n const { scrollbar } = swiper;\n const { $dragEl, $el } = scrollbar;\n\n $dragEl[0].style.width = '';\n $dragEl[0].style.height = '';\n const trackSize = swiper.isHorizontal() ? $el[0].offsetWidth : $el[0].offsetHeight;\n\n const divider = swiper.size / swiper.virtualSize;\n const moveDivider = divider * (trackSize / swiper.size);\n let dragSize;\n if (swiper.params.scrollbar.dragSize === 'auto') {\n dragSize = trackSize * divider;\n } else {\n dragSize = parseInt(swiper.params.scrollbar.dragSize, 10);\n }\n\n if (swiper.isHorizontal()) {\n $dragEl[0].style.width = `${dragSize}px`;\n } else {\n $dragEl[0].style.height = `${dragSize}px`;\n }\n\n if (divider >= 1) {\n $el[0].style.display = 'none';\n } else {\n $el[0].style.display = '';\n }\n if (swiper.params.scrollbar.hide) {\n $el[0].style.opacity = 0;\n }\n Utils.extend(scrollbar, {\n trackSize,\n divider,\n moveDivider,\n dragSize,\n });\n scrollbar.$el[swiper.params.watchOverflow && swiper.isLocked ? 'addClass' : 'removeClass'](swiper.params.scrollbar.lockClass);\n },\n getPointerPosition(e) {\n const swiper = this;\n if (swiper.isHorizontal()) {\n return ((e.type === 'touchstart' || e.type === 'touchmove') ? e.targetTouches[0].clientX : e.clientX);\n }\n return ((e.type === 'touchstart' || e.type === 'touchmove') ? e.targetTouches[0].clientY : e.clientY);\n },\n setDragPosition(e) {\n const swiper = this;\n const { scrollbar, rtlTranslate: rtl } = swiper;\n const {\n $el,\n dragSize,\n trackSize,\n dragStartPos,\n } = scrollbar;\n\n let positionRatio;\n positionRatio = ((scrollbar.getPointerPosition(e)) - $el.offset()[swiper.isHorizontal() ? 'left' : 'top']\n - (dragStartPos !== null ? dragStartPos : dragSize / 2)) / (trackSize - dragSize);\n positionRatio = Math.max(Math.min(positionRatio, 1), 0);\n if (rtl) {\n positionRatio = 1 - positionRatio;\n }\n\n const position = swiper.minTranslate() + ((swiper.maxTranslate() - swiper.minTranslate()) * positionRatio);\n\n swiper.updateProgress(position);\n swiper.setTranslate(position);\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n },\n onDragStart(e) {\n const swiper = this;\n const params = swiper.params.scrollbar;\n const { scrollbar, $wrapperEl } = swiper;\n const { $el, $dragEl } = scrollbar;\n swiper.scrollbar.isTouched = true;\n swiper.scrollbar.dragStartPos = (e.target === $dragEl[0] || e.target === $dragEl)\n ? scrollbar.getPointerPosition(e) - e.target.getBoundingClientRect()[swiper.isHorizontal() ? 'left' : 'top'] : null;\n e.preventDefault();\n e.stopPropagation();\n\n $wrapperEl.transition(100);\n $dragEl.transition(100);\n scrollbar.setDragPosition(e);\n\n clearTimeout(swiper.scrollbar.dragTimeout);\n\n $el.transition(0);\n if (params.hide) {\n $el.css('opacity', 1);\n }\n if (swiper.params.cssMode) {\n swiper.$wrapperEl.css('scroll-snap-type', 'none');\n }\n swiper.emit('scrollbarDragStart', e);\n },\n onDragMove(e) {\n const swiper = this;\n const { scrollbar, $wrapperEl } = swiper;\n const { $el, $dragEl } = scrollbar;\n\n if (!swiper.scrollbar.isTouched) return;\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n scrollbar.setDragPosition(e);\n $wrapperEl.transition(0);\n $el.transition(0);\n $dragEl.transition(0);\n swiper.emit('scrollbarDragMove', e);\n },\n onDragEnd(e) {\n const swiper = this;\n\n const params = swiper.params.scrollbar;\n const { scrollbar, $wrapperEl } = swiper;\n const { $el } = scrollbar;\n\n if (!swiper.scrollbar.isTouched) return;\n swiper.scrollbar.isTouched = false;\n if (swiper.params.cssMode) {\n swiper.$wrapperEl.css('scroll-snap-type', '');\n $wrapperEl.transition('');\n }\n if (params.hide) {\n clearTimeout(swiper.scrollbar.dragTimeout);\n swiper.scrollbar.dragTimeout = Utils.nextTick(() => {\n $el.css('opacity', 0);\n $el.transition(400);\n }, 1000);\n }\n swiper.emit('scrollbarDragEnd', e);\n if (params.snapOnRelease) {\n swiper.slideToClosest();\n }\n },\n enableDraggable() {\n const swiper = this;\n if (!swiper.params.scrollbar.el) return;\n const {\n scrollbar, touchEventsTouch, touchEventsDesktop, params,\n } = swiper;\n const $el = scrollbar.$el;\n const target = $el[0];\n const activeListener = Support.passiveListener && params.passiveListeners ? { passive: false, capture: false } : false;\n const passiveListener = Support.passiveListener && params.passiveListeners ? { passive: true, capture: false } : false;\n if (!Support.touch) {\n target.addEventListener(touchEventsDesktop.start, swiper.scrollbar.onDragStart, activeListener);\n document$1.addEventListener(touchEventsDesktop.move, swiper.scrollbar.onDragMove, activeListener);\n document$1.addEventListener(touchEventsDesktop.end, swiper.scrollbar.onDragEnd, passiveListener);\n } else {\n target.addEventListener(touchEventsTouch.start, swiper.scrollbar.onDragStart, activeListener);\n target.addEventListener(touchEventsTouch.move, swiper.scrollbar.onDragMove, activeListener);\n target.addEventListener(touchEventsTouch.end, swiper.scrollbar.onDragEnd, passiveListener);\n }\n },\n disableDraggable() {\n const swiper = this;\n if (!swiper.params.scrollbar.el) return;\n const {\n scrollbar, touchEventsTouch, touchEventsDesktop, params,\n } = swiper;\n const $el = scrollbar.$el;\n const target = $el[0];\n const activeListener = Support.passiveListener && params.passiveListeners ? { passive: false, capture: false } : false;\n const passiveListener = Support.passiveListener && params.passiveListeners ? { passive: true, capture: false } : false;\n if (!Support.touch) {\n target.removeEventListener(touchEventsDesktop.start, swiper.scrollbar.onDragStart, activeListener);\n document$1.removeEventListener(touchEventsDesktop.move, swiper.scrollbar.onDragMove, activeListener);\n document$1.removeEventListener(touchEventsDesktop.end, swiper.scrollbar.onDragEnd, passiveListener);\n } else {\n target.removeEventListener(touchEventsTouch.start, swiper.scrollbar.onDragStart, activeListener);\n target.removeEventListener(touchEventsTouch.move, swiper.scrollbar.onDragMove, activeListener);\n target.removeEventListener(touchEventsTouch.end, swiper.scrollbar.onDragEnd, passiveListener);\n }\n },\n init() {\n const swiper = this;\n if (!swiper.params.scrollbar.el) return;\n const { scrollbar, $el: $swiperEl } = swiper;\n const params = swiper.params.scrollbar;\n\n let $el = $(params.el);\n if (swiper.params.uniqueNavElements && typeof params.el === 'string' && $el.length > 1 && $swiperEl.find(params.el).length === 1) {\n $el = $swiperEl.find(params.el);\n }\n\n let $dragEl = $el.find(`.${swiper.params.scrollbar.dragClass}`);\n if ($dragEl.length === 0) {\n $dragEl = $(`
`);\n $el.append($dragEl);\n }\n\n Utils.extend(scrollbar, {\n $el,\n el: $el[0],\n $dragEl,\n dragEl: $dragEl[0],\n });\n\n if (params.draggable) {\n scrollbar.enableDraggable();\n }\n },\n destroy() {\n const swiper = this;\n swiper.scrollbar.disableDraggable();\n },\n};\n\nvar Scrollbar$1 = {\n name: 'scrollbar',\n params: {\n scrollbar: {\n el: null,\n dragSize: 'auto',\n hide: false,\n draggable: false,\n snapOnRelease: true,\n lockClass: 'swiper-scrollbar-lock',\n dragClass: 'swiper-scrollbar-drag',\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n scrollbar: {\n init: Scrollbar.init.bind(swiper),\n destroy: Scrollbar.destroy.bind(swiper),\n updateSize: Scrollbar.updateSize.bind(swiper),\n setTranslate: Scrollbar.setTranslate.bind(swiper),\n setTransition: Scrollbar.setTransition.bind(swiper),\n enableDraggable: Scrollbar.enableDraggable.bind(swiper),\n disableDraggable: Scrollbar.disableDraggable.bind(swiper),\n setDragPosition: Scrollbar.setDragPosition.bind(swiper),\n getPointerPosition: Scrollbar.getPointerPosition.bind(swiper),\n onDragStart: Scrollbar.onDragStart.bind(swiper),\n onDragMove: Scrollbar.onDragMove.bind(swiper),\n onDragEnd: Scrollbar.onDragEnd.bind(swiper),\n isTouched: false,\n timeout: null,\n dragTimeout: null,\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n swiper.scrollbar.init();\n swiper.scrollbar.updateSize();\n swiper.scrollbar.setTranslate();\n },\n update() {\n const swiper = this;\n swiper.scrollbar.updateSize();\n },\n resize() {\n const swiper = this;\n swiper.scrollbar.updateSize();\n },\n observerUpdate() {\n const swiper = this;\n swiper.scrollbar.updateSize();\n },\n setTranslate() {\n const swiper = this;\n swiper.scrollbar.setTranslate();\n },\n setTransition(duration) {\n const swiper = this;\n swiper.scrollbar.setTransition(duration);\n },\n destroy() {\n const swiper = this;\n swiper.scrollbar.destroy();\n },\n },\n};\n\nconst Parallax = {\n setTransform(el, progress) {\n const swiper = this;\n const { rtl } = swiper;\n\n const $el = $(el);\n const rtlFactor = rtl ? -1 : 1;\n\n const p = $el.attr('data-swiper-parallax') || '0';\n let x = $el.attr('data-swiper-parallax-x');\n let y = $el.attr('data-swiper-parallax-y');\n const scale = $el.attr('data-swiper-parallax-scale');\n const opacity = $el.attr('data-swiper-parallax-opacity');\n\n if (x || y) {\n x = x || '0';\n y = y || '0';\n } else if (swiper.isHorizontal()) {\n x = p;\n y = '0';\n } else {\n y = p;\n x = '0';\n }\n\n if ((x).indexOf('%') >= 0) {\n x = `${parseInt(x, 10) * progress * rtlFactor}%`;\n } else {\n x = `${x * progress * rtlFactor}px`;\n }\n if ((y).indexOf('%') >= 0) {\n y = `${parseInt(y, 10) * progress}%`;\n } else {\n y = `${y * progress}px`;\n }\n\n if (typeof opacity !== 'undefined' && opacity !== null) {\n const currentOpacity = opacity - ((opacity - 1) * (1 - Math.abs(progress)));\n $el[0].style.opacity = currentOpacity;\n }\n if (typeof scale === 'undefined' || scale === null) {\n $el.transform(`translate3d(${x}, ${y}, 0px)`);\n } else {\n const currentScale = scale - ((scale - 1) * (1 - Math.abs(progress)));\n $el.transform(`translate3d(${x}, ${y}, 0px) scale(${currentScale})`);\n }\n },\n setTranslate() {\n const swiper = this;\n const {\n $el, slides, progress, snapGrid,\n } = swiper;\n $el.children('[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]')\n .each((index, el) => {\n swiper.parallax.setTransform(el, progress);\n });\n slides.each((slideIndex, slideEl) => {\n let slideProgress = slideEl.progress;\n if (swiper.params.slidesPerGroup > 1 && swiper.params.slidesPerView !== 'auto') {\n slideProgress += Math.ceil(slideIndex / 2) - (progress * (snapGrid.length - 1));\n }\n slideProgress = Math.min(Math.max(slideProgress, -1), 1);\n $(slideEl).find('[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]')\n .each((index, el) => {\n swiper.parallax.setTransform(el, slideProgress);\n });\n });\n },\n setTransition(duration = this.params.speed) {\n const swiper = this;\n const { $el } = swiper;\n $el.find('[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]')\n .each((index, parallaxEl) => {\n const $parallaxEl = $(parallaxEl);\n let parallaxDuration = parseInt($parallaxEl.attr('data-swiper-parallax-duration'), 10) || duration;\n if (duration === 0) parallaxDuration = 0;\n $parallaxEl.transition(parallaxDuration);\n });\n },\n};\n\nvar Parallax$1 = {\n name: 'parallax',\n params: {\n parallax: {\n enabled: false,\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n parallax: {\n setTransform: Parallax.setTransform.bind(swiper),\n setTranslate: Parallax.setTranslate.bind(swiper),\n setTransition: Parallax.setTransition.bind(swiper),\n },\n });\n },\n on: {\n beforeInit() {\n const swiper = this;\n if (!swiper.params.parallax.enabled) return;\n swiper.params.watchSlidesProgress = true;\n swiper.originalParams.watchSlidesProgress = true;\n },\n init() {\n const swiper = this;\n if (!swiper.params.parallax.enabled) return;\n swiper.parallax.setTranslate();\n },\n setTranslate() {\n const swiper = this;\n if (!swiper.params.parallax.enabled) return;\n swiper.parallax.setTranslate();\n },\n setTransition(duration) {\n const swiper = this;\n if (!swiper.params.parallax.enabled) return;\n swiper.parallax.setTransition(duration);\n },\n },\n};\n\nconst Zoom = {\n // Calc Scale From Multi-touches\n getDistanceBetweenTouches(e) {\n if (e.targetTouches.length < 2) return 1;\n const x1 = e.targetTouches[0].pageX;\n const y1 = e.targetTouches[0].pageY;\n const x2 = e.targetTouches[1].pageX;\n const y2 = e.targetTouches[1].pageY;\n const distance = Math.sqrt(((x2 - x1) ** 2) + ((y2 - y1) ** 2));\n return distance;\n },\n // Events\n onGestureStart(e) {\n const swiper = this;\n const params = swiper.params.zoom;\n const zoom = swiper.zoom;\n const { gesture } = zoom;\n zoom.fakeGestureTouched = false;\n zoom.fakeGestureMoved = false;\n if (!Support.gestures) {\n if (e.type !== 'touchstart' || (e.type === 'touchstart' && e.targetTouches.length < 2)) {\n return;\n }\n zoom.fakeGestureTouched = true;\n gesture.scaleStart = Zoom.getDistanceBetweenTouches(e);\n }\n if (!gesture.$slideEl || !gesture.$slideEl.length) {\n gesture.$slideEl = $(e.target).closest(`.${swiper.params.slideClass}`);\n if (gesture.$slideEl.length === 0) gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);\n gesture.$imageEl = gesture.$slideEl.find('img, svg, canvas, picture, .swiper-zoom-target');\n gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`);\n gesture.maxRatio = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n if (gesture.$imageWrapEl.length === 0) {\n gesture.$imageEl = undefined;\n return;\n }\n }\n if (gesture.$imageEl) {\n gesture.$imageEl.transition(0);\n }\n swiper.zoom.isScaling = true;\n },\n onGestureChange(e) {\n const swiper = this;\n const params = swiper.params.zoom;\n const zoom = swiper.zoom;\n const { gesture } = zoom;\n if (!Support.gestures) {\n if (e.type !== 'touchmove' || (e.type === 'touchmove' && e.targetTouches.length < 2)) {\n return;\n }\n zoom.fakeGestureMoved = true;\n gesture.scaleMove = Zoom.getDistanceBetweenTouches(e);\n }\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n if (Support.gestures) {\n zoom.scale = e.scale * zoom.currentScale;\n } else {\n zoom.scale = (gesture.scaleMove / gesture.scaleStart) * zoom.currentScale;\n }\n if (zoom.scale > gesture.maxRatio) {\n zoom.scale = (gesture.maxRatio - 1) + (((zoom.scale - gesture.maxRatio) + 1) ** 0.5);\n }\n if (zoom.scale < params.minRatio) {\n zoom.scale = (params.minRatio + 1) - (((params.minRatio - zoom.scale) + 1) ** 0.5);\n }\n gesture.$imageEl.transform(`translate3d(0,0,0) scale(${zoom.scale})`);\n },\n onGestureEnd(e) {\n const swiper = this;\n const params = swiper.params.zoom;\n const zoom = swiper.zoom;\n const { gesture } = zoom;\n if (!Support.gestures) {\n if (!zoom.fakeGestureTouched || !zoom.fakeGestureMoved) {\n return;\n }\n if (e.type !== 'touchend' || (e.type === 'touchend' && e.changedTouches.length < 2 && !Device.android)) {\n return;\n }\n zoom.fakeGestureTouched = false;\n zoom.fakeGestureMoved = false;\n }\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n zoom.scale = Math.max(Math.min(zoom.scale, gesture.maxRatio), params.minRatio);\n gesture.$imageEl.transition(swiper.params.speed).transform(`translate3d(0,0,0) scale(${zoom.scale})`);\n zoom.currentScale = zoom.scale;\n zoom.isScaling = false;\n if (zoom.scale === 1) gesture.$slideEl = undefined;\n },\n onTouchStart(e) {\n const swiper = this;\n const zoom = swiper.zoom;\n const { gesture, image } = zoom;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n if (image.isTouched) return;\n if (Device.android && e.cancelable) e.preventDefault();\n image.isTouched = true;\n image.touchesStart.x = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX;\n image.touchesStart.y = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY;\n },\n onTouchMove(e) {\n const swiper = this;\n const zoom = swiper.zoom;\n const { gesture, image, velocity } = zoom;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n swiper.allowClick = false;\n if (!image.isTouched || !gesture.$slideEl) return;\n\n if (!image.isMoved) {\n image.width = gesture.$imageEl[0].offsetWidth;\n image.height = gesture.$imageEl[0].offsetHeight;\n image.startX = Utils.getTranslate(gesture.$imageWrapEl[0], 'x') || 0;\n image.startY = Utils.getTranslate(gesture.$imageWrapEl[0], 'y') || 0;\n gesture.slideWidth = gesture.$slideEl[0].offsetWidth;\n gesture.slideHeight = gesture.$slideEl[0].offsetHeight;\n gesture.$imageWrapEl.transition(0);\n if (swiper.rtl) {\n image.startX = -image.startX;\n image.startY = -image.startY;\n }\n }\n // Define if we need image drag\n const scaledWidth = image.width * zoom.scale;\n const scaledHeight = image.height * zoom.scale;\n\n if (scaledWidth < gesture.slideWidth && scaledHeight < gesture.slideHeight) return;\n\n image.minX = Math.min(((gesture.slideWidth / 2) - (scaledWidth / 2)), 0);\n image.maxX = -image.minX;\n image.minY = Math.min(((gesture.slideHeight / 2) - (scaledHeight / 2)), 0);\n image.maxY = -image.minY;\n\n image.touchesCurrent.x = e.type === 'touchmove' ? e.targetTouches[0].pageX : e.pageX;\n image.touchesCurrent.y = e.type === 'touchmove' ? e.targetTouches[0].pageY : e.pageY;\n\n if (!image.isMoved && !zoom.isScaling) {\n if (\n swiper.isHorizontal()\n && (\n (Math.floor(image.minX) === Math.floor(image.startX) && image.touchesCurrent.x < image.touchesStart.x)\n || (Math.floor(image.maxX) === Math.floor(image.startX) && image.touchesCurrent.x > image.touchesStart.x)\n )\n ) {\n image.isTouched = false;\n return;\n } if (\n !swiper.isHorizontal()\n && (\n (Math.floor(image.minY) === Math.floor(image.startY) && image.touchesCurrent.y < image.touchesStart.y)\n || (Math.floor(image.maxY) === Math.floor(image.startY) && image.touchesCurrent.y > image.touchesStart.y)\n )\n ) {\n image.isTouched = false;\n return;\n }\n }\n if (e.cancelable) {\n e.preventDefault();\n }\n e.stopPropagation();\n\n image.isMoved = true;\n image.currentX = (image.touchesCurrent.x - image.touchesStart.x) + image.startX;\n image.currentY = (image.touchesCurrent.y - image.touchesStart.y) + image.startY;\n\n if (image.currentX < image.minX) {\n image.currentX = (image.minX + 1) - (((image.minX - image.currentX) + 1) ** 0.8);\n }\n if (image.currentX > image.maxX) {\n image.currentX = (image.maxX - 1) + (((image.currentX - image.maxX) + 1) ** 0.8);\n }\n\n if (image.currentY < image.minY) {\n image.currentY = (image.minY + 1) - (((image.minY - image.currentY) + 1) ** 0.8);\n }\n if (image.currentY > image.maxY) {\n image.currentY = (image.maxY - 1) + (((image.currentY - image.maxY) + 1) ** 0.8);\n }\n\n // Velocity\n if (!velocity.prevPositionX) velocity.prevPositionX = image.touchesCurrent.x;\n if (!velocity.prevPositionY) velocity.prevPositionY = image.touchesCurrent.y;\n if (!velocity.prevTime) velocity.prevTime = Date.now();\n velocity.x = (image.touchesCurrent.x - velocity.prevPositionX) / (Date.now() - velocity.prevTime) / 2;\n velocity.y = (image.touchesCurrent.y - velocity.prevPositionY) / (Date.now() - velocity.prevTime) / 2;\n if (Math.abs(image.touchesCurrent.x - velocity.prevPositionX) < 2) velocity.x = 0;\n if (Math.abs(image.touchesCurrent.y - velocity.prevPositionY) < 2) velocity.y = 0;\n velocity.prevPositionX = image.touchesCurrent.x;\n velocity.prevPositionY = image.touchesCurrent.y;\n velocity.prevTime = Date.now();\n\n gesture.$imageWrapEl.transform(`translate3d(${image.currentX}px, ${image.currentY}px,0)`);\n },\n onTouchEnd() {\n const swiper = this;\n const zoom = swiper.zoom;\n const { gesture, image, velocity } = zoom;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n if (!image.isTouched || !image.isMoved) {\n image.isTouched = false;\n image.isMoved = false;\n return;\n }\n image.isTouched = false;\n image.isMoved = false;\n let momentumDurationX = 300;\n let momentumDurationY = 300;\n const momentumDistanceX = velocity.x * momentumDurationX;\n const newPositionX = image.currentX + momentumDistanceX;\n const momentumDistanceY = velocity.y * momentumDurationY;\n const newPositionY = image.currentY + momentumDistanceY;\n\n // Fix duration\n if (velocity.x !== 0) momentumDurationX = Math.abs((newPositionX - image.currentX) / velocity.x);\n if (velocity.y !== 0) momentumDurationY = Math.abs((newPositionY - image.currentY) / velocity.y);\n const momentumDuration = Math.max(momentumDurationX, momentumDurationY);\n\n image.currentX = newPositionX;\n image.currentY = newPositionY;\n\n // Define if we need image drag\n const scaledWidth = image.width * zoom.scale;\n const scaledHeight = image.height * zoom.scale;\n image.minX = Math.min(((gesture.slideWidth / 2) - (scaledWidth / 2)), 0);\n image.maxX = -image.minX;\n image.minY = Math.min(((gesture.slideHeight / 2) - (scaledHeight / 2)), 0);\n image.maxY = -image.minY;\n image.currentX = Math.max(Math.min(image.currentX, image.maxX), image.minX);\n image.currentY = Math.max(Math.min(image.currentY, image.maxY), image.minY);\n\n gesture.$imageWrapEl.transition(momentumDuration).transform(`translate3d(${image.currentX}px, ${image.currentY}px,0)`);\n },\n onTransitionEnd() {\n const swiper = this;\n const zoom = swiper.zoom;\n const { gesture } = zoom;\n if (gesture.$slideEl && swiper.previousIndex !== swiper.activeIndex) {\n if (gesture.$imageEl) {\n gesture.$imageEl.transform('translate3d(0,0,0) scale(1)');\n }\n if (gesture.$imageWrapEl) {\n gesture.$imageWrapEl.transform('translate3d(0,0,0)');\n }\n\n zoom.scale = 1;\n zoom.currentScale = 1;\n\n gesture.$slideEl = undefined;\n gesture.$imageEl = undefined;\n gesture.$imageWrapEl = undefined;\n }\n },\n // Toggle Zoom\n toggle(e) {\n const swiper = this;\n const zoom = swiper.zoom;\n\n if (zoom.scale && zoom.scale !== 1) {\n // Zoom Out\n zoom.out();\n } else {\n // Zoom In\n zoom.in(e);\n }\n },\n in(e) {\n const swiper = this;\n\n const zoom = swiper.zoom;\n const params = swiper.params.zoom;\n const { gesture, image } = zoom;\n\n if (!gesture.$slideEl) {\n if (swiper.params.virtual && swiper.params.virtual.enabled && swiper.virtual) {\n gesture.$slideEl = swiper.$wrapperEl.children(`.${swiper.params.slideActiveClass}`);\n } else {\n gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);\n }\n gesture.$imageEl = gesture.$slideEl.find('img, svg, canvas, picture, .swiper-zoom-target');\n gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`);\n }\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n\n gesture.$slideEl.addClass(`${params.zoomedSlideClass}`);\n\n let touchX;\n let touchY;\n let offsetX;\n let offsetY;\n let diffX;\n let diffY;\n let translateX;\n let translateY;\n let imageWidth;\n let imageHeight;\n let scaledWidth;\n let scaledHeight;\n let translateMinX;\n let translateMinY;\n let translateMaxX;\n let translateMaxY;\n let slideWidth;\n let slideHeight;\n\n if (typeof image.touchesStart.x === 'undefined' && e) {\n touchX = e.type === 'touchend' ? e.changedTouches[0].pageX : e.pageX;\n touchY = e.type === 'touchend' ? e.changedTouches[0].pageY : e.pageY;\n } else {\n touchX = image.touchesStart.x;\n touchY = image.touchesStart.y;\n }\n\n zoom.scale = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n zoom.currentScale = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n if (e) {\n slideWidth = gesture.$slideEl[0].offsetWidth;\n slideHeight = gesture.$slideEl[0].offsetHeight;\n offsetX = gesture.$slideEl.offset().left;\n offsetY = gesture.$slideEl.offset().top;\n diffX = (offsetX + (slideWidth / 2)) - touchX;\n diffY = (offsetY + (slideHeight / 2)) - touchY;\n\n imageWidth = gesture.$imageEl[0].offsetWidth;\n imageHeight = gesture.$imageEl[0].offsetHeight;\n scaledWidth = imageWidth * zoom.scale;\n scaledHeight = imageHeight * zoom.scale;\n\n translateMinX = Math.min(((slideWidth / 2) - (scaledWidth / 2)), 0);\n translateMinY = Math.min(((slideHeight / 2) - (scaledHeight / 2)), 0);\n translateMaxX = -translateMinX;\n translateMaxY = -translateMinY;\n\n translateX = diffX * zoom.scale;\n translateY = diffY * zoom.scale;\n\n if (translateX < translateMinX) {\n translateX = translateMinX;\n }\n if (translateX > translateMaxX) {\n translateX = translateMaxX;\n }\n\n if (translateY < translateMinY) {\n translateY = translateMinY;\n }\n if (translateY > translateMaxY) {\n translateY = translateMaxY;\n }\n } else {\n translateX = 0;\n translateY = 0;\n }\n gesture.$imageWrapEl.transition(300).transform(`translate3d(${translateX}px, ${translateY}px,0)`);\n gesture.$imageEl.transition(300).transform(`translate3d(0,0,0) scale(${zoom.scale})`);\n },\n out() {\n const swiper = this;\n\n const zoom = swiper.zoom;\n const params = swiper.params.zoom;\n const { gesture } = zoom;\n\n if (!gesture.$slideEl) {\n if (swiper.params.virtual && swiper.params.virtual.enabled && swiper.virtual) {\n gesture.$slideEl = swiper.$wrapperEl.children(`.${swiper.params.slideActiveClass}`);\n } else {\n gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);\n }\n gesture.$imageEl = gesture.$slideEl.find('img, svg, canvas, picture, .swiper-zoom-target');\n gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`);\n }\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n\n zoom.scale = 1;\n zoom.currentScale = 1;\n gesture.$imageWrapEl.transition(300).transform('translate3d(0,0,0)');\n gesture.$imageEl.transition(300).transform('translate3d(0,0,0) scale(1)');\n gesture.$slideEl.removeClass(`${params.zoomedSlideClass}`);\n gesture.$slideEl = undefined;\n },\n // Attach/Detach Events\n enable() {\n const swiper = this;\n const zoom = swiper.zoom;\n if (zoom.enabled) return;\n zoom.enabled = true;\n\n const passiveListener = swiper.touchEvents.start === 'touchstart' && Support.passiveListener && swiper.params.passiveListeners ? { passive: true, capture: false } : false;\n const activeListenerWithCapture = Support.passiveListener ? { passive: false, capture: true } : true;\n\n const slideSelector = `.${swiper.params.slideClass}`;\n\n // Scale image\n if (Support.gestures) {\n swiper.$wrapperEl.on('gesturestart', slideSelector, zoom.onGestureStart, passiveListener);\n swiper.$wrapperEl.on('gesturechange', slideSelector, zoom.onGestureChange, passiveListener);\n swiper.$wrapperEl.on('gestureend', slideSelector, zoom.onGestureEnd, passiveListener);\n } else if (swiper.touchEvents.start === 'touchstart') {\n swiper.$wrapperEl.on(swiper.touchEvents.start, slideSelector, zoom.onGestureStart, passiveListener);\n swiper.$wrapperEl.on(swiper.touchEvents.move, slideSelector, zoom.onGestureChange, activeListenerWithCapture);\n swiper.$wrapperEl.on(swiper.touchEvents.end, slideSelector, zoom.onGestureEnd, passiveListener);\n if (swiper.touchEvents.cancel) {\n swiper.$wrapperEl.on(swiper.touchEvents.cancel, slideSelector, zoom.onGestureEnd, passiveListener);\n }\n }\n\n // Move image\n swiper.$wrapperEl.on(swiper.touchEvents.move, `.${swiper.params.zoom.containerClass}`, zoom.onTouchMove, activeListenerWithCapture);\n },\n disable() {\n const swiper = this;\n const zoom = swiper.zoom;\n if (!zoom.enabled) return;\n\n swiper.zoom.enabled = false;\n\n const passiveListener = swiper.touchEvents.start === 'touchstart' && Support.passiveListener && swiper.params.passiveListeners ? { passive: true, capture: false } : false;\n const activeListenerWithCapture = Support.passiveListener ? { passive: false, capture: true } : true;\n\n const slideSelector = `.${swiper.params.slideClass}`;\n\n // Scale image\n if (Support.gestures) {\n swiper.$wrapperEl.off('gesturestart', slideSelector, zoom.onGestureStart, passiveListener);\n swiper.$wrapperEl.off('gesturechange', slideSelector, zoom.onGestureChange, passiveListener);\n swiper.$wrapperEl.off('gestureend', slideSelector, zoom.onGestureEnd, passiveListener);\n } else if (swiper.touchEvents.start === 'touchstart') {\n swiper.$wrapperEl.off(swiper.touchEvents.start, slideSelector, zoom.onGestureStart, passiveListener);\n swiper.$wrapperEl.off(swiper.touchEvents.move, slideSelector, zoom.onGestureChange, activeListenerWithCapture);\n swiper.$wrapperEl.off(swiper.touchEvents.end, slideSelector, zoom.onGestureEnd, passiveListener);\n if (swiper.touchEvents.cancel) {\n swiper.$wrapperEl.off(swiper.touchEvents.cancel, slideSelector, zoom.onGestureEnd, passiveListener);\n }\n }\n\n // Move image\n swiper.$wrapperEl.off(swiper.touchEvents.move, `.${swiper.params.zoom.containerClass}`, zoom.onTouchMove, activeListenerWithCapture);\n },\n};\n\nvar Zoom$1 = {\n name: 'zoom',\n params: {\n zoom: {\n enabled: false,\n maxRatio: 3,\n minRatio: 1,\n toggle: true,\n containerClass: 'swiper-zoom-container',\n zoomedSlideClass: 'swiper-slide-zoomed',\n },\n },\n create() {\n const swiper = this;\n const zoom = {\n enabled: false,\n scale: 1,\n currentScale: 1,\n isScaling: false,\n gesture: {\n $slideEl: undefined,\n slideWidth: undefined,\n slideHeight: undefined,\n $imageEl: undefined,\n $imageWrapEl: undefined,\n maxRatio: 3,\n },\n image: {\n isTouched: undefined,\n isMoved: undefined,\n currentX: undefined,\n currentY: undefined,\n minX: undefined,\n minY: undefined,\n maxX: undefined,\n maxY: undefined,\n width: undefined,\n height: undefined,\n startX: undefined,\n startY: undefined,\n touchesStart: {},\n touchesCurrent: {},\n },\n velocity: {\n x: undefined,\n y: undefined,\n prevPositionX: undefined,\n prevPositionY: undefined,\n prevTime: undefined,\n },\n };\n\n ('onGestureStart onGestureChange onGestureEnd onTouchStart onTouchMove onTouchEnd onTransitionEnd toggle enable disable in out').split(' ').forEach((methodName) => {\n zoom[methodName] = Zoom[methodName].bind(swiper);\n });\n Utils.extend(swiper, {\n zoom,\n });\n\n let scale = 1;\n Object.defineProperty(swiper.zoom, 'scale', {\n get() {\n return scale;\n },\n set(value) {\n if (scale !== value) {\n const imageEl = swiper.zoom.gesture.$imageEl ? swiper.zoom.gesture.$imageEl[0] : undefined;\n const slideEl = swiper.zoom.gesture.$slideEl ? swiper.zoom.gesture.$slideEl[0] : undefined;\n swiper.emit('zoomChange', value, imageEl, slideEl);\n }\n scale = value;\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n if (swiper.params.zoom.enabled) {\n swiper.zoom.enable();\n }\n },\n destroy() {\n const swiper = this;\n swiper.zoom.disable();\n },\n touchStart(e) {\n const swiper = this;\n if (!swiper.zoom.enabled) return;\n swiper.zoom.onTouchStart(e);\n },\n touchEnd(e) {\n const swiper = this;\n if (!swiper.zoom.enabled) return;\n swiper.zoom.onTouchEnd(e);\n },\n doubleTap(e) {\n const swiper = this;\n if (swiper.params.zoom.enabled && swiper.zoom.enabled && swiper.params.zoom.toggle) {\n swiper.zoom.toggle(e);\n }\n },\n transitionEnd() {\n const swiper = this;\n if (swiper.zoom.enabled && swiper.params.zoom.enabled) {\n swiper.zoom.onTransitionEnd();\n }\n },\n slideChange() {\n const swiper = this;\n if (swiper.zoom.enabled && swiper.params.zoom.enabled && swiper.params.cssMode) {\n swiper.zoom.onTransitionEnd();\n }\n },\n },\n};\n\nconst Lazy = {\n loadInSlide(index, loadInDuplicate = true) {\n const swiper = this;\n const params = swiper.params.lazy;\n if (typeof index === 'undefined') return;\n if (swiper.slides.length === 0) return;\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n\n const $slideEl = isVirtual\n ? swiper.$wrapperEl.children(`.${swiper.params.slideClass}[data-swiper-slide-index=\"${index}\"]`)\n : swiper.slides.eq(index);\n\n let $images = $slideEl.find(`.${params.elementClass}:not(.${params.loadedClass}):not(.${params.loadingClass})`);\n if ($slideEl.hasClass(params.elementClass) && !$slideEl.hasClass(params.loadedClass) && !$slideEl.hasClass(params.loadingClass)) {\n $images = $images.add($slideEl[0]);\n }\n if ($images.length === 0) return;\n\n $images.each((imageIndex, imageEl) => {\n const $imageEl = $(imageEl);\n $imageEl.addClass(params.loadingClass);\n\n const background = $imageEl.attr('data-background');\n const src = $imageEl.attr('data-src');\n const srcset = $imageEl.attr('data-srcset');\n const sizes = $imageEl.attr('data-sizes');\n const $pictureEl = $imageEl.parent('picture');\n\n swiper.loadImage($imageEl[0], (src || background), srcset, sizes, false, () => {\n if (typeof swiper === 'undefined' || swiper === null || !swiper || (swiper && !swiper.params) || swiper.destroyed) return;\n if (background) {\n $imageEl.css('background-image', `url(\"${background}\")`);\n $imageEl.removeAttr('data-background');\n } else {\n if (srcset) {\n $imageEl.attr('srcset', srcset);\n $imageEl.removeAttr('data-srcset');\n }\n if (sizes) {\n $imageEl.attr('sizes', sizes);\n $imageEl.removeAttr('data-sizes');\n }\n if ($pictureEl.length) {\n $pictureEl.children('source').each((sourceIndex, sourceEl) => {\n const $source = $(sourceEl);\n\n if ($source.attr('data-srcset')) {\n $source.attr('srcset', $source.attr('data-srcset'));\n $source.removeAttr('data-srcset');\n }\n });\n }\n if (src) {\n $imageEl.attr('src', src);\n $imageEl.removeAttr('data-src');\n }\n }\n\n $imageEl.addClass(params.loadedClass).removeClass(params.loadingClass);\n $slideEl.find(`.${params.preloaderClass}`).remove();\n if (swiper.params.loop && loadInDuplicate) {\n const slideOriginalIndex = $slideEl.attr('data-swiper-slide-index');\n if ($slideEl.hasClass(swiper.params.slideDuplicateClass)) {\n const originalSlide = swiper.$wrapperEl.children(`[data-swiper-slide-index=\"${slideOriginalIndex}\"]:not(.${swiper.params.slideDuplicateClass})`);\n swiper.lazy.loadInSlide(originalSlide.index(), false);\n } else {\n const duplicatedSlide = swiper.$wrapperEl.children(`.${swiper.params.slideDuplicateClass}[data-swiper-slide-index=\"${slideOriginalIndex}\"]`);\n swiper.lazy.loadInSlide(duplicatedSlide.index(), false);\n }\n }\n swiper.emit('lazyImageReady', $slideEl[0], $imageEl[0]);\n if (swiper.params.autoHeight) {\n swiper.updateAutoHeight();\n }\n });\n\n swiper.emit('lazyImageLoad', $slideEl[0], $imageEl[0]);\n });\n },\n load() {\n const swiper = this;\n const {\n $wrapperEl, params: swiperParams, slides, activeIndex,\n } = swiper;\n const isVirtual = swiper.virtual && swiperParams.virtual.enabled;\n const params = swiperParams.lazy;\n\n let slidesPerView = swiperParams.slidesPerView;\n if (slidesPerView === 'auto') {\n slidesPerView = 0;\n }\n\n function slideExist(index) {\n if (isVirtual) {\n if ($wrapperEl.children(`.${swiperParams.slideClass}[data-swiper-slide-index=\"${index}\"]`).length) {\n return true;\n }\n } else if (slides[index]) return true;\n return false;\n }\n\n function slideIndex(slideEl) {\n if (isVirtual) {\n return $(slideEl).attr('data-swiper-slide-index');\n }\n return $(slideEl).index();\n }\n\n if (!swiper.lazy.initialImageLoaded) swiper.lazy.initialImageLoaded = true;\n if (swiper.params.watchSlidesVisibility) {\n $wrapperEl.children(`.${swiperParams.slideVisibleClass}`).each((elIndex, slideEl) => {\n const index = isVirtual ? $(slideEl).attr('data-swiper-slide-index') : $(slideEl).index();\n swiper.lazy.loadInSlide(index);\n });\n } else if (slidesPerView > 1) {\n for (let i = activeIndex; i < activeIndex + slidesPerView; i += 1) {\n if (slideExist(i)) swiper.lazy.loadInSlide(i);\n }\n } else {\n swiper.lazy.loadInSlide(activeIndex);\n }\n if (params.loadPrevNext) {\n if (slidesPerView > 1 || (params.loadPrevNextAmount && params.loadPrevNextAmount > 1)) {\n const amount = params.loadPrevNextAmount;\n const spv = slidesPerView;\n const maxIndex = Math.min(activeIndex + spv + Math.max(amount, spv), slides.length);\n const minIndex = Math.max(activeIndex - Math.max(spv, amount), 0);\n // Next Slides\n for (let i = activeIndex + slidesPerView; i < maxIndex; i += 1) {\n if (slideExist(i)) swiper.lazy.loadInSlide(i);\n }\n // Prev Slides\n for (let i = minIndex; i < activeIndex; i += 1) {\n if (slideExist(i)) swiper.lazy.loadInSlide(i);\n }\n } else {\n const nextSlide = $wrapperEl.children(`.${swiperParams.slideNextClass}`);\n if (nextSlide.length > 0) swiper.lazy.loadInSlide(slideIndex(nextSlide));\n\n const prevSlide = $wrapperEl.children(`.${swiperParams.slidePrevClass}`);\n if (prevSlide.length > 0) swiper.lazy.loadInSlide(slideIndex(prevSlide));\n }\n }\n },\n};\n\nvar Lazy$1 = {\n name: 'lazy',\n params: {\n lazy: {\n enabled: false,\n loadPrevNext: false,\n loadPrevNextAmount: 1,\n loadOnTransitionStart: false,\n\n elementClass: 'swiper-lazy',\n loadingClass: 'swiper-lazy-loading',\n loadedClass: 'swiper-lazy-loaded',\n preloaderClass: 'swiper-lazy-preloader',\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n lazy: {\n initialImageLoaded: false,\n load: Lazy.load.bind(swiper),\n loadInSlide: Lazy.loadInSlide.bind(swiper),\n },\n });\n },\n on: {\n beforeInit() {\n const swiper = this;\n if (swiper.params.lazy.enabled && swiper.params.preloadImages) {\n swiper.params.preloadImages = false;\n }\n },\n init() {\n const swiper = this;\n if (swiper.params.lazy.enabled && !swiper.params.loop && swiper.params.initialSlide === 0) {\n swiper.lazy.load();\n }\n },\n scroll() {\n const swiper = this;\n if (swiper.params.freeMode && !swiper.params.freeModeSticky) {\n swiper.lazy.load();\n }\n },\n resize() {\n const swiper = this;\n if (swiper.params.lazy.enabled) {\n swiper.lazy.load();\n }\n },\n scrollbarDragMove() {\n const swiper = this;\n if (swiper.params.lazy.enabled) {\n swiper.lazy.load();\n }\n },\n transitionStart() {\n const swiper = this;\n if (swiper.params.lazy.enabled) {\n if (swiper.params.lazy.loadOnTransitionStart || (!swiper.params.lazy.loadOnTransitionStart && !swiper.lazy.initialImageLoaded)) {\n swiper.lazy.load();\n }\n }\n },\n transitionEnd() {\n const swiper = this;\n if (swiper.params.lazy.enabled && !swiper.params.lazy.loadOnTransitionStart) {\n swiper.lazy.load();\n }\n },\n slideChange() {\n const swiper = this;\n if (swiper.params.lazy.enabled && swiper.params.cssMode) {\n swiper.lazy.load();\n }\n },\n },\n};\n\n/* eslint no-bitwise: [\"error\", { \"allow\": [\">>\"] }] */\n\nconst Controller = {\n LinearSpline: function LinearSpline(x, y) {\n const binarySearch = (function search() {\n let maxIndex;\n let minIndex;\n let guess;\n return (array, val) => {\n minIndex = -1;\n maxIndex = array.length;\n while (maxIndex - minIndex > 1) {\n guess = maxIndex + minIndex >> 1;\n if (array[guess] <= val) {\n minIndex = guess;\n } else {\n maxIndex = guess;\n }\n }\n return maxIndex;\n };\n }());\n this.x = x;\n this.y = y;\n this.lastIndex = x.length - 1;\n // Given an x value (x2), return the expected y2 value:\n // (x1,y1) is the known point before given value,\n // (x3,y3) is the known point after given value.\n let i1;\n let i3;\n\n this.interpolate = function interpolate(x2) {\n if (!x2) return 0;\n\n // Get the indexes of x1 and x3 (the array indexes before and after given x2):\n i3 = binarySearch(this.x, x2);\n i1 = i3 - 1;\n\n // We have our indexes i1 & i3, so we can calculate already:\n // y2 := ((x2−x1) × (y3−y1)) ÷ (x3−x1) + y1\n return (((x2 - this.x[i1]) * (this.y[i3] - this.y[i1])) / (this.x[i3] - this.x[i1])) + this.y[i1];\n };\n return this;\n },\n // xxx: for now i will just save one spline function to to\n getInterpolateFunction(c) {\n const swiper = this;\n if (!swiper.controller.spline) {\n swiper.controller.spline = swiper.params.loop\n ? new Controller.LinearSpline(swiper.slidesGrid, c.slidesGrid)\n : new Controller.LinearSpline(swiper.snapGrid, c.snapGrid);\n }\n },\n setTranslate(setTranslate, byController) {\n const swiper = this;\n const controlled = swiper.controller.control;\n let multiplier;\n let controlledTranslate;\n function setControlledTranslate(c) {\n // this will create an Interpolate function based on the snapGrids\n // x is the Grid of the scrolled scroller and y will be the controlled scroller\n // it makes sense to create this only once and recall it for the interpolation\n // the function does a lot of value caching for performance\n const translate = swiper.rtlTranslate ? -swiper.translate : swiper.translate;\n if (swiper.params.controller.by === 'slide') {\n swiper.controller.getInterpolateFunction(c);\n // i am not sure why the values have to be multiplicated this way, tried to invert the snapGrid\n // but it did not work out\n controlledTranslate = -swiper.controller.spline.interpolate(-translate);\n }\n\n if (!controlledTranslate || swiper.params.controller.by === 'container') {\n multiplier = (c.maxTranslate() - c.minTranslate()) / (swiper.maxTranslate() - swiper.minTranslate());\n controlledTranslate = ((translate - swiper.minTranslate()) * multiplier) + c.minTranslate();\n }\n\n if (swiper.params.controller.inverse) {\n controlledTranslate = c.maxTranslate() - controlledTranslate;\n }\n c.updateProgress(controlledTranslate);\n c.setTranslate(controlledTranslate, swiper);\n c.updateActiveIndex();\n c.updateSlidesClasses();\n }\n if (Array.isArray(controlled)) {\n for (let i = 0; i < controlled.length; i += 1) {\n if (controlled[i] !== byController && controlled[i] instanceof Swiper) {\n setControlledTranslate(controlled[i]);\n }\n }\n } else if (controlled instanceof Swiper && byController !== controlled) {\n setControlledTranslate(controlled);\n }\n },\n setTransition(duration, byController) {\n const swiper = this;\n const controlled = swiper.controller.control;\n let i;\n function setControlledTransition(c) {\n c.setTransition(duration, swiper);\n if (duration !== 0) {\n c.transitionStart();\n if (c.params.autoHeight) {\n Utils.nextTick(() => {\n c.updateAutoHeight();\n });\n }\n c.$wrapperEl.transitionEnd(() => {\n if (!controlled) return;\n if (c.params.loop && swiper.params.controller.by === 'slide') {\n c.loopFix();\n }\n c.transitionEnd();\n });\n }\n }\n if (Array.isArray(controlled)) {\n for (i = 0; i < controlled.length; i += 1) {\n if (controlled[i] !== byController && controlled[i] instanceof Swiper) {\n setControlledTransition(controlled[i]);\n }\n }\n } else if (controlled instanceof Swiper && byController !== controlled) {\n setControlledTransition(controlled);\n }\n },\n};\nvar Controller$1 = {\n name: 'controller',\n params: {\n controller: {\n control: undefined,\n inverse: false,\n by: 'slide', // or 'container'\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n controller: {\n control: swiper.params.controller.control,\n getInterpolateFunction: Controller.getInterpolateFunction.bind(swiper),\n setTranslate: Controller.setTranslate.bind(swiper),\n setTransition: Controller.setTransition.bind(swiper),\n },\n });\n },\n on: {\n update() {\n const swiper = this;\n if (!swiper.controller.control) return;\n if (swiper.controller.spline) {\n swiper.controller.spline = undefined;\n delete swiper.controller.spline;\n }\n },\n resize() {\n const swiper = this;\n if (!swiper.controller.control) return;\n if (swiper.controller.spline) {\n swiper.controller.spline = undefined;\n delete swiper.controller.spline;\n }\n },\n observerUpdate() {\n const swiper = this;\n if (!swiper.controller.control) return;\n if (swiper.controller.spline) {\n swiper.controller.spline = undefined;\n delete swiper.controller.spline;\n }\n },\n setTranslate(translate, byController) {\n const swiper = this;\n if (!swiper.controller.control) return;\n swiper.controller.setTranslate(translate, byController);\n },\n setTransition(duration, byController) {\n const swiper = this;\n if (!swiper.controller.control) return;\n swiper.controller.setTransition(duration, byController);\n },\n },\n};\n\nconst a11y = {\n makeElFocusable($el) {\n $el.attr('tabIndex', '0');\n return $el;\n },\n makeElNotFocusable($el) {\n $el.attr('tabIndex', '-1');\n return $el;\n },\n addElRole($el, role) {\n $el.attr('role', role);\n return $el;\n },\n addElLabel($el, label) {\n $el.attr('aria-label', label);\n return $el;\n },\n disableEl($el) {\n $el.attr('aria-disabled', true);\n return $el;\n },\n enableEl($el) {\n $el.attr('aria-disabled', false);\n return $el;\n },\n onEnterKey(e) {\n const swiper = this;\n const params = swiper.params.a11y;\n if (e.keyCode !== 13) return;\n const $targetEl = $(e.target);\n if (swiper.navigation && swiper.navigation.$nextEl && $targetEl.is(swiper.navigation.$nextEl)) {\n if (!(swiper.isEnd && !swiper.params.loop)) {\n swiper.slideNext();\n }\n if (swiper.isEnd) {\n swiper.a11y.notify(params.lastSlideMessage);\n } else {\n swiper.a11y.notify(params.nextSlideMessage);\n }\n }\n if (swiper.navigation && swiper.navigation.$prevEl && $targetEl.is(swiper.navigation.$prevEl)) {\n if (!(swiper.isBeginning && !swiper.params.loop)) {\n swiper.slidePrev();\n }\n if (swiper.isBeginning) {\n swiper.a11y.notify(params.firstSlideMessage);\n } else {\n swiper.a11y.notify(params.prevSlideMessage);\n }\n }\n if (swiper.pagination && $targetEl.is(`.${swiper.params.pagination.bulletClass}`)) {\n $targetEl[0].click();\n }\n },\n notify(message) {\n const swiper = this;\n const notification = swiper.a11y.liveRegion;\n if (notification.length === 0) return;\n notification.html('');\n notification.html(message);\n },\n updateNavigation() {\n const swiper = this;\n\n if (swiper.params.loop || !swiper.navigation) return;\n const { $nextEl, $prevEl } = swiper.navigation;\n\n if ($prevEl && $prevEl.length > 0) {\n if (swiper.isBeginning) {\n swiper.a11y.disableEl($prevEl);\n swiper.a11y.makeElNotFocusable($prevEl);\n } else {\n swiper.a11y.enableEl($prevEl);\n swiper.a11y.makeElFocusable($prevEl);\n }\n }\n if ($nextEl && $nextEl.length > 0) {\n if (swiper.isEnd) {\n swiper.a11y.disableEl($nextEl);\n swiper.a11y.makeElNotFocusable($nextEl);\n } else {\n swiper.a11y.enableEl($nextEl);\n swiper.a11y.makeElFocusable($nextEl);\n }\n }\n },\n updatePagination() {\n const swiper = this;\n const params = swiper.params.a11y;\n if (swiper.pagination && swiper.params.pagination.clickable && swiper.pagination.bullets && swiper.pagination.bullets.length) {\n swiper.pagination.bullets.each((bulletIndex, bulletEl) => {\n const $bulletEl = $(bulletEl);\n swiper.a11y.makeElFocusable($bulletEl);\n swiper.a11y.addElRole($bulletEl, 'button');\n swiper.a11y.addElLabel($bulletEl, params.paginationBulletMessage.replace(/\\{\\{index\\}\\}/, $bulletEl.index() + 1));\n });\n }\n },\n init() {\n const swiper = this;\n\n swiper.$el.append(swiper.a11y.liveRegion);\n\n // Navigation\n const params = swiper.params.a11y;\n let $nextEl;\n let $prevEl;\n if (swiper.navigation && swiper.navigation.$nextEl) {\n $nextEl = swiper.navigation.$nextEl;\n }\n if (swiper.navigation && swiper.navigation.$prevEl) {\n $prevEl = swiper.navigation.$prevEl;\n }\n if ($nextEl) {\n swiper.a11y.makeElFocusable($nextEl);\n swiper.a11y.addElRole($nextEl, 'button');\n swiper.a11y.addElLabel($nextEl, params.nextSlideMessage);\n $nextEl.on('keydown', swiper.a11y.onEnterKey);\n }\n if ($prevEl) {\n swiper.a11y.makeElFocusable($prevEl);\n swiper.a11y.addElRole($prevEl, 'button');\n swiper.a11y.addElLabel($prevEl, params.prevSlideMessage);\n $prevEl.on('keydown', swiper.a11y.onEnterKey);\n }\n\n // Pagination\n if (swiper.pagination && swiper.params.pagination.clickable && swiper.pagination.bullets && swiper.pagination.bullets.length) {\n swiper.pagination.$el.on('keydown', `.${swiper.params.pagination.bulletClass}`, swiper.a11y.onEnterKey);\n }\n },\n destroy() {\n const swiper = this;\n if (swiper.a11y.liveRegion && swiper.a11y.liveRegion.length > 0) swiper.a11y.liveRegion.remove();\n\n let $nextEl;\n let $prevEl;\n if (swiper.navigation && swiper.navigation.$nextEl) {\n $nextEl = swiper.navigation.$nextEl;\n }\n if (swiper.navigation && swiper.navigation.$prevEl) {\n $prevEl = swiper.navigation.$prevEl;\n }\n if ($nextEl) {\n $nextEl.off('keydown', swiper.a11y.onEnterKey);\n }\n if ($prevEl) {\n $prevEl.off('keydown', swiper.a11y.onEnterKey);\n }\n\n // Pagination\n if (swiper.pagination && swiper.params.pagination.clickable && swiper.pagination.bullets && swiper.pagination.bullets.length) {\n swiper.pagination.$el.off('keydown', `.${swiper.params.pagination.bulletClass}`, swiper.a11y.onEnterKey);\n }\n },\n};\nvar A11y = {\n name: 'a11y',\n params: {\n a11y: {\n enabled: true,\n notificationClass: 'swiper-notification',\n prevSlideMessage: 'Previous slide',\n nextSlideMessage: 'Next slide',\n firstSlideMessage: 'This is the first slide',\n lastSlideMessage: 'This is the last slide',\n paginationBulletMessage: 'Go to slide {{index}}',\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n a11y: {\n liveRegion: $(``),\n },\n });\n Object.keys(a11y).forEach((methodName) => {\n swiper.a11y[methodName] = a11y[methodName].bind(swiper);\n });\n },\n on: {\n init() {\n const swiper = this;\n if (!swiper.params.a11y.enabled) return;\n swiper.a11y.init();\n swiper.a11y.updateNavigation();\n },\n toEdge() {\n const swiper = this;\n if (!swiper.params.a11y.enabled) return;\n swiper.a11y.updateNavigation();\n },\n fromEdge() {\n const swiper = this;\n if (!swiper.params.a11y.enabled) return;\n swiper.a11y.updateNavigation();\n },\n paginationUpdate() {\n const swiper = this;\n if (!swiper.params.a11y.enabled) return;\n swiper.a11y.updatePagination();\n },\n destroy() {\n const swiper = this;\n if (!swiper.params.a11y.enabled) return;\n swiper.a11y.destroy();\n },\n },\n};\n\nconst History = {\n init() {\n const swiper = this;\n if (!swiper.params.history) return;\n if (!window.history || !window.history.pushState) {\n swiper.params.history.enabled = false;\n swiper.params.hashNavigation.enabled = true;\n return;\n }\n const history = swiper.history;\n history.initialized = true;\n history.paths = History.getPathValues();\n if (!history.paths.key && !history.paths.value) return;\n history.scrollToSlide(0, history.paths.value, swiper.params.runCallbacksOnInit);\n if (!swiper.params.history.replaceState) {\n window.addEventListener('popstate', swiper.history.setHistoryPopState);\n }\n },\n destroy() {\n const swiper = this;\n if (!swiper.params.history.replaceState) {\n window.removeEventListener('popstate', swiper.history.setHistoryPopState);\n }\n },\n setHistoryPopState() {\n const swiper = this;\n swiper.history.paths = History.getPathValues();\n swiper.history.scrollToSlide(swiper.params.speed, swiper.history.paths.value, false);\n },\n getPathValues() {\n const pathArray = window.location.pathname.slice(1).split('/').filter((part) => part !== '');\n const total = pathArray.length;\n const key = pathArray[total - 2];\n const value = pathArray[total - 1];\n return { key, value };\n },\n setHistory(key, index) {\n const swiper = this;\n if (!swiper.history.initialized || !swiper.params.history.enabled) return;\n const slide = swiper.slides.eq(index);\n let value = History.slugify(slide.attr('data-history'));\n if (!window.location.pathname.includes(key)) {\n value = `${key}/${value}`;\n }\n const currentState = window.history.state;\n if (currentState && currentState.value === value) {\n return;\n }\n if (swiper.params.history.replaceState) {\n window.history.replaceState({ value }, null, value);\n } else {\n window.history.pushState({ value }, null, value);\n }\n },\n slugify(text) {\n return text.toString()\n .replace(/\\s+/g, '-')\n .replace(/[^\\w-]+/g, '')\n .replace(/--+/g, '-')\n .replace(/^-+/, '')\n .replace(/-+$/, '');\n },\n scrollToSlide(speed, value, runCallbacks) {\n const swiper = this;\n if (value) {\n for (let i = 0, length = swiper.slides.length; i < length; i += 1) {\n const slide = swiper.slides.eq(i);\n const slideHistory = History.slugify(slide.attr('data-history'));\n if (slideHistory === value && !slide.hasClass(swiper.params.slideDuplicateClass)) {\n const index = slide.index();\n swiper.slideTo(index, speed, runCallbacks);\n }\n }\n } else {\n swiper.slideTo(0, speed, runCallbacks);\n }\n },\n};\n\nvar History$1 = {\n name: 'history',\n params: {\n history: {\n enabled: false,\n replaceState: false,\n key: 'slides',\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n history: {\n init: History.init.bind(swiper),\n setHistory: History.setHistory.bind(swiper),\n setHistoryPopState: History.setHistoryPopState.bind(swiper),\n scrollToSlide: History.scrollToSlide.bind(swiper),\n destroy: History.destroy.bind(swiper),\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n if (swiper.params.history.enabled) {\n swiper.history.init();\n }\n },\n destroy() {\n const swiper = this;\n if (swiper.params.history.enabled) {\n swiper.history.destroy();\n }\n },\n transitionEnd() {\n const swiper = this;\n if (swiper.history.initialized) {\n swiper.history.setHistory(swiper.params.history.key, swiper.activeIndex);\n }\n },\n slideChange() {\n const swiper = this;\n if (swiper.history.initialized && swiper.params.cssMode) {\n swiper.history.setHistory(swiper.params.history.key, swiper.activeIndex);\n }\n },\n },\n};\n\nconst HashNavigation = {\n onHashCange() {\n const swiper = this;\n swiper.emit('hashChange');\n const newHash = document$1.location.hash.replace('#', '');\n const activeSlideHash = swiper.slides.eq(swiper.activeIndex).attr('data-hash');\n if (newHash !== activeSlideHash) {\n const newIndex = swiper.$wrapperEl.children(`.${swiper.params.slideClass}[data-hash=\"${newHash}\"]`).index();\n if (typeof newIndex === 'undefined') return;\n swiper.slideTo(newIndex);\n }\n },\n setHash() {\n const swiper = this;\n if (!swiper.hashNavigation.initialized || !swiper.params.hashNavigation.enabled) return;\n if (swiper.params.hashNavigation.replaceState && window.history && window.history.replaceState) {\n window.history.replaceState(null, null, (`#${swiper.slides.eq(swiper.activeIndex).attr('data-hash')}` || ''));\n swiper.emit('hashSet');\n } else {\n const slide = swiper.slides.eq(swiper.activeIndex);\n const hash = slide.attr('data-hash') || slide.attr('data-history');\n document$1.location.hash = hash || '';\n swiper.emit('hashSet');\n }\n },\n init() {\n const swiper = this;\n if (!swiper.params.hashNavigation.enabled || (swiper.params.history && swiper.params.history.enabled)) return;\n swiper.hashNavigation.initialized = true;\n const hash = document$1.location.hash.replace('#', '');\n if (hash) {\n const speed = 0;\n for (let i = 0, length = swiper.slides.length; i < length; i += 1) {\n const slide = swiper.slides.eq(i);\n const slideHash = slide.attr('data-hash') || slide.attr('data-history');\n if (slideHash === hash && !slide.hasClass(swiper.params.slideDuplicateClass)) {\n const index = slide.index();\n swiper.slideTo(index, speed, swiper.params.runCallbacksOnInit, true);\n }\n }\n }\n if (swiper.params.hashNavigation.watchState) {\n $(window).on('hashchange', swiper.hashNavigation.onHashCange);\n }\n },\n destroy() {\n const swiper = this;\n if (swiper.params.hashNavigation.watchState) {\n $(window).off('hashchange', swiper.hashNavigation.onHashCange);\n }\n },\n};\nvar HashNavigation$1 = {\n name: 'hash-navigation',\n params: {\n hashNavigation: {\n enabled: false,\n replaceState: false,\n watchState: false,\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n hashNavigation: {\n initialized: false,\n init: HashNavigation.init.bind(swiper),\n destroy: HashNavigation.destroy.bind(swiper),\n setHash: HashNavigation.setHash.bind(swiper),\n onHashCange: HashNavigation.onHashCange.bind(swiper),\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n if (swiper.params.hashNavigation.enabled) {\n swiper.hashNavigation.init();\n }\n },\n destroy() {\n const swiper = this;\n if (swiper.params.hashNavigation.enabled) {\n swiper.hashNavigation.destroy();\n }\n },\n transitionEnd() {\n const swiper = this;\n if (swiper.hashNavigation.initialized) {\n swiper.hashNavigation.setHash();\n }\n },\n slideChange() {\n const swiper = this;\n if (swiper.hashNavigation.initialized && swiper.params.cssMode) {\n swiper.hashNavigation.setHash();\n }\n },\n },\n};\n\n/* eslint no-underscore-dangle: \"off\" */\n\nconst Autoplay = {\n run() {\n const swiper = this;\n const $activeSlideEl = swiper.slides.eq(swiper.activeIndex);\n let delay = swiper.params.autoplay.delay;\n if ($activeSlideEl.attr('data-swiper-autoplay')) {\n delay = $activeSlideEl.attr('data-swiper-autoplay') || swiper.params.autoplay.delay;\n }\n clearTimeout(swiper.autoplay.timeout);\n swiper.autoplay.timeout = Utils.nextTick(() => {\n if (swiper.params.autoplay.reverseDirection) {\n if (swiper.params.loop) {\n swiper.loopFix();\n swiper.slidePrev(swiper.params.speed, true, true);\n swiper.emit('autoplay');\n } else if (!swiper.isBeginning) {\n swiper.slidePrev(swiper.params.speed, true, true);\n swiper.emit('autoplay');\n } else if (!swiper.params.autoplay.stopOnLastSlide) {\n swiper.slideTo(swiper.slides.length - 1, swiper.params.speed, true, true);\n swiper.emit('autoplay');\n } else {\n swiper.autoplay.stop();\n }\n } else if (swiper.params.loop) {\n swiper.loopFix();\n swiper.slideNext(swiper.params.speed, true, true);\n swiper.emit('autoplay');\n } else if (!swiper.isEnd) {\n swiper.slideNext(swiper.params.speed, true, true);\n swiper.emit('autoplay');\n } else if (!swiper.params.autoplay.stopOnLastSlide) {\n swiper.slideTo(0, swiper.params.speed, true, true);\n swiper.emit('autoplay');\n } else {\n swiper.autoplay.stop();\n }\n if (swiper.params.cssMode && swiper.autoplay.running) swiper.autoplay.run();\n }, delay);\n },\n start() {\n const swiper = this;\n if (typeof swiper.autoplay.timeout !== 'undefined') return false;\n if (swiper.autoplay.running) return false;\n swiper.autoplay.running = true;\n swiper.emit('autoplayStart');\n swiper.autoplay.run();\n return true;\n },\n stop() {\n const swiper = this;\n if (!swiper.autoplay.running) return false;\n if (typeof swiper.autoplay.timeout === 'undefined') return false;\n\n if (swiper.autoplay.timeout) {\n clearTimeout(swiper.autoplay.timeout);\n swiper.autoplay.timeout = undefined;\n }\n swiper.autoplay.running = false;\n swiper.emit('autoplayStop');\n return true;\n },\n pause(speed) {\n const swiper = this;\n if (!swiper.autoplay.running) return;\n if (swiper.autoplay.paused) return;\n if (swiper.autoplay.timeout) clearTimeout(swiper.autoplay.timeout);\n swiper.autoplay.paused = true;\n if (speed === 0 || !swiper.params.autoplay.waitForTransition) {\n swiper.autoplay.paused = false;\n swiper.autoplay.run();\n } else {\n swiper.$wrapperEl[0].addEventListener('transitionend', swiper.autoplay.onTransitionEnd);\n swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.autoplay.onTransitionEnd);\n }\n },\n};\n\nvar Autoplay$1 = {\n name: 'autoplay',\n params: {\n autoplay: {\n enabled: false,\n delay: 3000,\n waitForTransition: true,\n disableOnInteraction: true,\n stopOnLastSlide: false,\n reverseDirection: false,\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n autoplay: {\n running: false,\n paused: false,\n run: Autoplay.run.bind(swiper),\n start: Autoplay.start.bind(swiper),\n stop: Autoplay.stop.bind(swiper),\n pause: Autoplay.pause.bind(swiper),\n onVisibilityChange() {\n if (document.visibilityState === 'hidden' && swiper.autoplay.running) {\n swiper.autoplay.pause();\n }\n if (document.visibilityState === 'visible' && swiper.autoplay.paused) {\n swiper.autoplay.run();\n swiper.autoplay.paused = false;\n }\n },\n onTransitionEnd(e) {\n if (!swiper || swiper.destroyed || !swiper.$wrapperEl) return;\n if (e.target !== this) return;\n swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.autoplay.onTransitionEnd);\n swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.autoplay.onTransitionEnd);\n swiper.autoplay.paused = false;\n if (!swiper.autoplay.running) {\n swiper.autoplay.stop();\n } else {\n swiper.autoplay.run();\n }\n },\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n if (swiper.params.autoplay.enabled) {\n swiper.autoplay.start();\n document.addEventListener('visibilitychange', swiper.autoplay.onVisibilityChange);\n }\n },\n beforeTransitionStart(speed, internal) {\n const swiper = this;\n if (swiper.autoplay.running) {\n if (internal || !swiper.params.autoplay.disableOnInteraction) {\n swiper.autoplay.pause(speed);\n } else {\n swiper.autoplay.stop();\n }\n }\n },\n sliderFirstMove() {\n const swiper = this;\n if (swiper.autoplay.running) {\n if (swiper.params.autoplay.disableOnInteraction) {\n swiper.autoplay.stop();\n } else {\n swiper.autoplay.pause();\n }\n }\n },\n touchEnd() {\n const swiper = this;\n if (swiper.params.cssMode && swiper.autoplay.paused && !swiper.params.autoplay.disableOnInteraction) {\n swiper.autoplay.run();\n }\n },\n destroy() {\n const swiper = this;\n if (swiper.autoplay.running) {\n swiper.autoplay.stop();\n }\n document.removeEventListener('visibilitychange', swiper.autoplay.onVisibilityChange);\n },\n },\n};\n\nconst Fade = {\n setTranslate() {\n const swiper = this;\n const { slides } = swiper;\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = swiper.slides.eq(i);\n const offset = $slideEl[0].swiperSlideOffset;\n let tx = -offset;\n if (!swiper.params.virtualTranslate) tx -= swiper.translate;\n let ty = 0;\n if (!swiper.isHorizontal()) {\n ty = tx;\n tx = 0;\n }\n const slideOpacity = swiper.params.fadeEffect.crossFade\n ? Math.max(1 - Math.abs($slideEl[0].progress), 0)\n : 1 + Math.min(Math.max($slideEl[0].progress, -1), 0);\n $slideEl\n .css({\n opacity: slideOpacity,\n })\n .transform(`translate3d(${tx}px, ${ty}px, 0px)`);\n }\n },\n setTransition(duration) {\n const swiper = this;\n const { slides, $wrapperEl } = swiper;\n slides.transition(duration);\n if (swiper.params.virtualTranslate && duration !== 0) {\n let eventTriggered = false;\n slides.transitionEnd(() => {\n if (eventTriggered) return;\n if (!swiper || swiper.destroyed) return;\n eventTriggered = true;\n swiper.animating = false;\n const triggerEvents = ['webkitTransitionEnd', 'transitionend'];\n for (let i = 0; i < triggerEvents.length; i += 1) {\n $wrapperEl.trigger(triggerEvents[i]);\n }\n });\n }\n },\n};\n\nvar EffectFade = {\n name: 'effect-fade',\n params: {\n fadeEffect: {\n crossFade: false,\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n fadeEffect: {\n setTranslate: Fade.setTranslate.bind(swiper),\n setTransition: Fade.setTransition.bind(swiper),\n },\n });\n },\n on: {\n beforeInit() {\n const swiper = this;\n if (swiper.params.effect !== 'fade') return;\n swiper.classNames.push(`${swiper.params.containerModifierClass}fade`);\n const overwriteParams = {\n slidesPerView: 1,\n slidesPerColumn: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n spaceBetween: 0,\n virtualTranslate: true,\n };\n Utils.extend(swiper.params, overwriteParams);\n Utils.extend(swiper.originalParams, overwriteParams);\n },\n setTranslate() {\n const swiper = this;\n if (swiper.params.effect !== 'fade') return;\n swiper.fadeEffect.setTranslate();\n },\n setTransition(duration) {\n const swiper = this;\n if (swiper.params.effect !== 'fade') return;\n swiper.fadeEffect.setTransition(duration);\n },\n },\n};\n\nconst Cube = {\n setTranslate() {\n const swiper = this;\n const {\n $el, $wrapperEl, slides, width: swiperWidth, height: swiperHeight, rtlTranslate: rtl, size: swiperSize,\n } = swiper;\n const params = swiper.params.cubeEffect;\n const isHorizontal = swiper.isHorizontal();\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n let wrapperRotate = 0;\n let $cubeShadowEl;\n if (params.shadow) {\n if (isHorizontal) {\n $cubeShadowEl = $wrapperEl.find('.swiper-cube-shadow');\n if ($cubeShadowEl.length === 0) {\n $cubeShadowEl = $('
');\n $wrapperEl.append($cubeShadowEl);\n }\n $cubeShadowEl.css({ height: `${swiperWidth}px` });\n } else {\n $cubeShadowEl = $el.find('.swiper-cube-shadow');\n if ($cubeShadowEl.length === 0) {\n $cubeShadowEl = $('
');\n $el.append($cubeShadowEl);\n }\n }\n }\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n let slideIndex = i;\n if (isVirtual) {\n slideIndex = parseInt($slideEl.attr('data-swiper-slide-index'), 10);\n }\n let slideAngle = slideIndex * 90;\n let round = Math.floor(slideAngle / 360);\n if (rtl) {\n slideAngle = -slideAngle;\n round = Math.floor(-slideAngle / 360);\n }\n const progress = Math.max(Math.min($slideEl[0].progress, 1), -1);\n let tx = 0;\n let ty = 0;\n let tz = 0;\n if (slideIndex % 4 === 0) {\n tx = -round * 4 * swiperSize;\n tz = 0;\n } else if ((slideIndex - 1) % 4 === 0) {\n tx = 0;\n tz = -round * 4 * swiperSize;\n } else if ((slideIndex - 2) % 4 === 0) {\n tx = swiperSize + (round * 4 * swiperSize);\n tz = swiperSize;\n } else if ((slideIndex - 3) % 4 === 0) {\n tx = -swiperSize;\n tz = (3 * swiperSize) + (swiperSize * 4 * round);\n }\n if (rtl) {\n tx = -tx;\n }\n\n if (!isHorizontal) {\n ty = tx;\n tx = 0;\n }\n\n const transform = `rotateX(${isHorizontal ? 0 : -slideAngle}deg) rotateY(${isHorizontal ? slideAngle : 0}deg) translate3d(${tx}px, ${ty}px, ${tz}px)`;\n if (progress <= 1 && progress > -1) {\n wrapperRotate = (slideIndex * 90) + (progress * 90);\n if (rtl) wrapperRotate = (-slideIndex * 90) - (progress * 90);\n }\n $slideEl.transform(transform);\n if (params.slideShadows) {\n // Set shadows\n let shadowBefore = isHorizontal ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');\n let shadowAfter = isHorizontal ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');\n if (shadowBefore.length === 0) {\n shadowBefore = $(`
`);\n $slideEl.append(shadowBefore);\n }\n if (shadowAfter.length === 0) {\n shadowAfter = $(`
`);\n $slideEl.append(shadowAfter);\n }\n if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0);\n if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0);\n }\n }\n $wrapperEl.css({\n '-webkit-transform-origin': `50% 50% -${swiperSize / 2}px`,\n '-moz-transform-origin': `50% 50% -${swiperSize / 2}px`,\n '-ms-transform-origin': `50% 50% -${swiperSize / 2}px`,\n 'transform-origin': `50% 50% -${swiperSize / 2}px`,\n });\n\n if (params.shadow) {\n if (isHorizontal) {\n $cubeShadowEl.transform(`translate3d(0px, ${(swiperWidth / 2) + params.shadowOffset}px, ${-swiperWidth / 2}px) rotateX(90deg) rotateZ(0deg) scale(${params.shadowScale})`);\n } else {\n const shadowAngle = Math.abs(wrapperRotate) - (Math.floor(Math.abs(wrapperRotate) / 90) * 90);\n const multiplier = 1.5 - (\n (Math.sin((shadowAngle * 2 * Math.PI) / 360) / 2)\n + (Math.cos((shadowAngle * 2 * Math.PI) / 360) / 2)\n );\n const scale1 = params.shadowScale;\n const scale2 = params.shadowScale / multiplier;\n const offset = params.shadowOffset;\n $cubeShadowEl.transform(`scale3d(${scale1}, 1, ${scale2}) translate3d(0px, ${(swiperHeight / 2) + offset}px, ${-swiperHeight / 2 / scale2}px) rotateX(-90deg)`);\n }\n }\n const zFactor = (Browser.isSafari || Browser.isWebView) ? (-swiperSize / 2) : 0;\n $wrapperEl\n .transform(`translate3d(0px,0,${zFactor}px) rotateX(${swiper.isHorizontal() ? 0 : wrapperRotate}deg) rotateY(${swiper.isHorizontal() ? -wrapperRotate : 0}deg)`);\n },\n setTransition(duration) {\n const swiper = this;\n const { $el, slides } = swiper;\n slides\n .transition(duration)\n .find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left')\n .transition(duration);\n if (swiper.params.cubeEffect.shadow && !swiper.isHorizontal()) {\n $el.find('.swiper-cube-shadow').transition(duration);\n }\n },\n};\n\nvar EffectCube = {\n name: 'effect-cube',\n params: {\n cubeEffect: {\n slideShadows: true,\n shadow: true,\n shadowOffset: 20,\n shadowScale: 0.94,\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n cubeEffect: {\n setTranslate: Cube.setTranslate.bind(swiper),\n setTransition: Cube.setTransition.bind(swiper),\n },\n });\n },\n on: {\n beforeInit() {\n const swiper = this;\n if (swiper.params.effect !== 'cube') return;\n swiper.classNames.push(`${swiper.params.containerModifierClass}cube`);\n swiper.classNames.push(`${swiper.params.containerModifierClass}3d`);\n const overwriteParams = {\n slidesPerView: 1,\n slidesPerColumn: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n resistanceRatio: 0,\n spaceBetween: 0,\n centeredSlides: false,\n virtualTranslate: true,\n };\n Utils.extend(swiper.params, overwriteParams);\n Utils.extend(swiper.originalParams, overwriteParams);\n },\n setTranslate() {\n const swiper = this;\n if (swiper.params.effect !== 'cube') return;\n swiper.cubeEffect.setTranslate();\n },\n setTransition(duration) {\n const swiper = this;\n if (swiper.params.effect !== 'cube') return;\n swiper.cubeEffect.setTransition(duration);\n },\n },\n};\n\nconst Flip = {\n setTranslate() {\n const swiper = this;\n const { slides, rtlTranslate: rtl } = swiper;\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n let progress = $slideEl[0].progress;\n if (swiper.params.flipEffect.limitRotation) {\n progress = Math.max(Math.min($slideEl[0].progress, 1), -1);\n }\n const offset = $slideEl[0].swiperSlideOffset;\n const rotate = -180 * progress;\n let rotateY = rotate;\n let rotateX = 0;\n let tx = -offset;\n let ty = 0;\n if (!swiper.isHorizontal()) {\n ty = tx;\n tx = 0;\n rotateX = -rotateY;\n rotateY = 0;\n } else if (rtl) {\n rotateY = -rotateY;\n }\n\n $slideEl[0].style.zIndex = -Math.abs(Math.round(progress)) + slides.length;\n\n if (swiper.params.flipEffect.slideShadows) {\n // Set shadows\n let shadowBefore = swiper.isHorizontal() ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');\n let shadowAfter = swiper.isHorizontal() ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');\n if (shadowBefore.length === 0) {\n shadowBefore = $(`
`);\n $slideEl.append(shadowBefore);\n }\n if (shadowAfter.length === 0) {\n shadowAfter = $(`
`);\n $slideEl.append(shadowAfter);\n }\n if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0);\n if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0);\n }\n $slideEl\n .transform(`translate3d(${tx}px, ${ty}px, 0px) rotateX(${rotateX}deg) rotateY(${rotateY}deg)`);\n }\n },\n setTransition(duration) {\n const swiper = this;\n const { slides, activeIndex, $wrapperEl } = swiper;\n slides\n .transition(duration)\n .find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left')\n .transition(duration);\n if (swiper.params.virtualTranslate && duration !== 0) {\n let eventTriggered = false;\n // eslint-disable-next-line\n slides.eq(activeIndex).transitionEnd(function onTransitionEnd() {\n if (eventTriggered) return;\n if (!swiper || swiper.destroyed) return;\n // if (!$(this).hasClass(swiper.params.slideActiveClass)) return;\n eventTriggered = true;\n swiper.animating = false;\n const triggerEvents = ['webkitTransitionEnd', 'transitionend'];\n for (let i = 0; i < triggerEvents.length; i += 1) {\n $wrapperEl.trigger(triggerEvents[i]);\n }\n });\n }\n },\n};\n\nvar EffectFlip = {\n name: 'effect-flip',\n params: {\n flipEffect: {\n slideShadows: true,\n limitRotation: true,\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n flipEffect: {\n setTranslate: Flip.setTranslate.bind(swiper),\n setTransition: Flip.setTransition.bind(swiper),\n },\n });\n },\n on: {\n beforeInit() {\n const swiper = this;\n if (swiper.params.effect !== 'flip') return;\n swiper.classNames.push(`${swiper.params.containerModifierClass}flip`);\n swiper.classNames.push(`${swiper.params.containerModifierClass}3d`);\n const overwriteParams = {\n slidesPerView: 1,\n slidesPerColumn: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n spaceBetween: 0,\n virtualTranslate: true,\n };\n Utils.extend(swiper.params, overwriteParams);\n Utils.extend(swiper.originalParams, overwriteParams);\n },\n setTranslate() {\n const swiper = this;\n if (swiper.params.effect !== 'flip') return;\n swiper.flipEffect.setTranslate();\n },\n setTransition(duration) {\n const swiper = this;\n if (swiper.params.effect !== 'flip') return;\n swiper.flipEffect.setTransition(duration);\n },\n },\n};\n\nconst Coverflow = {\n setTranslate() {\n const swiper = this;\n const {\n width: swiperWidth, height: swiperHeight, slides, $wrapperEl, slidesSizesGrid,\n } = swiper;\n const params = swiper.params.coverflowEffect;\n const isHorizontal = swiper.isHorizontal();\n const transform = swiper.translate;\n const center = isHorizontal ? -transform + (swiperWidth / 2) : -transform + (swiperHeight / 2);\n const rotate = isHorizontal ? params.rotate : -params.rotate;\n const translate = params.depth;\n // Each slide offset from center\n for (let i = 0, length = slides.length; i < length; i += 1) {\n const $slideEl = slides.eq(i);\n const slideSize = slidesSizesGrid[i];\n const slideOffset = $slideEl[0].swiperSlideOffset;\n const offsetMultiplier = ((center - slideOffset - (slideSize / 2)) / slideSize) * params.modifier;\n\n let rotateY = isHorizontal ? rotate * offsetMultiplier : 0;\n let rotateX = isHorizontal ? 0 : rotate * offsetMultiplier;\n // var rotateZ = 0\n let translateZ = -translate * Math.abs(offsetMultiplier);\n\n let stretch = params.stretch;\n // Allow percentage to make a relative stretch for responsive sliders\n if (typeof stretch === 'string' && stretch.indexOf('%') !== -1) {\n stretch = ((parseFloat(params.stretch) / 100) * slideSize);\n }\n let translateY = isHorizontal ? 0 : stretch * (offsetMultiplier);\n let translateX = isHorizontal ? stretch * (offsetMultiplier) : 0;\n\n let scale = 1 - (1 - params.scale) * Math.abs(offsetMultiplier);\n\n // Fix for ultra small values\n if (Math.abs(translateX) < 0.001) translateX = 0;\n if (Math.abs(translateY) < 0.001) translateY = 0;\n if (Math.abs(translateZ) < 0.001) translateZ = 0;\n if (Math.abs(rotateY) < 0.001) rotateY = 0;\n if (Math.abs(rotateX) < 0.001) rotateX = 0;\n if (Math.abs(scale) < 0.001) scale = 0;\n\n const slideTransform = `translate3d(${translateX}px,${translateY}px,${translateZ}px) rotateX(${rotateX}deg) rotateY(${rotateY}deg) scale(${scale})`;\n\n $slideEl.transform(slideTransform);\n $slideEl[0].style.zIndex = -Math.abs(Math.round(offsetMultiplier)) + 1;\n if (params.slideShadows) {\n // Set shadows\n let $shadowBeforeEl = isHorizontal ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');\n let $shadowAfterEl = isHorizontal ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');\n if ($shadowBeforeEl.length === 0) {\n $shadowBeforeEl = $(`
`);\n $slideEl.append($shadowBeforeEl);\n }\n if ($shadowAfterEl.length === 0) {\n $shadowAfterEl = $(`
`);\n $slideEl.append($shadowAfterEl);\n }\n if ($shadowBeforeEl.length) $shadowBeforeEl[0].style.opacity = offsetMultiplier > 0 ? offsetMultiplier : 0;\n if ($shadowAfterEl.length) $shadowAfterEl[0].style.opacity = (-offsetMultiplier) > 0 ? -offsetMultiplier : 0;\n }\n }\n\n // Set correct perspective for IE10\n if (Support.pointerEvents || Support.prefixedPointerEvents) {\n const ws = $wrapperEl[0].style;\n ws.perspectiveOrigin = `${center}px 50%`;\n }\n },\n setTransition(duration) {\n const swiper = this;\n swiper.slides\n .transition(duration)\n .find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left')\n .transition(duration);\n },\n};\n\nvar EffectCoverflow = {\n name: 'effect-coverflow',\n params: {\n coverflowEffect: {\n rotate: 50,\n stretch: 0,\n depth: 100,\n scale: 1,\n modifier: 1,\n slideShadows: true,\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n coverflowEffect: {\n setTranslate: Coverflow.setTranslate.bind(swiper),\n setTransition: Coverflow.setTransition.bind(swiper),\n },\n });\n },\n on: {\n beforeInit() {\n const swiper = this;\n if (swiper.params.effect !== 'coverflow') return;\n\n swiper.classNames.push(`${swiper.params.containerModifierClass}coverflow`);\n swiper.classNames.push(`${swiper.params.containerModifierClass}3d`);\n\n swiper.params.watchSlidesProgress = true;\n swiper.originalParams.watchSlidesProgress = true;\n },\n setTranslate() {\n const swiper = this;\n if (swiper.params.effect !== 'coverflow') return;\n swiper.coverflowEffect.setTranslate();\n },\n setTransition(duration) {\n const swiper = this;\n if (swiper.params.effect !== 'coverflow') return;\n swiper.coverflowEffect.setTransition(duration);\n },\n },\n};\n\nconst Thumbs = {\n init() {\n const swiper = this;\n const { thumbs: thumbsParams } = swiper.params;\n const SwiperClass = swiper.constructor;\n if (thumbsParams.swiper instanceof SwiperClass) {\n swiper.thumbs.swiper = thumbsParams.swiper;\n Utils.extend(swiper.thumbs.swiper.originalParams, {\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n });\n Utils.extend(swiper.thumbs.swiper.params, {\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n });\n } else if (Utils.isObject(thumbsParams.swiper)) {\n swiper.thumbs.swiper = new SwiperClass(Utils.extend({}, thumbsParams.swiper, {\n watchSlidesVisibility: true,\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n }));\n swiper.thumbs.swiperCreated = true;\n }\n swiper.thumbs.swiper.$el.addClass(swiper.params.thumbs.thumbsContainerClass);\n swiper.thumbs.swiper.on('tap', swiper.thumbs.onThumbClick);\n },\n onThumbClick() {\n const swiper = this;\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n const clickedIndex = thumbsSwiper.clickedIndex;\n const clickedSlide = thumbsSwiper.clickedSlide;\n if (clickedSlide && $(clickedSlide).hasClass(swiper.params.thumbs.slideThumbActiveClass)) return;\n if (typeof clickedIndex === 'undefined' || clickedIndex === null) return;\n let slideToIndex;\n if (thumbsSwiper.params.loop) {\n slideToIndex = parseInt($(thumbsSwiper.clickedSlide).attr('data-swiper-slide-index'), 10);\n } else {\n slideToIndex = clickedIndex;\n }\n if (swiper.params.loop) {\n let currentIndex = swiper.activeIndex;\n if (swiper.slides.eq(currentIndex).hasClass(swiper.params.slideDuplicateClass)) {\n swiper.loopFix();\n // eslint-disable-next-line\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n currentIndex = swiper.activeIndex;\n }\n const prevIndex = swiper.slides.eq(currentIndex).prevAll(`[data-swiper-slide-index=\"${slideToIndex}\"]`).eq(0).index();\n const nextIndex = swiper.slides.eq(currentIndex).nextAll(`[data-swiper-slide-index=\"${slideToIndex}\"]`).eq(0).index();\n if (typeof prevIndex === 'undefined') slideToIndex = nextIndex;\n else if (typeof nextIndex === 'undefined') slideToIndex = prevIndex;\n else if (nextIndex - currentIndex < currentIndex - prevIndex) slideToIndex = nextIndex;\n else slideToIndex = prevIndex;\n }\n swiper.slideTo(slideToIndex);\n },\n update(initial) {\n const swiper = this;\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n\n const slidesPerView = thumbsSwiper.params.slidesPerView === 'auto'\n ? thumbsSwiper.slidesPerViewDynamic()\n : thumbsSwiper.params.slidesPerView;\n\n const autoScrollOffset = swiper.params.thumbs.autoScrollOffset;\n const useOffset = autoScrollOffset && !thumbsSwiper.params.loop;\n if (swiper.realIndex !== thumbsSwiper.realIndex || useOffset) {\n let currentThumbsIndex = thumbsSwiper.activeIndex;\n let newThumbsIndex;\n let direction;\n if (thumbsSwiper.params.loop) {\n if (thumbsSwiper.slides.eq(currentThumbsIndex).hasClass(thumbsSwiper.params.slideDuplicateClass)) {\n thumbsSwiper.loopFix();\n // eslint-disable-next-line\n thumbsSwiper._clientLeft = thumbsSwiper.$wrapperEl[0].clientLeft;\n currentThumbsIndex = thumbsSwiper.activeIndex;\n }\n // Find actual thumbs index to slide to\n const prevThumbsIndex = thumbsSwiper.slides\n .eq(currentThumbsIndex)\n .prevAll(`[data-swiper-slide-index=\"${swiper.realIndex}\"]`).eq(0)\n .index();\n const nextThumbsIndex = thumbsSwiper.slides\n .eq(currentThumbsIndex)\n .nextAll(`[data-swiper-slide-index=\"${swiper.realIndex}\"]`).eq(0)\n .index();\n if (typeof prevThumbsIndex === 'undefined') newThumbsIndex = nextThumbsIndex;\n else if (typeof nextThumbsIndex === 'undefined') newThumbsIndex = prevThumbsIndex;\n else if (nextThumbsIndex - currentThumbsIndex === currentThumbsIndex - prevThumbsIndex) newThumbsIndex = currentThumbsIndex;\n else if (nextThumbsIndex - currentThumbsIndex < currentThumbsIndex - prevThumbsIndex) newThumbsIndex = nextThumbsIndex;\n else newThumbsIndex = prevThumbsIndex;\n direction = swiper.activeIndex > swiper.previousIndex ? 'next' : 'prev';\n } else {\n newThumbsIndex = swiper.realIndex;\n direction = newThumbsIndex > swiper.previousIndex ? 'next' : 'prev';\n }\n if (useOffset) {\n newThumbsIndex += direction === 'next' ? autoScrollOffset : -1 * autoScrollOffset;\n }\n\n if (thumbsSwiper.visibleSlidesIndexes && thumbsSwiper.visibleSlidesIndexes.indexOf(newThumbsIndex) < 0) {\n if (thumbsSwiper.params.centeredSlides) {\n if (newThumbsIndex > currentThumbsIndex) {\n newThumbsIndex = newThumbsIndex - Math.floor(slidesPerView / 2) + 1;\n } else {\n newThumbsIndex = newThumbsIndex + Math.floor(slidesPerView / 2) - 1;\n }\n } else if (newThumbsIndex > currentThumbsIndex) {\n newThumbsIndex = newThumbsIndex - slidesPerView + 1;\n }\n thumbsSwiper.slideTo(newThumbsIndex, initial ? 0 : undefined);\n }\n }\n\n // Activate thumbs\n let thumbsToActivate = 1;\n const thumbActiveClass = swiper.params.thumbs.slideThumbActiveClass;\n\n if (swiper.params.slidesPerView > 1 && !swiper.params.centeredSlides) {\n thumbsToActivate = swiper.params.slidesPerView;\n }\n\n if (!swiper.params.thumbs.multipleActiveThumbs) {\n thumbsToActivate = 1;\n }\n\n thumbsToActivate = Math.floor(thumbsToActivate);\n\n thumbsSwiper.slides.removeClass(thumbActiveClass);\n if (thumbsSwiper.params.loop || (thumbsSwiper.params.virtual && thumbsSwiper.params.virtual.enabled)) {\n for (let i = 0; i < thumbsToActivate; i += 1) {\n thumbsSwiper.$wrapperEl.children(`[data-swiper-slide-index=\"${swiper.realIndex + i}\"]`).addClass(thumbActiveClass);\n }\n } else {\n for (let i = 0; i < thumbsToActivate; i += 1) {\n thumbsSwiper.slides.eq(swiper.realIndex + i).addClass(thumbActiveClass);\n }\n }\n },\n};\nvar Thumbs$1 = {\n name: 'thumbs',\n params: {\n thumbs: {\n swiper: null,\n multipleActiveThumbs: true,\n autoScrollOffset: 0,\n slideThumbActiveClass: 'swiper-slide-thumb-active',\n thumbsContainerClass: 'swiper-container-thumbs',\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n thumbs: {\n swiper: null,\n init: Thumbs.init.bind(swiper),\n update: Thumbs.update.bind(swiper),\n onThumbClick: Thumbs.onThumbClick.bind(swiper),\n },\n });\n },\n on: {\n beforeInit() {\n const swiper = this;\n const { thumbs } = swiper.params;\n if (!thumbs || !thumbs.swiper) return;\n swiper.thumbs.init();\n swiper.thumbs.update(true);\n },\n slideChange() {\n const swiper = this;\n if (!swiper.thumbs.swiper) return;\n swiper.thumbs.update();\n },\n update() {\n const swiper = this;\n if (!swiper.thumbs.swiper) return;\n swiper.thumbs.update();\n },\n resize() {\n const swiper = this;\n if (!swiper.thumbs.swiper) return;\n swiper.thumbs.update();\n },\n observerUpdate() {\n const swiper = this;\n if (!swiper.thumbs.swiper) return;\n swiper.thumbs.update();\n },\n setTransition(duration) {\n const swiper = this;\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n thumbsSwiper.setTransition(duration);\n },\n beforeDestroy() {\n const swiper = this;\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n if (swiper.thumbs.swiperCreated && thumbsSwiper) {\n thumbsSwiper.destroy();\n }\n },\n },\n};\n\n// Swiper Class\n\nconst components = [\n Device$1,\n Support$1,\n Browser$1,\n Resize,\n Observer$1,\n Virtual$1,\n Keyboard$1,\n Mousewheel$1,\n Navigation$1,\n Pagination$1,\n Scrollbar$1,\n Parallax$1,\n Zoom$1,\n Lazy$1,\n Controller$1,\n A11y,\n History$1,\n HashNavigation$1,\n Autoplay$1,\n EffectFade,\n EffectCube,\n EffectFlip,\n EffectCoverflow,\n Thumbs$1\n];\n\nif (typeof Swiper.use === 'undefined') {\n Swiper.use = Swiper.Class.use;\n Swiper.installModule = Swiper.Class.installModule;\n}\n\nSwiper.use(components);\n\nexport default Swiper;\n//# sourceMappingURL=swiper.esm.bundle.js.map\n","(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('apexcharts/dist/apexcharts.min')) :\n typeof define === 'function' && define.amd ? define(['apexcharts/dist/apexcharts.min'], factory) :\n (global.VueApexCharts = factory(global.ApexCharts));\n}(this, (function (ApexCharts) { 'use strict';\n\n ApexCharts = ApexCharts && ApexCharts.hasOwnProperty('default') ? ApexCharts['default'] : ApexCharts;\n\n function _typeof(obj) {\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n }\n\n function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n }\n\n var ApexChartsComponent = {\n props: {\n options: {\n type: Object\n },\n type: {\n type: String\n },\n series: {\n type: Array,\n required: true,\n default: function _default() {\n return [];\n }\n },\n width: {\n default: \"100%\"\n },\n height: {\n default: \"auto\"\n }\n },\n data: function data() {\n return {\n chart: null\n };\n },\n beforeMount: function beforeMount() {\n window.ApexCharts = ApexCharts;\n },\n mounted: function mounted() {\n this.init();\n },\n created: function created() {\n var _this = this;\n\n this.$watch(\"options\", function (options) {\n if (!_this.chart && options) {\n _this.init();\n } else {\n _this.chart.updateOptions(_this.options);\n }\n });\n this.$watch(\"series\", function (series) {\n if (!_this.chart && series) {\n _this.init();\n } else {\n _this.chart.updateSeries(_this.series);\n }\n });\n var watched = [\"type\", \"width\", \"height\"];\n watched.forEach(function (prop) {\n _this.$watch(prop, function () {\n _this.refresh();\n });\n });\n },\n beforeDestroy: function beforeDestroy() {\n if (!this.chart) {\n return;\n }\n\n this.destroy();\n },\n render: function render(createElement) {\n return createElement(\"div\");\n },\n methods: {\n init: function init() {\n var _this2 = this;\n\n var newOptions = {\n chart: {\n type: this.type || this.options.chart.type || \"line\",\n height: this.height,\n width: this.width,\n events: {}\n },\n series: this.series\n };\n Object.keys(this.$listeners).forEach(function (evt) {\n newOptions.chart.events[evt] = _this2.$listeners[evt];\n });\n var config = this.extend(this.options, newOptions);\n this.chart = new ApexCharts(this.$el, config);\n return this.chart.render();\n },\n isObject: function isObject(item) {\n return item && _typeof(item) === \"object\" && !Array.isArray(item) && item != null;\n },\n extend: function extend(target, source) {\n var _this3 = this;\n\n if (typeof Object.assign !== \"function\") {\n (function () {\n Object.assign = function (target) {\n // We must check against these specific cases.\n if (target === undefined || target === null) {\n throw new TypeError(\"Cannot convert undefined or null to object\");\n }\n\n var output = Object(target);\n\n for (var index = 1; index < arguments.length; index++) {\n var _source = arguments[index];\n\n if (_source !== undefined && _source !== null) {\n for (var nextKey in _source) {\n if (_source.hasOwnProperty(nextKey)) {\n output[nextKey] = _source[nextKey];\n }\n }\n }\n }\n\n return output;\n };\n })();\n }\n\n var output = Object.assign({}, target);\n\n if (this.isObject(target) && this.isObject(source)) {\n Object.keys(source).forEach(function (key) {\n if (_this3.isObject(source[key])) {\n if (!(key in target)) {\n Object.assign(output, _defineProperty({}, key, source[key]));\n } else {\n output[key] = _this3.extend(target[key], source[key]);\n }\n } else {\n Object.assign(output, _defineProperty({}, key, source[key]));\n }\n });\n }\n\n return output;\n },\n refresh: function refresh() {\n this.destroy();\n return this.init();\n },\n destroy: function destroy() {\n this.chart.destroy();\n },\n updateSeries: function updateSeries(newSeries, animate) {\n return this.chart.updateSeries(newSeries, animate);\n },\n updateOptions: function updateOptions(newOptions, redrawPaths, animate, updateSyncedCharts) {\n return this.chart.updateOptions(newOptions, redrawPaths, animate, updateSyncedCharts);\n },\n toggleSeries: function toggleSeries(seriesName) {\n return this.chart.toggleSeries(seriesName);\n },\n showSeries: function showSeries(seriesName) {\n this.chart.showSeries(seriesName);\n },\n hideSeries: function hideSeries(seriesName) {\n this.chart.hideSeries(seriesName);\n },\n appendSeries: function appendSeries(newSeries, animate) {\n return this.chart.appendSeries(newSeries, animate);\n },\n resetSeries: function resetSeries() {\n this.chart.resetSeries();\n },\n zoomX: function zoomX(min, max) {\n this.chart.zoomX(min, max);\n },\n toggleDataPointSelection: function toggleDataPointSelection(seriesIndex, dataPointIndex) {\n this.chart.toggleDataPointSelection(seriesIndex, dataPointIndex);\n },\n appendData: function appendData(newData) {\n return this.chart.appendData(newData);\n },\n addText: function addText(options) {\n this.chart.addText(options);\n },\n addImage: function addImage(options) {\n this.chart.addImage(options);\n },\n addShape: function addShape(options) {\n this.chart.addShape(options);\n },\n dataURI: function dataURI() {\n return this.chart.dataURI();\n },\n setLocale: function setLocale(localeName) {\n return this.chart.setLocale(localeName);\n },\n addXaxisAnnotation: function addXaxisAnnotation(options, pushToMemory) {\n this.chart.addXaxisAnnotation(options, pushToMemory);\n },\n addYaxisAnnotation: function addYaxisAnnotation(options, pushToMemory) {\n this.chart.addYaxisAnnotation(options, pushToMemory);\n },\n addPointAnnotation: function addPointAnnotation(options, pushToMemory) {\n this.chart.addPointAnnotation(options, pushToMemory);\n },\n removeAnnotation: function removeAnnotation(id, options) {\n this.chart.removeAnnotation(id, options);\n },\n clearAnnotations: function clearAnnotations() {\n this.chart.clearAnnotations();\n }\n }\n };\n\n var VueApexCharts = ApexChartsComponent;\n window.ApexCharts = ApexCharts;\n\n VueApexCharts.install = function (Vue) {\n //adding a global method or property\n Vue.ApexCharts = ApexCharts;\n window.ApexCharts = ApexCharts; // add the instance method\n\n Object.defineProperty(Vue.prototype, '$apexcharts', {\n get: function get() {\n return ApexCharts;\n }\n });\n };\n\n return VueApexCharts;\n\n})));\n","\n/*!\n * vue-awesome-swiper v4.1.1\n * Copyright (c) Surmon. All rights reserved.\n * Released under the MIT License.\n * Surmon \n */\n\n(function(g,f){typeof exports==='object'&&typeof module!=='undefined'?f(exports,require('swiper'),require('vue')):typeof define==='function'&&define.amd?define(['exports','swiper','vue'],f):(g=g||self,f(g.VueAwesomeSwiper={},g.Swiper,g.Vue));}(this,(function(exports, SwiperClass, Vue){'use strict';SwiperClass=SwiperClass&&Object.prototype.hasOwnProperty.call(SwiperClass,'default')?SwiperClass['default']:SwiperClass;Vue=Vue&&Object.prototype.hasOwnProperty.call(Vue,'default')?Vue['default']:Vue;/**\r\n * @file vue-awesome-swiper\r\n * @module constants\r\n * @author Surmon \r\n */\r\nvar CoreNames;\r\n(function (CoreNames) {\r\n CoreNames[\"SwiperComponent\"] = \"Swiper\";\r\n CoreNames[\"SwiperSlideComponent\"] = \"SwiperSlide\";\r\n CoreNames[\"SwiperDirective\"] = \"swiper\";\r\n CoreNames[\"SwiperInstance\"] = \"$swiper\";\r\n})(CoreNames || (CoreNames = {}));\r\nvar DEFAULT_CLASSES = Object.freeze({\r\n containerClass: 'swiper-container',\r\n wrapperClass: 'swiper-wrapper',\r\n slideClass: 'swiper-slide'\r\n});\r\nvar ComponentEvents;\r\n(function (ComponentEvents) {\r\n ComponentEvents[\"Ready\"] = \"ready\";\r\n ComponentEvents[\"ClickSlide\"] = \"clickSlide\";\r\n})(ComponentEvents || (ComponentEvents = {}));\r\nvar ComponentPropNames;\r\n(function (ComponentPropNames) {\r\n ComponentPropNames[\"AutoUpdate\"] = \"autoUpdate\";\r\n ComponentPropNames[\"AutoDestroy\"] = \"autoDestroy\";\r\n ComponentPropNames[\"DeleteInstanceOnDestroy\"] = \"deleteInstanceOnDestroy\";\r\n ComponentPropNames[\"CleanupStylesOnDestroy\"] = \"cleanupStylesOnDestroy\";\r\n})(ComponentPropNames || (ComponentPropNames = {}));\r\n// https://swiperjs.com/api/#events\r\nvar SWIPER_EVENTS = [\r\n 'init',\r\n 'beforeDestroy',\r\n 'slideChange',\r\n 'slideChangeTransitionStart',\r\n 'slideChangeTransitionEnd',\r\n 'slideNextTransitionStart',\r\n 'slideNextTransitionEnd',\r\n 'slidePrevTransitionStart',\r\n 'slidePrevTransitionEnd',\r\n 'transitionStart',\r\n 'transitionEnd',\r\n 'touchStart',\r\n 'touchMove',\r\n 'touchMoveOpposite',\r\n 'sliderMove',\r\n 'touchEnd',\r\n 'click',\r\n 'tap',\r\n 'doubleTap',\r\n 'imagesReady',\r\n 'progress',\r\n 'reachBeginning',\r\n 'reachEnd',\r\n 'fromEdge',\r\n 'setTranslate',\r\n 'setTransition',\r\n 'resize',\r\n 'observerUpdate',\r\n 'beforeLoopFix',\r\n 'loopFix'\r\n];/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n\r\nfunction __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}/**\r\n * @file vue-awesome-swiper\r\n * @module utils\r\n * @author Surmon \r\n */\r\nvar kebabcase = function (string) {\r\n return string\r\n .replace(/([a-z])([A-Z])/g, '$1-$2')\r\n .replace(/\\s+/g, '-')\r\n .toLowerCase();\r\n};/**\r\n * @file vue-awesome-swiper\r\n * @module event\r\n * @author Surmon \r\n */\r\nvar handleClickSlideEvent = function (swiper, event, emit) {\r\n var _a, _b, _c;\r\n if (swiper && !(swiper.destroyed)) {\r\n var eventPath = ((_a = event.composedPath) === null || _a === void 0 ? void 0 : _a.call(event)) || event.path;\r\n if ((event === null || event === void 0 ? void 0 : event.target) && eventPath) {\r\n var slides_1 = Array.from(swiper.slides);\r\n var paths = Array.from(eventPath);\r\n // Click slide || slide[children]\r\n if (slides_1.includes(event.target) || paths.some(function (item) { return slides_1.includes(item); })) {\r\n var clickedIndex = swiper.clickedIndex;\r\n var reallyIndex = Number((_c = (_b = swiper.clickedSlide) === null || _b === void 0 ? void 0 : _b.dataset) === null || _c === void 0 ? void 0 : _c.swiperSlideIndex);\r\n var reallyIndexValue = Number.isInteger(reallyIndex) ? reallyIndex : null;\r\n emit(ComponentEvents.ClickSlide, clickedIndex, reallyIndexValue);\r\n emit(kebabcase(ComponentEvents.ClickSlide), clickedIndex, reallyIndexValue);\r\n }\r\n }\r\n }\r\n};\r\nvar bindSwiperEvents = function (swiper, emit) {\r\n SWIPER_EVENTS.forEach(function (eventName) {\r\n swiper.on(eventName, function () {\n var arguments$1 = arguments;\n\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments$1[_i];\r\n }\r\n emit.apply(void 0, __spreadArrays([eventName], args));\r\n var kebabcaseName = kebabcase(eventName);\r\n if (kebabcaseName !== eventName) {\r\n emit.apply(void 0, __spreadArrays([kebabcaseName], args));\r\n }\r\n });\r\n });\r\n};/**\r\n * @file vue-awesome-swiper\r\n * @module directive\r\n * @author Surmon \r\n */\r\nvar INSTANCE_NAME_KEY = 'instanceName';\r\nfunction getDirective(SwiperClass, globalOptions) {\r\n var getStandardisedOptionByAttrs = function (vnode, key) {\r\n var _a, _b, _c, _d;\r\n var value = (_b = (_a = vnode.data) === null || _a === void 0 ? void 0 : _a.attrs) === null || _b === void 0 ? void 0 : _b[key];\r\n return value !== undefined\r\n ? value\r\n : (_d = (_c = vnode.data) === null || _c === void 0 ? void 0 : _c.attrs) === null || _d === void 0 ? void 0 : _d[kebabcase(key)];\r\n };\r\n // Get swiper instace name in directive\r\n var getSwiperInstanceName = function (element, binding, vnode) {\r\n return (binding.arg ||\r\n getStandardisedOptionByAttrs(vnode, INSTANCE_NAME_KEY) ||\r\n element.id ||\r\n CoreNames.SwiperInstance);\r\n };\r\n var getSwiperInstance = function (element, binding, vnode) {\r\n var instanceName = getSwiperInstanceName(element, binding, vnode);\r\n return vnode.context[instanceName] || null;\r\n };\r\n var getSwipeOptions = function (binding) {\r\n return binding.value || globalOptions;\r\n };\r\n var getBooleanValueByInput = function (input) {\r\n return [true, undefined, null, ''].includes(input);\r\n };\r\n // Emit event in Vue directive\r\n var getEventEmiter = function (vnode) {\r\n var _a, _b;\r\n var handlers = ((_a = vnode.data) === null || _a === void 0 ? void 0 : _a.on) || ((_b = vnode.componentOptions) === null || _b === void 0 ? void 0 : _b.listeners);\r\n return function (name) {\n var arguments$1 = arguments;\n\r\n var args = [];\r\n for (var _i = 1; _i < arguments.length; _i++) {\r\n args[_i - 1] = arguments$1[_i];\r\n }\r\n var _a;\r\n var handle = (_a = handlers) === null || _a === void 0 ? void 0 : _a[name];\r\n if (handle) {\r\n handle.fns.apply(handle, args);\r\n }\r\n };\r\n };\r\n return {\r\n // Init\r\n bind: function (element, binding, vnode) {\r\n // auto class name\r\n if (element.className.indexOf(DEFAULT_CLASSES.containerClass) === -1) {\r\n element.className += ((element.className ? ' ' : '') + DEFAULT_CLASSES.containerClass);\r\n }\r\n // bind click event\r\n element.addEventListener('click', function (event) {\r\n var emitEvent = getEventEmiter(vnode);\r\n var swiper = getSwiperInstance(element, binding, vnode);\r\n handleClickSlideEvent(swiper, event, emitEvent);\r\n });\r\n },\r\n // DOM inserted\r\n inserted: function (element, binding, vnode) {\r\n var context = vnode.context;\r\n var swiperOptions = getSwipeOptions(binding);\r\n var instanceName = getSwiperInstanceName(element, binding, vnode);\r\n var emitEvent = getEventEmiter(vnode);\r\n var vueContext = context;\r\n var swiper = vueContext === null || vueContext === void 0 ? void 0 : vueContext[instanceName];\r\n // Swiper will destroy but not delete instance, when used \r\n if (!swiper || swiper.destroyed) {\r\n swiper = new SwiperClass(element, swiperOptions);\r\n vueContext[instanceName] = swiper;\r\n bindSwiperEvents(swiper, emitEvent);\r\n emitEvent(ComponentEvents.Ready, swiper);\r\n // MARK: Reinstance when the nexttick with \r\n // Vue.nextTick(instancing) | setTimeout(instancing)\r\n }\r\n },\r\n // On options changed or DOM updated\r\n componentUpdated: function (element, binding, vnode) {\r\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;\r\n var autoUpdate = getStandardisedOptionByAttrs(vnode, ComponentPropNames.AutoUpdate);\r\n if (getBooleanValueByInput(autoUpdate)) {\r\n var swiper = getSwiperInstance(element, binding, vnode);\r\n if (swiper) {\r\n var swiperOptions = getSwipeOptions(binding);\r\n var isLoop = swiperOptions.loop;\r\n if (isLoop) {\r\n (_b = (_a = swiper) === null || _a === void 0 ? void 0 : _a.loopDestroy) === null || _b === void 0 ? void 0 : _b.call(_a);\r\n }\r\n (_c = swiper === null || swiper === void 0 ? void 0 : swiper.update) === null || _c === void 0 ? void 0 : _c.call(swiper);\r\n (_e = (_d = swiper.navigation) === null || _d === void 0 ? void 0 : _d.update) === null || _e === void 0 ? void 0 : _e.call(_d);\r\n (_g = (_f = swiper.pagination) === null || _f === void 0 ? void 0 : _f.render) === null || _g === void 0 ? void 0 : _g.call(_f);\r\n (_j = (_h = swiper.pagination) === null || _h === void 0 ? void 0 : _h.update) === null || _j === void 0 ? void 0 : _j.call(_h);\r\n if (isLoop) {\r\n (_l = (_k = swiper) === null || _k === void 0 ? void 0 : _k.loopCreate) === null || _l === void 0 ? void 0 : _l.call(_k);\r\n (_m = swiper === null || swiper === void 0 ? void 0 : swiper.update) === null || _m === void 0 ? void 0 : _m.call(swiper);\r\n }\r\n }\r\n }\r\n },\r\n // Destroy this directive\r\n unbind: function (element, binding, vnode) {\r\n var _a;\r\n var autoDestroy = getStandardisedOptionByAttrs(vnode, ComponentPropNames.AutoDestroy);\r\n if (getBooleanValueByInput(autoDestroy)) {\r\n var swiper = getSwiperInstance(element, binding, vnode);\r\n if (swiper && swiper.initialized) {\r\n (_a = swiper === null || swiper === void 0 ? void 0 : swiper.destroy) === null || _a === void 0 ? void 0 : _a.call(swiper, getBooleanValueByInput(getStandardisedOptionByAttrs(vnode, ComponentPropNames.DeleteInstanceOnDestroy)), getBooleanValueByInput(getStandardisedOptionByAttrs(vnode, ComponentPropNames.CleanupStylesOnDestroy)));\r\n }\r\n }\r\n }\r\n };\r\n}/**\r\n * @file vue-awesome-swiper\r\n * @module SwiperComponent\r\n * @author Surmon \r\n */\r\nvar SlotNames;\r\n(function (SlotNames) {\r\n SlotNames[\"ParallaxBg\"] = \"parallax-bg\";\r\n SlotNames[\"Pagination\"] = \"pagination\";\r\n SlotNames[\"Scrollbar\"] = \"scrollbar\";\r\n SlotNames[\"PrevButton\"] = \"button-prev\";\r\n SlotNames[\"NextButton\"] = \"button-next\";\r\n})(SlotNames || (SlotNames = {}));\r\nfunction getSwiperComponent(SwiperClass) {\r\n var _a;\r\n return Vue.extend({\r\n name: CoreNames.SwiperComponent,\r\n props: (_a = {\r\n defaultOptions: {\r\n type: Object,\r\n required: false,\r\n default: function () { return ({}); }\r\n },\r\n // eslint-disable-next-line vue/require-default-prop\r\n options: {\r\n type: Object,\r\n required: false\r\n }\r\n },\r\n _a[ComponentPropNames.AutoUpdate] = {\r\n type: Boolean,\r\n default: true\r\n },\r\n // https://github.com/surmon-china/vue-awesome-swiper/pull/550/files\r\n _a[ComponentPropNames.AutoDestroy] = {\r\n type: Boolean,\r\n default: true\r\n },\r\n // https://github.com/surmon-china/vue-awesome-swiper/pull/388\r\n _a[ComponentPropNames.DeleteInstanceOnDestroy] = {\r\n type: Boolean,\r\n required: false,\r\n default: true\r\n },\r\n _a[ComponentPropNames.CleanupStylesOnDestroy] = {\r\n type: Boolean,\r\n required: false,\r\n default: true\r\n },\r\n _a),\r\n data: function () {\r\n var _a;\r\n return _a = {},\r\n _a[CoreNames.SwiperInstance] = null,\r\n _a;\r\n },\r\n computed: {\r\n swiperInstance: {\r\n cache: false,\r\n set: function (swiper) {\r\n this[CoreNames.SwiperInstance] = swiper;\r\n },\r\n get: function () {\r\n return this[CoreNames.SwiperInstance];\r\n }\r\n },\r\n swiperOptions: function () {\r\n return this.options || this.defaultOptions;\r\n },\r\n wrapperClass: function () {\r\n return this.swiperOptions.wrapperClass || DEFAULT_CLASSES.wrapperClass;\r\n }\r\n },\r\n methods: {\r\n // Feature: click event\r\n handleSwiperClick: function (event) {\r\n handleClickSlideEvent(this.swiperInstance, event, this.$emit.bind(this));\r\n },\r\n autoReLoopSwiper: function () {\r\n var _a, _b;\r\n if (this.swiperInstance && this.swiperOptions.loop) {\r\n // https://github.com/surmon-china/vue-awesome-swiper/issues/593\r\n // https://github.com/surmon-china/vue-awesome-swiper/issues/544\r\n // https://github.com/surmon-china/vue-awesome-swiper/pull/545/files\r\n var swiper = this.swiperInstance;\r\n (_a = swiper === null || swiper === void 0 ? void 0 : swiper.loopDestroy) === null || _a === void 0 ? void 0 : _a.call(swiper);\r\n (_b = swiper === null || swiper === void 0 ? void 0 : swiper.loopCreate) === null || _b === void 0 ? void 0 : _b.call(swiper);\r\n }\r\n },\r\n updateSwiper: function () {\r\n var _a, _b, _c, _d, _e, _f, _g, _h;\r\n if (this[ComponentPropNames.AutoUpdate] && this.swiperInstance) {\r\n this.autoReLoopSwiper();\r\n (_b = (_a = this.swiperInstance) === null || _a === void 0 ? void 0 : _a.update) === null || _b === void 0 ? void 0 : _b.call(_a);\r\n (_d = (_c = this.swiperInstance.navigation) === null || _c === void 0 ? void 0 : _c.update) === null || _d === void 0 ? void 0 : _d.call(_c);\r\n (_f = (_e = this.swiperInstance.pagination) === null || _e === void 0 ? void 0 : _e.render) === null || _f === void 0 ? void 0 : _f.call(_e);\r\n (_h = (_g = this.swiperInstance.pagination) === null || _g === void 0 ? void 0 : _g.update) === null || _h === void 0 ? void 0 : _h.call(_g);\r\n }\r\n },\r\n destroySwiper: function () {\r\n var _a, _b;\r\n if (this[ComponentPropNames.AutoDestroy] && this.swiperInstance) {\r\n // https://github.com/surmon-china/vue-awesome-swiper/pull/341\r\n // https://github.com/surmon-china/vue-awesome-swiper/issues/340\r\n if (this.swiperInstance.initialized) {\r\n (_b = (_a = this.swiperInstance) === null || _a === void 0 ? void 0 : _a.destroy) === null || _b === void 0 ? void 0 : _b.call(_a, this[ComponentPropNames.DeleteInstanceOnDestroy], this[ComponentPropNames.CleanupStylesOnDestroy]);\r\n }\r\n }\r\n },\r\n initSwiper: function () {\r\n this.swiperInstance = new SwiperClass(this.$el, this.swiperOptions);\r\n bindSwiperEvents(this.swiperInstance, this.$emit.bind(this));\r\n this.$emit(ComponentEvents.Ready, this.swiperInstance);\r\n }\r\n },\r\n mounted: function () {\r\n if (!this.swiperInstance) {\r\n this.initSwiper();\r\n }\r\n },\r\n // Update swiper when the parent component activated with `keep-alive`.\r\n activated: function () {\r\n this.updateSwiper();\r\n },\r\n updated: function () {\r\n this.updateSwiper();\r\n },\r\n beforeDestroy: function () {\r\n // https://github.com/surmon-china/vue-awesome-swiper/commit/2924a9d4d3d1cf51c0d46076410b1f804b2b8a43#diff-7f4e0261ac562c0f354cb91a1ca8864f\r\n this.$nextTick(this.destroySwiper);\r\n },\r\n render: function (createElement) {\r\n return createElement('div', {\r\n staticClass: DEFAULT_CLASSES.containerClass,\r\n on: {\r\n click: this.handleSwiperClick\r\n }\r\n }, [\r\n this.$slots[SlotNames.ParallaxBg],\r\n createElement('div', {\r\n class: this.wrapperClass\r\n }, this.$slots.default),\r\n this.$slots[SlotNames.Pagination],\r\n this.$slots[SlotNames.PrevButton],\r\n this.$slots[SlotNames.NextButton],\r\n this.$slots[SlotNames.Scrollbar]\r\n ]);\r\n }\r\n });\r\n}/**\r\n * @file vue-awesome-swiper\r\n * @module SwiperSlideComponent\r\n * @author Surmon \r\n */\r\nvar SwiperSlideComponent = Vue.extend({\r\n name: CoreNames.SwiperSlideComponent,\r\n computed: {\r\n slideClass: function () {\r\n var _a, _b;\r\n return ((_b = (_a = this.$parent) === null || _a === void 0 ? void 0 : _a.swiperOptions) === null || _b === void 0 ? void 0 : _b.slideClass) || DEFAULT_CLASSES.slideClass;\r\n }\r\n },\r\n methods: {\r\n update: function () {\r\n var _a;\r\n var parent = this.$parent;\r\n // https://github.com/surmon-china/vue-awesome-swiper/issues/632\r\n if (parent[ComponentPropNames.AutoUpdate]) {\r\n (_a = parent === null || parent === void 0 ? void 0 : parent.swiperInstance) === null || _a === void 0 ? void 0 : _a.update();\r\n }\r\n }\r\n },\r\n mounted: function () {\r\n this.update();\r\n },\r\n updated: function () {\r\n this.update();\r\n },\r\n render: function (createElement) {\r\n return createElement('div', {\r\n class: this.slideClass\r\n }, this.$slots.default);\r\n }\r\n});/**\r\n * @file vue-awesome-swiper\r\n * @module exporter\r\n * @author Surmon \r\n */\r\nvar getInstaller = function (SwiperClass) {\r\n var install = function (Vue, globalOptions) {\r\n if (install.installed)\r\n { return; }\r\n var SwiperComponent = getSwiperComponent(SwiperClass);\r\n if (globalOptions) {\r\n SwiperComponent.options.props.defaultOptions.default = function () { return globalOptions; };\r\n }\r\n Vue.component(CoreNames.SwiperComponent, SwiperComponent);\r\n Vue.component(CoreNames.SwiperSlideComponent, SwiperSlideComponent);\r\n Vue.directive(CoreNames.SwiperDirective, getDirective(SwiperClass, globalOptions));\r\n install.installed = true;\r\n };\r\n return install;\r\n};\r\nfunction exporter(SwiperClass) {\r\n var _a;\r\n return _a = {\r\n version: '4.1.1',\r\n install: getInstaller(SwiperClass),\r\n directive: getDirective(SwiperClass)\r\n },\r\n _a[CoreNames.SwiperComponent] = getSwiperComponent(SwiperClass),\r\n _a[CoreNames.SwiperSlideComponent] = SwiperSlideComponent,\r\n _a;\r\n}/**\r\n * @file vue-awesome-swiper\r\n * @module default-export\r\n * @author Surmon \r\n */\r\nvar VueAwesomeSwiper = exporter(SwiperClass);\r\nvar version = VueAwesomeSwiper.version;\r\nvar install = VueAwesomeSwiper.install;\r\nvar directive = VueAwesomeSwiper.directive;\r\nvar Swiper = VueAwesomeSwiper.Swiper;\r\nvar SwiperSlide = VueAwesomeSwiper.SwiperSlide;exports.Swiper=Swiper;exports.SwiperSlide=SwiperSlide;exports.default=VueAwesomeSwiper;exports.directive=directive;exports.install=install;exports.version=version;Object.defineProperty(exports,'__esModule',{value:true});})));","// style-loader: Adds some css to the DOM by adding a \n","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent(\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier /* server only */,\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options =\n typeof scriptExports === 'function' ? scriptExports.options : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) {\n // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n )\n }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","import { render, staticRenderFns } from \"./EditionBadge.vue?vue&type=template&id=27585133&scoped=true&\"\nimport script from \"./EditionBadge.vue?vue&type=script&lang=js&\"\nexport * from \"./EditionBadge.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EditionBadge.vue?vue&type=style&index=0&id=27585133&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"27585133\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"edition-badge\",class:_vm.cssClass},[_c('div',{staticClass:\"edition-badge-name\"},[_vm._v(_vm._s(_vm.name))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginCard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginCard.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PluginCard.vue?vue&type=template&id=28e904f0&scoped=true&\"\nimport script from \"./PluginCard.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginCard.vue?vue&type=script&lang=js&\"\nimport style0 from \"./PluginCard.vue?vue&type=style&index=0&id=28e904f0&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"28e904f0\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.plugin)?_c('router-link',{staticClass:\"plugin-card tw-relative tw-flex tw-flex-no-wrap tw-items-start tw-py-6 tw-border-b tw-border-gray-200 tw-border-solid tw-no-underline hover:tw-no-underline tw-text-gray-900\",attrs:{\"to\":'/' + _vm.plugin.handle,\"title\":_vm.plugin.name}},[_c('div',{staticClass:\"plugin-icon tw-mr-4 tw-w-16 tw-shrink-0\"},[(_vm.plugin.iconUrl)?[_c('img',{staticClass:\"tw-w-16 tw-h-16\",attrs:{\"src\":_vm.plugin.iconUrl}})]:[_c('div',{staticClass:\"tw-bg-gray-100 tw-w-16 tw-h-16 tw-flex tw-items-center tw-justify-center tw-rounded-full\"},[_c('c-icon',{staticClass:\"tw-w-7 tw-h-7 tw-text-gray-400\",attrs:{\"icon\":\"plug\"}})],1)]],2),_vm._v(\" \"),_c('div',[_c('div',{staticClass:\"plugin-details-header\"},[_c('div',{staticClass:\"plugin-name tw-flex tw-items-center\"},[_c('strong',[_vm._v(_vm._s(_vm.plugin.name))]),_vm._v(\" \"),(\n _vm.trialMode &&\n _vm.activeTrialPluginEdition &&\n _vm.plugin.editions.length > 1\n )?_c('edition-badge',{attrs:{\"name\":_vm.activeTrialPluginEdition.name}}):_vm._e()],1),_vm._v(\" \"),_c('div',[_vm._v(_vm._s(_vm.plugin.shortDescription))])]),_vm._v(\" \"),(_vm.plugin.abandoned)?[_c('div',{staticClass:\"error\"},[_vm._v(_vm._s(_vm._f(\"t\")('Abandoned','app')))])]:[_c('div',{staticClass:\"light\"},[_vm._v(\"\\n \"+_vm._s(_vm.fullPriceLabel)+\"\\n \")])],_vm._v(\" \"),(_vm.isPluginInstalled(_vm.plugin.handle))?_c('div',{staticClass:\"installed\",attrs:{\"data-icon\":\"check\"}}):_vm._e()],2)]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PluginGrid.vue?vue&type=template&id=06107ea4&\"\nimport script from \"./PluginGrid.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginGrid.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.plugins && _vm.plugins.length > 0)?_c('div',{staticClass:\"tw-grid-plugins tw-grid tw-grid-cols-1 sm:tw-grid-cols-2 xl:tw-grid-cols-3 2xl:tw-grid-cols-4 tw-gap-x-8\"},_vm._l((_vm.computedPlugins),function(plugin,key){return _c('div',{key:key,staticClass:\"tw-grid-box sm:tw-flex\"},[_c('plugin-card',{staticClass:\"sm:tw-flex-1\",attrs:{\"plugin\":plugin,\"trialMode\":_vm.trialMode}})],1)}),0):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=e0db0634&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"ps-container\"},[(!_vm.loading)?[_vm._l((_vm.featuredSections),function(featuredSection,key){return _c('div',{key:'featuredSection-' + key,staticClass:\"featured-section\"},[_c('div',{staticClass:\"tw-flex tw-items-baseline tw-justify-between\",class:{'tw-mt-8': key > 0}},[_c('h2',[_vm._v(_vm._s(featuredSection.title))]),_vm._v(\" \"),_c('router-link',{staticClass:\"tw-right\",attrs:{\"to\":'/featured/' + featuredSection.slug}},[_vm._v(_vm._s(_vm._f(\"t\")('See all','app'))+\"\\n \")])],1),_vm._v(\" \"),_c('plugin-grid',{attrs:{\"plugins\":featuredSection.plugins,\"auto-limit\":true}})],1)}),_vm._v(\" \"),(_vm.activeTrialPlugins.length > 0 || _vm.activeTrialsError)?[_c('h2',[_vm._v(_vm._s(_vm._f(\"t\")('Active Trials','app')))]),_vm._v(\" \"),(_vm.activeTrialPlugins.length > 0)?[_c('plugin-grid',{attrs:{\"plugins\":_vm.activeTrialPlugins,\"trialMode\":true}})]:_vm._e(),_vm._v(\" \"),(_vm.activeTrialsError)?[_c('div',{staticClass:\"tw-mb-8\"},[_c('p',{staticClass:\"error\"},[_vm._v(_vm._s(_vm.activeTrialsError))])])]:_vm._e()]:_vm._e()]:[_c('c-spinner')]],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./SortMenuBtn.vue?vue&type=template&id=8468b614&\"\nimport script from \"./SortMenuBtn.vue?vue&type=script&lang=js&\"\nexport * from \"./SortMenuBtn.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SortMenuBtn.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SortMenuBtn.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:\"sortMenuBtn\"},[_c('div',{staticClass:\"btn menubtn sortmenubtn\",attrs:{\"data-icon\":_vm.value.direction}},[_vm._v(\"\\n \"+_vm._s(_vm.menuLabel)+\"\\n \")]),_vm._v(\" \"),_c('div',{staticClass:\"menu\"},[_c('ul',{staticClass:\"padded sort-attributes\"},_vm._l((_vm.attributes),function(label,key){return _c('li',{key:key},[_c('a',{class:{sel: _vm.value.attribute == key},on:{\"click\":function($event){return _vm.selectAttribute(key)}}},[_vm._v(_vm._s(label))])])}),0),_vm._v(\" \"),_c('hr'),_vm._v(\" \"),_c('ul',{staticClass:\"padded sort-directions\"},_vm._l((_vm.directions),function(label,key){return _c('li',{key:key},[_c('a',{class:{sel: _vm.value.direction == key},on:{\"click\":function($event){return _vm.selectDirection(key)}}},[_vm._v(_vm._s(label))])])}),0)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./PluginIndexSort.vue?vue&type=template&id=32025476&\"\nimport script from \"./PluginIndexSort.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginIndexSort.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tw-flex tw-items-center tw-self-end\"},[(_vm.loading)?_c('c-spinner',{staticClass:\"tw-mr-4\"}):_vm._e(),_vm._v(\" \"),_c('sort-menu-btn',{attrs:{\"attributes\":_vm.sortMenuBtnAttributes,\"value\":_vm.options},on:{\"update:value\":function($event){_vm.options=$event}}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PluginIndex.vue?vue&type=template&id=452b9294&\"\nimport script from \"./PluginIndex.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginIndex.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginIndex.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginIndex.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"tw-border-b tw-border-solid tw-border-gray-200 tw-space-y-4 md:tw-space-y-0 md:tw-flex tw-justify-between tw-items-center\"},[_vm._t(\"header\"),_vm._v(\" \"),(!_vm.disableSorting)?[_c('plugin-index-sort',{staticClass:\"tw-pb-4\",attrs:{\"loading\":_vm.loading,\"orderBy\":_vm.orderBy,\"direction\":_vm.direction},on:{\"update:orderBy\":function($event){_vm.orderBy=$event},\"update:order-by\":function($event){_vm.orderBy=$event},\"update:direction\":function($event){_vm.direction=$event},\"change\":_vm.onOrderByChange}})]:_vm._e()],2),_vm._v(\" \"),_c('plugin-grid',{attrs:{\"plugins\":_vm.plugins}}),_vm._v(\" \"),(_vm.plugins.length === 0 && !_vm.loadingBottom && !_vm.loading)?_c('div',{staticClass:\"tw-mt-4\"},[_c('p',[_vm._v(_vm._s(_vm._f(\"t\")('No results.','app')))])]):_vm._e(),_vm._v(\" \"),(_vm.error)?_c('div',{staticClass:\"tw-my-4 tw-text-red-600\"},[_vm._v(_vm._s(_vm.error))]):_vm._e(),_vm._v(\" \"),(_vm.loadingBottom || (_vm.disableSorting && _vm.loading))?_c('c-spinner',{staticClass:\"tw-my-4\"}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./_id.vue?vue&type=template&id=02ca7891&\"\nimport script from \"./_id.vue?vue&type=script&lang=js&\"\nexport * from \"./_id.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_id.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_id.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.category)?_c('div',{staticClass:\"ps-container\"},[_c('plugin-index',{attrs:{\"action\":\"pluginStore/getPluginsByCategory\",\"requestData\":_vm.requestData,\"plugins\":_vm.plugins},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('h1',[_vm._v(_vm._s(_vm.category.title))])]},proxy:true}],null,false,3653016063)})],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","/**!\n * @fileOverview Kickass library to create and place poppers near their reference elements.\n * @version 1.16.1\n * @license\n * Copyright (c) 2016 Federico Zivolo and contributors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined';\n\nvar timeoutDuration = function () {\n var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox'];\n for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) {\n if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) {\n return 1;\n }\n }\n return 0;\n}();\n\nfunction microtaskDebounce(fn) {\n var called = false;\n return function () {\n if (called) {\n return;\n }\n called = true;\n window.Promise.resolve().then(function () {\n called = false;\n fn();\n });\n };\n}\n\nfunction taskDebounce(fn) {\n var scheduled = false;\n return function () {\n if (!scheduled) {\n scheduled = true;\n setTimeout(function () {\n scheduled = false;\n fn();\n }, timeoutDuration);\n }\n };\n}\n\nvar supportsMicroTasks = isBrowser && window.Promise;\n\n/**\n* Create a debounced version of a method, that's asynchronously deferred\n* but called in the minimum time possible.\n*\n* @method\n* @memberof Popper.Utils\n* @argument {Function} fn\n* @returns {Function}\n*/\nvar debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce;\n\n/**\n * Check if the given variable is a function\n * @method\n * @memberof Popper.Utils\n * @argument {Any} functionToCheck - variable to check\n * @returns {Boolean} answer to: is a function?\n */\nfunction isFunction(functionToCheck) {\n var getType = {};\n return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';\n}\n\n/**\n * Get CSS computed property of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Eement} element\n * @argument {String} property\n */\nfunction getStyleComputedProperty(element, property) {\n if (element.nodeType !== 1) {\n return [];\n }\n // NOTE: 1 DOM access here\n var window = element.ownerDocument.defaultView;\n var css = window.getComputedStyle(element, null);\n return property ? css[property] : css;\n}\n\n/**\n * Returns the parentNode or the host of the element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} parent\n */\nfunction getParentNode(element) {\n if (element.nodeName === 'HTML') {\n return element;\n }\n return element.parentNode || element.host;\n}\n\n/**\n * Returns the scrolling parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} scroll parent\n */\nfunction getScrollParent(element) {\n // Return body, `getScroll` will take care to get the correct `scrollTop` from it\n if (!element) {\n return document.body;\n }\n\n switch (element.nodeName) {\n case 'HTML':\n case 'BODY':\n return element.ownerDocument.body;\n case '#document':\n return element.body;\n }\n\n // Firefox want us to check `-x` and `-y` variations as well\n\n var _getStyleComputedProp = getStyleComputedProperty(element),\n overflow = _getStyleComputedProp.overflow,\n overflowX = _getStyleComputedProp.overflowX,\n overflowY = _getStyleComputedProp.overflowY;\n\n if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) {\n return element;\n }\n\n return getScrollParent(getParentNode(element));\n}\n\n/**\n * Returns the reference node of the reference object, or the reference object itself.\n * @method\n * @memberof Popper.Utils\n * @param {Element|Object} reference - the reference element (the popper will be relative to this)\n * @returns {Element} parent\n */\nfunction getReferenceNode(reference) {\n return reference && reference.referenceNode ? reference.referenceNode : reference;\n}\n\nvar isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode);\nvar isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent);\n\n/**\n * Determines if the browser is Internet Explorer\n * @method\n * @memberof Popper.Utils\n * @param {Number} version to check\n * @returns {Boolean} isIE\n */\nfunction isIE(version) {\n if (version === 11) {\n return isIE11;\n }\n if (version === 10) {\n return isIE10;\n }\n return isIE11 || isIE10;\n}\n\n/**\n * Returns the offset parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} offset parent\n */\nfunction getOffsetParent(element) {\n if (!element) {\n return document.documentElement;\n }\n\n var noOffsetParent = isIE(10) ? document.body : null;\n\n // NOTE: 1 DOM access here\n var offsetParent = element.offsetParent || null;\n // Skip hidden elements which don't have an offsetParent\n while (offsetParent === noOffsetParent && element.nextElementSibling) {\n offsetParent = (element = element.nextElementSibling).offsetParent;\n }\n\n var nodeName = offsetParent && offsetParent.nodeName;\n\n if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {\n return element ? element.ownerDocument.documentElement : document.documentElement;\n }\n\n // .offsetParent will return the closest TH, TD or TABLE in case\n // no offsetParent is present, I hate this job...\n if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') {\n return getOffsetParent(offsetParent);\n }\n\n return offsetParent;\n}\n\nfunction isOffsetContainer(element) {\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY') {\n return false;\n }\n return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element;\n}\n\n/**\n * Finds the root node (document, shadowDOM root) of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} node\n * @returns {Element} root node\n */\nfunction getRoot(node) {\n if (node.parentNode !== null) {\n return getRoot(node.parentNode);\n }\n\n return node;\n}\n\n/**\n * Finds the offset parent common to the two provided nodes\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element1\n * @argument {Element} element2\n * @returns {Element} common offset parent\n */\nfunction findCommonOffsetParent(element1, element2) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) {\n return document.documentElement;\n }\n\n // Here we make sure to give as \"start\" the element that comes first in the DOM\n var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING;\n var start = order ? element1 : element2;\n var end = order ? element2 : element1;\n\n // Get common ancestor container\n var range = document.createRange();\n range.setStart(start, 0);\n range.setEnd(end, 0);\n var commonAncestorContainer = range.commonAncestorContainer;\n\n // Both nodes are inside #document\n\n if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) {\n if (isOffsetContainer(commonAncestorContainer)) {\n return commonAncestorContainer;\n }\n\n return getOffsetParent(commonAncestorContainer);\n }\n\n // one of the nodes is inside shadowDOM, find which one\n var element1root = getRoot(element1);\n if (element1root.host) {\n return findCommonOffsetParent(element1root.host, element2);\n } else {\n return findCommonOffsetParent(element1, getRoot(element2).host);\n }\n}\n\n/**\n * Gets the scroll value of the given element in the given side (top and left)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {String} side `top` or `left`\n * @returns {number} amount of scrolled pixels\n */\nfunction getScroll(element) {\n var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top';\n\n var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft';\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n var html = element.ownerDocument.documentElement;\n var scrollingElement = element.ownerDocument.scrollingElement || html;\n return scrollingElement[upperSide];\n }\n\n return element[upperSide];\n}\n\n/*\n * Sum or subtract the element scroll values (left and top) from a given rect object\n * @method\n * @memberof Popper.Utils\n * @param {Object} rect - Rect object you want to change\n * @param {HTMLElement} element - The element from the function reads the scroll values\n * @param {Boolean} subtract - set to true if you want to subtract the scroll values\n * @return {Object} rect - The modifier rect object\n */\nfunction includeScroll(rect, element) {\n var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n var modifier = subtract ? -1 : 1;\n rect.top += scrollTop * modifier;\n rect.bottom += scrollTop * modifier;\n rect.left += scrollLeft * modifier;\n rect.right += scrollLeft * modifier;\n return rect;\n}\n\n/*\n * Helper to detect borders of a given element\n * @method\n * @memberof Popper.Utils\n * @param {CSSStyleDeclaration} styles\n * Result of `getStyleComputedProperty` on the given element\n * @param {String} axis - `x` or `y`\n * @return {number} borders - The borders size of the given axis\n */\n\nfunction getBordersSize(styles, axis) {\n var sideA = axis === 'x' ? 'Left' : 'Top';\n var sideB = sideA === 'Left' ? 'Right' : 'Bottom';\n\n return parseFloat(styles['border' + sideA + 'Width']) + parseFloat(styles['border' + sideB + 'Width']);\n}\n\nfunction getSize(axis, body, html, computedStyle) {\n return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? parseInt(html['offset' + axis]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')]) : 0);\n}\n\nfunction getWindowSizes(document) {\n var body = document.body;\n var html = document.documentElement;\n var computedStyle = isIE(10) && getComputedStyle(html);\n\n return {\n height: getSize('Height', body, html, computedStyle),\n width: getSize('Width', body, html, computedStyle)\n };\n}\n\nvar classCallCheck = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\n\n\n\n\nvar defineProperty = function (obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n};\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\n/**\n * Given element offsets, generate an output similar to getBoundingClientRect\n * @method\n * @memberof Popper.Utils\n * @argument {Object} offsets\n * @returns {Object} ClientRect like output\n */\nfunction getClientRect(offsets) {\n return _extends({}, offsets, {\n right: offsets.left + offsets.width,\n bottom: offsets.top + offsets.height\n });\n}\n\n/**\n * Get bounding client rect of given element\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} element\n * @return {Object} client rect\n */\nfunction getBoundingClientRect(element) {\n var rect = {};\n\n // IE10 10 FIX: Please, don't ask, the element isn't\n // considered in DOM in some circumstances...\n // This isn't reproducible in IE10 compatibility mode of IE11\n try {\n if (isIE(10)) {\n rect = element.getBoundingClientRect();\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n rect.top += scrollTop;\n rect.left += scrollLeft;\n rect.bottom += scrollTop;\n rect.right += scrollLeft;\n } else {\n rect = element.getBoundingClientRect();\n }\n } catch (e) {}\n\n var result = {\n left: rect.left,\n top: rect.top,\n width: rect.right - rect.left,\n height: rect.bottom - rect.top\n };\n\n // subtract scrollbar size from sizes\n var sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {};\n var width = sizes.width || element.clientWidth || result.width;\n var height = sizes.height || element.clientHeight || result.height;\n\n var horizScrollbar = element.offsetWidth - width;\n var vertScrollbar = element.offsetHeight - height;\n\n // if an hypothetical scrollbar is detected, we must be sure it's not a `border`\n // we make this check conditional for performance reasons\n if (horizScrollbar || vertScrollbar) {\n var styles = getStyleComputedProperty(element);\n horizScrollbar -= getBordersSize(styles, 'x');\n vertScrollbar -= getBordersSize(styles, 'y');\n\n result.width -= horizScrollbar;\n result.height -= vertScrollbar;\n }\n\n return getClientRect(result);\n}\n\nfunction getOffsetRectRelativeToArbitraryNode(children, parent) {\n var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var isIE10 = isIE(10);\n var isHTML = parent.nodeName === 'HTML';\n var childrenRect = getBoundingClientRect(children);\n var parentRect = getBoundingClientRect(parent);\n var scrollParent = getScrollParent(children);\n\n var styles = getStyleComputedProperty(parent);\n var borderTopWidth = parseFloat(styles.borderTopWidth);\n var borderLeftWidth = parseFloat(styles.borderLeftWidth);\n\n // In cases where the parent is fixed, we must ignore negative scroll in offset calc\n if (fixedPosition && isHTML) {\n parentRect.top = Math.max(parentRect.top, 0);\n parentRect.left = Math.max(parentRect.left, 0);\n }\n var offsets = getClientRect({\n top: childrenRect.top - parentRect.top - borderTopWidth,\n left: childrenRect.left - parentRect.left - borderLeftWidth,\n width: childrenRect.width,\n height: childrenRect.height\n });\n offsets.marginTop = 0;\n offsets.marginLeft = 0;\n\n // Subtract margins of documentElement in case it's being used as parent\n // we do this only on HTML because it's the only element that behaves\n // differently when margins are applied to it. The margins are included in\n // the box of the documentElement, in the other cases not.\n if (!isIE10 && isHTML) {\n var marginTop = parseFloat(styles.marginTop);\n var marginLeft = parseFloat(styles.marginLeft);\n\n offsets.top -= borderTopWidth - marginTop;\n offsets.bottom -= borderTopWidth - marginTop;\n offsets.left -= borderLeftWidth - marginLeft;\n offsets.right -= borderLeftWidth - marginLeft;\n\n // Attach marginTop and marginLeft because in some circumstances we may need them\n offsets.marginTop = marginTop;\n offsets.marginLeft = marginLeft;\n }\n\n if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') {\n offsets = includeScroll(offsets, parent);\n }\n\n return offsets;\n}\n\nfunction getViewportOffsetRectRelativeToArtbitraryNode(element) {\n var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var html = element.ownerDocument.documentElement;\n var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);\n var width = Math.max(html.clientWidth, window.innerWidth || 0);\n var height = Math.max(html.clientHeight, window.innerHeight || 0);\n\n var scrollTop = !excludeScroll ? getScroll(html) : 0;\n var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;\n\n var offset = {\n top: scrollTop - relativeOffset.top + relativeOffset.marginTop,\n left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft,\n width: width,\n height: height\n };\n\n return getClientRect(offset);\n}\n\n/**\n * Check if the given element is fixed or is inside a fixed parent\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {Element} customContainer\n * @returns {Boolean} answer to \"isFixed?\"\n */\nfunction isFixed(element) {\n var nodeName = element.nodeName;\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n return false;\n }\n if (getStyleComputedProperty(element, 'position') === 'fixed') {\n return true;\n }\n var parentNode = getParentNode(element);\n if (!parentNode) {\n return false;\n }\n return isFixed(parentNode);\n}\n\n/**\n * Finds the first parent of an element that has a transformed property defined\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} first transformed parent or documentElement\n */\n\nfunction getFixedPositionOffsetParent(element) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element || !element.parentElement || isIE()) {\n return document.documentElement;\n }\n var el = element.parentElement;\n while (el && getStyleComputedProperty(el, 'transform') === 'none') {\n el = el.parentElement;\n }\n return el || document.documentElement;\n}\n\n/**\n * Computed the boundaries limits and return them\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} popper\n * @param {HTMLElement} reference\n * @param {number} padding\n * @param {HTMLElement} boundariesElement - Element used to define the boundaries\n * @param {Boolean} fixedPosition - Is in fixed position mode\n * @returns {Object} Coordinates of the boundaries\n */\nfunction getBoundaries(popper, reference, padding, boundariesElement) {\n var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n\n // NOTE: 1 DOM access here\n\n var boundaries = { top: 0, left: 0 };\n var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n\n // Handle viewport case\n if (boundariesElement === 'viewport') {\n boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);\n } else {\n // Handle other cases based on DOM element used as boundaries\n var boundariesNode = void 0;\n if (boundariesElement === 'scrollParent') {\n boundariesNode = getScrollParent(getParentNode(reference));\n if (boundariesNode.nodeName === 'BODY') {\n boundariesNode = popper.ownerDocument.documentElement;\n }\n } else if (boundariesElement === 'window') {\n boundariesNode = popper.ownerDocument.documentElement;\n } else {\n boundariesNode = boundariesElement;\n }\n\n var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition);\n\n // In case of HTML, we need a different computation\n if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {\n var _getWindowSizes = getWindowSizes(popper.ownerDocument),\n height = _getWindowSizes.height,\n width = _getWindowSizes.width;\n\n boundaries.top += offsets.top - offsets.marginTop;\n boundaries.bottom = height + offsets.top;\n boundaries.left += offsets.left - offsets.marginLeft;\n boundaries.right = width + offsets.left;\n } else {\n // for all the other DOM elements, this one is good\n boundaries = offsets;\n }\n }\n\n // Add paddings\n padding = padding || 0;\n var isPaddingNumber = typeof padding === 'number';\n boundaries.left += isPaddingNumber ? padding : padding.left || 0;\n boundaries.top += isPaddingNumber ? padding : padding.top || 0;\n boundaries.right -= isPaddingNumber ? padding : padding.right || 0;\n boundaries.bottom -= isPaddingNumber ? padding : padding.bottom || 0;\n\n return boundaries;\n}\n\nfunction getArea(_ref) {\n var width = _ref.width,\n height = _ref.height;\n\n return width * height;\n}\n\n/**\n * Utility used to transform the `auto` placement to the placement with more\n * available space.\n * @method\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) {\n var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;\n\n if (placement.indexOf('auto') === -1) {\n return placement;\n }\n\n var boundaries = getBoundaries(popper, reference, padding, boundariesElement);\n\n var rects = {\n top: {\n width: boundaries.width,\n height: refRect.top - boundaries.top\n },\n right: {\n width: boundaries.right - refRect.right,\n height: boundaries.height\n },\n bottom: {\n width: boundaries.width,\n height: boundaries.bottom - refRect.bottom\n },\n left: {\n width: refRect.left - boundaries.left,\n height: boundaries.height\n }\n };\n\n var sortedAreas = Object.keys(rects).map(function (key) {\n return _extends({\n key: key\n }, rects[key], {\n area: getArea(rects[key])\n });\n }).sort(function (a, b) {\n return b.area - a.area;\n });\n\n var filteredAreas = sortedAreas.filter(function (_ref2) {\n var width = _ref2.width,\n height = _ref2.height;\n return width >= popper.clientWidth && height >= popper.clientHeight;\n });\n\n var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key;\n\n var variation = placement.split('-')[1];\n\n return computedPlacement + (variation ? '-' + variation : '');\n}\n\n/**\n * Get offsets to the reference element\n * @method\n * @memberof Popper.Utils\n * @param {Object} state\n * @param {Element} popper - the popper element\n * @param {Element} reference - the reference element (the popper will be relative to this)\n * @param {Element} fixedPosition - is in fixed position mode\n * @returns {Object} An object containing the offsets which will be applied to the popper\n */\nfunction getReferenceOffsets(state, popper, reference) {\n var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);\n}\n\n/**\n * Get the outer sizes of the given element (offset size + margins)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Object} object containing width and height properties\n */\nfunction getOuterSizes(element) {\n var window = element.ownerDocument.defaultView;\n var styles = window.getComputedStyle(element);\n var x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0);\n var y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0);\n var result = {\n width: element.offsetWidth + y,\n height: element.offsetHeight + x\n };\n return result;\n}\n\n/**\n * Get the opposite placement of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement\n * @returns {String} flipped placement\n */\nfunction getOppositePlacement(placement) {\n var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}\n\n/**\n * Get offsets to the popper\n * @method\n * @memberof Popper.Utils\n * @param {Object} position - CSS position the Popper will get applied\n * @param {HTMLElement} popper - the popper element\n * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this)\n * @param {String} placement - one of the valid placement options\n * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper\n */\nfunction getPopperOffsets(popper, referenceOffsets, placement) {\n placement = placement.split('-')[0];\n\n // Get popper node sizes\n var popperRect = getOuterSizes(popper);\n\n // Add position, width and height to our offsets object\n var popperOffsets = {\n width: popperRect.width,\n height: popperRect.height\n };\n\n // depending by the popper placement we have to compute its offsets slightly differently\n var isHoriz = ['right', 'left'].indexOf(placement) !== -1;\n var mainSide = isHoriz ? 'top' : 'left';\n var secondarySide = isHoriz ? 'left' : 'top';\n var measurement = isHoriz ? 'height' : 'width';\n var secondaryMeasurement = !isHoriz ? 'height' : 'width';\n\n popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2;\n if (placement === secondarySide) {\n popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement];\n } else {\n popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)];\n }\n\n return popperOffsets;\n}\n\n/**\n * Mimics the `find` method of Array\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction find(arr, check) {\n // use native find if supported\n if (Array.prototype.find) {\n return arr.find(check);\n }\n\n // use `filter` to obtain the same behavior of `find`\n return arr.filter(check)[0];\n}\n\n/**\n * Return the index of the matching object\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction findIndex(arr, prop, value) {\n // use native findIndex if supported\n if (Array.prototype.findIndex) {\n return arr.findIndex(function (cur) {\n return cur[prop] === value;\n });\n }\n\n // use `find` + `indexOf` if `findIndex` isn't supported\n var match = find(arr, function (obj) {\n return obj[prop] === value;\n });\n return arr.indexOf(match);\n}\n\n/**\n * Loop trough the list of modifiers and run them in order,\n * each of them will then edit the data object.\n * @method\n * @memberof Popper.Utils\n * @param {dataObject} data\n * @param {Array} modifiers\n * @param {String} ends - Optional modifier name used as stopper\n * @returns {dataObject}\n */\nfunction runModifiers(modifiers, data, ends) {\n var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends));\n\n modifiersToRun.forEach(function (modifier) {\n if (modifier['function']) {\n // eslint-disable-line dot-notation\n console.warn('`modifier.function` is deprecated, use `modifier.fn`!');\n }\n var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation\n if (modifier.enabled && isFunction(fn)) {\n // Add properties to offsets to make them a complete clientRect object\n // we do this before each modifier to make sure the previous one doesn't\n // mess with these values\n data.offsets.popper = getClientRect(data.offsets.popper);\n data.offsets.reference = getClientRect(data.offsets.reference);\n\n data = fn(data, modifier);\n }\n });\n\n return data;\n}\n\n/**\n * Updates the position of the popper, computing the new offsets and applying\n * the new style.
\n * Prefer `scheduleUpdate` over `update` because of performance reasons.\n * @method\n * @memberof Popper\n */\nfunction update() {\n // if popper is destroyed, don't perform any further update\n if (this.state.isDestroyed) {\n return;\n }\n\n var data = {\n instance: this,\n styles: {},\n arrowStyles: {},\n attributes: {},\n flipped: false,\n offsets: {}\n };\n\n // compute reference element offsets\n data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n data.placement = computeAutoPlacement(this.options.placement, data.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding);\n\n // store the computed placement inside `originalPlacement`\n data.originalPlacement = data.placement;\n\n data.positionFixed = this.options.positionFixed;\n\n // compute the popper offsets\n data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement);\n\n data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute';\n\n // run the modifiers\n data = runModifiers(this.modifiers, data);\n\n // the first `update` will call `onCreate` callback\n // the other ones will call `onUpdate` callback\n if (!this.state.isCreated) {\n this.state.isCreated = true;\n this.options.onCreate(data);\n } else {\n this.options.onUpdate(data);\n }\n}\n\n/**\n * Helper used to know if the given modifier is enabled.\n * @method\n * @memberof Popper.Utils\n * @returns {Boolean}\n */\nfunction isModifierEnabled(modifiers, modifierName) {\n return modifiers.some(function (_ref) {\n var name = _ref.name,\n enabled = _ref.enabled;\n return enabled && name === modifierName;\n });\n}\n\n/**\n * Get the prefixed supported property name\n * @method\n * @memberof Popper.Utils\n * @argument {String} property (camelCase)\n * @returns {String} prefixed property (camelCase or PascalCase, depending on the vendor prefix)\n */\nfunction getSupportedPropertyName(property) {\n var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O'];\n var upperProp = property.charAt(0).toUpperCase() + property.slice(1);\n\n for (var i = 0; i < prefixes.length; i++) {\n var prefix = prefixes[i];\n var toCheck = prefix ? '' + prefix + upperProp : property;\n if (typeof document.body.style[toCheck] !== 'undefined') {\n return toCheck;\n }\n }\n return null;\n}\n\n/**\n * Destroys the popper.\n * @method\n * @memberof Popper\n */\nfunction destroy() {\n this.state.isDestroyed = true;\n\n // touch DOM only if `applyStyle` modifier is enabled\n if (isModifierEnabled(this.modifiers, 'applyStyle')) {\n this.popper.removeAttribute('x-placement');\n this.popper.style.position = '';\n this.popper.style.top = '';\n this.popper.style.left = '';\n this.popper.style.right = '';\n this.popper.style.bottom = '';\n this.popper.style.willChange = '';\n this.popper.style[getSupportedPropertyName('transform')] = '';\n }\n\n this.disableEventListeners();\n\n // remove the popper if user explicitly asked for the deletion on destroy\n // do not use `remove` because IE11 doesn't support it\n if (this.options.removeOnDestroy) {\n this.popper.parentNode.removeChild(this.popper);\n }\n return this;\n}\n\n/**\n * Get the window associated with the element\n * @argument {Element} element\n * @returns {Window}\n */\nfunction getWindow(element) {\n var ownerDocument = element.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView : window;\n}\n\nfunction attachToScrollParents(scrollParent, event, callback, scrollParents) {\n var isBody = scrollParent.nodeName === 'BODY';\n var target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent;\n target.addEventListener(event, callback, { passive: true });\n\n if (!isBody) {\n attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents);\n }\n scrollParents.push(target);\n}\n\n/**\n * Setup needed event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction setupEventListeners(reference, options, state, updateBound) {\n // Resize event listener on window\n state.updateBound = updateBound;\n getWindow(reference).addEventListener('resize', state.updateBound, { passive: true });\n\n // Scroll event listener on scroll parents\n var scrollElement = getScrollParent(reference);\n attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents);\n state.scrollElement = scrollElement;\n state.eventsEnabled = true;\n\n return state;\n}\n\n/**\n * It will add resize/scroll events and start recalculating\n * position of the popper element when they are triggered.\n * @method\n * @memberof Popper\n */\nfunction enableEventListeners() {\n if (!this.state.eventsEnabled) {\n this.state = setupEventListeners(this.reference, this.options, this.state, this.scheduleUpdate);\n }\n}\n\n/**\n * Remove event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction removeEventListeners(reference, state) {\n // Remove resize event listener on window\n getWindow(reference).removeEventListener('resize', state.updateBound);\n\n // Remove scroll event listener on scroll parents\n state.scrollParents.forEach(function (target) {\n target.removeEventListener('scroll', state.updateBound);\n });\n\n // Reset state\n state.updateBound = null;\n state.scrollParents = [];\n state.scrollElement = null;\n state.eventsEnabled = false;\n return state;\n}\n\n/**\n * It will remove resize/scroll events and won't recalculate popper position\n * when they are triggered. It also won't trigger `onUpdate` callback anymore,\n * unless you call `update` method manually.\n * @method\n * @memberof Popper\n */\nfunction disableEventListeners() {\n if (this.state.eventsEnabled) {\n cancelAnimationFrame(this.scheduleUpdate);\n this.state = removeEventListeners(this.reference, this.state);\n }\n}\n\n/**\n * Tells if a given input is a number\n * @method\n * @memberof Popper.Utils\n * @param {*} input to check\n * @return {Boolean}\n */\nfunction isNumeric(n) {\n return n !== '' && !isNaN(parseFloat(n)) && isFinite(n);\n}\n\n/**\n * Set the style to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the style to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setStyles(element, styles) {\n Object.keys(styles).forEach(function (prop) {\n var unit = '';\n // add unit if the value is numeric and is one of the following\n if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && isNumeric(styles[prop])) {\n unit = 'px';\n }\n element.style[prop] = styles[prop] + unit;\n });\n}\n\n/**\n * Set the attributes to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the attributes to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setAttributes(element, attributes) {\n Object.keys(attributes).forEach(function (prop) {\n var value = attributes[prop];\n if (value !== false) {\n element.setAttribute(prop, attributes[prop]);\n } else {\n element.removeAttribute(prop);\n }\n });\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} data.styles - List of style properties - values to apply to popper element\n * @argument {Object} data.attributes - List of attribute properties - values to apply to popper element\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The same data object\n */\nfunction applyStyle(data) {\n // any property present in `data.styles` will be applied to the popper,\n // in this way we can make the 3rd party modifiers add custom styles to it\n // Be aware, modifiers could override the properties defined in the previous\n // lines of this modifier!\n setStyles(data.instance.popper, data.styles);\n\n // any property present in `data.attributes` will be applied to the popper,\n // they will be set as HTML attributes of the element\n setAttributes(data.instance.popper, data.attributes);\n\n // if arrowElement is defined and arrowStyles has some properties\n if (data.arrowElement && Object.keys(data.arrowStyles).length) {\n setStyles(data.arrowElement, data.arrowStyles);\n }\n\n return data;\n}\n\n/**\n * Set the x-placement attribute before everything else because it could be used\n * to add margins to the popper margins needs to be calculated to get the\n * correct popper offsets.\n * @method\n * @memberof Popper.modifiers\n * @param {HTMLElement} reference - The reference element used to position the popper\n * @param {HTMLElement} popper - The HTML element used as popper\n * @param {Object} options - Popper.js options\n */\nfunction applyStyleOnLoad(reference, popper, options, modifierOptions, state) {\n // compute reference element offsets\n var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n var placement = computeAutoPlacement(options.placement, referenceOffsets, popper, reference, options.modifiers.flip.boundariesElement, options.modifiers.flip.padding);\n\n popper.setAttribute('x-placement', placement);\n\n // Apply `position` to popper before anything else because\n // without the position applied we can't guarantee correct computations\n setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' });\n\n return options;\n}\n\n/**\n * @function\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Boolean} shouldRound - If the offsets should be rounded at all\n * @returns {Object} The popper's position offsets rounded\n *\n * The tale of pixel-perfect positioning. It's still not 100% perfect, but as\n * good as it can be within reason.\n * Discussion here: https://github.com/FezVrasta/popper.js/pull/715\n *\n * Low DPI screens cause a popper to be blurry if not using full pixels (Safari\n * as well on High DPI screens).\n *\n * Firefox prefers no rounding for positioning and does not have blurriness on\n * high DPI screens.\n *\n * Only horizontal placement and left/right values need to be considered.\n */\nfunction getRoundedOffsets(data, shouldRound) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n var round = Math.round,\n floor = Math.floor;\n\n var noRound = function noRound(v) {\n return v;\n };\n\n var referenceWidth = round(reference.width);\n var popperWidth = round(popper.width);\n\n var isVertical = ['left', 'right'].indexOf(data.placement) !== -1;\n var isVariation = data.placement.indexOf('-') !== -1;\n var sameWidthParity = referenceWidth % 2 === popperWidth % 2;\n var bothOddWidth = referenceWidth % 2 === 1 && popperWidth % 2 === 1;\n\n var horizontalToInteger = !shouldRound ? noRound : isVertical || isVariation || sameWidthParity ? round : floor;\n var verticalToInteger = !shouldRound ? noRound : round;\n\n return {\n left: horizontalToInteger(bothOddWidth && !isVariation && shouldRound ? popper.left - 1 : popper.left),\n top: verticalToInteger(popper.top),\n bottom: verticalToInteger(popper.bottom),\n right: horizontalToInteger(popper.right)\n };\n}\n\nvar isFirefox = isBrowser && /Firefox/i.test(navigator.userAgent);\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeStyle(data, options) {\n var x = options.x,\n y = options.y;\n var popper = data.offsets.popper;\n\n // Remove this legacy support in Popper.js v2\n\n var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'applyStyle';\n }).gpuAcceleration;\n if (legacyGpuAccelerationOption !== undefined) {\n console.warn('WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!');\n }\n var gpuAcceleration = legacyGpuAccelerationOption !== undefined ? legacyGpuAccelerationOption : options.gpuAcceleration;\n\n var offsetParent = getOffsetParent(data.instance.popper);\n var offsetParentRect = getBoundingClientRect(offsetParent);\n\n // Styles\n var styles = {\n position: popper.position\n };\n\n var offsets = getRoundedOffsets(data, window.devicePixelRatio < 2 || !isFirefox);\n\n var sideA = x === 'bottom' ? 'top' : 'bottom';\n var sideB = y === 'right' ? 'left' : 'right';\n\n // if gpuAcceleration is set to `true` and transform is supported,\n // we use `translate3d` to apply the position to the popper we\n // automatically use the supported prefixed version if needed\n var prefixedProperty = getSupportedPropertyName('transform');\n\n // now, let's make a step back and look at this code closely (wtf?)\n // If the content of the popper grows once it's been positioned, it\n // may happen that the popper gets misplaced because of the new content\n // overflowing its reference element\n // To avoid this problem, we provide two options (x and y), which allow\n // the consumer to define the offset origin.\n // If we position a popper on top of a reference element, we can set\n // `x` to `top` to make the popper grow towards its top instead of\n // its bottom.\n var left = void 0,\n top = void 0;\n if (sideA === 'bottom') {\n // when offsetParent is the positioning is relative to the bottom of the screen (excluding the scrollbar)\n // and not the bottom of the html element\n if (offsetParent.nodeName === 'HTML') {\n top = -offsetParent.clientHeight + offsets.bottom;\n } else {\n top = -offsetParentRect.height + offsets.bottom;\n }\n } else {\n top = offsets.top;\n }\n if (sideB === 'right') {\n if (offsetParent.nodeName === 'HTML') {\n left = -offsetParent.clientWidth + offsets.right;\n } else {\n left = -offsetParentRect.width + offsets.right;\n }\n } else {\n left = offsets.left;\n }\n if (gpuAcceleration && prefixedProperty) {\n styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)';\n styles[sideA] = 0;\n styles[sideB] = 0;\n styles.willChange = 'transform';\n } else {\n // othwerise, we use the standard `top`, `left`, `bottom` and `right` properties\n var invertTop = sideA === 'bottom' ? -1 : 1;\n var invertLeft = sideB === 'right' ? -1 : 1;\n styles[sideA] = top * invertTop;\n styles[sideB] = left * invertLeft;\n styles.willChange = sideA + ', ' + sideB;\n }\n\n // Attributes\n var attributes = {\n 'x-placement': data.placement\n };\n\n // Update `data` attributes, styles and arrowStyles\n data.attributes = _extends({}, attributes, data.attributes);\n data.styles = _extends({}, styles, data.styles);\n data.arrowStyles = _extends({}, data.offsets.arrow, data.arrowStyles);\n\n return data;\n}\n\n/**\n * Helper used to know if the given modifier depends from another one.
\n * It checks if the needed modifier is listed and enabled.\n * @method\n * @memberof Popper.Utils\n * @param {Array} modifiers - list of modifiers\n * @param {String} requestingName - name of requesting modifier\n * @param {String} requestedName - name of requested modifier\n * @returns {Boolean}\n */\nfunction isModifierRequired(modifiers, requestingName, requestedName) {\n var requesting = find(modifiers, function (_ref) {\n var name = _ref.name;\n return name === requestingName;\n });\n\n var isRequired = !!requesting && modifiers.some(function (modifier) {\n return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order;\n });\n\n if (!isRequired) {\n var _requesting = '`' + requestingName + '`';\n var requested = '`' + requestedName + '`';\n console.warn(requested + ' modifier is required by ' + _requesting + ' modifier in order to work, be sure to include it before ' + _requesting + '!');\n }\n return isRequired;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction arrow(data, options) {\n var _data$offsets$arrow;\n\n // arrow depends on keepTogether in order to work\n if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) {\n return data;\n }\n\n var arrowElement = options.element;\n\n // if arrowElement is a string, suppose it's a CSS selector\n if (typeof arrowElement === 'string') {\n arrowElement = data.instance.popper.querySelector(arrowElement);\n\n // if arrowElement is not found, don't run the modifier\n if (!arrowElement) {\n return data;\n }\n } else {\n // if the arrowElement isn't a query selector we must check that the\n // provided DOM node is child of its popper node\n if (!data.instance.popper.contains(arrowElement)) {\n console.warn('WARNING: `arrow.element` must be child of its popper element!');\n return data;\n }\n }\n\n var placement = data.placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isVertical = ['left', 'right'].indexOf(placement) !== -1;\n\n var len = isVertical ? 'height' : 'width';\n var sideCapitalized = isVertical ? 'Top' : 'Left';\n var side = sideCapitalized.toLowerCase();\n var altSide = isVertical ? 'left' : 'top';\n var opSide = isVertical ? 'bottom' : 'right';\n var arrowElementSize = getOuterSizes(arrowElement)[len];\n\n //\n // extends keepTogether behavior making sure the popper and its\n // reference have enough pixels in conjunction\n //\n\n // top/left side\n if (reference[opSide] - arrowElementSize < popper[side]) {\n data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowElementSize);\n }\n // bottom/right side\n if (reference[side] + arrowElementSize > popper[opSide]) {\n data.offsets.popper[side] += reference[side] + arrowElementSize - popper[opSide];\n }\n data.offsets.popper = getClientRect(data.offsets.popper);\n\n // compute center of the popper\n var center = reference[side] + reference[len] / 2 - arrowElementSize / 2;\n\n // Compute the sideValue using the updated popper offsets\n // take popper margin in account because we don't have this info available\n var css = getStyleComputedProperty(data.instance.popper);\n var popperMarginSide = parseFloat(css['margin' + sideCapitalized]);\n var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width']);\n var sideValue = center - data.offsets.popper[side] - popperMarginSide - popperBorderSide;\n\n // prevent arrowElement from being placed not contiguously to its popper\n sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0);\n\n data.arrowElement = arrowElement;\n data.offsets.arrow = (_data$offsets$arrow = {}, defineProperty(_data$offsets$arrow, side, Math.round(sideValue)), defineProperty(_data$offsets$arrow, altSide, ''), _data$offsets$arrow);\n\n return data;\n}\n\n/**\n * Get the opposite placement variation of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement variation\n * @returns {String} flipped placement variation\n */\nfunction getOppositeVariation(variation) {\n if (variation === 'end') {\n return 'start';\n } else if (variation === 'start') {\n return 'end';\n }\n return variation;\n}\n\n/**\n * List of accepted placements to use as values of the `placement` option.
\n * Valid placements are:\n * - `auto`\n * - `top`\n * - `right`\n * - `bottom`\n * - `left`\n *\n * Each placement can have a variation from this list:\n * - `-start`\n * - `-end`\n *\n * Variations are interpreted easily if you think of them as the left to right\n * written languages. Horizontally (`top` and `bottom`), `start` is left and `end`\n * is right.
\n * Vertically (`left` and `right`), `start` is top and `end` is bottom.\n *\n * Some valid examples are:\n * - `top-end` (on top of reference, right aligned)\n * - `right-start` (on right of reference, top aligned)\n * - `bottom` (on bottom, centered)\n * - `auto-end` (on the side with more space available, alignment depends by placement)\n *\n * @static\n * @type {Array}\n * @enum {String}\n * @readonly\n * @method placements\n * @memberof Popper\n */\nvar placements = ['auto-start', 'auto', 'auto-end', 'top-start', 'top', 'top-end', 'right-start', 'right', 'right-end', 'bottom-end', 'bottom', 'bottom-start', 'left-end', 'left', 'left-start'];\n\n// Get rid of `auto` `auto-start` and `auto-end`\nvar validPlacements = placements.slice(3);\n\n/**\n * Given an initial placement, returns all the subsequent placements\n * clockwise (or counter-clockwise).\n *\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement - A valid placement (it accepts variations)\n * @argument {Boolean} counter - Set to true to walk the placements counterclockwise\n * @returns {Array} placements including their variations\n */\nfunction clockwise(placement) {\n var counter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var index = validPlacements.indexOf(placement);\n var arr = validPlacements.slice(index + 1).concat(validPlacements.slice(0, index));\n return counter ? arr.reverse() : arr;\n}\n\nvar BEHAVIORS = {\n FLIP: 'flip',\n CLOCKWISE: 'clockwise',\n COUNTERCLOCKWISE: 'counterclockwise'\n};\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction flip(data, options) {\n // if `inner` modifier is enabled, we can't use the `flip` modifier\n if (isModifierEnabled(data.instance.modifiers, 'inner')) {\n return data;\n }\n\n if (data.flipped && data.placement === data.originalPlacement) {\n // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides\n return data;\n }\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed);\n\n var placement = data.placement.split('-')[0];\n var placementOpposite = getOppositePlacement(placement);\n var variation = data.placement.split('-')[1] || '';\n\n var flipOrder = [];\n\n switch (options.behavior) {\n case BEHAVIORS.FLIP:\n flipOrder = [placement, placementOpposite];\n break;\n case BEHAVIORS.CLOCKWISE:\n flipOrder = clockwise(placement);\n break;\n case BEHAVIORS.COUNTERCLOCKWISE:\n flipOrder = clockwise(placement, true);\n break;\n default:\n flipOrder = options.behavior;\n }\n\n flipOrder.forEach(function (step, index) {\n if (placement !== step || flipOrder.length === index + 1) {\n return data;\n }\n\n placement = data.placement.split('-')[0];\n placementOpposite = getOppositePlacement(placement);\n\n var popperOffsets = data.offsets.popper;\n var refOffsets = data.offsets.reference;\n\n // using floor because the reference offsets may contain decimals we are not going to consider here\n var floor = Math.floor;\n var overlapsRef = placement === 'left' && floor(popperOffsets.right) > floor(refOffsets.left) || placement === 'right' && floor(popperOffsets.left) < floor(refOffsets.right) || placement === 'top' && floor(popperOffsets.bottom) > floor(refOffsets.top) || placement === 'bottom' && floor(popperOffsets.top) < floor(refOffsets.bottom);\n\n var overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left);\n var overflowsRight = floor(popperOffsets.right) > floor(boundaries.right);\n var overflowsTop = floor(popperOffsets.top) < floor(boundaries.top);\n var overflowsBottom = floor(popperOffsets.bottom) > floor(boundaries.bottom);\n\n var overflowsBoundaries = placement === 'left' && overflowsLeft || placement === 'right' && overflowsRight || placement === 'top' && overflowsTop || placement === 'bottom' && overflowsBottom;\n\n // flip the variation if required\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n\n // flips variation if reference element overflows boundaries\n var flippedVariationByRef = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom);\n\n // flips variation if popper content overflows boundaries\n var flippedVariationByContent = !!options.flipVariationsByContent && (isVertical && variation === 'start' && overflowsRight || isVertical && variation === 'end' && overflowsLeft || !isVertical && variation === 'start' && overflowsBottom || !isVertical && variation === 'end' && overflowsTop);\n\n var flippedVariation = flippedVariationByRef || flippedVariationByContent;\n\n if (overlapsRef || overflowsBoundaries || flippedVariation) {\n // this boolean to detect any flip loop\n data.flipped = true;\n\n if (overlapsRef || overflowsBoundaries) {\n placement = flipOrder[index + 1];\n }\n\n if (flippedVariation) {\n variation = getOppositeVariation(variation);\n }\n\n data.placement = placement + (variation ? '-' + variation : '');\n\n // this object contains `position`, we want to preserve it along with\n // any additional property we may add in the future\n data.offsets.popper = _extends({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement));\n\n data = runModifiers(data.instance.modifiers, data, 'flip');\n }\n });\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction keepTogether(data) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var placement = data.placement.split('-')[0];\n var floor = Math.floor;\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n var side = isVertical ? 'right' : 'bottom';\n var opSide = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n if (popper[side] < floor(reference[opSide])) {\n data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement];\n }\n if (popper[opSide] > floor(reference[side])) {\n data.offsets.popper[opSide] = floor(reference[side]);\n }\n\n return data;\n}\n\n/**\n * Converts a string containing value + unit into a px value number\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} str - Value + unit string\n * @argument {String} measurement - `height` or `width`\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @returns {Number|String}\n * Value in pixels, or original string if no values were extracted\n */\nfunction toValue(str, measurement, popperOffsets, referenceOffsets) {\n // separate value from unit\n var split = str.match(/((?:\\-|\\+)?\\d*\\.?\\d*)(.*)/);\n var value = +split[1];\n var unit = split[2];\n\n // If it's not a number it's an operator, I guess\n if (!value) {\n return str;\n }\n\n if (unit.indexOf('%') === 0) {\n var element = void 0;\n switch (unit) {\n case '%p':\n element = popperOffsets;\n break;\n case '%':\n case '%r':\n default:\n element = referenceOffsets;\n }\n\n var rect = getClientRect(element);\n return rect[measurement] / 100 * value;\n } else if (unit === 'vh' || unit === 'vw') {\n // if is a vh or vw, we calculate the size based on the viewport\n var size = void 0;\n if (unit === 'vh') {\n size = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);\n } else {\n size = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);\n }\n return size / 100 * value;\n } else {\n // if is an explicit pixel unit, we get rid of the unit and keep the value\n // if is an implicit unit, it's px, and we return just the value\n return value;\n }\n}\n\n/**\n * Parse an `offset` string to extrapolate `x` and `y` numeric offsets.\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} offset\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @argument {String} basePlacement\n * @returns {Array} a two cells array with x and y offsets in numbers\n */\nfunction parseOffset(offset, popperOffsets, referenceOffsets, basePlacement) {\n var offsets = [0, 0];\n\n // Use height if placement is left or right and index is 0 otherwise use width\n // in this way the first offset will use an axis and the second one\n // will use the other one\n var useHeight = ['right', 'left'].indexOf(basePlacement) !== -1;\n\n // Split the offset string to obtain a list of values and operands\n // The regex addresses values with the plus or minus sign in front (+10, -20, etc)\n var fragments = offset.split(/(\\+|\\-)/).map(function (frag) {\n return frag.trim();\n });\n\n // Detect if the offset string contains a pair of values or a single one\n // they could be separated by comma or space\n var divider = fragments.indexOf(find(fragments, function (frag) {\n return frag.search(/,|\\s/) !== -1;\n }));\n\n if (fragments[divider] && fragments[divider].indexOf(',') === -1) {\n console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.');\n }\n\n // If divider is found, we divide the list of values and operands to divide\n // them by ofset X and Y.\n var splitRegex = /\\s*,\\s*|\\s+/;\n var ops = divider !== -1 ? [fragments.slice(0, divider).concat([fragments[divider].split(splitRegex)[0]]), [fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider + 1))] : [fragments];\n\n // Convert the values with units to absolute pixels to allow our computations\n ops = ops.map(function (op, index) {\n // Most of the units rely on the orientation of the popper\n var measurement = (index === 1 ? !useHeight : useHeight) ? 'height' : 'width';\n var mergeWithPrevious = false;\n return op\n // This aggregates any `+` or `-` sign that aren't considered operators\n // e.g.: 10 + +5 => [10, +, +5]\n .reduce(function (a, b) {\n if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) {\n a[a.length - 1] = b;\n mergeWithPrevious = true;\n return a;\n } else if (mergeWithPrevious) {\n a[a.length - 1] += b;\n mergeWithPrevious = false;\n return a;\n } else {\n return a.concat(b);\n }\n }, [])\n // Here we convert the string values into number values (in px)\n .map(function (str) {\n return toValue(str, measurement, popperOffsets, referenceOffsets);\n });\n });\n\n // Loop trough the offsets arrays and execute the operations\n ops.forEach(function (op, index) {\n op.forEach(function (frag, index2) {\n if (isNumeric(frag)) {\n offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1);\n }\n });\n });\n return offsets;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @argument {Number|String} options.offset=0\n * The offset value as described in the modifier description\n * @returns {Object} The data object, properly modified\n */\nfunction offset(data, _ref) {\n var offset = _ref.offset;\n var placement = data.placement,\n _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var basePlacement = placement.split('-')[0];\n\n var offsets = void 0;\n if (isNumeric(+offset)) {\n offsets = [+offset, 0];\n } else {\n offsets = parseOffset(offset, popper, reference, basePlacement);\n }\n\n if (basePlacement === 'left') {\n popper.top += offsets[0];\n popper.left -= offsets[1];\n } else if (basePlacement === 'right') {\n popper.top += offsets[0];\n popper.left += offsets[1];\n } else if (basePlacement === 'top') {\n popper.left += offsets[0];\n popper.top -= offsets[1];\n } else if (basePlacement === 'bottom') {\n popper.left += offsets[0];\n popper.top += offsets[1];\n }\n\n data.popper = popper;\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction preventOverflow(data, options) {\n var boundariesElement = options.boundariesElement || getOffsetParent(data.instance.popper);\n\n // If offsetParent is the reference element, we really want to\n // go one step up and use the next offsetParent as reference to\n // avoid to make this modifier completely useless and look like broken\n if (data.instance.reference === boundariesElement) {\n boundariesElement = getOffsetParent(boundariesElement);\n }\n\n // NOTE: DOM access here\n // resets the popper's position so that the document size can be calculated excluding\n // the size of the popper element itself\n var transformProp = getSupportedPropertyName('transform');\n var popperStyles = data.instance.popper.style; // assignment to help minification\n var top = popperStyles.top,\n left = popperStyles.left,\n transform = popperStyles[transformProp];\n\n popperStyles.top = '';\n popperStyles.left = '';\n popperStyles[transformProp] = '';\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed);\n\n // NOTE: DOM access here\n // restores the original style properties after the offsets have been computed\n popperStyles.top = top;\n popperStyles.left = left;\n popperStyles[transformProp] = transform;\n\n options.boundaries = boundaries;\n\n var order = options.priority;\n var popper = data.offsets.popper;\n\n var check = {\n primary: function primary(placement) {\n var value = popper[placement];\n if (popper[placement] < boundaries[placement] && !options.escapeWithReference) {\n value = Math.max(popper[placement], boundaries[placement]);\n }\n return defineProperty({}, placement, value);\n },\n secondary: function secondary(placement) {\n var mainSide = placement === 'right' ? 'left' : 'top';\n var value = popper[mainSide];\n if (popper[placement] > boundaries[placement] && !options.escapeWithReference) {\n value = Math.min(popper[mainSide], boundaries[placement] - (placement === 'right' ? popper.width : popper.height));\n }\n return defineProperty({}, mainSide, value);\n }\n };\n\n order.forEach(function (placement) {\n var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary';\n popper = _extends({}, popper, check[side](placement));\n });\n\n data.offsets.popper = popper;\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction shift(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var shiftvariation = placement.split('-')[1];\n\n // if shift shiftvariation is specified, run the modifier\n if (shiftvariation) {\n var _data$offsets = data.offsets,\n reference = _data$offsets.reference,\n popper = _data$offsets.popper;\n\n var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1;\n var side = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n var shiftOffsets = {\n start: defineProperty({}, side, reference[side]),\n end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement])\n };\n\n data.offsets.popper = _extends({}, popper, shiftOffsets[shiftvariation]);\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction hide(data) {\n if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) {\n return data;\n }\n\n var refRect = data.offsets.reference;\n var bound = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'preventOverflow';\n }).boundaries;\n\n if (refRect.bottom < bound.top || refRect.left > bound.right || refRect.top > bound.bottom || refRect.right < bound.left) {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === true) {\n return data;\n }\n\n data.hide = true;\n data.attributes['x-out-of-boundaries'] = '';\n } else {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === false) {\n return data;\n }\n\n data.hide = false;\n data.attributes['x-out-of-boundaries'] = false;\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction inner(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1;\n\n var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1;\n\n popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0);\n\n data.placement = getOppositePlacement(placement);\n data.offsets.popper = getClientRect(popper);\n\n return data;\n}\n\n/**\n * Modifier function, each modifier can have a function of this type assigned\n * to its `fn` property.
\n * These functions will be called on each update, this means that you must\n * make sure they are performant enough to avoid performance bottlenecks.\n *\n * @function ModifierFn\n * @argument {dataObject} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {dataObject} The data object, properly modified\n */\n\n/**\n * Modifiers are plugins used to alter the behavior of your poppers.
\n * Popper.js uses a set of 9 modifiers to provide all the basic functionalities\n * needed by the library.\n *\n * Usually you don't want to override the `order`, `fn` and `onLoad` props.\n * All the other properties are configurations that could be tweaked.\n * @namespace modifiers\n */\nvar modifiers = {\n /**\n * Modifier used to shift the popper on the start or end of its reference\n * element.
\n * It will read the variation of the `placement` property.
\n * It can be one either `-end` or `-start`.\n * @memberof modifiers\n * @inner\n */\n shift: {\n /** @prop {number} order=100 - Index used to define the order of execution */\n order: 100,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: shift\n },\n\n /**\n * The `offset` modifier can shift your popper on both its axis.\n *\n * It accepts the following units:\n * - `px` or unit-less, interpreted as pixels\n * - `%` or `%r`, percentage relative to the length of the reference element\n * - `%p`, percentage relative to the length of the popper element\n * - `vw`, CSS viewport width unit\n * - `vh`, CSS viewport height unit\n *\n * For length is intended the main axis relative to the placement of the popper.
\n * This means that if the placement is `top` or `bottom`, the length will be the\n * `width`. In case of `left` or `right`, it will be the `height`.\n *\n * You can provide a single value (as `Number` or `String`), or a pair of values\n * as `String` divided by a comma or one (or more) white spaces.
\n * The latter is a deprecated method because it leads to confusion and will be\n * removed in v2.
\n * Additionally, it accepts additions and subtractions between different units.\n * Note that multiplications and divisions aren't supported.\n *\n * Valid examples are:\n * ```\n * 10\n * '10%'\n * '10, 10'\n * '10%, 10'\n * '10 + 10%'\n * '10 - 5vh + 3%'\n * '-10px + 5vh, 5px - 6%'\n * ```\n * > **NB**: If you desire to apply offsets to your poppers in a way that may make them overlap\n * > with their reference element, unfortunately, you will have to disable the `flip` modifier.\n * > You can read more on this at this [issue](https://github.com/FezVrasta/popper.js/issues/373).\n *\n * @memberof modifiers\n * @inner\n */\n offset: {\n /** @prop {number} order=200 - Index used to define the order of execution */\n order: 200,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: offset,\n /** @prop {Number|String} offset=0\n * The offset value as described in the modifier description\n */\n offset: 0\n },\n\n /**\n * Modifier used to prevent the popper from being positioned outside the boundary.\n *\n * A scenario exists where the reference itself is not within the boundaries.
\n * We can say it has \"escaped the boundaries\" — or just \"escaped\".
\n * In this case we need to decide whether the popper should either:\n *\n * - detach from the reference and remain \"trapped\" in the boundaries, or\n * - if it should ignore the boundary and \"escape with its reference\"\n *\n * When `escapeWithReference` is set to`true` and reference is completely\n * outside its boundaries, the popper will overflow (or completely leave)\n * the boundaries in order to remain attached to the edge of the reference.\n *\n * @memberof modifiers\n * @inner\n */\n preventOverflow: {\n /** @prop {number} order=300 - Index used to define the order of execution */\n order: 300,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: preventOverflow,\n /**\n * @prop {Array} [priority=['left','right','top','bottom']]\n * Popper will try to prevent overflow following these priorities by default,\n * then, it could overflow on the left and on top of the `boundariesElement`\n */\n priority: ['left', 'right', 'top', 'bottom'],\n /**\n * @prop {number} padding=5\n * Amount of pixel used to define a minimum distance between the boundaries\n * and the popper. This makes sure the popper always has a little padding\n * between the edges of its container\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='scrollParent'\n * Boundaries used by the modifier. Can be `scrollParent`, `window`,\n * `viewport` or any DOM element.\n */\n boundariesElement: 'scrollParent'\n },\n\n /**\n * Modifier used to make sure the reference and its popper stay near each other\n * without leaving any gap between the two. Especially useful when the arrow is\n * enabled and you want to ensure that it points to its reference element.\n * It cares only about the first axis. You can still have poppers with margin\n * between the popper and its reference element.\n * @memberof modifiers\n * @inner\n */\n keepTogether: {\n /** @prop {number} order=400 - Index used to define the order of execution */\n order: 400,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: keepTogether\n },\n\n /**\n * This modifier is used to move the `arrowElement` of the popper to make\n * sure it is positioned between the reference element and its popper element.\n * It will read the outer size of the `arrowElement` node to detect how many\n * pixels of conjunction are needed.\n *\n * It has no effect if no `arrowElement` is provided.\n * @memberof modifiers\n * @inner\n */\n arrow: {\n /** @prop {number} order=500 - Index used to define the order of execution */\n order: 500,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: arrow,\n /** @prop {String|HTMLElement} element='[x-arrow]' - Selector or node used as arrow */\n element: '[x-arrow]'\n },\n\n /**\n * Modifier used to flip the popper's placement when it starts to overlap its\n * reference element.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n *\n * **NOTE:** this modifier will interrupt the current update cycle and will\n * restart it if it detects the need to flip the placement.\n * @memberof modifiers\n * @inner\n */\n flip: {\n /** @prop {number} order=600 - Index used to define the order of execution */\n order: 600,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: flip,\n /**\n * @prop {String|Array} behavior='flip'\n * The behavior used to change the popper's placement. It can be one of\n * `flip`, `clockwise`, `counterclockwise` or an array with a list of valid\n * placements (with optional variations)\n */\n behavior: 'flip',\n /**\n * @prop {number} padding=5\n * The popper will flip if it hits the edges of the `boundariesElement`\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='viewport'\n * The element which will define the boundaries of the popper position.\n * The popper will never be placed outside of the defined boundaries\n * (except if `keepTogether` is enabled)\n */\n boundariesElement: 'viewport',\n /**\n * @prop {Boolean} flipVariations=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the reference element overlaps its boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariations: false,\n /**\n * @prop {Boolean} flipVariationsByContent=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the popper element overlaps its reference boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariationsByContent: false\n },\n\n /**\n * Modifier used to make the popper flow toward the inner of the reference element.\n * By default, when this modifier is disabled, the popper will be placed outside\n * the reference element.\n * @memberof modifiers\n * @inner\n */\n inner: {\n /** @prop {number} order=700 - Index used to define the order of execution */\n order: 700,\n /** @prop {Boolean} enabled=false - Whether the modifier is enabled or not */\n enabled: false,\n /** @prop {ModifierFn} */\n fn: inner\n },\n\n /**\n * Modifier used to hide the popper when its reference element is outside of the\n * popper boundaries. It will set a `x-out-of-boundaries` attribute which can\n * be used to hide with a CSS selector the popper when its reference is\n * out of boundaries.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n * @memberof modifiers\n * @inner\n */\n hide: {\n /** @prop {number} order=800 - Index used to define the order of execution */\n order: 800,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: hide\n },\n\n /**\n * Computes the style that will be applied to the popper element to gets\n * properly positioned.\n *\n * Note that this modifier will not touch the DOM, it just prepares the styles\n * so that `applyStyle` modifier can apply it. This separation is useful\n * in case you need to replace `applyStyle` with a custom implementation.\n *\n * This modifier has `850` as `order` value to maintain backward compatibility\n * with previous versions of Popper.js. Expect the modifiers ordering method\n * to change in future major versions of the library.\n *\n * @memberof modifiers\n * @inner\n */\n computeStyle: {\n /** @prop {number} order=850 - Index used to define the order of execution */\n order: 850,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: computeStyle,\n /**\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: true,\n /**\n * @prop {string} [x='bottom']\n * Where to anchor the X axis (`bottom` or `top`). AKA X offset origin.\n * Change this if your popper should grow in a direction different from `bottom`\n */\n x: 'bottom',\n /**\n * @prop {string} [x='left']\n * Where to anchor the Y axis (`left` or `right`). AKA Y offset origin.\n * Change this if your popper should grow in a direction different from `right`\n */\n y: 'right'\n },\n\n /**\n * Applies the computed styles to the popper element.\n *\n * All the DOM manipulations are limited to this modifier. This is useful in case\n * you want to integrate Popper.js inside a framework or view library and you\n * want to delegate all the DOM manipulations to it.\n *\n * Note that if you disable this modifier, you must make sure the popper element\n * has its position set to `absolute` before Popper.js can do its work!\n *\n * Just disable this modifier and define your own to achieve the desired effect.\n *\n * @memberof modifiers\n * @inner\n */\n applyStyle: {\n /** @prop {number} order=900 - Index used to define the order of execution */\n order: 900,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: applyStyle,\n /** @prop {Function} */\n onLoad: applyStyleOnLoad,\n /**\n * @deprecated since version 1.10.0, the property moved to `computeStyle` modifier\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: undefined\n }\n};\n\n/**\n * The `dataObject` is an object containing all the information used by Popper.js.\n * This object is passed to modifiers and to the `onCreate` and `onUpdate` callbacks.\n * @name dataObject\n * @property {Object} data.instance The Popper.js instance\n * @property {String} data.placement Placement applied to popper\n * @property {String} data.originalPlacement Placement originally defined on init\n * @property {Boolean} data.flipped True if popper has been flipped by flip modifier\n * @property {Boolean} data.hide True if the reference element is out of boundaries, useful to know when to hide the popper\n * @property {HTMLElement} data.arrowElement Node used as arrow by arrow modifier\n * @property {Object} data.styles Any CSS property defined here will be applied to the popper. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.arrowStyles Any CSS property defined here will be applied to the popper arrow. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.boundaries Offsets of the popper boundaries\n * @property {Object} data.offsets The measurements of popper, reference and arrow elements\n * @property {Object} data.offsets.popper `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.reference `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.arrow] `top` and `left` offsets, only one of them will be different from 0\n */\n\n/**\n * Default options provided to Popper.js constructor.
\n * These can be overridden using the `options` argument of Popper.js.
\n * To override an option, simply pass an object with the same\n * structure of the `options` object, as the 3rd argument. For example:\n * ```\n * new Popper(ref, pop, {\n * modifiers: {\n * preventOverflow: { enabled: false }\n * }\n * })\n * ```\n * @type {Object}\n * @static\n * @memberof Popper\n */\nvar Defaults = {\n /**\n * Popper's placement.\n * @prop {Popper.placements} placement='bottom'\n */\n placement: 'bottom',\n\n /**\n * Set this to true if you want popper to position it self in 'fixed' mode\n * @prop {Boolean} positionFixed=false\n */\n positionFixed: false,\n\n /**\n * Whether events (resize, scroll) are initially enabled.\n * @prop {Boolean} eventsEnabled=true\n */\n eventsEnabled: true,\n\n /**\n * Set to true if you want to automatically remove the popper when\n * you call the `destroy` method.\n * @prop {Boolean} removeOnDestroy=false\n */\n removeOnDestroy: false,\n\n /**\n * Callback called when the popper is created.
\n * By default, it is set to no-op.
\n * Access Popper.js instance with `data.instance`.\n * @prop {onCreate}\n */\n onCreate: function onCreate() {},\n\n /**\n * Callback called when the popper is updated. This callback is not called\n * on the initialization/creation of the popper, but only on subsequent\n * updates.
\n * By default, it is set to no-op.
\n * Access Popper.js instance with `data.instance`.\n * @prop {onUpdate}\n */\n onUpdate: function onUpdate() {},\n\n /**\n * List of modifiers used to modify the offsets before they are applied to the popper.\n * They provide most of the functionalities of Popper.js.\n * @prop {modifiers}\n */\n modifiers: modifiers\n};\n\n/**\n * @callback onCreate\n * @param {dataObject} data\n */\n\n/**\n * @callback onUpdate\n * @param {dataObject} data\n */\n\n// Utils\n// Methods\nvar Popper = function () {\n /**\n * Creates a new Popper.js instance.\n * @class Popper\n * @param {Element|referenceObject} reference - The reference element used to position the popper\n * @param {Element} popper - The HTML / XML element used as the popper\n * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults)\n * @return {Object} instance - The generated Popper.js instance\n */\n function Popper(reference, popper) {\n var _this = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n classCallCheck(this, Popper);\n\n this.scheduleUpdate = function () {\n return requestAnimationFrame(_this.update);\n };\n\n // make update() debounced, so that it only runs at most once-per-tick\n this.update = debounce(this.update.bind(this));\n\n // with {} we create a new object with the options inside it\n this.options = _extends({}, Popper.Defaults, options);\n\n // init state\n this.state = {\n isDestroyed: false,\n isCreated: false,\n scrollParents: []\n };\n\n // get reference and popper elements (allow jQuery wrappers)\n this.reference = reference && reference.jquery ? reference[0] : reference;\n this.popper = popper && popper.jquery ? popper[0] : popper;\n\n // Deep merge modifiers options\n this.options.modifiers = {};\n Object.keys(_extends({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) {\n _this.options.modifiers[name] = _extends({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {});\n });\n\n // Refactoring modifiers' list (Object => Array)\n this.modifiers = Object.keys(this.options.modifiers).map(function (name) {\n return _extends({\n name: name\n }, _this.options.modifiers[name]);\n })\n // sort the modifiers by order\n .sort(function (a, b) {\n return a.order - b.order;\n });\n\n // modifiers have the ability to execute arbitrary code when Popper.js get inited\n // such code is executed in the same order of its modifier\n // they could add new properties to their options configuration\n // BE AWARE: don't add options to `options.modifiers.name` but to `modifierOptions`!\n this.modifiers.forEach(function (modifierOptions) {\n if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) {\n modifierOptions.onLoad(_this.reference, _this.popper, _this.options, modifierOptions, _this.state);\n }\n });\n\n // fire the first update to position the popper in the right place\n this.update();\n\n var eventsEnabled = this.options.eventsEnabled;\n if (eventsEnabled) {\n // setup event listeners, they will take care of update the position in specific situations\n this.enableEventListeners();\n }\n\n this.state.eventsEnabled = eventsEnabled;\n }\n\n // We can't use class properties because they don't get listed in the\n // class prototype and break stuff like Sinon stubs\n\n\n createClass(Popper, [{\n key: 'update',\n value: function update$$1() {\n return update.call(this);\n }\n }, {\n key: 'destroy',\n value: function destroy$$1() {\n return destroy.call(this);\n }\n }, {\n key: 'enableEventListeners',\n value: function enableEventListeners$$1() {\n return enableEventListeners.call(this);\n }\n }, {\n key: 'disableEventListeners',\n value: function disableEventListeners$$1() {\n return disableEventListeners.call(this);\n }\n\n /**\n * Schedules an update. It will run on the next UI update available.\n * @method scheduleUpdate\n * @memberof Popper\n */\n\n\n /**\n * Collection of utilities useful when writing custom modifiers.\n * Starting from version 1.7, this method is available only if you\n * include `popper-utils.js` before `popper.js`.\n *\n * **DEPRECATION**: This way to access PopperUtils is deprecated\n * and will be removed in v2! Use the PopperUtils module directly instead.\n * Due to the high instability of the methods contained in Utils, we can't\n * guarantee them to follow semver. Use them at your own risk!\n * @static\n * @private\n * @type {Object}\n * @deprecated since version 1.8\n * @member Utils\n * @memberof Popper\n */\n\n }]);\n return Popper;\n}();\n\n/**\n * The `referenceObject` is an object that provides an interface compatible with Popper.js\n * and lets you use it as replacement of a real DOM node.
\n * You can use this method to position a popper relatively to a set of coordinates\n * in case you don't have a DOM node to use as reference.\n *\n * ```\n * new Popper(referenceObject, popperNode);\n * ```\n *\n * NB: This feature isn't supported in Internet Explorer 10.\n * @name referenceObject\n * @property {Function} data.getBoundingClientRect\n * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method.\n * @property {number} data.clientWidth\n * An ES6 getter that will return the width of the virtual reference element.\n * @property {number} data.clientHeight\n * An ES6 getter that will return the height of the virtual reference element.\n */\n\n\nPopper.Utils = (typeof window !== 'undefined' ? window : global).PopperUtils;\nPopper.placements = placements;\nPopper.Defaults = Defaults;\n\nexport default Popper;\n//# sourceMappingURL=popper.js.map\n","function getInternetExplorerVersion() {\n var ua = window.navigator.userAgent;\n var msie = ua.indexOf('MSIE ');\n\n if (msie > 0) {\n // IE 10 or older => return version number\n return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);\n }\n\n var trident = ua.indexOf('Trident/');\n\n if (trident > 0) {\n // IE 11 => return version number\n var rv = ua.indexOf('rv:');\n return parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);\n }\n\n var edge = ua.indexOf('Edge/');\n\n if (edge > 0) {\n // Edge (IE 12+) => return version number\n return parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);\n } // other browser\n\n\n return -1;\n}\n\n//\nvar isIE;\n\nfunction initCompat() {\n if (!initCompat.init) {\n initCompat.init = true;\n isIE = getInternetExplorerVersion() !== -1;\n }\n}\n\nvar script = {\n name: 'ResizeObserver',\n props: {\n emitOnMount: {\n type: Boolean,\n default: false\n },\n ignoreWidth: {\n type: Boolean,\n default: false\n },\n ignoreHeight: {\n type: Boolean,\n default: false\n }\n },\n mounted: function mounted() {\n var _this = this;\n\n initCompat();\n this.$nextTick(function () {\n _this._w = _this.$el.offsetWidth;\n _this._h = _this.$el.offsetHeight;\n\n if (_this.emitOnMount) {\n _this.emitSize();\n }\n });\n var object = document.createElement('object');\n this._resizeObject = object;\n object.setAttribute('aria-hidden', 'true');\n object.setAttribute('tabindex', -1);\n object.onload = this.addResizeHandlers;\n object.type = 'text/html';\n\n if (isIE) {\n this.$el.appendChild(object);\n }\n\n object.data = 'about:blank';\n\n if (!isIE) {\n this.$el.appendChild(object);\n }\n },\n beforeDestroy: function beforeDestroy() {\n this.removeResizeHandlers();\n },\n methods: {\n compareAndNotify: function compareAndNotify() {\n if (!this.ignoreWidth && this._w !== this.$el.offsetWidth || !this.ignoreHeight && this._h !== this.$el.offsetHeight) {\n this._w = this.$el.offsetWidth;\n this._h = this.$el.offsetHeight;\n this.emitSize();\n }\n },\n emitSize: function emitSize() {\n this.$emit('notify', {\n width: this._w,\n height: this._h\n });\n },\n addResizeHandlers: function addResizeHandlers() {\n this._resizeObject.contentDocument.defaultView.addEventListener('resize', this.compareAndNotify);\n\n this.compareAndNotify();\n },\n removeResizeHandlers: function removeResizeHandlers() {\n if (this._resizeObject && this._resizeObject.onload) {\n if (!isIE && this._resizeObject.contentDocument) {\n this._resizeObject.contentDocument.defaultView.removeEventListener('resize', this.compareAndNotify);\n }\n\n this.$el.removeChild(this._resizeObject);\n this._resizeObject.onload = null;\n this._resizeObject = null;\n }\n }\n }\n};\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier\n/* server only */\n, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\n if (typeof shadowMode !== 'boolean') {\n createInjectorSSR = createInjector;\n createInjector = shadowMode;\n shadowMode = false;\n } // Vue.extend constructor export interop.\n\n\n var options = typeof script === 'function' ? script.options : script; // render functions\n\n if (template && template.render) {\n options.render = template.render;\n options.staticRenderFns = template.staticRenderFns;\n options._compiled = true; // functional template\n\n if (isFunctionalTemplate) {\n options.functional = true;\n }\n } // scopedId\n\n\n if (scopeId) {\n options._scopeId = scopeId;\n }\n\n var hook;\n\n if (moduleIdentifier) {\n // server build\n hook = function hook(context) {\n // 2.3 injection\n context = context || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; // functional\n // 2.2 with runInNewContext: true\n\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__;\n } // inject component styles\n\n\n if (style) {\n style.call(this, createInjectorSSR(context));\n } // register component module identifier for async chunk inference\n\n\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n }; // used by ssr in case component is cached and beforeCreate\n // never gets called\n\n\n options._ssrRegister = hook;\n } else if (style) {\n hook = shadowMode ? function (context) {\n style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));\n } : function (context) {\n style.call(this, createInjector(context));\n };\n }\n\n if (hook) {\n if (options.functional) {\n // register for functional component in vue file\n var originalRender = options.render;\n\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n\n return script;\n}\n\n/* script */\nvar __vue_script__ = script;\n/* template */\n\nvar __vue_render__ = function __vue_render__() {\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c(\"div\", {\n staticClass: \"resize-observer\",\n attrs: {\n tabindex: \"-1\"\n }\n });\n};\n\nvar __vue_staticRenderFns__ = [];\n__vue_render__._withStripped = true;\n/* style */\n\nvar __vue_inject_styles__ = undefined;\n/* scoped */\n\nvar __vue_scope_id__ = \"data-v-8859cc6c\";\n/* module identifier */\n\nvar __vue_module_identifier__ = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__ = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar __vue_component__ = /*#__PURE__*/normalizeComponent({\n render: __vue_render__,\n staticRenderFns: __vue_staticRenderFns__\n}, __vue_inject_styles__, __vue_script__, __vue_scope_id__, __vue_is_functional_template__, __vue_module_identifier__, false, undefined, undefined, undefined);\n\nfunction install(Vue) {\n // eslint-disable-next-line vue/component-definition-name-casing\n Vue.component('resize-observer', __vue_component__);\n Vue.component('ResizeObserver', __vue_component__);\n}\n\nvar plugin = {\n // eslint-disable-next-line no-undef\n version: \"1.0.1\",\n install: install\n};\n\nvar GlobalVue = null;\n\nif (typeof window !== 'undefined') {\n GlobalVue = window.Vue;\n} else if (typeof global !== 'undefined') {\n GlobalVue = global.Vue;\n}\n\nif (GlobalVue) {\n GlobalVue.use(plugin);\n}\n\nexport default plugin;\nexport { __vue_component__ as ResizeObserver, install };\n//# sourceMappingURL=vue-resize.esm.js.map\n","import _typeof from '@babel/runtime/helpers/typeof';\nimport _defineProperty from '@babel/runtime/helpers/defineProperty';\nimport _classCallCheck from '@babel/runtime/helpers/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/createClass';\nimport Popper from 'popper.js';\nimport isEqual from 'lodash/isEqual';\nimport { ResizeObserver } from 'vue-resize';\nimport merge from 'lodash/merge';\n\nvar SVGAnimatedString = function SVGAnimatedString() {};\n\nif (typeof window !== 'undefined') {\n SVGAnimatedString = window.SVGAnimatedString;\n}\n\nfunction convertToArray(value) {\n if (typeof value === 'string') {\n value = value.split(' ');\n }\n\n return value;\n}\n/**\n * Add classes to an element.\n * This method checks to ensure that the classes don't already exist before adding them.\n * It uses el.className rather than classList in order to be IE friendly.\n * @param {object} el - The element to add the classes to.\n * @param {classes} string - List of space separated classes to be added to the element.\n */\n\nfunction addClasses(el, classes) {\n var newClasses = convertToArray(classes);\n var classList;\n\n if (el.className instanceof SVGAnimatedString) {\n classList = convertToArray(el.className.baseVal);\n } else {\n classList = convertToArray(el.className);\n }\n\n newClasses.forEach(function (newClass) {\n if (classList.indexOf(newClass) === -1) {\n classList.push(newClass);\n }\n });\n\n if (el instanceof SVGElement) {\n el.setAttribute('class', classList.join(' '));\n } else {\n el.className = classList.join(' ');\n }\n}\n/**\n * Remove classes from an element.\n * It uses el.className rather than classList in order to be IE friendly.\n * @export\n * @param {any} el The element to remove the classes from.\n * @param {any} classes List of space separated classes to be removed from the element.\n */\n\nfunction removeClasses(el, classes) {\n var newClasses = convertToArray(classes);\n var classList;\n\n if (el.className instanceof SVGAnimatedString) {\n classList = convertToArray(el.className.baseVal);\n } else {\n classList = convertToArray(el.className);\n }\n\n newClasses.forEach(function (newClass) {\n var index = classList.indexOf(newClass);\n\n if (index !== -1) {\n classList.splice(index, 1);\n }\n });\n\n if (el instanceof SVGElement) {\n el.setAttribute('class', classList.join(' '));\n } else {\n el.className = classList.join(' ');\n }\n}\nvar supportsPassive = false;\n\nif (typeof window !== 'undefined') {\n supportsPassive = false;\n\n try {\n var opts = Object.defineProperty({}, 'passive', {\n get: function get() {\n supportsPassive = true;\n }\n });\n window.addEventListener('test', null, opts);\n } catch (e) {}\n}\n\nfunction ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$2(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\nvar DEFAULT_OPTIONS = {\n container: false,\n delay: 0,\n html: false,\n placement: 'top',\n title: '',\n template: '
',\n trigger: 'hover focus',\n offset: 0\n};\nvar openTooltips = [];\n\nvar Tooltip = /*#__PURE__*/function () {\n /**\n * Create a new Tooltip.js instance\n * @class Tooltip\n * @param {HTMLElement} reference - The DOM node used as reference of the tooltip (it can be a jQuery element).\n * @param {Object} options\n * @param {String} options.placement=bottom\n * Placement of the popper accepted values: `top(-start, -end), right(-start, -end), bottom(-start, -end),\n * left(-start, -end)`\n * @param {HTMLElement|String|false} options.container=false - Append the tooltip to a specific element.\n * @param {Number|Object} options.delay=0\n * Delay showing and hiding the tooltip (ms) - does not apply to manual trigger type.\n * If a number is supplied, delay is applied to both hide/show.\n * Object structure is: `{ show: 500, hide: 100 }`\n * @param {Boolean} options.html=false - Insert HTML into the tooltip. If false, the content will inserted with `innerText`.\n * @param {String|PlacementFunction} options.placement='top' - One of the allowed placements, or a function returning one of them.\n * @param {String} [options.template='
']\n * Base HTML to used when creating the tooltip.\n * The tooltip's `title` will be injected into the `.tooltip-inner` or `.tooltip__inner`.\n * `.tooltip-arrow` or `.tooltip__arrow` will become the tooltip's arrow.\n * The outermost wrapper element should have the `.tooltip` class.\n * @param {String|HTMLElement|TitleFunction} options.title='' - Default title value if `title` attribute isn't present.\n * @param {String} [options.trigger='hover focus']\n * How tooltip is triggered - click, hover, focus, manual.\n * You may pass multiple triggers; separate them with a space. `manual` cannot be combined with any other trigger.\n * @param {HTMLElement} options.boundariesElement\n * The element used as boundaries for the tooltip. For more information refer to Popper.js'\n * [boundariesElement docs](https://popper.js.org/popper-documentation.html)\n * @param {Number|String} options.offset=0 - Offset of the tooltip relative to its reference. For more information refer to Popper.js'\n * [offset docs](https://popper.js.org/popper-documentation.html)\n * @param {Object} options.popperOptions={} - Popper options, will be passed directly to popper instance. For more information refer to Popper.js'\n * [options docs](https://popper.js.org/popper-documentation.html)\n * @param {string} [options.ariaId] Id used for accessibility\n * @return {Object} instance - The generated tooltip instance\n */\n function Tooltip(_reference, _options) {\n var _this = this;\n\n _classCallCheck(this, Tooltip);\n\n _defineProperty(this, \"_events\", []);\n\n _defineProperty(this, \"_setTooltipNodeEvent\", function (evt, reference, delay, options) {\n var relatedreference = evt.relatedreference || evt.toElement || evt.relatedTarget;\n\n var callback = function callback(evt2) {\n var relatedreference2 = evt2.relatedreference || evt2.toElement || evt2.relatedTarget; // Remove event listener after call\n\n _this._tooltipNode.removeEventListener(evt.type, callback); // If the new reference is not the reference element\n\n\n if (!reference.contains(relatedreference2)) {\n // Schedule to hide tooltip\n _this._scheduleHide(reference, options.delay, options, evt2);\n }\n };\n\n if (_this._tooltipNode.contains(relatedreference)) {\n // listen to mouseleave on the tooltip element to be able to hide the tooltip\n _this._tooltipNode.addEventListener(evt.type, callback);\n\n return true;\n }\n\n return false;\n });\n\n // apply user options over default ones\n _options = _objectSpread$2(_objectSpread$2({}, DEFAULT_OPTIONS), _options);\n _reference.jquery && (_reference = _reference[0]);\n this.show = this.show.bind(this);\n this.hide = this.hide.bind(this); // cache reference and options\n\n this.reference = _reference;\n this.options = _options; // set initial state\n\n this._isOpen = false;\n\n this._init();\n } //\n // Public methods\n //\n\n /**\n * Reveals an element's tooltip. This is considered a \"manual\" triggering of the tooltip.\n * Tooltips with zero-length titles are never displayed.\n * @method Tooltip#show\n * @memberof Tooltip\n */\n\n\n _createClass(Tooltip, [{\n key: \"show\",\n value: function show() {\n this._show(this.reference, this.options);\n }\n /**\n * Hides an element’s tooltip. This is considered a “manual” triggering of the tooltip.\n * @method Tooltip#hide\n * @memberof Tooltip\n */\n\n }, {\n key: \"hide\",\n value: function hide() {\n this._hide();\n }\n /**\n * Hides and destroys an element’s tooltip.\n * @method Tooltip#dispose\n * @memberof Tooltip\n */\n\n }, {\n key: \"dispose\",\n value: function dispose() {\n this._dispose();\n }\n /**\n * Toggles an element’s tooltip. This is considered a “manual” triggering of the tooltip.\n * @method Tooltip#toggle\n * @memberof Tooltip\n */\n\n }, {\n key: \"toggle\",\n value: function toggle() {\n if (this._isOpen) {\n return this.hide();\n } else {\n return this.show();\n }\n }\n }, {\n key: \"setClasses\",\n value: function setClasses(classes) {\n this._classes = classes;\n }\n }, {\n key: \"setContent\",\n value: function setContent(content) {\n this.options.title = content;\n\n if (this._tooltipNode) {\n this._setContent(content, this.options);\n }\n }\n }, {\n key: \"setOptions\",\n value: function setOptions(options) {\n var classesUpdated = false;\n var classes = options && options.classes || directive.options.defaultClass;\n\n if (!isEqual(this._classes, classes)) {\n this.setClasses(classes);\n classesUpdated = true;\n }\n\n options = getOptions(options);\n var needPopperUpdate = false;\n var needRestart = false;\n\n if (this.options.offset !== options.offset || this.options.placement !== options.placement) {\n needPopperUpdate = true;\n }\n\n if (this.options.template !== options.template || this.options.trigger !== options.trigger || this.options.container !== options.container || classesUpdated) {\n needRestart = true;\n }\n\n for (var key in options) {\n this.options[key] = options[key];\n }\n\n if (this._tooltipNode) {\n if (needRestart) {\n var isOpen = this._isOpen;\n this.dispose();\n\n this._init();\n\n if (isOpen) {\n this.show();\n }\n } else if (needPopperUpdate) {\n this.popperInstance.update();\n }\n }\n } //\n // Private methods\n //\n\n }, {\n key: \"_init\",\n value: function _init() {\n // get events list\n var events = typeof this.options.trigger === 'string' ? this.options.trigger.split(' ') : [];\n this._isDisposed = false;\n this._enableDocumentTouch = events.indexOf('manual') === -1;\n events = events.filter(function (trigger) {\n return ['click', 'hover', 'focus'].indexOf(trigger) !== -1;\n }); // set event listeners\n\n this._setEventListeners(this.reference, events, this.options); // title attribute\n\n\n this.$_originalTitle = this.reference.getAttribute('title');\n this.reference.removeAttribute('title');\n this.reference.setAttribute('data-original-title', this.$_originalTitle);\n }\n /**\n * Creates a new tooltip node\n * @memberof Tooltip\n * @private\n * @param {HTMLElement} reference\n * @param {String} template\n * @param {String|HTMLElement|TitleFunction} title\n * @param {Boolean} allowHtml\n * @return {HTMLelement} tooltipNode\n */\n\n }, {\n key: \"_create\",\n value: function _create(reference, template) {\n var _this2 = this;\n\n // create tooltip element\n var tooltipGenerator = window.document.createElement('div');\n tooltipGenerator.innerHTML = template.trim();\n var tooltipNode = tooltipGenerator.childNodes[0]; // add unique ID to our tooltip (needed for accessibility reasons)\n\n tooltipNode.id = this.options.ariaId || \"tooltip_\".concat(Math.random().toString(36).substr(2, 10)); // Initially hide the tooltip\n // The attribute will be switched in a next frame so\n // CSS transitions can play\n\n tooltipNode.setAttribute('aria-hidden', 'true');\n\n if (this.options.autoHide && this.options.trigger.indexOf('hover') !== -1) {\n tooltipNode.addEventListener('mouseenter', function (evt) {\n return _this2._scheduleHide(reference, _this2.options.delay, _this2.options, evt);\n });\n tooltipNode.addEventListener('click', function (evt) {\n return _this2._scheduleHide(reference, _this2.options.delay, _this2.options, evt);\n });\n } // return the generated tooltip node\n\n\n return tooltipNode;\n }\n }, {\n key: \"_setContent\",\n value: function _setContent(content, options) {\n var _this3 = this;\n\n this.asyncContent = false;\n\n this._applyContent(content, options).then(function () {\n if (!_this3.popperInstance) return;\n\n _this3.popperInstance.update();\n });\n }\n }, {\n key: \"_applyContent\",\n value: function _applyContent(title, options) {\n var _this4 = this;\n\n return new Promise(function (resolve, reject) {\n var allowHtml = options.html;\n var rootNode = _this4._tooltipNode;\n if (!rootNode) return;\n var titleNode = rootNode.querySelector(_this4.options.innerSelector);\n\n if (title.nodeType === 1) {\n // if title is a node, append it only if allowHtml is true\n if (allowHtml) {\n while (titleNode.firstChild) {\n titleNode.removeChild(titleNode.firstChild);\n }\n\n titleNode.appendChild(title);\n }\n } else if (typeof title === 'function') {\n // if title is a function, call it and set innerText or innerHtml depending by `allowHtml` value\n var result = title();\n\n if (result && typeof result.then === 'function') {\n _this4.asyncContent = true;\n options.loadingClass && addClasses(rootNode, options.loadingClass);\n\n if (options.loadingContent) {\n _this4._applyContent(options.loadingContent, options);\n }\n\n result.then(function (asyncResult) {\n options.loadingClass && removeClasses(rootNode, options.loadingClass);\n return _this4._applyContent(asyncResult, options);\n }).then(resolve).catch(reject);\n } else {\n _this4._applyContent(result, options).then(resolve).catch(reject);\n }\n\n return;\n } else {\n // if it's just a simple text, set innerText or innerHtml depending by `allowHtml` value\n allowHtml ? titleNode.innerHTML = title : titleNode.innerText = title;\n }\n\n resolve();\n });\n }\n }, {\n key: \"_show\",\n value: function _show(reference, options) {\n if (options && typeof options.container === 'string') {\n var container = document.querySelector(options.container);\n if (!container) return;\n }\n\n clearTimeout(this._disposeTimer);\n options = Object.assign({}, options);\n delete options.offset;\n var updateClasses = true;\n\n if (this._tooltipNode) {\n addClasses(this._tooltipNode, this._classes);\n updateClasses = false;\n }\n\n var result = this._ensureShown(reference, options);\n\n if (updateClasses && this._tooltipNode) {\n addClasses(this._tooltipNode, this._classes);\n }\n\n addClasses(reference, ['v-tooltip-open']);\n return result;\n }\n }, {\n key: \"_ensureShown\",\n value: function _ensureShown(reference, options) {\n var _this5 = this;\n\n // don't show if it's already visible\n if (this._isOpen) {\n return this;\n }\n\n this._isOpen = true;\n openTooltips.push(this); // if the tooltipNode already exists, just show it\n\n if (this._tooltipNode) {\n this._tooltipNode.style.display = '';\n\n this._tooltipNode.setAttribute('aria-hidden', 'false');\n\n this.popperInstance.enableEventListeners();\n this.popperInstance.update();\n\n if (this.asyncContent) {\n this._setContent(options.title, options);\n }\n\n return this;\n } // get title\n\n\n var title = reference.getAttribute('title') || options.title; // don't show tooltip if no title is defined\n\n if (!title) {\n return this;\n } // create tooltip node\n\n\n var tooltipNode = this._create(reference, options.template);\n\n this._tooltipNode = tooltipNode; // Add `aria-describedby` to our reference element for accessibility reasons\n\n reference.setAttribute('aria-describedby', tooltipNode.id); // append tooltip to container\n\n var container = this._findContainer(options.container, reference);\n\n this._append(tooltipNode, container);\n\n var popperOptions = _objectSpread$2(_objectSpread$2({}, options.popperOptions), {}, {\n placement: options.placement\n });\n\n popperOptions.modifiers = _objectSpread$2(_objectSpread$2({}, popperOptions.modifiers), {}, {\n arrow: {\n element: this.options.arrowSelector\n }\n });\n\n if (options.boundariesElement) {\n popperOptions.modifiers.preventOverflow = {\n boundariesElement: options.boundariesElement\n };\n }\n\n this.popperInstance = new Popper(reference, tooltipNode, popperOptions);\n\n this._setContent(title, options); // Fix position\n\n\n requestAnimationFrame(function () {\n if (!_this5._isDisposed && _this5.popperInstance) {\n _this5.popperInstance.update(); // Show the tooltip\n\n\n requestAnimationFrame(function () {\n if (!_this5._isDisposed) {\n _this5._isOpen && tooltipNode.setAttribute('aria-hidden', 'false');\n } else {\n _this5.dispose();\n }\n });\n } else {\n _this5.dispose();\n }\n });\n return this;\n }\n }, {\n key: \"_noLongerOpen\",\n value: function _noLongerOpen() {\n var index = openTooltips.indexOf(this);\n\n if (index !== -1) {\n openTooltips.splice(index, 1);\n }\n }\n }, {\n key: \"_hide\",\n value: function _hide()\n /* reference, options */\n {\n var _this6 = this;\n\n // don't hide if it's already hidden\n if (!this._isOpen) {\n return this;\n }\n\n this._isOpen = false;\n\n this._noLongerOpen(); // hide tooltipNode\n\n\n this._tooltipNode.style.display = 'none';\n\n this._tooltipNode.setAttribute('aria-hidden', 'true');\n\n if (this.popperInstance) {\n this.popperInstance.disableEventListeners();\n }\n\n clearTimeout(this._disposeTimer);\n var disposeTime = directive.options.disposeTimeout;\n\n if (disposeTime !== null) {\n this._disposeTimer = setTimeout(function () {\n if (_this6._tooltipNode) {\n _this6._tooltipNode.removeEventListener('mouseenter', _this6.hide);\n\n _this6._tooltipNode.removeEventListener('click', _this6.hide); // Don't remove popper instance, just the HTML element\n\n\n _this6._removeTooltipNode();\n }\n }, disposeTime);\n }\n\n removeClasses(this.reference, ['v-tooltip-open']);\n return this;\n }\n }, {\n key: \"_removeTooltipNode\",\n value: function _removeTooltipNode() {\n if (!this._tooltipNode) return;\n var parentNode = this._tooltipNode.parentNode;\n\n if (parentNode) {\n parentNode.removeChild(this._tooltipNode);\n this.reference.removeAttribute('aria-describedby');\n }\n\n this._tooltipNode = null;\n }\n }, {\n key: \"_dispose\",\n value: function _dispose() {\n var _this7 = this;\n\n this._isDisposed = true;\n this.reference.removeAttribute('data-original-title');\n\n if (this.$_originalTitle) {\n this.reference.setAttribute('title', this.$_originalTitle);\n } // remove event listeners first to prevent any unexpected behaviour\n\n\n this._events.forEach(function (_ref) {\n var func = _ref.func,\n event = _ref.event;\n\n _this7.reference.removeEventListener(event, func);\n });\n\n this._events = [];\n\n if (this._tooltipNode) {\n this._hide();\n\n this._tooltipNode.removeEventListener('mouseenter', this.hide);\n\n this._tooltipNode.removeEventListener('click', this.hide); // destroy instance\n\n\n this.popperInstance.destroy(); // destroy tooltipNode if removeOnDestroy is not set, as popperInstance.destroy() already removes the element\n\n if (!this.popperInstance.options.removeOnDestroy) {\n this._removeTooltipNode();\n }\n } else {\n this._noLongerOpen();\n }\n\n return this;\n }\n }, {\n key: \"_findContainer\",\n value: function _findContainer(container, reference) {\n // if container is a query, get the relative element\n if (typeof container === 'string') {\n container = window.document.querySelector(container);\n } else if (container === false) {\n // if container is `false`, set it to reference parent\n container = reference.parentNode;\n }\n\n return container;\n }\n /**\n * Append tooltip to container\n * @memberof Tooltip\n * @private\n * @param {HTMLElement} tooltip\n * @param {HTMLElement|String|false} container\n */\n\n }, {\n key: \"_append\",\n value: function _append(tooltipNode, container) {\n container.appendChild(tooltipNode);\n }\n }, {\n key: \"_setEventListeners\",\n value: function _setEventListeners(reference, events, options) {\n var _this8 = this;\n\n var directEvents = [];\n var oppositeEvents = [];\n events.forEach(function (event) {\n switch (event) {\n case 'hover':\n directEvents.push('mouseenter');\n oppositeEvents.push('mouseleave');\n if (_this8.options.hideOnTargetClick) oppositeEvents.push('click');\n break;\n\n case 'focus':\n directEvents.push('focus');\n oppositeEvents.push('blur');\n if (_this8.options.hideOnTargetClick) oppositeEvents.push('click');\n break;\n\n case 'click':\n directEvents.push('click');\n oppositeEvents.push('click');\n break;\n }\n }); // schedule show tooltip\n\n directEvents.forEach(function (event) {\n var func = function func(evt) {\n if (_this8._isOpen === true) {\n return;\n }\n\n evt.usedByTooltip = true;\n\n _this8._scheduleShow(reference, options.delay, options, evt);\n };\n\n _this8._events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n }); // schedule hide tooltip\n\n oppositeEvents.forEach(function (event) {\n var func = function func(evt) {\n if (evt.usedByTooltip === true) {\n return;\n }\n\n _this8._scheduleHide(reference, options.delay, options, evt);\n };\n\n _this8._events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n });\n }\n }, {\n key: \"_onDocumentTouch\",\n value: function _onDocumentTouch(event) {\n if (this._enableDocumentTouch) {\n this._scheduleHide(this.reference, this.options.delay, this.options, event);\n }\n }\n }, {\n key: \"_scheduleShow\",\n value: function _scheduleShow(reference, delay, options\n /*, evt */\n ) {\n var _this9 = this;\n\n // defaults to 0\n var computedDelay = delay && delay.show || delay || 0;\n clearTimeout(this._scheduleTimer);\n this._scheduleTimer = window.setTimeout(function () {\n return _this9._show(reference, options);\n }, computedDelay);\n }\n }, {\n key: \"_scheduleHide\",\n value: function _scheduleHide(reference, delay, options, evt) {\n var _this10 = this;\n\n // defaults to 0\n var computedDelay = delay && delay.hide || delay || 0;\n clearTimeout(this._scheduleTimer);\n this._scheduleTimer = window.setTimeout(function () {\n if (_this10._isOpen === false) {\n return;\n }\n\n if (!_this10._tooltipNode.ownerDocument.body.contains(_this10._tooltipNode)) {\n return;\n } // if we are hiding because of a mouseleave, we must check that the new\n // reference isn't the tooltip, because in this case we don't want to hide it\n\n\n if (evt.type === 'mouseleave') {\n var isSet = _this10._setTooltipNodeEvent(evt, reference, delay, options); // if we set the new event, don't hide the tooltip yet\n // the new event will take care to hide it if necessary\n\n\n if (isSet) {\n return;\n }\n }\n\n _this10._hide(reference, options);\n }, computedDelay);\n }\n }]);\n\n return Tooltip;\n}(); // Hide tooltips on touch devices\n\nif (typeof document !== 'undefined') {\n document.addEventListener('touchstart', function (event) {\n for (var i = 0; i < openTooltips.length; i++) {\n openTooltips[i]._onDocumentTouch(event);\n }\n }, supportsPassive ? {\n passive: true,\n capture: true\n } : true);\n}\n/**\n * Placement function, its context is the Tooltip instance.\n * @memberof Tooltip\n * @callback PlacementFunction\n * @param {HTMLElement} tooltip - tooltip DOM node.\n * @param {HTMLElement} reference - reference DOM node.\n * @return {String} placement - One of the allowed placement options.\n */\n\n/**\n * Title function, its context is the Tooltip instance.\n * @memberof Tooltip\n * @callback TitleFunction\n * @return {String} placement - The desired title.\n */\n\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$1(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\nvar state = {\n enabled: true\n};\nvar positions = ['top', 'top-start', 'top-end', 'right', 'right-start', 'right-end', 'bottom', 'bottom-start', 'bottom-end', 'left', 'left-start', 'left-end'];\nvar defaultOptions = {\n // Default tooltip placement relative to target element\n defaultPlacement: 'top',\n // Default CSS classes applied to the tooltip element\n defaultClass: 'vue-tooltip-theme',\n // Default CSS classes applied to the target element of the tooltip\n defaultTargetClass: 'has-tooltip',\n // Is the content HTML by default?\n defaultHtml: true,\n // Default HTML template of the tooltip element\n // It must include `tooltip-arrow` & `tooltip-inner` CSS classes (can be configured, see below)\n // Change if the classes conflict with other libraries (for example bootstrap)\n defaultTemplate: '
',\n // Selector used to get the arrow element in the tooltip template\n defaultArrowSelector: '.tooltip-arrow, .tooltip__arrow',\n // Selector used to get the inner content element in the tooltip template\n defaultInnerSelector: '.tooltip-inner, .tooltip__inner',\n // Delay (ms)\n defaultDelay: 0,\n // Default events that trigger the tooltip\n defaultTrigger: 'hover focus',\n // Default position offset (px)\n defaultOffset: 0,\n // Default container where the tooltip will be appended\n defaultContainer: 'body',\n defaultBoundariesElement: undefined,\n defaultPopperOptions: {},\n // Class added when content is loading\n defaultLoadingClass: 'tooltip-loading',\n // Displayed when tooltip content is loading\n defaultLoadingContent: '...',\n // Hide on mouseover tooltip\n autoHide: true,\n // Close tooltip on click on tooltip target?\n defaultHideOnTargetClick: true,\n // Auto destroy tooltip DOM nodes (ms)\n disposeTimeout: 5000,\n // Options for popover\n popover: {\n defaultPlacement: 'bottom',\n // Use the `popoverClass` prop for theming\n defaultClass: 'vue-popover-theme',\n // Base class (change if conflicts with other libraries)\n defaultBaseClass: 'tooltip popover',\n // Wrapper class (contains arrow and inner)\n defaultWrapperClass: 'wrapper',\n // Inner content class\n defaultInnerClass: 'tooltip-inner popover-inner',\n // Arrow class\n defaultArrowClass: 'tooltip-arrow popover-arrow',\n // Class added when popover is open\n defaultOpenClass: 'open',\n defaultDelay: 0,\n defaultTrigger: 'click',\n defaultOffset: 0,\n defaultContainer: 'body',\n defaultBoundariesElement: undefined,\n defaultPopperOptions: {},\n // Hides if clicked outside of popover\n defaultAutoHide: true,\n // Update popper on content resize\n defaultHandleResize: true\n }\n};\nfunction getOptions(options) {\n var result = {\n placement: typeof options.placement !== 'undefined' ? options.placement : directive.options.defaultPlacement,\n delay: typeof options.delay !== 'undefined' ? options.delay : directive.options.defaultDelay,\n html: typeof options.html !== 'undefined' ? options.html : directive.options.defaultHtml,\n template: typeof options.template !== 'undefined' ? options.template : directive.options.defaultTemplate,\n arrowSelector: typeof options.arrowSelector !== 'undefined' ? options.arrowSelector : directive.options.defaultArrowSelector,\n innerSelector: typeof options.innerSelector !== 'undefined' ? options.innerSelector : directive.options.defaultInnerSelector,\n trigger: typeof options.trigger !== 'undefined' ? options.trigger : directive.options.defaultTrigger,\n offset: typeof options.offset !== 'undefined' ? options.offset : directive.options.defaultOffset,\n container: typeof options.container !== 'undefined' ? options.container : directive.options.defaultContainer,\n boundariesElement: typeof options.boundariesElement !== 'undefined' ? options.boundariesElement : directive.options.defaultBoundariesElement,\n autoHide: typeof options.autoHide !== 'undefined' ? options.autoHide : directive.options.autoHide,\n hideOnTargetClick: typeof options.hideOnTargetClick !== 'undefined' ? options.hideOnTargetClick : directive.options.defaultHideOnTargetClick,\n loadingClass: typeof options.loadingClass !== 'undefined' ? options.loadingClass : directive.options.defaultLoadingClass,\n loadingContent: typeof options.loadingContent !== 'undefined' ? options.loadingContent : directive.options.defaultLoadingContent,\n popperOptions: _objectSpread$1({}, typeof options.popperOptions !== 'undefined' ? options.popperOptions : directive.options.defaultPopperOptions)\n };\n\n if (result.offset) {\n var typeofOffset = _typeof(result.offset);\n\n var offset = result.offset; // One value -> switch\n\n if (typeofOffset === 'number' || typeofOffset === 'string' && offset.indexOf(',') === -1) {\n offset = \"0, \".concat(offset);\n }\n\n if (!result.popperOptions.modifiers) {\n result.popperOptions.modifiers = {};\n }\n\n result.popperOptions.modifiers.offset = {\n offset: offset\n };\n }\n\n if (result.trigger && result.trigger.indexOf('click') !== -1) {\n result.hideOnTargetClick = false;\n }\n\n return result;\n}\nfunction getPlacement(value, modifiers) {\n var placement = value.placement;\n\n for (var i = 0; i < positions.length; i++) {\n var pos = positions[i];\n\n if (modifiers[pos]) {\n placement = pos;\n }\n }\n\n return placement;\n}\nfunction getContent(value) {\n var type = _typeof(value);\n\n if (type === 'string') {\n return value;\n } else if (value && type === 'object') {\n return value.content;\n } else {\n return false;\n }\n}\nfunction createTooltip(el, value) {\n var modifiers = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var content = getContent(value);\n var classes = typeof value.classes !== 'undefined' ? value.classes : directive.options.defaultClass;\n\n var opts = _objectSpread$1({\n title: content\n }, getOptions(_objectSpread$1(_objectSpread$1({}, _typeof(value) === 'object' ? value : {}), {}, {\n placement: getPlacement(value, modifiers)\n })));\n\n var tooltip = el._tooltip = new Tooltip(el, opts);\n tooltip.setClasses(classes);\n tooltip._vueEl = el; // Class on target\n\n var targetClasses = typeof value.targetClasses !== 'undefined' ? value.targetClasses : directive.options.defaultTargetClass;\n el._tooltipTargetClasses = targetClasses;\n addClasses(el, targetClasses);\n return tooltip;\n}\nfunction destroyTooltip(el) {\n if (el._tooltip) {\n el._tooltip.dispose();\n\n delete el._tooltip;\n delete el._tooltipOldShow;\n }\n\n if (el._tooltipTargetClasses) {\n removeClasses(el, el._tooltipTargetClasses);\n delete el._tooltipTargetClasses;\n }\n}\nfunction bind(el, _ref) {\n var value = _ref.value;\n _ref.oldValue;\n var modifiers = _ref.modifiers;\n var content = getContent(value);\n\n if (!content || !state.enabled) {\n destroyTooltip(el);\n } else {\n var tooltip;\n\n if (el._tooltip) {\n tooltip = el._tooltip; // Content\n\n tooltip.setContent(content); // Options\n\n tooltip.setOptions(_objectSpread$1(_objectSpread$1({}, value), {}, {\n placement: getPlacement(value, modifiers)\n }));\n } else {\n tooltip = createTooltip(el, value, modifiers);\n } // Manual show\n\n\n if (typeof value.show !== 'undefined' && value.show !== el._tooltipOldShow) {\n el._tooltipOldShow = value.show;\n value.show ? tooltip.show() : tooltip.hide();\n }\n }\n}\nvar directive = {\n options: defaultOptions,\n bind: bind,\n update: bind,\n unbind: function unbind(el) {\n destroyTooltip(el);\n }\n};\n\nfunction addListeners(el) {\n el.addEventListener('click', onClick);\n el.addEventListener('touchstart', onTouchStart, supportsPassive ? {\n passive: true\n } : false);\n}\n\nfunction removeListeners(el) {\n el.removeEventListener('click', onClick);\n el.removeEventListener('touchstart', onTouchStart);\n el.removeEventListener('touchend', onTouchEnd);\n el.removeEventListener('touchcancel', onTouchCancel);\n}\n\nfunction onClick(event) {\n var el = event.currentTarget;\n event.closePopover = !el.$_vclosepopover_touch;\n event.closeAllPopover = el.$_closePopoverModifiers && !!el.$_closePopoverModifiers.all;\n}\n\nfunction onTouchStart(event) {\n if (event.changedTouches.length === 1) {\n var el = event.currentTarget;\n el.$_vclosepopover_touch = true;\n var touch = event.changedTouches[0];\n el.$_vclosepopover_touchPoint = touch;\n el.addEventListener('touchend', onTouchEnd);\n el.addEventListener('touchcancel', onTouchCancel);\n }\n}\n\nfunction onTouchEnd(event) {\n var el = event.currentTarget;\n el.$_vclosepopover_touch = false;\n\n if (event.changedTouches.length === 1) {\n var touch = event.changedTouches[0];\n var firstTouch = el.$_vclosepopover_touchPoint;\n event.closePopover = Math.abs(touch.screenY - firstTouch.screenY) < 20 && Math.abs(touch.screenX - firstTouch.screenX) < 20;\n event.closeAllPopover = el.$_closePopoverModifiers && !!el.$_closePopoverModifiers.all;\n }\n}\n\nfunction onTouchCancel(event) {\n var el = event.currentTarget;\n el.$_vclosepopover_touch = false;\n}\n\nvar vclosepopover = {\n bind: function bind(el, _ref) {\n var value = _ref.value,\n modifiers = _ref.modifiers;\n el.$_closePopoverModifiers = modifiers;\n\n if (typeof value === 'undefined' || value) {\n addListeners(el);\n }\n },\n update: function update(el, _ref2) {\n var value = _ref2.value,\n oldValue = _ref2.oldValue,\n modifiers = _ref2.modifiers;\n el.$_closePopoverModifiers = modifiers;\n\n if (value !== oldValue) {\n if (typeof value === 'undefined' || value) {\n addListeners(el);\n } else {\n removeListeners(el);\n }\n }\n },\n unbind: function unbind(el) {\n removeListeners(el);\n }\n};\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction getDefault(key) {\n var value = directive.options.popover[key];\n\n if (typeof value === 'undefined') {\n return directive.options[key];\n }\n\n return value;\n}\n\nvar isIOS = false;\n\nif (typeof window !== 'undefined' && typeof navigator !== 'undefined') {\n isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream;\n}\n\nvar openPopovers = [];\n\nvar Element = function Element() {};\n\nif (typeof window !== 'undefined') {\n Element = window.Element;\n}\n\nvar script = {\n name: 'VPopover',\n components: {\n ResizeObserver: ResizeObserver\n },\n props: {\n open: {\n type: Boolean,\n default: false\n },\n disabled: {\n type: Boolean,\n default: false\n },\n placement: {\n type: String,\n default: function _default() {\n return getDefault('defaultPlacement');\n }\n },\n delay: {\n type: [String, Number, Object],\n default: function _default() {\n return getDefault('defaultDelay');\n }\n },\n offset: {\n type: [String, Number],\n default: function _default() {\n return getDefault('defaultOffset');\n }\n },\n trigger: {\n type: String,\n default: function _default() {\n return getDefault('defaultTrigger');\n }\n },\n container: {\n type: [String, Object, Element, Boolean],\n default: function _default() {\n return getDefault('defaultContainer');\n }\n },\n boundariesElement: {\n type: [String, Element],\n default: function _default() {\n return getDefault('defaultBoundariesElement');\n }\n },\n popperOptions: {\n type: Object,\n default: function _default() {\n return getDefault('defaultPopperOptions');\n }\n },\n popoverClass: {\n type: [String, Array],\n default: function _default() {\n return getDefault('defaultClass');\n }\n },\n popoverBaseClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultBaseClass;\n }\n },\n popoverInnerClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultInnerClass;\n }\n },\n popoverWrapperClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultWrapperClass;\n }\n },\n popoverArrowClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultArrowClass;\n }\n },\n autoHide: {\n type: Boolean,\n default: function _default() {\n return directive.options.popover.defaultAutoHide;\n }\n },\n handleResize: {\n type: Boolean,\n default: function _default() {\n return directive.options.popover.defaultHandleResize;\n }\n },\n openGroup: {\n type: String,\n default: null\n },\n openClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultOpenClass;\n }\n },\n ariaId: {\n default: null\n }\n },\n data: function data() {\n return {\n isOpen: false,\n id: Math.random().toString(36).substr(2, 10)\n };\n },\n computed: {\n cssClass: function cssClass() {\n return _defineProperty({}, this.openClass, this.isOpen);\n },\n popoverId: function popoverId() {\n return \"popover_\".concat(this.ariaId != null ? this.ariaId : this.id);\n }\n },\n watch: {\n open: function open(val) {\n if (val) {\n this.show();\n } else {\n this.hide();\n }\n },\n disabled: function disabled(val, oldVal) {\n if (val !== oldVal) {\n if (val) {\n this.hide();\n } else if (this.open) {\n this.show();\n }\n }\n },\n container: function container(val) {\n if (this.isOpen && this.popperInstance) {\n var popoverNode = this.$refs.popover;\n var reference = this.$refs.trigger;\n var container = this.$_findContainer(this.container, reference);\n\n if (!container) {\n console.warn('No container for popover', this);\n return;\n }\n\n container.appendChild(popoverNode);\n this.popperInstance.scheduleUpdate();\n }\n },\n trigger: function trigger(val) {\n this.$_removeEventListeners();\n this.$_addEventListeners();\n },\n placement: function placement(val) {\n var _this = this;\n\n this.$_updatePopper(function () {\n _this.popperInstance.options.placement = val;\n });\n },\n offset: '$_restartPopper',\n boundariesElement: '$_restartPopper',\n popperOptions: {\n handler: '$_restartPopper',\n deep: true\n }\n },\n created: function created() {\n this.$_isDisposed = false;\n this.$_mounted = false;\n this.$_events = [];\n this.$_preventOpen = false;\n },\n mounted: function mounted() {\n var popoverNode = this.$refs.popover;\n popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode);\n this.$_init();\n\n if (this.open) {\n this.show();\n }\n },\n deactivated: function deactivated() {\n this.hide();\n },\n beforeDestroy: function beforeDestroy() {\n this.dispose();\n },\n methods: {\n show: function show() {\n var _this2 = this;\n\n var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n event = _ref2.event;\n _ref2.skipDelay;\n var _ref2$force = _ref2.force,\n force = _ref2$force === void 0 ? false : _ref2$force;\n\n if (force || !this.disabled) {\n this.$_scheduleShow(event);\n this.$emit('show');\n }\n\n this.$emit('update:open', true);\n this.$_beingShowed = true;\n requestAnimationFrame(function () {\n _this2.$_beingShowed = false;\n });\n },\n hide: function hide() {\n var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n event = _ref3.event;\n _ref3.skipDelay;\n\n this.$_scheduleHide(event);\n this.$emit('hide');\n this.$emit('update:open', false);\n },\n dispose: function dispose() {\n this.$_isDisposed = true;\n this.$_removeEventListeners();\n this.hide({\n skipDelay: true\n });\n\n if (this.popperInstance) {\n this.popperInstance.destroy(); // destroy tooltipNode if removeOnDestroy is not set, as popperInstance.destroy() already removes the element\n\n if (!this.popperInstance.options.removeOnDestroy) {\n var popoverNode = this.$refs.popover;\n popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode);\n }\n }\n\n this.$_mounted = false;\n this.popperInstance = null;\n this.isOpen = false;\n this.$emit('dispose');\n },\n $_init: function $_init() {\n if (this.trigger.indexOf('manual') === -1) {\n this.$_addEventListeners();\n }\n },\n $_show: function $_show() {\n var _this3 = this;\n\n var reference = this.$refs.trigger;\n var popoverNode = this.$refs.popover;\n clearTimeout(this.$_disposeTimer); // Already open\n\n if (this.isOpen) {\n return;\n } // Popper is already initialized\n\n\n if (this.popperInstance) {\n this.isOpen = true;\n this.popperInstance.enableEventListeners();\n this.popperInstance.scheduleUpdate();\n }\n\n if (!this.$_mounted) {\n var container = this.$_findContainer(this.container, reference);\n\n if (!container) {\n console.warn('No container for popover', this);\n return;\n }\n\n container.appendChild(popoverNode);\n this.$_mounted = true;\n this.isOpen = false;\n\n if (this.popperInstance) {\n requestAnimationFrame(function () {\n if (!_this3.hidden) {\n _this3.isOpen = true;\n }\n });\n }\n }\n\n if (!this.popperInstance) {\n var popperOptions = _objectSpread(_objectSpread({}, this.popperOptions), {}, {\n placement: this.placement\n });\n\n popperOptions.modifiers = _objectSpread(_objectSpread({}, popperOptions.modifiers), {}, {\n arrow: _objectSpread(_objectSpread({}, popperOptions.modifiers && popperOptions.modifiers.arrow), {}, {\n element: this.$refs.arrow\n })\n });\n\n if (this.offset) {\n var offset = this.$_getOffset();\n popperOptions.modifiers.offset = _objectSpread(_objectSpread({}, popperOptions.modifiers && popperOptions.modifiers.offset), {}, {\n offset: offset\n });\n }\n\n if (this.boundariesElement) {\n popperOptions.modifiers.preventOverflow = _objectSpread(_objectSpread({}, popperOptions.modifiers && popperOptions.modifiers.preventOverflow), {}, {\n boundariesElement: this.boundariesElement\n });\n }\n\n this.popperInstance = new Popper(reference, popoverNode, popperOptions); // Fix position\n\n requestAnimationFrame(function () {\n if (_this3.hidden) {\n _this3.hidden = false;\n\n _this3.$_hide();\n\n return;\n }\n\n if (!_this3.$_isDisposed && _this3.popperInstance) {\n _this3.popperInstance.scheduleUpdate(); // Show the tooltip\n\n\n requestAnimationFrame(function () {\n if (_this3.hidden) {\n _this3.hidden = false;\n\n _this3.$_hide();\n\n return;\n }\n\n if (!_this3.$_isDisposed) {\n _this3.isOpen = true;\n } else {\n _this3.dispose();\n }\n });\n } else {\n _this3.dispose();\n }\n });\n }\n\n var openGroup = this.openGroup;\n\n if (openGroup) {\n var popover;\n\n for (var i = 0; i < openPopovers.length; i++) {\n popover = openPopovers[i];\n\n if (popover.openGroup !== openGroup) {\n popover.hide();\n popover.$emit('close-group');\n }\n }\n }\n\n openPopovers.push(this);\n this.$emit('apply-show');\n },\n $_hide: function $_hide() {\n var _this4 = this;\n\n // Already hidden\n if (!this.isOpen) {\n return;\n }\n\n var index = openPopovers.indexOf(this);\n\n if (index !== -1) {\n openPopovers.splice(index, 1);\n }\n\n this.isOpen = false;\n\n if (this.popperInstance) {\n this.popperInstance.disableEventListeners();\n }\n\n clearTimeout(this.$_disposeTimer);\n var disposeTime = directive.options.popover.disposeTimeout || directive.options.disposeTimeout;\n\n if (disposeTime !== null) {\n this.$_disposeTimer = setTimeout(function () {\n var popoverNode = _this4.$refs.popover;\n\n if (popoverNode) {\n // Don't remove popper instance, just the HTML element\n popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode);\n _this4.$_mounted = false;\n }\n }, disposeTime);\n }\n\n this.$emit('apply-hide');\n },\n $_findContainer: function $_findContainer(container, reference) {\n // if container is a query, get the relative element\n if (typeof container === 'string') {\n container = window.document.querySelector(container);\n } else if (container === false) {\n // if container is `false`, set it to reference parent\n container = reference.parentNode;\n }\n\n return container;\n },\n $_getOffset: function $_getOffset() {\n var typeofOffset = _typeof(this.offset);\n\n var offset = this.offset; // One value -> switch\n\n if (typeofOffset === 'number' || typeofOffset === 'string' && offset.indexOf(',') === -1) {\n offset = \"0, \".concat(offset);\n }\n\n return offset;\n },\n $_addEventListeners: function $_addEventListeners() {\n var _this5 = this;\n\n var reference = this.$refs.trigger;\n var directEvents = [];\n var oppositeEvents = [];\n var events = typeof this.trigger === 'string' ? this.trigger.split(' ').filter(function (trigger) {\n return ['click', 'hover', 'focus'].indexOf(trigger) !== -1;\n }) : [];\n events.forEach(function (event) {\n switch (event) {\n case 'hover':\n directEvents.push('mouseenter');\n oppositeEvents.push('mouseleave');\n break;\n\n case 'focus':\n directEvents.push('focus');\n oppositeEvents.push('blur');\n break;\n\n case 'click':\n directEvents.push('click');\n oppositeEvents.push('click');\n break;\n }\n }); // schedule show tooltip\n\n directEvents.forEach(function (event) {\n var func = function func(event) {\n if (_this5.isOpen) {\n return;\n }\n\n event.usedByTooltip = true;\n !_this5.$_preventOpen && _this5.show({\n event: event\n });\n _this5.hidden = false;\n };\n\n _this5.$_events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n }); // schedule hide tooltip\n\n oppositeEvents.forEach(function (event) {\n var func = function func(event) {\n if (event.usedByTooltip) {\n return;\n }\n\n _this5.hide({\n event: event\n });\n\n _this5.hidden = true;\n };\n\n _this5.$_events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n });\n },\n $_scheduleShow: function $_scheduleShow() {\n var skipDelay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n clearTimeout(this.$_scheduleTimer);\n\n if (skipDelay) {\n this.$_show();\n } else {\n // defaults to 0\n var computedDelay = parseInt(this.delay && this.delay.show || this.delay || 0);\n this.$_scheduleTimer = setTimeout(this.$_show.bind(this), computedDelay);\n }\n },\n $_scheduleHide: function $_scheduleHide() {\n var _this6 = this;\n\n var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var skipDelay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n clearTimeout(this.$_scheduleTimer);\n\n if (skipDelay) {\n this.$_hide();\n } else {\n // defaults to 0\n var computedDelay = parseInt(this.delay && this.delay.hide || this.delay || 0);\n this.$_scheduleTimer = setTimeout(function () {\n if (!_this6.isOpen) {\n return;\n } // if we are hiding because of a mouseleave, we must check that the new\n // reference isn't the tooltip, because in this case we don't want to hide it\n\n\n if (event && event.type === 'mouseleave') {\n var isSet = _this6.$_setTooltipNodeEvent(event); // if we set the new event, don't hide the tooltip yet\n // the new event will take care to hide it if necessary\n\n\n if (isSet) {\n return;\n }\n }\n\n _this6.$_hide();\n }, computedDelay);\n }\n },\n $_setTooltipNodeEvent: function $_setTooltipNodeEvent(event) {\n var _this7 = this;\n\n var reference = this.$refs.trigger;\n var popoverNode = this.$refs.popover;\n var relatedreference = event.relatedreference || event.toElement || event.relatedTarget;\n\n var callback = function callback(event2) {\n var relatedreference2 = event2.relatedreference || event2.toElement || event2.relatedTarget; // Remove event listener after call\n\n popoverNode.removeEventListener(event.type, callback); // If the new reference is not the reference element\n\n if (!reference.contains(relatedreference2)) {\n // Schedule to hide tooltip\n _this7.hide({\n event: event2\n });\n }\n };\n\n if (popoverNode.contains(relatedreference)) {\n // listen to mouseleave on the tooltip element to be able to hide the tooltip\n popoverNode.addEventListener(event.type, callback);\n return true;\n }\n\n return false;\n },\n $_removeEventListeners: function $_removeEventListeners() {\n var reference = this.$refs.trigger;\n this.$_events.forEach(function (_ref4) {\n var func = _ref4.func,\n event = _ref4.event;\n reference.removeEventListener(event, func);\n });\n this.$_events = [];\n },\n $_updatePopper: function $_updatePopper(cb) {\n if (this.popperInstance) {\n cb();\n if (this.isOpen) this.popperInstance.scheduleUpdate();\n }\n },\n $_restartPopper: function $_restartPopper() {\n if (this.popperInstance) {\n var isOpen = this.isOpen;\n this.dispose();\n this.$_isDisposed = false;\n this.$_init();\n\n if (isOpen) {\n this.show({\n skipDelay: true,\n force: true\n });\n }\n }\n },\n $_handleGlobalClose: function $_handleGlobalClose(event) {\n var _this8 = this;\n\n var touch = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n if (this.$_beingShowed) return;\n this.hide({\n event: event\n });\n\n if (event.closePopover) {\n this.$emit('close-directive');\n } else {\n this.$emit('auto-hide');\n }\n\n if (touch) {\n this.$_preventOpen = true;\n setTimeout(function () {\n _this8.$_preventOpen = false;\n }, 300);\n }\n },\n $_handleResize: function $_handleResize() {\n if (this.isOpen && this.popperInstance) {\n this.popperInstance.scheduleUpdate();\n this.$emit('resize');\n }\n }\n }\n};\n\nif (typeof document !== 'undefined' && typeof window !== 'undefined') {\n if (isIOS) {\n document.addEventListener('touchend', handleGlobalTouchend, supportsPassive ? {\n passive: true,\n capture: true\n } : true);\n } else {\n window.addEventListener('click', handleGlobalClick, true);\n }\n}\n\nfunction handleGlobalClick(event) {\n handleGlobalClose(event);\n}\n\nfunction handleGlobalTouchend(event) {\n handleGlobalClose(event, true);\n}\n\nfunction handleGlobalClose(event) {\n var touch = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var _loop = function _loop(i) {\n var popover = openPopovers[i];\n\n if (popover.$refs.popover) {\n var contains = popover.$refs.popover.contains(event.target);\n requestAnimationFrame(function () {\n if (event.closeAllPopover || event.closePopover && contains || popover.autoHide && !contains) {\n popover.$_handleGlobalClose(event, touch);\n }\n });\n }\n };\n\n // Delay so that close directive has time to set values\n for (var i = 0; i < openPopovers.length; i++) {\n _loop(i);\n }\n}\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier /* server only */, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\r\n if (typeof shadowMode !== 'boolean') {\r\n createInjectorSSR = createInjector;\r\n createInjector = shadowMode;\r\n shadowMode = false;\r\n }\r\n // Vue.extend constructor export interop.\r\n const options = typeof script === 'function' ? script.options : script;\r\n // render functions\r\n if (template && template.render) {\r\n options.render = template.render;\r\n options.staticRenderFns = template.staticRenderFns;\r\n options._compiled = true;\r\n // functional template\r\n if (isFunctionalTemplate) {\r\n options.functional = true;\r\n }\r\n }\r\n // scopedId\r\n if (scopeId) {\r\n options._scopeId = scopeId;\r\n }\r\n let hook;\r\n if (moduleIdentifier) {\r\n // server build\r\n hook = function (context) {\r\n // 2.3 injection\r\n context =\r\n context || // cached call\r\n (this.$vnode && this.$vnode.ssrContext) || // stateful\r\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext); // functional\r\n // 2.2 with runInNewContext: true\r\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\r\n context = __VUE_SSR_CONTEXT__;\r\n }\r\n // inject component styles\r\n if (style) {\r\n style.call(this, createInjectorSSR(context));\r\n }\r\n // register component module identifier for async chunk inference\r\n if (context && context._registeredComponents) {\r\n context._registeredComponents.add(moduleIdentifier);\r\n }\r\n };\r\n // used by ssr in case component is cached and beforeCreate\r\n // never gets called\r\n options._ssrRegister = hook;\r\n }\r\n else if (style) {\r\n hook = shadowMode\r\n ? function (context) {\r\n style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));\r\n }\r\n : function (context) {\r\n style.call(this, createInjector(context));\r\n };\r\n }\r\n if (hook) {\r\n if (options.functional) {\r\n // register for functional component in vue file\r\n const originalRender = options.render;\r\n options.render = function renderWithStyleInjection(h, context) {\r\n hook.call(context);\r\n return originalRender(h, context);\r\n };\r\n }\r\n else {\r\n // inject component registration as beforeCreate hook\r\n const existing = options.beforeCreate;\r\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\r\n }\r\n }\r\n return script;\r\n}\n\n/* script */\nvar __vue_script__ = script;\n/* template */\n\nvar __vue_render__ = function __vue_render__() {\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c(\"div\", {\n staticClass: \"v-popover\",\n class: _vm.cssClass\n }, [_c(\"div\", {\n ref: \"trigger\",\n staticClass: \"trigger\",\n staticStyle: {\n display: \"inline-block\"\n },\n attrs: {\n \"aria-describedby\": _vm.isOpen ? _vm.popoverId : undefined,\n tabindex: _vm.trigger.indexOf(\"focus\") !== -1 ? 0 : undefined\n }\n }, [_vm._t(\"default\")], 2), _vm._v(\" \"), _c(\"div\", {\n ref: \"popover\",\n class: [_vm.popoverBaseClass, _vm.popoverClass, _vm.cssClass],\n style: {\n visibility: _vm.isOpen ? \"visible\" : \"hidden\"\n },\n attrs: {\n id: _vm.popoverId,\n \"aria-hidden\": _vm.isOpen ? \"false\" : \"true\",\n tabindex: _vm.autoHide ? 0 : undefined\n },\n on: {\n keyup: function keyup($event) {\n if (!$event.type.indexOf(\"key\") && _vm._k($event.keyCode, \"esc\", 27, $event.key, [\"Esc\", \"Escape\"])) {\n return null;\n }\n\n _vm.autoHide && _vm.hide();\n }\n }\n }, [_c(\"div\", {\n class: _vm.popoverWrapperClass\n }, [_c(\"div\", {\n ref: \"inner\",\n class: _vm.popoverInnerClass,\n staticStyle: {\n position: \"relative\"\n }\n }, [_c(\"div\", [_vm._t(\"popover\", null, {\n isOpen: _vm.isOpen\n })], 2), _vm._v(\" \"), _vm.handleResize ? _c(\"ResizeObserver\", {\n on: {\n notify: _vm.$_handleResize\n }\n }) : _vm._e()], 1), _vm._v(\" \"), _c(\"div\", {\n ref: \"arrow\",\n class: _vm.popoverArrowClass\n })])])]);\n};\n\nvar __vue_staticRenderFns__ = [];\n__vue_render__._withStripped = true;\n/* style */\n\nvar __vue_inject_styles__ = undefined;\n/* scoped */\n\nvar __vue_scope_id__ = undefined;\n/* module identifier */\n\nvar __vue_module_identifier__ = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__ = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar __vue_component__ = /*#__PURE__*/normalizeComponent({\n render: __vue_render__,\n staticRenderFns: __vue_staticRenderFns__\n}, __vue_inject_styles__, __vue_script__, __vue_scope_id__, __vue_is_functional_template__, __vue_module_identifier__, false, undefined, undefined, undefined);\n\nfunction styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar css_248z = \".resize-observer[data-v-8859cc6c]{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer[data-v-8859cc6c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}\";\nstyleInject(css_248z);\n\nfunction install(Vue) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (install.installed) return;\n install.installed = true;\n var finalOptions = {};\n merge(finalOptions, defaultOptions, options);\n plugin.options = finalOptions;\n directive.options = finalOptions;\n Vue.directive('tooltip', directive);\n Vue.directive('close-popover', vclosepopover);\n Vue.component('VPopover', __vue_component__);\n}\nvar VTooltip = directive;\nvar VClosePopover = vclosepopover;\nvar VPopover = __vue_component__;\nvar plugin = {\n install: install,\n\n get enabled() {\n return state.enabled;\n },\n\n set enabled(value) {\n state.enabled = value;\n }\n\n}; // Auto-install\n\nvar GlobalVue = null;\n\nif (typeof window !== 'undefined') {\n GlobalVue = window.Vue;\n} else if (typeof global !== 'undefined') {\n GlobalVue = global.Vue;\n}\n\nif (GlobalVue) {\n GlobalVue.use(plugin);\n}\n\nexport default plugin;\nexport { VClosePopover, VPopover, VTooltip, createTooltip, destroyTooltip, install };\n","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","\n\n\n\n\n","import { render, staticRenderFns } from \"./InfoHud.vue?vue&type=template&id=01ce5c24&\"\nimport script from \"./InfoHud.vue?vue&type=script&lang=js&\"\nexport * from \"./InfoHud.vue?vue&type=script&lang=js&\"\nimport style0 from \"./InfoHud.vue?vue&type=style&index=0&id=01ce5c24&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"info-hud\"},[_c('v-popover',{attrs:{\"placement\":\"right\"}},[_c('c-icon',{attrs:{\"icon\":\"info-circle\"}}),_vm._v(\" \"),_c('template',{slot:\"popover\"},[_vm._t(\"default\")],2)],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./LicenseStatus.vue?vue&type=template&id=1b8bf069&scoped=true&\"\nimport script from \"./LicenseStatus.vue?vue&type=script&lang=js&\"\nexport * from \"./LicenseStatus.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LicenseStatus.vue?vue&type=style&index=0&id=1b8bf069&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1b8bf069\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","var render = function () {\nvar _obj;\nvar _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"license-status\",class:( _obj = {\n 'tw-border tw-border-solid tw-px-4 tw-py-2 tw-rounded-md tw-text-base tw-opacity-100 tw-flex tw-items-center tw-justify-center tw-cursor-pointer': true\n }, _obj[_vm.status] = true, _obj )},[_c('c-icon',{staticClass:\"tw-mr-2\",attrs:{\"icon\":\"check\"}}),_vm._v(\"\\n \"+_vm._s(_vm.description)+\"\\n\")],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./StatusBadge.vue?vue&type=template&id=c17dc428&\"\nimport script from \"./StatusBadge.vue?vue&type=script&lang=js&\"\nexport * from \"./StatusBadge.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatusBadge.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatusBadge.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"cms-edition-status-badge\"},[(_vm.CraftEdition == _vm.edition)?[(_vm.licensedEdition >= _vm.edition)?[_c('license-status',{attrs:{\"status\":\"installed\",\"description\":_vm._f(\"t\")('Installed','app')}})]:[_c('license-status',{attrs:{\"status\":\"installed\",\"description\":_vm._f(\"t\")('Installed as a trial','app')}})]]:(_vm.licensedEdition == _vm.edition)?[_c('license-status',{attrs:{\"status\":\"licensed\",\"description\":_vm._f(\"t\")('Licensed','app')}})]:_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n \n \n\n \n \n\n\n\n","\n\n\n\n\n","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CmsEdition.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CmsEdition.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BuyBtn.vue?vue&type=template&id=15bdc9d2&\"\nimport script from \"./BuyBtn.vue?vue&type=script&lang=js&\"\nexport * from \"./BuyBtn.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BuyBtn.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BuyBtn.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.edition > _vm.licensedEdition)?[(!_vm.isCmsEditionInCart(_vm.editionHandle))?[_c('c-btn',{attrs:{\"kind\":\"primary\",\"block\":\"\",\"large\":\"\"},on:{\"click\":function($event){return _vm.buyCraft(_vm.editionHandle)}}},[_vm._v(_vm._s(_vm._f(\"t\")('Buy now','app'))+\"\\n \")])]:[_c('c-btn',{attrs:{\"block\":\"\",\"large\":\"\",\"submit\":\"\",\"disabled\":\"\"}},[_vm._v(_vm._s(_vm._f(\"t\")('Added to cart','app'))+\"\\n \")])]]:_vm._e(),_vm._v(\" \"),(\n _vm.canTestEditions && _vm.edition != _vm.CraftEdition && _vm.edition > _vm.licensedEdition\n )?[_c('c-btn',{attrs:{\"block\":\"\",\"large\":\"\"},on:{\"click\":function($event){return _vm.installCraft(_vm.editionHandle)}}},[_vm._v(_vm._s(_vm._f(\"t\")('Try for free','app'))+\"\\n \")])]:_vm._e(),_vm._v(\" \"),(_vm.edition == _vm.licensedEdition && _vm.edition != _vm.CraftEdition)?[_c('c-btn',{attrs:{\"block\":\"\",\"large\":\"\"},on:{\"click\":function($event){return _vm.installCraft(_vm.editionHandle)}}},[_vm._v(_vm._s(_vm._f(\"t\")('Reactivate','app'))+\"\\n \")])]:_vm._e(),_vm._v(\" \"),(_vm.loading)?_c('c-spinner'):_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./CmsEdition.vue?vue&type=template&id=42d06e75&\"\nimport script from \"./CmsEdition.vue?vue&type=script&lang=js&\"\nexport * from \"./CmsEdition.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CmsEdition.vue?vue&type=style&index=0&id=42d06e75&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"cms-editions-edition\"},[_c('div',{staticClass:\"description\"},[_c('edition-badge',{attrs:{\"name\":_vm.edition.name,\"block\":true,\"big\":true}}),_vm._v(\" \"),_c('p',{staticClass:\"edition-description\"},[_vm._v(_vm._s(_vm.editionDescription))]),_vm._v(\" \"),_c('div',{staticClass:\"price\"},[(_vm.edition.price && _vm.edition.price > 0)?[_vm._v(\"\\n \"+_vm._s(_vm._f(\"currency\")(_vm.edition.price))+\"\\n \")]:[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Free','app'))+\"\\n \")]],2),_vm._v(\" \"),(_vm.edition.price && _vm.edition.price > 0)?_c('p',{staticClass:\"tw--mt-8 tw-py-6 tw-text-gray-700\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Price includes 1 year of updates.','app'))),_c('br'),_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('{renewalPrice}/year per site for updates after that.','app', {\n renewalPrice: _vm.$options.filters.currency(_vm.edition.renewalPrice),\n }))+\"\\n \")]):_vm._e(),_vm._v(\" \"),_c('ul',_vm._l((_vm.features),function(feature,key){return _c('li',{key:key},[_c('c-icon',{attrs:{\"icon\":\"check\"}}),_vm._v(\"\\n \"+_vm._s(feature.name)+\"\\n\\n \"),(feature.description)?_c('info-hud',[_vm._v(\"\\n \"+_vm._s(feature.description)+\"\\n \")]):_vm._e()],1)}),0)],1),_vm._v(\" \"),_c('div',{staticClass:\"cms-edition-actions\"},[_c('status-badge',{attrs:{\"edition\":_vm.editionIndex}}),_vm._v(\" \"),_c('buy-btn',{attrs:{\"edition\":_vm.editionIndex,\"edition-handle\":_vm.edition.handle}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./CmsEditions.vue?vue&type=template&id=57fe1b22&\"\nimport script from \"./CmsEditions.vue?vue&type=script&lang=js&\"\nexport * from \"./CmsEditions.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CmsEditions.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CmsEditions.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"cms-editions\",class:{\n 'tw-py-6': true,\n 'md:tw-flex md:tw--mx-4 md:tw-justify-center': true,\n }},_vm._l((_vm.cmsEditions),function(edition,key){return _c('cms-edition',{key:key,staticClass:\"md:tw-flex-1 md:tw-mx-4 md:tw-max-w-xs\",attrs:{\"edition\":edition}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./upgrade-craft.vue?vue&type=template&id=ab368d08&\"\nimport script from \"./upgrade-craft.vue?vue&type=script&lang=js&\"\nexport * from \"./upgrade-craft.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"ps-container\"},[_c('h1',[_vm._v(_vm._s(_vm._f(\"t\")('Upgrade Craft CMS','app')))]),_vm._v(\" \"),_c('hr'),_vm._v(\" \"),(!_vm.loading)?[(_vm.errorMsg)?[(_vm.errorMsg)?_c('div',{staticClass:\"error\"},[_vm._v(\"\\n \"+_vm._s(_vm.errorMsg)+\"\\n \")]):_vm._e()]:[_c('cms-editions')]]:[_c('c-spinner')]],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./EnterpriseVerifiedIcon.vue?vue&type=template&id=5d14941e&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"width\":\"100\",\"height\":\"100\",\"viewBox\":\"0 0 100 100\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",\"d\":\"M20 20C20 17.3478 21.0536 14.8043 22.9289 12.9289C24.8043 11.0536 27.3478 10 30 10H70C72.6522 10 75.1957 11.0536 77.0711 12.9289C78.9464 14.8043 80 17.3478 80 20V80C81.3261 80 82.5979 80.5268 83.5355 81.4645C84.4732 82.4021 85 83.6739 85 85C85 86.3261 84.4732 87.5979 83.5355 88.5355C82.5979 89.4732 81.3261 90 80 90H65C63.6739 90 62.4021 89.4732 61.4645 88.5355C60.5268 87.5979 60 86.3261 60 85V75C60 73.6739 59.4732 72.4021 58.5355 71.4645C57.5979 70.5268 56.3261 70 55 70H45C43.6739 70 42.4021 70.5268 41.4645 71.4645C40.5268 72.4021 40 73.6739 40 75V85C40 86.3261 39.4732 87.5979 38.5355 88.5355C37.5979 89.4732 36.3261 90 35 90H20C18.6739 90 17.4021 89.4732 16.4645 88.5355C15.5268 87.5979 15 86.3261 15 85C15 83.6739 15.5268 82.4021 16.4645 81.4645C17.4021 80.5268 18.6739 80 20 80V20ZM35 25H45V35H35V25ZM45 45H35V55H45V45ZM55 25H65V35H55V25ZM65 45H55V55H65V45Z\",\"fill\":\"currentColor\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./CraftCommerceVerifiedIcon.vue?vue&type=template&id=c916ab2e&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"width\":\"100\",\"height\":\"100\",\"viewBox\":\"0 0 100 100\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('path',{attrs:{\"d\":\"M20 20C17.3478 20 14.8043 21.0536 12.9289 22.9289C11.0536 24.8043 10 27.3478 10 30V35H90V30C90 27.3478 88.9464 24.8043 87.0711 22.9289C85.1957 21.0536 82.6522 20 80 20H20Z\",\"fill\":\"currentColor\"}}),_vm._v(\" \"),_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",\"d\":\"M90 45H10V70C10 72.6522 11.0536 75.1957 12.9289 77.0711C14.8043 78.9464 17.3478 80 20 80H80C82.6522 80 85.1957 78.9464 87.0711 77.0711C88.9464 75.1957 90 72.6522 90 70V45ZM20 65C20 63.6739 20.5268 62.4021 21.4645 61.4645C22.4021 60.5268 23.6739 60 25 60H30C31.3261 60 32.5979 60.5268 33.5355 61.4645C34.4732 62.4021 35 63.6739 35 65C35 66.3261 34.4732 67.5979 33.5355 68.5355C32.5979 69.4732 31.3261 70 30 70H25C23.6739 70 22.4021 69.4732 21.4645 68.5355C20.5268 67.5979 20 66.3261 20 65ZM45 60C43.6739 60 42.4021 60.5268 41.4645 61.4645C40.5268 62.4021 40 63.6739 40 65C40 66.3261 40.5268 67.5979 41.4645 68.5355C42.4021 69.4732 43.6739 70 45 70H50C51.3261 70 52.5979 69.4732 53.5355 68.5355C54.4732 67.5979 55 66.3261 55 65C55 63.6739 54.4732 62.4021 53.5355 61.4645C52.5979 60.5268 51.3261 60 50 60H45Z\",\"fill\":\"currentColor\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./CraftVerifiedIcon.vue?vue&type=template&id=47aed198&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"width\":\"100\",\"height\":\"100\",\"viewBox\":\"0 0 100 100\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",\"d\":\"M83.535 26.465C84.4723 27.4026 84.9989 28.6742 84.9989 30C84.9989 31.3258 84.4723 32.5974 83.535 33.535L43.535 73.535C42.5973 74.4724 41.3258 74.9989 40 74.9989C38.6741 74.9989 37.4026 74.4724 36.465 73.535L16.465 53.535C15.5542 52.592 15.0502 51.329 15.0616 50.018C15.073 48.707 15.5988 47.4529 16.5259 46.5259C17.4529 45.5989 18.707 45.073 20.018 45.0616C21.3289 45.0502 22.5919 45.5542 23.535 46.465L40 62.93L76.465 26.465C77.4026 25.5276 78.6741 25.0011 80 25.0011C81.3258 25.0011 82.5973 25.5276 83.535 26.465Z\",\"fill\":\"currentColor\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PartnerBadge.vue?vue&type=template&id=7e0d0280&\"\nimport script from \"./PartnerBadge.vue?vue&type=script&lang=js&\"\nexport * from \"./PartnerBadge.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tw-border tw-border-blue-600 tw-text-blue-600 tw-rounded-full tw-w-5 tw-h-5 tw-p-[2px]\"},[_c(_vm.computedComponent,{tag:\"component\",staticClass:\"tw-w-full tw-h-full\"})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n\n \n \n
\n \n \n \n\n \n \n
  • \n \n {{ 'Partner Profile' }}\n \n \n
  • \n \n \n
    \n \n \n \n \n \n \n \n \n\n\n\n","import { render, staticRenderFns } from \"./_id.vue?vue&type=template&id=16c45ef7&\"\nimport script from \"./_id.vue?vue&type=script&lang=js&\"\nexport * from \"./_id.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_id.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_id.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"ps-container\"},[(!_vm.loading)?[_c('plugin-index',{attrs:{\"action\":\"pluginStore/getPluginsByDeveloperId\",\"requestData\":_vm.requestData,\"plugins\":_vm.plugins},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [(_vm.developer)?_c('div',{staticClass:\"developer-card tw-flex tw-pb-6 tw-items-center\"},[(_vm.developer.photoUrl)?[_c('div',{staticClass:\"avatar tw-w-28 tw-h-28 tw-inline-block tw-overflow-hidden tw-rounded-full tw-bg-gray-100 tw-mr-8 tw-no-line-height\"},[_c('img',{staticClass:\"tw-w-full tw-h-full\",attrs:{\"src\":_vm.developer.photoUrl}})])]:_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"tw-flex-1\"},[_c('h1',{staticClass:\"tw-text-lg tw-font-bold\"},[_vm._v(\"\\n \"+_vm._s(_vm.developer.developerName)+\"\\n \")]),_vm._v(\" \"),(_vm.developer.location)?_c('div',{staticClass:\"tw-mt-1\"},[_vm._v(\"\\n \"+_vm._s(_vm.developer.location)+\"\\n \")]):_vm._e(),_vm._v(\" \"),(\n _vm.developer.partnerInfo &&\n (_vm.developer.partnerInfo.isCraftVerified ||\n _vm.developer.partnerInfo.isCommerceVerified ||\n _vm.developer.partnerInfo.isEnterpriseVerified)\n )?[_c('div',{staticClass:\"tw-mt-4 tw-text-sm\"},[_c('ul',{staticClass:\"xl:tw-flex tw-space-y-2 xl:tw-space-y-0 xl:tw-space-x-6 tw-text-gray-600\"},[(\n _vm.developer.partnerInfo &&\n _vm.developer.partnerInfo.isCraftVerified\n )?[_c('li',{staticClass:\"tw-flex tw-items-center\"},[_c('partner-badge',{staticClass:\"tw-shrink-0 tw-mr-2\",attrs:{\"kind\":\"craft\"}}),_vm._v(\"\\n Craft Verified\\n \")],1)]:_vm._e(),_vm._v(\" \"),(\n _vm.developer.partnerInfo &&\n _vm.developer.partnerInfo.isCommerceVerified\n )?[_c('li',{staticClass:\"tw-flex tw-items-center\"},[_c('partner-badge',{staticClass:\"tw-shrink-0 tw-mr-2\",attrs:{\"kind\":\"commerce\"}}),_vm._v(\"\\n Craft Commerce Verified\\n \")],1)]:_vm._e(),_vm._v(\" \"),(\n _vm.developer.partnerInfo &&\n _vm.developer.partnerInfo.isEnterpriseVerified\n )?[_c('li',{staticClass:\"tw-flex tw-items-center\"},[_c('partner-badge',{staticClass:\"tw-shrink-0 tw-mr-2\",attrs:{\"kind\":\"enterprise\"}}),_vm._v(\"\\n Enterprise Verified\\n \")],1)]:_vm._e()],2)])]:_vm._e(),_vm._v(\" \"),(\n _vm.developer.developerUrl ||\n (_vm.developer.partnerInfo && _vm.developer.partnerInfo.profileUrl)\n )?[_c('div',{staticClass:\"tw-mt-4 tw-text-sm\"},[_c('ul',{staticClass:\"developer-buttons xl:tw-flex tw-space-y-2 xl:tw-space-y-0 xl:tw-space-x-3 tw-text-gray-600 tw-space-y-2\"},[(_vm.developer.developerUrl)?[_c('li',[_c('c-btn',{attrs:{\"target\":\"_blank\",\"href\":_vm.developer.developerUrl}},[_vm._v(_vm._s(_vm._f(\"t\")('Website','app'))+\"\\n \"),_c('c-icon',{staticClass:\"tw-w-3 tw-h-3 tw-text-grey-dark tw-ml-1\",attrs:{\"icon\":\"external-link\",\"size\":null}})],1)],1)]:_vm._e(),_vm._v(\" \"),(\n _vm.developer.partnerInfo &&\n _vm.developer.partnerInfo.profileUrl\n )?[_c('li',{staticClass:\"tw-inline-block tw-mr-2\"},[_c('c-btn',{staticClass:\"tw-inline-block\",attrs:{\"target\":\"_blank\",\"href\":_vm.developer.partnerInfo.profileUrl}},[_vm._v(\"\\n \"+_vm._s('Partner Profile')+\"\\n \"),_c('c-icon',{staticClass:\"tw-w-3 tw-h-3 tw-text-grey-dark tw-ml-1\",attrs:{\"icon\":\"external-link\",\"size\":null}})],1)],1)]:_vm._e()],2)])]:_vm._e()],2)],2):_vm._e()]},proxy:true}],null,false,2117456370)})]:[_c('c-spinner')]],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./_handle.vue?vue&type=template&id=26598c04&\"\nimport script from \"./_handle.vue?vue&type=script&lang=js&\"\nexport * from \"./_handle.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_handle.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_handle.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"ps-container\"},[(!_vm.loading)?[_c('plugin-index',{attrs:{\"action\":\"pluginStore/getPluginsByFeaturedSectionHandle\",\"requestData\":_vm.requestData,\"plugins\":_vm.plugins,\"disableSorting\":true},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [(_vm.featuredSection)?[_c('h1',[_vm._v(_vm._s(_vm.featuredSection.title))])]:_vm._e()]},proxy:true}],null,false,780213750)})]:[_c('c-spinner')]],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/* global Craft */\n\nclass Api {\n abortController = null;\n\n setAbortController(abortController) {\n this.abortController = abortController;\n }\n\n /**\n * Cancel requests.\n */\n cancelRequests() {\n if (this.abortController) {\n this.abortController.abort();\n }\n }\n\n /**\n * Send API request.\n *\n * @param {string} method\n * @param {string} uri\n * @param {object} options\n *\n * @returns {Promise}\n */\n sendApiRequest(method, uri, options) {\n options = this.prepareOptions(options);\n return Craft.sendApiRequest(method, uri, options);\n }\n\n /**\n * Send action request.\n *\n * @param {string} method\n * @param {string} action\n * @param {object} options\n *\n * @returns {Promise}\n */\n sendActionRequest(method, action, options) {\n options = this.prepareOptions(options);\n return Craft.sendActionRequest(method, action, options);\n }\n\n /**\n * Prepare options.\n *\n * @param {object} options\n *\n * @returns {object}\n */\n prepareOptions(options) {\n if (\n !this.abortController ||\n (this.abortController &&\n this.abortController.signal &&\n this.abortController.signal.aborted)\n ) {\n this.abortController = new AbortController();\n }\n\n if (!options) {\n options = {};\n }\n\n // Add abort signal if needed\n if (!options.signal) {\n options.signal = this.abortController.signal;\n }\n\n return options;\n }\n}\n\nconst ApiInstance = new Api();\n\nexport default ApiInstance;\n","import axios from 'axios';\nimport api from '../utils/api';\n\nexport default {\n /**\n * Cancel requests.\n */\n cancelRequests() {\n api.cancelRequests();\n },\n\n /**\n * Get plugin store data.\n *\n * @returns {AxiosPromise}\n */\n getCoreData() {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'plugin-store/core-data')\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get CMS editions.\n *\n * @returns {AxiosPromise}\n */\n getCmsEditions() {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'cms-editions')\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get developer.\n *\n * @param developerId\n * @returns {AxiosPromise}\n */\n getDeveloper(developerId) {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'developer/' + developerId)\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get featured section by handle.\n *\n * @param featuredSectionHandle\n * @returns {AxiosPromise}\n */\n getFeaturedSectionByHandle(featuredSectionHandle) {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest(\n 'GET',\n 'plugin-store/featured-section/' + featuredSectionHandle\n )\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get featured sections.\n *\n * @returns {AxiosPromise}\n */\n getFeaturedSections() {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'plugin-store/featured-sections')\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get plugin changelog.\n *\n * @param pluginId\n * @returns {AxiosPromise}\n */\n getPluginChangelog(pluginId) {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'plugin/' + pluginId + '/changelog')\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get plugin details.\n *\n * @param pluginId\n * @returns {AxiosPromise}\n */\n getPluginDetails(pluginId) {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'plugin/' + pluginId)\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get plugin details by handle.\n *\n * @param pluginHandle\n * @returns {AxiosPromise}\n */\n getPluginDetailsByHandle(pluginHandle) {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'plugin-store/plugin/' + pluginHandle, {\n params: {\n withInstallHistory: true,\n withIssueStats: true,\n },\n })\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get plugins by category.\n *\n * @param categoryId\n * @param pluginIndexParams\n * @returns {AxiosPromise}\n */\n getPluginsByCategory(categoryId, pluginIndexParams) {\n return new Promise((resolve, reject) => {\n const params = this._getPluginIndexParams(pluginIndexParams);\n params.categoryId = categoryId;\n\n api\n .sendApiRequest('GET', 'plugin-store/plugins', {\n params,\n })\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // Request was cancelled, silently fail\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get plugins by developer ID.\n *\n * @param developerId\n * @param pluginIndexParams\n * @returns {AxiosPromise}\n */\n getPluginsByDeveloperId(developerId, pluginIndexParams) {\n return new Promise((resolve, reject) => {\n const params = this._getPluginIndexParams(pluginIndexParams);\n params.developerId = developerId;\n\n api\n .sendApiRequest('GET', 'plugin-store/plugins', {\n params,\n })\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get plugins by featured section handle.\n *\n * @param featuredSectionHandle\n * @param pluginIndexParams\n * @returns {AxiosPromise}\n */\n getPluginsByFeaturedSectionHandle(featuredSectionHandle, pluginIndexParams) {\n return new Promise((resolve, reject) => {\n const params = this._getPluginIndexParams(pluginIndexParams);\n\n api\n .sendApiRequest(\n 'GET',\n 'plugin-store/plugins-by-featured-section/' + featuredSectionHandle,\n {\n params,\n }\n )\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get plugins by handles.\n *\n * @param pluginHandles\n * @returns {AxiosPromise}\n */\n getPluginsByHandles(pluginHandles) {\n return new Promise((resolve, reject) => {\n let pluginHandlesString;\n\n if (Array.isArray(pluginHandles)) {\n pluginHandlesString = pluginHandles.join(',');\n } else {\n pluginHandlesString = pluginHandles;\n }\n\n api\n .sendApiRequest('GET', 'plugin-store/plugins-by-handles', {\n params: {\n pluginHandles: pluginHandlesString,\n },\n })\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get plugins by IDs.\n *\n * @param pluginIds\n * @returns {AxiosPromise}\n */\n getPluginsByIds(pluginIds) {\n return new Promise((resolve, reject) => {\n let pluginIdsString;\n\n if (Array.isArray(pluginIds)) {\n pluginIdsString = pluginIds.join(',');\n } else {\n pluginIdsString = pluginIds;\n }\n\n api\n .sendApiRequest('GET', 'plugins', {\n params: {\n ids: pluginIdsString,\n },\n })\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Search plugins.\n *\n * @param searchQuery\n * @param pluginIndexParams\n * @returns {AxiosPromise}\n */\n searchPlugins(searchQuery, pluginIndexParams) {\n return new Promise((resolve, reject) => {\n const params = this._getPluginIndexParams(pluginIndexParams);\n params.searchQuery = searchQuery;\n\n api\n .sendApiRequest('GET', 'plugin-store/plugins', {\n params,\n })\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get plugin index params.\n *\n * @param limit\n * @param offset\n * @param orderBy\n * @param direction\n * @returns {{offset: *, limit: *, orderBy: *, direction: *}}\n * @private\n */\n _getPluginIndexParams({perPage, page, orderBy, direction}) {\n if (!perPage) {\n perPage = 96;\n }\n\n if (!page) {\n page = 1;\n }\n\n return {\n perPage,\n page,\n orderBy,\n direction,\n };\n },\n};\n","import { render, staticRenderFns } from \"./StatusMessage.vue?vue&type=template&id=acf66fa2&\"\nimport script from \"./StatusMessage.vue?vue&type=script&lang=js&\"\nexport * from \"./StatusMessage.vue?vue&type=script&lang=js&\"\nimport style0 from \"./StatusMessage.vue?vue&type=style&index=0&id=acf66fa2&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"status-message\"},[_c('div',[(_vm.error)?[_c('c-icon',{attrs:{\"icon\":\"exclamation-triangle\"}})]:[_c('c-spinner',{attrs:{\"size\":\"lg\"}})],_vm._v(\" \"),_c('div',{staticClass:\"message\"},[_vm._v(_vm._s(_vm.message))])],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./_plugin.vue?vue&type=template&id=ad83da98&\"\nimport script from \"./_plugin.vue?vue&type=script&lang=js&\"\nexport * from \"./_plugin.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_plugin.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_plugin.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"ps-container buy-plugin\"},[(_vm.loading)?_c('status-message',{staticClass:\"tw-h-full\",attrs:{\"message\":_vm.statusMessage}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./buy-all-trials.vue?vue&type=template&id=1bc750cd&\"\nimport script from \"./buy-all-trials.vue?vue&type=script&lang=js&\"\nexport * from \"./buy-all-trials.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./buy-all-trials.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./buy-all-trials.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"ps-container buy-plugin\"},[(_vm.loading)?_c('status-message',{staticClass:\"tw-h-full\",attrs:{\"message\":_vm.statusMessage}}):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./tests.vue?vue&type=template&id=14e62e52&\"\nimport script from \"./tests.vue?vue&type=script&lang=js&\"\nexport * from \"./tests.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('h2',[_vm._v(\"Translations\")]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.somePrice))+\" per year for updates\")]),_vm._v(\" \"),_c('p',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('{price} per year for updates','app', {price: _vm.$root.$options.filters.currency(_vm.somePrice)}))+\"\\n \")]),_vm._v(\" \"),_vm._m(0),_vm._v(\" \"),_c('p',{domProps:{\"innerHTML\":_vm._s(_vm.craftTranslation)}}),_vm._v(\" \"),_c('h2',[_vm._v(\"Modal\")]),_vm._v(\" \"),_c('p',[_c('a',{on:{\"click\":function($event){return _vm.openModal()}}},[_vm._v(\"Open Garnish Modal\")])]),_vm._v(\" \"),_c('div',{staticClass:\"tw-hidden\"},[_c('div',{ref:\"garnishmodalcontent\",staticClass:\"modal\"},[_c('div',{staticClass:\"body\"},[_vm._v(\"Hello World\")])])])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',[_vm._v(\"{{ \\\"Go to {link}\\\"|t('app', {link: '\"),_c('a',{attrs:{\"href\":\"#\"}},[_vm._v(\"test\")]),_vm._v(\"' }) }}\")])}]\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./_not-found.vue?vue&type=template&id=66be910d&\"\nimport script from \"./_not-found.vue?vue&type=script&lang=js&\"\nexport * from \"./_not-found.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('status-message',{attrs:{\"error\":true,\"message\":_vm.message}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./SearchTabs.vue?vue&type=template&id=18121a7b&\"\nimport script from \"./SearchTabs.vue?vue&type=script&lang=js&\"\nexport * from \"./SearchTabs.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"search-tabs tw-mt-2\"},[_c('ul',{staticClass:\"tw--mb-px tw-flex tw-space-x-6\"},_vm._l((_vm.tabs),function(tab,tabKey){return _c('li',{key:tabKey},[_c('button',{class:{\n 'tw-text-base tw-inline-block tw-px-1 tw-py-3 tw-border-0 tw-border-b-2 tw-border-solid tw-text-gray-500 tw-text-opacity-75 hover:tw-text-opacity-100': true,\n 'tw-border-transparent hover:tw-border-separator hover:tw-border-gray-200':\n tab.handle !== _vm.activeTab,\n 'tw-text-blue-600 tw-border-blue-600 tw-text-opacity-100':\n tab.handle === _vm.activeTab,\n },on:{\"click\":function($event){return _vm.$emit('tab-click', tab.handle)}}},[_vm._v(\"\\n \"+_vm._s(tab.name)+\"\\n \")])])}),0)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","\n\n\n","import { render, staticRenderFns } from \"./DeveloperIndex.vue?vue&type=template&id=0b2466b1&\"\nimport script from \"./DeveloperIndex.vue?vue&type=script&lang=js&\"\nexport * from \"./DeveloperIndex.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DeveloperIndex.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DeveloperIndex.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"tw-border-b tw-border-solid tw-border-gray-200\"},[_vm._t(\"header\")],2),_vm._v(\" \"),_c('div',{staticClass:\"tw-grid-plugins tw-grid tw-grid-cols-1 sm:tw-grid-cols-2 lg:tw-grid-cols-3 tw-gap-x-8\"},[_vm._l((_vm.developers),function(developer,developerKey){return [_c('div',{key:developerKey,staticClass:\"tw-grid-box tw-border-b\"},[_c('div',{staticClass:\"tw-flex tw-items-center tw-py-6\"},[_c('div',{staticClass:\"tw-bg-red-500 tw-rounded-full tw-w-16 tw-h-16 tw-mr-4\"}),_vm._v(\" \"),_c('div',{staticClass:\"developer-card\"},[_c('h3',{staticClass:\"font-bold\"},[_vm._v(\"\\n \"+_vm._s(developer.name)+\"\\n \")]),_vm._v(\" \"),_vm._m(0,true)])])])]})],2)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ul',[_c('li',[_vm._v(\"3 plugins\")])])}]\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./search.vue?vue&type=template&id=1cb6286b&\"\nimport script from \"./search.vue?vue&type=script&lang=js&\"\nexport * from \"./search.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./search.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./search.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"ps-container\"},[(_vm.activeTab === 'developers')?[_c('developer-index',{staticClass:\"mb-16\",attrs:{\"request-data\":_vm.requestData},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('h1',{staticClass:\"mt-0 mb-0\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Showing results for “{searchQuery}”','app', {searchQuery: _vm.searchQuery}))+\"\\n \")]),_vm._v(\" \"),_c('search-tabs',{attrs:{\"active-tab\":_vm.activeTab},on:{\"tab-click\":function($event){_vm.activeTab = $event}}})]},proxy:true}],null,false,2956853969)})]:_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'plugins')?[_c('plugin-index',{ref:\"pluginIndex\",attrs:{\"action\":\"pluginStore/searchPlugins\",\"requestData\":_vm.requestData,\"plugins\":_vm.plugins},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('div',[_c('h1',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Showing results for “{searchQuery}”','app', {searchQuery: _vm.searchQuery}))+\"\\n \")]),_vm._v(\" \"),_c('search-tabs',{attrs:{\"active-tab\":_vm.activeTab},on:{\"tab-click\":function($event){_vm.activeTab = $event}}})],1)]},proxy:true}],null,false,1589703536)})]:_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PluginScreenshots.vue?vue&type=template&id=6b129ee1&\"\nimport script from \"./PluginScreenshots.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginScreenshots.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tw-overflow-x-auto tw-w-full tw-flex tw-gap-6 tw-snap-x tw-snap-mandatory tw-pb-8\"},_vm._l((_vm.thumbnails),function(image,key){return _c('a',{key:key,staticClass:\"tw-shrink-0 tw-snap-start tw-w-64 tw-aspect-[4/3]\",on:{\"click\":function($event){$event.preventDefault();return _vm.zoomImage(key)}}},[_c('div',{staticClass:\"tw-flex tw-justify-center tw-items-center tw-w-full tw-h-full\"},[_c('img',{staticClass:\"tw-rounded-md tw-max-w-full tw-max-h-full\",attrs:{\"alt\":'Plugin screenshot thumbnail ' + (key + 1) + '/' + _vm.thumbnails.length,\"src\":image}})])])}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default {\n computed: {\n licenseMismatched() {\n return this.getLicenseMismatched(this.pluginLicenseInfo);\n },\n\n licenseValidOrAstray() {\n return this.getLicenseValidOrAstray(this.pluginLicenseInfo);\n },\n },\n\n methods: {\n getLicenseMismatched(pluginLicenseInfo) {\n return (\n pluginLicenseInfo && pluginLicenseInfo.licenseKeyStatus === 'mismatched'\n );\n },\n\n getLicenseValidOrAstray(pluginLicenseInfo) {\n return (\n pluginLicenseInfo.licenseKeyStatus === 'valid' ||\n pluginLicenseInfo.licenseKeyStatus === 'astray'\n );\n },\n },\n};\n","import { render, staticRenderFns } from \"./MetaStat.vue?vue&type=template&id=2f678c66&\"\nimport script from \"./MetaStat.vue?vue&type=script&lang=js&\"\nexport * from \"./MetaStat.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:{\n 'tw-border-b tw-py-4': _vm.border,\n }},[_c('dt',{staticClass:\"tw-text-gray-500\"},[_vm._t(\"title\")],2),_vm._v(\" \"),_c('dd',{staticClass:\"tw-mt-1 tw-font-medium\"},[_vm._t(\"content\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import {currency} from '../filters/currency';\n\nconst getPriceLabel = (price) => {\n return price > 0 ? currency(price) : 'Free';\n};\n\nconst getPriceRange = (editions) => {\n let min = null;\n let max = null;\n\n for (let i = 0; i < editions.length; i++) {\n const edition = editions[i];\n\n let price = 0;\n\n if (edition.price) {\n price = parseInt(edition.price);\n }\n\n if (min === null) {\n min = price;\n }\n\n if (max === null) {\n max = price;\n }\n\n if (price < min) {\n min = price;\n }\n\n if (price > max) {\n max = price;\n }\n }\n\n return {\n min,\n max,\n };\n};\n\nconst getPriceRangeLabel = (plugin) => {\n const {min, max} = getPriceRange(plugin.editions);\n\n if (min !== max) {\n return `${getPriceLabel(min)} – ${getPriceLabel(max)}`;\n }\n\n return getPriceLabel(min);\n};\n\nconst isPluginFree = (plugin) => {\n const {min, max} = getPriceRange(plugin.editions);\n\n if (min !== 0 || max !== 0) {\n return false;\n }\n\n return true;\n};\n\nexport {getPriceLabel, getPriceRange, getPriceRangeLabel, isPluginFree};\n","\n \n \n \n\n \n\n \n \n\n \n
    \n

    \n {{\n 'Only up to {version} is compatible with your version of Craft.'\n | t('app', {version: plugin.latestCompatibleVersion})\n }}\n

    \n
    \n \n \n \n \n \n\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginActions.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginActions.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PluginEditionPrice.vue?vue&type=template&id=28b67676&\"\nimport script from \"./PluginEditionPrice.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginEditionPrice.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n \n \n\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(!_vm.isPluginEditionFree(_vm.edition))?[(\n _vm.licensedEdition &&\n _vm.licensedEdition.handle !== _vm.edition.handle &&\n _vm.licensedEdition.price > 0 &&\n _vm.licenseValidOrAstray\n )?[_c('del',[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.edition.price)))]),_vm._v(\"\\n \"+_vm._s(_vm._f(\"currency\")((_vm.edition.price - _vm.licensedEdition.price)))+\"\\n \")]:[_vm._v(\"\\n \"+_vm._s(_vm._f(\"currency\")(_vm.edition.price))+\"\\n \")]]:[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Free','app'))+\"\\n \")]],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PluginActions.vue?vue&type=template&id=8b638946&\"\nimport script from \"./PluginActions.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginActions.vue?vue&type=script&lang=js&\"\nimport style0 from \"./PluginActions.vue?vue&type=style&index=0&id=8b638946&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.plugin)?_c('div',{staticClass:\"plugin-actions tw-relative tw-space-y-2\"},[(!_vm.isPluginEditionFree)?[(_vm.isInCart(_vm.plugin, _vm.edition))?[(_vm.allowUpdates)?_c('c-btn',{attrs:{\"kind\":\"primary\",\"icon\":\"check\",\"block\":\"\",\"large\":\"\",\"disabled\":\"\"},on:{\"click\":function($event){return _vm.$root.openModal('cart')}}},[_vm._v(_vm._s(_vm._f(\"t\")('Already in your cart','app'))+\"\\n \")]):_vm._e()]:[(_vm.allowUpdates && _vm.isEditionMoreExpensiveThanLicensed)?_c('c-btn',{attrs:{\"kind\":\"primary\",\"loading\":_vm.addToCartloading,\"disabled\":_vm.addToCartloading ||\n !_vm.plugin.latestCompatibleVersion ||\n !_vm.plugin.phpVersionCompatible ||\n _vm.licenseMismatched ||\n _vm.plugin.abandoned,\"block\":\"\",\"large\":\"\"},on:{\"click\":function($event){return _vm.addEditionToCart(_vm.edition.handle)}}},[_c('plugin-edition-price',{attrs:{\"edition\":_vm.edition}})],1):(_vm.licensedEdition === _vm.edition.handle)?_c('c-btn',{attrs:{\"kind\":\"primary\",\"block\":\"\",\"large\":\"\",\"disabled\":\"\"}},[_vm._v(_vm._s(_vm._f(\"t\")('Licensed','app'))+\"\\n \")]):_vm._e()]]:_vm._e(),_vm._v(\" \"),(!_vm.isPluginInstalled || _vm.currentEdition !== _vm.edition.handle)?[(_vm.allowUpdates || _vm.isPluginInstalled)?_c('form',{attrs:{\"method\":\"post\"},on:{\"submit\":_vm.onSwitchOrInstallSubmit}},[_c('input',{attrs:{\"type\":\"hidden\",\"name\":_vm.csrfTokenName},domProps:{\"value\":_vm.csrfTokenValue}}),_vm._v(\" \"),(_vm.isPluginInstalled)?[_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"action\",\"value\":\"plugins/switch-edition\"}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"pluginHandle\"},domProps:{\"value\":_vm.plugin.handle}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"edition\"},domProps:{\"value\":_vm.edition.handle}})]:[_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"action\",\"value\":\"pluginstore/install\"}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"packageName\"},domProps:{\"value\":_vm.plugin.packageName}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"handle\"},domProps:{\"value\":_vm.plugin.handle}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"edition\"},domProps:{\"value\":_vm.edition.handle}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"version\"},domProps:{\"value\":_vm.plugin.latestCompatibleVersion}})],_vm._v(\" \"),(_vm.isPluginEditionFree)?[_c('c-btn',{attrs:{\"kind\":\"primary\",\"type\":\"submit\",\"loading\":_vm.loading,\"disabled\":!_vm.plugin.latestCompatibleVersion || !_vm.plugin.phpVersionCompatible,\"block\":\"\",\"large\":\"\"}},[_vm._v(_vm._s(_vm._f(\"t\")('Install','app'))+\"\\n \")])]:[(\n (_vm.isEditionMoreExpensiveThanLicensed &&\n _vm.currentEdition === _vm.edition.handle) ||\n (_vm.licensedEdition === _vm.edition.handle && !_vm.currentEdition)\n )?[_c('c-btn',{attrs:{\"type\":\"submit\",\"loading\":_vm.loading,\"disabled\":!_vm.plugin.latestCompatibleVersion || !_vm.plugin.phpVersionCompatible,\"block\":\"\",\"large\":\"\"}},[_vm._v(_vm._s(_vm._f(\"t\")('Install','app'))+\"\\n \")])]:(\n _vm.isEditionMoreExpensiveThanLicensed &&\n _vm.currentEdition !== _vm.edition.handle\n )?[_c('c-btn',{attrs:{\"type\":\"submit\",\"disabled\":!(\n (_vm.pluginLicenseInfo &&\n _vm.pluginLicenseInfo.isInstalled &&\n _vm.pluginLicenseInfo.isEnabled) ||\n !_vm.pluginLicenseInfo\n ) ||\n !_vm.plugin.latestCompatibleVersion ||\n !_vm.plugin.phpVersionCompatible,\"loading\":_vm.loading,\"block\":\"\",\"large\":\"\"}},[_vm._v(_vm._s(_vm._f(\"t\")('Try','app'))+\"\\n \")])]:(\n _vm.currentEdition &&\n _vm.licensedEdition === _vm.edition.handle &&\n _vm.currentEdition !== _vm.edition.handle\n )?[_c('c-btn',{attrs:{\"type\":\"submit\",\"loading\":_vm.loading,\"block\":\"\",\"large\":\"\"}},[_vm._v(_vm._s(_vm._f(\"t\")('Reactivate','app'))+\"\\n \")])]:_vm._e()]],2):_vm._e()]:[(_vm.currentEdition !== _vm.licensedEdition && !_vm.isPluginEditionFree)?[_c('c-btn',{attrs:{\"icon\":\"check\",\"disabled\":true,\"large\":\"\",\"block\":\"\"}},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Installed as a trial','app'))+\"\\n \")])]:[_c('c-btn',{attrs:{\"icon\":\"check\",\"disabled\":true,\"block\":\"\",\"large\":\"\"}},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Installed','app'))+\"\\n \")])]],_vm._v(\" \"),(\n _vm.plugin.latestCompatibleVersion &&\n _vm.plugin.latestCompatibleVersion != _vm.plugin.version\n )?[_c('div',{staticClass:\"tw-text-gray-600 tw-mt-4\"},[_c('p',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Only up to {version} is compatible with your version of Craft.','app', {version: _vm.plugin.latestCompatibleVersion}))+\"\\n \")])])]:(!_vm.plugin.latestCompatibleVersion)?[_c('div',{staticClass:\"tw-text-gray-600 tw-mt-4\"},[_c('p',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('This plugin isn’t compatible with your version of Craft.','app'))+\"\\n \")])])]:(!_vm.plugin.phpVersionCompatible)?[_c('div',{staticClass:\"tw-text-gray-600 tw-mt-4\"},[(_vm.plugin.incompatiblePhpVersion === 'php')?_c('p',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('This plugin requires PHP {v1}, but your environment is currently running {v2}.','app', {\n v1: _vm.plugin.phpConstraint,\n v2: _vm.phpVersion(),\n }))+\"\\n \")]):_c('p',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('This plugin requires PHP {v1}, but your composer.json file is currently set to {v2}.','app', {\n v1: _vm.plugin.phpConstraint,\n v2: _vm.composerPhpVersion(),\n }))+\"\\n \")])])]:(!_vm.isPluginEditionFree && _vm.plugin.abandoned)?[_c('div',{staticClass:\"tw-text-gray-600 tw-mt-4\"},[_c('p',[_vm._v(_vm._s(_vm._f(\"t\")('This plugin is no longer maintained.','app')))])])]:_vm._e()],2):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./PluginEdition.vue?vue&type=template&id=0a85400b&\"\nimport script from \"./PluginEdition.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginEdition.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginEdition.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginEdition.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"plugin-editions-edition\",class:{\n 'tw-flex tw-flex-col': true,\n 'tw-border tw-border-gray-200 tw-border-solid tw-rounded-md':\n _vm.context !== 'meta' ||\n _vm.plugin.editions.length > 1 ||\n !_vm.isPluginEditionFree(_vm.edition),\n 'tw-p-8 tw-text-center': _vm.context !== 'meta',\n 'tw-p-4':\n _vm.context === 'meta' &&\n (_vm.plugin.editions.length > 1 || !_vm.isPluginEditionFree(_vm.edition)),\n }},[_c('div',{staticClass:\"description tw-flex-1\"},[(_vm.plugin.editions.length > 1)?[_c('div',{staticClass:\"tw-text-xl tw-font-bold tw-mb-4\"},[_vm._v(\"\\n \"+_vm._s(_vm.edition.name)+\"\\n \")])]:_vm._e(),_vm._v(\" \"),(_vm.context !== 'meta')?[(\n _vm.plugin.editions.length > 1 &&\n _vm.edition.features &&\n _vm.edition.features.length > 0\n )?_c('ul',{staticClass:\"tw-text-left tw-mt-8 tw-mb-8\"},_vm._l((_vm.edition.features),function(feature,key){return _c('li',{key:key,staticClass:\"tw-py-2 tw-border-b tw-border-gray-200 tw-border-solid\",class:{\n 'tw-border-t': key === 0,\n }},[_c('c-icon',{attrs:{\"icon\":\"check\"}}),_vm._v(\"\\n \"+_vm._s(feature.name)+\"\\n\\n \"),(feature.description)?_c('info-hud',[_vm._v(\"\\n \"+_vm._s(feature.description)+\"\\n \")]):_vm._e()],1)}),0):_vm._e()]:_vm._e()],2),_vm._v(\" \"),_c('plugin-actions',{attrs:{\"plugin\":_vm.plugin,\"edition\":_vm.edition}}),_vm._v(\" \"),(!_vm.isPluginEditionFree(_vm.edition))?_c('p',{staticClass:\"tw-text-gray-700\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Price includes 1 year of updates.','app'))+\"\\n \"+_vm._s(_vm._f(\"t\")('{renewalPrice}/year per site for updates after that.','app', {\n renewalPrice: _vm.$options.filters.currency(_vm.edition.renewalPrice),\n }))+\"\\n \")]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PluginMetaBuyButton.vue?vue&type=template&id=74bd5a02&\"\nimport script from \"./PluginMetaBuyButton.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginMetaBuyButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:{\n 'tw-space-y-2 tw-mb-2': _vm.isPluginFree(_vm.plugin),\n 'tw-space-y-4 tw-mb-4': !_vm.isPluginFree(_vm.plugin),\n }},[_vm._l((_vm.plugin.editions),function(edition,key){return [_c('div',{key:key},[_c('plugin-edition',{attrs:{\"plugin\":_vm.plugin,\"edition\":edition,\"context\":\"meta\"}})],1)]})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./InstallPlugin.vue?vue&type=template&id=f4cbb87c&\"\nimport script from \"./InstallPlugin.vue?vue&type=script&lang=js&\"\nexport * from \"./InstallPlugin.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('meta-stat',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Installation Instructions','app'))+\"\\n \")]},proxy:true},{key:\"content\",fn:function(){return [_c('div',[_c('ul',{staticClass:\"tw-flex tw-space-x-4 tw-text-sm\"},_vm._l((_vm.installModes),function(installMode,installModeKey){return _c('li',{key:installModeKey,staticClass:\"tw-py-1\"},[_c('button',{class:{\n 'tw-text-gray-700': !(\n installMode.handle === _vm.currentInstallModeHandle\n ),\n 'tw-font-medium tw-text-black tw-border-b-2 tw-border-orange-500':\n installMode.handle === _vm.currentInstallModeHandle,\n },on:{\"click\":function($event){return _vm.changeInstallMode(installMode.handle)}}},[_vm._v(\"\\n \"+_vm._s(installMode.name)+\"\\n \")])])}),0)]),_vm._v(\" \"),_c('div',{staticClass:\"copy-package\"},[_c('div',{staticClass:\"tw-mt-2 tw-flex\"},[_c('c-textbox',{ref:\"input\",staticClass:\"tw-w-full tw-flex tw-rounded-r-none tw-font-mono focus:tw-relative focus:tw-z-10 tw-text-sm\",attrs:{\"readonly\":\"readonly\",\"type\":\"text\",\"value\":_vm.currentInstallMode.copyValue},on:{\"focus\":_vm.select}}),_vm._v(\" \"),_c('c-btn',{staticClass:\"tw--ml-px tw-w-14 tw-rounded-l-none\",class:{\n 'tw-border-green-500 hover:tw-border-green-500 active:tw-border-green-500':\n _vm.showSuccess,\n },attrs:{\"disable-shadow\":true},on:{\"click\":_vm.copy}},[(_vm.showSuccess)?[_c('c-icon',{staticClass:\"tw-text-green-500\",attrs:{\"icon\":\"check\"}})]:[_c('c-icon',{staticClass:\"tw-text-black\",attrs:{\"icon\":\"clipboard-copy\"}})]],2)],1),_vm._v(\" \"),_c('div',{staticClass:\"tw-mt-4 tw-text-sm tw-text-gray-500\"},[_c('p',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('To install this plugin with composer, copy the command above to your terminal.','app'))+\"\\n \")])])])]},proxy:true}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ActivityStat.vue?vue&type=template&id=01518cf0&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tw-p-4 tw-text-center\"},[_c('div',{staticClass:\"tw-inline-block\"},[_c('div',{staticClass:\"tw-flex tw-items-center\"},[_c('div',{staticClass:\"tw-mr-1.5\"},[_vm._t(\"icon\")],2),_vm._v(\" \"),_c('div',[_vm._t(\"count\")],2)])]),_vm._v(\" \"),_c('div',{staticClass:\"tw-mt-1 tw-text-xs tw-text-gray-500\"},[_vm._t(\"title\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./GithubActivity.vue?vue&type=template&id=63fd4b9d&\"\nimport script from \"./GithubActivity.vue?vue&type=script&lang=js&\"\nexport * from \"./GithubActivity.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.issueStats)?_c('meta-stat',{staticClass:\"tw-pt-4\",attrs:{\"border\":false},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.githubActivityTitle)}})]},proxy:true},{key:\"content\",fn:function(){return [_c('div',{staticClass:\"tw-mt-4 tw-border tw-border-solid tw-border-gray-200 tw-rounded-lg\"},[_c('div',{staticClass:\"tw-grid tw-grid-cols-2\"},[_c('activity-stat',{staticClass:\"tw-border-r tw-border-solid tw-border-gray-200\",scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('svg',{staticClass:\"tw-text-purple-500\",attrs:{\"aria-hidden\":\"true\",\"height\":\"16\",\"viewBox\":\"0 0 16 16\",\"version\":\"1.1\",\"width\":\"16\",\"data-view-component\":\"true\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"d\":\"M11.28 6.78a.75.75 0 00-1.06-1.06L7.25 8.69 5.78 7.22a.75.75 0 00-1.06 1.06l2 2a.75.75 0 001.06 0l3.5-3.5z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M16 8A8 8 0 110 8a8 8 0 0116 0zm-1.5 0a6.5 6.5 0 11-13 0 6.5 6.5 0 0113 0z\"}})])]},proxy:true},{key:\"count\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm.issueStats.closedIssues)+\"\\n \")]},proxy:true},{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Closed Issues','app'))+\"\\n \")]},proxy:true}],null,false,2809335390)}),_vm._v(\" \"),_c('activity-stat',{scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('svg',{staticClass:\"tw-text-green-500\",attrs:{\"aria-hidden\":\"true\",\"height\":\"16\",\"viewBox\":\"0 0 16 16\",\"version\":\"1.1\",\"width\":\"16\",\"data-view-component\":\"true\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"d\":\"M8 9.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M8 0a8 8 0 100 16A8 8 0 008 0zM1.5 8a6.5 6.5 0 1113 0 6.5 6.5 0 01-13 0z\"}})])]},proxy:true},{key:\"count\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm.issueStats.openIssues)+\"\\n \")]},proxy:true},{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('New Issues','app'))+\"\\n \")]},proxy:true}],null,false,1949602571)}),_vm._v(\" \"),_c('activity-stat',{staticClass:\"tw-border-t tw-border-r tw-border-solid tw-border-gray-200\",scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('svg',{staticClass:\"tw-text-purple-500\",attrs:{\"aria-hidden\":\"true\",\"height\":\"16\",\"viewBox\":\"0 0 16 16\",\"version\":\"1.1\",\"width\":\"16\",\"data-view-component\":\"true\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M5 3.254V3.25v.005a.75.75 0 110-.005v.004zm.45 1.9a2.25 2.25 0 10-1.95.218v5.256a2.25 2.25 0 101.5 0V7.123A5.735 5.735 0 009.25 9h1.378a2.251 2.251 0 100-1.5H9.25a4.25 4.25 0 01-3.8-2.346zM12.75 9a.75.75 0 100-1.5.75.75 0 000 1.5zm-8.5 4.5a.75.75 0 100-1.5.75.75 0 000 1.5z\"}})])]},proxy:true},{key:\"count\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm.issueStats.mergedPulls)+\"\\n \")]},proxy:true},{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Merged PRs','app'))+\"\\n \")]},proxy:true}],null,false,3605081137)}),_vm._v(\" \"),_c('activity-stat',{staticClass:\"tw-border-t tw-border-solid tw-border-gray-200\",scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('svg',{staticClass:\"tw-text-green-500\",attrs:{\"aria-hidden\":\"true\",\"height\":\"16\",\"viewBox\":\"0 0 16 16\",\"version\":\"1.1\",\"width\":\"16\",\"data-view-component\":\"true\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M7.177 3.073L9.573.677A.25.25 0 0110 .854v4.792a.25.25 0 01-.427.177L7.177 3.427a.25.25 0 010-.354zM3.75 2.5a.75.75 0 100 1.5.75.75 0 000-1.5zm-2.25.75a2.25 2.25 0 113 2.122v5.256a2.251 2.251 0 11-1.5 0V5.372A2.25 2.25 0 011.5 3.25zM11 2.5h-1V4h1a1 1 0 011 1v5.628a2.251 2.251 0 101.5 0V5A2.5 2.5 0 0011 2.5zm1 10.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0zM3.75 12a.75.75 0 100 1.5.75.75 0 000-1.5z\"}})])]},proxy:true},{key:\"count\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm.issueStats.openPulls)+\"\\n \")]},proxy:true},{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Open PRs','app'))+\"\\n \")]},proxy:true}],null,false,3930490208)})],1)])]},proxy:true}],null,false,4069964360)}):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActiveInstallsChart.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActiveInstallsChart.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./ActiveInstallsChart.vue?vue&type=template&id=22afcb11&\"\nimport script from \"./ActiveInstallsChart.vue?vue&type=script&lang=js&\"\nexport * from \"./ActiveInstallsChart.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ActiveInstallsChart.vue?vue&type=style&index=0&id=22afcb11&prod&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.plugin.installHistory)?_c('div',[_c('ClientOnly',[_c('div',[_c('apex-chart',{attrs:{\"type\":\"area\",\"height\":\"40\",\"options\":_vm.chartOptions,\"series\":_vm.series}}),_vm._v(\" \"),(_vm.chartMounted)?_c('div',{staticClass:\"tw-h-3 tw-bg-gradient-to-b tw-from-blue-100/100 tw-to-blue-100/0\"}):_vm._e()],1)])],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./ActiveInstalls.vue?vue&type=template&id=3dcd484a&\"\nimport script from \"./ActiveInstalls.vue?vue&type=script&lang=js&\"\nexport * from \"./ActiveInstalls.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('meta-stat',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [(_vm.activeInstallsDate !== null)?[_vm._v(\"\\n \"+_vm._s(_vm._f(\"formatDate\")(_vm.activeInstallsDate))+\"\\n \")]:[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Active Installs','app'))+\"\\n \")]]},proxy:true},{key:\"content\",fn:function(){return [_c('div',{staticClass:\"tw-flex\"},[_c('div',{staticClass:\"tw-w-1/3\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"formatNumber\")(_vm.activeInstalls))+\"\\n \")]),_vm._v(\" \"),(_vm.plugin.installHistory)?[_c('active-installs-chart',{staticClass:\"tw-flex-1\",attrs:{\"plugin\":_vm.plugin},on:{\"updateCurrentDataPoint\":_vm.updateActiveInstallsDataPoint}})]:_vm._e()],2)]},proxy:true}])})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PluginMeta.vue?vue&type=template&id=17ff9336&\"\nimport script from \"./PluginMeta.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginMeta.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginMeta.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginMeta.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('ul',{staticClass:\"tw-list-reset tw-space-y-2\"},[_c('li',[_c('plugin-meta-buy-button',{attrs:{\"plugin\":_vm.plugin}})],1),_vm._v(\" \"),(_vm.plugin.documentationUrl)?[_c('li',[_c('c-btn',{attrs:{\"block\":\"\",\"target\":\"_blank\",\"rel\":\"noopener\",\"href\":_vm.plugin.documentationUrl,\"title\":_vm.plugin.name + ' Documentation'}},[_c('c-icon',{staticClass:\"tw-mr-2\",attrs:{\"icon\":\"book\"}}),_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Documentation','app'))+\"\\n\\n \"),_c('svg',{staticClass:\"tw-inline-block tw-w-3 tw-text-grey tw-ml-1\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\",\"stroke\":\"currentColor\"}},[_c('path',{attrs:{\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\",\"d\":\"M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14\"}})])],1)],1)]:_vm._e(),_vm._v(\" \"),_c('li',[_c('c-btn',{attrs:{\"block\":\"\",\"rel\":\"noopener\",\"target\":\"_blank\",\"href\":_vm.plugin.repository,\"title\":_vm.plugin.name + ' Repository'}},[_c('c-icon',{staticClass:\"tw-mr-2\",attrs:{\"icon\":\"github\"}}),_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Repository','app'))+\"\\n\\n \"),_c('svg',{staticClass:\"tw-inline-block tw-w-3 tw-text-grey tw-ml-1\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\",\"stroke\":\"currentColor\"}},[_c('path',{attrs:{\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\",\"d\":\"M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14\"}})])],1)],1)],2),_vm._v(\" \"),_c('dl',{staticClass:\"tw-mt-2\"},[_c('install-plugin',{attrs:{\"plugin\":_vm.plugin}}),_vm._v(\" \"),_c('active-installs',{attrs:{\"plugin\":_vm.plugin}}),_vm._v(\" \"),_c('div',{staticClass:\"tw-grid tw-grid-cols-2\"},[_c('meta-stat',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Version','app'))+\"\\n \")]},proxy:true},{key:\"content\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm.plugin.version)+\"\\n \")]},proxy:true}])}),_vm._v(\" \"),_c('meta-stat',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('License','app'))+\"\\n \")]},proxy:true},{key:\"content\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm.licenseLabel)+\"\\n \")]},proxy:true}])})],1),_vm._v(\" \"),_c('div',{class:{\n 'tw-grid tw-grid-cols-2': _vm.plugin.totalReleases,\n }},[_c('meta-stat',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Compatibility','app'))+\"\\n \")]},proxy:true},{key:\"content\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm.plugin.compatibility)+\"\\n \")]},proxy:true}])}),_vm._v(\" \"),(_vm.plugin.totalReleases)?[_c('meta-stat',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Total releases','app'))+\"\\n \")]},proxy:true},{key:\"content\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm.plugin.totalReleases)+\"\\n \")]},proxy:true}],null,false,875130951)})]:_vm._e()],2),_vm._v(\" \"),_c('meta-stat',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Last release','app'))+\"\\n \")]},proxy:true},{key:\"content\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"formatDate\")(_vm.plugin.lastUpdate))+\"\\n \")]},proxy:true}])}),_vm._v(\" \"),_c('meta-stat',{staticClass:\"meta-categories\",scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Categories','app'))+\"\\n \")]},proxy:true},{key:\"content\",fn:function(){return [(_vm.pluginCategories.length > 0)?_c('ul',[_vm._l((_vm.pluginCategories),function(category,key){return [_c('li',{key:key,staticClass:\"tw-inline-block tw-mr-2 tw-my-1.5\"},[_c('router-link',{key:key,staticClass:\"tw-px-4 tw-py-1.5 tw-text-xs tw-font-medium tw-rounded-full tw-cursor-pointer hover:tw-no-underline\",class:{\n 'tw-bg-blue-50 hover:tw-bg-blue-600': true,\n 'hover:tw-text-white': true,\n },attrs:{\"to\":'/categories/' + category.id,\"title\":category.title + ' plugins for Craft CMS'}},[_vm._v(\"\\n \"+_vm._s(category.title)+\"\\n \")])],1)]})],2):_vm._e()]},proxy:true}])}),_vm._v(\" \"),_c('github-activity',{attrs:{\"plugin\":_vm.plugin}}),_vm._v(\" \"),_c('ul',{staticClass:\"tw-list-reset tw-space-y-2 tw-mt-8\"},[_c('li',[_c('c-btn',{attrs:{\"kind\":\"danger\",\"href\":'mailto:issues@craftcms.com?subject=' +\n encodeURIComponent('Issue with ' + _vm.plugin.name) +\n '&body=' +\n encodeURIComponent(\n 'I would like to report the following issue with ' +\n _vm.plugin.name +\n ' (https://plugins.craftcms.com/' +\n _vm.plugin.handle +\n '):\\n\\n'\n )}},[_c('c-icon',{staticClass:\"tw-mr-1.5\",attrs:{\"icon\":\"flag\",\"set\":\"solid\"}}),_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Report plugin','app'))+\"\\n \")],1)],1)])],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./PluginLayout.vue?vue&type=template&id=3a80e9cd&\"\nimport script from \"./PluginLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginLayout.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginLayout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginLayout.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"plugin-layout\"},[(_vm.plugin)?[_c('div',{ref:\"pluginDetailsHeader\",staticClass:\"plugin-details-header tw-mt-0\"},[(_vm.plugin)?[_c('div',{staticClass:\"ps-container tw-pb-0\"},[_c('div',{staticClass:\"description tw-flex\"},[_c('div',{staticClass:\"icon tw-w-28\"},[(_vm.plugin.iconUrl)?_c('img',{attrs:{\"alt\":_vm.plugin.name + ' icon',\"src\":_vm.plugin.iconUrl}}):_c('img',{attrs:{\"alt\":\"Default plugin icon\",\"src\":_vm.defaultPluginSvg}})]),_vm._v(\" \"),_c('div',{staticClass:\"name tw-ml-8 tw-self-center\"},[_c('h1',{staticClass:\"self-center tw-pb-0 tw-border-b-0 tw-mt-0 tw-mb-1 align-middle\"},[_vm._v(\"\\n \"+_vm._s(_vm.plugin.name)+\"\\n \")]),_vm._v(\" \"),_c('div',{staticClass:\"developer tw-flex tw-items-center\"},[_c('router-link',{attrs:{\"to\":'/developer/' + _vm.plugin.developerId,\"title\":_vm.plugin.developerName}},[_vm._v(\"\\n \"+_vm._s(_vm.plugin.developerName)+\"\\n \")]),_vm._v(\" \"),(_vm.plugin.developerPartner)?[_c('partner-badge',{staticClass:\"tw-ml-2\",attrs:{\"kind\":\"craft\"}})]:_vm._e()],2)])]),_vm._v(\" \"),_c('div',{staticClass:\"tabs tw-mt-6 tw-border-b tw-border-solid tw-border-gray-200\"},[_c('ul',{staticClass:\"tw--mb-px tw-flex tw-space-x-6\"},_vm._l((_vm.tabs),function(tab,tabKey){return _c('li',{key:tabKey},[_c('router-link',{class:{\n 'tw-inline-block tw-px-1 tw-py-3 tw-border-solid tw-border-b-2 tw-text-opacity-75 hover:tw-text-opacity-100 hover:tw-no-underline': true,\n 'tw-border-transparent hover:tw-border-separator hover:tw-border-gray-200 tw-text-gray-500':\n _vm.$route.path !==\n '/' + _vm.plugin.handle + (tab.slug ? '/' + tab.slug : ''),\n 'tw-text-blue-600 tw-border-blue-600 tw-text-opacity-100':\n _vm.$route.path ===\n '/' + _vm.plugin.handle + (tab.slug ? '/' + tab.slug : ''),\n },attrs:{\"to\":'/' + _vm.plugin.handle + (tab.slug ? '/' + tab.slug : '')}},[_vm._v(\"\\n \"+_vm._s(tab.name)+\"\\n \")])],1)}),0)])])]:_vm._e()],2),_vm._v(\" \"),_c('div',{staticClass:\"ps-container tw-py-8\"},[_vm._t(\"default\")],2)]:[_c('div',{staticClass:\"ps-container tw-py-8\"},[_c('c-spinner')],1)]],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=22bdf1dc&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('plugin-layout',[_c('div',{staticClass:\"plugin-details\"},[(!_vm.loading && _vm.plugin)?[_c('div',{staticClass:\"plugin-details-body\"},[(!_vm.loading)?[(_vm.plugin.abandoned)?[_c('div',{staticClass:\"error tw-mb-6 tw-px-4 tw-py-3 tw-rounded tw-border tw-border-solid tw-border-red-500 tw-flex tw-flex-nowrap tw-text-base tw-items-center\"},[_c('c-icon',{staticClass:\"tw-w-8 tw-h-8 tw-mr-2\",attrs:{\"icon\":\"alert\"}}),_vm._v(\" \"),_c('div',{staticClass:\"tw-flex-1 tw-mb-0\"},[_c('strong',[_vm._v(_vm._s(_vm._f(\"t\")('This plugin is no longer maintained.','app'))+\"\\n \")]),_vm._v(\" \"),(_vm.recommendedLabel)?_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.recommendedLabel)}}):_vm._e()])],1)]:_vm._e(),_vm._v(\" \"),(_vm.plugin.thumbnailUrls.length)?[_c('div',{staticClass:\"tw-border-b tw-border-solid tw-border-gray-200 tw-mb-8\"},[_c('plugin-screenshots',{attrs:{\"thumbnails\":_vm.plugin.thumbnailUrls,\"images\":_vm.plugin.screenshotUrls}})],1)]:_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"xl:tw-flex\"},[_c('div',{staticClass:\"xl:tw-flex-1 xl:tw-pr-8 xl:tw-mr-4\"},[(_vm.longDescription)?_c('div',{staticClass:\"readable\",domProps:{\"innerHTML\":_vm._s(_vm.longDescription)}}):(_vm.plugin.shortDescription)?_c('div',{staticClass:\"readable\",domProps:{\"innerHTML\":_vm._s(_vm.plugin.shortDescription)}}):_c('p',[_vm._v(\"No description.\")])]),_vm._v(\" \"),_c('div',{staticClass:\"xl:tw-ml-4 xl:tw-w-60 tw-mt-8 xl:tw-mt-0\"},[_c('plugin-meta',{attrs:{\"plugin\":_vm.plugin}})],1)]),_vm._v(\" \"),(_vm.licenseMismatched)?[_c('hr'),_vm._v(\" \"),_c('div',{staticClass:\"tw-py-8\"},[_c('div',{staticClass:\"tw-mx-auto tw-max-w-sm tw-px-8\"},[_c('div',{staticClass:\"tw-flex items-center\"},[_c('svg',{staticClass:\"tw-text-blue-600 tw-fill-current tw-w-8 tw-h-8 tw-mr-4 tw-flex tw-items-center tw-shrink-0\",attrs:{\"version\":\"1.1\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"x\":\"0px\",\"y\":\"0px\",\"viewBox\":\"0 0 256 448\",\"xml:space\":\"preserve\"}},[_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M184,144c0,4.2-3.8,8-8,8s-8-3.8-8-8c0-17.2-26.8-24-40-24c-4.2,0-8-3.8-8-8s3.8-8,8-8C151.2,104,184,116.2,184,144z\\n M224,144c0-50-50.8-80-96-80s-96,30-96,80c0,16,6.5,32.8,17,45c4.8,5.5,10.2,10.8,15.2,16.5C82,226.8,97,251.8,99.5,280h57\\n c2.5-28.2,17.5-53.2,35.2-74.5c5-5.8,10.5-11,15.2-16.5C217.5,176.8,224,160,224,144z M256,144c0,25.8-8.5,48-25.8,67\\n s-40,45.8-42,72.5c7.2,4.2,11.8,12.2,11.8,20.5c0,6-2.2,11.8-6.2,16c4,4.2,6.2,10,6.2,16c0,8.2-4.2,15.8-11.2,20.2\\n c2,3.5,3.2,7.8,3.2,11.8c0,16.2-12.8,24-27.2,24c-6.5,14.5-21,24-36.8,24s-30.2-9.5-36.8-24c-14.5,0-27.2-7.8-27.2-24\\n c0-4,1.2-8.2,3.2-11.8c-7-4.5-11.2-12-11.2-20.2c0-6,2.2-11.8,6.2-16c-4-4.2-6.2-10-6.2-16c0-8.2,4.5-16.2,11.8-20.5\\n c-2-26.8-24.8-53.5-42-72.5S0,169.8,0,144C0,76,64.8,32,128,32S256,76,256,144z\"}})]),_vm._v(\" \"),_c('div',[_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.licenseMismatchedMessage)}})])])])])]:_vm._e()]:[_c('c-spinner')]],2)]:[_c('c-spinner')]],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./PluginEditions.vue?vue&type=template&id=8eced858&\"\nimport script from \"./PluginEditions.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginEditions.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"plugin-editions\",class:{\n 'tw-py-6': true,\n 'md:tw-flex md:tw--mx-4 md:tw-justify-center': true,\n }},_vm._l((_vm.plugin.editions),function(edition,key){return _c('plugin-edition',{key:key,staticClass:\"md:tw-flex-1 md:tw-mx-4 md:tw-max-w-xs\",attrs:{\"plugin\":_vm.plugin,\"edition\":edition}})}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./editions.vue?vue&type=template&id=32f294e0&\"\nimport script from \"./editions.vue?vue&type=script&lang=js&\"\nexport * from \"./editions.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./editions.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./editions.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('plugin-layout',[_c('div',[_c('plugin-editions',{attrs:{\"plugin\":_vm.plugin}})],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChangelogRelease.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChangelogRelease.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","\n\n\n","import { render, staticRenderFns } from \"./ChangelogRelease.vue?vue&type=template&id=22de0ed4&\"\nimport script from \"./ChangelogRelease.vue?vue&type=script&lang=js&\"\nexport * from \"./ChangelogRelease.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ChangelogRelease.vue?vue&type=style&index=0&id=22de0ed4&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.release)?_c('div',{staticClass:\"changelog-release\"},[_c('div',{staticClass:\"version\"},[_c('a',{staticClass:\"anchor\",attrs:{\"href\":'#' + _vm.release.version}},[_c('c-icon',{attrs:{\"icon\":\"link\"}})],1),_vm._v(\" \"),_c('h2',{attrs:{\"id\":_vm.release.version}},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Version {version}','app', {version: _vm.release.version}))+\"\\n \")]),_vm._v(\" \"),_c('div',{staticClass:\"date\"},[_vm._v(_vm._s(_vm.date))]),_vm._v(\" \"),(_vm.release.critical)?_c('div',{staticClass:\"critical\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Critical','app'))+\"\\n \")]):_vm._e()]),_vm._v(\" \"),_c('div',{staticClass:\"details readable\",domProps:{\"innerHTML\":_vm._s(_vm.release.notes)}})]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./changelog.vue?vue&type=template&id=0a30d8b3&\"\nimport script from \"./changelog.vue?vue&type=script&lang=js&\"\nexport * from \"./changelog.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./changelog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./changelog.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.plugin)?_c('plugin-layout',[(_vm.loading)?[_c('c-spinner',{staticClass:\"tw-mt-4\"})]:[_c('div',{staticClass:\"releases\"},[_vm._l((_vm.pluginChangelog),function(release,key){return [_c('changelog-release',{key:key,attrs:{\"release\":release}})]})],2)]],2):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Vue from 'vue';\nimport VueRouter from 'vue-router';\nimport Index from '../pages/index';\nimport CategoriesId from '../pages/categories/_id';\nimport UpgradeCraft from '../pages/upgrade-craft';\nimport DeveloperId from '../pages/developer/_id';\nimport FeaturedHandle from '../pages/featured/_handle';\nimport BuyPlugin from '../pages/buy/_plugin';\nimport BuyAllTrials from '../pages/buy-all-trials';\nimport Tests from '../pages/tests';\nimport NotFound from '../pages/_not-found';\nimport Search from '../pages/search';\nimport PluginsHandle from '../pages/_handle';\nimport PluginsHandleEditions from '../pages/_handle/editions';\nimport PluginsHandleChangelog from '../pages/_handle/changelog';\n\nVue.use(VueRouter);\n\nexport default new VueRouter({\n base: window.pluginStoreAppBaseUrl,\n\n mode: 'history',\n\n scrollBehavior() {\n return {x: 0, y: 0};\n },\n\n routes: [\n {\n path: '/',\n name: 'Index',\n component: Index,\n },\n {\n path: '/categories/:id',\n name: 'CategoriesId',\n component: CategoriesId,\n },\n {\n path: '/upgrade-craft',\n name: 'UpgradeCraft',\n component: UpgradeCraft,\n },\n {\n path: '/developer/:id',\n name: 'DeveloperId',\n component: DeveloperId,\n },\n {\n path: '/featured/:handle',\n name: 'FeaturedHandle',\n component: FeaturedHandle,\n },\n {\n path: '/buy/:plugin',\n name: 'BuyPlugin',\n component: BuyPlugin,\n },\n {\n path: '/buy/:plugin/:edition',\n name: 'BuyPlugin',\n component: BuyPlugin,\n },\n {\n path: '/buy-all-trials',\n name: 'BuyAllTrials',\n component: BuyAllTrials,\n },\n {\n path: '/search',\n name: 'Search',\n component: Search,\n },\n {\n path: '/tests',\n name: 'Tests',\n component: Tests,\n },\n {\n path: '/:handle',\n name: 'PluginsHandle',\n component: PluginsHandle,\n },\n {\n path: '/:handle/editions',\n name: 'PluginsHandleEditions',\n component: PluginsHandleEditions,\n },\n {\n path: '/:handle/changelog',\n name: 'PluginsHandleChangelog',\n component: PluginsHandleChangelog,\n },\n {\n path: '*',\n name: 'NotFound',\n component: NotFound,\n },\n ],\n});\n","import api from '../../api/cart';\nimport pluginStoreApi from '../../api/pluginstore';\nimport licensesMixins from '../../mixins/licenses';\nimport Vue from 'vue';\nimport Vuex from 'vuex';\n\nVue.use(Vuex);\n\n/**\n * State\n */\nconst state = {\n activeTrialPlugins: [],\n cart: null,\n cartPlugins: [],\n selectedExpiryDates: {},\n};\n\n/**\n * Getters\n */\nconst getters = {\n cartItems(state) {\n let cartItems = [];\n\n if (state.cart) {\n const lineItems = state.cart.lineItems;\n\n lineItems.forEach((lineItem) => {\n let cartItem = {};\n\n cartItem.lineItem = lineItem;\n\n if (lineItem.purchasable.type === 'plugin-edition') {\n cartItem.plugin = state.cartPlugins.find(\n (p) => p.handle === lineItem.purchasable.plugin.handle\n );\n }\n\n cartItems.push(cartItem);\n });\n }\n\n return cartItems;\n },\n\n cartItemsData(state) {\n return utils.getCartItemsData(state.cart);\n },\n\n isCmsEditionInCart(state) {\n return (cmsEdition) => {\n if (!state.cart) {\n return false;\n }\n\n return state.cart.lineItems.find(\n (lineItem) =>\n lineItem.purchasable.type === 'cms-edition' &&\n lineItem.purchasable.handle === cmsEdition\n );\n };\n },\n\n isInCart(state) {\n return (plugin, edition) => {\n if (!state.cart) {\n return false;\n }\n\n return state.cart.lineItems.find((lineItem) => {\n if (lineItem.purchasable.pluginId !== plugin.id) {\n return false;\n }\n\n if (edition && lineItem.purchasable.handle !== edition.handle) {\n return false;\n }\n\n return true;\n });\n };\n },\n\n getActiveTrialPluginEdition(state, getters, rootState, rootGetters) {\n return (plugin) => {\n const pluginHandle = plugin.handle;\n const pluginLicenseInfo =\n rootGetters['craft/getPluginLicenseInfo'](pluginHandle);\n const pluginEdition = plugin.editions.find(\n (edition) => edition.handle === pluginLicenseInfo.edition\n );\n\n if (!pluginEdition) {\n return null;\n }\n\n return pluginEdition;\n };\n },\n\n activeTrials(state, getters, rootState, rootGetters) {\n const craftLogo = rootState.craft.craftLogo;\n const cmsEditions = rootState.pluginStore.cmsEditions;\n const licensedEdition = rootState.craft.licensedEdition;\n const CraftEdition = rootState.craft.CraftEdition;\n\n const getPluginLicenseInfo = rootGetters['craft/getPluginLicenseInfo'];\n const getCmsEditionIndex = rootGetters['craft/getCmsEditionIndex'];\n const getPluginEdition = rootGetters['pluginStore/getPluginEdition'];\n\n const trials = [];\n\n // CMS trial\n const cmsProEdition = cmsEditions.find(\n (edition) => edition.handle === 'pro'\n );\n const cmsProEditionIndex = getCmsEditionIndex(cmsProEdition.handle);\n\n if (\n cmsProEdition &&\n licensedEdition < cmsProEditionIndex &&\n licensedEdition < CraftEdition\n ) {\n trials.push({\n type: 'cms-edition',\n name: 'Craft',\n iconUrl: craftLogo,\n editionHandle: 'pro',\n editionName: 'Pro',\n price: cmsProEdition.price,\n navigateTo: '/upgrade-craft',\n showEditionBadge: true,\n });\n }\n\n // Plugin trials\n const plugins = state.activeTrialPlugins;\n\n for (let i = 0; i < plugins.length; i++) {\n const plugin = plugins[i];\n\n // license mismatched\n const pluginLicenseInfo = getPluginLicenseInfo(plugin.handle);\n const licenseMismatched =\n licensesMixins.methods.getLicenseMismatched(pluginLicenseInfo);\n\n // plugin edition\n const activeTrialPluginEdition = getPluginEdition(\n plugin,\n pluginLicenseInfo.edition\n );\n\n if (!activeTrialPluginEdition) {\n continue;\n }\n\n // licensed edition\n const licensedEdition = getPluginEdition(\n plugin,\n pluginLicenseInfo.licensedEdition\n );\n\n // license valid or astray\n const licenseValidOrAstray =\n licensesMixins.methods.getLicenseValidOrAstray(pluginLicenseInfo);\n\n // navigate to\n const navigateTo = '/' + plugin.handle;\n\n // price & discount price\n let discountPrice = null;\n let price = activeTrialPluginEdition.price;\n\n if (\n licensedEdition &&\n licensedEdition.handle !== activeTrialPluginEdition.handle &&\n licensedEdition.price > 0 &&\n licenseValidOrAstray\n ) {\n discountPrice = activeTrialPluginEdition.price - licensedEdition.price;\n }\n\n // show edition badge\n const showEditionBadge =\n activeTrialPluginEdition && plugin.editions.length > 1;\n\n // plugin id\n const pluginId = plugin.id;\n\n // build trial row\n trials.push({\n type: 'plugin-edition',\n name: plugin.name,\n iconUrl: plugin.iconUrl,\n editionHandle: pluginLicenseInfo.edition,\n editionName: activeTrialPluginEdition.name,\n pluginHandle: plugin.handle,\n licenseMismatched,\n discountPrice,\n price,\n navigateTo,\n showEditionBadge,\n pluginId,\n });\n }\n\n return trials;\n },\n\n pendingActiveTrials(state, getters) {\n const activeTrials = getters.activeTrials;\n const cart = state.cart;\n const isCmsEditionInCart = getters.isCmsEditionInCart;\n\n // filter out trials which are already in the cart\n return activeTrials.filter((activeTrial) => {\n switch (activeTrial.type) {\n case 'cms-edition':\n if (isCmsEditionInCart(activeTrial.editionHandle)) {\n return false;\n }\n\n return true;\n case 'plugin-edition':\n return !cart.lineItems.find((item) => {\n return item.purchasable.pluginId == activeTrial.pluginId;\n });\n default:\n return false;\n }\n });\n },\n};\n\n/**\n * Actions\n */\nconst actions = {\n addToCart({state, dispatch, rootGetters}, newItems) {\n return new Promise((resolve, reject) => {\n const cart = JSON.parse(JSON.stringify(state.cart));\n let items = utils.getCartItemsData(cart);\n\n newItems.forEach((newItem) => {\n const alreadyInCart = items.find(\n (item) => item.plugin === newItem.plugin\n );\n\n if (!alreadyInCart) {\n let item = {...newItem};\n item.expiryDate = '1y';\n\n // Set default values\n item.autoRenew = false;\n\n switch (item.type) {\n case 'plugin-edition': {\n const pluginLicenseInfo = rootGetters[\n 'craft/getPluginLicenseInfo'\n ](item.plugin);\n\n // Check that the current plugin license exists and is `valid`\n if (\n pluginLicenseInfo &&\n pluginLicenseInfo.licenseKey &&\n (pluginLicenseInfo.licenseKeyStatus === 'valid' ||\n pluginLicenseInfo.licenseKeyStatus === 'trial')\n ) {\n // Check if the license has issues other than `wrong_edition` or `astray`\n let hasIssues = false;\n\n if (pluginLicenseInfo.licenseIssues.length > 0) {\n pluginLicenseInfo.licenseIssues.forEach((issue) => {\n if (\n issue !== 'wrong_edition' &&\n issue !== 'astray' &&\n issue !== 'no_trials'\n ) {\n hasIssues = true;\n }\n });\n }\n\n // If we don’t have issues for this license, we can attach its key to the item\n if (!hasIssues) {\n item.licenseKey = pluginLicenseInfo.licenseKey;\n }\n }\n\n item.cmsLicenseKey = window.cmsLicenseKey;\n\n break;\n }\n\n case 'cms-edition': {\n item.licenseKey = window.cmsLicenseKey;\n\n break;\n }\n }\n\n items.push(item);\n }\n });\n\n let data = {\n items,\n };\n\n const cartNumber = cart.number;\n\n dispatch('updateCart', {cartNumber, data})\n .then((responseData) => {\n if (typeof responseData.errors !== 'undefined') {\n return reject(responseData);\n }\n\n resolve(responseData);\n })\n .catch((error) => {\n return reject(error);\n });\n });\n },\n\n addAllTrialsToCart({dispatch, getters}) {\n let items = [];\n\n getters.pendingActiveTrials.forEach((activeTrial) => {\n const item = {\n type: activeTrial.type,\n edition: activeTrial.editionHandle,\n };\n\n if (activeTrial.type === 'plugin-edition') {\n item.plugin = activeTrial.pluginHandle;\n }\n\n items.push(item);\n });\n\n return dispatch('addToCart', items);\n },\n\n createCart({dispatch, rootState}) {\n return new Promise((resolve, reject) => {\n const data = {\n email: rootState.craft.currentUser.email,\n };\n\n api\n .createCart(data)\n .then((cartResponseData) => {\n dispatch('updateCartPlugins', {cartResponseData})\n .then(() => {\n dispatch('saveOrderNumber', {\n orderNumber: cartResponseData.cart.number,\n });\n resolve(cartResponseData);\n })\n .catch((error) => {\n reject(error);\n });\n })\n .catch((cartError) => {\n reject(cartError);\n });\n });\n },\n\n getActiveTrials({dispatch}) {\n return new Promise((resolve, reject) => {\n // get cms editions\n dispatch('pluginStore/getCmsEditions', null, {root: true})\n .then(() => {\n // get active trial plugins\n dispatch('getActiveTrialPlugins')\n .then(() => {\n resolve();\n })\n .catch((error) => {\n reject(error);\n });\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getActiveTrialPlugins({commit, rootState, rootGetters}) {\n return new Promise((resolve, reject) => {\n // get plugin license info and find active trial plugin handles\n const pluginHandles = [];\n const pluginLicenseInfo = rootState.craft.pluginLicenseInfo;\n\n for (let pluginHandle in pluginLicenseInfo) {\n if (\n Object.prototype.hasOwnProperty.call(\n pluginLicenseInfo,\n pluginHandle\n ) &&\n pluginLicenseInfo[pluginHandle].isEnabled\n ) {\n pluginHandles.push(pluginHandle);\n }\n }\n\n // request plugins by plugin handle\n pluginStoreApi\n .getPluginsByHandles(pluginHandles)\n .then((responseData) => {\n if (responseData && responseData.error) {\n throw responseData.error;\n }\n\n const data = responseData;\n const plugins = [];\n\n for (let i = 0; i < data.length; i++) {\n const plugin = data[i];\n\n if (!plugin) {\n continue;\n }\n\n const info = pluginLicenseInfo[plugin.handle];\n\n if (!info) {\n continue;\n }\n\n if (info.licenseKey && info.edition === info.licensedEdition) {\n continue;\n }\n\n if (info.edition) {\n const pluginEdition = plugin.editions.find(\n (edition) => edition.handle === info.edition\n );\n\n if (\n pluginEdition &&\n rootGetters['pluginStore/isPluginEditionFree'](pluginEdition)\n ) {\n continue;\n }\n }\n\n if (!rootGetters['craft/isPluginInstalled'](plugin.handle)) {\n continue;\n }\n\n plugins.push(plugin);\n }\n\n commit('updateActiveTrialPlugins', plugins);\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getCart({dispatch}) {\n return new Promise((resolve, reject) => {\n // retrieve the order number\n dispatch('getOrderNumber').then((orderNumber) => {\n if (orderNumber) {\n // get cart by order number\n api\n .getCart(orderNumber)\n .then((cartResponseData) => {\n dispatch('updateCartPlugins', {cartResponseData})\n .then(() => {\n resolve(cartResponseData);\n })\n .catch((error) => {\n reject(error);\n });\n })\n .catch(() => {\n // Cart already completed or has errors? Create a new one.\n dispatch('createCart')\n .then((cartResponseData) => {\n resolve(cartResponseData);\n })\n .catch((cartError) => {\n reject(cartError);\n });\n });\n } else {\n // No order number yet? Create a new cart.\n dispatch('createCart')\n .then((cartResponseData) => {\n resolve(cartResponseData);\n })\n .catch((cartError) => {\n reject(cartError);\n });\n }\n });\n });\n },\n\n getOrderNumber({state}) {\n return new Promise((resolve, reject) => {\n if (state.cart && state.cart.number) {\n const orderNumber = state.cart.number;\n resolve(orderNumber);\n } else {\n api.getOrderNumber(\n (orderNumber) => {\n resolve(orderNumber);\n },\n (response) => {\n reject(response);\n }\n );\n }\n });\n },\n\n removeFromCart({dispatch, state}, lineItemKey) {\n return new Promise((resolve, reject) => {\n const cart = state.cart;\n\n let items = utils.getCartItemsData(cart);\n items.splice(lineItemKey, 1);\n\n let data = {\n items,\n };\n\n const cartNumber = cart.number;\n\n dispatch('updateCart', {cartNumber, data})\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n resetCart({commit, dispatch}) {\n return new Promise((resolve, reject) => {\n commit('resetCart');\n dispatch('resetOrderNumber');\n dispatch('getCart')\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n resetOrderNumber() {\n api.resetOrderNumber();\n },\n\n saveCart({dispatch, state}, data) {\n return new Promise((resolve, reject) => {\n const cart = state.cart;\n const cartNumber = cart.number;\n\n dispatch('updateCart', {cartNumber, data})\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n saveOrderNumber(context, {orderNumber}) {\n api.saveOrderNumber(orderNumber);\n },\n\n savePluginLicenseKeys({rootGetters}, cart) {\n return new Promise((resolve, reject) => {\n let pluginLicenseKeys = [];\n\n cart.lineItems.forEach((lineItem) => {\n if (lineItem.purchasable.type === 'plugin-edition') {\n if (\n rootGetters['craft/isPluginInstalled'](\n lineItem.purchasable.plugin.handle\n )\n ) {\n let licenseKey = lineItem.options.licenseKey;\n\n if (licenseKey.substring(0, 4) === 'new:') {\n licenseKey = licenseKey.substring(4);\n }\n\n pluginLicenseKeys.push({\n handle: lineItem.purchasable.plugin.handle,\n key: licenseKey,\n });\n }\n }\n });\n\n const data = {\n pluginLicenseKeys,\n };\n\n api\n .savePluginLicenseKeys(data)\n .then((response) => {\n resolve(response);\n })\n .catch((error) => {\n reject(error.response);\n });\n });\n },\n\n updateCart({dispatch}, {cartNumber, data}) {\n return new Promise((resolve, reject) => {\n api\n .updateCart(cartNumber, data)\n .then((cartResponseData) => {\n if (cartResponseData && cartResponseData.errors) {\n reject({response: cartResponseData});\n return null;\n }\n\n dispatch('updateCartPlugins', {cartResponseData})\n .then(() => {\n resolve(cartResponseData);\n })\n .catch((error) => {\n reject(error);\n });\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n updateCartPlugins({commit}, {cartResponseData}) {\n return new Promise((resolve, reject) => {\n const cart = cartResponseData.cart;\n\n const cartItemPluginIds = [];\n\n cart.lineItems.forEach((lineItem) => {\n if (lineItem.purchasable.type === 'plugin-edition') {\n cartItemPluginIds.push(lineItem.purchasable.plugin.id);\n }\n });\n\n if (cartItemPluginIds.length > 0) {\n pluginStoreApi\n .getPluginsByIds(cartItemPluginIds)\n .then((pluginsResponseData) => {\n commit('updateCart', {cartResponseData});\n commit('updateCartPlugins', {pluginsResponseData});\n resolve(pluginsResponseData);\n })\n .catch((error) => {\n reject(error);\n });\n } else {\n const pluginsResponseData = [];\n commit('updateCart', {cartResponseData});\n commit('updateCartPlugins', {pluginsResponseData});\n resolve(pluginsResponseData);\n }\n });\n },\n\n updateItem({dispatch, state}, {itemKey, item}) {\n return new Promise((resolve, reject) => {\n const cart = state.cart;\n const cartNumber = cart.number;\n\n let items = utils.getCartItemsData(cart);\n\n items[itemKey] = item;\n\n let data = {\n items,\n };\n\n dispatch('updateCart', {cartNumber, data})\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n};\n\n/**\n * Mutations\n */\nconst mutations = {\n resetCart(state) {\n state.cart = null;\n },\n\n updateActiveTrialPlugins(state, plugins) {\n state.activeTrialPlugins = plugins;\n },\n\n updateCart(state, {cartResponseData}) {\n state.cart = cartResponseData.cart;\n\n const selectedExpiryDates = {};\n state.cart.lineItems.forEach((lineItem, key) => {\n selectedExpiryDates[key] = lineItem.options.expiryDate;\n });\n\n state.selectedExpiryDates = selectedExpiryDates;\n },\n\n updateCartPlugins(state, {pluginsResponseData}) {\n state.cartPlugins = pluginsResponseData;\n },\n\n updateSelectedExpiryDates(state, selectedExpiryDates) {\n state.selectedExpiryDates = selectedExpiryDates;\n },\n};\n\n/**\n * Utils\n */\nconst utils = {\n getCartData(cart) {\n let data = {\n email: cart.email,\n billingAddress: {\n firstName: cart.billingAddress.firstName,\n lastName: cart.billingAddress.lastName,\n },\n items: [],\n };\n\n data.items = this.getCartItemsData(cart);\n\n return data;\n },\n\n getCartItemsData(cart) {\n if (!cart) {\n return [];\n }\n\n let lineItems = [];\n for (let i = 0; i < cart.lineItems.length; i++) {\n let lineItem = cart.lineItems[i];\n\n switch (lineItem.purchasable.type) {\n case 'plugin-edition': {\n const item = {\n type: lineItem.purchasable.type,\n plugin: lineItem.purchasable.plugin.handle,\n edition: lineItem.purchasable.handle,\n cmsLicenseKey: window.cmsLicenseKey,\n expiryDate: lineItem.options.expiryDate,\n autoRenew: lineItem.options.autoRenew,\n };\n\n let licenseKey = lineItem.options.licenseKey;\n\n if (licenseKey && licenseKey.substring(0, 3) !== 'new') {\n item.licenseKey = licenseKey;\n }\n\n lineItems.push(item);\n\n break;\n }\n\n case 'cms-edition': {\n const item = {\n type: lineItem.purchasable.type,\n edition: lineItem.purchasable.handle,\n expiryDate: lineItem.options.expiryDate,\n autoRenew: lineItem.options.autoRenew,\n };\n\n let licenseKey = lineItem.options.licenseKey;\n\n if (licenseKey && licenseKey.substring(0, 3) !== 'new') {\n item.licenseKey = licenseKey;\n }\n\n lineItems.push(item);\n\n break;\n }\n }\n }\n\n return lineItems;\n },\n};\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations,\n};\n","/* global Craft */\n\nimport axios from 'axios';\n\nexport default {\n /**\n * Create cart.\n */\n createCart(data) {\n return new Promise((resolve, reject) => {\n Craft.sendApiRequest('POST', 'carts', {\n data,\n })\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n /**\n * Get cart.\n */\n getCart(orderNumber) {\n return new Promise((resolve, reject) => {\n Craft.sendApiRequest('GET', 'carts/' + orderNumber)\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n /**\n * Get order number.\n */\n getOrderNumber(cb) {\n const orderNumber = localStorage.getItem('orderNumber');\n\n return cb(orderNumber);\n },\n\n /**\n * Reset order number.\n */\n resetOrderNumber() {\n localStorage.removeItem('orderNumber');\n },\n\n /**\n * Save order number.\n */\n saveOrderNumber(orderNumber) {\n localStorage.setItem('orderNumber', orderNumber);\n },\n\n /**\n * Save plugin license keys\n */\n savePluginLicenseKeys(data) {\n return axios.post(\n Craft.getActionUrl('plugin-store/save-plugin-license-keys'),\n data,\n {\n headers: {\n 'X-CSRF-Token': Craft.csrfTokenValue,\n },\n }\n );\n },\n\n /**\n * Update cart.\n */\n updateCart(orderNumber, data) {\n return new Promise((resolve, reject) => {\n Craft.sendApiRequest('POST', 'carts/' + orderNumber, {data})\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n};\n","import {getElementIndexParams} from '../utils/elementIndex';\n\nexport default {\n searchDevelopers({searchQuery, developerIndexParams}) {\n return new Promise((resolve) => {\n const params = getElementIndexParams(developerIndexParams);\n params.searchQuery = searchQuery;\n\n // TODO: replace mocked response by real one\n\n const getDevelopersFixture = () => {\n const nbDevelopers = 24;\n const developers = [];\n\n for (let i = 0; i < nbDevelopers; i++) {\n developers[i] = {\n name: 'Developer ' + (i + 1),\n };\n }\n\n return developers;\n };\n\n const developers = getDevelopersFixture();\n\n resolve({\n data: {\n developers,\n },\n });\n });\n },\n};\n","const getElementIndexParams = ({perPage, page, orderBy, direction}) => {\n if (!perPage) {\n perPage = 96;\n }\n\n if (!page) {\n page = 1;\n }\n\n return {\n perPage,\n page,\n orderBy,\n direction,\n };\n};\n\nexport {getElementIndexParams};\n","import api from '../../api/developerIndex';\n\n/**\n * State\n */\nconst state = {\n developersResponseData: null,\n developers: [],\n};\n\n/**\n * Getters\n */\nconst getters = {\n hasMore(state) {\n return (\n state.developersResponseData.currentPage <\n state.developersResponseData.total\n );\n },\n\n getDeveloperIndexParams(state, getters, rootState) {\n return (context) => {\n if (!context) {\n context = {};\n }\n\n const sortOptions = rootState.pluginStore.sortOptions;\n const firstOptionKey = Object.keys(sortOptions)[0];\n\n const perPage = context.perPage ? context.perPage : null;\n const page = context.page ? context.page : 1;\n const orderBy = context.orderBy ? context.orderBy : firstOptionKey;\n const direction = context.direction\n ? context.direction\n : rootState.pluginStore.sortOptions[firstOptionKey];\n\n return {\n perPage,\n page,\n orderBy,\n direction,\n };\n };\n },\n};\n\n/**\n * Actions\n */\nconst actions = {\n cancelRequests() {\n return new Promise((resolve) => {\n api.cancelRequests();\n resolve();\n });\n },\n\n searchDevelopers({dispatch, getters}, context) {\n return new Promise((resolve, reject) => {\n const developerIndexParams = getters['getDeveloperIndexParams'](context);\n\n api\n .searchDevelopers({\n searchQuery: context.searchQuery,\n developerIndexParams,\n })\n .then((response) => {\n if (response.data && response.data.error) {\n reject(response.data.error);\n }\n\n dispatch('updateDeveloperIndex', {context, response}).then(() => {\n resolve(response);\n });\n })\n .catch((thrown) => {\n if (thrown.response && thrown.response.data) {\n if (thrown.response.data.message) {\n reject(thrown.response.data.message);\n } else if (thrown.response.data.error) {\n reject(thrown.response.data.error);\n } else {\n reject(thrown.response.data);\n }\n } else {\n reject(thrown);\n }\n });\n });\n },\n\n updateDeveloperIndex({commit}, {context, response}) {\n return new Promise((resolve) => {\n commit('updateDevelopersResponseData', response);\n\n if (context.appendData && context.appendData === true) {\n commit('appendDevelopers', response.data.developers);\n resolve();\n } else {\n setTimeout(function () {\n commit('updateDevelopers', response.data.developers);\n resolve();\n }, 1);\n }\n });\n },\n};\n\n/**\n * Mutations\n */\nconst mutations = {\n updateDevelopers(state, developers) {\n state.developers = developers;\n },\n\n updateDevelopersResponseData(state, response) {\n state.developersResponseData = response.data;\n },\n\n appendDevelopers(state, developers) {\n state.developers = [...state.developers, ...developers];\n },\n};\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations,\n};\n","import api from '../../api/pluginstore';\n\n/**\n * State\n */\nconst state = {\n categories: [],\n cmsEditions: null,\n developer: null,\n expiryDateOptions: [],\n featuredPlugins: [],\n featuredSection: null,\n featuredSections: [],\n plugin: null,\n pluginChangelog: null,\n pluginChangelogPluginId: null,\n\n // plugin index\n plugins: [],\n};\n\n/**\n * Getters\n */\nconst getters = {\n getCategoryById(state) {\n return (id) => {\n return state.categories.find((c) => c.id == id);\n };\n },\n\n getPluginEdition() {\n return (plugin, editionHandle) => {\n return plugin.editions.find(\n (edition) => edition.handle === editionHandle\n );\n };\n },\n\n getPluginEditions() {\n return (plugin) => {\n return plugin.editions;\n };\n },\n\n getPluginIndexParams() {\n return (context) => {\n const perPage = context.perPage ? context.perPage : null;\n const page = context.page ? context.page : 1;\n const orderBy = context.orderBy;\n const direction = context.direction;\n\n return {\n perPage,\n page,\n orderBy,\n direction,\n };\n };\n },\n\n isPluginEditionFree() {\n return (edition) => {\n return edition.price === null;\n };\n },\n\n isCommercial() {\n return (plugin) => {\n return !!plugin.editions.find((edition) => edition.price > 0);\n };\n },\n};\n\n/**\n * Actions\n */\nconst actions = {\n cancelRequests() {\n return api.cancelRequests();\n },\n\n getCoreData({commit}) {\n return new Promise((resolve, reject) => {\n api\n .getCoreData()\n .then((responseData) => {\n commit('updateCoreData', {responseData});\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getCmsEditions({commit}, payload) {\n const force = payload && payload.force ? payload.force : false;\n\n return new Promise((resolve, reject) => {\n if (state.cmsEditions && force !== true) {\n resolve();\n return;\n }\n\n api\n .getCmsEditions()\n .then((responseData) => {\n commit('updateCmsEditions', {responseData});\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getDeveloper({commit}, developerId) {\n return api.getDeveloper(developerId).then((responseData) => {\n commit('updateDeveloper', responseData);\n });\n },\n\n getFeaturedSectionByHandle({commit}, featuredSectionHandle) {\n return api\n .getFeaturedSectionByHandle(featuredSectionHandle)\n .then((responseData) => {\n commit('updateFeaturedSection', responseData);\n });\n },\n\n getFeaturedSections({commit}) {\n return api.getFeaturedSections().then((responseData) => {\n commit('updateFeaturedSections', responseData);\n });\n },\n\n getPluginChangelog({commit}, pluginId) {\n return new Promise((resolve, reject) => {\n api\n .getPluginChangelog(pluginId)\n .then((responseData) => {\n commit('updatePluginChangelog', {\n pluginId,\n changelog: responseData,\n });\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getPluginDetails({commit}, pluginId) {\n return new Promise((resolve, reject) => {\n api\n .getPluginDetails(pluginId)\n .then((responseData) => {\n commit('updatePluginDetails', responseData);\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getPluginDetailsByHandle({commit}, pluginHandle) {\n return api.getPluginDetailsByHandle(pluginHandle).then((responseData) => {\n commit('updatePluginDetails', responseData);\n });\n },\n\n getPluginsByCategory({getters, dispatch}, context) {\n return new Promise((resolve, reject) => {\n const pluginIndexParams = getters['getPluginIndexParams'](context);\n\n api\n .getPluginsByCategory(context.categoryId, pluginIndexParams)\n .then((responseData) => {\n dispatch('updatePluginIndex', {context, responseData});\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getPluginsByDeveloperId({getters, dispatch}, context) {\n return new Promise((resolve, reject) => {\n const pluginIndexParams = getters['getPluginIndexParams'](context);\n\n api\n .getPluginsByDeveloperId(context.developerId, pluginIndexParams)\n .then((responseData) => {\n dispatch('updatePluginIndex', {context, responseData});\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getPluginsByFeaturedSectionHandle({getters, dispatch}, context) {\n return new Promise((resolve, reject) => {\n const pluginIndexParams = getters['getPluginIndexParams'](context);\n\n return api\n .getPluginsByFeaturedSectionHandle(\n context.featuredSectionHandle,\n pluginIndexParams\n )\n .then((responseData) => {\n dispatch('updatePluginIndex', {context, responseData});\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n searchPlugins({getters, dispatch}, context) {\n return new Promise((resolve, reject) => {\n const pluginIndexParams = getters['getPluginIndexParams'](context);\n\n api\n .searchPlugins(context.searchQuery, pluginIndexParams)\n .then((responseData) => {\n dispatch('updatePluginIndex', {context, responseData});\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n updatePluginIndex({commit}, {context, responseData}) {\n if (context.appendData && context.appendData === true) {\n commit('appendPlugins', responseData.plugins);\n } else {\n commit('updatePlugins', responseData.plugins);\n }\n },\n};\n\n/**\n * Mutations\n */\nconst mutations = {\n appendPlugins(state, plugins) {\n state.plugins = [...state.plugins, ...plugins];\n },\n\n updateCoreData(state, {responseData}) {\n state.categories = responseData.categories;\n state.expiryDateOptions = responseData.expiryDateOptions;\n state.sortOptions = responseData.sortOptions;\n },\n\n updateCmsEditions(state, {responseData}) {\n state.cmsEditions = responseData.editions;\n },\n\n updateDeveloper(state, developer) {\n state.developer = developer;\n },\n\n updateFeaturedSection(state, featuredSection) {\n state.featuredSection = featuredSection;\n },\n\n updateFeaturedSections(state, featuredSections) {\n state.featuredSections = featuredSections;\n },\n\n updatePluginChangelog(state, {pluginId, changelog}) {\n state.pluginChangelogPluginId = pluginId;\n state.pluginChangelog = changelog;\n },\n\n updatePluginDetails(state, pluginDetails) {\n state.plugin = pluginDetails;\n },\n\n updatePlugins(state, plugins) {\n state.plugins = plugins;\n },\n};\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations,\n};\n","import api from '../../api/craft';\n\n/**\n * State\n */\nconst state = {\n canTestEditions: null,\n countries: null,\n craftId: null,\n craftLogo: null,\n currentUser: null,\n licensedEdition: null,\n pluginLicenseInfo: {},\n\n // Craft editions\n CraftEdition: null,\n CraftPro: null,\n CraftSolo: null,\n};\n\n/**\n * Getters\n */\nconst getters = {\n getCmsEditionFeatures() {\n return (editionHandle) => {\n const features = {\n solo: [\n {\n name: 'Ultra-flexible content modeling',\n description:\n 'Define custom content types, fields, and relations needed to perfectly contain your unique content requirements.',\n },\n {\n name: 'Powerful front-end tools',\n description:\n 'Develop custom front-end templates with Twig, or use Craft as a headless CMS.',\n },\n {\n name: 'Multi-Site',\n description:\n 'Run multiple related sites from a single installation, with shared content and user accounts.',\n },\n {\n name: 'Localization',\n description:\n 'Cater to distinct audiences from around the world with Craft’s best-in-class localization capabilities.',\n },\n {\n name: 'Single admin account',\n description:\n 'The Solo edition is limited to a single admin account.',\n },\n ],\n pro: [\n {\n name: 'Unlimited user accounts',\n description:\n 'Create unlimited user accounts, user groups, user permissions, and public user registration.',\n },\n {\n name: 'Enhanced content previewing',\n description:\n 'Preview your content from multiple targets, including single-page applications.',\n },\n {\n name: 'GraphQL API',\n description:\n 'Make your content available to other applications with a self-generating GraphQL API.',\n },\n {\n name: 'System branding',\n description: 'Personalize the control panel for your brand.',\n },\n {\n name: 'Basic developer support',\n description:\n 'Get developer-to-developer support right from the Craft core development team.',\n },\n ],\n };\n\n if (!features[editionHandle]) {\n return null;\n }\n\n return features[editionHandle];\n };\n },\n\n getPluginLicenseInfo(state) {\n return (pluginHandle) => {\n if (!state.pluginLicenseInfo) {\n return null;\n }\n\n if (!state.pluginLicenseInfo[pluginHandle]) {\n return null;\n }\n\n return state.pluginLicenseInfo[pluginHandle];\n };\n },\n\n isPluginInstalled(state) {\n return (pluginHandle) => {\n if (!state.pluginLicenseInfo) {\n return false;\n }\n\n if (!state.pluginLicenseInfo[pluginHandle]) {\n return false;\n }\n\n if (!state.pluginLicenseInfo[pluginHandle].isInstalled) {\n return false;\n }\n\n return true;\n };\n },\n\n getCmsEditionIndex(state) {\n return (editionHandle) => {\n switch (editionHandle) {\n case 'solo':\n return state.CraftSolo;\n case 'pro':\n return state.CraftPro;\n default:\n return null;\n }\n };\n },\n};\n\n/**\n * Actions\n */\nconst actions = {\n cancelRequests() {\n return api.cancelRequests();\n },\n\n getCraftData({commit}) {\n return new Promise((resolve, reject) => {\n api\n .getCraftData()\n .then((response) => {\n commit('updateCraftData', {response});\n api\n .getCountries()\n .then((responseData) => {\n commit('updateCountries', {responseData});\n resolve();\n })\n .catch((error) => {\n reject(error);\n });\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getCraftIdData({commit}, {accessToken}) {\n return new Promise((resolve, reject) => {\n api\n .getCraftIdData({accessToken})\n .then((responseData) => {\n commit('updateCraftIdData', {responseData});\n resolve();\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getPluginLicenseInfo({commit}) {\n return new Promise((resolve, reject) => {\n api\n .getPluginLicenseInfo()\n .then((response) => {\n commit('updatePluginLicenseInfo', {response});\n resolve(response);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n switchPluginEdition({dispatch}, {pluginHandle, edition}) {\n return new Promise((resolve, reject) => {\n api\n .switchPluginEdition(pluginHandle, edition)\n .then((switchPluginEditionResponse) => {\n dispatch('getPluginLicenseInfo')\n .then((getPluginLicenseInfoResponse) => {\n resolve({\n switchPluginEditionResponse,\n getPluginLicenseInfoResponse,\n });\n })\n .catch((response) => reject(response));\n })\n .catch((response) => reject(response));\n });\n },\n\n tryEdition(context, edition) {\n return new Promise((resolve, reject) => {\n api\n .tryEdition(edition)\n .then((response) => {\n resolve(response);\n })\n .catch((response) => {\n reject(response);\n });\n });\n },\n};\n\n/**\n * Mutations\n */\nconst mutations = {\n updateCraftData(state, {response}) {\n state.canTestEditions = response.data.canTestEditions;\n state.craftLogo = response.data.craftLogo;\n state.currentUser = response.data.currentUser;\n state.licensedEdition = response.data.licensedEdition;\n\n // Craft editions\n state.CraftEdition = response.data.CraftEdition;\n state.CraftPro = response.data.CraftPro;\n state.CraftSolo = response.data.CraftSolo;\n },\n\n updateCraftIdData(state, {responseData}) {\n state.craftId = responseData;\n },\n\n updateCountries(state, {responseData}) {\n state.countries = responseData.countries;\n },\n\n updateCraftId(state, craftId) {\n state.craftId = craftId;\n },\n\n updatePluginLicenseInfo(state, {response}) {\n state.pluginLicenseInfo = response.data;\n },\n};\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations,\n};\n","/* global Craft */\n\nimport axios from 'axios';\nimport api from '../utils/api';\n\nexport default {\n /**\n * Cancel requests.\n */\n cancelRequests() {\n api.cancelRequests();\n },\n\n /**\n * Get Craft data.\n */\n getCraftData() {\n return new Promise((resolve, reject) => {\n api\n .sendActionRequest('GET', 'plugin-store/craft-data')\n .then((response) => {\n resolve(response);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get Craft ID data.\n */\n getCraftIdData({accessToken}) {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'account', {\n headers: {\n Authorization: 'Bearer ' + accessToken,\n },\n })\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get countries.\n */\n getCountries() {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'countries')\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get Plugin License Info.\n */\n getPluginLicenseInfo() {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'cms-licenses', {\n params: {\n include: 'plugins',\n },\n })\n .then((response) => {\n api\n .sendActionRequest('POST', 'app/get-plugin-license-info', {\n data: {\n pluginLicenses: response.license.pluginLicenses || [],\n },\n headers: {\n 'X-CSRF-Token': Craft.csrfTokenValue,\n },\n })\n .then((response) => {\n resolve(response);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n });\n },\n\n /**\n * Switch plugin edition.\n */\n switchPluginEdition(pluginHandle, edition) {\n return new Promise((resolve, reject) => {\n const data = 'pluginHandle=' + pluginHandle + '&edition=' + edition;\n\n api\n .sendActionRequest('POST', 'plugins/switch-edition', {\n data,\n headers: {\n 'X-CSRF-Token': Craft.csrfTokenValue,\n },\n })\n .then((response) => {\n Craft.clearCachedApiHeaders();\n resolve(response);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Try edition.\n */\n tryEdition(edition) {\n return new Promise((resolve, reject) => {\n api\n .sendActionRequest('POST', 'app/try-edition', {\n data: 'edition=' + edition,\n headers: {\n 'X-CSRF-Token': Craft.csrfTokenValue,\n },\n })\n .then((response) => {\n Craft.clearCachedApiHeaders();\n resolve(response);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n};\n","import Vue from 'vue';\nimport Vuex from 'vuex';\nimport app from './modules/app';\nimport cart from './modules/cart';\nimport developerIndex from './modules/developer-index';\nimport pluginStore from './modules/plugin-store';\nimport craft from './modules/craft';\n\nVue.use(Vuex);\n\nexport default new Vuex.Store({\n strict: true,\n modules: {\n app,\n cart,\n developerIndex,\n pluginStore,\n craft,\n },\n});\n","/**\n * State\n */\nconst state = {\n searchQuery: '',\n showingScreenshotModal: false,\n screenshotModalImages: null,\n screenshotModalImageKey: 0,\n};\n\n/**\n * Getters\n */\nconst getters = {};\n\n/**\n * Actions\n */\nconst actions = {};\n\n/**\n * Mutations\n */\nconst mutations = {\n updateSearchQuery(state, searchQuery) {\n state.searchQuery = searchQuery;\n },\n\n updateShowingScreenshotModal(state, show) {\n state.showingScreenshotModal = show;\n },\n\n updateScreenshotModalImages(state, images) {\n state.screenshotModalImages = images;\n },\n\n updateScreenshotModalImageKey(state, key) {\n state.screenshotModalImageKey = key;\n },\n};\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations,\n};\n","import { render, staticRenderFns } from \"./Step.vue?vue&type=template&id=91f66f8a&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"pluginstore-modal-flex\"},[(!!_vm.$slots['body'])?[_vm._t(\"body\")]:[(!!_vm.$slots['header'])?_c('header',{staticClass:\"header\"},[_vm._t(\"header\")],2):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"pluginstore-modal-main\"},[_c('div',{staticClass:\"pluginstore-modal-content\"},[_vm._t(\"main\")],2)])]],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ActiveTrial.vue?vue&type=template&id=6a81c7be&\"\nimport script from \"./ActiveTrial.vue?vue&type=script&lang=js&\"\nexport * from \"./ActiveTrial.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tw-border-t tw-border-solid tw-border-gray-200 md:tw-flex md:tw-justify-between md:tw-items-center tw-py-4 md:tw-py-2 tw-space-y-2 md:tw-space-y-0\"},[_c('div',{staticClass:\"tw-flex tw-items-center tw-w-3/5\"},[_c('div',{staticClass:\"tw-mr-4 tw-leading-3\"},[(_vm.activeTrial.iconUrl)?_c('img',{staticClass:\"tw-w-10 tw-h-10\",attrs:{\"src\":_vm.activeTrial.iconUrl}}):_c('div',{staticClass:\"default-icon\"})]),_vm._v(\" \"),_c('div',{staticClass:\"item-name\"},[_c('a',{staticClass:\"tw-mr-2\",attrs:{\"title\":_vm.activeTrial.name},on:{\"click\":function($event){$event.preventDefault();return _vm.navigateToPlugin.apply(null, arguments)}}},[_c('strong',[_vm._v(_vm._s(_vm.activeTrial.name))])]),_vm._v(\" \"),(_vm.activeTrial.editionName && _vm.activeTrial.showEditionBadge)?_c('edition-badge',{attrs:{\"name\":_vm.activeTrial.editionName}}):_vm._e()],1)]),_vm._v(\" \"),_c('div',{staticClass:\"tw-flex-1\"},[(_vm.activeTrial.price)?[(_vm.activeTrial.discountPrice)?[_c('del',{staticClass:\"tw-mr-1\"},[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.activeTrial.price)))]),_vm._v(\" \"),_c('strong',[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.activeTrial.discountPrice)))])]:[_c('strong',[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.activeTrial.price)))])]]:_vm._e()],2),_vm._v(\" \"),_c('div',{staticClass:\"md:tw-w-1/4\"},[_c('div',{staticClass:\"md:tw-text-right\"},[(!_vm.addToCartLoading && !_vm.loading)?[_c('button',{class:{\n 'tw-text-blue-600 hover:tw-underline': true,\n 'disabled hover:tw-no-underline': _vm.activeTrial.licenseMismatched,\n },attrs:{\"loading\":_vm.addToCartLoading,\"disabled\":_vm.loading},on:{\"click\":function($event){return _vm.addToCart()}}},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Add to cart','app'))+\"\\n \")])]:[_c('c-spinner',{attrs:{\"size\":\"sm\"}})]],2)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./ActiveTrials.vue?vue&type=template&id=19de9ac0&\"\nimport script from \"./ActiveTrials.vue?vue&type=script&lang=js&\"\nexport * from \"./ActiveTrials.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActiveTrials.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActiveTrials.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.pendingActiveTrials && _vm.pendingActiveTrials.length > 0)?_c('div',{staticClass:\"tw-border-t tw-border-solid tw-border-gray-200 tw-mt-6 tw-pt-6\"},[(_vm.pendingActiveTrials.length > 1)?_c('div',{staticClass:\"right\"},[_c('a',{class:{\n 'tw-opacity-50 tw-cursor-default': _vm.loading,\n },on:{\"click\":function($event){return _vm.addAllTrialsToCart()}}},[_vm._v(_vm._s(_vm._f(\"t\")('Add all to cart','app')))])]):_vm._e(),_vm._v(\" \"),_c('h2',[_vm._v(_vm._s(_vm._f(\"t\")('Active Trials','app')))]),_vm._v(\" \"),_c('div',{staticClass:\"cart-data\"},_vm._l((_vm.pendingActiveTrials),function(activeTrial,key){return _c('div',{key:key},[_c('active-trial',{attrs:{\"loading\":_vm.loading,\"activeTrial\":activeTrial}})],1)}),0)]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./ItemIcon.vue?vue&type=template&id=b3a8bbe6&\"\nimport script from \"./ItemIcon.vue?vue&type=script&lang=js&\"\nexport * from \"./ItemIcon.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ItemIcon.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ItemIcon.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tw-w-14 tw-h-14\"},[(_vm.item.lineItem.purchasable.type === 'cms-edition')?[_c('img',{staticClass:\"tw-w-full\",attrs:{\"src\":_vm.craftLogo}})]:(_vm.item.lineItem.purchasable.type === 'plugin-edition')?[(_vm.item.plugin.iconUrl)?_c('img',{staticClass:\"tw-w-full\",attrs:{\"src\":_vm.item.plugin.iconUrl}}):_vm._e()]:_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ItemName.vue?vue&type=template&id=6e53c798&\"\nimport script from \"./ItemName.vue?vue&type=script&lang=js&\"\nexport * from \"./ItemName.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.item.lineItem.purchasable.type === 'cms-edition')?[_c('strong',[_vm._v(\"Craft CMS\")]),_vm._v(\" \"),_c('edition-badge',{attrs:{\"name\":_vm.item.lineItem.purchasable.name}})]:(_vm.item.lineItem.purchasable.type === 'plugin-edition')?[_c('strong',[_vm._v(_vm._s(_vm.item.plugin.name))]),_vm._v(\" \"),(_vm.item.plugin.editions > 1)?_c('edition-badge',{attrs:{\"name\":_vm.item.lineItem.purchasable.name}}):_vm._e()]:_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n\n\n\n","import { render, staticRenderFns } from \"./ItemAdjustments.vue?vue&type=template&id=3f5d5f84&\"\nimport script from \"./ItemAdjustments.vue?vue&type=script&lang=js&\"\nexport * from \"./ItemAdjustments.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n \n \n
    \n {{ adjustment.amount | currency }}\n
    \n \n \n \n \n\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_vm._l((_vm.item.lineItem.adjustments.filter(\n function (lineItemAdustment) { return lineItemAdustment.sourceSnapshot.type !== 'extendedUpdates'; }\n )),function(adjustment,adjustmentKey){return [_c('div',{key:_vm.itemKey + 'adjustment-' + adjustmentKey},[_c('div',{staticClass:\"tw-py-2 tw-flex tw-border-t tw-border-solid tw-border-gray-200\"},[_c('div',{staticClass:\"tw-flex-1\"},[(adjustment.sourceSnapshot.type === 'extendedUpdates')?[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Updates until {date}','app', {\n date: _vm.$options.filters.formatDate(\n adjustment.sourceSnapshot.expiryDate\n ),\n }))+\"\\n \")]:[_vm._v(\"\\n \"+_vm._s(adjustment.name)+\"\\n \")]],2),_vm._v(\" \"),_c('div',{staticClass:\"price tw-w-24 tw-text-right\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"currency\")(adjustment.amount))+\"\\n \")])])])]})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Modal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Modal.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./Cart.vue?vue&type=template&id=dccd82ba&\"\nimport script from \"./Cart.vue?vue&type=script&lang=js&\"\nexport * from \"./Cart.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Cart.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Cart.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('step',[_c('template',{slot:\"header\"},[_c('h1',[_vm._v(_vm._s(_vm._f(\"t\")('Cart','app')))])]),_vm._v(\" \"),_c('template',{slot:\"main\"},[(!_vm.activeTrialsLoading)?[_c('h2',[_vm._v(_vm._s(_vm._f(\"t\")('Items in your cart','app')))]),_vm._v(\" \"),(_vm.cart)?[(_vm.cartItems.length)?[_c('div',{staticClass:\"cart-data tw-border-t tw-border-solid tw-border-gray-200\"},[_vm._l((_vm.cartItems),function(item,itemKey){return _c('div',{key:'item' + itemKey,staticClass:\"tw-border-b tw-border-solid tw-border-gray-200 md:tw-flex\"},[_c('div',{staticClass:\"md:tw-mr-6 tw-pt-4 md:tw-pb-4 md:tw-px-4\"},[_c('item-icon',{attrs:{\"item\":item}})],1),_vm._v(\" \"),_c('div',{staticClass:\"tw-flex-1\"},[_c('div',{staticClass:\"tw-flex tw-py-4\"},[_c('item-name',{staticClass:\"tw-flex-1\",attrs:{\"item\":item}}),_vm._v(\" \"),_c('div',{staticClass:\"price tw-w-24 tw-text-right\"},[_c('strong',[_vm._v(_vm._s(_vm._f(\"currency\")(item.lineItem.price)))])])],1),_vm._v(\" \"),_c('div',{staticClass:\"tw-border-t tw-border-solid tw-border-gray-200 tw-flex tw-justify-between tw-py-4\"},[_c('div',{staticClass:\"expiry-date\"},[(\n item.lineItem.purchasable.type === 'cms-edition' ||\n (item.lineItem.purchasable.type ===\n 'plugin-edition' &&\n (item.lineItem.options.licenseKey.substring(\n 0,\n 4\n ) === 'new:' ||\n (_vm.pluginLicenseInfo(item.plugin.handle) &&\n _vm.pluginLicenseInfo(item.plugin.handle).isTrial)))\n )?[_c('c-dropdown',{attrs:{\"options\":_vm.itemExpiryDateOptions(itemKey)},on:{\"input\":function($event){return _vm.onSelectedExpiryDateChange(itemKey)}},model:{value:(_vm.selectedExpiryDates[itemKey]),callback:function ($$v) {_vm.$set(_vm.selectedExpiryDates, itemKey, $$v)},expression:\"selectedExpiryDates[itemKey]\"}})]:_vm._e(),_vm._v(\" \"),(_vm.itemLoading(itemKey))?_c('c-spinner'):_vm._e()],2),_vm._v(\" \"),_vm._l((item.lineItem.adjustments.filter(\n function (lineItemAdustment) { return lineItemAdustment.sourceSnapshot.type ===\n 'extendedUpdates'; }\n )),function(adjustment,adjustmentKey){return [_c('div',{key:itemKey + 'adjustment-' + adjustmentKey},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"currency\")(adjustment.amount))+\"\\n \")])]})],2),_vm._v(\" \"),_c('item-adjustments',{attrs:{\"item\":item}}),_vm._v(\" \"),_c('div',{staticClass:\"tw-py-4 tw-text-right tw-border-t tw-border-solid tw-border-gray-200\"},[(!_vm.removeFromCartLoading(itemKey))?[_c('a',{attrs:{\"role\":\"button\"},on:{\"click\":function($event){return _vm.removeFromCart(itemKey)}}},[_vm._v(_vm._s(_vm._f(\"t\")('Remove','app')))])]:[_c('c-spinner',{staticClass:\"sm\"})]],2)],1)])}),_vm._v(\" \"),_c('div',{staticClass:\"tw-flex tw-mt-4 tw-text-lg\"},[_c('div',{staticClass:\"tw-w-14 tw-mr-14\"}),_vm._v(\" \"),_c('div',{staticClass:\"tw-flex-1 tw-flex tw-justify-between\"},[_c('div',[_c('strong',[_vm._v(_vm._s(_vm._f(\"t\")('Total Price','app')))])]),_vm._v(\" \"),_c('div',[_c('strong',[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.cart.totalPrice)))])])])])],2),_vm._v(\" \"),_c('div',{staticClass:\"tw-mt-4 tw-py-4 tw-text-right\"},[_c('c-btn',{attrs:{\"kind\":\"primary\",\"loading\":_vm.loadingCheckout},on:{\"click\":function($event){return _vm.payment()}}},[_vm._v(_vm._s(_vm._f(\"t\")('Checkout','app'))+\"\\n \")])],1)]:_c('div',[_c('p',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Your cart is empty.','app'))+\"\\n \"),_c('a',{on:{\"click\":function($event){return _vm.$emit('continue-shopping')}}},[_vm._v(_vm._s(_vm._f(\"t\")('Continue shopping','app')))])])])]:_vm._e(),_vm._v(\" \"),_c('active-trials')]:[_c('c-spinner')]],2)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Modal.vue?vue&type=template&id=1a7381d0&\"\nimport script from \"./Modal.vue?vue&type=script&lang=js&\"\nexport * from \"./Modal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Modal.vue?vue&type=style&index=0&id=1a7381d0&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tw-hidden\"},[_c('div',{ref:\"pluginstoremodal\",staticClass:\"pluginstore-modal modal\",class:'step-' + _vm.modalStep,attrs:{\"id\":\"pluginstore-modal\"}},[(_vm.modalStep === 'cart')?_c('cart',{on:{\"continue-shopping\":function($event){return _vm.$root.closeModal()}}}):_vm._e()],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./NavItems.vue?vue&type=template&id=03ee3636&\"\nimport script from \"./NavItems.vue?vue&type=script&lang=js&\"\nexport * from \"./NavItems.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavItems.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavItems.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"nav-items\"},[_c('ul',[_c('li',[_c('router-link',{attrs:{\"to\":\"/\"},nativeOn:{\"click\":function($event){return _vm.$emit('itemClick')}}},[_c('c-icon',{attrs:{\"icon\":\"star\"}}),_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Discover','app'))+\"\\n \")],1)],1),_vm._v(\" \"),(_vm.CraftEdition < _vm.CraftPro || _vm.licensedEdition < _vm.CraftPro)?_c('li',[_c('router-link',{attrs:{\"to\":\"/upgrade-craft\"},nativeOn:{\"click\":function($event){return _vm.$emit('itemClick')}}},[_c('img',{attrs:{\"src\":\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIiB2aWV3Qm94PSIwIDAgMTAwIDEwMCI+CiAgPGcgZmlsbD0ibm9uZSI+CiAgICA8cmVjdCB3aWR0aD0iNDAuOTA5IiBoZWlnaHQ9IjQwLjkwOSIgeD0iMjkuNTQ1IiB5PSIyOS41NDUiIGZpbGw9IiNGRkYiLz4KICAgIDxwYXRoIGZpbGw9IiNFNTQyMkIiIGQ9Ik04OS40NzM2ODQyLDAgTDEwLjUyNjMxNTgsMCBDNC42NzgzNjI1NywwIDAsNC42NzgzNjI1NyAwLDEwLjUyNjMxNTggTDAsODkuNDczNjg0MiBDMCw5NS4zMjE2Mzc0IDQuNjc4MzYyNTcsMTAwIDEwLjUyNjMxNTgsMTAwIEw4OS40NzM2ODQyLDEwMCBDOTUuMjA0Njc4NCwxMDAgMTAwLDk1LjMyMTYzNzQgMTAwLDg5LjQ3MzY4NDIgTDEwMCwxMC41MjYzMTU4IEMxMDAsNC42NzgzNjI1NyA5NS4zMjE2Mzc0LDAgODkuNDczNjg0MiwwIE02MCw1Ni42MDgxODcxIEw2NC42NzgzNjI2LDYxLjk4ODMwNDEgQzU5Ljc2NjA4MTksNjUuOTY0OTEyMyA1NC4xNTIwNDY4LDY4LjE4NzEzNDUgNDguNTM4MDExNyw2OC4xODcxMzQ1IEMzNy40MjY5MDA2LDY4LjE4NzEzNDUgMzAuNDA5MzU2Nyw2MC44MTg3MTM1IDMyLjA0Njc4MzYsNTAuNDA5MzU2NyBDMzMuNjg0MjEwNSw0MCA0My4xNTc4OTQ3LDMyLjYzMTU3ODkgNTQuMjY5MDA1OCwzMi42MzE1Nzg5IEM1OS42NDkxMjI4LDMyLjYzMTU3ODkgNjQuNjc4MzYyNiwzNC43MzY4NDIxIDY4LjE4NzEzNDUsMzguNTk2NDkxMiBMNjEuNjM3NDI2OSw0My45NzY2MDgyIEM1OS43NjYwODE5LDQxLjUyMDQ2NzggNTYuNjA4MTg3MSwzOS44ODMwNDA5IDUzLjA5OTQxNTIsMzkuODgzMDQwOSBDNDYuNDMyNzQ4NSwzOS44ODMwNDA5IDQxLjI4NjU0OTcsNDQuMjEwNTI2MyA0MC4yMzM5MTgxLDUwLjQwOTM1NjcgQzM5LjI5ODI0NTYsNTYuNjA4MTg3MSA0My4wNDA5MzU3LDYwLjkzNTY3MjUgNDkuODI0NTYxNCw2MC45MzU2NzI1IEM1My4wOTk0MTUyLDYwLjkzNTY3MjUgNTYuNjA4MTg3MSw1OS42NDkxMjI4IDYwLDU2LjYwODE4NzEgWiIvPgogIDwvZz4KPC9zdmc+Cg==\"}}),_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Upgrade Craft CMS','app'))+\"\\n \")])],1):_vm._e(),_vm._v(\" \"),_vm._l((_vm.categories),function(category){return _c('li',{key:category.id},[_c('router-link',{attrs:{\"to\":'/categories/' + category.id},nativeOn:{\"click\":function($event){return _vm.$emit('itemClick')}}},[_c('img',{attrs:{\"src\":category.iconUrl}}),_vm._v(\"\\n \"+_vm._s(category.title)+\"\\n \")])],1)})],2),_vm._v(\" \"),_c('div',{staticClass:\"tw-border-t tw-border-gray-200 tw-border-solid tw-mt-8 tw-py-8\"},[_c('ul',[_c('li',[_c('a',{attrs:{\"href\":\"https://craftcms.com/\",\"title\":\"Craft CMS\"},on:{\"click\":function($event){return _vm.$emit('itemClick')}}},[_c('c-icon',{staticClass:\"tw-w-6 tw-h-6\",attrs:{\"icon\":\"world\"}}),_vm._v(\"\\n craftcms.com\\n \")],1)]),_vm._v(\" \"),_c('li',[_c('a',{attrs:{\"href\":\"https://id.craftcms.com/\",\"title\":\"Craft ID\"},on:{\"click\":function($event){return _vm.$emit('itemClick')}}},[_c('c-icon',{staticClass:\"tw-w-6 tw-h-6\",attrs:{\"icon\":\"world\"}}),_vm._v(\"\\n Craft ID\\n \")],1)])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CategorySelector.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CategorySelector.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CategorySelector.vue?vue&type=template&id=a5bf3e5a&scoped=true&\"\nimport script from \"./CategorySelector.vue?vue&type=script&lang=js&\"\nexport * from \"./CategorySelector.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CategorySelector.vue?vue&type=style&index=0&id=a5bf3e5a&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a5bf3e5a\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('a',{staticClass:\"category-selector-btn\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();_vm.showCategorySelector = !_vm.showCategorySelector}}},[_vm._v(\"All categories\")]),_vm._v(\" \"),_c('div',{staticClass:\"category-selector\",class:{hidden: !_vm.showCategorySelector}},[_c('div',{staticClass:\"category-selector-header\",class:{\n 'tw-px-4 tw-py-2 tw-bg-gray-100 tw-border-b tw-border-solid tw-border-gray-200 tw-flex tw-items-center': true,\n }},[_c('button',{staticClass:\"tw-px-1.5 tw-py-1 tw-flex tw-items-center tw-rounded tw-text-gray-500 hover:tw-text-blue-600\",on:{\"click\":function($event){_vm.showCategorySelector = false}}},[_c('c-icon',{staticClass:\"tw-w-6 tw-h-6\",attrs:{\"icon\":\"x\"}})],1)]),_vm._v(\" \"),_c('div',{staticClass:\"category-selector-body\"},[_c('nav-items',{on:{\"itemClick\":function($event){_vm.showCategorySelector = false}}})],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PluginSearch.vue?vue&type=template&id=d14feef0&\"\nimport script from \"./PluginSearch.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginSearch.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"tw-mb-4\"},[_c('form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.search()}}},[_c('div',{staticClass:\"ps-search tw-relative tw-flex tw-w-full\"},[_c('div',{staticClass:\"tw-absolute tw-inset-y-0 tw-flex tw-items-center tw-pl-3 tw-z-10 tw-text-gray-500\"},[_c('c-icon',{attrs:{\"icon\":\"search\"}})],1),_vm._v(\" \"),_c('c-textbox',{staticClass:\"tw-flex-1 tw-w-full tw-pl-9\",attrs:{\"type\":\"text\",\"id\":\"searchQuery\",\"placeholder\":_vm._f(\"t\")('Search plugins','app'),\"autocomplete\":\"off\"},model:{value:(_vm.searchQuery),callback:function ($$v) {_vm.searchQuery=$$v},expression:\"searchQuery\"}})],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Sidebar.vue?vue&type=template&id=0e5f66ea&\"\nimport script from \"./Sidebar.vue?vue&type=script&lang=js&\"\nexport * from \"./Sidebar.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"ps-sidebar\"},[_c('plugin-search'),_vm._v(\" \"),_c('category-selector'),_vm._v(\" \"),_c('nav-items',{staticClass:\"tw-hidden lg:tw-block\"})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ScreenshotModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ScreenshotModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ScreenshotModal.vue?vue&type=template&id=20cc90bc&\"\nimport script from \"./ScreenshotModal.vue?vue&type=script&lang=js&\"\nexport * from \"./ScreenshotModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ScreenshotModal.vue?vue&type=style&index=0&id=20cc90bc&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:\"screenshotModal\",attrs:{\"id\":\"screenshot-modal\"},on:{\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"])){ return null; }return _vm.close.apply(null, arguments)}}},[_c('a',{staticClass:\"close screenshot-modal-button\",on:{\"click\":_vm.close}},[_c('c-icon',{attrs:{\"icon\":\"x\",\"size\":\"8\"}})],1),_vm._v(\" \"),(_vm.screenshotModalImages)?_c('div',{ref:\"carousel\",staticClass:\"carousel\"},[_c('swiper',{ref:\"screenshotModalSwiper\",attrs:{\"options\":_vm.swiperOption}},_vm._l((_vm.screenshotModalImages),function(imageUrl,key){return _c('swiper-slide',{key:key},[_c('div',{staticClass:\"screenshot\"},[_c('div',{staticClass:\"swiper-zoom-container\"},[_c('img',{attrs:{\"src\":imageUrl}})])])])}),1),_vm._v(\" \"),(_vm.screenshotModalImages.length > 1)?[_c('div',{staticClass:\"ps-swiper-button-prev screenshot-modal-button\"},[_c('c-icon',{attrs:{\"icon\":\"chevron-left\",\"size\":\"8\"}})],1),_vm._v(\" \"),_c('div',{staticClass:\"ps-swiper-button-next screenshot-modal-button\"},[_c('c-icon',{attrs:{\"icon\":\"chevron-right\",\"size\":\"8\"}})],1),_vm._v(\" \"),_c('div',{staticClass:\"pagination-wrapper\"},[_c('div',{staticClass:\"pagination-content\"},[_c('div',{class:'swiper-pagination',attrs:{\"slot\":\"pagination\"},slot:\"pagination\"})])])]:_vm._e()],2):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=cf1860fe&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=cf1860fe&prod&lang=scss&\"\nimport style1 from \"./App.vue?vue&type=style&index=1&id=cf1860fe&prod&style=scss&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"ps-wrapper\"},[_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.showingScreenshotModal)?_c('screenshot-modal'):_vm._e()],1),_vm._v(\" \"),(_vm.$root.pluginStoreDataLoaded)?[_c('sidebar'),_vm._v(\" \"),_c('div',{staticClass:\"ps-main\",on:{\"&scroll\":function($event){return _vm.onViewScroll.apply(null, arguments)}}},[_c('router-view',{key:_vm.$route.fullPath})],1)]:[_c('status-message',{attrs:{\"error\":_vm.$root.pluginStoreDataError,\"message\":_vm.$root.statusMessage}})],_vm._v(\" \"),_c('modal',{attrs:{\"show\":_vm.$root.showModal,\"plugin-id\":_vm.$root.pluginId},on:{\"update:show\":function($event){return _vm.$set(_vm.$root, \"showModal\", $event)}}})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Vue from 'vue';\nimport VueAwesomeSwiper from 'vue-awesome-swiper';\nimport 'swiper/css/swiper.css';\n\nVue.use(VueAwesomeSwiper);\n","import Vue from 'vue';\nimport ApexChart from 'vue-apexcharts';\n\nVue.component('ApexChart', ApexChart);\n","var render = function () {\nvar _obj;\nvar _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(_vm.component,_vm._b({tag:\"component\",staticClass:\"c-btn truncate\",class:[\n ( _obj = {\n small: _vm.small,\n large: _vm.large,\n block: _vm.block,\n outline: _vm.outline,\n loading: _vm.loading\n }, _obj[_vm.kind] = true, _obj['c-btn-icon'] = _vm.icon && !_vm.$slots.default, _obj.group = true, _obj['tw-inline-block tw-px-4 tw-py-2 tw-rounded-md'] = true, _obj['tw-text-sm tw-leading-5 tw-no-underline hover:tw-no-underline'] = true, _obj['tw-border tw-border-solid'] = true, _obj['disabled:tw-opacity-50 disabled:tw-cursor-default'] = true, _obj['tw-text-white'] = _vm.kind === 'primary' && !_vm.outline, _obj['hover:tw-text-white'] = _vm.kind === 'primary' && !_vm.outline, _obj['active:tw-text-white'] = _vm.kind === 'primary' && !_vm.outline, _obj['tw-text-black'] = _vm.kind === 'default', _obj['tw-border-blue-600'] = _vm.kind === 'primary', _obj['tw-bg-blue-600'] = _vm.kind === 'primary' && !_vm.outline, _obj['hover:tw-bg-blue-700 hover:tw-border-blue-700 active:hover:tw-bg-blue-600 active:hover:tw-border-blue-600'] = \n _vm.kind === 'primary' && !_vm.outline, _obj['active:tw-bg-blue-800 active:tw-border-blue-800'] = \n _vm.kind === 'primary' && !_vm.outline, _obj['disabled:tw-bg-blue-600 disabled:tw-border-blue-600'] = \n _vm.kind === 'primary' && !_vm.outline, _obj['tw-text-blue-600 hover:tw-bg-blue-600 active:tw-bg-blue-800'] = \n _vm.kind === 'primary' && _vm.outline, _obj['tw-border-gray-200 tw-text-blue-600'] = _vm.kind === 'secondary', _obj['hover:tw-cursor-pointer hover:tw-bg-gray-50 hover:tw-border-gray-200'] = \n _vm.kind === 'secondary', _obj['active:tw-cursor-pointer active:tw-bg-gray-100 active:tw-border-gray-300'] = \n _vm.kind === 'secondary', _obj['tw-text-blue-600 tw-bg-white tw-shadow-gray-600/7'] = \n _vm.kind === 'secondary' && !_vm.outline, _obj['tw-text-red-600 tw-bg-white tw-border-gray-200'] = _vm.kind === 'danger', _obj['focus:tw-border-red-400 focus:tw-ring-red-500/30'] = _vm.kind === 'danger', _obj['hover:tw-bg-red-500 hover:tw-text-white hover:tw-border-red-600'] = \n _vm.kind === 'danger', _obj['active:tw-bg-red-600'] = _vm.kind === 'danger', _obj ) ],attrs:{\"to\":_vm.to,\"href\":_vm.href,\"target\":_vm.target,\"type\":_vm.computedType},on:{\"click\":function($event){return _vm.$emit('click')}}},'component',_vm.additionalAttributes,false),[(_vm.loading)?[_c('c-spinner',{attrs:{\"animationClass\":(\"border-\" + _vm.animationColor + \" group-hover:border-\" + _vm.animationColorHover)}})]:_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"c-btn-content\"},[(_vm.icon && _vm.icon.length > 0)?_c('c-icon',{staticClass:\"tw-mr-1\",attrs:{\"icon\":_vm.icon,\"size\":\"3\"}}):_vm._e(),_vm._v(\" \"),_vm._t(\"default\"),_vm._v(\" \"),(_vm.trailingIcon && _vm.trailingIcon.length > 0)?_c('c-icon',{staticClass:\"tw-ml-1\",attrs:{\"icon\":_vm.trailingIcon,\"size\":\"3\"}}):_vm._e()],2)],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CBtn.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CBtn.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./CBtn.vue?vue&type=template&id=2402fbdc&\"\nimport script from \"./CBtn.vue?vue&type=script&lang=js&\"\nexport * from \"./CBtn.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CBtn.vue?vue&type=style&index=0&id=2402fbdc&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CDropdown.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CDropdown.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./CDropdown.vue?vue&type=template&id=5dcc7f8e&\"\nimport script from \"./CDropdown.vue?vue&type=script&lang=js&\"\nexport * from \"./CDropdown.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CDropdown.vue?vue&type=style&index=0&id=5dcc7f8e&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"c-dropdown\",class:{\n 'is-invalid': _vm.invalid,\n 'tw-w-full': _vm.fullwidth,\n disabled: _vm.disabled,\n }},[_c('select',{class:{\n 'form-select sm:tw-text-sm sm:tw-leading-5 tw-ps-3 tw-pe-10 tw-rounded-md': true,\n 'tw-w-full': _vm.fullwidth,\n 'tw-border-danger': _vm.invalid,\n 'tw-border-field': !_vm.invalid,\n },attrs:{\"disabled\":_vm.disabled},domProps:{\"value\":_vm.value},on:{\"input\":function($event){return _vm.$emit('input', $event.target.value)}}},_vm._l((_vm.options),function(option,key){return _c('option',{key:key,domProps:{\"value\":option.value}},[_vm._v(\"\\n \"+_vm._s(option.label)+\"\\n \")])}),0)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./AlertIcon.vue?vue&type=template&id=895adde2&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"version\":\"1.1\",\"id\":\"alert\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"xmlns:xlink\":\"http://www.w3.org/1999/xlink\",\"x\":\"0px\",\"y\":\"0px\",\"viewBox\":\"0 0 448 448\",\"fill\":\"currentColor\",\"xml:space\":\"preserve\"}},[_c('path',{attrs:{\"d\":\"M256,343.8v-47.5c0-4.5-3.5-8.2-8-8.2h-48c-4.5,0-8,3.8-8,8.2v47.5c0,4.5,3.5,8.2,8,8.2h48C252.5,352,256,348.2,256,343.8z\\nM255.5,250.2l4.5-114.8c0-1.5-0.8-3.5-2.5-4.8c-1.5-1.2-3.8-2.8-6-2.8h-55c-2.2,0-4.5,1.5-6,2.8c-1.8,1.2-2.5,3.8-2.5,5.2\\nl4.2,114.2c0,3.2,3.8,5.8,8.5,5.8H247C251.5,256,255.2,253.5,255.5,250.2z M252,16.8l192,352c5.5,9.8,5.2,21.8-0.5,31.5\\nS427.2,416,416,416H32c-11.2,0-21.8-6-27.5-15.8s-6-21.8-0.5-31.5l192-352C201.5,6.5,212.2,0,224,0S246.5,6.5,252,16.8z\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./BookIcon.vue?vue&type=template&id=4d9fb423&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{staticStyle:{\"enable-background\":\"new 0 0 417 448\"},attrs:{\"version\":\"1.1\",\"id\":\"Layer_1\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"x\":\"0px\",\"y\":\"0px\",\"viewBox\":\"0 0 417 448\",\"xml:space\":\"preserve\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"d\":\"M409.8,119.5c6.2,9,8,20.8,4.5,32.3l-68.8,226.5c-6.2,21.2-28.2,37.8-49.8,37.8H65c-25.5,0-52.8-20.2-62-46.2\\n\\tc-4-11.2-4-22.2-0.5-31.8c0.5-5,1.5-10,1.8-16c0.2-4-2-7.2-1.5-10.2c1-6,6.2-10.2,10.2-17c7.5-12.5,16-32.8,18.8-45.8\\n\\tc1.2-4.8-1.2-10.2,0-14.5c1.2-4.8,6-8.2,8.5-12.8C47,210.2,55.8,188,57,176.2c0.5-5.2-2-11-0.5-15c1.8-5.8,7.2-8.2,11-13.2\\n\\tc6-8.2,16-32,17.5-45.3c0.5-4.2-2-8.5-1.2-13c1-4.8,7-9.8,11-15.5c10.5-15.5,12.5-49.8,44.2-40.8l-0.2,0.8c4.2-1,8.5-2.2,12.8-2.2\\n\\th190.2c11.8,0,22.2,5.2,28.5,14c6.5,9,8,20.8,4.5,32.5L306.2,305c-11.8,38.5-18.2,47-50,47H39c-3.2,0-7.2,0.8-9.5,3.8\\n\\tc-2,3-2.2,5.2-0.2,10.8c5,14.5,22.2,17.5,36,17.5H296c9.2,0,20-5.2,22.8-14.2l75-246.8c1.5-4.8,1.5-9.8,1.2-14.2\\n\\tC400.8,111,406,114.5,409.8,119.5z M143.8,120c-1.5,4.5,1,8,5.5,8h152c4.2,0,9-3.5,10.5-8l5.2-16c1.5-4.5-1-8-5.5-8h-152\\n\\tc-4.2,0-9,3.5-10.5,8L143.8,120z M123,184c-1.5,4.5,1,8,5.5,8h152c4.2,0,9-3.5,10.5-8l5.2-16c1.5-4.5-1-8-5.5-8h-152\\n\\tc-4.2,0-9,3.5-10.5,8L123,184z\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./CheckIcon.vue?vue&type=template&id=ccf895da&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"version\":\"1.1\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 28 28\",\"fill\":\"currentColor\"}},[_c('title',[_vm._v(\"check\")]),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M26.109 8.844c0 0.391-0.156 0.781-0.438 1.062l-13.438 13.438c-0.281 0.281-0.672 0.438-1.062 0.438s-0.781-0.156-1.062-0.438l-7.781-7.781c-0.281-0.281-0.438-0.672-0.438-1.062s0.156-0.781 0.438-1.062l2.125-2.125c0.281-0.281 0.672-0.438 1.062-0.438s0.781 0.156 1.062 0.438l4.594 4.609 10.25-10.266c0.281-0.281 0.672-0.438 1.062-0.438s0.781 0.156 1.062 0.438l2.125 2.125c0.281 0.281 0.438 0.672 0.438 1.062z\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ChevronLeftIcon.vue?vue&type=template&id=7d26e1d4&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 20 20\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M12.707 5.293a1 1 0 010 1.414L9.414 10l3.293 3.293a1 1 0 01-1.414 1.414l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 0z\",\"clip-rule\":\"evenodd\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ChevronRightIcon.vue?vue&type=template&id=68c7231a&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 20 20\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z\",\"clip-rule\":\"evenodd\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ClipboardCopyIcon.vue?vue&type=template&id=6def4ae1&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\",\"stroke\":\"currentColor\"}},[_c('path',{attrs:{\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\",\"d\":\"M8 5H6a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2v-1M8 5a2 2 0 002 2h2a2 2 0 002-2M8 5a2 2 0 012-2h2a2 2 0 012 2m0 0h2a2 2 0 012 2v3m2 4H10m0 0l3-3m-3 3l3 3\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./CopyIcon.vue?vue&type=template&id=b2ff627e&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"aria-hidden\":\"true\",\"focusable\":\"false\",\"data-prefix\":\"fas\",\"data-icon\":\"copy\",\"role\":\"img\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 448 512\"}},[_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M320 448v40c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24V120c0-13.255 10.745-24 24-24h72v296c0 30.879 25.121 56 56 56h168zm0-344V0H152c-13.255 0-24 10.745-24 24v368c0 13.255 10.745 24 24 24h272c13.255 0 24-10.745 24-24V128H344c-13.2 0-24-10.8-24-24zm120.971-31.029L375.029 7.029A24 24 0 0 0 358.059 0H352v96h96v-6.059a24 24 0 0 0-7.029-16.97z\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ExclamationCircleIcon.vue?vue&type=template&id=7a31149e&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 20 20\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7 4a1 1 0 11-2 0 1 1 0 012 0zm-1-9a1 1 0 00-1 1v4a1 1 0 102 0V6a1 1 0 00-1-1z\",\"clip-rule\":\"evenodd\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ExclamationTriangleIcon.vue?vue&type=template&id=4788b0ca&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"version\":\"1.1\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"28\",\"height\":\"28\",\"viewBox\":\"0 0 28 28\",\"fill\":\"currentColor\"}},[_c('title',[_vm._v(\"exclamation-triangle\")]),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M16 21.484v-2.969c0-0.281-0.219-0.516-0.5-0.516h-3c-0.281 0-0.5 0.234-0.5 0.516v2.969c0 0.281 0.219 0.516 0.5 0.516h3c0.281 0 0.5-0.234 0.5-0.516zM15.969 15.641l0.281-7.172c0-0.094-0.047-0.219-0.156-0.297-0.094-0.078-0.234-0.172-0.375-0.172h-3.437c-0.141 0-0.281 0.094-0.375 0.172-0.109 0.078-0.156 0.234-0.156 0.328l0.266 7.141c0 0.203 0.234 0.359 0.531 0.359h2.891c0.281 0 0.516-0.156 0.531-0.359zM15.75 1.047l12 22c0.344 0.609 0.328 1.359-0.031 1.969s-1.016 0.984-1.719 0.984h-24c-0.703 0-1.359-0.375-1.719-0.984s-0.375-1.359-0.031-1.969l12-22c0.344-0.641 1.016-1.047 1.75-1.047s1.406 0.406 1.75 1.047z\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ExternalLinkIcon.vue?vue&type=template&id=52908732&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\",\"stroke\":\"currentColor\"}},[_c('path',{attrs:{\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\",\"d\":\"M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./FlagIcon.vue?vue&type=template&id=101e004d&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 20 20\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M3 6a3 3 0 013-3h10a1 1 0 01.8 1.6L14.25 8l2.55 3.4A1 1 0 0116 13H6a1 1 0 00-1 1v3a1 1 0 11-2 0V6z\",\"clip-rule\":\"evenodd\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./GithubIcon.vue?vue&type=template&id=bc0850d6&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"aria-hidden\":\"true\",\"focusable\":\"false\",\"data-prefix\":\"fab\",\"data-icon\":\"github\",\"role\":\"img\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 496 512\"}},[_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3 .3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5 .3-6.2 2.3zm44.2-1.7c-2.9 .7-4.9 2.6-4.6 4.9 .3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3 .7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3 .3 2.9 2.3 3.9 1.6 1 3.6 .7 4.3-.7 .7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3 .7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3 .7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./InfoCircleIcon.vue?vue&type=template&id=1f481aac&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"viewBox\":\"0 0 100 100\",\"version\":\"1.1\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('title',[_vm._v(\"info-circle\")]),_vm._v(\" \"),_c('desc',[_vm._v(\"Created with Sketch.\")]),_vm._v(\" \"),_c('defs'),_vm._v(\" \"),_c('g',{attrs:{\"id\":\"Page-1\",\"stroke\":\"none\",\"stroke-width\":\"1\",\"fill\":\"none\",\"fill-rule\":\"evenodd\"}},[_c('g',{attrs:{\"id\":\"info-circle\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"d\":\"M66.6666667,81.25 L66.6666667,70.8333333 C66.6666667,69.6614583 65.7552083,68.75 64.5833333,68.75 L58.3333333,68.75 L58.3333333,35.4166667 C58.3333333,34.2447917 57.421875,33.3333333 56.25,33.3333333 L35.4166667,33.3333333 C34.2447917,33.3333333 33.3333333,34.2447917 33.3333333,35.4166667 L33.3333333,45.8333333 C33.3333333,47.0052083 34.2447917,47.9166667 35.4166667,47.9166667 L41.6666667,47.9166667 L41.6666667,68.75 L35.4166667,68.75 C34.2447917,68.75 33.3333333,69.6614583 33.3333333,70.8333333 L33.3333333,81.25 C33.3333333,82.421875 34.2447917,83.3333333 35.4166667,83.3333333 L64.5833333,83.3333333 C65.7552083,83.3333333 66.6666667,82.421875 66.6666667,81.25 Z M58.3333333,22.9166667 L58.3333333,12.5 C58.3333333,11.328125 57.421875,10.4166667 56.25,10.4166667 L43.75,10.4166667 C42.578125,10.4166667 41.6666667,11.328125 41.6666667,12.5 L41.6666667,22.9166667 C41.6666667,24.0885417 42.578125,25 43.75,25 L56.25,25 C57.421875,25 58.3333333,24.0885417 58.3333333,22.9166667 Z M100,50 C100,77.6041667 77.6041667,100 50,100 C22.3958333,100 0,77.6041667 0,50 C0,22.3958333 22.3958333,0 50,0 C77.6041667,0 100,22.3958333 100,50 Z\",\"id\":\"Shape\"}})])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./LinkIcon.vue?vue&type=template&id=27619e1f&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 20 20\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M12.586 4.586a2 2 0 112.828 2.828l-3 3a2 2 0 01-2.828 0 1 1 0 00-1.414 1.414 4 4 0 005.656 0l3-3a4 4 0 00-5.656-5.656l-1.5 1.5a1 1 0 101.414 1.414l1.5-1.5zm-5 5a2 2 0 012.828 0 1 1 0 101.414-1.414 4 4 0 00-5.656 0l-3 3a4 4 0 105.656 5.656l1.5-1.5a1 1 0 10-1.414-1.414l-1.5 1.5a2 2 0 11-2.828-2.828l3-3z\",\"clip-rule\":\"evenodd\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PlugIcon.vue?vue&type=template&id=be2505f6&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"aria-hidden\":\"true\",\"focusable\":\"false\",\"data-prefix\":\"fas\",\"data-icon\":\"plug\",\"role\":\"img\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 384 512\"}},[_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M320 32c0-17.62-14.38-32-32-32s-32 14.38-32 32v96h64V32zM368 159.1h-352c-8.875 0-16 7.125-16 16v32c0 8.875 7.125 16 16 16H32V256c0 76 53.5 141.6 128 156.8V512h64v-99.25C298.5 397.6 352 332 352 256V223.1h16c8.875 0 16-7.125 16-16v-32C384 167.1 376.9 159.1 368 159.1zM128 32c0-17.62-14.38-32-32-32S64 14.38 64 32v96h64V32z\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./SearchIcon.vue?vue&type=template&id=4adc1abd&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"version\":\"1.1\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"26\",\"height\":\"28\",\"viewBox\":\"0 0 26 28\",\"fill\":\"currentColor\"}},[_c('title',[_vm._v(\"search\")]),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M18 13c0-3.859-3.141-7-7-7s-7 3.141-7 7 3.141 7 7 7 7-3.141 7-7zM26 26c0 1.094-0.906 2-2 2-0.531 0-1.047-0.219-1.406-0.594l-5.359-5.344c-1.828 1.266-4.016 1.937-6.234 1.937-6.078 0-11-4.922-11-11s4.922-11 11-11 11 4.922 11 11c0 2.219-0.672 4.406-1.937 6.234l5.359 5.359c0.359 0.359 0.578 0.875 0.578 1.406z\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./StarIcon.vue?vue&type=template&id=06324932&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"aria-hidden\":\"true\",\"focusable\":\"false\",\"data-prefix\":\"fal\",\"data-icon\":\"star-sharp\",\"role\":\"img\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 576 512\"}},[_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M537.8 181.6h-177.6l-54.89-169.1C302.6 4.19 295.3 0 288 0S273.4 4.19 270.7 12.57L215.8 181.6H38.21c-17.6 0-24.92 22.54-10.68 32.9l143.7 104.5L116.3 488.1C112.2 500.9 122.3 512 133.7 512c3.553 0 7.227-1.09 10.62-3.556L288 403.1l143.7 104.5C435.1 510.9 438.8 512 442.3 512c11.36 0 21.49-11.13 17.35-23.89l-54.89-169.1l143.7-104.5C562.7 204.2 555.4 181.6 537.8 181.6zM370.8 317.9l45.34 139.7l-118.7-86.3c-5.61-4.079-13.21-4.079-18.82 0l-118.7 86.3l45.34-139.7c2.139-6.589-.2054-13.81-5.808-17.88L80.7 213.6h146.8c6.933 0 13.08-4.465 15.22-11.06L288 62.96l45.33 139.6c2.141 6.594 8.285 11.06 15.22 11.06h146.8l-118.7 86.35C370.1 304.1 368.6 311.3 370.8 317.9z\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./WorldIcon.vue?vue&type=template&id=07b185f8&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\",\"stroke\":\"currentColor\"}},[_c('path',{attrs:{\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\",\"d\":\"M21 12a9 9 0 01-9 9m9-9a9 9 0 00-9-9m9 9H3m9 9a9 9 0 01-9-9m9 9c1.657 0 3-4.03 3-9s-1.343-9-3-9m0 18c-1.657 0-3-4.03-3-9s1.343-9 3-9m-9 9a9 9 0 019-9\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./XIcon.vue?vue&type=template&id=2e0ccf8a&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\",\"stroke\":\"currentColor\"}},[_c('path',{attrs:{\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\",\"d\":\"M6 18L18 6M6 6l12 12\"}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./CIcon.vue?vue&type=template&id=38da308c&\"\nimport script from \"./CIcon.vue?vue&type=script&lang=js&\"\nexport * from \"./CIcon.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c(_vm.computedComponent,{tag:\"component\",staticClass:\"tw-align-middle tw-inline-block\",class:{\n 'tw-w-3 tw-h-3': parseInt(_vm.size) === 3,\n 'tw-w-4 tw-h-4': parseInt(_vm.size) === 4,\n 'tw-w-5 tw-h-5': parseInt(_vm.size) === 5,\n 'tw-w-6 tw-h-6': parseInt(_vm.size) === 6,\n 'tw-w-7 tw-h-7': parseInt(_vm.size) === 7,\n 'tw-w-8 tw-h-8': parseInt(_vm.size) === 8,\n 'tw-w-10 tw-h-10': parseInt(_vm.size) === 10,\n 'tw-w-12 tw-h-12': parseInt(_vm.size) === 12,\n 'tw-w-16 tw-h-16': parseInt(_vm.size) === 16,\n }})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CSpinner.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-8.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CSpinner.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./CSpinner.vue?vue&type=template&id=5e845ae8&\"\nimport script from \"./CSpinner.vue?vue&type=script&lang=js&\"\nexport * from \"./CSpinner.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CSpinner.vue?vue&type=style&index=0&id=5e845ae8&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {\nvar _obj, _obj$1;\nvar _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"c-spinner\",class:( _obj = {\n 'tw-inline-block': true\n }, _obj[_vm.size] = true, _obj )},[_c('div',{staticClass:\"animation\",class:[\n ( _obj$1 = {\n 'tw-border-gray-400': !_vm.animationClass\n }, _obj$1[_vm.animationClass] = _vm.animationClass, _obj$1 ) ]})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./CTextbox.vue?vue&type=template&id=11d6cc73&\"\nimport script from \"./CTextbox.vue?vue&type=script&lang=js&\"\nexport * from \"./CTextbox.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('input',{staticClass:\"tw-rounded-md tw-bg-gray-50 tw-border tw-border-solid tw-px-3 tw-py-2 tw-border-gray-300 tw-text-sm\",attrs:{\"type\":_vm.computedType},domProps:{\"value\":_vm.value},on:{\"blur\":function($event){return _vm.$emit('blur', $event)},\"focus\":function($event){return _vm.$emit('focus', $event.target.value)},\"change\":function($event){return _vm.$emit('change', $event)},\"input\":function($event){return _vm.$emit('input', $event.target.value)},\"keydown\":function($event){return _vm.$emit('keydown', $event)},\"keypress\":function($event){return _vm.$emit('keypress', $event)},\"keyup\":function($event){return _vm.$emit('keyup', $event)}}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/* global Craft */\n/* global Garnish */\n/* global $ */\n\nimport Vue from 'vue';\nimport axios from 'axios';\nimport {currency} from './js/filters/currency';\nimport {escapeHtml, formatDate, formatNumber, t} from './js/filters/craft';\nimport router from './js/router';\nimport store from './js/store';\nimport {mapState} from 'vuex';\nimport Modal from './js/components/modal/Modal';\nimport StatusMessage from './js/components/StatusMessage';\nimport App from './App';\nimport './js/plugins/vue-awesome-swiper';\nimport './js/plugins/vue-apex-charts';\nimport CBtn from './js/components/ui/CBtn';\nimport CDropdown from './js/components/ui/CDropdown';\nimport CIcon from './js/components/ui/CIcon';\nimport CSpinner from './js/components/ui/CSpinner';\nimport CTextbox from './js/components/ui/CTextbox';\n\nVue.filter('currency', currency);\nVue.filter('escapeHtml', escapeHtml);\nVue.filter('formatDate', formatDate);\nVue.filter('formatNumber', formatNumber);\nVue.filter('t', t);\n\nVue.component('c-btn', CBtn);\nVue.component('c-dropdown', CDropdown);\nVue.component('c-icon', CIcon);\nVue.component('c-spinner', CSpinner);\nVue.component('c-textbox', CTextbox);\n\nGarnish.$doc.ready(function () {\n Craft.initUiElements();\n\n window.pluginStoreApp = new Vue({\n router,\n store,\n render: (h) => h(App),\n\n components: {\n Modal,\n StatusMessage,\n App,\n },\n\n data() {\n return {\n allDataLoaded: false,\n cartDataLoaded: false,\n coreDataLoaded: false,\n craftDataLoaded: false,\n craftIdDataLoaded: false,\n modalStep: null,\n pageTitle: 'Plugin Store',\n plugin: null,\n pluginId: null,\n pluginLicenseInfoLoaded: false,\n pluginStoreDataError: false,\n showModal: false,\n statusMessage: null,\n };\n },\n\n computed: {\n ...mapState({\n cart: (state) => state.cart.cart,\n craftId: (state) => state.craft.craftId,\n }),\n\n /**\n * Returns `true``if the core data and the plugin license info have been loaded.\n *\n * @returns {boolean}\n */\n pluginStoreDataLoaded() {\n return this.coreDataLoaded && this.pluginLicenseInfoLoaded;\n },\n },\n\n watch: {\n cart(cart) {\n this.$emit('cartChange', cart);\n },\n\n craftId() {\n this.$emit('craftIdChange');\n },\n },\n\n methods: {\n /**\n * Displays a notice.\n *\n * @param {string} message\n * @param {Object} [settings]\n * @param {string} [settings.icon] The icon to show on the notification\n * @param {string} [settings.iconLabel] The icon’s ARIA label\n * @param {string} [settings.details] Any additional HTML that should be included below the message\n * @return {Object} The notification\n */\n displayNotice(message, settings) {\n Craft.cp.displayNotice(message, settings);\n },\n\n /**\n * Displays a success message.\n *\n * @param {string} message\n * @param {Object} [settings]\n * @param {string} [settings.icon] The icon to show on the notification\n * @param {string} [settings.iconLabel] The icon’s ARIA label\n * @param {string} [settings.details] Any additional HTML that should be included below the message\n * @return {Object} The notification\n */\n displaySuccess(message, settings) {\n Craft.cp.displaySuccess(message, settings);\n },\n\n /**\n * Displays an error.\n *\n * @param {string} message\n * @param {Object} [settings]\n * @param {string} [settings.icon] The icon to show on the notification\n * @param {string} [settings.iconLabel] The icon’s ARIA label\n * @param {string} [settings.details] Any additional HTML that should be included below the message\n * @return {Object} The notification\n */\n displayError(message, settings) {\n Craft.cp.displayError(message, settings);\n },\n\n /**\n * Opens up the modal.\n *\n * @param modalStep\n */\n openModal(modalStep) {\n this.modalStep = modalStep;\n\n this.showModal = true;\n },\n\n /**\n * Closes the modal.\n */\n closeModal() {\n this.showModal = false;\n },\n\n /**\n * Updates Craft ID.\n *\n * @param craftIdJson\n */\n updateCraftId(craftId, callback) {\n this.$store.commit('craft/updateCraftId', craftId);\n\n if (this.craftId && this.craftId.email !== this.cart.email) {\n // Update the cart’s email with the one from the Craft ID account\n let data = {\n email: this.craftId.email,\n };\n\n this.$store\n .dispatch('cart/saveCart', data)\n .then(() => {\n this.$emit('craftIdUpdated');\n\n if (callback) {\n callback();\n }\n })\n .catch((error) => {\n this.$root.displayError('Couldn’t update cart’s email.');\n\n if (callback) {\n callback();\n }\n\n throw error;\n });\n } else {\n this.$emit('craftIdUpdated');\n\n if (callback) {\n callback();\n }\n }\n },\n\n /**\n * Initializes components that live outside of the Vue app.\n */\n initializeOuterComponents() {\n // Header Title\n const $headerTitle = $('#header h1');\n\n $headerTitle.on('click', () => {\n this.$router.push({path: '/'});\n });\n\n // Cart button\n const $cartButton = $('#cart-button');\n\n $cartButton.on('click', (e) => {\n e.preventDefault();\n this.openModal('cart');\n });\n\n $cartButton.keydown((e) => {\n switch (e.which) {\n case 13: // Enter\n case 32: // Space\n e.preventDefault();\n this.openModal('cart');\n break;\n }\n });\n\n this.$on('cartChange', function (cart) {\n let totalQty = 0;\n\n if (cart) {\n totalQty = cart.totalQty;\n }\n\n $('.badge', $cartButton).html(totalQty);\n });\n\n // Plugin Store actions\n const $pluginStoreActions = $('#pluginstore-actions');\n const $pluginStoreActionsSpinner = $('#pluginstore-actions-spinner');\n\n // Show actions spinner when Plugin Store data has finished loading but Craft data has not.\n this.$on('dataLoaded', () => {\n if (\n this.pluginStoreDataLoaded &&\n !(\n this.craftDataLoaded &&\n this.cartDataLoaded &&\n this.craftIdDataLoaded\n )\n ) {\n $pluginStoreActionsSpinner.removeClass('hidden');\n }\n });\n\n // Hide actions spinner when Plugin Store data and Craft data have finished loading.\n this.$on('allDataLoaded', function () {\n $pluginStoreActions.removeClass('hidden');\n $pluginStoreActionsSpinner.addClass('hidden');\n });\n\n // Craft ID\n const $craftId = $('#craftid-account');\n const $craftIdConnectForm = $('#craftid-connect-form');\n const $craftIdDisconnectForm = $('#craftid-disconnect-form');\n\n this.$on('craftIdChange', function () {\n if (this.craftId) {\n $('.label', $craftId).text(this.craftId.username);\n\n $craftId.removeClass('hidden');\n $craftIdConnectForm.addClass('hidden');\n $craftIdDisconnectForm.removeClass('hidden');\n } else {\n $craftId.addClass('hidden');\n $craftIdConnectForm.removeClass('hidden');\n $craftIdDisconnectForm.addClass('hidden');\n }\n });\n\n // Cancel ajax requests when an outbound link gets clicked\n $('a[href]').on('click', () => {\n this.$store.dispatch('craft/cancelRequests');\n this.$store.dispatch('pluginStore/cancelRequests');\n });\n },\n\n /**\n * Loads the cart data.\n */\n loadCartData() {\n this.$store.dispatch('cart/getCart').then(() => {\n this.cartDataLoaded = true;\n this.$emit('dataLoaded');\n });\n },\n\n /**\n * Loads Craft data.\n */\n loadCraftData(afterSuccess) {\n this.$store\n .dispatch('craft/getCraftData')\n .then(() => {\n this.craftDataLoaded = true;\n this.$emit('dataLoaded');\n\n if (typeof afterSuccess === 'function') {\n afterSuccess();\n }\n })\n .catch(() => {\n this.craftDataLoaded = true;\n });\n },\n\n loadCraftIdData() {\n if (window.craftIdAccessToken) {\n const accessToken = window.craftIdAccessToken;\n\n this.$store\n .dispatch('craft/getCraftIdData', {accessToken})\n .then(() => {\n this.craftIdDataLoaded = true;\n this.$emit('dataLoaded');\n });\n } else {\n this.craftIdDataLoaded = true;\n this.$emit('dataLoaded');\n }\n },\n\n /**\n * Loads all the data required for the Plugin Store and cart to work.\n */\n loadData() {\n this.loadPluginStoreData();\n\n this.loadCraftData(() => {\n this.loadCraftIdData();\n this.loadCartData();\n });\n },\n\n /**\n * Loads the Plugin Store’s plugin data.\n */\n loadPluginStoreData() {\n // core data\n this.$store\n .dispatch('pluginStore/getCoreData')\n .then(() => {\n this.coreDataLoaded = true;\n this.$emit('dataLoaded');\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // Request canceled\n } else {\n this.pluginStoreDataError = true;\n this.statusMessage = this.$options.filters.t(\n 'The Plugin Store is not available, please try again later.',\n 'app'\n );\n throw error;\n }\n });\n\n // plugin license info\n this.$store\n .dispatch('craft/getPluginLicenseInfo')\n .then(() => {\n this.pluginLicenseInfoLoaded = true;\n this.$emit('dataLoaded');\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // Request canceled\n } else {\n throw error;\n }\n });\n },\n\n /**\n * Checks that all the data has been loaded.\n *\n * @returns {null}\n */\n onDataLoaded() {\n if (!this.pluginStoreDataLoaded) {\n return null;\n }\n\n if (!this.craftDataLoaded) {\n return null;\n }\n\n if (!this.cartDataLoaded) {\n return null;\n }\n\n if (!this.craftIdDataLoaded) {\n return null;\n }\n\n this.allDataLoaded = true;\n this.$emit('allDataLoaded');\n },\n },\n\n created() {\n // Page Title\n this.pageTitle = this.$options.filters.t('Plugin Store', 'app');\n\n // Status message\n this.statusMessage = this.$options.filters.t(\n 'Loading Plugin Store…',\n 'app'\n );\n\n // Initialize outer components\n this.initializeOuterComponents();\n\n // On data loaded\n this.$on('dataLoaded', this.onDataLoaded);\n\n // Load data\n this.loadData();\n },\n }).$mount('#app');\n});\n","import Accounting from 'accounting';\n\n/**\n * Formats a value as a currency value\n */\nexport function currency(value) {\n let precision = 2;\n let floatValue = parseFloat(value);\n\n // Auto precision\n if (Math.round(floatValue) === floatValue) {\n precision = 0;\n }\n\n if (floatValue < 0) {\n return '-' + Accounting.formatMoney(floatValue * -1, '$', precision);\n }\n\n return Accounting.formatMoney(floatValue, '$', precision);\n}\n","/* global Craft */\n\nexport function escapeHtml(str) {\n return Craft.escapeHtml(str);\n}\n\nexport function t(message, category, params) {\n return Craft.t(category, message, params);\n}\n\nexport function formatDate(date) {\n return Craft.formatDate(date);\n}\n\nexport function formatNumber(number, format = ',.0f') {\n return Craft.formatNumber(number, format);\n}\n"],"names":["root","undefined","lib","currency","symbol","format","decimal","thousand","precision","grouping","number","nativeMap","Array","prototype","map","nativeIsArray","isArray","toString","Object","isString","obj","charCodeAt","substr","call","isObject","defaults","object","defs","key","hasOwnProperty","iterator","context","i","j","results","length","checkPrecision","val","base","Math","round","abs","isNaN","checkCurrencyFormat","settings","match","pos","neg","replace","zero","unformat","parse","value","regex","RegExp","unformatted","parseFloat","toFixed","power","pow","formatNumber","opts","usePrecision","negative","parseInt","mod","split","formatMoney","formats","formatColumn","list","padAfterSymbol","indexOf","maxLength","formatted","fVal","join","module","exports","accounting","t","e","keys","getOwnPropertySymbols","a","filter","getOwnPropertyDescriptor","enumerable","push","apply","arguments","forEach","o","getOwnPropertyDescriptors","defineProperties","defineProperty","Symbol","constructor","TypeError","s","configurable","writable","r","n","create","h","l","setPrototypeOf","getPrototypeOf","__proto__","c","ReferenceError","d","Reflect","construct","sham","Proxy","Boolean","valueOf","this","u","p","from","f","slice","name","test","x","isColorHex","shadeHexColor","shadeRGBColor","assign","extend","is","clone","log","LN10","floor","log10","random","substring","String","Number","getComputedStyle","clientHeight","clientWidth","paddingTop","paddingBottom","paddingLeft","paddingRight","getBoundingClientRect","top","right","bottom","left","width","height","y","reduce","PI","sin","cos","splice","parentElement","classList","contains","style","navigator","userAgent","toLowerCase","window","appVersion","b","ctx","w","setEasingFunctions","globals","easing","config","chart","animations","attr","animate","afterAll","cx","cy","el","realIndex","fill","pathFrom","pathTo","speed","delay","animateGradually","enabled","dynamicAnimation","dataChanged","type","morphSVG","comboCharts","delayedElements","remove","animationEnded","showDelayedElements","events","animationEnd","concat","gridHeight","shouldAnimate","plot","isNumber","series","maxValsInArrayIndex","animationCompleted","v","unfilter","SVG","Filter","size","states","normal","applyFilter","dropShadow","node","intensity","addShadow","componentTransfer","rgb","slope","intercept","filterer","setAttribute","_scaleFilterSize","addNormalFilter","addLightenFilter","addDarkenFilter","blur","color","opacity","flood","composite","sourceAlpha","offset","gaussianBlur","merge","source","blend","noUserSpaceOnUse","isIE","isSafari","isFirefox","selectedDataPoints","active","m","sqrt","min","g","origPoint","k","dom","Paper","line","x1","y1","x2","y2","stroke","rect","rx","ry","polygon","circle","strokeWidth","fillOpacity","strokeOpacity","classes","strokeLinecap","strokeDashArray","lineCap","path","class","group","animationDelay","initialSpeed","dataChangeSpeed","className","shouldClipToGrid","bindEventsOnPaths","drawShadow","A","S","C","L","P","T","resized","I","M","dashArray","z","drawPath","cuid","getDefaultFilter","enabledOnSeries","X","addEventListener","pathMouseEnter","bind","pathMouseLeave","pathMouseDown","E","animatePathsGradually","pattern","hexToRgba","gradient","at","gridWidth","gradientUnits","fx","fy","to","text","maxWidth","fontSize","fontFamily","getTextRects","textAnchor","fontWeight","foreColor","cssClass","isPlainText","getTextBasedOnMaxWidth","tspan","newLine","plain","pSize","shape","pRadius","drawRect","pointFillColor","pointFillOpacity","pointStrokeColor","pointStrokeWidth","pointStrokeOpacity","drawCircle","getAttribute","dataPointMouseEnter","seriesIndex","dataPointIndex","fireEvent","hover","isTouchDevice","dataPointMouseLeave","allowMultipleDataPointsSelection","select","members","dataPointSelection","getBBox","drawText","add","bbox","getComputedTextLength","textContent","getSubStringLength","data","every","xaxis","convertedCatToNumeric","labels","formatter","minX","max","markers","discrete","sizeOffset","largestSize","seriesTotals","seriesX","seriesPercent","stackedSeriesTotals","yRange","isMultipleYAxis","minYArr","maxYArr","minY","maxY","xRange","maxX","zRange","maxZ","minZ","initialMaxX","initialMinX","MIN_VALUE","hasNegs","yRatio","invertedYRatio","zRatio","xRatio","initialXRatio","invertedXRatio","baseLineInvertedY","baseLineY","baseLineX","seriesLog","yaxis","logarithmic","getLogVal","logBase","invalidLogScale","getBaseLog","yLogRatio","logYRange","MAX_VALUE","comboBarCount","extendYAxis","annotations","extendYAxisAnnotations","extendXAxisAnnotations","points","extendPointAnnotations","annoCtx","label","orientation","baseEl","querySelector","position","graphics","rotateAroundCenter","trim","padding","barPadForNumericAxis","borderRadius","background","borderWidth","borderColor","id","parentNode","addBackgroundToAnno","insertBefore","mouseEnter","mouseLeave","click","invertAxis","categoryLabels","yAxisIndex","marker","reversed","inversedReversedAxis","dataFormatXNumeric","getStringX","helpers","getX1X2","drawLine","offsetX","offsetY","appendChild","fillColor","rel","setOrientations","addXaxisAnnotation","getY1Y2","_getYAxisAnnotationWidth","addYaxisAnnotation","strokeColor","radius","drawMarker","customSVG","transform","innerHTML","image","addImage","appendTo","addPointAnnotation","options","months","shortMonths","days","shortDays","toolbar","exportToSVG","exportToPNG","exportToCSV","menu","selection","selectionZoom","zoomIn","zoomOut","pan","reset","yAxis","show","showAlways","showForNullSeries","seriesName","opposite","tickAmount","forceNiceScale","floating","decimalsInFloat","minWidth","align","rotate","colors","axisBorder","axisTicks","title","tooltip","crosshairs","pointAnnotation","yAxisAnnotation","xAxisAnnotation","backgroundColor","texts","images","shapes","locales","defaultLocale","beforeMount","mounted","updated","mouseMove","xAxisLabelClick","legendClick","markerClick","beforeZoom","beforeResetZoom","zoomed","scrolled","brushScrolled","parentHeightOffset","redrawOnParentResize","redrawOnWindowResize","sparkline","brush","autoScaleYaxis","target","stacked","stackType","tools","download","zoom","zoomin","zoomout","customIcons","export","csv","filename","columnDelimiter","headerCategory","headerValue","dateFormatter","Date","toDateString","png","svg","autoSelected","zoomedArea","plotOptions","area","fillTo","bar","horizontal","columnWidth","barHeight","distributed","borderRadiusApplication","borderRadiusWhenStacked","rangeBarOverlap","rangeBarGroupRows","ranges","backgroundBarColors","backgroundBarOpacity","backgroundBarRadius","dataLabels","maxItems","hideOverflowingLabels","total","bubble","zScaling","minBubbleRadius","maxBubbleRadius","candlestick","upward","downward","wick","useFillColor","boxPlot","upper","lower","heatmap","enableShades","shadeIntensity","reverseNegativeShade","useFillColorAsStroke","colorScale","inverse","treemap","radialBar","inverseOrder","startAngle","endAngle","hollow","margin","imageWidth","imageHeight","imageOffsetX","imageOffsetY","imageClipped","track","pie","customScale","expandOnClick","minAngleToShowLabel","donut","polarArea","rings","spokes","connectorColors","radar","polygons","strokeColors","shade","gradientToColors","inverseColors","opacityFrom","opacityTo","stops","colorStops","src","forecastDataPoints","count","grid","lines","row","column","legend","showForSingleSeries","showForZeroSeries","horizontalAlign","tooltipHoverFormatter","customLegendItems","useSeriesColors","fillColors","customHTML","onClick","itemMargin","vertical","onItemClick","toggleDataSeries","onItemHover","highlightDataSeries","onDblClick","showNullDataPoints","noData","verticalAlign","responsive","subtitle","curve","shared","followCursor","intersect","custom","fillSeriesColor","theme","onDatasetHover","items","display","fixed","categories","overwriteCategories","rotateAlways","hideOverlappingLabels","minHeight","maxHeight","showDuplicates","datetimeUTC","datetimeFormatter","year","month","day","hour","minute","second","groups","tickPlacement","range","colorFrom","colorTo","mode","palette","monochrome","shadeTo","isBarHorizontal","xAxisAnnotations","yAxisAnnotations","pointsAnnotations","xDivision","dataPoints","axisCharts","drawYAxisAnnotations","drawXAxisAnnotations","drawPointAnnotations","elGraphical","index","annotationsBackground","addText","move","addAnnotationExternal","params","pushToMemory","contextMethod","childNodes","memory","methodsToExec","randomId","method","querySelectorAll","listToArray","firstChild","removeChild","months31","months30","daysCntOfYear","parseDate","toISOString","getTime","toUTCString","getTimeStamp","locale","getUTCFullYear","getFullYear","getUTCMonth","getMonth","getUTCDate","getDate","getUTCHours","getHours","getUTCMinutes","getMinutes","getUTCSeconds","getSeconds","getUTCMilliseconds","getMilliseconds","charAt","getTimezoneOffset","getUTCDay","getDay","formatDate","minMillisecond","maxMillisecond","minSecond","maxSecond","minMinute","maxMinute","minHour","maxHour","minDate","maxDate","minMonth","maxMonth","minYear","maxYear","determineDaysOfMonths","isLeapYear","monthMod","seriesRangeStart","seriesRangeEnd","start","end","isFinite","startVal","endVal","ylabel","tooltipLabels","getFormatters","yLbFormatter","_getBoxTooltip","seriesCandleO","seriesCandleH","seriesCandleM","seriesCandleL","seriesCandleC","responsiveOverride","chartType","extendAnnotations","init","stacked100","checkForDarkTheme","Apex","checkForCatToNumericXAxis","handleUserInputErrors","convertCatToNumeric","extendArray","console","warn","Error","seriesRange","seriesGoals","seriesZ","seriesNames","seriesColors","seriesXvalues","seriesYvalues","hasGroups","timescaleLabels","noLabelsProvided","resizeTimer","selectionResizeTimer","pointsArray","dataLabelsRects","isXNumeric","xaxisLabelsCount","skipLastTimelinelabel","skipFirstTimelinelabel","isDataXYZ","isMultiLineX","minXDiff","yAxisScale","xAxisScale","xAxisTicksPositions","yLabelsCoords","yTitleCoords","padHorizontal","xTickAmount","chartID","clicked","clientX","clientY","radarPolygons","msMaxTouchPoints","isDirty","isExecCalled","initialConfig","initialSeries","lastXAxis","lastYAxis","columnSeries","allSeriesCollapsed","collapsedSeries","collapsedSeriesIndices","ancillaryCollapsedSeries","ancillaryCollapsedSeriesIndices","risingSeries","capturedSeriesIndex","capturedDataPointIndex","goldenPadding","ignoreYAxisIndexes","yAxisSameScaleIndices","radialSize","zoomEnabled","panEnabled","selectionEnabled","mousedown","lastClientPosition","visibleXRange","yValueDecimal","SVGNS","svgWidth","svgHeight","previousPaths","allSeriesHasEqualX","lastDrawnDataLabelsIndexes","hasNullValues","rotateXLabels","defaultLabels","xLabelFormatter","yLabelFormatters","xaxisTooltipFormatter","ttKeyFormatter","ttVal","ttZFormatter","LINE_HEIGHT_RATIO","xAxisLabelsHeight","xAxisGroupLabelsHeight","xAxisLabelsWidth","yAxisLabelsWidth","scaleX","scaleY","translateX","translateY","translateYAxisX","yAxisWidths","translateXAxisY","translateXAxisX","globalVars","initGlobalVars","Y","F","document","createElementNS","setAttrs","patternID","patternUnits","setAttributeNS","xlink","preserveAspectRatio","elDefs","seriesNumber","getSeriesIndex","getFillColors","fillType","getFillType","getOpacityFromRGBA","handlePatternFill","fillConfig","patternFill","defaultColor","handleGradientFill","clippedImgArea","solid","drawPattern","shadeColor","rgb2hex","gradientFrom","gradientTo","drawGradient","R","getMarkerConfig","setSelectionFilter","addEvents","finishRadius","getMarkerStyle","pointShape","pointStrokeDashArray","passive","D","initialAnim","dynamicAnim","pointsPos","elParent","drawPoint","fillPath","animateMarker","setTimeout","animateCircle","H","textRects","drawnextLabel","isRangeStart","centerTextInBubble","plotDataLabelsText","parent","offsetCorrection","dataLabelsConfig","alwaysDrawDataLabel","dataLabelsCorrection","addBackgroundToDataLabel","nextSibling","O","legendInactiveClass","getElementsByClassName","escapeString","getSeriesByName","isHidden","isSeriesHidden","legendHelpers","emptyCollapsedSeries","updateHelpers","revertDefaultAxisMinMax","_updateSeries","paths","hasAttribute","handlePrevBubbleScatterPaths","filteredSeriesX","N","twoDSeries","threeDSeries","twoDSeriesX","coreUtils","isFormatXY","isFormat2DArray","activeSeriesIndex","getActiveConfigSeriesIndex","parseNumber","goals","isValidDate","isRangeData","fallbackToCategory","handleRangeDataFormat","rangeUniques","overlaps","rangeName","handleCandleStickBoxDataFormat","findIndex","isRangeBar","error","isComboCharts","handleRangeData","isMultiFormat","handleFormat2DArray","handleFormatXY","handleCandleStickBoxData","convertCatToNumericXaxis","_generateExternalLabels","excludeCollapsedSeriesInYAxis","core","resetGlobals","isMultipleY","parseDataAxisCharts","getLargestSeries","parseDataNonAxisCharts","setNullSeriesToZeroValues","getSeriesTotals","getStackedSeriesTotals","getPercentSeries","handleExternalLabelsData","getCategoryLabels","W","tooltipKeyFormat","defaultGeneralFormatter","legendFormatter","xyCharts","defaultYFormatter","result","niceMax","niceMin","B","xLabelFormat","unit","timeScale","textRect","isBold","reverse","isSeriesNull","pushExtraColors","G","getAttributeNS","isIE11","cloneNode","scaleSvgNode","XMLSerializer","serializeToString","fixSvgStringForIe11","cleanup","getSvgString","Blob","URL","createObjectURL","Promise","scale","createElement","elWrap","getContext","fillStyle","fillRect","canvg","Canvg","fromString","ignoreClear","ignoreDimensions","msToBlob","stop","blob","encodeURIComponent","Image","crossOrigin","onload","drawImage","toDataURL","imgURI","triggerDownload","svgUrl","dataURI","then","msSaveOrOpenBlob","fileName","lineDelimiter","getLabel","pop","href","body","V","elgrid","axesUtils","xaxisLabels","drawnLabels","drawnLabelsRects","offY","isCategoryBarHorizontal","xaxisFontSize","xaxisFontFamily","xaxisForeColors","xaxisBorderWidth","xaxisBorderHeight","drawXAxisLabelAndGroup","cols","elGridBorders","checkLabelBasedOnTickamount","checkForOverflowingLabels","xAxisHeight","on","labelIndex","getYAxisForeColor","drawYAxisTicks","placeTextWithEllipsis","renderGrid","drawGridArea","elGridRectMask","elGridRectMarkerMask","elForecastMask","elNonForecastMask","elGridRect","elGridRectMarker","xCount","_drawGridLine","drawXaxisTicks","elg","xC","_drawGridLines","elgridLinesV","elgridLinesH","hide","_drawXYLines","_drawInvertedXYLines","drawGridBands","xAxisTickWidth","_drawGridBandRect","_","_adjustTicksForSmallRange","linearScale","ceil","isFloat","logarithmicScale","logarithmicScaleNice","niceScale","similarIndex","alreadyExists","setYScaleForIndex","sameScaleInMultipleAxes","sort","JSON","stringify","U","scales","setYRange","setXRange","setZRange","noExponents","lowestY","highestY","getMinYMaxY","_setStackedMinMax","setMultipleYScales","setXScale","_handleSingleDataPoint","_getMinXDiff","setUTCDate","setDate","q","axisFontFamily","xAxisoffX","isYAxisHidden","checkForReversedLabels","inversedYAxisTitleText","inversedYAxisBorder","xPaddingForYAxisTitle","xPos","padd","multipleYs","Z","documentEvent","chartClass","eventList","which","capture","setupBrushHandler","touches","$","J","drawYaxisInversed","drawXaxisInversed","drawXaxis","drawYaxis","Q","K","breakpoint","innerWidth","screen","extendArrayProps","overrideResponsiveOptions","tt","isColorFn","isHeatmapDistributed","isBarDistributed","setDefaultColors","predefined","et","drawTitleSubtitle","it","dCtx","lgRect","getxAxisTimeScaleLabelsCoords","lgWidthForSideLegends","getLargestStringFromArr","dimHelpers","getLargestStringFromMultiArr","yAxisWidth","gridPad","overlappingXLabels","yAxisWidthRight","yAxisWidthLeft","xPadRight","xPadLeft","st","rt","isSparkline","getTitleSubtitleCoords","ot","dimYAxis","dimXAxis","dimGrid","getLegendsRect","entries","next","done","return","setDimensionsForAxisCharts","setDimensionsForNonAxisCharts","gridPadFortitleSubtitle","gridPadForColumnsInNumericAxis","getyAxisLabelsCoords","getyAxisTitleCoords","getTotalYAxisWidth","getxAxisLabelsCoords","getxAxisGroupLabelsCoords","getxAxisTitleCoords","conditionalChecksForAxisCoords","xAxisWidth","additionalPaddingXLabels","setGridXPosForDualYAxis","setYAxisXPosition","nt","lgCtx","createTextNode","clwh","clww","elLegendForeign","elLegendWrap","getLegendStyles","cs","csi","riseCollapsedSeries","hideSeries","seriesEl","printDataLabelsInner","fire","baseVal","_getSeriesBasedOnCollapsedState","lt","onLegendClick","onLegendHovered","isBarsDistributed","drawLegends","getElementsByTagName","appendToForeignObject","legendAlignHorizontal","legendAlignVertical","setProperty","getSeriesTotalByIndex","seriesHaveSameValues","getLegendBBox","setLegendWrapXY","highlightRangeInSeries","toggleSeriesOnHover","ht","ev","selectedClass","localeValues","elZoom","elZoomIn","elZoomOut","elPan","elSelection","elZoomReset","elMenuIcon","elMenu","elCustomIcons","icon","moveIndexInArray","_createHamburgerMenu","addToolbarEventListeners","elMenuItems","handleZoomReset","toggleZoomSelection","handleZoomIn","handleZoomOut","togglePanning","toggleMenu","handleDownload","getSyncedCharts","toggleOtherControls","getToolbarIconsReference","_getNewMinXMaxX","disableZoomIn","zoomUpdateOptions","disableZoomOut","getBeforeZoomRange","autoScaleY","_updateOptions","zoomCallback","exportToPng","ct","dragged","startX","endX","dragX","startY","endY","dragY","moveDirection","xyRatios","zoomRect","selectionRect","gridRect","slDraggableRect","draggable","selectionDragging","preselectedSelection","hoverArea","svgMouseEvents","off","shiftKey","shiftWasPressed","enableZoomPanFromToolbar","changedTouches","panDragging","zoomtype","selectionDrawing","selectionDrawn","delayedPanScrolled","hideSelectionRect","makeSelectionRectDraggable","selectize","pointSize","pointType","resize","constraint","drawSelectionRect","clearTimeout","panScrolled","updateScrolledChart","dt","ttCtx","elGrid","hasBars","getElGrid","closestInMultiArray","closestInArray","capturedSeries","hoverX","hoverY","getFirstActiveXArray","getElMarkers","getElBars","allTooltipSeriesGroups","gt","tooltipUtil","ttItems","handleCustomTooltip","toggleActiveInactiveSeries","getValuesToPrint","printLabels","values","getElTooltip","tooltipRect","ttWidth","ttHeight","xVal","zVal","xAxisTTVal","getSeriesName","fn","yLbTitleFormatter","attrs","DOMHandling","goalVals","pColor","children","showTooltipTitle","tooltipTitle","isXAxisTooltipEnabled","xaxisTooltipText","toggleAllTooltipSeriesGroups","ut","getElXCrosshairs","xcrosshairsWidth","moveXAxisTooltip","ycrosshairs","ycrosshairsHidden","xaxisTooltip","xaxisOffY","yaxisTTEls","resetPointsSize","enlargeCurrentPoint","moveDynamicPointOnHover","getHoverMarkerSize","moveXCrosshairs","fixedTooltip","moveTooltip","getAllMarkers","dataPointsDividedWidth","ft","tooltipPosition","newPointSize","oldPointSize","lastChild","pt","opt","getAttr","drawSeriesTexts","findAncestor","showOnIntersect","getBarTooltipXY","dataPointsDividedHeight","barWidth","xt","yaxisOffX","yaxisTooltip","yaxisTooltipText","yaxisTooltips","moveYCrosshairs","moveYAxisTooltip","bt","tConfig","axesTooltip","isBarShared","lastHoverTime","now","drawXaxisTooltip","drawYaxisTooltip","setXCrosshairWidth","handleYCrosshair","getXAxisTicksPositions","drawDynamicPoints","legendLabels","createTTElements","addSVGEvents","order","seriesBound","tooltipEl","tooltipY","tooltipX","addPathsEventListeners","addDatapointEventsListeners","onSeriesHover","seriesHover","seriesHoverTimeout","getGroupedCharts","seriesHoverByContext","chartCtx","drawFixedTooltipRect","axisChartsTooltips","nonAxisChartsTooltips","handleMouseOut","handleStickyTooltip","handleHeatTreeTooltip","handleBarTooltip","hasMarkers","handleMarkerTooltip","drawYaxisTooltipText","decodeURIComponent","getNearestValues","handleStickyCapturedSeries","isXoverlap","isInitialSeriesSameLen","deactivateHoverFilter","enlargePoints","moveDynamicPointsOnHover","barSeriesHeight","getBarsHeight","moveStickyTooltipOverBars","moveMarkers","vt","barCtx","totalFormatter","barYPosition","visibleSeries","renderedPath","barOptions","bcx","bcy","dataLabelsX","dataLabelsY","barDataLabelsConfig","barTotalDataLabelsConfig","offX","isHorizontal","calculateBarsDataLabelsPosition","calculateColumnsDataLabelsPosition","drawCalculatedDataLabels","drawTotalDataLabels","totalDataLabelsX","totalDataLabelsY","totalDataLabelsAnchor","getStackedTotalDataLabel","totalDataLabels","isReversed","lastActiveBarSerieIndex","mt","totalItems","seriesLen","visibleI","visibleItems","zeroSerieses","radiusOnSeriesNumber","checkZeroSeries","yaxisIndex","yDivision","zeroH","zeroW","isNullValue","elSeries","barXPosition","columnWidthOffset","getPreviousPath","shouldApplyRadius","roundPathCorners","yArrj","yArrjF","yArrjVal","barHeightOffset","xArrj","xArrjF","xArrjVal","getXForValue","getYForValue","goalX","goalY","strokeHeight","strokeLineCap","yt","getBarSeriesIndices","barHelpers","getLogSeries","getLogYRatios","initVariables","addCollapsedClassToSeries","initialPositions","getStrokeWidth","indexes","bc","drawBarPaths","drawColumnPaths","drawGoalLine","getPathFillColor","renderSeries","pathFill","elDataLabelsWrap","elGoalsMarkers","lineFill","renderPaths","handleBarDataLabels","getBarpaths","barBackground","getGoalValues","getColumnPaths","wt","prevY","prevX","prevYF","prevXF","prevYVal","prevXVal","drawStackedBarPaths","drawStackedColumnPaths","kt","candlestickOptions","boxOptions","isBoxPlot","drawHorizontalBoxPaths","drawVerticalBoxPaths","getOHLCValue","At","determineColor","percent","colorProps","St","rectRadius","negRange","checkColorRange","getShadeColor","addListeners","animateHeatMap","animateHeatColor","calculateDataLabels","unshift","animateRect","Ct","Lt","animBeginArr","animDur","donutDataLabels","lineColorArr","defaultSize","centerY","centerX","fullAngle","initialAngle","donutSize","sliceLabels","sliceSizes","prevSectorAngleArr","ret","negToZero","drawPolarElements","drawArcs","renderInnerDataLabels","hollowSize","getChangedPath","polarToCartesian","animatePaths","prevStartAngle","prevEndAngle","animateStartingPos","shouldSetPrevPaths","dur","pieClicked","revertDataLabelsInner","animateArc","getPiePath","me","angle","during","isTrack","drawYAxisTexts","drawSpokes","printInnerLabels","makeSliceOut","printLabel","Pt","isLog","maxValue","minValue","dataRadiusOfPercent","dataRadius","angleArr","yaxisLabelsTextsPos","dataPointsLen","disAngle","yaxisLabels","getDataPointsPos","createPaths","linePathsTo","linePathsFrom","areaPathsFrom","areaPathsTo","drawPolygons","drawXAxisTexts","getPolygonPos","drawPolygon","getTextPos","newX","newY","Tt","totalAngle","trackStartAngle","trackEndAngle","radialDataLabels","drawTracks","colorArr","elHollow","drawHollowImage","drawHollow","loaded","Mt","rangeBarOptions","rangeBar","detectOverlappingBars","srty","initPositions","drawRangeBarPaths","drawRangeColumnPaths","getRangeValue","It","lineCtx","categoryAxisCorrection","pathFromLine","pathFromArea","appendPathFrom","lineYPosition","prevSeriesY","zeroY","zt","pointsChart","scatter","noNegatives","lineHelpers","sameValueSeriesFix","_initSerieVariables","determineFirstPrevY","pX","pY","pathsFrom","_calculatePathsFrom","prevY2","linePaths","areaPaths","_iterateOverDataPoints","iterations","linePath","_handlePaths","elPointsMain","areaBottomY","checkPreviousPaths","areaPath","calculatePoints","_createPaths","handleNullDataPoints","_handleMarkersAndLabels","draw","plotChartMarkers","drawDataLabel","TreemapSquared","generate","xoffset","yoffset","shortestEdge","getCoordinates","cutArea","Xt","Et","Yt","animateTreemap","getFontSize","rotateToFitLabel","Rt","timeScaleArray","utc","determineInterval","getTimeUnitsfromTimestamp","firstVal","currentMillisecond","currentSecond","currentMinute","currentHour","currentMonthDate","currentDate","currentMonth","currentYear","daysWidthOnXAxis","hoursWidthOnXAxis","minutesWidthOnXAxis","secondsWidthOnXAxis","numberOfSeconds","numberOfMinutes","numberOfHours","numberOfDays","numberOfMonths","numberOfYears","tickInterval","generateYearScale","generateMonthScale","generateDayScale","generateHourScale","generateMinuteScale","generateSecondScale","formatDates","removeOverlappingTS","plotCoords","determineRemainingDaysOfYear","determineDaysOfYear","_getYear","date","createRawDateString","parseDateWithTimezone","dateString","Dt","Doc","setSVGDimensions","elAnnotations","getDimensions","drawXCrosshairs","drawYCrosshairs","calculateTimeScaleTicks","recalcDimensionsBasedOnFormat","getCalculatedRatios","targets","ApexCharts","getChartByID","brushSource","updateSourceChart","Ht","getPreviousPaths","update","_extendSeries","supported","parser","prepare","ns","xmlns","svgjs","did","eid","Set","inherit","invent","Container","adopt","instance","nodeName","SVGElement","Nested","Gradient","Element","namespace","setData","documentElement","nested","poly","polyline","native","numberAndUnit","hex","reference","transforms","whitespace","isHex","isRgb","isCss","isBlank","isPercent","isImage","delimiter","hyphen","pathLetters","isPathLetter","numbersWithDots","dots","utils","filterSVGElements","Color","exec","toHex","toRgb","brightness","morph","destination","isColor","PointArray","toUpperCase","PathArray","Point","toJSON","plus","minus","times","divide","relative","_stroke","_event","center","writeDataToDom","after","removeElement","addTo","put","putIn","visible","hasClass","addClass","removeClass","toggleClass","get","matches","doc","parents","matchesSelector","msMatchesSelector","mozMatchesSelector","webkitMatchesSelector","oMatchesSelector","Parent","each","removeAttribute","MorphObj","Situation","reversing","duration","finish","ease","loop","loops","styles","once","FX","_target","situations","situation","paused","lastPos","absPos","_speed","queue","timeToAbsPos","absPosToTime","startAnimFrame","stopAnimFrame","animationFrame","requestAnimationFrame","step","cancelAnimationFrame","startCurrent","initAnimations","shift","dequeue","initialTransformation","matrixify","clearQueue","clearCurrent","atEnd","last","detail","_callStart","eased","eachAt","Matrix","multiply","undo","extract","matrix","Box","BBox","Shape","clientLeft","clientTop","atan2","transformedX","transformedY","rotation","translate","createSVGMatrix","ctm","getCTM","screenCTM","getScreenCTM","point","attributes","nodeValue","leading","rebuild","untransform","toParent","toDoc","Transformation","inversed","Translate","cssText","has","first","clear","hasChildNodes","_defs","ungroup","Defs","flatten","ViewBox","listeners","handlerMap","listenerId","_svgjsListenerId","removeEventListener","Event","dispatchEvent","CustomEvent","cancelable","event","getElementById","version","Stop","Pattern","Use","element","use","Rect","Circle","Ellipse","ellipse","Line","array","toLine","Polyline","Polygon","_array","morphArray","Path","load","_loaded","ratio","url","_error","Text","_rebuild","_build","nodeType","newLined","build","textPath","Tspan","dx","dy","TextPath","prefix","getTotalLength","pointAt","getPointAtLength","set","remember","forget","_memory","bubbles","createEvent","initCustomEvent","backgroundAlpha","autoSetIn","BlendEffect","colorMatrix","ColorMatrixEffect","convolveMatrix","ConvolveMatrixEffect","ComponentTransferEffect","CompositeEffect","FloodEffect","OffsetEffect","ImageEffect","MergeEffect","GaussianBlurEffect","morphology","MorphologyEffect","diffuseLighting","DiffuseLightingEffect","displacementMap","DisplacementMapEffect","specularLighting","SpecularLightingEffect","tile","TileEffect","turbulence","TurbulenceEffect","Effect","in","ParentEffect","ChildEffect","in2","kernelMatrix","operator","xChannelSelector","yChannelSelector","numOctaves","seed","stitchTiles","baseFrequency","MergeNode","surfaceScale","diffuseConstant","kernelUnitLength","specularExponent","distantLight","azimuth","elevation","pointLight","spotLight","pointsAtX","pointsAtY","pointsAtZ","mergeNode","sepiatone","dest","reflection","acos","tan","transformPoint","matrixTransform","rbox","buttons","handler","defaultPrevented","preventDefault","stopPropagation","createSVGPoint","startPoints","box","drag","snapToGrid","pointSelection","isSelected","rectSelection","pointsList","rb","lb","pointCoord","pointCoords","pointsExclude","deepSelect","selectPoints","selectRect","observe","drawPoints","getPointArray","returnValue","pageX","pageY","classPoints","updatePointSelection","updateRectSelection","rotationPoint","classRect","MutationObserver","observerInst","disconnect","parameters","lastUpdateCall","pageXOffset","pageYOffset","_extractPosition","calc","checkAspectRatio","snapToAngle","constraintToBox","saveAspectRatio","Ot","publicMethods","axes","localization","formatters","titleSubtitle","dimensions","zoomPanSelection","Nt","isUpdating","destroy","clearDomElements","killSVG","Wt","WeakMap","Bt","initModules","windowResizeHandler","_windowResizeHandler","parentResizeHandler","_parentResizeCallback","_chartInstances","setLocale","Node","DOCUMENT_FRAGMENT_NODE","ResizeObserver","css","getRootNode","ownerDocument","prepend","head","mount","catch","checkResponsiveConfig","setupElements","checkComboSeries","handleNoData","setupEventHandlers","parseData","setGlobalMarkerSize","setLabelFormatters","hasAllSeriesEqualX","coreCalculations","heatmapLabelFormatters","getLargestMarkerSize","xySettings","createGridMask","plotChartType","bringForward","dataLabelsBackground","shiftGraphPosition","elGraph","elInner","drawGrid","drawAxis","drawImageAnnos","drawTextAnnos","xAxisLabelCorrections","setYAxisTextAlignments","yAxisTitleRotate","drawAxesAnnotations","drawTooltip","createToolbar","resizeNonAxisCharts","delete","resetSeries","forceXAxisUpdate","forceYAxisUpdate","clearPreviousPaths","updateThemeOptions","toggleSeries","showSeries","addXaxisAnnotationExternal","addYaxisAnnotationExternal","addPointAnnotationExternal","clearAnnotations","removeAnnotation","getSeriesTotalsXRange","toggleDataPointSelection","setCurrentLocaleValues","_windowResize","render","DataView","getNative","hashClear","hashDelete","hashGet","hashHas","hashSet","Hash","entry","listCacheClear","listCacheDelete","listCacheGet","listCacheHas","listCacheSet","ListCache","Map","mapCacheClear","mapCacheDelete","mapCacheGet","mapCacheHas","mapCacheSet","MapCache","setCacheAdd","setCacheHas","SetCache","__data__","stackClear","stackDelete","stackGet","stackHas","stackSet","Stack","Uint8Array","func","thisArg","args","predicate","resIndex","baseTimes","isArguments","isBuffer","isIndex","isTypedArray","inherited","isArr","isArg","isBuff","isType","skipIndexes","baseAssignValue","eq","objValue","objectCreate","baseCreate","proto","baseFor","createBaseFor","arrayPush","keysFunc","symbolsFunc","getRawTag","objectToString","symToStringTag","toStringTag","baseGetTag","isObjectLike","baseIsEqualDeep","baseIsEqual","other","bitmask","customizer","stack","equalArrays","equalByTag","equalObjects","getTag","argsTag","arrayTag","objectTag","equalFunc","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","objIsWrapped","othIsWrapped","objUnwrapped","othUnwrapped","isFunction","isMasked","toSource","reIsHostCtor","funcProto","Function","objectProto","funcToString","reIsNative","isLength","typedArrayTags","isPrototype","nativeKeys","nativeKeysIn","isProto","assignMergeValue","baseMergeDeep","keysIn","safeGet","baseMerge","srcIndex","srcValue","newValue","cloneBuffer","cloneTypedArray","copyArray","initCloneObject","isArrayLikeObject","isPlainObject","toPlainObject","mergeFunc","isCommon","isTyped","identity","overRest","setToString","constant","baseSetToString","string","iteratee","cache","arrayBuffer","byteLength","freeExports","freeModule","Buffer","allocUnsafe","buffer","isDeep","copy","cloneArrayBuffer","typedArray","byteOffset","assignValue","props","isNew","coreJsData","baseRest","isIterateeCall","assigner","sources","guard","fromRight","iterable","arraySome","cacheHas","isPartial","arrLength","othLength","arrStacked","othStacked","seen","arrValue","othValue","compared","othIndex","mapToArray","setToArray","symbolProto","symbolValueOf","tag","message","convert","getAllKeys","objProps","objLength","objStacked","skipCtor","objCtor","othCtor","freeGlobal","baseGetAllKeys","getSymbols","isKeyable","baseIsNative","getValue","getPrototype","overArg","nativeObjectToString","isOwn","unmasked","arrayFilter","stubArray","propertyIsEnumerable","nativeGetSymbols","mapTag","promiseTag","setTag","weakMapTag","dataViewTag","dataViewCtorString","mapCtorString","promiseCtorString","setCtorString","weakMapCtorString","ArrayBuffer","resolve","Ctor","ctorString","nativeCreate","reIsUint","isArrayLike","uid","maskSrcKey","IE_PROTO","assocIndexOf","getMapData","freeProcess","process","nodeUtil","require","types","binding","arg","nativeMax","otherArgs","freeSelf","self","shortOut","nativeNow","lastCalled","stamp","remaining","pairs","LARGE_ARRAY_SIZE","baseIsArguments","stubFalse","objectCtorString","baseIsTypedArray","baseUnary","nodeIsTypedArray","arrayLikeKeys","baseKeys","baseKeysIn","createAssigner","copyObject","ssrDocument","activeElement","initEvent","importNode","location","hash","host","hostname","origin","pathname","protocol","search","win","history","replaceState","pushState","go","back","getPropertyValue","matchMedia","Dom7","arr","selector","els","tempParent","html","toCreate","unique","uniqueArray","Class","Methods","toggle","attrName","removeAttr","dom7ElementDataStorage","elStyle","webkitTransform","transition","webkitTransitionDuration","transitionDuration","eventType","targetSelector","listener","handleLiveEvent","eventData","dom7EventData","handleEvent","dom7LiveListeners","proxyListener","dom7Listeners","handlers","dom7proxy","trigger","evt","dataIndex","transitionEnd","callback","fireCallBack","outerWidth","includeMargins","offsetWidth","outerHeight","offsetHeight","scrollTop","scrollLeft","prop","compareWith","child","previousSibling","returnIndex","append","newChild","tempDiv","nextElementSibling","nextAll","nextEls","prev","previousElementSibling","prevAll","prevEls","closest","find","foundElements","found","matchedItems","toAdd","methodName","Utils","deleteProps","nextTick","getTranslate","axis","curTransform","transformMatrix","curStyle","MozTransform","OTransform","MsTransform","msTransform","m41","m42","parseUrlQuery","query","param","urlToParse","paramsPart","nextSource","keysArray","nextIndex","len","nextKey","desc","Support","touch","pointerEvents","observer","passiveListener","supportsPassive","gestures","SwiperClass","eventsListeners","eventName","priority","onceHandler","f7proxy","eventHandler","emit","useModulesParams","instanceParams","modules","moduleName","useModules","modulesParams","moduleParams","modulePropName","moduleProp","moduleEventName","components","static","install","installModule","updateSize","swiper","$el","isVertical","updateSlides","$wrapperEl","swiperSize","rtlTranslate","rtl","wrongRTL","isVirtual","virtual","previousSlidesLength","slides","slideClass","slidesLength","snapGrid","slidesGrid","slidesSizesGrid","slidesForMargin","slideIndex","cssMode","offsetBefore","slidesOffsetBefore","offsetAfter","slidesOffsetAfter","previousSnapGridLength","previousSlidesGridLength","slidesNumberEvenToRows","slideSize","spaceBetween","slidePosition","prevSlideSize","virtualSize","marginLeft","marginTop","marginRight","marginBottom","slidesPerColumn","slidesPerView","slidesPerColumnFill","slidesPerRow","numFullColumns","slide","newSlideOrderIndex","slidesPerGroup","groupIndex","slideIndexInGroup","columnsInGroup","slideStyles","currentTransform","currentWebKitTransform","roundLengths","boxSizing","swiperSlideSize","centeredSlides","slidesPerGroupSkip","newSlidesGrid","effect","setWrapperSize","slidesGridItem","centeredSlidesBounds","allSlidesSize","slideSizeValue","maxSnap","snap","centerInsufficientSlides","allSlidesOffset","snapIndex","watchOverflow","checkOverflow","watchSlidesProgress","watchSlidesVisibility","updateSlidesOffset","updateAutoHeight","activeSlides","newHeight","setTransition","visibleSlides","activeIndex","swiperSlideOffset","offsetLeft","offsetTop","updateSlidesProgress","offsetCenter","slideVisibleClass","visibleSlidesIndexes","slideProgress","minTranslate","autoHeight","slideBefore","slideAfter","progress","updateProgress","multiplier","translatesDiff","maxTranslate","isBeginning","isEnd","wasBeginning","wasEnd","updateSlidesClasses","activeSlide","slideActiveClass","slideNextClass","slidePrevClass","slideDuplicateActiveClass","slideDuplicateNextClass","slideDuplicatePrevClass","slideDuplicateClass","nextSlide","prevSlide","updateActiveIndex","newActiveIndex","previousIndex","previousRealIndex","previousSnapIndex","normalizeSlideIndex","skip","initialized","runCallbacksOnInit","updateClickedSlide","slideFound","clickedSlide","clickedIndex","slideToClickedSlide","virtualTranslate","currentTranslate","setTranslate","byController","wrapperEl","newProgress","previousTranslate","translateTo","runCallbacks","translateBounds","internal","animating","preventInteractionOnTransition","newTranslate","isH","scrollTo","behavior","onTranslateToWrapperTransitionEnd","destroyed","slideTo","initialSlide","allowSlideNext","allowSlidePrev","direction","transitionStart","scrollWidth","onSlideToWrapperTransitionEnd","slideToLoop","newIndex","loopedSlides","slideNext","increment","loopFix","_clientLeft","slidePrev","normalize","normalizedTranslate","normalizedSnapGrid","prevIndex","prevSnap","slideReset","slideToClosest","threshold","currentSnap","slidesPerViewDynamic","slideToIndex","loopCreate","loopFillGroupWithBlank","blankSlidesNum","blankNode","slideBlankClass","loopAdditionalSlides","prependSlides","appendSlides","diff","loopDestroy","grabCursor","setGrabCursor","moving","simulateTouch","isLocked","cursor","unsetGrabCursor","manipulation","appendSlide","prependSlide","addSlide","activeIndexBuffer","baseLength","slidesBuffer","currentSlide","removeSlide","slidesIndexes","indexToRemove","removeAllSlides","Device","platform","ua","device","ios","android","androidChrome","desktop","iphone","ipod","ipad","edge","ie","firefox","macos","windows","cordova","phonegap","electron","screenWidth","screenHeight","os","osVersion","webView","webview","standalone","pixelRatio","onTouchStart","touchEventsData","originalEvent","$targetEl","touchEventsTarget","isTouchEvent","button","isTouched","isMoved","noSwiping","noSwipingSelector","noSwipingClass","allowClick","swipeHandler","currentX","targetTouches","currentY","edgeSwipeDetection","iOSEdgeSwipeDetection","edgeSwipeThreshold","iOSEdgeSwipeThreshold","allowTouchCallbacks","isScrolling","startMoving","touchStartTime","swipeDirection","allowThresholdMove","formElements","shouldPreventDefault","allowTouchMove","touchStartPreventDefault","touchStartForcePreventDefault","onTouchMove","targetTouch","preventedByNestedSwiper","touchReleaseOnEdges","diffX","diffY","touchAngle","touchMoveStopPropagation","startTranslate","allowMomentumBounce","touchRatio","disableParentSwiper","resistanceRatio","resistance","followFinger","freeMode","velocities","time","onTouchEnd","touchEndTime","timeDiff","lastClickTime","currentPos","freeModeMomentum","lastMoveEvent","velocityEvent","distance","velocity","freeModeMinimumVelocity","freeModeMomentumVelocityRatio","momentumDuration","freeModeMomentumRatio","momentumDistance","newPosition","afterBouncePosition","doBounce","bounceAmount","freeModeMomentumBounceRatio","needsLoopFix","freeModeMomentumBounce","freeModeSticky","moveDistance","currentSlideSize","longSwipesMs","stopIndex","groupSize","longSwipes","longSwipesRatio","shortSwipes","navigation","nextEl","prevEl","onResize","breakpoints","setBreakpoint","autoplay","running","run","preventClicks","preventClicksPropagation","stopImmediatePropagation","onScroll","dummyEventAttached","dummyEventListener","updateOnWindowResize","uniqueNavElements","preloadImages","updateOnImagesReady","passiveListeners","containerModifierClass","wrapperClass","prototypes","dir","attachEvents","touchEvents","cancel","detachEvents","getBreakpoint","currentBreakpoint","breakpointOnlyParams","paramValue","breakpointParams","originalParams","wasMultiRow","isMultiRow","directionChanged","needsReLoop","changeDirection","minRatio","wasLocked","lastSlidePosition","addClasses","classNames","suffixes","suffix","removeClasses","loadImage","imageEl","srcset","sizes","checkForComplete","onReady","complete","onerror","imagesLoaded","imagesToLoad","currentSrc","extendedDefaults","Swiper","super","prototypeGroup","protoMethod","moduleParamName","swiperParams","passedParams","swipers","containerEl","newParams","shadowRoot","touchEventsTouch","touchEventsDesktop","clickTimeout","spv","breakLoop","translateValue","translated","newDirection","needUpdate","currentDirection","slideEl","deleteInstance","cleanStyles","newDefaults","Device$1","Support$1","support","Browser","isEdge","isWebView","Browser$1","browser","Resize","resizeHandler","orientationChangeHandler","Observer","attach","ObserverFunc","mutations","observerUpdate","childList","characterData","observers","observeParents","containerParents","observeSlideChildren","Observer$1","Virtual","force","addSlidesBefore","addSlidesAfter","previousFrom","previousTo","previousSlidesGrid","renderSlide","previousOffset","offsetProp","slidesAfter","slidesBefore","onRendered","lazy","renderExternal","slidesToRender","prependIndexes","appendIndexes","$slideEl","numberOfNewSlides","newCache","cachedIndex","$cachedEl","cachedElIndex","Virtual$1","beforeInit","overwriteParams","Keyboard","handle","kc","keyCode","charCode","pageUpDown","keyboard","isPageUp","isPageDown","isArrowLeft","isArrowRight","isArrowUp","isArrowDown","altKey","ctrlKey","metaKey","onlyInViewport","inView","windowWidth","windowHeight","swiperOffset","swiperCoord","enable","disable","Keyboard$1","Mousewheel","lastScrollTime","lastEventBeforeSnap","recentWheelEvents","isSupported","isEventSupported","sX","sY","wheelDelta","wheelDeltaY","wheelDeltaX","HORIZONTAL_AXIS","deltaY","deltaX","deltaMode","spinX","spinY","pixelX","pixelY","handleMouseEnter","mouseEntered","handleMouseLeave","mousewheel","eventsTarged","releaseOnEdges","delta","rtlFactor","forceToAxis","invert","newEvent","sign","ignoreWheelEvents","sensitivity","timeout","prevEvent","firstEvent","snapToThreshold","autoplayDisableOnInteraction","raw","animateSlider","releaseScroll","Navigation","$nextEl","$prevEl","disabledClass","lockClass","onPrevClick","onNextClick","Pagination","pagination","current","paginationType","bullets","firstIndex","lastIndex","midIndex","dynamicBullets","bulletSize","dynamicMainBullets","dynamicBulletIndex","bulletActiveClass","bullet","$bullet","bulletIndex","$firstDisplayedBullet","$lastDisplayedBullet","dynamicBulletsLength","bulletsOffset","currentClass","formatFractionCurrent","totalClass","formatFractionTotal","progressbarDirection","progressbarOpposite","progressbarFillClass","renderCustom","paginationHTML","numberOfBullets","renderBullet","bulletClass","bulletElement","renderFraction","renderProgressbar","clickable","clickableClass","modifierClass","progressbarOppositeClass","hiddenClass","Scrollbar","scrollbar","dragSize","trackSize","$dragEl","newSize","newPos","divider","moveDivider","getPointerPosition","setDragPosition","dragStartPos","positionRatio","onDragStart","dragTimeout","onDragMove","onDragEnd","snapOnRelease","enableDraggable","activeListener","disableDraggable","$swiperEl","dragClass","dragEl","Parallax","setTransform","currentOpacity","currentScale","parallax","parallaxEl","$parallaxEl","parallaxDuration","Zoom","getDistanceBetweenTouches","onGestureStart","gesture","fakeGestureTouched","fakeGestureMoved","scaleStart","$imageEl","$imageWrapEl","containerClass","maxRatio","isScaling","onGestureChange","scaleMove","onGestureEnd","touchesStart","slideWidth","slideHeight","scaledWidth","scaledHeight","touchesCurrent","prevPositionX","prevPositionY","prevTime","momentumDurationX","momentumDurationY","momentumDistanceX","newPositionX","momentumDistanceY","newPositionY","onTransitionEnd","out","touchX","touchY","translateMinX","translateMinY","translateMaxX","translateMaxY","zoomedSlideClass","activeListenerWithCapture","slideSelector","Lazy","loadInSlide","loadInDuplicate","$images","elementClass","loadedClass","loadingClass","imageIndex","$pictureEl","sourceIndex","sourceEl","$source","preloaderClass","slideOriginalIndex","originalSlide","duplicatedSlide","slideExist","initialImageLoaded","elIndex","loadPrevNext","loadPrevNextAmount","amount","maxIndex","minIndex","Controller","LinearSpline","binarySearch","guess","i1","i3","interpolate","getInterpolateFunction","controller","spline","controlled","control","controlledTranslate","setControlledTranslate","by","setControlledTransition","Controller$1","a11y","makeElFocusable","makeElNotFocusable","addElRole","role","addElLabel","disableEl","enableEl","onEnterKey","notify","lastSlideMessage","nextSlideMessage","firstSlideMessage","prevSlideMessage","notification","liveRegion","updateNavigation","updatePagination","bulletEl","$bulletEl","paginationBulletMessage","History","hashNavigation","getPathValues","scrollToSlide","setHistoryPopState","pathArray","part","setHistory","slugify","currentState","HashNavigation","onHashCange","newHash","setHash","watchState","Autoplay","$activeSlideEl","reverseDirection","stopOnLastSlide","pause","waitForTransition","Fade","tx","ty","slideOpacity","fadeEffect","crossFade","eventTriggered","triggerEvents","Cube","swiperWidth","swiperHeight","cubeEffect","$cubeShadowEl","wrapperRotate","shadow","slideAngle","tz","slideShadows","shadowBefore","shadowAfter","shadowOffset","shadowScale","shadowAngle","scale1","scale2","zFactor","Flip","flipEffect","limitRotation","rotateY","rotateX","zIndex","Coverflow","coverflowEffect","depth","offsetMultiplier","modifier","translateZ","stretch","slideTransform","$shadowBeforeEl","$shadowAfterEl","prefixedPointerEvents","perspectiveOrigin","Thumbs","thumbs","thumbsParams","swiperCreated","thumbsContainerClass","onThumbClick","thumbsSwiper","slideThumbActiveClass","currentIndex","initial","autoScrollOffset","useOffset","newThumbsIndex","currentThumbsIndex","prevThumbsIndex","nextThumbsIndex","thumbsToActivate","thumbActiveClass","multipleActiveThumbs","hideOnClick","toEdge","fromEdge","activeIndexChange","snapIndexChange","slidesLengthChange","snapGridLengthChange","touchStart","touchEnd","doubleTap","slideChange","loadOnTransitionStart","scroll","scrollbarDragMove","notificationClass","paginationUpdate","disableOnInteraction","onVisibilityChange","visibilityState","beforeTransitionStart","sliderFirstMove","beforeDestroy","_typeof","ApexChartsComponent","required","default","created","_this","$watch","updateOptions","updateSeries","refresh","methods","_this2","newOptions","$listeners","item","_this3","output","_source","_defineProperty","newSeries","redrawPaths","updateSyncedCharts","appendSeries","zoomX","appendData","newData","addShape","localeName","VueApexCharts","Vue","factory","CoreNames","ComponentEvents","ComponentPropNames","DEFAULT_CLASSES","freeze","SWIPER_EVENTS","__spreadArrays","il","jl","SlotNames","kebabcase","handleClickSlideEvent","_a","_b","_c","eventPath","composedPath","slides_1","includes","some","reallyIndex","dataset","swiperSlideIndex","reallyIndexValue","isInteger","ClickSlide","bindSwiperEvents","arguments$1","_i","kebabcaseName","getDirective","globalOptions","getStandardisedOptionByAttrs","vnode","_d","getSwiperInstanceName","SwiperInstance","getSwiperInstance","instanceName","getSwipeOptions","getBooleanValueByInput","input","getEventEmiter","componentOptions","fns","emitEvent","inserted","swiperOptions","vueContext","Ready","componentUpdated","_e","_f","_g","_h","_j","_k","_l","_m","autoUpdate","AutoUpdate","isLoop","unbind","autoDestroy","AutoDestroy","DeleteInstanceOnDestroy","CleanupStylesOnDestroy","getSwiperComponent","SwiperComponent","defaultOptions","computed","swiperInstance","handleSwiperClick","$emit","autoReLoopSwiper","updateSwiper","destroySwiper","initSwiper","activated","$nextTick","staticClass","$slots","ParallaxBg","PrevButton","NextButton","SwiperSlideComponent","$parent","getInstaller","installed","component","directive","SwiperDirective","VueAwesomeSwiper","exporter","SwiperSlide","content","__esModule","locals","listToStyles","parentId","newStyles","media","sourceMap","parts","hasDocument","DEBUG","stylesInDom","singletonElement","singletonCounter","isProduction","noop","ssrIdKey","isOldIE","addStylesClient","_isProduction","_options","addStylesToDom","newList","mayRemove","domStyle","refs","addStyle","createStyleElement","styleElement","styleIndex","applyToSingletonTag","applyToTag","newObj","textStore","replaceText","replacement","styleSheet","cssNode","ssrId","btoa","unescape","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","getter","definition","globalThis","nmd","axios","VueRouter","Vuex","block","big","cssClasses","normalizeComponent","scriptExports","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","hook","_compiled","functional","_scopeId","$vnode","ssrContext","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","$root","$options","_injectStyles","originalRender","existing","beforeCreate","_vm","$createElement","_self","_v","_s","EditionBadge","mapGetters","isPluginInstalled","getActiveTrialPluginEdition","activeTrialPluginEdition","priceRange","price","fullPriceLabel","priceLabel","Craft","plugin","iconUrl","trialMode","editions","shortDescription","PluginCard","winWidth","computedPlugins","limit","onWindowResize","plugins","PluginGrid","activeTrialsError","activeTrialsLoaded","featuredSectionsLoaded","loading","mapState","activeTrialPlugins","featuredSections","dispatch","featuredSection","slug","defaultDirection","directions","sortOptions","menuLabel","selectAttribute","attribute","selectDirection","asc","ref","sel","$event","PluginIndexSort","SortMenuBtn","selectedAttribute","selectedDirection","sortMenuBtnAttributes","watch","popularity","dateUpdated","orderBy","loadingBottom","hasMore","page","requestActionData","onOrderByChange","requestPlugins","onAfterSuccess","errorMsg","scrollContainer","scrollDistFromBottom","scrollMode","viewHasScrollbar","_t","disableSorting","PluginIndex","category","getCategoryById","requestData","categoryId","mapActions","getPluginsByCategory","scopedSlots","_u","proxy","_defineProperties","descriptor","isBrowser","timeoutDuration","longerTimeoutBrowsers","debounce","called","scheduled","functionToCheck","getStyleComputedProperty","property","defaultView","getParentNode","getScrollParent","_getStyleComputedProp","overflow","overflowX","overflowY","getReferenceNode","referenceNode","MSInputMethodContext","documentMode","isIE10","getOffsetParent","noOffsetParent","offsetParent","getRoot","findCommonOffsetParent","element1","element2","compareDocumentPosition","DOCUMENT_POSITION_FOLLOWING","createRange","setStart","setEnd","commonAncestorContainer","firstElementChild","element1root","getScroll","side","upperSide","scrollingElement","includeScroll","subtract","getBordersSize","sideA","sideB","getSize","computedStyle","getWindowSizes","classCallCheck","Constructor","createClass","protoProps","staticProps","_extends","getClientRect","offsets","horizScrollbar","vertScrollbar","getOffsetRectRelativeToArbitraryNode","fixedPosition","isHTML","childrenRect","parentRect","scrollParent","borderTopWidth","borderLeftWidth","getViewportOffsetRectRelativeToArtbitraryNode","excludeScroll","relativeOffset","innerHeight","isFixed","getFixedPositionOffsetParent","getBoundaries","popper","boundariesElement","boundaries","boundariesNode","_getWindowSizes","isPaddingNumber","getArea","_ref","computeAutoPlacement","placement","refRect","rects","sortedAreas","filteredAreas","_ref2","computedPlacement","variation","getReferenceOffsets","state","commonOffsetParent","getOuterSizes","getOppositePlacement","matched","getPopperOffsets","referenceOffsets","popperRect","popperOffsets","isHoriz","mainSide","secondarySide","measurement","secondaryMeasurement","check","runModifiers","modifiers","ends","cur","isDestroyed","arrowStyles","flipped","positionFixed","flip","originalPlacement","isCreated","onUpdate","onCreate","isModifierEnabled","modifierName","getSupportedPropertyName","prefixes","upperProp","toCheck","willChange","disableEventListeners","removeOnDestroy","getWindow","attachToScrollParents","scrollParents","isBody","setupEventListeners","updateBound","scrollElement","eventsEnabled","enableEventListeners","scheduleUpdate","removeEventListeners","isNumeric","setStyles","isModifierRequired","requestingName","requestedName","requesting","isRequired","_requesting","requested","placements","validPlacements","clockwise","counter","basePlacement","shiftvariation","_data$offsets","shiftOffsets","useHeight","fragments","frag","splitRegex","ops","op","mergeWithPrevious","str","toValue","index2","parseOffset","preventOverflow","transformProp","popperStyles","primary","escapeWithReference","secondary","keepTogether","opSide","arrow","_data$offsets$arrow","arrowElement","sideCapitalized","altSide","arrowElementSize","popperMarginSide","popperBorderSide","sideValue","placementOpposite","flipOrder","refOffsets","overlapsRef","overflowsLeft","overflowsRight","overflowsTop","overflowsBottom","overflowsBoundaries","flippedVariationByRef","flipVariations","flippedVariationByContent","flipVariationsByContent","flippedVariation","getOppositeVariation","inner","subtractLength","bound","computeStyle","legacyGpuAccelerationOption","gpuAcceleration","offsetParentRect","shouldRound","noRound","referenceWidth","popperWidth","isVariation","horizontalToInteger","verticalToInteger","getRoundedOffsets","devicePixelRatio","prefixedProperty","invertTop","invertLeft","applyStyle","onLoad","modifierOptions","Defaults","Popper","jquery","PopperUtils","initCompat","msie","rv","getInternetExplorerVersion","template","script","isFunctionalTemplate","createInjector","createInjectorSSR","createInjectorShadow","__vue_script__","emitOnMount","ignoreWidth","ignoreHeight","_w","emitSize","_resizeObject","addResizeHandlers","removeResizeHandlers","compareAndNotify","contentDocument","__vue_render__","tabindex","_withStripped","__vue_component__","GlobalVue","SVGAnimatedString","convertToArray","newClasses","newClass","ownKeys$2","enumerableOnly","symbols","sym","_objectSpread$2","DEFAULT_OPTIONS","container","openTooltips","Tooltip","_reference","_classCallCheck","relatedreference","toElement","relatedTarget","_tooltipNode","evt2","relatedreference2","_scheduleHide","_isOpen","_init","_show","_hide","_dispose","_classes","_setContent","classesUpdated","defaultClass","setClasses","getOptions","needPopperUpdate","needRestart","isOpen","dispose","popperInstance","_isDisposed","_enableDocumentTouch","_setEventListeners","$_originalTitle","tooltipGenerator","tooltipNode","ariaId","autoHide","asyncContent","_applyContent","_this4","reject","allowHtml","rootNode","titleNode","innerSelector","loadingContent","asyncResult","innerText","_disposeTimer","updateClasses","_ensureShown","_this5","_create","_findContainer","_append","popperOptions","arrowSelector","_this6","_noLongerOpen","disposeTime","disposeTimeout","_removeTooltipNode","_this7","_events","_this8","directEvents","oppositeEvents","hideOnTargetClick","usedByTooltip","_scheduleShow","_this9","computedDelay","_scheduleTimer","_this10","_setTooltipNodeEvent","ownKeys$1","_objectSpread$1","_onDocumentTouch","positions","defaultPlacement","defaultTargetClass","defaultHtml","defaultTemplate","defaultArrowSelector","defaultInnerSelector","defaultDelay","defaultTrigger","defaultOffset","defaultContainer","defaultBoundariesElement","defaultPopperOptions","defaultLoadingClass","defaultLoadingContent","defaultHideOnTargetClick","popover","defaultBaseClass","defaultWrapperClass","defaultInnerClass","defaultArrowClass","defaultOpenClass","defaultAutoHide","defaultHandleResize","typeofOffset","getPlacement","getContent","destroyTooltip","_tooltip","_tooltipOldShow","_tooltipTargetClasses","oldValue","setContent","setOptions","_vueEl","targetClasses","createTooltip","removeListeners","onTouchCancel","currentTarget","closePopover","$_vclosepopover_touch","closeAllPopover","$_closePopoverModifiers","all","$_vclosepopover_touchPoint","firstTouch","screenY","screenX","vclosepopover","getDefault","isIOS","MSStream","openPopovers","open","disabled","popoverClass","popoverBaseClass","popoverInnerClass","popoverWrapperClass","popoverArrowClass","handleResize","openGroup","openClass","popoverId","oldVal","popoverNode","$refs","$_findContainer","$_removeEventListeners","$_addEventListeners","$_updatePopper","deep","$_isDisposed","$_mounted","$_events","$_preventOpen","$_init","deactivated","skipDelay","_ref2$force","$_scheduleShow","$_beingShowed","_ref3","$_scheduleHide","$_show","$_disposeTimer","hidden","$_getOffset","$_hide","$_scheduleTimer","$_setTooltipNodeEvent","event2","_ref4","cb","$_restartPopper","$_handleGlobalClose","$_handleResize","handleGlobalClose","_loop","staticStyle","visibility","keyup","insertAt","styleInject","finalOptions","VTooltip","slot","LicenseStatus","_obj","status","description","CraftEdition","licensedEdition","edition","canTestEditions","isCmsEditionInCart","addToCart","getCraftData","tryEdition","buyCraft","installCraft","InfoHud","StatusBadge","BuyBtn","editionHandle","getCmsEditionFeatures","getCmsEditionIndex","editionDescription","editionIndex","features","CmsEdition","renewalPrice","filters","feature","cmsEditions","CmsEditions","CraftVerifiedIcon","CraftCommerceVerifiedIcon","EnterpriseVerifiedIcon","kind","computedComponent","PartnerBadge","developer","developerId","photoUrl","developerName","partnerInfo","isCraftVerified","isCommerceVerified","isEnterpriseVerified","developerUrl","profileUrl","pluginsLoaded","sectionLoaded","featuredSectionHandle","abortController","abort","uri","prepareOptions","sendApiRequest","action","sendActionRequest","signal","aborted","AbortController","cancelRequests","api","getCoreData","responseData","getCmsEditions","getDeveloper","getFeaturedSectionByHandle","getFeaturedSections","getPluginChangelog","pluginId","getPluginDetails","getPluginDetailsByHandle","pluginHandle","withInstallHistory","withIssueStats","pluginIndexParams","_getPluginIndexParams","getPluginsByDeveloperId","getPluginsByFeaturedSectionHandle","getPluginsByHandles","pluginHandles","pluginHandlesString","getPluginsByIds","pluginIds","pluginIdsString","ids","searchPlugins","searchQuery","perPage","statusMessage","StatusMessage","buyPlugin","pluginStoreApi","isPluginBuyable","pluginLicenseInfo","isInCart","getPluginLicenseInfo","pendingActiveTrials","buyAllTrials","somePrice","modal","craftTranslation","link","autoShow","resizable","openModal","domProps","activeTab","tabs","tab","tabKey","nbDevelopers","developers","requestDevelopers","DeveloperIndex","developerKey","SearchTabs","thumbnails","zoomImage","licenseMismatched","getLicenseMismatched","licenseValidOrAstray","getLicenseValidOrAstray","licenseKeyStatus","border","isPluginFree","getPriceRange","PluginEditionPrice","mixins","isPluginEditionFree","getPluginEdition","addToCartloading","isEditionMoreExpensiveThanLicensed","currentEdition","allowUpdates","csrfTokenName","csrfTokenValue","addEditionToCart","onSwitchOrInstallSubmit","$ev","phpVersion","composerPhpVersion","latestCompatibleVersion","phpVersionCompatible","abandoned","packageName","isInstalled","isEnabled","incompatiblePhpVersion","v1","phpConstraint","v2","PluginActions","cart","PluginEdition","MetaStat","copyTimeout","showSuccess","currentInstallModeHandle","currentInstallMode","installModes","copyValue","changeInstallMode","installMode","installModeKey","ActivityStat","githubActivityTitle","period","issueStats","closedIssues","openIssues","mergedPulls","openPulls","chartMounted","chartOptions","chartData","InstallPlugin","ActiveInstalls","ActiveInstallsChart","activeInstallsValue","activeInstallsDate","activeInstalls","updateActiveInstallsDataPoint","GithubActivity","PluginMetaBuyButton","licenseLabel","pluginCategories","documentationUrl","repository","totalReleases","compatibility","lastUpdate","isCommercial","getPluginEditions","defaultPluginSvg","$route","PluginLayout","PluginScreenshots","PluginMeta","actionsLoading","showingScreenshotModal","longDescription","licenseMismatchedMessage","accountLink","recommendedLabel","beforeRouteLeave","thumbnailUrls","screenshotUrls","PluginEditions","ChangelogRelease","release","notes","pluginChangelog","pluginChangelogPluginId","initPlugin","initChangelog","pluginStoreAppBaseUrl","scrollBehavior","routes","Index","CategoriesId","UpgradeCraft","DeveloperId","FeaturedHandle","BuyPlugin","BuyAllTrials","Search","Tests","PluginsHandle","PluginsHandleEditions","PluginsHandleChangelog","NotFound","getters","cartItems","lineItems","lineItem","cartItem","purchasable","cartPlugins","cartItemsData","getCartItemsData","cmsEdition","rootState","rootGetters","activeTrials","craftLogo","craft","pluginStore","trials","cmsProEdition","cmsProEditionIndex","editionName","navigateTo","showEditionBadge","licensesMixins","discountPrice","activeTrial","actions","newItems","newItem","alreadyInCart","expiryDate","autoRenew","licenseKey","hasIssues","licenseIssues","issue","cmsLicenseKey","cartNumber","errors","addAllTrialsToCart","createCart","email","currentUser","cartResponseData","orderNumber","cartError","getActiveTrials","getActiveTrialPlugins","commit","info","pluginEdition","getCart","getOrderNumber","localStorage","getItem","removeFromCart","lineItemKey","resetCart","resetOrderNumber","removeItem","saveCart","saveOrderNumber","setItem","savePluginLicenseKeys","pluginLicenseKeys","getActionUrl","headers","response","updateCart","updateCartPlugins","cartItemPluginIds","pluginsResponseData","updateItem","itemKey","getCartData","billingAddress","firstName","lastName","namespaced","selectedExpiryDates","updateActiveTrialPlugins","updateSelectedExpiryDates","searchDevelopers","developerIndexParams","getElementIndexParams","getDevelopersFixture","developersResponseData","currentPage","getDeveloperIndexParams","firstOptionKey","updateDevelopers","updateDevelopersResponseData","appendDevelopers","thrown","updateDeveloperIndex","expiryDateOptions","featuredPlugins","appendPlugins","updateCoreData","updateCmsEditions","updateDeveloper","updateFeaturedSection","updateFeaturedSections","updatePluginChangelog","changelog","updatePluginDetails","pluginDetails","updatePlugins","getPluginIndexParams","payload","updatePluginIndex","countries","craftId","CraftPro","CraftSolo","solo","pro","getCraftIdData","accessToken","Authorization","include","pluginLicenses","license","switchPluginEdition","clearCachedApiHeaders","switchPluginEditionResponse","getPluginLicenseInfoResponse","updateCraftData","updateCraftIdData","updateCountries","updateCraftId","updatePluginLicenseInfo","strict","app","screenshotModalImages","screenshotModalImageKey","updateSearchQuery","updateShowingScreenshotModal","updateScreenshotModalImages","updateScreenshotModalImageKey","developerIndex","addToCartLoading","navigateToPlugin","ActiveTrial","activeTrialsLoading","loadingItems","loadingRemoveFromCart","loadingCheckout","ItemAdjustments","adjustments","lineItemAdustment","sourceSnapshot","adjustment","adjustmentKey","ItemName","ItemIcon","ActiveTrials","Step","itemExpiryDateOptions","selectedOption","itemLoading","onSelectedExpiryDateChange","payment","removeFromCartLoading","Cart","isTrial","model","$$v","$set","expression","totalPrice","modalStep","onHide","$this","closeModal","nativeOn","NavItems","showCategorySelector","CategorySelector","PluginSearch","swiperOption","close","handleEscapeKey","imageElement","imageUrl","Sidebar","Modal","ScreenshotModal","onViewScroll","fullPath","pluginStoreDataError","showModal","ApexChart","small","large","outline","trailingIcon","additionalAttributes","computedType","animationColor","animationColorHover","invalid","fullwidth","option","AlertIcon","BookIcon","CheckIcon","ChevronLeftIcon","ChevronRightIcon","ClipboardCopyIcon","CopyIcon","ExclamationCircleIcon","ExclamationTriangleIcon","ExternalLinkIcon","FlagIcon","GithubIcon","InfoCircleIcon","PlugIcon","LinkIcon","SearchIcon","StarIcon","WorldIcon","XIcon","animationClass","_obj$1","floatValue","Accounting","escapeHtml","CBtn","CDropdown","CIcon","CSpinner","CTextbox","Garnish","$doc","ready","initUiElements","pluginStoreApp","router","store","App","allDataLoaded","cartDataLoaded","coreDataLoaded","craftDataLoaded","craftIdDataLoaded","pageTitle","pluginLicenseInfoLoaded","pluginStoreDataLoaded","displayNotice","cp","displaySuccess","displayError","$store","initializeOuterComponents","$router","$cartButton","keydown","$on","totalQty","$pluginStoreActions","$pluginStoreActionsSpinner","$craftId","$craftIdConnectForm","$craftIdDisconnectForm","username","loadCartData","loadCraftData","afterSuccess","loadCraftIdData","craftIdAccessToken","loadData","loadPluginStoreData","onDataLoaded","$mount"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"js/app.js","mappings":"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","sources":["webpack:///../../../../../node_modules/accounting/accounting.js","webpack:///../../../../../node_modules/apexcharts/dist/apexcharts.min.js","webpack:///../../../../../node_modules/lodash/_DataView.js","webpack:///../../../../../node_modules/lodash/_Hash.js","webpack:///../../../../../node_modules/lodash/_ListCache.js","webpack:///../../../../../node_modules/lodash/_Map.js","webpack:///../../../../../node_modules/lodash/_MapCache.js","webpack:///../../../../../node_modules/lodash/_Promise.js","webpack:///../../../../../node_modules/lodash/_Set.js","webpack:///../../../../../node_modules/lodash/_SetCache.js","webpack:///../../../../../node_modules/lodash/_Stack.js","webpack:///../../../../../node_modules/lodash/_Symbol.js","webpack:///../../../../../node_modules/lodash/_Uint8Array.js","webpack:///../../../../../node_modules/lodash/_WeakMap.js","webpack:///../../../../../node_modules/lodash/_apply.js","webpack:///../../../../../node_modules/lodash/_arrayFilter.js","webpack:///../../../../../node_modules/lodash/_arrayLikeKeys.js","webpack:///../../../../../node_modules/lodash/_arrayPush.js","webpack:///../../../../../node_modules/lodash/_arraySome.js","webpack:///../../../../../node_modules/lodash/_assignMergeValue.js","webpack:///../../../../../node_modules/lodash/_assignValue.js","webpack:///../../../../../node_modules/lodash/_assocIndexOf.js","webpack:///../../../../../node_modules/lodash/_baseAssignValue.js","webpack:///../../../../../node_modules/lodash/_baseCreate.js","webpack:///../../../../../node_modules/lodash/_baseFor.js","webpack:///../../../../../node_modules/lodash/_baseGetAllKeys.js","webpack:///../../../../../node_modules/lodash/_baseGetTag.js","webpack:///../../../../../node_modules/lodash/_baseIsArguments.js","webpack:///../../../../../node_modules/lodash/_baseIsEqual.js","webpack:///../../../../../node_modules/lodash/_baseIsEqualDeep.js","webpack:///../../../../../node_modules/lodash/_baseIsNative.js","webpack:///../../../../../node_modules/lodash/_baseIsTypedArray.js","webpack:///../../../../../node_modules/lodash/_baseKeys.js","webpack:///../../../../../node_modules/lodash/_baseKeysIn.js","webpack:///../../../../../node_modules/lodash/_baseMerge.js","webpack:///../../../../../node_modules/lodash/_baseMergeDeep.js","webpack:///../../../../../node_modules/lodash/_baseRest.js","webpack:///../../../../../node_modules/lodash/_baseSetToString.js","webpack:///../../../../../node_modules/lodash/_baseTimes.js","webpack:///../../../../../node_modules/lodash/_baseUnary.js","webpack:///../../../../../node_modules/lodash/_cacheHas.js","webpack:///../../../../../node_modules/lodash/_cloneArrayBuffer.js","webpack:///../../../../../node_modules/lodash/_cloneBuffer.js","webpack:///../../../../../node_modules/lodash/_cloneTypedArray.js","webpack:///../../../../../node_modules/lodash/_copyArray.js","webpack:///../../../../../node_modules/lodash/_copyObject.js","webpack:///../../../../../node_modules/lodash/_coreJsData.js","webpack:///../../../../../node_modules/lodash/_createAssigner.js","webpack:///../../../../../node_modules/lodash/_createBaseFor.js","webpack:///../../../../../node_modules/lodash/_defineProperty.js","webpack:///../../../../../node_modules/lodash/_equalArrays.js","webpack:///../../../../../node_modules/lodash/_equalByTag.js","webpack:///../../../../../node_modules/lodash/_equalObjects.js","webpack:///../../../../../node_modules/lodash/_freeGlobal.js","webpack:///../../../../../node_modules/lodash/_getAllKeys.js","webpack:///../../../../../node_modules/lodash/_getMapData.js","webpack:///../../../../../node_modules/lodash/_getNative.js","webpack:///../../../../../node_modules/lodash/_getPrototype.js","webpack:///../../../../../node_modules/lodash/_getRawTag.js","webpack:///../../../../../node_modules/lodash/_getSymbols.js","webpack:///../../../../../node_modules/lodash/_getTag.js","webpack:///../../../../../node_modules/lodash/_getValue.js","webpack:///../../../../../node_modules/lodash/_hashClear.js","webpack:///../../../../../node_modules/lodash/_hashDelete.js","webpack:///../../../../../node_modules/lodash/_hashGet.js","webpack:///../../../../../node_modules/lodash/_hashHas.js","webpack:///../../../../../node_modules/lodash/_hashSet.js","webpack:///../../../../../node_modules/lodash/_initCloneObject.js","webpack:///../../../../../node_modules/lodash/_isIndex.js","webpack:///../../../../../node_modules/lodash/_isIterateeCall.js","webpack:///../../../../../node_modules/lodash/_isKeyable.js","webpack:///../../../../../node_modules/lodash/_isMasked.js","webpack:///../../../../../node_modules/lodash/_isPrototype.js","webpack:///../../../../../node_modules/lodash/_listCacheClear.js","webpack:///../../../../../node_modules/lodash/_listCacheDelete.js","webpack:///../../../../../node_modules/lodash/_listCacheGet.js","webpack:///../../../../../node_modules/lodash/_listCacheHas.js","webpack:///../../../../../node_modules/lodash/_listCacheSet.js","webpack:///../../../../../node_modules/lodash/_mapCacheClear.js","webpack:///../../../../../node_modules/lodash/_mapCacheDelete.js","webpack:///../../../../../node_modules/lodash/_mapCacheGet.js","webpack:///../../../../../node_modules/lodash/_mapCacheHas.js","webpack:///../../../../../node_modules/lodash/_mapCacheSet.js","webpack:///../../../../../node_modules/lodash/_mapToArray.js","webpack:///../../../../../node_modules/lodash/_nativeCreate.js","webpack:///../../../../../node_modules/lodash/_nativeKeys.js","webpack:///../../../../../node_modules/lodash/_nativeKeysIn.js","webpack:///../../../../../node_modules/lodash/_nodeUtil.js","webpack:///../../../../../node_modules/lodash/_objectToString.js","webpack:///../../../../../node_modules/lodash/_overArg.js","webpack:///../../../../../node_modules/lodash/_overRest.js","webpack:///../../../../../node_modules/lodash/_root.js","webpack:///../../../../../node_modules/lodash/_safeGet.js","webpack:///../../../../../node_modules/lodash/_setCacheAdd.js","webpack:///../../../../../node_modules/lodash/_setCacheHas.js","webpack:///../../../../../node_modules/lodash/_setToArray.js","webpack:///../../../../../node_modules/lodash/_setToString.js","webpack:///../../../../../node_modules/lodash/_shortOut.js","webpack:///../../../../../node_modules/lodash/_stackClear.js","webpack:///../../../../../node_modules/lodash/_stackDelete.js","webpack:///../../../../../node_modules/lodash/_stackGet.js","webpack:///../../../../../node_modules/lodash/_stackHas.js","webpack:///../../../../../node_modules/lodash/_stackSet.js","webpack:///../../../../../node_modules/lodash/_toSource.js","webpack:///../../../../../node_modules/lodash/constant.js","webpack:///../../../../../node_modules/lodash/eq.js","webpack:///../../../../../node_modules/lodash/identity.js","webpack:///../../../../../node_modules/lodash/isArguments.js","webpack:///../../../../../node_modules/lodash/isArray.js","webpack:///../../../../../node_modules/lodash/isArrayLike.js","webpack:///../../../../../node_modules/lodash/isArrayLikeObject.js","webpack:///../../../../../node_modules/lodash/isBuffer.js","webpack:///../../../../../node_modules/lodash/isEqual.js","webpack:///../../../../../node_modules/lodash/isFunction.js","webpack:///../../../../../node_modules/lodash/isLength.js","webpack:///../../../../../node_modules/lodash/isObject.js","webpack:///../../../../../node_modules/lodash/isObjectLike.js","webpack:///../../../../../node_modules/lodash/isPlainObject.js","webpack:///../../../../../node_modules/lodash/isTypedArray.js","webpack:///../../../../../node_modules/lodash/keys.js","webpack:///../../../../../node_modules/lodash/keysIn.js","webpack:///../../../../../node_modules/lodash/merge.js","webpack:///../../../../../node_modules/lodash/stubArray.js","webpack:///../../../../../node_modules/lodash/stubFalse.js","webpack:///../../../../../node_modules/lodash/toPlainObject.js","webpack:///../../../../../node_modules/ssr-window/dist/ssr-window.esm.js","webpack:///../../../../../node_modules/dom7/dist/dom7.modular.js","webpack:///../../../../../node_modules/swiper/js/swiper.esm.bundle.js","webpack:///../../../../../node_modules/vue-apexcharts/dist/vue-apexcharts.js","webpack:///../../../../../node_modules/vue-awesome-swiper/dist/vue-awesome-swiper.js","webpack:///../../../../../node_modules/swiper/css/swiper.css?c52c","webpack:///./App.vue?0dda","webpack:///./App.vue?f92f","webpack:///./js/components/ActiveInstallsChart.vue?4f57","webpack:///./js/components/CategorySelector.vue?857f","webpack:///./js/components/ChangelogRelease.vue?da95","webpack:///./js/components/EditionBadge.vue?3e35","webpack:///./js/components/InfoHud.vue?7dec","webpack:///./js/components/LicenseStatus.vue?ac8e","webpack:///./js/components/PluginActions.vue?a0d4","webpack:///./js/components/PluginCard.vue?caa0","webpack:///./js/components/ScreenshotModal.vue?1b5a","webpack:///./js/components/StatusMessage.vue?c7fe","webpack:///./js/components/modal/Modal.vue?b200","webpack:///./js/components/ui/CBtn.vue?9e7d","webpack:///./js/components/ui/CDropdown.vue?14de","webpack:///./js/components/ui/CSpinner.vue?e20d","webpack:///./js/components/upgradecraft/CmsEdition.vue?d674","webpack:///../../../../../node_modules/vue-style-loader/lib/listToStyles.js","webpack:///../../../../../node_modules/vue-style-loader/lib/addStylesClient.js","webpack:///external var \"Vue\"","webpack:///webpack/bootstrap","webpack:///webpack/runtime/compat get default export","webpack:///webpack/runtime/define property getters","webpack:///webpack/runtime/global","webpack:///webpack/runtime/hasOwnProperty shorthand","webpack:///webpack/runtime/make namespace object","webpack:///webpack/runtime/node module decorator","webpack:///external var \"axios\"","webpack:///external var \"VueRouter\"","webpack:///external var \"Vuex\"","webpack:///./js/components/EditionBadge.vue?3f5d","webpack:///js/components/EditionBadge.vue","webpack:///../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack:///./js/components/EditionBadge.vue?9ebe","webpack:///./js/components/EditionBadge.vue","webpack:///js/components/PluginCard.vue","webpack:///./js/components/PluginCard.vue?8f0b","webpack:///./js/components/PluginCard.vue?261b","webpack:///./js/components/PluginCard.vue","webpack:///./js/components/PluginGrid.vue?db86","webpack:///js/components/PluginGrid.vue","webpack:///./js/components/PluginGrid.vue","webpack:///js/pages/index.vue","webpack:///./js/pages/index.vue?3bf5","webpack:///./js/pages/index.vue?4fd3","webpack:///./js/pages/index.vue","webpack:///js/components/SortMenuBtn.vue","webpack:///./js/components/SortMenuBtn.vue?cdb7","webpack:///./js/components/SortMenuBtn.vue?3c87","webpack:///./js/components/SortMenuBtn.vue","webpack:///js/components/PluginIndex.vue","webpack:///./js/components/PluginIndexSort.vue?bd37","webpack:///js/components/PluginIndexSort.vue","webpack:///./js/components/PluginIndexSort.vue","webpack:///./js/components/PluginIndex.vue?ba8e","webpack:///./js/components/PluginIndex.vue?e339","webpack:///./js/components/PluginIndex.vue","webpack:///js/pages/categories/_id.vue","webpack:///./js/pages/categories/_id.vue?8773","webpack:///./js/pages/categories/_id.vue?db05","webpack:///./js/pages/categories/_id.vue","webpack:///../../../../../node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///../../../../../node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///../../../../../node_modules/@babel/runtime/helpers/esm/createClass.js","webpack:///../../../../../node_modules/popper.js/dist/esm/popper.js","webpack:///../../../../../node_modules/vue-resize/dist/vue-resize.esm.js","webpack:///../../../../../node_modules/v-tooltip/dist/v-tooltip.esm.js","webpack:///../../../../../node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack:///js/components/InfoHud.vue","webpack:///./js/components/InfoHud.vue?5e9b","webpack:///./js/components/InfoHud.vue","webpack:///js/components/upgradecraft/StatusBadge.vue","webpack:///./js/components/LicenseStatus.vue?5b1f","webpack:///js/components/LicenseStatus.vue","webpack:///./js/components/LicenseStatus.vue","webpack:///./js/components/upgradecraft/StatusBadge.vue?0bf8","webpack:///./js/components/upgradecraft/StatusBadge.vue?dd09","webpack:///./js/components/upgradecraft/StatusBadge.vue","webpack:///js/components/upgradecraft/BuyBtn.vue","webpack:///js/components/upgradecraft/CmsEdition.vue","webpack:///./js/components/upgradecraft/CmsEdition.vue?4111","webpack:///./js/components/upgradecraft/BuyBtn.vue?1219","webpack:///./js/components/upgradecraft/BuyBtn.vue?9874","webpack:///./js/components/upgradecraft/BuyBtn.vue","webpack:///js/components/upgradecraft/CmsEditions.vue","webpack:///./js/components/upgradecraft/CmsEdition.vue?eed5","webpack:///./js/components/upgradecraft/CmsEdition.vue","webpack:///./js/components/upgradecraft/CmsEditions.vue?6745","webpack:///./js/components/upgradecraft/CmsEditions.vue?31b2","webpack:///./js/components/upgradecraft/CmsEditions.vue","webpack:///./js/pages/upgrade-craft.vue?1f0c","webpack:///js/pages/upgrade-craft.vue","webpack:///./js/pages/upgrade-craft.vue","webpack:///./js/components/partner/icons/EnterpriseVerifiedIcon.vue?eb9f","webpack:///./js/components/partner/icons/EnterpriseVerifiedIcon.vue","webpack:///./js/components/partner/icons/CraftCommerceVerifiedIcon.vue?aff0","webpack:///./js/components/partner/icons/CraftCommerceVerifiedIcon.vue","webpack:///./js/components/partner/icons/CraftVerifiedIcon.vue?f5a5","webpack:///./js/components/partner/icons/CraftVerifiedIcon.vue","webpack:///./js/components/partner/PartnerBadge.vue?2e07","webpack:///js/components/partner/PartnerBadge.vue","webpack:///./js/components/partner/PartnerBadge.vue","webpack:///js/pages/developer/_id.vue","webpack:///./js/pages/developer/_id.vue?87cb","webpack:///./js/pages/developer/_id.vue?ab78","webpack:///./js/pages/developer/_id.vue","webpack:///js/pages/featured/_handle.vue","webpack:///./js/pages/featured/_handle.vue?0643","webpack:///./js/pages/featured/_handle.vue?3537","webpack:///./js/pages/featured/_handle.vue","webpack:///./js/utils/api.js","webpack:///./js/api/pluginstore.js","webpack:///./js/components/StatusMessage.vue?2651","webpack:///js/components/StatusMessage.vue","webpack:///./js/components/StatusMessage.vue","webpack:///js/pages/buy/_plugin.vue","webpack:///./js/pages/buy/_plugin.vue?5bbd","webpack:///./js/pages/buy/_plugin.vue?bebd","webpack:///./js/pages/buy/_plugin.vue","webpack:///js/pages/buy-all-trials.vue","webpack:///./js/pages/buy-all-trials.vue?c7e0","webpack:///./js/pages/buy-all-trials.vue?98ff","webpack:///./js/pages/buy-all-trials.vue","webpack:///./js/pages/tests.vue?3d69","webpack:///js/pages/tests.vue","webpack:///./js/pages/tests.vue","webpack:///./js/pages/_not-found.vue?f2a0","webpack:///js/pages/_not-found.vue","webpack:///./js/pages/_not-found.vue","webpack:///./js/components/SearchTabs.vue?a22f","webpack:///js/components/SearchTabs.vue","webpack:///./js/components/SearchTabs.vue","webpack:///js/components/DeveloperIndex.vue","webpack:///js/pages/search.vue","webpack:///./js/components/DeveloperIndex.vue?9a75","webpack:///./js/components/DeveloperIndex.vue?1ff1","webpack:///./js/components/DeveloperIndex.vue","webpack:///./js/pages/search.vue?3082","webpack:///./js/pages/search.vue?d07f","webpack:///./js/pages/search.vue","webpack:///./js/components/PluginScreenshots.vue?a2d1","webpack:///js/components/PluginScreenshots.vue","webpack:///./js/components/PluginScreenshots.vue","webpack:///./js/mixins/licenses.js","webpack:///./js/components/MetaStat.vue?921e","webpack:///js/components/MetaStat.vue","webpack:///./js/components/MetaStat.vue","webpack:///./js/utils/plugins.js","webpack:///js/components/PluginActions.vue","webpack:///./js/components/PluginActions.vue?2744","webpack:///./js/components/PluginEditionPrice.vue?c1d6","webpack:///js/components/PluginEditionPrice.vue","webpack:///./js/components/PluginEditionPrice.vue","webpack:///./js/components/PluginActions.vue?292e","webpack:///./js/components/PluginActions.vue","webpack:///js/components/PluginEdition.vue","webpack:///./js/components/PluginEdition.vue?65d7","webpack:///./js/components/PluginEdition.vue?15dc","webpack:///./js/components/PluginEdition.vue","webpack:///./js/components/PluginMetaBuyButton.vue?4657","webpack:///js/components/PluginMetaBuyButton.vue","webpack:///./js/components/PluginMetaBuyButton.vue","webpack:///./js/components/InstallPlugin.vue?3b20","webpack:///js/components/InstallPlugin.vue","webpack:///./js/components/InstallPlugin.vue","webpack:///./js/components/github-activity/ActivityStat.vue?5e06","webpack:///./js/components/github-activity/ActivityStat.vue","webpack:///./js/components/github-activity/GithubActivity.vue?df7e","webpack:///js/components/github-activity/GithubActivity.vue","webpack:///./js/components/github-activity/GithubActivity.vue","webpack:///./js/components/ActiveInstallsChart.vue?338a","webpack:///js/components/ActiveInstallsChart.vue","webpack:///./js/components/ActiveInstallsChart.vue?e366","webpack:///./js/components/ActiveInstallsChart.vue","webpack:///js/components/PluginMeta.vue","webpack:///./js/components/ActiveInstalls.vue?b9c6","webpack:///js/components/ActiveInstalls.vue","webpack:///./js/components/ActiveInstalls.vue","webpack:///./js/components/PluginMeta.vue?2f83","webpack:///./js/components/PluginMeta.vue?6b11","webpack:///./js/components/PluginMeta.vue","webpack:///js/components/PluginLayout.vue","webpack:///./js/components/PluginLayout.vue?7417","webpack:///./js/components/PluginLayout.vue?36b8","webpack:///./js/components/PluginLayout.vue","webpack:///js/pages/_handle/index.vue","webpack:///./js/pages/_handle/index.vue?8bdd","webpack:///./js/pages/_handle/index.vue?2782","webpack:///./js/pages/_handle/index.vue","webpack:///js/pages/_handle/editions.vue","webpack:///./js/components/PluginEditions.vue?6712","webpack:///js/components/PluginEditions.vue","webpack:///./js/components/PluginEditions.vue","webpack:///./js/pages/_handle/editions.vue?c890","webpack:///./js/pages/_handle/editions.vue?1e4f","webpack:///./js/pages/_handle/editions.vue","webpack:///./js/components/ChangelogRelease.vue?4350","webpack:///js/components/ChangelogRelease.vue","webpack:///js/pages/_handle/changelog.vue","webpack:///./js/components/ChangelogRelease.vue?03bc","webpack:///./js/components/ChangelogRelease.vue","webpack:///./js/pages/_handle/changelog.vue?d3a9","webpack:///./js/pages/_handle/changelog.vue?51bd","webpack:///./js/pages/_handle/changelog.vue","webpack:///./js/router/index.js","webpack:///./js/store/modules/cart.js","webpack:///./js/api/cart.js","webpack:///./js/api/developerIndex.js","webpack:///./js/utils/elementIndex.js","webpack:///./js/store/modules/developer-index.js","webpack:///./js/store/modules/plugin-store.js","webpack:///./js/store/modules/craft.js","webpack:///./js/api/craft.js","webpack:///./js/store/index.js","webpack:///./js/store/modules/app.js","webpack:///./js/components/modal/Step.vue?427d","webpack:///./js/components/modal/Step.vue","webpack:///./js/components/modal/steps/cart/ActiveTrial.vue?cbfa","webpack:///js/components/modal/steps/cart/ActiveTrial.vue","webpack:///./js/components/modal/steps/cart/ActiveTrial.vue","webpack:///js/components/modal/steps/cart/ActiveTrials.vue","webpack:///./js/components/modal/steps/cart/ActiveTrials.vue?0db0","webpack:///./js/components/modal/steps/cart/ActiveTrials.vue?0c5a","webpack:///./js/components/modal/steps/cart/ActiveTrials.vue","webpack:///js/components/modal/steps/cart/ItemIcon.vue","webpack:///./js/components/modal/steps/cart/ItemIcon.vue?88e7","webpack:///./js/components/modal/steps/cart/ItemIcon.vue?8c56","webpack:///./js/components/modal/steps/cart/ItemIcon.vue","webpack:///./js/components/modal/steps/cart/ItemName.vue?df3f","webpack:///js/components/modal/steps/cart/ItemName.vue","webpack:///./js/components/modal/steps/cart/ItemName.vue","webpack:///js/components/modal/steps/Cart.vue","webpack:///./js/components/modal/steps/cart/ItemAdjustments.vue?38e2","webpack:///js/components/modal/steps/cart/ItemAdjustments.vue","webpack:///./js/components/modal/steps/cart/ItemAdjustments.vue","webpack:///./js/components/modal/Modal.vue?424b","webpack:///js/components/modal/Modal.vue","webpack:///./js/components/modal/steps/Cart.vue?5d5b","webpack:///./js/components/modal/steps/Cart.vue?efc8","webpack:///./js/components/modal/steps/Cart.vue","webpack:///./js/components/modal/Modal.vue?5f2a","webpack:///./js/components/modal/Modal.vue","webpack:///js/components/NavItems.vue","webpack:///./js/components/NavItems.vue?55ec","webpack:///./js/components/NavItems.vue?9b12","webpack:///./js/components/NavItems.vue","webpack:///js/components/CategorySelector.vue","webpack:///./js/components/CategorySelector.vue?ddda","webpack:///./js/components/CategorySelector.vue?9bd2","webpack:///./js/components/CategorySelector.vue","webpack:///./js/components/PluginSearch.vue?856d","webpack:///js/components/PluginSearch.vue","webpack:///./js/components/PluginSearch.vue","webpack:///./js/components/Sidebar.vue?a0d5","webpack:///js/components/Sidebar.vue","webpack:///./js/components/Sidebar.vue","webpack:///js/components/ScreenshotModal.vue","webpack:///./js/components/ScreenshotModal.vue?ca9c","webpack:///./js/components/ScreenshotModal.vue?95fc","webpack:///./js/components/ScreenshotModal.vue","webpack:///./App.vue","webpack:///./App.vue?3e64","webpack:///./App.vue?397a","webpack:///./js/plugins/vue-awesome-swiper.js","webpack:///./js/plugins/vue-apex-charts.js","webpack:///./js/components/ui/CBtn.vue","webpack:///./js/components/ui/CBtn.vue?94f6","webpack:///js/components/ui/CBtn.vue","webpack:///./js/components/ui/CBtn.vue?cde4","webpack:///./js/components/ui/CDropdown.vue?2f8b","webpack:///js/components/ui/CDropdown.vue","webpack:///./js/components/ui/CDropdown.vue?eeb7","webpack:///./js/components/ui/CDropdown.vue","webpack:///./js/components/ui/icons/AlertIcon.vue?fc4e","webpack:///./js/components/ui/icons/AlertIcon.vue","webpack:///./js/components/ui/icons/BookIcon.vue?c3d7","webpack:///./js/components/ui/icons/BookIcon.vue","webpack:///./js/components/ui/icons/CheckIcon.vue?ac79","webpack:///./js/components/ui/icons/CheckIcon.vue","webpack:///./js/components/ui/icons/ChevronLeftIcon.vue?a503","webpack:///./js/components/ui/icons/ChevronLeftIcon.vue","webpack:///./js/components/ui/icons/ChevronRightIcon.vue?85e4","webpack:///./js/components/ui/icons/ChevronRightIcon.vue","webpack:///./js/components/ui/icons/ClipboardCopyIcon.vue?b05a","webpack:///./js/components/ui/icons/ClipboardCopyIcon.vue","webpack:///./js/components/ui/icons/CopyIcon.vue?8fbd","webpack:///./js/components/ui/icons/CopyIcon.vue","webpack:///./js/components/ui/icons/ExclamationCircleIcon.vue?c7cd","webpack:///./js/components/ui/icons/ExclamationCircleIcon.vue","webpack:///./js/components/ui/icons/ExclamationTriangleIcon.vue?b20b","webpack:///./js/components/ui/icons/ExclamationTriangleIcon.vue","webpack:///./js/components/ui/icons/ExternalLinkIcon.vue?43a1","webpack:///./js/components/ui/icons/ExternalLinkIcon.vue","webpack:///./js/components/ui/icons/FlagIcon.vue?9d48","webpack:///./js/components/ui/icons/FlagIcon.vue","webpack:///./js/components/ui/icons/GithubIcon.vue?86a1","webpack:///./js/components/ui/icons/GithubIcon.vue","webpack:///./js/components/ui/icons/InfoCircleIcon.vue?241b","webpack:///./js/components/ui/icons/InfoCircleIcon.vue","webpack:///./js/components/ui/icons/LinkIcon.vue?2b59","webpack:///./js/components/ui/icons/LinkIcon.vue","webpack:///./js/components/ui/icons/PlugIcon.vue?b933","webpack:///./js/components/ui/icons/PlugIcon.vue","webpack:///./js/components/ui/icons/SearchIcon.vue?6de7","webpack:///./js/components/ui/icons/SearchIcon.vue","webpack:///./js/components/ui/icons/StarIcon.vue?fb05","webpack:///./js/components/ui/icons/StarIcon.vue","webpack:///./js/components/ui/icons/WorldIcon.vue?a308","webpack:///./js/components/ui/icons/WorldIcon.vue","webpack:///./js/components/ui/icons/XIcon.vue?188a","webpack:///./js/components/ui/icons/XIcon.vue","webpack:///./js/components/ui/CIcon.vue?44fa","webpack:///js/components/ui/CIcon.vue","webpack:///./js/components/ui/CIcon.vue","webpack:///./js/components/ui/CSpinner.vue","webpack:///./js/components/ui/CSpinner.vue?8b44","webpack:///js/components/ui/CSpinner.vue","webpack:///./js/components/ui/CSpinner.vue?75e7","webpack:///./js/components/ui/CTextbox.vue?b982","webpack:///js/components/ui/CTextbox.vue","webpack:///./js/components/ui/CTextbox.vue","webpack:///./main.js","webpack:///./js/filters/currency.js","webpack:///./js/filters/craft.js"],"sourcesContent":["/*!\n * accounting.js v0.4.1\n * Copyright 2014 Open Exchange Rates\n *\n * Freely distributable under the MIT license.\n * Portions of accounting.js are inspired or borrowed from underscore.js\n *\n * Full details and documentation:\n * http://openexchangerates.github.io/accounting.js/\n */\n\n(function(root, undefined) {\n\n\t/* --- Setup --- */\n\n\t// Create the local library object, to be exported or referenced globally later\n\tvar lib = {};\n\n\t// Current version\n\tlib.version = '0.4.1';\n\n\n\t/* --- Exposed settings --- */\n\n\t// The library's settings configuration object. Contains default parameters for\n\t// currency and number formatting\n\tlib.settings = {\n\t\tcurrency: {\n\t\t\tsymbol : \"$\",\t\t// default currency symbol is '$'\n\t\t\tformat : \"%s%v\",\t// controls output: %s = symbol, %v = value (can be object, see docs)\n\t\t\tdecimal : \".\",\t\t// decimal point separator\n\t\t\tthousand : \",\",\t\t// thousands separator\n\t\t\tprecision : 2,\t\t// decimal places\n\t\t\tgrouping : 3\t\t// digit grouping (not implemented yet)\n\t\t},\n\t\tnumber: {\n\t\t\tprecision : 0,\t\t// default precision on numbers is 0\n\t\t\tgrouping : 3,\t\t// digit grouping (not implemented yet)\n\t\t\tthousand : \",\",\n\t\t\tdecimal : \".\"\n\t\t}\n\t};\n\n\n\t/* --- Internal Helper Methods --- */\n\n\t// Store reference to possibly-available ECMAScript 5 methods for later\n\tvar nativeMap = Array.prototype.map,\n\t\tnativeIsArray = Array.isArray,\n\t\ttoString = Object.prototype.toString;\n\n\t/**\n\t * Tests whether supplied parameter is a string\n\t * from underscore.js\n\t */\n\tfunction isString(obj) {\n\t\treturn !!(obj === '' || (obj && obj.charCodeAt && obj.substr));\n\t}\n\n\t/**\n\t * Tests whether supplied parameter is a string\n\t * from underscore.js, delegates to ECMA5's native Array.isArray\n\t */\n\tfunction isArray(obj) {\n\t\treturn nativeIsArray ? nativeIsArray(obj) : toString.call(obj) === '[object Array]';\n\t}\n\n\t/**\n\t * Tests whether supplied parameter is a true object\n\t */\n\tfunction isObject(obj) {\n\t\treturn obj && toString.call(obj) === '[object Object]';\n\t}\n\n\t/**\n\t * Extends an object with a defaults object, similar to underscore's _.defaults\n\t *\n\t * Used for abstracting parameter handling from API methods\n\t */\n\tfunction defaults(object, defs) {\n\t\tvar key;\n\t\tobject = object || {};\n\t\tdefs = defs || {};\n\t\t// Iterate over object non-prototype properties:\n\t\tfor (key in defs) {\n\t\t\tif (defs.hasOwnProperty(key)) {\n\t\t\t\t// Replace values with defaults only if undefined (allow empty/zero values):\n\t\t\t\tif (object[key] == null) object[key] = defs[key];\n\t\t\t}\n\t\t}\n\t\treturn object;\n\t}\n\n\t/**\n\t * Implementation of `Array.map()` for iteration loops\n\t *\n\t * Returns a new Array as a result of calling `iterator` on each array value.\n\t * Defers to native Array.map if available\n\t */\n\tfunction map(obj, iterator, context) {\n\t\tvar results = [], i, j;\n\n\t\tif (!obj) return results;\n\n\t\t// Use native .map method if it exists:\n\t\tif (nativeMap && obj.map === nativeMap) return obj.map(iterator, context);\n\n\t\t// Fallback for native .map:\n\t\tfor (i = 0, j = obj.length; i < j; i++ ) {\n\t\t\tresults[i] = iterator.call(context, obj[i], i, obj);\n\t\t}\n\t\treturn results;\n\t}\n\n\t/**\n\t * Check and normalise the value of precision (must be positive integer)\n\t */\n\tfunction checkPrecision(val, base) {\n\t\tval = Math.round(Math.abs(val));\n\t\treturn isNaN(val)? base : val;\n\t}\n\n\n\t/**\n\t * Parses a format string or object and returns format obj for use in rendering\n\t *\n\t * `format` is either a string with the default (positive) format, or object\n\t * containing `pos` (required), `neg` and `zero` values (or a function returning\n\t * either a string or object)\n\t *\n\t * Either string or format.pos must contain \"%v\" (value) to be valid\n\t */\n\tfunction checkCurrencyFormat(format) {\n\t\tvar defaults = lib.settings.currency.format;\n\n\t\t// Allow function as format parameter (should return string or object):\n\t\tif ( typeof format === \"function\" ) format = format();\n\n\t\t// Format can be a string, in which case `value` (\"%v\") must be present:\n\t\tif ( isString( format ) && format.match(\"%v\") ) {\n\n\t\t\t// Create and return positive, negative and zero formats:\n\t\t\treturn {\n\t\t\t\tpos : format,\n\t\t\t\tneg : format.replace(\"-\", \"\").replace(\"%v\", \"-%v\"),\n\t\t\t\tzero : format\n\t\t\t};\n\n\t\t// If no format, or object is missing valid positive value, use defaults:\n\t\t} else if ( !format || !format.pos || !format.pos.match(\"%v\") ) {\n\n\t\t\t// If defaults is a string, casts it to an object for faster checking next time:\n\t\t\treturn ( !isString( defaults ) ) ? defaults : lib.settings.currency.format = {\n\t\t\t\tpos : defaults,\n\t\t\t\tneg : defaults.replace(\"%v\", \"-%v\"),\n\t\t\t\tzero : defaults\n\t\t\t};\n\n\t\t}\n\t\t// Otherwise, assume format was fine:\n\t\treturn format;\n\t}\n\n\n\t/* --- API Methods --- */\n\n\t/**\n\t * Takes a string/array of strings, removes all formatting/cruft and returns the raw float value\n\t * Alias: `accounting.parse(string)`\n\t *\n\t * Decimal must be included in the regular expression to match floats (defaults to\n\t * accounting.settings.number.decimal), so if the number uses a non-standard decimal \n\t * separator, provide it as the second argument.\n\t *\n\t * Also matches bracketed negatives (eg. \"$ (1.99)\" => -1.99)\n\t *\n\t * Doesn't throw any errors (`NaN`s become 0) but this may change in future\n\t */\n\tvar unformat = lib.unformat = lib.parse = function(value, decimal) {\n\t\t// Recursively unformat arrays:\n\t\tif (isArray(value)) {\n\t\t\treturn map(value, function(val) {\n\t\t\t\treturn unformat(val, decimal);\n\t\t\t});\n\t\t}\n\n\t\t// Fails silently (need decent errors):\n\t\tvalue = value || 0;\n\n\t\t// Return the value as-is if it's already a number:\n\t\tif (typeof value === \"number\") return value;\n\n\t\t// Default decimal point comes from settings, but could be set to eg. \",\" in opts:\n\t\tdecimal = decimal || lib.settings.number.decimal;\n\n\t\t // Build regex to strip out everything except digits, decimal point and minus sign:\n\t\tvar regex = new RegExp(\"[^0-9-\" + decimal + \"]\", [\"g\"]),\n\t\t\tunformatted = parseFloat(\n\t\t\t\t(\"\" + value)\n\t\t\t\t.replace(/\\((.*)\\)/, \"-$1\") // replace bracketed values with negatives\n\t\t\t\t.replace(regex, '') // strip out any cruft\n\t\t\t\t.replace(decimal, '.') // make sure decimal point is standard\n\t\t\t);\n\n\t\t// This will fail silently which may cause trouble, let's wait and see:\n\t\treturn !isNaN(unformatted) ? unformatted : 0;\n\t};\n\n\n\t/**\n\t * Implementation of toFixed() that treats floats more like decimals\n\t *\n\t * Fixes binary rounding issues (eg. (0.615).toFixed(2) === \"0.61\") that present\n\t * problems for accounting- and finance-related software.\n\t */\n\tvar toFixed = lib.toFixed = function(value, precision) {\n\t\tprecision = checkPrecision(precision, lib.settings.number.precision);\n\t\tvar power = Math.pow(10, precision);\n\n\t\t// Multiply up by precision, round accurately, then divide and use native toFixed():\n\t\treturn (Math.round(lib.unformat(value) * power) / power).toFixed(precision);\n\t};\n\n\n\t/**\n\t * Format a number, with comma-separated thousands and custom precision/decimal places\n\t * Alias: `accounting.format()`\n\t *\n\t * Localise by overriding the precision and thousand / decimal separators\n\t * 2nd parameter `precision` can be an object matching `settings.number`\n\t */\n\tvar formatNumber = lib.formatNumber = lib.format = function(number, precision, thousand, decimal) {\n\t\t// Resursively format arrays:\n\t\tif (isArray(number)) {\n\t\t\treturn map(number, function(val) {\n\t\t\t\treturn formatNumber(val, precision, thousand, decimal);\n\t\t\t});\n\t\t}\n\n\t\t// Clean up number:\n\t\tnumber = unformat(number);\n\n\t\t// Build options object from second param (if object) or all params, extending defaults:\n\t\tvar opts = defaults(\n\t\t\t\t(isObject(precision) ? precision : {\n\t\t\t\t\tprecision : precision,\n\t\t\t\t\tthousand : thousand,\n\t\t\t\t\tdecimal : decimal\n\t\t\t\t}),\n\t\t\t\tlib.settings.number\n\t\t\t),\n\n\t\t\t// Clean up precision\n\t\t\tusePrecision = checkPrecision(opts.precision),\n\n\t\t\t// Do some calc:\n\t\t\tnegative = number < 0 ? \"-\" : \"\",\n\t\t\tbase = parseInt(toFixed(Math.abs(number || 0), usePrecision), 10) + \"\",\n\t\t\tmod = base.length > 3 ? base.length % 3 : 0;\n\n\t\t// Format the number:\n\t\treturn negative + (mod ? base.substr(0, mod) + opts.thousand : \"\") + base.substr(mod).replace(/(\\d{3})(?=\\d)/g, \"$1\" + opts.thousand) + (usePrecision ? opts.decimal + toFixed(Math.abs(number), usePrecision).split('.')[1] : \"\");\n\t};\n\n\n\t/**\n\t * Format a number into currency\n\t *\n\t * Usage: accounting.formatMoney(number, symbol, precision, thousandsSep, decimalSep, format)\n\t * defaults: (0, \"$\", 2, \",\", \".\", \"%s%v\")\n\t *\n\t * Localise by overriding the symbol, precision, thousand / decimal separators and format\n\t * Second param can be an object matching `settings.currency` which is the easiest way.\n\t *\n\t * To do: tidy up the parameters\n\t */\n\tvar formatMoney = lib.formatMoney = function(number, symbol, precision, thousand, decimal, format) {\n\t\t// Resursively format arrays:\n\t\tif (isArray(number)) {\n\t\t\treturn map(number, function(val){\n\t\t\t\treturn formatMoney(val, symbol, precision, thousand, decimal, format);\n\t\t\t});\n\t\t}\n\n\t\t// Clean up number:\n\t\tnumber = unformat(number);\n\n\t\t// Build options object from second param (if object) or all params, extending defaults:\n\t\tvar opts = defaults(\n\t\t\t\t(isObject(symbol) ? symbol : {\n\t\t\t\t\tsymbol : symbol,\n\t\t\t\t\tprecision : precision,\n\t\t\t\t\tthousand : thousand,\n\t\t\t\t\tdecimal : decimal,\n\t\t\t\t\tformat : format\n\t\t\t\t}),\n\t\t\t\tlib.settings.currency\n\t\t\t),\n\n\t\t\t// Check format (returns object with pos, neg and zero):\n\t\t\tformats = checkCurrencyFormat(opts.format),\n\n\t\t\t// Choose which format to use for this value:\n\t\t\tuseFormat = number > 0 ? formats.pos : number < 0 ? formats.neg : formats.zero;\n\n\t\t// Return with currency symbol added:\n\t\treturn useFormat.replace('%s', opts.symbol).replace('%v', formatNumber(Math.abs(number), checkPrecision(opts.precision), opts.thousand, opts.decimal));\n\t};\n\n\n\t/**\n\t * Format a list of numbers into an accounting column, padding with whitespace\n\t * to line up currency symbols, thousand separators and decimals places\n\t *\n\t * List should be an array of numbers\n\t * Second parameter can be an object containing keys that match the params\n\t *\n\t * Returns array of accouting-formatted number strings of same length\n\t *\n\t * NB: `white-space:pre` CSS rule is required on the list container to prevent\n\t * browsers from collapsing the whitespace in the output strings.\n\t */\n\tlib.formatColumn = function(list, symbol, precision, thousand, decimal, format) {\n\t\tif (!list) return [];\n\n\t\t// Build options object from second param (if object) or all params, extending defaults:\n\t\tvar opts = defaults(\n\t\t\t\t(isObject(symbol) ? symbol : {\n\t\t\t\t\tsymbol : symbol,\n\t\t\t\t\tprecision : precision,\n\t\t\t\t\tthousand : thousand,\n\t\t\t\t\tdecimal : decimal,\n\t\t\t\t\tformat : format\n\t\t\t\t}),\n\t\t\t\tlib.settings.currency\n\t\t\t),\n\n\t\t\t// Check format (returns object with pos, neg and zero), only need pos for now:\n\t\t\tformats = checkCurrencyFormat(opts.format),\n\n\t\t\t// Whether to pad at start of string or after currency symbol:\n\t\t\tpadAfterSymbol = formats.pos.indexOf(\"%s\") < formats.pos.indexOf(\"%v\") ? true : false,\n\n\t\t\t// Store value for the length of the longest string in the column:\n\t\t\tmaxLength = 0,\n\n\t\t\t// Format the list according to options, store the length of the longest string:\n\t\t\tformatted = map(list, function(val, i) {\n\t\t\t\tif (isArray(val)) {\n\t\t\t\t\t// Recursively format columns if list is a multi-dimensional array:\n\t\t\t\t\treturn lib.formatColumn(val, opts);\n\t\t\t\t} else {\n\t\t\t\t\t// Clean up the value\n\t\t\t\t\tval = unformat(val);\n\n\t\t\t\t\t// Choose which format to use for this value (pos, neg or zero):\n\t\t\t\t\tvar useFormat = val > 0 ? formats.pos : val < 0 ? formats.neg : formats.zero,\n\n\t\t\t\t\t\t// Format this value, push into formatted list and save the length:\n\t\t\t\t\t\tfVal = useFormat.replace('%s', opts.symbol).replace('%v', formatNumber(Math.abs(val), checkPrecision(opts.precision), opts.thousand, opts.decimal));\n\n\t\t\t\t\tif (fVal.length > maxLength) maxLength = fVal.length;\n\t\t\t\t\treturn fVal;\n\t\t\t\t}\n\t\t\t});\n\n\t\t// Pad each number in the list and send back the column of numbers:\n\t\treturn map(formatted, function(val, i) {\n\t\t\t// Only if this is a string (not a nested array, which would have already been padded):\n\t\t\tif (isString(val) && val.length < maxLength) {\n\t\t\t\t// Depending on symbol position, pad after symbol or at index 0:\n\t\t\t\treturn padAfterSymbol ? val.replace(opts.symbol, opts.symbol+(new Array(maxLength - val.length + 1).join(\" \"))) : (new Array(maxLength - val.length + 1).join(\" \")) + val;\n\t\t\t}\n\t\t\treturn val;\n\t\t});\n\t};\n\n\n\t/* --- Module Definition --- */\n\n\t// Export accounting for CommonJS. If being loaded as an AMD module, define it as such.\n\t// Otherwise, just add `accounting` to the global object\n\tif (typeof exports !== 'undefined') {\n\t\tif (typeof module !== 'undefined' && module.exports) {\n\t\t\texports = module.exports = lib;\n\t\t}\n\t\texports.accounting = lib;\n\t} else if (typeof define === 'function' && define.amd) {\n\t\t// Return the library as an AMD module:\n\t\tdefine([], function() {\n\t\t\treturn lib;\n\t\t});\n\t} else {\n\t\t// Use accounting.noConflict to restore `accounting` back to its original value.\n\t\t// Returns a reference to the library's `accounting` object;\n\t\t// e.g. `var numbers = accounting.noConflict();`\n\t\tlib.noConflict = (function(oldAccounting) {\n\t\t\treturn function() {\n\t\t\t\t// Reset the value of the root's `accounting` variable:\n\t\t\t\troot.accounting = oldAccounting;\n\t\t\t\t// Delete the noConflict method:\n\t\t\t\tlib.noConflict = undefined;\n\t\t\t\t// Return reference to the library to re-assign it:\n\t\t\t\treturn lib;\n\t\t\t};\n\t\t})(root.accounting);\n\n\t\t// Declare `fx` on the root (global/window) object:\n\t\troot['accounting'] = lib;\n\t}\n\n\t// Root will be `window` in browser or `global` on the server:\n}(this));\n","/*!\n * ApexCharts v3.36.2\n * (c) 2018-2022 ApexCharts\n * Released under the MIT License.\n */\n!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).ApexCharts=e()}(this,(function(){\"use strict\";function t(t,e){var i=Object.keys(t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(t);e&&(a=a.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),i.push.apply(i,a)}return i}function e(e){for(var i=1;it.length)&&(e=t.length);for(var i=0,a=new Array(e);i>16,o=i>>8&255,n=255&i;return\"#\"+(16777216+65536*(Math.round((a-r)*s)+r)+256*(Math.round((a-o)*s)+o)+(Math.round((a-n)*s)+n)).toString(16).slice(1)}},{key:\"shadeColor\",value:function(e,i){return t.isColorHex(i)?this.shadeHexColor(e,i):this.shadeRGBColor(e,i)}}],[{key:\"bind\",value:function(t,e){return function(){return t.apply(e,arguments)}}},{key:\"isObject\",value:function(t){return t&&\"object\"===i(t)&&!Array.isArray(t)&&null!=t}},{key:\"is\",value:function(t,e){return Object.prototype.toString.call(e)===\"[object \"+t+\"]\"}},{key:\"listToArray\",value:function(t){var e,i=[];for(e=0;ee.length?t:e}))),t.length>e.length?t:e}),0)}},{key:\"hexToRgba\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"#999999\",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:.6;\"#\"!==t.substring(0,1)&&(t=\"#999999\");var i=t.replace(\"#\",\"\");i=i.match(new RegExp(\"(.{\"+i.length/3+\"})\",\"g\"));for(var a=0;a1&&void 0!==arguments[1]?arguments[1]:\"x\",i=t.toString().slice();return i=i.replace(/[` ~!@#$%^&*()|+\\=?;:'\",.<>{}[\\]\\\\/]/gi,e)}},{key:\"negToZero\",value:function(t){return t<0?0:t}},{key:\"moveIndexInArray\",value:function(t,e,i){if(i>=t.length)for(var a=i-t.length+1;a--;)t.push(void 0);return t.splice(i,0,t.splice(e,1)[0]),t}},{key:\"extractNumber\",value:function(t){return parseFloat(t.replace(/[^\\d.]*/g,\"\"))}},{key:\"findAncestor\",value:function(t,e){for(;(t=t.parentElement)&&!t.classList.contains(e););return t}},{key:\"setELstyles\",value:function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t.style.key=e[i])}},{key:\"isNumber\",value:function(t){return!isNaN(t)&&parseFloat(Number(t))===t&&!isNaN(parseInt(t,10))}},{key:\"isFloat\",value:function(t){return Number(t)===t&&t%1!=0}},{key:\"isSafari\",value:function(){return/^((?!chrome|android).)*safari/i.test(navigator.userAgent)}},{key:\"isFirefox\",value:function(){return navigator.userAgent.toLowerCase().indexOf(\"firefox\")>-1}},{key:\"isIE11\",value:function(){if(-1!==window.navigator.userAgent.indexOf(\"MSIE\")||window.navigator.appVersion.indexOf(\"Trident/\")>-1)return!0}},{key:\"isIE\",value:function(){var t=window.navigator.userAgent,e=t.indexOf(\"MSIE \");if(e>0)return parseInt(t.substring(e+5,t.indexOf(\".\",e)),10);if(t.indexOf(\"Trident/\")>0){var i=t.indexOf(\"rv:\");return parseInt(t.substring(i+3,t.indexOf(\".\",i)),10)}var a=t.indexOf(\"Edge/\");return a>0&&parseInt(t.substring(a+5,t.indexOf(\".\",a)),10)}}]),t}(),b=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.setEasingFunctions()}return r(t,[{key:\"setEasingFunctions\",value:function(){var t;if(!this.w.globals.easing){switch(this.w.config.chart.animations.easing){case\"linear\":t=\"-\";break;case\"easein\":t=\"<\";break;case\"easeout\":t=\">\";break;case\"easeinout\":default:t=\"<>\";break;case\"swing\":t=function(t){var e=1.70158;return(t-=1)*t*((e+1)*t+e)+1};break;case\"bounce\":t=function(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375};break;case\"elastic\":t=function(t){return t===!!t?t:Math.pow(2,-10*t)*Math.sin((t-.075)*(2*Math.PI)/.3)+1}}this.w.globals.easing=t}}},{key:\"animateLine\",value:function(t,e,i,a){t.attr(e).animate(a).attr(i)}},{key:\"animateMarker\",value:function(t,e,i,a,s,r){e||(e=0),t.attr({r:e,width:e,height:e}).animate(a,s).attr({r:i,width:i.width,height:i.height}).afterAll((function(){r()}))}},{key:\"animateCircle\",value:function(t,e,i,a,s){t.attr({r:e.r,cx:e.cx,cy:e.cy}).animate(a,s).attr({r:i.r,cx:i.cx,cy:i.cy})}},{key:\"animateRect\",value:function(t,e,i,a,s){t.attr(e).animate(a).attr(i).afterAll((function(){return s()}))}},{key:\"animatePathsGradually\",value:function(t){var e=t.el,i=t.realIndex,a=t.j,s=t.fill,r=t.pathFrom,o=t.pathTo,n=t.speed,l=t.delay,h=this.w,c=0;h.config.chart.animations.animateGradually.enabled&&(c=h.config.chart.animations.animateGradually.delay),h.config.chart.animations.dynamicAnimation.enabled&&h.globals.dataChanged&&\"bar\"!==h.config.chart.type&&(c=0),this.morphSVG(e,i,a,\"line\"!==h.config.chart.type||h.globals.comboCharts?s:\"stroke\",r,o,n,l*c)}},{key:\"showDelayedElements\",value:function(){this.w.globals.delayedElements.forEach((function(t){t.el.classList.remove(\"apexcharts-element-hidden\")}))}},{key:\"animationCompleted\",value:function(t){var e=this.w;e.globals.animationEnded||(e.globals.animationEnded=!0,this.showDelayedElements(),\"function\"==typeof e.config.chart.events.animationEnd&&e.config.chart.events.animationEnd(this.ctx,{el:t,w:e}))}},{key:\"morphSVG\",value:function(t,e,i,a,s,r,o,n){var l=this,h=this.w;s||(s=t.attr(\"pathFrom\")),r||(r=t.attr(\"pathTo\"));var c=function(t){return\"radar\"===h.config.chart.type&&(o=1),\"M 0 \".concat(h.globals.gridHeight)};(!s||s.indexOf(\"undefined\")>-1||s.indexOf(\"NaN\")>-1)&&(s=c()),(!r||r.indexOf(\"undefined\")>-1||r.indexOf(\"NaN\")>-1)&&(r=c()),h.globals.shouldAnimate||(o=1),t.plot(s).animate(1,h.globals.easing,n).plot(s).animate(o,h.globals.easing,n).plot(r).afterAll((function(){x.isNumber(i)?i===h.globals.series[h.globals.maxValsInArrayIndex].length-2&&h.globals.shouldAnimate&&l.animationCompleted(t):\"none\"!==a&&h.globals.shouldAnimate&&(!h.globals.comboCharts&&e===h.globals.series.length-1||h.globals.comboCharts)&&l.animationCompleted(t),l.showDelayedElements()}))}}]),t}(),v=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"getDefaultFilter\",value:function(t,e){var i=this.w;t.unfilter(!0),(new window.SVG.Filter).size(\"120%\",\"180%\",\"-5%\",\"-40%\"),\"none\"!==i.config.states.normal.filter?this.applyFilter(t,e,i.config.states.normal.filter.type,i.config.states.normal.filter.value):i.config.chart.dropShadow.enabled&&this.dropShadow(t,i.config.chart.dropShadow,e)}},{key:\"addNormalFilter\",value:function(t,e){var i=this.w;i.config.chart.dropShadow.enabled&&!t.node.classList.contains(\"apexcharts-marker\")&&this.dropShadow(t,i.config.chart.dropShadow,e)}},{key:\"addLightenFilter\",value:function(t,e,i){var a=this,s=this.w,r=i.intensity;t.unfilter(!0);new window.SVG.Filter;t.filter((function(t){var i=s.config.chart.dropShadow;(i.enabled?a.addShadow(t,e,i):t).componentTransfer({rgb:{type:\"linear\",slope:1.5,intercept:r}})})),t.filterer.node.setAttribute(\"filterUnits\",\"userSpaceOnUse\"),this._scaleFilterSize(t.filterer.node)}},{key:\"addDarkenFilter\",value:function(t,e,i){var a=this,s=this.w,r=i.intensity;t.unfilter(!0);new window.SVG.Filter;t.filter((function(t){var i=s.config.chart.dropShadow;(i.enabled?a.addShadow(t,e,i):t).componentTransfer({rgb:{type:\"linear\",slope:r}})})),t.filterer.node.setAttribute(\"filterUnits\",\"userSpaceOnUse\"),this._scaleFilterSize(t.filterer.node)}},{key:\"applyFilter\",value:function(t,e,i){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:.5;switch(i){case\"none\":this.addNormalFilter(t,e);break;case\"lighten\":this.addLightenFilter(t,e,{intensity:a});break;case\"darken\":this.addDarkenFilter(t,e,{intensity:a})}}},{key:\"addShadow\",value:function(t,e,i){var a=i.blur,s=i.top,r=i.left,o=i.color,n=i.opacity,l=t.flood(Array.isArray(o)?o[e]:o,n).composite(t.sourceAlpha,\"in\").offset(r,s).gaussianBlur(a).merge(t.source);return t.blend(t.source,l)}},{key:\"dropShadow\",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,a=e.top,s=e.left,r=e.blur,o=e.color,n=e.opacity,l=e.noUserSpaceOnUse,h=this.w;return t.unfilter(!0),x.isIE()&&\"radialBar\"===h.config.chart.type||(o=Array.isArray(o)?o[i]:o,t.filter((function(t){var e=null;e=x.isSafari()||x.isFirefox()||x.isIE()?t.flood(o,n).composite(t.sourceAlpha,\"in\").offset(s,a).gaussianBlur(r):t.flood(o,n).composite(t.sourceAlpha,\"in\").offset(s,a).gaussianBlur(r).merge(t.source),t.blend(t.source,e)})),l||t.filterer.node.setAttribute(\"filterUnits\",\"userSpaceOnUse\"),this._scaleFilterSize(t.filterer.node)),t}},{key:\"setSelectionFilter\",value:function(t,e,i){var a=this.w;if(void 0!==a.globals.selectedDataPoints[e]&&a.globals.selectedDataPoints[e].indexOf(i)>-1){t.node.setAttribute(\"selected\",!0);var s=a.config.states.active.filter;\"none\"!==s&&this.applyFilter(t,e,s.type,s.value)}}},{key:\"_scaleFilterSize\",value:function(t){!function(e){for(var i in e)e.hasOwnProperty(i)&&t.setAttribute(i,e[i])}({width:\"200%\",height:\"200%\",x:\"-50%\",y:\"-50%\"})}}]),t}(),m=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"roundPathCorners\",value:function(t,e){function i(t,e,i){var s=e.x-t.x,r=e.y-t.y,o=Math.sqrt(s*s+r*r);return a(t,e,Math.min(1,i/o))}function a(t,e,i){return{x:t.x+(e.x-t.x)*i,y:t.y+(e.y-t.y)*i}}function s(t,e){t.length>2&&(t[t.length-2]=e.x,t[t.length-1]=e.y)}function r(t){return{x:parseFloat(t[t.length-2]),y:parseFloat(t[t.length-1])}}var o=t.split(/[,\\s]/).reduce((function(t,e){var i=e.match(\"([a-zA-Z])(.+)\");return i?(t.push(i[1]),t.push(i[2])):t.push(e),t}),[]).reduce((function(t,e){return parseFloat(e)==e&&t.length?t[t.length-1].push(e):t.push([e]),t}),[]),n=[];if(o.length>1){var l=r(o[0]),h=null;\"Z\"==o[o.length-1][0]&&o[0].length>2&&(h=[\"L\",l.x,l.y],o[o.length-1]=h),n.push(o[0]);for(var c=1;c2&&\"L\"==g[0]&&u.length>2&&\"L\"==u[0]){var f,p,x=r(d),b=r(g),v=r(u);f=i(b,x,e),p=i(b,v,e),s(g,f),g.origPoint=b,n.push(g);var m=a(f,b,.5),y=a(b,p,.5),w=[\"C\",m.x,m.y,y.x,y.y,p.x,p.y];w.origPoint=b,n.push(w)}else n.push(g)}if(h){var k=r(n[n.length-1]);n.push([\"Z\"]),s(n[0],k)}}else n=o;return n.reduce((function(t,e){return t+e.join(\" \")+\" \"}),\"\")}},{key:\"drawLine\",value:function(t,e,i,a){var s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:\"#a8a8a8\",r=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0,o=arguments.length>6&&void 0!==arguments[6]?arguments[6]:null,n=arguments.length>7&&void 0!==arguments[7]?arguments[7]:\"butt\",l=this.w,h=l.globals.dom.Paper.line().attr({x1:t,y1:e,x2:i,y2:a,stroke:s,\"stroke-dasharray\":r,\"stroke-width\":o,\"stroke-linecap\":n});return h}},{key:\"drawRect\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,r=arguments.length>5&&void 0!==arguments[5]?arguments[5]:\"#fefefe\",o=arguments.length>6&&void 0!==arguments[6]?arguments[6]:1,n=arguments.length>7&&void 0!==arguments[7]?arguments[7]:null,l=arguments.length>8&&void 0!==arguments[8]?arguments[8]:null,h=arguments.length>9&&void 0!==arguments[9]?arguments[9]:0,c=this.w,d=c.globals.dom.Paper.rect();return d.attr({x:t,y:e,width:i>0?i:0,height:a>0?a:0,rx:s,ry:s,opacity:o,\"stroke-width\":null!==n?n:0,stroke:null!==l?l:\"none\",\"stroke-dasharray\":h}),d.node.setAttribute(\"fill\",r),d}},{key:\"drawPolygon\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"#e1e1e1\",i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"none\",s=this.w,r=s.globals.dom.Paper.polygon(t).attr({fill:a,stroke:e,\"stroke-width\":i});return r}},{key:\"drawCircle\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,i=this.w;t<0&&(t=0);var a=i.globals.dom.Paper.circle(2*t);return null!==e&&a.attr(e),a}},{key:\"drawPath\",value:function(t){var e=t.d,i=void 0===e?\"\":e,a=t.stroke,s=void 0===a?\"#a8a8a8\":a,r=t.strokeWidth,o=void 0===r?1:r,n=t.fill,l=t.fillOpacity,h=void 0===l?1:l,c=t.strokeOpacity,d=void 0===c?1:c,g=t.classes,u=t.strokeLinecap,f=void 0===u?null:u,p=t.strokeDashArray,x=void 0===p?0:p,b=this.w;return null===f&&(f=b.config.stroke.lineCap),(i.indexOf(\"undefined\")>-1||i.indexOf(\"NaN\")>-1)&&(i=\"M 0 \".concat(b.globals.gridHeight)),b.globals.dom.Paper.path(i).attr({fill:n,\"fill-opacity\":h,stroke:s,\"stroke-opacity\":d,\"stroke-linecap\":f,\"stroke-width\":o,\"stroke-dasharray\":x,class:g})}},{key:\"group\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,e=this.w,i=e.globals.dom.Paper.group();return null!==t&&i.attr(t),i}},{key:\"move\",value:function(t,e){var i=[\"M\",t,e].join(\" \");return i}},{key:\"line\",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=null;return null===i?a=[\" L\",t,e].join(\" \"):\"H\"===i?a=[\" H\",t].join(\" \"):\"V\"===i&&(a=[\" V\",e].join(\" \")),a}},{key:\"curve\",value:function(t,e,i,a,s,r){var o=[\"C\",t,e,i,a,s,r].join(\" \");return o}},{key:\"quadraticCurve\",value:function(t,e,i,a){return[\"Q\",t,e,i,a].join(\" \")}},{key:\"arc\",value:function(t,e,i,a,s,r,o){var n=arguments.length>7&&void 0!==arguments[7]&&arguments[7],l=\"A\";n&&(l=\"a\");var h=[l,t,e,i,a,s,r,o].join(\" \");return h}},{key:\"renderPaths\",value:function(t){var i,a=t.j,s=t.realIndex,r=t.pathFrom,o=t.pathTo,n=t.stroke,l=t.strokeWidth,h=t.strokeLinecap,c=t.fill,d=t.animationDelay,g=t.initialSpeed,u=t.dataChangeSpeed,f=t.className,p=t.shouldClipToGrid,x=void 0===p||p,m=t.bindEventsOnPaths,y=void 0===m||m,w=t.drawShadow,k=void 0===w||w,A=this.w,S=new v(this.ctx),C=new b(this.ctx),L=this.w.config.chart.animations.enabled,P=L&&this.w.config.chart.animations.dynamicAnimation.enabled,T=!!(L&&!A.globals.resized||P&&A.globals.dataChanged&&A.globals.shouldAnimate);T?i=r:(i=o,A.globals.animationEnded=!0);var M=A.config.stroke.dashArray,I=0;I=Array.isArray(M)?M[s]:A.config.stroke.dashArray;var z=this.drawPath({d:i,stroke:n,strokeWidth:l,fill:c,fillOpacity:1,classes:f,strokeLinecap:h,strokeDashArray:I});if(z.attr(\"index\",s),x&&z.attr({\"clip-path\":\"url(#gridRectMask\".concat(A.globals.cuid,\")\")}),\"none\"!==A.config.states.normal.filter.type)S.getDefaultFilter(z,s);else if(A.config.chart.dropShadow.enabled&&k&&(!A.config.chart.dropShadow.enabledOnSeries||A.config.chart.dropShadow.enabledOnSeries&&-1!==A.config.chart.dropShadow.enabledOnSeries.indexOf(s))){var X=A.config.chart.dropShadow;S.dropShadow(z,X,s)}y&&(z.node.addEventListener(\"mouseenter\",this.pathMouseEnter.bind(this,z)),z.node.addEventListener(\"mouseleave\",this.pathMouseLeave.bind(this,z)),z.node.addEventListener(\"mousedown\",this.pathMouseDown.bind(this,z))),z.attr({pathTo:o,pathFrom:r});var E={el:z,j:a,realIndex:s,pathFrom:r,pathTo:o,fill:c,strokeWidth:l,delay:d};return!L||A.globals.resized||A.globals.dataChanged?!A.globals.resized&&A.globals.dataChanged||C.showDelayedElements():C.animatePathsGradually(e(e({},E),{},{speed:g})),A.globals.dataChanged&&P&&T&&C.animatePathsGradually(e(e({},E),{},{speed:u})),z}},{key:\"drawPattern\",value:function(t,e,i){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:\"#a8a8a8\",s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,r=this.w,o=r.globals.dom.Paper.pattern(e,i,(function(r){\"horizontalLines\"===t?r.line(0,0,i,0).stroke({color:a,width:s+1}):\"verticalLines\"===t?r.line(0,0,0,e).stroke({color:a,width:s+1}):\"slantedLines\"===t?r.line(0,0,e,i).stroke({color:a,width:s}):\"squares\"===t?r.rect(e,i).fill(\"none\").stroke({color:a,width:s}):\"circles\"===t&&r.circle(e).fill(\"none\").stroke({color:a,width:s})}));return o}},{key:\"drawGradient\",value:function(t,e,i,a,s){var r,o=arguments.length>5&&void 0!==arguments[5]?arguments[5]:null,n=arguments.length>6&&void 0!==arguments[6]?arguments[6]:null,l=arguments.length>7&&void 0!==arguments[7]?arguments[7]:null,h=arguments.length>8&&void 0!==arguments[8]?arguments[8]:0,c=this.w;e.length<9&&0===e.indexOf(\"#\")&&(e=x.hexToRgba(e,a)),i.length<9&&0===i.indexOf(\"#\")&&(i=x.hexToRgba(i,s));var d=0,g=1,u=1,f=null;null!==n&&(d=void 0!==n[0]?n[0]/100:0,g=void 0!==n[1]?n[1]/100:1,u=void 0!==n[2]?n[2]/100:1,f=void 0!==n[3]?n[3]/100:null);var p=!(\"donut\"!==c.config.chart.type&&\"pie\"!==c.config.chart.type&&\"polarArea\"!==c.config.chart.type&&\"bubble\"!==c.config.chart.type);if(r=null===l||0===l.length?c.globals.dom.Paper.gradient(p?\"radial\":\"linear\",(function(t){t.at(d,e,a),t.at(g,i,s),t.at(u,i,s),null!==f&&t.at(f,e,a)})):c.globals.dom.Paper.gradient(p?\"radial\":\"linear\",(function(t){(Array.isArray(l[h])?l[h]:l).forEach((function(e){t.at(e.offset/100,e.color,e.opacity)}))})),p){var b=c.globals.gridWidth/2,v=c.globals.gridHeight/2;\"bubble\"!==c.config.chart.type?r.attr({gradientUnits:\"userSpaceOnUse\",cx:b,cy:v,r:o}):r.attr({cx:.5,cy:.5,r:.8,fx:.2,fy:.2})}else\"vertical\"===t?r.from(0,0).to(0,1):\"diagonal\"===t?r.from(0,0).to(1,1):\"horizontal\"===t?r.from(0,1).to(1,1):\"diagonal2\"===t&&r.from(1,0).to(0,1);return r}},{key:\"getTextBasedOnMaxWidth\",value:function(t){var e=t.text,i=t.maxWidth,a=t.fontSize,s=t.fontFamily,r=this.getTextRects(e,a,s),o=r.width/e.length,n=Math.floor(i/o);return i-1){var n=i.globals.selectedDataPoints[s].indexOf(r);i.globals.selectedDataPoints[s].splice(n,1)}}else{if(!i.config.states.active.allowMultipleDataPointsSelection&&i.globals.selectedDataPoints.length>0){i.globals.selectedDataPoints=[];var l=i.globals.dom.Paper.select(\".apexcharts-series path\").members,h=i.globals.dom.Paper.select(\".apexcharts-series circle, .apexcharts-series rect\").members,c=function(t){Array.prototype.forEach.call(t,(function(t){t.node.setAttribute(\"selected\",\"false\"),a.getDefaultFilter(t,s)}))};c(l),c(h)}t.node.setAttribute(\"selected\",\"true\"),o=\"true\",void 0===i.globals.selectedDataPoints[s]&&(i.globals.selectedDataPoints[s]=[]),i.globals.selectedDataPoints[s].push(r)}if(\"true\"===o){var d=i.config.states.active.filter;if(\"none\"!==d)a.applyFilter(t,s,d.type,d.value);else if(\"none\"!==i.config.states.hover.filter&&!i.globals.isTouchDevice){var g=i.config.states.hover.filter;a.applyFilter(t,s,g.type,g.value)}}else if(\"none\"!==i.config.states.active.filter.type)if(\"none\"===i.config.states.hover.filter.type||i.globals.isTouchDevice)a.getDefaultFilter(t,s);else{g=i.config.states.hover.filter;a.applyFilter(t,s,g.type,g.value)}\"function\"==typeof i.config.chart.events.dataPointSelection&&i.config.chart.events.dataPointSelection(e,this.ctx,{selectedDataPoints:i.globals.selectedDataPoints,seriesIndex:s,dataPointIndex:r,w:i}),e&&this.ctx.events.fireEvent(\"dataPointSelection\",[e,this.ctx,{selectedDataPoints:i.globals.selectedDataPoints,seriesIndex:s,dataPointIndex:r,w:i}])}},{key:\"rotateAroundCenter\",value:function(t){var e={};return t&&\"function\"==typeof t.getBBox&&(e=t.getBBox()),{x:e.x+e.width/2,y:e.y+e.height/2}}},{key:\"getTextRects\",value:function(t,e,i,a){var s=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],r=this.w,o=this.drawText({x:-200,y:-200,text:t,textAnchor:\"start\",fontSize:e,fontFamily:i,foreColor:\"#fff\",opacity:0});a&&o.attr(\"transform\",a),r.globals.dom.Paper.add(o);var n=o.bbox();return s||(n=o.node.getBoundingClientRect()),o.remove(),{width:n.width,height:n.height}}},{key:\"placeTextWithEllipsis\",value:function(t,e,i){if(\"function\"==typeof t.getComputedTextLength&&(t.textContent=e,e.length>0&&t.getComputedTextLength()>=i/1.1)){for(var a=e.length-3;a>0;a-=3)if(t.getSubStringLength(0,a)<=i/1.1)return void(t.textContent=e.substring(0,a)+\"...\");t.textContent=\".\"}}}],[{key:\"setAttrs\",value:function(t,e){for(var i in e)e.hasOwnProperty(i)&&t.setAttribute(i,e[i])}}]),t}(),y=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"getStackedSeriesTotals\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=this.w,i=[];if(0===e.globals.series.length)return i;for(var a=0;a0&&void 0!==arguments[0]?arguments[0]:null;return null===t?this.w.config.series.reduce((function(t,e){return t+e}),0):this.w.globals.series[t].reduce((function(t,e){return t+e}),0)}},{key:\"isSeriesNull\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return 0===(null===t?this.w.config.series.filter((function(t){return null!==t})):this.w.config.series[t].data.filter((function(t){return null!==t}))).length}},{key:\"seriesHaveSameValues\",value:function(t){return this.w.globals.series[t].every((function(t,e,i){return t===i[0]}))}},{key:\"getCategoryLabels\",value:function(t){var e=this.w,i=t.slice();return e.config.xaxis.convertedCatToNumeric&&(i=t.map((function(t,i){return e.config.xaxis.labels.formatter(t-e.globals.minX+1)}))),i}},{key:\"getLargestSeries\",value:function(){var t=this.w;t.globals.maxValsInArrayIndex=t.globals.series.map((function(t){return t.length})).indexOf(Math.max.apply(Math,t.globals.series.map((function(t){return t.length}))))}},{key:\"getLargestMarkerSize\",value:function(){var t=this.w,e=0;return t.globals.markers.size.forEach((function(t){e=Math.max(e,t)})),t.config.markers.discrete&&t.config.markers.discrete.length&&t.config.markers.discrete.forEach((function(t){e=Math.max(e,t.size)})),e>0&&(e+=t.config.markers.hover.sizeOffset+1),t.globals.markers.largestSize=e,e}},{key:\"getSeriesTotals\",value:function(){var t=this.w;t.globals.seriesTotals=t.globals.series.map((function(t,e){var i=0;if(Array.isArray(t))for(var a=0;at&&i.globals.seriesX[s][o]0&&(e=!0),{comboBarCount:i,comboCharts:e}}},{key:\"extendArrayProps\",value:function(t,e,i){return e.yaxis&&(e=t.extendYAxis(e,i)),e.annotations&&(e.annotations.yaxis&&(e=t.extendYAxisAnnotations(e)),e.annotations.xaxis&&(e=t.extendXAxisAnnotations(e)),e.annotations.points&&(e=t.extendPointAnnotations(e))),e}}]),t}(),w=function(){function t(e){a(this,t),this.w=e.w,this.annoCtx=e}return r(t,[{key:\"setOrientations\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,i=this.w;if(\"vertical\"===t.label.orientation){var a=null!==e?e:0,s=i.globals.dom.baseEl.querySelector(\".apexcharts-xaxis-annotations .apexcharts-xaxis-annotation-label[rel='\".concat(a,\"']\"));if(null!==s){var r=s.getBoundingClientRect();s.setAttribute(\"x\",parseFloat(s.getAttribute(\"x\"))-r.height+4),\"top\"===t.label.position?s.setAttribute(\"y\",parseFloat(s.getAttribute(\"y\"))+r.width):s.setAttribute(\"y\",parseFloat(s.getAttribute(\"y\"))-r.width);var o=this.annoCtx.graphics.rotateAroundCenter(s),n=o.x,l=o.y;s.setAttribute(\"transform\",\"rotate(-90 \".concat(n,\" \").concat(l,\")\"))}}}},{key:\"addBackgroundToAnno\",value:function(t,e){var i=this.w;if(!t||void 0===e.label.text||void 0!==e.label.text&&!String(e.label.text).trim())return null;var a=i.globals.dom.baseEl.querySelector(\".apexcharts-grid\").getBoundingClientRect(),s=t.getBoundingClientRect(),r=e.label.style.padding.left,o=e.label.style.padding.right,n=e.label.style.padding.top,l=e.label.style.padding.bottom;\"vertical\"===e.label.orientation&&(n=e.label.style.padding.left,l=e.label.style.padding.right,r=e.label.style.padding.top,o=e.label.style.padding.bottom);var h=s.left-a.left-r,c=s.top-a.top-n,d=this.annoCtx.graphics.drawRect(h-i.globals.barPadForNumericAxis,c,s.width+r+o,s.height+n+l,e.label.borderRadius,e.label.style.background,1,e.label.borderWidth,e.label.borderColor,0);return e.id&&d.node.classList.add(e.id),d}},{key:\"annotationsBackground\",value:function(){var t=this,e=this.w,i=function(i,a,s){var r=e.globals.dom.baseEl.querySelector(\".apexcharts-\".concat(s,\"-annotations .apexcharts-\").concat(s,\"-annotation-label[rel='\").concat(a,\"']\"));if(r){var o=r.parentNode,n=t.addBackgroundToAnno(r,i);n&&(o.insertBefore(n.node,r),i.label.mouseEnter&&n.node.addEventListener(\"mouseenter\",i.label.mouseEnter.bind(t,i)),i.label.mouseLeave&&n.node.addEventListener(\"mouseleave\",i.label.mouseLeave.bind(t,i)),i.label.click&&n.node.addEventListener(\"click\",i.label.click.bind(t,i)))}};e.config.annotations.xaxis.map((function(t,e){i(t,e,\"xaxis\")})),e.config.annotations.yaxis.map((function(t,e){i(t,e,\"yaxis\")})),e.config.annotations.points.map((function(t,e){i(t,e,\"point\")}))}},{key:\"getY1Y2\",value:function(t,e){var i,a=\"y1\"===t?e.y:e.y2,s=this.w;if(this.annoCtx.invertAxis){var r=s.globals.labels.indexOf(a);s.config.xaxis.convertedCatToNumeric&&(r=s.globals.categoryLabels.indexOf(a));var o=s.globals.dom.baseEl.querySelector(\".apexcharts-yaxis-texts-g text:nth-child(\"+(r+1)+\")\");o&&(i=parseFloat(o.getAttribute(\"y\")))}else{var n;if(s.config.yaxis[e.yAxisIndex].logarithmic)n=(a=new y(this.annoCtx.ctx).getLogVal(a,e.yAxisIndex))/s.globals.yLogRatio[e.yAxisIndex];else n=(a-s.globals.minYArr[e.yAxisIndex])/(s.globals.yRange[e.yAxisIndex]/s.globals.gridHeight);i=s.globals.gridHeight-n,!e.marker||void 0!==e.y&&null!==e.y||(i=0),s.config.yaxis[e.yAxisIndex]&&s.config.yaxis[e.yAxisIndex].reversed&&(i=n)}return\"string\"==typeof a&&a.indexOf(\"px\")>-1&&(i=parseFloat(a)),i}},{key:\"getX1X2\",value:function(t,e){var i=this.w,a=this.annoCtx.invertAxis?i.globals.minY:i.globals.minX,s=this.annoCtx.invertAxis?i.globals.maxY:i.globals.maxX,r=this.annoCtx.invertAxis?i.globals.yRange[0]:i.globals.xRange,o=(e.x-a)/(r/i.globals.gridWidth);this.annoCtx.inversedReversedAxis&&(o=(s-e.x)/(r/i.globals.gridWidth)),\"category\"!==i.config.xaxis.type&&!i.config.xaxis.convertedCatToNumeric||this.annoCtx.invertAxis||i.globals.dataFormatXNumeric||(o=this.getStringX(e.x));var n=(e.x2-a)/(r/i.globals.gridWidth);return this.annoCtx.inversedReversedAxis&&(n=(s-e.x2)/(r/i.globals.gridWidth)),\"category\"!==i.config.xaxis.type&&!i.config.xaxis.convertedCatToNumeric||this.annoCtx.invertAxis||i.globals.dataFormatXNumeric||(n=this.getStringX(e.x2)),void 0!==e.x&&null!==e.x||!e.marker||(o=i.globals.gridWidth),\"x1\"===t&&\"string\"==typeof e.x&&e.x.indexOf(\"px\")>-1&&(o=parseFloat(e.x)),\"x2\"===t&&\"string\"==typeof e.x2&&e.x2.indexOf(\"px\")>-1&&(n=parseFloat(e.x2)),\"x1\"===t?o:n}},{key:\"getStringX\",value:function(t){var e=this.w,i=t;e.config.xaxis.convertedCatToNumeric&&e.globals.categoryLabels.length&&(t=e.globals.categoryLabels.indexOf(t)+1);var a=e.globals.labels.indexOf(t),s=e.globals.dom.baseEl.querySelector(\".apexcharts-xaxis-texts-g text:nth-child(\"+(a+1)+\")\");return s&&(i=parseFloat(s.getAttribute(\"x\"))),i}}]),t}(),k=function(){function t(e){a(this,t),this.w=e.w,this.annoCtx=e,this.invertAxis=this.annoCtx.invertAxis,this.helpers=new w(this.annoCtx)}return r(t,[{key:\"addXaxisAnnotation\",value:function(t,e,i){var a,s=this.w,r=this.helpers.getX1X2(\"x1\",t),o=t.label.text,n=t.strokeDashArray;if(x.isNumber(r)){if(null===t.x2||void 0===t.x2){var l=this.annoCtx.graphics.drawLine(r+t.offsetX,0+t.offsetY,r+t.offsetX,s.globals.gridHeight+t.offsetY,t.borderColor,n,t.borderWidth);e.appendChild(l.node),t.id&&l.node.classList.add(t.id)}else{if((a=this.helpers.getX1X2(\"x2\",t))o){var h=o;o=a,a=h}var c=this.annoCtx.graphics.drawRect(0+t.offsetX,a+t.offsetY,this._getYAxisAnnotationWidth(t),o-a,0,t.fillColor,t.opacity,1,t.borderColor,r);c.node.classList.add(\"apexcharts-annotation-rect\"),c.attr(\"clip-path\",\"url(#gridRectMask\".concat(s.globals.cuid,\")\")),e.appendChild(c.node),t.id&&c.node.classList.add(t.id)}var d=\"right\"===t.label.position?s.globals.gridWidth:\"center\"===t.label.position?s.globals.gridWidth/2:0,g=this.annoCtx.graphics.drawText({x:d+t.label.offsetX,y:(null!=a?a:o)+t.label.offsetY-3,text:n,textAnchor:t.label.textAnchor,fontSize:t.label.style.fontSize,fontFamily:t.label.style.fontFamily,fontWeight:t.label.style.fontWeight,foreColor:t.label.style.color,cssClass:\"apexcharts-yaxis-annotation-label \".concat(t.label.style.cssClass,\" \").concat(t.id?t.id:\"\")});g.attr({rel:i}),e.appendChild(g.node)}},{key:\"_getYAxisAnnotationWidth\",value:function(t){var e=this.w;e.globals.gridWidth;return(t.width.indexOf(\"%\")>-1?e.globals.gridWidth*parseInt(t.width,10)/100:parseInt(t.width,10))+t.offsetX}},{key:\"drawYAxisAnnotations\",value:function(){var t=this,e=this.w,i=this.annoCtx.graphics.group({class:\"apexcharts-yaxis-annotations\"});return e.config.annotations.yaxis.map((function(e,a){t.addYaxisAnnotation(e,i.node,a)})),i}}]),t}(),S=function(){function t(e){a(this,t),this.w=e.w,this.annoCtx=e,this.helpers=new w(this.annoCtx)}return r(t,[{key:\"addPointAnnotation\",value:function(t,e,i){this.w;var a=this.helpers.getX1X2(\"x1\",t),s=this.helpers.getY1Y2(\"y1\",t);if(x.isNumber(a)){var r={pSize:t.marker.size,pointStrokeWidth:t.marker.strokeWidth,pointFillColor:t.marker.fillColor,pointStrokeColor:t.marker.strokeColor,shape:t.marker.shape,pRadius:t.marker.radius,class:\"apexcharts-point-annotation-marker \".concat(t.marker.cssClass,\" \").concat(t.id?t.id:\"\")},o=this.annoCtx.graphics.drawMarker(a+t.marker.offsetX,s+t.marker.offsetY,r);e.appendChild(o.node);var n=t.label.text?t.label.text:\"\",l=this.annoCtx.graphics.drawText({x:a+t.label.offsetX,y:s+t.label.offsetY-t.marker.size-parseFloat(t.label.style.fontSize)/1.6,text:n,textAnchor:t.label.textAnchor,fontSize:t.label.style.fontSize,fontFamily:t.label.style.fontFamily,fontWeight:t.label.style.fontWeight,foreColor:t.label.style.color,cssClass:\"apexcharts-point-annotation-label \".concat(t.label.style.cssClass,\" \").concat(t.id?t.id:\"\")});if(l.attr({rel:i}),e.appendChild(l.node),t.customSVG.SVG){var h=this.annoCtx.graphics.group({class:\"apexcharts-point-annotations-custom-svg \"+t.customSVG.cssClass});h.attr({transform:\"translate(\".concat(a+t.customSVG.offsetX,\", \").concat(s+t.customSVG.offsetY,\")\")}),h.node.innerHTML=t.customSVG.SVG,e.appendChild(h.node)}if(t.image.path){var c=t.image.width?t.image.width:20,d=t.image.height?t.image.height:20;o=this.annoCtx.addImage({x:a+t.image.offsetX-c/2,y:s+t.image.offsetY-d/2,width:c,height:d,path:t.image.path,appendTo:\".apexcharts-point-annotations\"})}t.mouseEnter&&o.node.addEventListener(\"mouseenter\",t.mouseEnter.bind(this,t)),t.mouseLeave&&o.node.addEventListener(\"mouseleave\",t.mouseLeave.bind(this,t)),t.click&&o.node.addEventListener(\"click\",t.click.bind(this,t))}}},{key:\"drawPointAnnotations\",value:function(){var t=this,e=this.w,i=this.annoCtx.graphics.group({class:\"apexcharts-point-annotations\"});return e.config.annotations.points.map((function(e,a){t.addPointAnnotation(e,i.node,a)})),i}}]),t}();var C={name:\"en\",options:{months:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortMonths:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],days:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],shortDays:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],toolbar:{exportToSVG:\"Download SVG\",exportToPNG:\"Download PNG\",exportToCSV:\"Download CSV\",menu:\"Menu\",selection:\"Selection\",selectionZoom:\"Selection Zoom\",zoomIn:\"Zoom In\",zoomOut:\"Zoom Out\",pan:\"Panning\",reset:\"Reset Zoom\"}}},L=function(){function t(){a(this,t),this.yAxis={show:!0,showAlways:!1,showForNullSeries:!0,seriesName:void 0,opposite:!1,reversed:!1,logarithmic:!1,logBase:10,tickAmount:void 0,forceNiceScale:!1,max:void 0,min:void 0,floating:!1,decimalsInFloat:void 0,labels:{show:!0,minWidth:0,maxWidth:160,offsetX:0,offsetY:0,align:void 0,rotate:0,padding:20,style:{colors:[],fontSize:\"11px\",fontWeight:400,fontFamily:void 0,cssClass:\"\"},formatter:void 0},axisBorder:{show:!1,color:\"#e0e0e0\",width:1,offsetX:0,offsetY:0},axisTicks:{show:!1,color:\"#e0e0e0\",width:6,offsetX:0,offsetY:0},title:{text:void 0,rotate:-90,offsetY:0,offsetX:0,style:{color:void 0,fontSize:\"11px\",fontWeight:900,fontFamily:void 0,cssClass:\"\"}},tooltip:{enabled:!1,offsetX:0},crosshairs:{show:!0,position:\"front\",stroke:{color:\"#b6b6b6\",width:1,dashArray:0}}},this.pointAnnotation={id:void 0,x:0,y:null,yAxisIndex:0,seriesIndex:0,mouseEnter:void 0,mouseLeave:void 0,click:void 0,marker:{size:4,fillColor:\"#fff\",strokeWidth:2,strokeColor:\"#333\",shape:\"circle\",offsetX:0,offsetY:0,radius:2,cssClass:\"\"},label:{borderColor:\"#c2c2c2\",borderWidth:1,borderRadius:2,text:void 0,textAnchor:\"middle\",offsetX:0,offsetY:0,mouseEnter:void 0,mouseLeave:void 0,click:void 0,style:{background:\"#fff\",color:void 0,fontSize:\"11px\",fontFamily:void 0,fontWeight:400,cssClass:\"\",padding:{left:5,right:5,top:2,bottom:2}}},customSVG:{SVG:void 0,cssClass:void 0,offsetX:0,offsetY:0},image:{path:void 0,width:20,height:20,offsetX:0,offsetY:0}},this.yAxisAnnotation={id:void 0,y:0,y2:null,strokeDashArray:1,fillColor:\"#c2c2c2\",borderColor:\"#c2c2c2\",borderWidth:1,opacity:.3,offsetX:0,offsetY:0,width:\"100%\",yAxisIndex:0,label:{borderColor:\"#c2c2c2\",borderWidth:1,borderRadius:2,text:void 0,textAnchor:\"end\",position:\"right\",offsetX:0,offsetY:-3,mouseEnter:void 0,mouseLeave:void 0,click:void 0,style:{background:\"#fff\",color:void 0,fontSize:\"11px\",fontFamily:void 0,fontWeight:400,cssClass:\"\",padding:{left:5,right:5,top:2,bottom:2}}}},this.xAxisAnnotation={id:void 0,x:0,x2:null,strokeDashArray:1,fillColor:\"#c2c2c2\",borderColor:\"#c2c2c2\",borderWidth:1,opacity:.3,offsetX:0,offsetY:0,label:{borderColor:\"#c2c2c2\",borderWidth:1,borderRadius:2,text:void 0,textAnchor:\"middle\",orientation:\"vertical\",position:\"top\",offsetX:0,offsetY:0,mouseEnter:void 0,mouseLeave:void 0,click:void 0,style:{background:\"#fff\",color:void 0,fontSize:\"11px\",fontFamily:void 0,fontWeight:400,cssClass:\"\",padding:{left:5,right:5,top:2,bottom:2}}}},this.text={x:0,y:0,text:\"\",textAnchor:\"start\",foreColor:void 0,fontSize:\"13px\",fontFamily:void 0,fontWeight:400,appendTo:\".apexcharts-annotations\",backgroundColor:\"transparent\",borderColor:\"#c2c2c2\",borderRadius:0,borderWidth:0,paddingLeft:4,paddingRight:4,paddingTop:2,paddingBottom:2}}return r(t,[{key:\"init\",value:function(){return{annotations:{position:\"front\",yaxis:[this.yAxisAnnotation],xaxis:[this.xAxisAnnotation],points:[this.pointAnnotation],texts:[],images:[],shapes:[]},chart:{animations:{enabled:!0,easing:\"easeinout\",speed:800,animateGradually:{delay:150,enabled:!0},dynamicAnimation:{enabled:!0,speed:350}},background:\"transparent\",locales:[C],defaultLocale:\"en\",dropShadow:{enabled:!1,enabledOnSeries:void 0,top:2,left:2,blur:4,color:\"#000\",opacity:.35},events:{animationEnd:void 0,beforeMount:void 0,mounted:void 0,updated:void 0,click:void 0,mouseMove:void 0,mouseLeave:void 0,xAxisLabelClick:void 0,legendClick:void 0,markerClick:void 0,selection:void 0,dataPointSelection:void 0,dataPointMouseEnter:void 0,dataPointMouseLeave:void 0,beforeZoom:void 0,beforeResetZoom:void 0,zoomed:void 0,scrolled:void 0,brushScrolled:void 0},foreColor:\"#373d3f\",fontFamily:\"Helvetica, Arial, sans-serif\",height:\"auto\",parentHeightOffset:15,redrawOnParentResize:!0,redrawOnWindowResize:!0,id:void 0,group:void 0,offsetX:0,offsetY:0,selection:{enabled:!1,type:\"x\",fill:{color:\"#24292e\",opacity:.1},stroke:{width:1,color:\"#24292e\",opacity:.4,dashArray:3},xaxis:{min:void 0,max:void 0},yaxis:{min:void 0,max:void 0}},sparkline:{enabled:!1},brush:{enabled:!1,autoScaleYaxis:!0,target:void 0},stacked:!1,stackType:\"normal\",toolbar:{show:!0,offsetX:0,offsetY:0,tools:{download:!0,selection:!0,zoom:!0,zoomin:!0,zoomout:!0,pan:!0,reset:!0,customIcons:[]},export:{csv:{filename:void 0,columnDelimiter:\",\",headerCategory:\"category\",headerValue:\"value\",dateFormatter:function(t){return new Date(t).toDateString()}},png:{filename:void 0},svg:{filename:void 0}},autoSelected:\"zoom\"},type:\"line\",width:\"100%\",zoom:{enabled:!0,type:\"x\",autoScaleYaxis:!1,zoomedArea:{fill:{color:\"#90CAF9\",opacity:.4},stroke:{color:\"#0D47A1\",opacity:.4,width:1}}}},plotOptions:{area:{fillTo:\"origin\"},bar:{horizontal:!1,columnWidth:\"70%\",barHeight:\"70%\",distributed:!1,borderRadius:0,borderRadiusApplication:\"around\",borderRadiusWhenStacked:\"last\",rangeBarOverlap:!0,rangeBarGroupRows:!1,colors:{ranges:[],backgroundBarColors:[],backgroundBarOpacity:1,backgroundBarRadius:0},dataLabels:{position:\"top\",maxItems:100,hideOverflowingLabels:!0,orientation:\"horizontal\",total:{enabled:!1,formatter:void 0,offsetX:0,offsetY:0,style:{color:\"#373d3f\",fontSize:\"12px\",fontFamily:void 0,fontWeight:600}}}},bubble:{zScaling:!0,minBubbleRadius:void 0,maxBubbleRadius:void 0},candlestick:{colors:{upward:\"#00B746\",downward:\"#EF403C\"},wick:{useFillColor:!0}},boxPlot:{colors:{upper:\"#00E396\",lower:\"#008FFB\"}},heatmap:{radius:2,enableShades:!0,shadeIntensity:.5,reverseNegativeShade:!1,distributed:!1,useFillColorAsStroke:!1,colorScale:{inverse:!1,ranges:[],min:void 0,max:void 0}},treemap:{enableShades:!0,shadeIntensity:.5,distributed:!1,reverseNegativeShade:!1,useFillColorAsStroke:!1,colorScale:{inverse:!1,ranges:[],min:void 0,max:void 0}},radialBar:{inverseOrder:!1,startAngle:0,endAngle:360,offsetX:0,offsetY:0,hollow:{margin:5,size:\"50%\",background:\"transparent\",image:void 0,imageWidth:150,imageHeight:150,imageOffsetX:0,imageOffsetY:0,imageClipped:!0,position:\"front\",dropShadow:{enabled:!1,top:0,left:0,blur:3,color:\"#000\",opacity:.5}},track:{show:!0,startAngle:void 0,endAngle:void 0,background:\"#f2f2f2\",strokeWidth:\"97%\",opacity:1,margin:5,dropShadow:{enabled:!1,top:0,left:0,blur:3,color:\"#000\",opacity:.5}},dataLabels:{show:!0,name:{show:!0,fontSize:\"16px\",fontFamily:void 0,fontWeight:600,color:void 0,offsetY:0,formatter:function(t){return t}},value:{show:!0,fontSize:\"14px\",fontFamily:void 0,fontWeight:400,color:void 0,offsetY:16,formatter:function(t){return t+\"%\"}},total:{show:!1,label:\"Total\",fontSize:\"16px\",fontWeight:600,fontFamily:void 0,color:void 0,formatter:function(t){return t.globals.seriesTotals.reduce((function(t,e){return t+e}),0)/t.globals.series.length+\"%\"}}}},pie:{customScale:1,offsetX:0,offsetY:0,startAngle:0,endAngle:360,expandOnClick:!0,dataLabels:{offset:0,minAngleToShowLabel:10},donut:{size:\"65%\",background:\"transparent\",labels:{show:!1,name:{show:!0,fontSize:\"16px\",fontFamily:void 0,fontWeight:600,color:void 0,offsetY:-10,formatter:function(t){return t}},value:{show:!0,fontSize:\"20px\",fontFamily:void 0,fontWeight:400,color:void 0,offsetY:10,formatter:function(t){return t}},total:{show:!1,showAlways:!1,label:\"Total\",fontSize:\"16px\",fontWeight:400,fontFamily:void 0,color:void 0,formatter:function(t){return t.globals.seriesTotals.reduce((function(t,e){return t+e}),0)}}}}},polarArea:{rings:{strokeWidth:1,strokeColor:\"#e8e8e8\"},spokes:{strokeWidth:1,connectorColors:\"#e8e8e8\"}},radar:{size:void 0,offsetX:0,offsetY:0,polygons:{strokeWidth:1,strokeColors:\"#e8e8e8\",connectorColors:\"#e8e8e8\",fill:{colors:void 0}}}},colors:void 0,dataLabels:{enabled:!0,enabledOnSeries:void 0,formatter:function(t){return null!==t?t:\"\"},textAnchor:\"middle\",distributed:!1,offsetX:0,offsetY:0,style:{fontSize:\"12px\",fontFamily:void 0,fontWeight:600,colors:void 0},background:{enabled:!0,foreColor:\"#fff\",borderRadius:2,padding:4,opacity:.9,borderWidth:1,borderColor:\"#fff\",dropShadow:{enabled:!1,top:1,left:1,blur:1,color:\"#000\",opacity:.45}},dropShadow:{enabled:!1,top:1,left:1,blur:1,color:\"#000\",opacity:.45}},fill:{type:\"solid\",colors:void 0,opacity:.85,gradient:{shade:\"dark\",type:\"horizontal\",shadeIntensity:.5,gradientToColors:void 0,inverseColors:!0,opacityFrom:1,opacityTo:1,stops:[0,50,100],colorStops:[]},image:{src:[],width:void 0,height:void 0},pattern:{style:\"squares\",width:6,height:6,strokeWidth:2}},forecastDataPoints:{count:0,fillOpacity:.5,strokeWidth:void 0,dashArray:4},grid:{show:!0,borderColor:\"#e0e0e0\",strokeDashArray:0,position:\"back\",xaxis:{lines:{show:!1}},yaxis:{lines:{show:!0}},row:{colors:void 0,opacity:.5},column:{colors:void 0,opacity:.5},padding:{top:0,right:10,bottom:0,left:12}},labels:[],legend:{show:!0,showForSingleSeries:!1,showForNullSeries:!0,showForZeroSeries:!0,floating:!1,position:\"bottom\",horizontalAlign:\"center\",inverseOrder:!1,fontSize:\"12px\",fontFamily:void 0,fontWeight:400,width:void 0,height:void 0,formatter:void 0,tooltipHoverFormatter:void 0,offsetX:-20,offsetY:4,customLegendItems:[],labels:{colors:void 0,useSeriesColors:!1},markers:{width:12,height:12,strokeWidth:0,fillColors:void 0,strokeColor:\"#fff\",radius:12,customHTML:void 0,offsetX:0,offsetY:0,onClick:void 0},itemMargin:{horizontal:5,vertical:2},onItemClick:{toggleDataSeries:!0},onItemHover:{highlightDataSeries:!0}},markers:{discrete:[],size:0,colors:void 0,strokeColors:\"#fff\",strokeWidth:2,strokeOpacity:.9,strokeDashArray:0,fillOpacity:1,shape:\"circle\",width:8,height:8,radius:2,offsetX:0,offsetY:0,onClick:void 0,onDblClick:void 0,showNullDataPoints:!0,hover:{size:void 0,sizeOffset:3}},noData:{text:void 0,align:\"center\",verticalAlign:\"middle\",offsetX:0,offsetY:0,style:{color:void 0,fontSize:\"14px\",fontFamily:void 0}},responsive:[],series:void 0,states:{normal:{filter:{type:\"none\",value:0}},hover:{filter:{type:\"lighten\",value:.1}},active:{allowMultipleDataPointsSelection:!1,filter:{type:\"darken\",value:.5}}},title:{text:void 0,align:\"left\",margin:5,offsetX:0,offsetY:0,floating:!1,style:{fontSize:\"14px\",fontWeight:900,fontFamily:void 0,color:void 0}},subtitle:{text:void 0,align:\"left\",margin:5,offsetX:0,offsetY:30,floating:!1,style:{fontSize:\"12px\",fontWeight:400,fontFamily:void 0,color:void 0}},stroke:{show:!0,curve:\"smooth\",lineCap:\"butt\",width:2,colors:void 0,dashArray:0,fill:{type:\"solid\",colors:void 0,opacity:.85,gradient:{shade:\"dark\",type:\"horizontal\",shadeIntensity:.5,gradientToColors:void 0,inverseColors:!0,opacityFrom:1,opacityTo:1,stops:[0,50,100],colorStops:[]}}},tooltip:{enabled:!0,enabledOnSeries:void 0,shared:!0,followCursor:!1,intersect:!1,inverseOrder:!1,custom:void 0,fillSeriesColor:!1,theme:\"light\",cssClass:\"\",style:{fontSize:\"12px\",fontFamily:void 0},onDatasetHover:{highlightDataSeries:!1},x:{show:!0,format:\"dd MMM\",formatter:void 0},y:{formatter:void 0,title:{formatter:function(t){return t?t+\": \":\"\"}}},z:{formatter:void 0,title:\"Size: \"},marker:{show:!0,fillColors:void 0},items:{display:\"flex\"},fixed:{enabled:!1,position:\"topRight\",offsetX:0,offsetY:0}},xaxis:{type:\"category\",categories:[],convertedCatToNumeric:!1,offsetX:0,offsetY:0,overwriteCategories:void 0,labels:{show:!0,rotate:-45,rotateAlways:!1,hideOverlappingLabels:!0,trim:!1,minHeight:void 0,maxHeight:120,showDuplicates:!0,style:{colors:[],fontSize:\"12px\",fontWeight:400,fontFamily:void 0,cssClass:\"\"},offsetX:0,offsetY:0,format:void 0,formatter:void 0,datetimeUTC:!0,datetimeFormatter:{year:\"yyyy\",month:\"MMM 'yy\",day:\"dd MMM\",hour:\"HH:mm\",minute:\"HH:mm:ss\",second:\"HH:mm:ss\"}},group:{groups:[],style:{colors:[],fontSize:\"12px\",fontWeight:400,fontFamily:void 0,cssClass:\"\"}},axisBorder:{show:!0,color:\"#e0e0e0\",width:\"100%\",height:1,offsetX:0,offsetY:0},axisTicks:{show:!0,color:\"#e0e0e0\",height:6,offsetX:0,offsetY:0},tickAmount:void 0,tickPlacement:\"on\",min:void 0,max:void 0,range:void 0,floating:!1,decimalsInFloat:void 0,position:\"bottom\",title:{text:void 0,offsetX:0,offsetY:0,style:{color:void 0,fontSize:\"12px\",fontWeight:900,fontFamily:void 0,cssClass:\"\"}},crosshairs:{show:!0,width:1,position:\"back\",opacity:.9,stroke:{color:\"#b6b6b6\",width:1,dashArray:3},fill:{type:\"solid\",color:\"#B1B9C4\",gradient:{colorFrom:\"#D8E3F0\",colorTo:\"#BED1E6\",stops:[0,100],opacityFrom:.4,opacityTo:.5}},dropShadow:{enabled:!1,left:0,top:0,blur:1,opacity:.4}},tooltip:{enabled:!0,offsetY:0,formatter:void 0,style:{fontSize:\"12px\",fontFamily:void 0}}},yaxis:this.yAxis,theme:{mode:\"light\",palette:\"palette1\",monochrome:{enabled:!1,color:\"#008FFB\",shadeTo:\"light\",shadeIntensity:.65}}}}}]),t}(),P=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.graphics=new m(this.ctx),this.w.globals.isBarHorizontal&&(this.invertAxis=!0),this.helpers=new w(this),this.xAxisAnnotations=new k(this),this.yAxisAnnotations=new A(this),this.pointsAnnotations=new S(this),this.w.globals.isBarHorizontal&&this.w.config.yaxis[0].reversed&&(this.inversedReversedAxis=!0),this.xDivision=this.w.globals.gridWidth/this.w.globals.dataPoints}return r(t,[{key:\"drawAxesAnnotations\",value:function(){var t=this.w;if(t.globals.axisCharts){for(var e=this.yAxisAnnotations.drawYAxisAnnotations(),i=this.xAxisAnnotations.drawXAxisAnnotations(),a=this.pointsAnnotations.drawPointAnnotations(),s=t.config.chart.animations.enabled,r=[e,i,a],o=[i.node,e.node,a.node],n=0;n<3;n++)t.globals.dom.elGraphical.add(r[n]),!s||t.globals.resized||t.globals.dataChanged||\"scatter\"!==t.config.chart.type&&\"bubble\"!==t.config.chart.type&&t.globals.dataPoints>1&&o[n].classList.add(\"apexcharts-element-hidden\"),t.globals.delayedElements.push({el:o[n],index:0});this.helpers.annotationsBackground()}}},{key:\"drawImageAnnos\",value:function(){var t=this;this.w.config.annotations.images.map((function(e,i){t.addImage(e,i)}))}},{key:\"drawTextAnnos\",value:function(){var t=this;this.w.config.annotations.texts.map((function(e,i){t.addText(e,i)}))}},{key:\"addXaxisAnnotation\",value:function(t,e,i){this.xAxisAnnotations.addXaxisAnnotation(t,e,i)}},{key:\"addYaxisAnnotation\",value:function(t,e,i){this.yAxisAnnotations.addYaxisAnnotation(t,e,i)}},{key:\"addPointAnnotation\",value:function(t,e,i){this.pointsAnnotations.addPointAnnotation(t,e,i)}},{key:\"addText\",value:function(t,e){var i=t.x,a=t.y,s=t.text,r=t.textAnchor,o=t.foreColor,n=t.fontSize,l=t.fontFamily,h=t.fontWeight,c=t.cssClass,d=t.backgroundColor,g=t.borderWidth,u=t.strokeDashArray,f=t.borderRadius,p=t.borderColor,x=t.appendTo,b=void 0===x?\".apexcharts-annotations\":x,v=t.paddingLeft,m=void 0===v?4:v,y=t.paddingRight,w=void 0===y?4:y,k=t.paddingBottom,A=void 0===k?2:k,S=t.paddingTop,C=void 0===S?2:S,L=this.w,P=this.graphics.drawText({x:i,y:a,text:s,textAnchor:r||\"start\",fontSize:n||\"12px\",fontWeight:h||\"regular\",fontFamily:l||L.config.chart.fontFamily,foreColor:o||L.config.chart.foreColor,cssClass:c}),T=L.globals.dom.baseEl.querySelector(b);T&&T.appendChild(P.node);var M=P.bbox();if(s){var I=this.graphics.drawRect(M.x-m,M.y-C,M.width+m+w,M.height+A+C,f,d||\"transparent\",1,g,p,u);T.insertBefore(I.node,P.node)}}},{key:\"addImage\",value:function(t,e){var i=this.w,a=t.path,s=t.x,r=void 0===s?0:s,o=t.y,n=void 0===o?0:o,l=t.width,h=void 0===l?20:l,c=t.height,d=void 0===c?20:c,g=t.appendTo,u=void 0===g?\".apexcharts-annotations\":g,f=i.globals.dom.Paper.image(a);f.size(h,d).move(r,n);var p=i.globals.dom.baseEl.querySelector(u);return p&&p.appendChild(f.node),f}},{key:\"addXaxisAnnotationExternal\",value:function(t,e,i){return this.addAnnotationExternal({params:t,pushToMemory:e,context:i,type:\"xaxis\",contextMethod:i.addXaxisAnnotation}),i}},{key:\"addYaxisAnnotationExternal\",value:function(t,e,i){return this.addAnnotationExternal({params:t,pushToMemory:e,context:i,type:\"yaxis\",contextMethod:i.addYaxisAnnotation}),i}},{key:\"addPointAnnotationExternal\",value:function(t,e,i){return void 0===this.invertAxis&&(this.invertAxis=i.w.globals.isBarHorizontal),this.addAnnotationExternal({params:t,pushToMemory:e,context:i,type:\"point\",contextMethod:i.addPointAnnotation}),i}},{key:\"addAnnotationExternal\",value:function(t){var e=t.params,i=t.pushToMemory,a=t.context,s=t.type,r=t.contextMethod,o=a,n=o.w,l=n.globals.dom.baseEl.querySelector(\".apexcharts-\".concat(s,\"-annotations\")),h=l.childNodes.length+1,c=new L,d=Object.assign({},\"xaxis\"===s?c.xAxisAnnotation:\"yaxis\"===s?c.yAxisAnnotation:c.pointAnnotation),g=x.extend(d,e);switch(s){case\"xaxis\":this.addXaxisAnnotation(g,l,h);break;case\"yaxis\":this.addYaxisAnnotation(g,l,h);break;case\"point\":this.addPointAnnotation(g,l,h)}var u=n.globals.dom.baseEl.querySelector(\".apexcharts-\".concat(s,\"-annotations .apexcharts-\").concat(s,\"-annotation-label[rel='\").concat(h,\"']\")),f=this.helpers.addBackgroundToAnno(u,g);return f&&l.insertBefore(f.node,u),i&&n.globals.memory.methodsToExec.push({context:o,id:g.id?g.id:x.randomId(),method:r,label:\"addAnnotation\",params:e}),a}},{key:\"clearAnnotations\",value:function(t){var e=t.w,i=e.globals.dom.baseEl.querySelectorAll(\".apexcharts-yaxis-annotations, .apexcharts-xaxis-annotations, .apexcharts-point-annotations\");e.globals.memory.methodsToExec.map((function(t,i){\"addText\"!==t.label&&\"addAnnotation\"!==t.label||e.globals.memory.methodsToExec.splice(i,1)})),i=x.listToArray(i),Array.prototype.forEach.call(i,(function(t){for(;t.firstChild;)t.removeChild(t.firstChild)}))}},{key:\"removeAnnotation\",value:function(t,e){var i=t.w,a=i.globals.dom.baseEl.querySelectorAll(\".\".concat(e));a&&(i.globals.memory.methodsToExec.map((function(t,a){t.id===e&&i.globals.memory.methodsToExec.splice(a,1)})),Array.prototype.forEach.call(a,(function(t){t.parentElement.removeChild(t)})))}}]),t}(),T=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.months31=[1,3,5,7,8,10,12],this.months30=[2,4,6,9,11],this.daysCntOfYear=[0,31,59,90,120,151,181,212,243,273,304,334]}return r(t,[{key:\"isValidDate\",value:function(t){return!isNaN(this.parseDate(t))}},{key:\"getTimeStamp\",value:function(t){return Date.parse(t)?this.w.config.xaxis.labels.datetimeUTC?new Date(new Date(t).toISOString().substr(0,25)).getTime():new Date(t).getTime():t}},{key:\"getDate\",value:function(t){return this.w.config.xaxis.labels.datetimeUTC?new Date(new Date(t).toUTCString()):new Date(t)}},{key:\"parseDate\",value:function(t){var e=Date.parse(t);if(!isNaN(e))return this.getTimeStamp(t);var i=Date.parse(t.replace(/-/g,\"/\").replace(/[a-z]+/gi,\" \"));return i=this.getTimeStamp(i)}},{key:\"parseDateWithTimezone\",value:function(t){return Date.parse(t.replace(/-/g,\"/\").replace(/[a-z]+/gi,\" \"))}},{key:\"formatDate\",value:function(t,e){var i=this.w.globals.locale,a=this.w.config.xaxis.labels.datetimeUTC,s=[\"\\0\"].concat(u(i.months)),r=[\"\\x01\"].concat(u(i.shortMonths)),o=[\"\\x02\"].concat(u(i.days)),n=[\"\\x03\"].concat(u(i.shortDays));function l(t,e){var i=t+\"\";for(e=e||2;i.length12?g-12:0===g?12:g;e=(e=(e=(e=e.replace(/(^|[^\\\\])HH+/g,\"$1\"+l(g))).replace(/(^|[^\\\\])H/g,\"$1\"+g)).replace(/(^|[^\\\\])hh+/g,\"$1\"+l(f))).replace(/(^|[^\\\\])h/g,\"$1\"+f);var p=a?t.getUTCMinutes():t.getMinutes();e=(e=e.replace(/(^|[^\\\\])mm+/g,\"$1\"+l(p))).replace(/(^|[^\\\\])m/g,\"$1\"+p);var x=a?t.getUTCSeconds():t.getSeconds();e=(e=e.replace(/(^|[^\\\\])ss+/g,\"$1\"+l(x))).replace(/(^|[^\\\\])s/g,\"$1\"+x);var b=a?t.getUTCMilliseconds():t.getMilliseconds();e=e.replace(/(^|[^\\\\])fff+/g,\"$1\"+l(b,3)),b=Math.round(b/10),e=e.replace(/(^|[^\\\\])ff/g,\"$1\"+l(b)),b=Math.round(b/10);var v=g<12?\"AM\":\"PM\";e=(e=(e=e.replace(/(^|[^\\\\])f/g,\"$1\"+b)).replace(/(^|[^\\\\])TT+/g,\"$1\"+v)).replace(/(^|[^\\\\])T/g,\"$1\"+v.charAt(0));var m=v.toLowerCase();e=(e=e.replace(/(^|[^\\\\])tt+/g,\"$1\"+m)).replace(/(^|[^\\\\])t/g,\"$1\"+m.charAt(0));var y=-t.getTimezoneOffset(),w=a||!y?\"Z\":y>0?\"+\":\"-\";if(!a){var k=(y=Math.abs(y))%60;w+=l(Math.floor(y/60))+\":\"+l(k)}e=e.replace(/(^|[^\\\\])K/g,\"$1\"+w);var A=(a?t.getUTCDay():t.getDay())+1;return e=(e=(e=(e=(e=e.replace(new RegExp(o[0],\"g\"),o[A])).replace(new RegExp(n[0],\"g\"),n[A])).replace(new RegExp(s[0],\"g\"),s[c])).replace(new RegExp(r[0],\"g\"),r[c])).replace(/\\\\(.)/g,\"$1\")}},{key:\"getTimeUnitsfromTimestamp\",value:function(t,e,i){var a=this.w;void 0!==a.config.xaxis.min&&(t=a.config.xaxis.min),void 0!==a.config.xaxis.max&&(e=a.config.xaxis.max);var s=this.getDate(t),r=this.getDate(e),o=this.formatDate(s,\"yyyy MM dd HH mm ss fff\").split(\" \"),n=this.formatDate(r,\"yyyy MM dd HH mm ss fff\").split(\" \");return{minMillisecond:parseInt(o[6],10),maxMillisecond:parseInt(n[6],10),minSecond:parseInt(o[5],10),maxSecond:parseInt(n[5],10),minMinute:parseInt(o[4],10),maxMinute:parseInt(n[4],10),minHour:parseInt(o[3],10),maxHour:parseInt(n[3],10),minDate:parseInt(o[2],10),maxDate:parseInt(n[2],10),minMonth:parseInt(o[1],10)-1,maxMonth:parseInt(n[1],10)-1,minYear:parseInt(o[0],10),maxYear:parseInt(n[0],10)}}},{key:\"isLeapYear\",value:function(t){return t%4==0&&t%100!=0||t%400==0}},{key:\"calculcateLastDaysOfMonth\",value:function(t,e,i){return this.determineDaysOfMonths(t,e)-i}},{key:\"determineDaysOfYear\",value:function(t){var e=365;return this.isLeapYear(t)&&(e=366),e}},{key:\"determineRemainingDaysOfYear\",value:function(t,e,i){var a=this.daysCntOfYear[e]+i;return e>1&&this.isLeapYear()&&a++,a}},{key:\"determineDaysOfMonths\",value:function(t,e){var i=30;switch(t=x.monthMod(t),!0){case this.months30.indexOf(t)>-1:2===t&&(i=this.isLeapYear(e)?29:28);break;case this.months31.indexOf(t)>-1:default:i=31}return i}}]),t}(),M=function(t){var e,i=t.ctx,a=t.seriesIndex,s=t.dataPointIndex,r=t.y1,o=t.y2,n=t.w,l=n.globals.seriesRangeStart[a][s],h=n.globals.seriesRangeEnd[a][s],c=n.globals.labels[s],d=n.config.series[a].name?n.config.series[a].name:\"\",g=n.config.tooltip.y.formatter,u=n.config.tooltip.y.title.formatter,f={w:n,seriesIndex:a,dataPointIndex:s,start:l,end:h};\"function\"==typeof u&&(d=u(d,f)),null!==(e=n.config.series[a].data[s])&&void 0!==e&&e.x&&(c=n.config.series[a].data[s].x+\":\"),\"function\"==typeof g&&(c=g(c,f)),Number.isFinite(r)&&Number.isFinite(o)&&(l=r,h=o);var p=\"\",x=\"\",b=n.globals.colors[a];if(void 0===n.config.tooltip.x.formatter)if(\"datetime\"===n.config.xaxis.type){var v=new T(i);p=v.formatDate(v.getDate(l),n.config.tooltip.x.format),x=v.formatDate(v.getDate(h),n.config.tooltip.x.format)}else p=l,x=h;else p=n.config.tooltip.x.formatter(l),x=n.config.tooltip.x.formatter(h);return{start:l,end:h,startVal:p,endVal:x,ylabel:c,color:b,seriesName:d}},I=function(t){var e=t.color,i=t.seriesName,a=t.ylabel,s=t.start,r=t.end,o=t.seriesIndex,n=t.dataPointIndex,l=t.ctx.tooltip.tooltipLabels.getFormatters(o);s=l.yLbFormatter(s),r=l.yLbFormatter(r);var h=l.yLbFormatter(t.w.globals.series[o][n]),c='\\n '.concat(s,'\\n - \\n ').concat(r,\"\\n \");return'
    '+(i||\"\")+'
    '+a+\" \"+(t.w.globals.comboCharts?\"rangeArea\"===t.w.config.series[o].type||\"rangeBar\"===t.w.config.series[o].type?c:\"\".concat(h,\"\"):c)+\"
    \"},z=function(){function t(e){a(this,t),this.opts=e}return r(t,[{key:\"line\",value:function(){return{chart:{animations:{easing:\"swing\"}},dataLabels:{enabled:!1},stroke:{width:5,curve:\"straight\"},markers:{size:0,hover:{sizeOffset:6}},xaxis:{crosshairs:{width:1}}}}},{key:\"sparkline\",value:function(t){this.opts.yaxis[0].show=!1,this.opts.yaxis[0].title.text=\"\",this.opts.yaxis[0].axisBorder.show=!1,this.opts.yaxis[0].axisTicks.show=!1,this.opts.yaxis[0].floating=!0;return x.extend(t,{grid:{show:!1,padding:{left:0,right:0,top:0,bottom:0}},legend:{show:!1},xaxis:{labels:{show:!1},tooltip:{enabled:!1},axisBorder:{show:!1},axisTicks:{show:!1}},chart:{toolbar:{show:!1},zoom:{enabled:!1}},dataLabels:{enabled:!1}})}},{key:\"bar\",value:function(){return{chart:{stacked:!1,animations:{easing:\"swing\"}},plotOptions:{bar:{dataLabels:{position:\"center\"}}},dataLabels:{style:{colors:[\"#fff\"]},background:{enabled:!1}},stroke:{width:0,lineCap:\"round\"},fill:{opacity:.85},legend:{markers:{shape:\"square\",radius:2,size:8}},tooltip:{shared:!1,intersect:!0},xaxis:{tooltip:{enabled:!1},tickPlacement:\"between\",crosshairs:{width:\"barWidth\",position:\"back\",fill:{type:\"gradient\"},dropShadow:{enabled:!1},stroke:{width:0}}}}}},{key:\"candlestick\",value:function(){var t=this;return{stroke:{width:1,colors:[\"#333\"]},fill:{opacity:1},dataLabels:{enabled:!1},tooltip:{shared:!0,custom:function(e){var i=e.seriesIndex,a=e.dataPointIndex,s=e.w;return t._getBoxTooltip(s,i,a,[\"Open\",\"High\",\"\",\"Low\",\"Close\"],\"candlestick\")}},states:{active:{filter:{type:\"none\"}}},xaxis:{crosshairs:{width:1}}}}},{key:\"boxPlot\",value:function(){var t=this;return{chart:{animations:{dynamicAnimation:{enabled:!1}}},stroke:{width:1,colors:[\"#24292e\"]},dataLabels:{enabled:!1},tooltip:{shared:!0,custom:function(e){var i=e.seriesIndex,a=e.dataPointIndex,s=e.w;return t._getBoxTooltip(s,i,a,[\"Minimum\",\"Q1\",\"Median\",\"Q3\",\"Maximum\"],\"boxPlot\")}},markers:{size:5,strokeWidth:1,strokeColors:\"#111\"},xaxis:{crosshairs:{width:1}}}}},{key:\"rangeBar\",value:function(){return{stroke:{width:0,lineCap:\"square\"},plotOptions:{bar:{borderRadius:0,dataLabels:{position:\"center\"}}},dataLabels:{enabled:!1,formatter:function(t,e){e.ctx;var i=e.seriesIndex,a=e.dataPointIndex,s=e.w,r=function(){var t=s.globals.seriesRangeStart[i][a];return s.globals.seriesRangeEnd[i][a]-t};return s.globals.comboCharts?\"rangeBar\"===s.config.series[i].type||\"rangeArea\"===s.config.series[i].type?r():t:r()},background:{enabled:!1},style:{colors:[\"#fff\"]}},tooltip:{shared:!1,followCursor:!0,custom:function(t){return t.w.config.plotOptions&&t.w.config.plotOptions.bar&&t.w.config.plotOptions.bar.horizontal?function(t){var i=M(t),a=i.color,s=i.seriesName,r=i.ylabel,o=i.startVal,n=i.endVal;return I(e(e({},t),{},{color:a,seriesName:s,ylabel:r,start:o,end:n}))}(t):function(t){var i=M(t),a=i.color,s=i.seriesName,r=i.ylabel,o=i.start,n=i.end;return I(e(e({},t),{},{color:a,seriesName:s,ylabel:r,start:o,end:n}))}(t)}},xaxis:{tickPlacement:\"between\",tooltip:{enabled:!1},crosshairs:{stroke:{width:0}}}}}},{key:\"area\",value:function(){return{stroke:{width:4,fill:{type:\"solid\",gradient:{inverseColors:!1,shade:\"light\",type:\"vertical\",opacityFrom:.65,opacityTo:.5,stops:[0,100,100]}}},fill:{type:\"gradient\",gradient:{inverseColors:!1,shade:\"light\",type:\"vertical\",opacityFrom:.65,opacityTo:.5,stops:[0,100,100]}},markers:{size:0,hover:{sizeOffset:6}},tooltip:{followCursor:!1}}}},{key:\"rangeArea\",value:function(){return{stroke:{curve:\"straight\",width:0},fill:{type:\"solid\",opacity:.6},markers:{size:0},states:{hover:{filter:{type:\"none\"}},active:{filter:{type:\"none\"}}},tooltip:{intersect:!1,shared:!0,followCursor:!0,custom:function(t){return function(t){var i=M(t),a=i.color,s=i.seriesName,r=i.ylabel,o=i.start,n=i.end;return I(e(e({},t),{},{color:a,seriesName:s,ylabel:r,start:o,end:n}))}(t)}}}}},{key:\"brush\",value:function(t){return x.extend(t,{chart:{toolbar:{autoSelected:\"selection\",show:!1},zoom:{enabled:!1}},dataLabels:{enabled:!1},stroke:{width:1},tooltip:{enabled:!1},xaxis:{tooltip:{enabled:!1}}})}},{key:\"stacked100\",value:function(t){t.dataLabels=t.dataLabels||{},t.dataLabels.formatter=t.dataLabels.formatter||void 0;var e=t.dataLabels.formatter;return t.yaxis.forEach((function(e,i){t.yaxis[i].min=0,t.yaxis[i].max=100})),\"bar\"===t.chart.type&&(t.dataLabels.formatter=e||function(t){return\"number\"==typeof t&&t?t.toFixed(0)+\"%\":t}),t}},{key:\"convertCatToNumeric\",value:function(t){return t.xaxis.convertedCatToNumeric=!0,t}},{key:\"convertCatToNumericXaxis\",value:function(t,e,i){t.xaxis.type=\"numeric\",t.xaxis.labels=t.xaxis.labels||{},t.xaxis.labels.formatter=t.xaxis.labels.formatter||function(t){return x.isNumber(t)?Math.floor(t):t};var a=t.xaxis.labels.formatter,s=t.xaxis.categories&&t.xaxis.categories.length?t.xaxis.categories:t.labels;return i&&i.length&&(s=i.map((function(t){return Array.isArray(t)?t:String(t)}))),s&&s.length&&(t.xaxis.labels.formatter=function(t){return x.isNumber(t)?a(s[Math.floor(t)-1]):a(t)}),t.xaxis.categories=[],t.labels=[],t.xaxis.tickAmount=t.xaxis.tickAmount||\"dataPoints\",t}},{key:\"bubble\",value:function(){return{dataLabels:{style:{colors:[\"#fff\"]}},tooltip:{shared:!1,intersect:!0},xaxis:{crosshairs:{width:0}},fill:{type:\"solid\",gradient:{shade:\"light\",inverse:!0,shadeIntensity:.55,opacityFrom:.4,opacityTo:.8}}}}},{key:\"scatter\",value:function(){return{dataLabels:{enabled:!1},tooltip:{shared:!1,intersect:!0},markers:{size:6,strokeWidth:1,hover:{sizeOffset:2}}}}},{key:\"heatmap\",value:function(){return{chart:{stacked:!1},fill:{opacity:1},dataLabels:{style:{colors:[\"#fff\"]}},stroke:{colors:[\"#fff\"]},tooltip:{followCursor:!0,marker:{show:!1},x:{show:!1}},legend:{position:\"top\",markers:{shape:\"square\",size:10,offsetY:2}},grid:{padding:{right:20}}}}},{key:\"treemap\",value:function(){return{chart:{zoom:{enabled:!1}},dataLabels:{style:{fontSize:14,fontWeight:600,colors:[\"#fff\"]}},stroke:{show:!0,width:2,colors:[\"#fff\"]},legend:{show:!1},fill:{gradient:{stops:[0,100]}},tooltip:{followCursor:!0,x:{show:!1}},grid:{padding:{left:0,right:0}},xaxis:{crosshairs:{show:!1},tooltip:{enabled:!1}}}}},{key:\"pie\",value:function(){return{chart:{toolbar:{show:!1}},plotOptions:{pie:{donut:{labels:{show:!1}}}},dataLabels:{formatter:function(t){return t.toFixed(1)+\"%\"},style:{colors:[\"#fff\"]},background:{enabled:!1},dropShadow:{enabled:!0}},stroke:{colors:[\"#fff\"]},fill:{opacity:1,gradient:{shade:\"light\",stops:[0,100]}},tooltip:{theme:\"dark\",fillSeriesColor:!0},legend:{position:\"right\"}}}},{key:\"donut\",value:function(){return{chart:{toolbar:{show:!1}},dataLabels:{formatter:function(t){return t.toFixed(1)+\"%\"},style:{colors:[\"#fff\"]},background:{enabled:!1},dropShadow:{enabled:!0}},stroke:{colors:[\"#fff\"]},fill:{opacity:1,gradient:{shade:\"light\",shadeIntensity:.35,stops:[80,100],opacityFrom:1,opacityTo:1}},tooltip:{theme:\"dark\",fillSeriesColor:!0},legend:{position:\"right\"}}}},{key:\"polarArea\",value:function(){return this.opts.yaxis[0].tickAmount=this.opts.yaxis[0].tickAmount?this.opts.yaxis[0].tickAmount:6,{chart:{toolbar:{show:!1}},dataLabels:{formatter:function(t){return t.toFixed(1)+\"%\"},enabled:!1},stroke:{show:!0,width:2},fill:{opacity:.7},tooltip:{theme:\"dark\",fillSeriesColor:!0},legend:{position:\"right\"}}}},{key:\"radar\",value:function(){return this.opts.yaxis[0].labels.offsetY=this.opts.yaxis[0].labels.offsetY?this.opts.yaxis[0].labels.offsetY:6,{dataLabels:{enabled:!1,style:{fontSize:\"11px\"}},stroke:{width:2},markers:{size:3,strokeWidth:1,strokeOpacity:1},fill:{opacity:.2},tooltip:{shared:!1,intersect:!0,followCursor:!0},grid:{show:!1},xaxis:{labels:{formatter:function(t){return t},style:{colors:[\"#a8a8a8\"],fontSize:\"11px\"}},tooltip:{enabled:!1},crosshairs:{show:!1}}}}},{key:\"radialBar\",value:function(){return{chart:{animations:{dynamicAnimation:{enabled:!0,speed:800}},toolbar:{show:!1}},fill:{gradient:{shade:\"dark\",shadeIntensity:.4,inverseColors:!1,type:\"diagonal2\",opacityFrom:1,opacityTo:1,stops:[70,98,100]}},legend:{show:!1,position:\"right\"},tooltip:{enabled:!1,fillSeriesColor:!0}}}},{key:\"_getBoxTooltip\",value:function(t,e,i,a,s){var r=t.globals.seriesCandleO[e][i],o=t.globals.seriesCandleH[e][i],n=t.globals.seriesCandleM[e][i],l=t.globals.seriesCandleL[e][i],h=t.globals.seriesCandleC[e][i];return t.config.series[e].type&&t.config.series[e].type!==s?'
    \\n '.concat(t.config.series[e].name?t.config.series[e].name:\"series-\"+(e+1),\": \").concat(t.globals.series[e][i],\"\\n
    \"):'
    ')+\"
    \".concat(a[0],': ')+r+\"
    \"+\"
    \".concat(a[1],': ')+o+\"
    \"+(n?\"
    \".concat(a[2],': ')+n+\"
    \":\"\")+\"
    \".concat(a[3],': ')+l+\"
    \"+\"
    \".concat(a[4],': ')+h+\"
    \"}}]),t}(),X=function(){function t(e){a(this,t),this.opts=e}return r(t,[{key:\"init\",value:function(t){var e=t.responsiveOverride,a=this.opts,s=new L,r=new z(a);this.chartType=a.chart.type,\"histogram\"===this.chartType&&(a.chart.type=\"bar\",a=x.extend({plotOptions:{bar:{columnWidth:\"99.99%\"}}},a)),a=this.extendYAxis(a),a=this.extendAnnotations(a);var o=s.init(),n={};if(a&&\"object\"===i(a)){var l={};l=-1!==[\"line\",\"area\",\"bar\",\"candlestick\",\"boxPlot\",\"rangeBar\",\"rangeArea\",\"histogram\",\"bubble\",\"scatter\",\"heatmap\",\"treemap\",\"pie\",\"polarArea\",\"donut\",\"radar\",\"radialBar\"].indexOf(a.chart.type)?r[a.chart.type]():r.line(),a.chart.brush&&a.chart.brush.enabled&&(l=r.brush(l)),a.chart.stacked&&\"100%\"===a.chart.stackType&&(a=r.stacked100(a)),this.checkForDarkTheme(window.Apex),this.checkForDarkTheme(a),a.xaxis=a.xaxis||window.Apex.xaxis||{},e||(a.xaxis.convertedCatToNumeric=!1),((a=this.checkForCatToNumericXAxis(this.chartType,l,a)).chart.sparkline&&a.chart.sparkline.enabled||window.Apex.chart&&window.Apex.chart.sparkline&&window.Apex.chart.sparkline.enabled)&&(l=r.sparkline(l)),n=x.extend(o,l)}var h=x.extend(n,window.Apex);return o=x.extend(h,a),o=this.handleUserInputErrors(o)}},{key:\"checkForCatToNumericXAxis\",value:function(t,e,i){var a=new z(i),s=(\"bar\"===t||\"boxPlot\"===t)&&i.plotOptions&&i.plotOptions.bar&&i.plotOptions.bar.horizontal,r=\"pie\"===t||\"polarArea\"===t||\"donut\"===t||\"radar\"===t||\"radialBar\"===t||\"heatmap\"===t,o=\"datetime\"!==i.xaxis.type&&\"numeric\"!==i.xaxis.type,n=i.xaxis.tickPlacement?i.xaxis.tickPlacement:e.xaxis&&e.xaxis.tickPlacement;return s||r||!o||\"between\"===n||(i=a.convertCatToNumeric(i)),i}},{key:\"extendYAxis\",value:function(t,e){var i=new L;(void 0===t.yaxis||!t.yaxis||Array.isArray(t.yaxis)&&0===t.yaxis.length)&&(t.yaxis={}),t.yaxis.constructor!==Array&&window.Apex.yaxis&&window.Apex.yaxis.constructor!==Array&&(t.yaxis=x.extend(t.yaxis,window.Apex.yaxis)),t.yaxis.constructor!==Array?t.yaxis=[x.extend(i.yAxis,t.yaxis)]:t.yaxis=x.extendArray(t.yaxis,i.yAxis);var a=!1;t.yaxis.forEach((function(t){t.logarithmic&&(a=!0)}));var s=t.series;return e&&!s&&(s=e.config.series),a&&s.length!==t.yaxis.length&&s.length&&(t.yaxis=s.map((function(e,a){if(e.name||(s[a].name=\"series-\".concat(a+1)),t.yaxis[a])return t.yaxis[a].seriesName=s[a].name,t.yaxis[a];var r=x.extend(i.yAxis,t.yaxis[0]);return r.show=!1,r}))),a&&s.length>1&&s.length!==t.yaxis.length&&console.warn(\"A multi-series logarithmic chart should have equal number of series and y-axes. Please make sure to equalize both.\"),t}},{key:\"extendAnnotations\",value:function(t){return void 0===t.annotations&&(t.annotations={},t.annotations.yaxis=[],t.annotations.xaxis=[],t.annotations.points=[]),t=this.extendYAxisAnnotations(t),t=this.extendXAxisAnnotations(t),t=this.extendPointAnnotations(t)}},{key:\"extendYAxisAnnotations\",value:function(t){var e=new L;return t.annotations.yaxis=x.extendArray(void 0!==t.annotations.yaxis?t.annotations.yaxis:[],e.yAxisAnnotation),t}},{key:\"extendXAxisAnnotations\",value:function(t){var e=new L;return t.annotations.xaxis=x.extendArray(void 0!==t.annotations.xaxis?t.annotations.xaxis:[],e.xAxisAnnotation),t}},{key:\"extendPointAnnotations\",value:function(t){var e=new L;return t.annotations.points=x.extendArray(void 0!==t.annotations.points?t.annotations.points:[],e.pointAnnotation),t}},{key:\"checkForDarkTheme\",value:function(t){t.theme&&\"dark\"===t.theme.mode&&(t.tooltip||(t.tooltip={}),\"light\"!==t.tooltip.theme&&(t.tooltip.theme=\"dark\"),t.chart.foreColor||(t.chart.foreColor=\"#f6f7f8\"),t.chart.background||(t.chart.background=\"#424242\"),t.theme.palette||(t.theme.palette=\"palette4\"))}},{key:\"handleUserInputErrors\",value:function(t){var e=t;if(e.tooltip.shared&&e.tooltip.intersect)throw new Error(\"tooltip.shared cannot be enabled when tooltip.intersect is true. Turn off any other option by setting it to false.\");if(\"bar\"===e.chart.type&&e.plotOptions.bar.horizontal){if(e.yaxis.length>1)throw new Error(\"Multiple Y Axis for bars are not supported. Switch to column chart by setting plotOptions.bar.horizontal=false\");e.yaxis[0].reversed&&(e.yaxis[0].opposite=!0),e.xaxis.tooltip.enabled=!1,e.yaxis[0].tooltip.enabled=!1,e.chart.zoom.enabled=!1}return\"bar\"!==e.chart.type&&\"rangeBar\"!==e.chart.type||e.tooltip.shared&&\"barWidth\"===e.xaxis.crosshairs.width&&e.series.length>1&&(e.xaxis.crosshairs.width=\"tickWidth\"),\"candlestick\"!==e.chart.type&&\"boxPlot\"!==e.chart.type||e.yaxis[0].reversed&&(console.warn(\"Reversed y-axis in \".concat(e.chart.type,\" chart is not supported.\")),e.yaxis[0].reversed=!1),e}}]),t}(),E=function(){function t(){a(this,t)}return r(t,[{key:\"initGlobalVars\",value:function(t){t.series=[],t.seriesCandleO=[],t.seriesCandleH=[],t.seriesCandleM=[],t.seriesCandleL=[],t.seriesCandleC=[],t.seriesRangeStart=[],t.seriesRangeEnd=[],t.seriesRange=[],t.seriesPercent=[],t.seriesGoals=[],t.seriesX=[],t.seriesZ=[],t.seriesNames=[],t.seriesTotals=[],t.seriesLog=[],t.seriesColors=[],t.stackedSeriesTotals=[],t.seriesXvalues=[],t.seriesYvalues=[],t.labels=[],t.hasGroups=!1,t.groups=[],t.categoryLabels=[],t.timescaleLabels=[],t.noLabelsProvided=!1,t.resizeTimer=null,t.selectionResizeTimer=null,t.delayedElements=[],t.pointsArray=[],t.dataLabelsRects=[],t.isXNumeric=!1,t.xaxisLabelsCount=0,t.skipLastTimelinelabel=!1,t.skipFirstTimelinelabel=!1,t.isDataXYZ=!1,t.isMultiLineX=!1,t.isMultipleYAxis=!1,t.maxY=-Number.MAX_VALUE,t.minY=Number.MIN_VALUE,t.minYArr=[],t.maxYArr=[],t.maxX=-Number.MAX_VALUE,t.minX=Number.MAX_VALUE,t.initialMaxX=-Number.MAX_VALUE,t.initialMinX=Number.MAX_VALUE,t.maxDate=0,t.minDate=Number.MAX_VALUE,t.minZ=Number.MAX_VALUE,t.maxZ=-Number.MAX_VALUE,t.minXDiff=Number.MAX_VALUE,t.yAxisScale=[],t.xAxisScale=null,t.xAxisTicksPositions=[],t.yLabelsCoords=[],t.yTitleCoords=[],t.barPadForNumericAxis=0,t.padHorizontal=0,t.xRange=0,t.yRange=[],t.zRange=0,t.dataPoints=0,t.xTickAmount=0}},{key:\"globalVars\",value:function(t){return{chartID:null,cuid:null,events:{beforeMount:[],mounted:[],updated:[],clicked:[],selection:[],dataPointSelection:[],zoomed:[],scrolled:[]},colors:[],clientX:null,clientY:null,fill:{colors:[]},stroke:{colors:[]},dataLabels:{style:{colors:[]}},radarPolygons:{fill:{colors:[]}},markers:{colors:[],size:t.markers.size,largestSize:0},animationEnded:!1,isTouchDevice:\"ontouchstart\"in window||navigator.msMaxTouchPoints,isDirty:!1,isExecCalled:!1,initialConfig:null,initialSeries:[],lastXAxis:[],lastYAxis:[],columnSeries:null,labels:[],timescaleLabels:[],noLabelsProvided:!1,allSeriesCollapsed:!1,collapsedSeries:[],collapsedSeriesIndices:[],ancillaryCollapsedSeries:[],ancillaryCollapsedSeriesIndices:[],risingSeries:[],dataFormatXNumeric:!1,capturedSeriesIndex:-1,capturedDataPointIndex:-1,selectedDataPoints:[],goldenPadding:35,invalidLogScale:!1,ignoreYAxisIndexes:[],yAxisSameScaleIndices:[],maxValsInArrayIndex:0,radialSize:0,selection:void 0,zoomEnabled:\"zoom\"===t.chart.toolbar.autoSelected&&t.chart.toolbar.tools.zoom&&t.chart.zoom.enabled,panEnabled:\"pan\"===t.chart.toolbar.autoSelected&&t.chart.toolbar.tools.pan,selectionEnabled:\"selection\"===t.chart.toolbar.autoSelected&&t.chart.toolbar.tools.selection,yaxis:null,mousedown:!1,lastClientPosition:{},visibleXRange:void 0,yValueDecimal:0,total:0,SVGNS:\"http://www.w3.org/2000/svg\",svgWidth:0,svgHeight:0,noData:!1,locale:{},dom:{},memory:{methodsToExec:[]},shouldAnimate:!0,skipLastTimelinelabel:!1,skipFirstTimelinelabel:!1,delayedElements:[],axisCharts:!0,isDataXYZ:!1,resized:!1,resizeTimer:null,comboCharts:!1,dataChanged:!1,previousPaths:[],allSeriesHasEqualX:!0,pointsArray:[],dataLabelsRects:[],lastDrawnDataLabelsIndexes:[],hasNullValues:!1,easing:null,zoomed:!1,gridWidth:0,gridHeight:0,rotateXLabels:!1,defaultLabels:!1,xLabelFormatter:void 0,yLabelFormatters:[],xaxisTooltipFormatter:void 0,ttKeyFormatter:void 0,ttVal:void 0,ttZFormatter:void 0,LINE_HEIGHT_RATIO:1.618,xAxisLabelsHeight:0,xAxisGroupLabelsHeight:0,xAxisLabelsWidth:0,yAxisLabelsWidth:0,scaleX:1,scaleY:1,translateX:0,translateY:0,translateYAxisX:[],yAxisWidths:[],translateXAxisY:0,translateXAxisX:0,tooltip:null}}},{key:\"init\",value:function(t){var e=this.globalVars(t);return this.initGlobalVars(e),e.initialConfig=x.extend({},t),e.initialSeries=x.clone(t.series),e.lastXAxis=x.clone(e.initialConfig.xaxis),e.lastYAxis=x.clone(e.initialConfig.yaxis),e}}]),t}(),Y=function(){function t(e){a(this,t),this.opts=e}return r(t,[{key:\"init\",value:function(){var t=new X(this.opts).init({responsiveOverride:!1});return{config:t,globals:(new E).init(t)}}}]),t}(),F=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.opts=null,this.seriesIndex=0}return r(t,[{key:\"clippedImgArea\",value:function(t){var e=this.w,i=e.config,a=parseInt(e.globals.gridWidth,10),s=parseInt(e.globals.gridHeight,10),r=a>s?a:s,o=t.image,n=0,l=0;void 0===t.width&&void 0===t.height?void 0!==i.fill.image.width&&void 0!==i.fill.image.height?(n=i.fill.image.width+1,l=i.fill.image.height):(n=r+1,l=r):(n=t.width,l=t.height);var h=document.createElementNS(e.globals.SVGNS,\"pattern\");m.setAttrs(h,{id:t.patternID,patternUnits:t.patternUnits?t.patternUnits:\"userSpaceOnUse\",width:n+\"px\",height:l+\"px\"});var c=document.createElementNS(e.globals.SVGNS,\"image\");h.appendChild(c),c.setAttributeNS(window.SVG.xlink,\"href\",o),m.setAttrs(c,{x:0,y:0,preserveAspectRatio:\"none\",width:n+\"px\",height:l+\"px\"}),c.style.opacity=t.opacity,e.globals.dom.elDefs.node.appendChild(h)}},{key:\"getSeriesIndex\",value:function(t){var e=this.w;return(\"bar\"===e.config.chart.type||\"rangeBar\"===e.config.chart.type)&&e.config.plotOptions.bar.distributed||\"heatmap\"===e.config.chart.type||\"treemap\"===e.config.chart.type?this.seriesIndex=t.seriesNumber:this.seriesIndex=t.seriesNumber%e.globals.series.length,this.seriesIndex}},{key:\"fillPath\",value:function(t){var e=this.w;this.opts=t;var i,a,s,r=this.w.config;this.seriesIndex=this.getSeriesIndex(t);var o=this.getFillColors()[this.seriesIndex];void 0!==e.globals.seriesColors[this.seriesIndex]&&(o=e.globals.seriesColors[this.seriesIndex]),\"function\"==typeof o&&(o=o({seriesIndex:this.seriesIndex,dataPointIndex:t.dataPointIndex,value:t.value,w:e}));var n=t.fillType?t.fillType:this.getFillType(this.seriesIndex),l=Array.isArray(r.fill.opacity)?r.fill.opacity[this.seriesIndex]:r.fill.opacity;t.color&&(o=t.color);var h=o;if(-1===o.indexOf(\"rgb\")?o.length<9&&(h=x.hexToRgba(o,l)):o.indexOf(\"rgba\")>-1&&(l=x.getOpacityFromRGBA(o)),t.opacity&&(l=t.opacity),\"pattern\"===n&&(a=this.handlePatternFill({fillConfig:t.fillConfig,patternFill:a,fillColor:o,fillOpacity:l,defaultColor:h})),\"gradient\"===n&&(s=this.handleGradientFill({fillConfig:t.fillConfig,fillColor:o,fillOpacity:l,i:this.seriesIndex})),\"image\"===n){var c=r.fill.image.src,d=t.patternID?t.patternID:\"\";this.clippedImgArea({opacity:l,image:Array.isArray(c)?t.seriesNumber-1&&(u=x.getOpacityFromRGBA(g));var f=void 0===o.gradient.opacityTo?a:Array.isArray(o.gradient.opacityTo)?o.gradient.opacityTo[r]:o.gradient.opacityTo;if(void 0===o.gradient.gradientToColors||0===o.gradient.gradientToColors.length)n=\"dark\"===o.gradient.shade?c.shadeColor(-1*parseFloat(o.gradient.shadeIntensity),i.indexOf(\"rgb\")>-1?x.rgb2hex(i):i):c.shadeColor(parseFloat(o.gradient.shadeIntensity),i.indexOf(\"rgb\")>-1?x.rgb2hex(i):i);else if(o.gradient.gradientToColors[l.seriesNumber]){var p=o.gradient.gradientToColors[l.seriesNumber];n=p,p.indexOf(\"rgba\")>-1&&(f=x.getOpacityFromRGBA(p))}else n=i;if(o.gradient.gradientFrom&&(g=o.gradient.gradientFrom),o.gradient.gradientTo&&(n=o.gradient.gradientTo),o.gradient.inverseColors){var b=g;g=n,n=b}return g.indexOf(\"rgb\")>-1&&(g=x.rgb2hex(g)),n.indexOf(\"rgb\")>-1&&(n=x.rgb2hex(n)),h.drawGradient(d,g,n,u,f,l.size,o.gradient.stops,o.gradient.colorStops,r)}}]),t}(),R=function(){function t(e,i){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"setGlobalMarkerSize\",value:function(){var t=this.w;if(t.globals.markers.size=Array.isArray(t.config.markers.size)?t.config.markers.size:[t.config.markers.size],t.globals.markers.size.length>0){if(t.globals.markers.size.length4&&void 0!==arguments[4]&&arguments[4],o=this.w,n=e,l=t,h=null,c=new m(this.ctx),d=o.config.markers.discrete&&o.config.markers.discrete.length;if((o.globals.markers.size[e]>0||r||d)&&(h=c.group({class:r||d?\"\":\"apexcharts-series-markers\"})).attr(\"clip-path\",\"url(#gridRectMarkerMask\".concat(o.globals.cuid,\")\")),Array.isArray(l.x))for(var g=0;g0:o.config.markers.size>0;if(p||r||d){x.isNumber(l.y[g])?f+=\" w\".concat(x.randomId()):f=\"apexcharts-nullpoint\";var b=this.getMarkerConfig({cssClass:f,seriesIndex:e,dataPointIndex:u});o.config.series[n].data[u]&&(o.config.series[n].data[u].fillColor&&(b.pointFillColor=o.config.series[n].data[u].fillColor),o.config.series[n].data[u].strokeColor&&(b.pointStrokeColor=o.config.series[n].data[u].strokeColor)),a&&(b.pSize=a),(s=c.drawMarker(l.x[g],l.y[g],b)).attr(\"rel\",u),s.attr(\"j\",u),s.attr(\"index\",e),s.node.setAttribute(\"default-marker-size\",b.pSize);var y=new v(this.ctx);y.setSelectionFilter(s,e,u),this.addEvents(s),h&&h.add(s)}else void 0===o.globals.pointsArray[e]&&(o.globals.pointsArray[e]=[]),o.globals.pointsArray[e].push([l.x[g],l.y[g]])}return h}},{key:\"getMarkerConfig\",value:function(t){var e=t.cssClass,i=t.seriesIndex,a=t.dataPointIndex,s=void 0===a?null:a,r=t.finishRadius,o=void 0===r?null:r,n=this.w,l=this.getMarkerStyle(i),h=n.globals.markers.size[i],c=n.config.markers;return null!==s&&c.discrete.length&&c.discrete.map((function(t){t.seriesIndex===i&&t.dataPointIndex===s&&(l.pointStrokeColor=t.strokeColor,l.pointFillColor=t.fillColor,h=t.size,l.pointShape=t.shape)})),{pSize:null===o?h:o,pRadius:c.radius,width:Array.isArray(c.width)?c.width[i]:c.width,height:Array.isArray(c.height)?c.height[i]:c.height,pointStrokeWidth:Array.isArray(c.strokeWidth)?c.strokeWidth[i]:c.strokeWidth,pointStrokeColor:l.pointStrokeColor,pointFillColor:l.pointFillColor,shape:l.pointShape||(Array.isArray(c.shape)?c.shape[i]:c.shape),class:e,pointStrokeOpacity:Array.isArray(c.strokeOpacity)?c.strokeOpacity[i]:c.strokeOpacity,pointStrokeDashArray:Array.isArray(c.strokeDashArray)?c.strokeDashArray[i]:c.strokeDashArray,pointFillOpacity:Array.isArray(c.fillOpacity)?c.fillOpacity[i]:c.fillOpacity,seriesIndex:i}}},{key:\"addEvents\",value:function(t){var e=this.w,i=new m(this.ctx);t.node.addEventListener(\"mouseenter\",i.pathMouseEnter.bind(this.ctx,t)),t.node.addEventListener(\"mouseleave\",i.pathMouseLeave.bind(this.ctx,t)),t.node.addEventListener(\"mousedown\",i.pathMouseDown.bind(this.ctx,t)),t.node.addEventListener(\"click\",e.config.markers.onClick),t.node.addEventListener(\"dblclick\",e.config.markers.onDblClick),t.node.addEventListener(\"touchstart\",i.pathMouseDown.bind(this.ctx,t),{passive:!0})}},{key:\"getMarkerStyle\",value:function(t){var e=this.w,i=e.globals.markers.colors,a=e.config.markers.strokeColor||e.config.markers.strokeColors;return{pointStrokeColor:Array.isArray(a)?a[t]:a,pointFillColor:Array.isArray(i)?i[t]:i}}}]),t}(),D=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.initialAnim=this.w.config.chart.animations.enabled,this.dynamicAnim=this.initialAnim&&this.w.config.chart.animations.dynamicAnimation.enabled}return r(t,[{key:\"draw\",value:function(t,e,i){var a=this.w,s=new m(this.ctx),r=i.realIndex,o=i.pointsPos,n=i.zRatio,l=i.elParent,h=s.group({class:\"apexcharts-series-markers apexcharts-series-\".concat(a.config.chart.type)});if(h.attr(\"clip-path\",\"url(#gridRectMarkerMask\".concat(a.globals.cuid,\")\")),Array.isArray(o.x))for(var c=0;cp.maxBubbleRadius&&(f=p.maxBubbleRadius)}a.config.chart.animations.enabled||(u=f);var x=o.x[c],b=o.y[c];if(u=u||0,null!==b&&void 0!==a.globals.series[r][d]||(g=!1),g){var v=this.drawPoint(x,b,u,f,r,d,e);h.add(v)}l.add(h)}}},{key:\"drawPoint\",value:function(t,e,i,a,s,r,o){var n=this.w,l=s,h=new b(this.ctx),c=new v(this.ctx),d=new F(this.ctx),g=new R(this.ctx),u=new m(this.ctx),f=g.getMarkerConfig({cssClass:\"apexcharts-marker\",seriesIndex:l,dataPointIndex:r,finishRadius:\"bubble\"===n.config.chart.type||n.globals.comboCharts&&n.config.series[s]&&\"bubble\"===n.config.series[s].type?a:null});a=f.pSize;var p,x=d.fillPath({seriesNumber:s,dataPointIndex:r,color:f.pointFillColor,patternUnits:\"objectBoundingBox\",value:n.globals.series[s][o]});if(\"circle\"===f.shape?p=u.drawCircle(i):\"square\"!==f.shape&&\"rect\"!==f.shape||(p=u.drawRect(0,0,f.width-f.pointStrokeWidth/2,f.height-f.pointStrokeWidth/2,f.pRadius)),n.config.series[l].data[r]&&n.config.series[l].data[r].fillColor&&(x=n.config.series[l].data[r].fillColor),p.attr({x:t-f.width/2-f.pointStrokeWidth/2,y:e-f.height/2-f.pointStrokeWidth/2,cx:t,cy:e,fill:x,\"fill-opacity\":f.pointFillOpacity,stroke:f.pointStrokeColor,r:a,\"stroke-width\":f.pointStrokeWidth,\"stroke-dasharray\":f.pointStrokeDashArray,\"stroke-opacity\":f.pointStrokeOpacity}),n.config.chart.dropShadow.enabled){var y=n.config.chart.dropShadow;c.dropShadow(p,y,s)}if(!this.initialAnim||n.globals.dataChanged||n.globals.resized)n.globals.animationEnded=!0;else{var w=n.config.chart.animations.speed;h.animateMarker(p,0,\"circle\"===f.shape?a:{width:f.width,height:f.height},w,n.globals.easing,(function(){window.setTimeout((function(){h.animationCompleted(p)}),100)}))}if(n.globals.dataChanged&&\"circle\"===f.shape)if(this.dynamicAnim){var k,A,S,C,L=n.config.chart.animations.dynamicAnimation.speed;null!=(C=n.globals.previousPaths[s]&&n.globals.previousPaths[s][o])&&(k=C.x,A=C.y,S=void 0!==C.r?C.r:a);for(var P=0;Pn.globals.gridHeight+d&&(e=n.globals.gridHeight+d/2),void 0===n.globals.dataLabelsRects[a]&&(n.globals.dataLabelsRects[a]=[]),n.globals.dataLabelsRects[a].push({x:t,y:e,width:c,height:d});var g=n.globals.dataLabelsRects[a].length-2,u=void 0!==n.globals.lastDrawnDataLabelsIndexes[a]?n.globals.lastDrawnDataLabelsIndexes[a][n.globals.lastDrawnDataLabelsIndexes[a].length-1]:0;if(void 0!==n.globals.dataLabelsRects[a][g]){var f=n.globals.dataLabelsRects[a][u];(t>f.x+f.width+2||e>f.y+f.height+2||t+ce.globals.gridWidth+p.textRects.width+10)&&(n=\"\");var x=e.globals.dataLabels.style.colors[r];((\"bar\"===e.config.chart.type||\"rangeBar\"===e.config.chart.type)&&e.config.plotOptions.bar.distributed||e.config.dataLabels.distributed)&&(x=e.globals.dataLabels.style.colors[o]),\"function\"==typeof x&&(x=x({series:e.globals.series,seriesIndex:r,dataPointIndex:o,w:e})),g&&(x=g);var b=d.offsetX,y=d.offsetY;if(\"bar\"!==e.config.chart.type&&\"rangeBar\"!==e.config.chart.type||(b=0,y=0),p.drawnextLabel){var w=i.drawText({width:100,height:parseInt(d.style.fontSize,10),x:a+b,y:s+y,foreColor:x,textAnchor:l||d.textAnchor,text:n,fontSize:h||d.style.fontSize,fontFamily:d.style.fontFamily,fontWeight:d.style.fontWeight||\"normal\"});if(w.attr({class:\"apexcharts-datalabel\",cx:a,cy:s}),d.dropShadow.enabled){var k=d.dropShadow;new v(this.ctx).dropShadow(w,k)}c.add(w),void 0===e.globals.lastDrawnDataLabelsIndexes[r]&&(e.globals.lastDrawnDataLabelsIndexes[r]=[]),e.globals.lastDrawnDataLabelsIndexes[r].push(o)}}}},{key:\"addBackgroundToDataLabel\",value:function(t,e){var i=this.w,a=i.config.dataLabels.background,s=a.padding,r=a.padding/2,o=e.width,n=e.height,l=new m(this.ctx).drawRect(e.x-s,e.y-r/2,o+2*s,n+r,a.borderRadius,\"transparent\"===i.config.chart.background?\"#fff\":i.config.chart.background,a.opacity,a.borderWidth,a.borderColor);a.dropShadow.enabled&&new v(this.ctx).dropShadow(l,a.dropShadow);return l}},{key:\"dataLabelsBackground\",value:function(){var t=this.w;if(\"bubble\"!==t.config.chart.type)for(var e=t.globals.dom.baseEl.querySelectorAll(\".apexcharts-datalabels text\"),i=0;i0&&void 0!==arguments[0])||arguments[0],e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=this.w,s=x.clone(a.globals.initialSeries);a.globals.previousPaths=[],i?(a.globals.collapsedSeries=[],a.globals.ancillaryCollapsedSeries=[],a.globals.collapsedSeriesIndices=[],a.globals.ancillaryCollapsedSeriesIndices=[]):s=this.emptyCollapsedSeries(s),a.config.series=s,t&&(e&&(a.globals.zoomed=!1,this.ctx.updateHelpers.revertDefaultAxisMinMax()),this.ctx.updateHelpers._updateSeries(s,a.config.chart.animations.dynamicAnimation.enabled))}},{key:\"emptyCollapsedSeries\",value:function(t){for(var e=this.w,i=0;i-1&&(t[i].data=[]);return t}},{key:\"toggleSeriesOnHover\",value:function(t,e){var i=this.w;e||(e=t.target);var a=i.globals.dom.baseEl.querySelectorAll(\".apexcharts-series, .apexcharts-datalabels\");if(\"mousemove\"===t.type){var s=parseInt(e.getAttribute(\"rel\"),10)-1,r=null,o=null;i.globals.axisCharts||\"radialBar\"===i.config.chart.type?i.globals.axisCharts?(r=i.globals.dom.baseEl.querySelector(\".apexcharts-series[data\\\\:realIndex='\".concat(s,\"']\")),o=i.globals.dom.baseEl.querySelector(\".apexcharts-datalabels[data\\\\:realIndex='\".concat(s,\"']\"))):r=i.globals.dom.baseEl.querySelector(\".apexcharts-series[rel='\".concat(s+1,\"']\")):r=i.globals.dom.baseEl.querySelector(\".apexcharts-series[rel='\".concat(s+1,\"'] path\"));for(var n=0;n=t.from&&a<=t.to&&s[e].classList.remove(i.legendInactiveClass)}}(a.config.plotOptions.heatmap.colorScale.ranges[o])}else\"mouseout\"===t.type&&r(\"remove\")}},{key:\"getActiveConfigSeriesIndex\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"asc\",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=this.w,a=0;if(i.config.series.length>1)for(var s=i.config.series.map((function(t,a){return t.data&&t.data.length>0&&-1===i.globals.collapsedSeriesIndices.indexOf(a)&&(!i.globals.comboCharts||0===e.length||e.length&&e.indexOf(i.config.series[a].type)>-1)?a:-1})),r=\"asc\"===t?0:s.length-1;\"asc\"===t?r=0;\"asc\"===t?r++:r--)if(-1!==s[r]){a=s[r];break}return a}},{key:\"getBarSeriesIndices\",value:function(){return this.w.globals.comboCharts?this.w.config.series.map((function(t,e){return\"bar\"===t.type||\"column\"===t.type?e:-1})).filter((function(t){return-1!==t})):this.w.config.series.map((function(t,e){return e}))}},{key:\"getPreviousPaths\",value:function(){var t=this.w;function e(e,i,a){for(var s=e[i].childNodes,r={type:a,paths:[],realIndex:e[i].getAttribute(\"data:realIndex\")},o=0;o0)for(var a=function(e){for(var i=t.globals.dom.baseEl.querySelectorAll(\".apexcharts-\".concat(t.config.chart.type,\" .apexcharts-series[data\\\\:realIndex='\").concat(e,\"'] rect\")),a=[],s=function(t){var e=function(e){return i[t].getAttribute(e)},s={x:parseFloat(e(\"x\")),y:parseFloat(e(\"y\")),width:parseFloat(e(\"width\")),height:parseFloat(e(\"height\"))};a.push({rect:s,color:i[t].getAttribute(\"color\")})},r=0;r0)for(var a=0;a0?t:[]}));return t}}]),t}(),N=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.twoDSeries=[],this.threeDSeries=[],this.twoDSeriesX=[],this.seriesGoals=[],this.coreUtils=new y(this.ctx)}return r(t,[{key:\"isMultiFormat\",value:function(){return this.isFormatXY()||this.isFormat2DArray()}},{key:\"isFormatXY\",value:function(){var t=this.w.config.series.slice(),e=new O(this.ctx);if(this.activeSeriesIndex=e.getActiveConfigSeriesIndex(),void 0!==t[this.activeSeriesIndex].data&&t[this.activeSeriesIndex].data.length>0&&null!==t[this.activeSeriesIndex].data[0]&&void 0!==t[this.activeSeriesIndex].data[0].x&&null!==t[this.activeSeriesIndex].data[0])return!0}},{key:\"isFormat2DArray\",value:function(){var t=this.w.config.series.slice(),e=new O(this.ctx);if(this.activeSeriesIndex=e.getActiveConfigSeriesIndex(),void 0!==t[this.activeSeriesIndex].data&&t[this.activeSeriesIndex].data.length>0&&void 0!==t[this.activeSeriesIndex].data[0]&&null!==t[this.activeSeriesIndex].data[0]&&t[this.activeSeriesIndex].data[0].constructor===Array)return!0}},{key:\"handleFormat2DArray\",value:function(t,e){for(var i=this.w.config,a=this.w.globals,s=\"boxPlot\"===i.chart.type||\"boxPlot\"===i.series[e].type,r=0;r=5?this.twoDSeries.push(x.parseNumber(t[e].data[r][4])):this.twoDSeries.push(x.parseNumber(t[e].data[r][1])),a.dataFormatXNumeric=!0),\"datetime\"===i.xaxis.type){var o=new Date(t[e].data[r][0]);o=new Date(o).getTime(),this.twoDSeriesX.push(o)}else this.twoDSeriesX.push(t[e].data[r][0]);for(var n=0;n-1&&(r=this.activeSeriesIndex);for(var o=0;o1&&void 0!==arguments[1]?arguments[1]:this.ctx,a=this.w.config,s=this.w.globals,r=new T(i),o=a.labels.length>0?a.labels.slice():a.xaxis.categories.slice();s.isRangeBar=\"rangeBar\"===a.chart.type&&s.isBarHorizontal,s.hasGroups=\"category\"===a.xaxis.type&&a.xaxis.group.groups.length>0,s.hasGroups&&(s.groups=a.xaxis.group.groups);for(var n=function(){for(var t=0;t0&&(this.twoDSeriesX=o,s.seriesX.push(this.twoDSeriesX))),s.labels.push(this.twoDSeriesX);var h=t[l].data.map((function(t){return x.parseNumber(t)}));s.series.push(h)}s.seriesZ.push(this.threeDSeries),void 0!==t[l].name?s.seriesNames.push(t[l].name):s.seriesNames.push(\"series-\"+parseInt(l+1,10)),void 0!==t[l].color?s.seriesColors.push(t[l].color):s.seriesColors.push(void 0)}return this.w}},{key:\"parseDataNonAxisCharts\",value:function(t){var e=this.w.globals,i=this.w.config;e.series=t.slice(),e.seriesNames=i.labels.slice();for(var a=0;a0)i.labels=e.xaxis.categories;else if(e.labels.length>0)i.labels=e.labels.slice();else if(this.fallbackToCategory){if(i.labels=i.labels[0],i.seriesRange.length&&(i.seriesRange.map((function(t){t.forEach((function(t){i.labels.indexOf(t.x)<0&&t.x&&i.labels.push(t.x)}))})),i.labels=i.labels.filter((function(t,e,i){return i.indexOf(t)===e}))),e.xaxis.convertedCatToNumeric)new z(e).convertCatToNumericXaxis(e,this.ctx,i.seriesX[0]),this._generateExternalLabels(t)}else this._generateExternalLabels(t)}},{key:\"_generateExternalLabels\",value:function(t){var e=this.w.globals,i=this.w.config,a=[];if(e.axisCharts){if(e.series.length>0)if(this.isFormatXY())for(var s=i.series.map((function(t,e){return t.data.filter((function(t,e,i){return i.findIndex((function(e){return e.x===t.x}))===e}))})),r=s.reduce((function(t,e,i,a){return a[t].length>e.length?t:i}),0),o=0;o0&&i<100?t.toFixed(1):t.toFixed(0)}if(e.globals.isBarHorizontal)if(e.globals.maxY-e.globals.minYArr<4)return t.toFixed(1);return t.toFixed(0)}return t},\"function\"==typeof e.config.tooltip.x.formatter?e.globals.ttKeyFormatter=e.config.tooltip.x.formatter:e.globals.ttKeyFormatter=e.globals.xLabelFormatter,\"function\"==typeof e.config.xaxis.tooltip.formatter&&(e.globals.xaxisTooltipFormatter=e.config.xaxis.tooltip.formatter),(Array.isArray(e.config.tooltip.y)||void 0!==e.config.tooltip.y.formatter)&&(e.globals.ttVal=e.config.tooltip.y),void 0!==e.config.tooltip.z.formatter&&(e.globals.ttZFormatter=e.config.tooltip.z.formatter),void 0!==e.config.legend.formatter&&(e.globals.legendFormatter=e.config.legend.formatter),e.config.yaxis.forEach((function(i,a){void 0!==i.labels.formatter?e.globals.yLabelFormatters[a]=i.labels.formatter:e.globals.yLabelFormatters[a]=function(s){return e.globals.xyCharts?Array.isArray(s)?s.map((function(e){return t.defaultYFormatter(e,i,a)})):t.defaultYFormatter(s,i,a):s}})),e.globals}},{key:\"heatmapLabelFormatters\",value:function(){var t=this.w;if(\"heatmap\"===t.config.chart.type){t.globals.yAxisScale[0].result=t.globals.seriesNames.slice();var e=t.globals.seriesNames.reduce((function(t,e){return t.length>e.length?t:e}),0);t.globals.yAxisScale[0].niceMax=e,t.globals.yAxisScale[0].niceMin=e}}}]),t}(),B=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"getLabel\",value:function(t,e,i,a){var s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[],r=arguments.length>5&&void 0!==arguments[5]?arguments[5]:\"12px\",o=!(arguments.length>6&&void 0!==arguments[6])||arguments[6],n=this.w,l=void 0===t[a]?\"\":t[a],h=l,c=n.globals.xLabelFormatter,d=n.config.xaxis.labels.formatter,g=!1,u=new W(this.ctx),f=l;o&&(h=u.xLabelFormat(c,l,f,{i:a,dateFormatter:new T(this.ctx).formatDate,w:n}),void 0!==d&&(h=d(l,t[a],{i:a,dateFormatter:new T(this.ctx).formatDate,w:n})));var p=function(t){var i=null;return e.forEach((function(t){\"month\"===t.unit?i=\"year\":\"day\"===t.unit?i=\"month\":\"hour\"===t.unit?i=\"day\":\"minute\"===t.unit&&(i=\"hour\")})),i===t};e.length>0?(g=p(e[a].unit),i=e[a].position,h=e[a].value):\"datetime\"===n.config.xaxis.type&&void 0===d&&(h=\"\"),void 0===h&&(h=\"\"),h=Array.isArray(h)?h:h.toString();var x=new m(this.ctx),b={};b=n.globals.rotateXLabels&&o?x.getTextRects(h,parseInt(r,10),null,\"rotate(\".concat(n.config.xaxis.labels.rotate,\" 0 0)\"),!1):x.getTextRects(h,parseInt(r,10));var v=!n.config.xaxis.labels.showDuplicates&&this.ctx.timeScale;return!Array.isArray(h)&&(0===h.indexOf(\"NaN\")||0===h.toLowerCase().indexOf(\"invalid\")||h.toLowerCase().indexOf(\"infinity\")>=0||s.indexOf(h)>=0&&v)&&(h=\"\"),{x:i,text:h,textRect:b,isBold:g}}},{key:\"checkLabelBasedOnTickamount\",value:function(t,e,i){var a=this.w,s=a.config.xaxis.tickAmount;return\"dataPoints\"===s&&(s=Math.round(a.globals.gridWidth/120)),s>i||t%Math.round(i/(s+1))==0||(e.text=\"\"),e}},{key:\"checkForOverflowingLabels\",value:function(t,e,i,a,s){var r=this.w;if(0===t&&r.globals.skipFirstTimelinelabel&&(e.text=\"\"),t===i-1&&r.globals.skipLastTimelinelabel&&(e.text=\"\"),r.config.xaxis.labels.hideOverlappingLabels&&a.length>0){var o=s[s.length-1];e.x0){!0===n.config.yaxis[s].opposite&&(t+=a.width);for(var c=e;c>=0;c--){var d=h+e/10+n.config.yaxis[s].labels.offsetY-1;n.globals.isBarHorizontal&&(d=r*c),\"heatmap\"===n.config.chart.type&&(d+=r/2);var g=l.drawLine(t+i.offsetX-a.width+a.offsetX,d+a.offsetY,t+i.offsetX+a.offsetX,d+a.offsetY,a.color);o.add(g),h+=r}}}}]),t}(),G=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"scaleSvgNode\",value:function(t,e){var i=parseFloat(t.getAttributeNS(null,\"width\")),a=parseFloat(t.getAttributeNS(null,\"height\"));t.setAttributeNS(null,\"width\",i*e),t.setAttributeNS(null,\"height\",a*e),t.setAttributeNS(null,\"viewBox\",\"0 0 \"+i+\" \"+a)}},{key:\"fixSvgStringForIe11\",value:function(t){if(!x.isIE11())return t.replace(/ /g,\" \");var e=0,i=t.replace(/xmlns=\"http:\\/\\/www.w3.org\\/2000\\/svg\"/g,(function(t){return 2===++e?'xmlns:xlink=\"http://www.w3.org/1999/xlink\" xmlns:svgjs=\"http://svgjs.dev\"':t}));return i=(i=i.replace(/xmlns:NS\\d+=\"\"/g,\"\")).replace(/NS\\d+:(\\w+:\\w+=\")/g,\"$1\")}},{key:\"getSvgString\",value:function(t){null==t&&(t=1);var e=this.w.globals.dom.Paper.svg();if(1!==t){var i=this.w.globals.dom.Paper.node.cloneNode(!0);this.scaleSvgNode(i,t),e=(new XMLSerializer).serializeToString(i)}return this.fixSvgStringForIe11(e)}},{key:\"cleanup\",value:function(){var t=this.w,e=t.globals.dom.baseEl.getElementsByClassName(\"apexcharts-xcrosshairs\"),i=t.globals.dom.baseEl.getElementsByClassName(\"apexcharts-ycrosshairs\"),a=t.globals.dom.baseEl.querySelectorAll(\".apexcharts-zoom-rect, .apexcharts-selection-rect\");Array.prototype.forEach.call(a,(function(t){t.setAttribute(\"width\",0)})),e&&e[0]&&(e[0].setAttribute(\"x\",-500),e[0].setAttribute(\"x1\",-500),e[0].setAttribute(\"x2\",-500)),i&&i[0]&&(i[0].setAttribute(\"y\",-100),i[0].setAttribute(\"y1\",-100),i[0].setAttribute(\"y2\",-100))}},{key:\"svgUrl\",value:function(){this.cleanup();var t=this.getSvgString(),e=new Blob([t],{type:\"image/svg+xml;charset=utf-8\"});return URL.createObjectURL(e)}},{key:\"dataURI\",value:function(t){var e=this;return new Promise((function(i){var a=e.w,s=t?t.scale||t.width/a.globals.svgWidth:1;e.cleanup();var r=document.createElement(\"canvas\");r.width=a.globals.svgWidth*s,r.height=parseInt(a.globals.dom.elWrap.style.height,10)*s;var o=\"transparent\"===a.config.chart.background?\"#fff\":a.config.chart.background,n=r.getContext(\"2d\");n.fillStyle=o,n.fillRect(0,0,r.width*s,r.height*s);var l=e.getSvgString(s);if(window.canvg&&x.isIE11()){var h=window.canvg.Canvg.fromString(n,l,{ignoreClear:!0,ignoreDimensions:!0});h.start();var c=r.msToBlob();h.stop(),i({blob:c})}else{var d=\"data:image/svg+xml,\"+encodeURIComponent(l),g=new Image;g.crossOrigin=\"anonymous\",g.onload=function(){if(n.drawImage(g,0,0),r.msToBlob){var t=r.msToBlob();i({blob:t})}else{var e=r.toDataURL(\"image/png\");i({imgURI:e})}},g.src=d}}))}},{key:\"exportToSVG\",value:function(){this.triggerDownload(this.svgUrl(),this.w.config.chart.toolbar.export.svg.filename,\".svg\")}},{key:\"exportToPng\",value:function(){var t=this;this.dataURI().then((function(e){var i=e.imgURI,a=e.blob;a?navigator.msSaveOrOpenBlob(a,t.w.globals.chartID+\".png\"):t.triggerDownload(i,t.w.config.chart.toolbar.export.png.filename,\".png\")}))}},{key:\"exportToCSV\",value:function(t){var e=this,i=t.series,a=t.fileName,s=t.columnDelimiter,r=void 0===s?\",\":s,o=t.lineDelimiter,n=void 0===o?\"\\n\":o,l=this.w;i||(i=l.config.series);var h=[],c=[],d=\"\",g=l.globals.series.map((function(t,e){return-1===l.globals.collapsedSeriesIndices.indexOf(e)?t:[]})),f=Math.max.apply(Math,u(i.map((function(t){return t.data?t.data.length:0})))),p=new N(this.ctx),b=new B(this.ctx),v=function(t){var i=\"\";if(l.globals.axisCharts){if(\"category\"===l.config.xaxis.type||l.config.xaxis.convertedCatToNumeric)if(l.globals.isBarHorizontal){var a=l.globals.yLabelFormatters[0],s=new O(e.ctx).getActiveConfigSeriesIndex();i=a(l.globals.labels[t],{seriesIndex:s,dataPointIndex:t,w:l})}else i=b.getLabel(l.globals.labels,l.globals.timescaleLabels,0,t).text;\"datetime\"===l.config.xaxis.type&&(l.config.xaxis.categories.length?i=l.config.xaxis.categories[t]:l.config.labels.length&&(i=l.config.labels[t]))}else i=l.config.labels[t];return Array.isArray(i)&&(i=i.join(\" \")),x.isNumber(i)?i:i.split(r).join(\"\")},m=function(t,e){if(h.length&&0===e&&c.push(h.join(r)),t.data){t.data=t.data.length&&t.data||u(Array(f)).map((function(){return\"\"}));for(var a=0;a=10?l.config.chart.toolbar.export.csv.dateFormatter(s):x.isNumber(s)?s:s.split(r).join(\"\")));for(var o=0;o0&&!s.globals.isBarHorizontal&&(this.xaxisLabels=s.globals.timescaleLabels.slice()),s.config.xaxis.overwriteCategories&&(this.xaxisLabels=s.config.xaxis.overwriteCategories),this.drawnLabels=[],this.drawnLabelsRects=[],\"top\"===s.config.xaxis.position?this.offY=0:this.offY=s.globals.gridHeight+1,this.offY=this.offY+s.config.xaxis.axisBorder.offsetY,this.isCategoryBarHorizontal=\"bar\"===s.config.chart.type&&s.config.plotOptions.bar.horizontal,this.xaxisFontSize=s.config.xaxis.labels.style.fontSize,this.xaxisFontFamily=s.config.xaxis.labels.style.fontFamily,this.xaxisForeColors=s.config.xaxis.labels.style.colors,this.xaxisBorderWidth=s.config.xaxis.axisBorder.width,this.isCategoryBarHorizontal&&(this.xaxisBorderWidth=s.config.yaxis[0].axisBorder.width.toString()),this.xaxisBorderWidth.indexOf(\"%\")>-1?this.xaxisBorderWidth=s.globals.gridWidth*parseInt(this.xaxisBorderWidth,10)/100:this.xaxisBorderWidth=parseInt(this.xaxisBorderWidth,10),this.xaxisBorderHeight=s.config.xaxis.axisBorder.height,this.yaxis=s.config.yaxis[0]}return r(t,[{key:\"drawXaxis\",value:function(){var t=this.w,e=new m(this.ctx),i=e.group({class:\"apexcharts-xaxis\",transform:\"translate(\".concat(t.config.xaxis.offsetX,\", \").concat(t.config.xaxis.offsetY,\")\")}),a=e.group({class:\"apexcharts-xaxis-texts-g\",transform:\"translate(\".concat(t.globals.translateXAxisX,\", \").concat(t.globals.translateXAxisY,\")\")});i.add(a);for(var s=[],r=0;r6&&void 0!==arguments[6]?arguments[6]:{},h=[],c=[],d=this.w,g=l.xaxisFontSize||this.xaxisFontSize,u=l.xaxisFontFamily||this.xaxisFontFamily,f=l.xaxisForeColors||this.xaxisForeColors,p=l.fontWeight||d.config.xaxis.labels.style.fontWeight,x=l.cssClass||d.config.xaxis.labels.style.cssClass,b=d.globals.padHorizontal,v=a.length,m=\"category\"===d.config.xaxis.type?d.globals.dataPoints:v;if(0===m&&v>m&&(m=v),s){var y=m>1?m-1:m;o=d.globals.gridWidth/y,b=b+r(0,o)/2+d.config.xaxis.labels.offsetX}else o=d.globals.gridWidth/m,b=b+r(0,o)+d.config.xaxis.labels.offsetX;for(var w=function(s){var l=b-r(s,o)/2+d.config.xaxis.labels.offsetX;0===s&&1===v&&o/2===b&&1===m&&(l=d.globals.gridWidth/2);var y=n.axesUtils.getLabel(a,d.globals.timescaleLabels,l,s,h,g,t),w=28;d.globals.rotateXLabels&&t&&(w=22),d.config.xaxis.title.text&&\"top\"===d.config.xaxis.position&&(w+=parseFloat(d.config.xaxis.title.style.fontSize)+2),t||(w=w+parseFloat(g)+(d.globals.xAxisLabelsHeight-d.globals.xAxisGroupLabelsHeight)+(d.globals.rotateXLabels?10:0)),y=void 0!==d.config.xaxis.tickAmount&&\"dataPoints\"!==d.config.xaxis.tickAmount&&\"datetime\"!==d.config.xaxis.type?n.axesUtils.checkLabelBasedOnTickamount(s,y,v):n.axesUtils.checkForOverflowingLabels(s,y,v,h,c);if(t&&y.text&&d.globals.xaxisLabelsCount++,d.config.xaxis.labels.show){var k=e.drawText({x:y.x,y:n.offY+d.config.xaxis.labels.offsetY+w-(\"top\"===d.config.xaxis.position?d.globals.xAxisHeight+d.config.xaxis.axisTicks.height-2:0),text:y.text,textAnchor:\"middle\",fontWeight:y.isBold?600:p,fontSize:g,fontFamily:u,foreColor:Array.isArray(f)?t&&d.config.xaxis.convertedCatToNumeric?f[d.globals.minX+s-1]:f[s]:f,isPlainText:!1,cssClass:(t?\"apexcharts-xaxis-label \":\"apexcharts-xaxis-group-label \")+x});if(i.add(k),k.on(\"click\",(function(t){if(\"function\"==typeof d.config.chart.events.xAxisLabelClick){var e=Object.assign({},d,{labelIndex:s});d.config.chart.events.xAxisLabelClick(t,n.ctx,e)}})),t){var A=document.createElementNS(d.globals.SVGNS,\"title\");A.textContent=Array.isArray(y.text)?y.text.join(\" \"):y.text,k.node.appendChild(A),\"\"!==y.text&&(h.push(y.text),c.push(y))}}sa.globals.gridWidth)){var r=this.offY+a.config.xaxis.axisTicks.offsetY;if(e=e+r+a.config.xaxis.axisTicks.height,\"top\"===a.config.xaxis.position&&(e=r-a.config.xaxis.axisTicks.height),a.config.xaxis.axisTicks.show){var o=new m(this.ctx).drawLine(t+a.config.xaxis.axisTicks.offsetX,r+a.config.xaxis.offsetY,s+a.config.xaxis.axisTicks.offsetX,e+a.config.xaxis.offsetY,a.config.xaxis.axisTicks.color);i.add(o),o.node.classList.add(\"apexcharts-xaxis-tick\")}}}},{key:\"getXAxisTicksPositions\",value:function(){var t=this.w,e=[],i=this.xaxisLabels.length,a=t.globals.padHorizontal;if(t.globals.timescaleLabels.length>0)for(var s=0;s0){var h=s[s.length-1].getBBox(),c=s[0].getBBox();h.x<-20&&s[s.length-1].parentNode.removeChild(s[s.length-1]),c.x+c.width>t.globals.gridWidth&&!t.globals.isBarHorizontal&&s[0].parentNode.removeChild(s[0]);for(var d=0;d0&&(this.xaxisLabels=i.globals.timescaleLabels.slice())}return r(t,[{key:\"drawGridArea\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,e=this.w,i=new m(this.ctx);null===t&&(t=i.group({class:\"apexcharts-grid\"}));var a=i.drawLine(e.globals.padHorizontal,1,e.globals.padHorizontal,e.globals.gridHeight,\"transparent\"),s=i.drawLine(e.globals.padHorizontal,e.globals.gridHeight,e.globals.gridWidth,e.globals.gridHeight,\"transparent\");return t.add(s),t.add(a),t}},{key:\"drawGrid\",value:function(){var t=null;return this.w.globals.axisCharts&&(t=this.renderGrid(),this.drawGridArea(t.el)),t}},{key:\"createGridMask\",value:function(){var t=this.w,e=t.globals,i=new m(this.ctx),a=Array.isArray(t.config.stroke.width)?0:t.config.stroke.width;if(Array.isArray(t.config.stroke.width)){var s=0;t.config.stroke.width.forEach((function(t){s=Math.max(s,t)})),a=s}e.dom.elGridRectMask=document.createElementNS(e.SVGNS,\"clipPath\"),e.dom.elGridRectMask.setAttribute(\"id\",\"gridRectMask\".concat(e.cuid)),e.dom.elGridRectMarkerMask=document.createElementNS(e.SVGNS,\"clipPath\"),e.dom.elGridRectMarkerMask.setAttribute(\"id\",\"gridRectMarkerMask\".concat(e.cuid)),e.dom.elForecastMask=document.createElementNS(e.SVGNS,\"clipPath\"),e.dom.elForecastMask.setAttribute(\"id\",\"forecastMask\".concat(e.cuid)),e.dom.elNonForecastMask=document.createElementNS(e.SVGNS,\"clipPath\"),e.dom.elNonForecastMask.setAttribute(\"id\",\"nonForecastMask\".concat(e.cuid));var r=t.config.chart.type,o=0,n=0;(\"bar\"===r||\"rangeBar\"===r||\"candlestick\"===r||\"boxPlot\"===r||t.globals.comboBarCount>0)&&t.globals.isXNumeric&&!t.globals.isBarHorizontal&&(o=t.config.grid.padding.left,n=t.config.grid.padding.right,e.barPadForNumericAxis>o&&(o=e.barPadForNumericAxis,n=e.barPadForNumericAxis)),e.dom.elGridRect=i.drawRect(-a/2-o-2,-a/2,e.gridWidth+a+n+o+4,e.gridHeight+a,0,\"#fff\");var l=t.globals.markers.largestSize+1;e.dom.elGridRectMarker=i.drawRect(2*-l,2*-l,e.gridWidth+4*l,e.gridHeight+4*l,0,\"#fff\"),e.dom.elGridRectMask.appendChild(e.dom.elGridRect.node),e.dom.elGridRectMarkerMask.appendChild(e.dom.elGridRectMarker.node);var h=e.dom.baseEl.querySelector(\"defs\");h.appendChild(e.dom.elGridRectMask),h.appendChild(e.dom.elForecastMask),h.appendChild(e.dom.elNonForecastMask),h.appendChild(e.dom.elGridRectMarkerMask)}},{key:\"_drawGridLines\",value:function(t){var e=t.i,i=t.x1,a=t.y1,s=t.x2,r=t.y2,o=t.xCount,n=t.parent,l=this.w;if(!(0===e&&l.globals.skipFirstTimelinelabel||e===o-1&&l.globals.skipLastTimelinelabel&&!l.config.xaxis.labels.formatter||\"radar\"===l.config.chart.type)){l.config.grid.xaxis.lines.show&&this._drawGridLine({i:e,x1:i,y1:a,x2:s,y2:r,xCount:o,parent:n});var h=0;if(l.globals.hasGroups&&\"between\"===l.config.xaxis.tickPlacement){var c=l.globals.groups;if(c){for(var d=0,g=0;d2));s++);return!t.globals.isBarHorizontal||this.isRangeBar?(i=this.xaxisLabels.length,this.isRangeBar&&(a=t.globals.labels.length,t.config.xaxis.tickAmount&&t.config.xaxis.labels.formatter&&(i=t.config.xaxis.tickAmount)),this._drawXYLines({xCount:i,tickAmount:a})):(i=a,a=t.globals.xTickAmount,this._drawInvertedXYLines({xCount:i,tickAmount:a})),this.drawGridBands(i,a),{el:this.elg,elGridBorders:this.elGridBorders,xAxisTickWidth:t.globals.gridWidth/i}}},{key:\"drawGridBands\",value:function(t,e){var i=this.w;if(void 0!==i.config.grid.row.colors&&i.config.grid.row.colors.length>0)for(var a=0,s=i.globals.gridHeight/e,r=i.globals.gridWidth,o=0,n=0;o=i.config.grid.row.colors.length&&(n=0),this._drawGridBandRect({c:n,x1:0,y1:a,x2:r,y2:s,type:\"row\"}),a+=i.globals.gridHeight/e;if(void 0!==i.config.grid.column.colors&&i.config.grid.column.colors.length>0)for(var l=i.globals.isBarHorizontal||\"category\"!==i.config.xaxis.type&&!i.config.xaxis.convertedCatToNumeric?t:t-1,h=i.globals.padHorizontal,c=i.globals.padHorizontal+i.globals.gridWidth/l,d=i.globals.gridHeight,g=0,u=0;g=i.config.grid.column.colors.length&&(u=0),this._drawGridBandRect({c:u,x1:h,y1:0,x2:c,y2:d,type:\"column\"}),h+=i.globals.gridWidth/l}}]),t}(),_=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"niceScale\",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,s=arguments.length>4?arguments[4]:void 0,r=this.w,o=Math.abs(e-t);if(\"dataPoints\"===(i=this._adjustTicksForSmallRange(i,a,o))&&(i=r.globals.dataPoints-1),t===Number.MIN_VALUE&&0===e||!x.isNumber(t)&&!x.isNumber(e)||t===Number.MIN_VALUE&&e===-Number.MAX_VALUE){t=0,e=i;var n=this.linearScale(t,e,i);return n}t>e?(console.warn(\"axis.min cannot be greater than axis.max\"),e=t+.1):t===e&&(t=0===t?0:t-.5,e=0===e?2:e+.5);var l=[];o<1&&s&&(\"candlestick\"===r.config.chart.type||\"candlestick\"===r.config.series[a].type||\"boxPlot\"===r.config.chart.type||\"boxPlot\"===r.config.series[a].type||r.globals.isRangeData)&&(e*=1.01);var h=i+1;h<2?h=2:h>2&&(h-=2);var c=o/h,d=Math.floor(x.log10(c)),g=Math.pow(10,d),u=Math.round(c/g);u<1&&(u=1);var f=u*g,p=f*Math.floor(t/f),b=f*Math.ceil(e/f),v=p;if(s&&o>2){for(;l.push(v),!((v+=f)>b););return{result:l,niceMin:l[0],niceMax:l[l.length-1]}}var m=t;(l=[]).push(m);for(var y=Math.abs(e-t)/i,w=0;w<=i;w++)m+=y,l.push(m);return l[l.length-2]>=e&&l.pop(),{result:l,niceMin:l[0],niceMax:l[l.length-1]}}},{key:\"linearScale\",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:10,a=arguments.length>3?arguments[3]:void 0,s=Math.abs(e-t);\"dataPoints\"===(i=this._adjustTicksForSmallRange(i,a,s))&&(i=this.w.globals.dataPoints-1);var r=s/i;i===Number.MAX_VALUE&&(i=10,r=1);for(var o=[],n=t;i>=0;)o.push(n),n+=r,i-=1;return{result:o,niceMin:o[0],niceMax:o[o.length-1]}}},{key:\"logarithmicScaleNice\",value:function(t,e,i){e<=0&&(e=Math.max(t,i)),t<=0&&(t=Math.min(e,i));for(var a=[],s=Math.ceil(Math.log(e)/Math.log(i)+1),r=Math.floor(Math.log(t)/Math.log(i));r5)a.allSeriesCollapsed=!1,a.yAxisScale[t]=this.logarithmicScale(e,i,r.logBase),a.yAxisScale[t]=r.forceNiceScale?this.logarithmicScaleNice(e,i,r.logBase):this.logarithmicScale(e,i,r.logBase);else if(i!==-Number.MAX_VALUE&&x.isNumber(i))if(a.allSeriesCollapsed=!1,void 0===r.min&&void 0===r.max||r.forceNiceScale){var n=void 0===s.yaxis[t].max&&void 0===s.yaxis[t].min||s.yaxis[t].forceNiceScale;a.yAxisScale[t]=this.niceScale(e,i,r.tickAmount?r.tickAmount:o<5&&o>1?o+1:5,t,n)}else a.yAxisScale[t]=this.linearScale(e,i,r.tickAmount,t);else a.yAxisScale[t]=this.linearScale(0,5,5)}},{key:\"setXScale\",value:function(t,e){var i=this.w,a=i.globals,s=i.config.xaxis,r=Math.abs(e-t);return e!==-Number.MAX_VALUE&&x.isNumber(e)?a.xAxisScale=this.linearScale(t,e,s.tickAmount?s.tickAmount:r<5&&r>1?r+1:5,0):a.xAxisScale=this.linearScale(0,5,5),a.xAxisScale}},{key:\"setMultipleYScales\",value:function(){var t=this,e=this.w.globals,i=this.w.config,a=e.minYArr.concat([]),s=e.maxYArr.concat([]),r=[];i.yaxis.forEach((function(e,o){var n=o;i.series.forEach((function(t,i){t.name===e.seriesName&&(n=i,o!==i?r.push({index:i,similarIndex:o,alreadyExists:!0}):r.push({index:i}))}));var l=a[n],h=s[n];t.setYScaleForIndex(o,l,h)})),this.sameScaleInMultipleAxes(a,s,r)}},{key:\"sameScaleInMultipleAxes\",value:function(t,e,i){var a=this,s=this.w.config,r=this.w.globals,o=[];i.forEach((function(t){t.alreadyExists&&(void 0===o[t.index]&&(o[t.index]=[]),o[t.index].push(t.index),o[t.index].push(t.similarIndex))})),r.yAxisSameScaleIndices=o,o.forEach((function(t,e){o.forEach((function(i,a){var s,r;e!==a&&(s=t,r=i,s.filter((function(t){return-1!==r.indexOf(t)}))).length>0&&(o[e]=o[e].concat(o[a]))}))}));var n=o.map((function(t){return t.filter((function(e,i){return t.indexOf(e)===i}))})).map((function(t){return t.sort()}));o=o.filter((function(t){return!!t}));var l=n.slice(),h=l.map((function(t){return JSON.stringify(t)}));l=l.filter((function(t,e){return h.indexOf(JSON.stringify(t))===e}));var c=[],d=[];t.forEach((function(t,i){l.forEach((function(a,s){a.indexOf(i)>-1&&(void 0===c[s]&&(c[s]=[],d[s]=[]),c[s].push({key:i,value:t}),d[s].push({key:i,value:e[i]}))}))}));var g=Array.apply(null,Array(l.length)).map(Number.prototype.valueOf,Number.MIN_VALUE),u=Array.apply(null,Array(l.length)).map(Number.prototype.valueOf,-Number.MAX_VALUE);c.forEach((function(t,e){t.forEach((function(t,i){g[e]=Math.min(t.value,g[e])}))})),d.forEach((function(t,e){t.forEach((function(t,i){u[e]=Math.max(t.value,u[e])}))})),t.forEach((function(t,e){d.forEach((function(t,i){var o=g[i],n=u[i];s.chart.stacked&&(n=0,t.forEach((function(t,e){t.value!==-Number.MAX_VALUE&&(n+=t.value),o!==Number.MIN_VALUE&&(o+=c[i][e].value)}))),t.forEach((function(i,l){t[l].key===e&&(void 0!==s.yaxis[e].min&&(o=\"function\"==typeof s.yaxis[e].min?s.yaxis[e].min(r.minY):s.yaxis[e].min),void 0!==s.yaxis[e].max&&(n=\"function\"==typeof s.yaxis[e].max?s.yaxis[e].max(r.maxY):s.yaxis[e].max),a.setYScaleForIndex(e,o,n))}))}))}))}},{key:\"autoScaleY\",value:function(t,e,i){t||(t=this);var a=t.w;if(a.globals.isMultipleYAxis||a.globals.collapsedSeries.length)return console.warn(\"autoScaleYaxis is not supported in a multi-yaxis chart.\"),e;var s=a.globals.seriesX[0],r=a.config.chart.stacked;return e.forEach((function(t,o){for(var n=0,l=0;l=i.xaxis.min){n=l;break}var h,c,d=a.globals.minYArr[o],g=a.globals.maxYArr[o],u=a.globals.stackedSeriesTotals;a.globals.series.forEach((function(o,l){var f=o[n];r?(f=u[n],h=c=f,u.forEach((function(t,e){s[e]<=i.xaxis.max&&s[e]>=i.xaxis.min&&(t>c&&null!==t&&(c=t),o[e]=i.xaxis.min){var r=t,o=t;a.globals.series.forEach((function(i,a){null!==t&&(r=Math.min(i[e],r),o=Math.max(i[e],o))})),o>c&&null!==o&&(c=o),rd&&(h=d),e.length>1?(e[l].min=void 0===t.min?h:t.min,e[l].max=void 0===t.max?c:t.max):(e[0].min=void 0===t.min?h:t.min,e[0].max=void 0===t.max?c:t.max)}))})),e}}]),t}(),U=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.scales=new _(e)}return r(t,[{key:\"init\",value:function(){this.setYRange(),this.setXRange(),this.setZRange()}},{key:\"getMinYMaxY\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.MAX_VALUE,i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:-Number.MAX_VALUE,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,s=this.w.config,r=this.w.globals,o=-Number.MAX_VALUE,n=Number.MIN_VALUE;null===a&&(a=t+1);var l=r.series,h=l,c=l;\"candlestick\"===s.chart.type?(h=r.seriesCandleL,c=r.seriesCandleH):\"boxPlot\"===s.chart.type?(h=r.seriesCandleO,c=r.seriesCandleC):r.isRangeData&&(h=r.seriesRangeStart,c=r.seriesRangeEnd);for(var d=t;dh[d][g]&&h[d][g]<0&&(n=h[d][g])):r.hasNullValues=!0}}return\"rangeBar\"===s.chart.type&&r.seriesRangeStart.length&&r.isBarHorizontal&&(n=e),\"bar\"===s.chart.type&&(n<0&&o<0&&(o=0),n===Number.MIN_VALUE&&(n=0)),{minY:n,maxY:o,lowestY:e,highestY:i}}},{key:\"setYRange\",value:function(){var t=this.w.globals,e=this.w.config;t.maxY=-Number.MAX_VALUE,t.minY=Number.MIN_VALUE;var i=Number.MAX_VALUE;if(t.isMultipleYAxis)for(var a=0;a=0&&i<=10||void 0!==e.yaxis[0].min||void 0!==e.yaxis[0].max)&&(o=0),t.minY=i-5*o/100,i>0&&t.minY<0&&(t.minY=0),t.maxY=t.maxY+5*o/100}if(e.yaxis.forEach((function(e,i){void 0!==e.max&&(\"number\"==typeof e.max?t.maxYArr[i]=e.max:\"function\"==typeof e.max&&(t.maxYArr[i]=e.max(t.isMultipleYAxis?t.maxYArr[i]:t.maxY)),t.maxY=t.maxYArr[i]),void 0!==e.min&&(\"number\"==typeof e.min?t.minYArr[i]=e.min:\"function\"==typeof e.min&&(t.minYArr[i]=e.min(t.isMultipleYAxis?t.minYArr[i]===Number.MIN_VALUE?0:t.minYArr[i]:t.minY)),t.minY=t.minYArr[i])})),t.isBarHorizontal){[\"min\",\"max\"].forEach((function(i){void 0!==e.xaxis[i]&&\"number\"==typeof e.xaxis[i]&&(\"min\"===i?t.minY=e.xaxis[i]:t.maxY=e.xaxis[i])}))}return t.isMultipleYAxis?(this.scales.setMultipleYScales(),t.minY=i,t.yAxisScale.forEach((function(e,i){t.minYArr[i]=e.niceMin,t.maxYArr[i]=e.niceMax}))):(this.scales.setYScaleForIndex(0,t.minY,t.maxY),t.minY=t.yAxisScale[0].niceMin,t.maxY=t.yAxisScale[0].niceMax,t.minYArr[0]=t.yAxisScale[0].niceMin,t.maxYArr[0]=t.yAxisScale[0].niceMax),{minY:t.minY,maxY:t.maxY,minYArr:t.minYArr,maxYArr:t.maxYArr,yAxisScale:t.yAxisScale}}},{key:\"setXRange\",value:function(){var t=this.w.globals,e=this.w.config,i=\"numeric\"===e.xaxis.type||\"datetime\"===e.xaxis.type||\"category\"===e.xaxis.type&&!t.noLabelsProvided||t.noLabelsProvided||t.isXNumeric;if(t.isXNumeric&&function(){for(var e=0;et.dataPoints&&0!==t.dataPoints&&(a=t.dataPoints-1)):\"dataPoints\"===e.xaxis.tickAmount?(t.series.length>1&&(a=t.series[t.maxValsInArrayIndex].length-1),t.isXNumeric&&(a=t.maxX-t.minX-1)):a=e.xaxis.tickAmount,t.xTickAmount=a,void 0!==e.xaxis.max&&\"number\"==typeof e.xaxis.max&&(t.maxX=e.xaxis.max),void 0!==e.xaxis.min&&\"number\"==typeof e.xaxis.min&&(t.minX=e.xaxis.min),void 0!==e.xaxis.range&&(t.minX=t.maxX-e.xaxis.range),t.minX!==Number.MAX_VALUE&&t.maxX!==-Number.MAX_VALUE)if(e.xaxis.convertedCatToNumeric&&!t.dataFormatXNumeric){for(var s=[],r=t.minX-1;r0&&(t.xAxisScale=this.scales.linearScale(1,t.labels.length,a-1),t.seriesX=t.labels.slice());i&&(t.labels=t.xAxisScale.result.slice())}return t.isBarHorizontal&&t.labels.length&&(t.xTickAmount=t.labels.length),this._handleSingleDataPoint(),this._getMinXDiff(),{minX:t.minX,maxX:t.maxX}}},{key:\"setZRange\",value:function(){var t=this.w.globals;if(t.isDataXYZ)for(var e=0;e0){var s=e-a[i-1];s>0&&(t.minXDiff=Math.min(s,t.minXDiff))}})),1!==t.dataPoints&&t.minXDiff!==Number.MAX_VALUE||(t.minXDiff=.5)}))}},{key:\"_setStackedMinMax\",value:function(){var t=this.w.globals,e=[],i=[];if(t.series.length)for(var a=0;a0?s=s+parseFloat(t.series[o][a])+1e-4:r+=parseFloat(t.series[o][a])),o===t.series.length-1&&(e.push(s),i.push(r));for(var n=0;n=0;b--)x(b);if(void 0!==i.config.yaxis[t].title.text){var v=a.group({class:\"apexcharts-yaxis-title\"}),y=0;i.config.yaxis[t].opposite&&(y=i.globals.translateYAxisX[t]);var w=a.drawText({x:y,y:i.globals.gridHeight/2+i.globals.translateY+i.config.yaxis[t].title.offsetY,text:i.config.yaxis[t].title.text,textAnchor:\"end\",foreColor:i.config.yaxis[t].title.style.color,fontSize:i.config.yaxis[t].title.style.fontSize,fontWeight:i.config.yaxis[t].title.style.fontWeight,fontFamily:i.config.yaxis[t].title.style.fontFamily,cssClass:\"apexcharts-yaxis-title-text \"+i.config.yaxis[t].title.style.cssClass});v.add(w),l.add(v)}var k=i.config.yaxis[t].axisBorder,A=31+k.offsetX;if(i.config.yaxis[t].opposite&&(A=-31-k.offsetX),k.show){var S=a.drawLine(A,i.globals.translateY+k.offsetY-2,A,i.globals.gridHeight+i.globals.translateY+k.offsetY+2,k.color,0,k.width);l.add(S)}return i.config.yaxis[t].axisTicks.show&&this.axesUtils.drawYAxisTicks(A,c,k,i.config.yaxis[t].axisTicks,t,d,l),l}},{key:\"drawYaxisInversed\",value:function(t){var e=this.w,i=new m(this.ctx),a=i.group({class:\"apexcharts-xaxis apexcharts-yaxis-inversed\"}),s=i.group({class:\"apexcharts-xaxis-texts-g\",transform:\"translate(\".concat(e.globals.translateXAxisX,\", \").concat(e.globals.translateXAxisY,\")\")});a.add(s);var r=e.globals.yAxisScale[t].result.length-1,o=e.globals.gridWidth/r+.1,n=o+e.config.xaxis.labels.offsetX,l=e.globals.xLabelFormatter,h=e.globals.yAxisScale[t].result.slice(),c=e.globals.timescaleLabels;c.length>0&&(this.xaxisLabels=c.slice(),r=(h=c.slice()).length),h=this.axesUtils.checkForReversedLabels(t,h);var d=c.length;if(e.config.xaxis.labels.show)for(var g=d?0:r;d?g=0;d?g++:g--){var u=h[g];u=l(u,g,e);var f=e.globals.gridWidth+e.globals.padHorizontal-(n-o+e.config.xaxis.labels.offsetX);if(c.length){var p=this.axesUtils.getLabel(h,c,f,g,this.drawnLabels,this.xaxisFontSize);f=p.x,u=p.text,this.drawnLabels.push(p.text),0===g&&e.globals.skipFirstTimelinelabel&&(u=\"\"),g===h.length-1&&e.globals.skipLastTimelinelabel&&(u=\"\")}var x=i.drawText({x:f,y:this.xAxisoffX+e.config.xaxis.labels.offsetY+30-(\"top\"===e.config.xaxis.position?e.globals.xAxisHeight+e.config.xaxis.axisTicks.height-2:0),text:u,textAnchor:\"middle\",foreColor:Array.isArray(this.xaxisForeColors)?this.xaxisForeColors[t]:this.xaxisForeColors,fontSize:this.xaxisFontSize,fontFamily:this.xaxisFontFamily,fontWeight:e.config.xaxis.labels.style.fontWeight,isPlainText:!1,cssClass:\"apexcharts-xaxis-label \"+e.config.xaxis.labels.style.cssClass});s.add(x),x.tspan(u);var b=document.createElementNS(e.globals.SVGNS,\"title\");b.textContent=u,x.node.appendChild(b),n+=o}return this.inversedYAxisTitleText(a),this.inversedYAxisBorder(a),a}},{key:\"inversedYAxisBorder\",value:function(t){var e=this.w,i=new m(this.ctx),a=e.config.xaxis.axisBorder;if(a.show){var s=0;\"bar\"===e.config.chart.type&&e.globals.isXNumeric&&(s-=15);var r=i.drawLine(e.globals.padHorizontal+s+a.offsetX,this.xAxisoffX,e.globals.gridWidth,this.xAxisoffX,a.color,0,a.height);this.elgrid&&this.elgrid.elGridBorders?this.elgrid.elGridBorders.add(r):t.add(r)}}},{key:\"inversedYAxisTitleText\",value:function(t){var e=this.w,i=new m(this.ctx);if(void 0!==e.config.xaxis.title.text){var a=i.group({class:\"apexcharts-xaxis-title apexcharts-yaxis-title-inversed\"}),s=i.drawText({x:e.globals.gridWidth/2+e.config.xaxis.title.offsetX,y:this.xAxisoffX+parseFloat(this.xaxisFontSize)+parseFloat(e.config.xaxis.title.style.fontSize)+e.config.xaxis.title.offsetY+20,text:e.config.xaxis.title.text,textAnchor:\"middle\",fontSize:e.config.xaxis.title.style.fontSize,fontFamily:e.config.xaxis.title.style.fontFamily,fontWeight:e.config.xaxis.title.style.fontWeight,foreColor:e.config.xaxis.title.style.color,cssClass:\"apexcharts-xaxis-title-text \"+e.config.xaxis.title.style.cssClass});a.add(s),t.add(a)}}},{key:\"yAxisTitleRotate\",value:function(t,e){var i=this.w,a=new m(this.ctx),s={width:0,height:0},r={width:0,height:0},o=i.globals.dom.baseEl.querySelector(\" .apexcharts-yaxis[rel='\".concat(t,\"'] .apexcharts-yaxis-texts-g\"));null!==o&&(s=o.getBoundingClientRect());var n=i.globals.dom.baseEl.querySelector(\".apexcharts-yaxis[rel='\".concat(t,\"'] .apexcharts-yaxis-title text\"));if(null!==n&&(r=n.getBoundingClientRect()),null!==n){var l=this.xPaddingForYAxisTitle(t,s,r,e);n.setAttribute(\"x\",l.xPos-(e?10:0))}if(null!==n){var h=a.rotateAroundCenter(n);n.setAttribute(\"transform\",\"rotate(\".concat(e?-1*i.config.yaxis[t].title.rotate:i.config.yaxis[t].title.rotate,\" \").concat(h.x,\" \").concat(h.y,\")\"))}}},{key:\"xPaddingForYAxisTitle\",value:function(t,e,i,a){var s=this.w,r=0,o=0,n=10;return void 0===s.config.yaxis[t].title.text||t<0?{xPos:o,padd:0}:(a?(o=e.width+s.config.yaxis[t].title.offsetX+i.width/2+n/2,0===(r+=1)&&(o-=n/2)):(o=-1*e.width+s.config.yaxis[t].title.offsetX+n/2+i.width/2,s.globals.isBarHorizontal&&(n=25,o=-1*e.width-s.config.yaxis[t].title.offsetX-n)),{xPos:o,padd:n})}},{key:\"setYAxisXPosition\",value:function(t,e){var i=this.w,a=0,s=0,r=18,o=1;i.config.yaxis.length>1&&(this.multipleYs=!0),i.config.yaxis.map((function(n,l){var h=i.globals.ignoreYAxisIndexes.indexOf(l)>-1||!n.show||n.floating||0===t[l].width,c=t[l].width+e[l].width;n.opposite?i.globals.isBarHorizontal?(s=i.globals.gridWidth+i.globals.translateX-1,i.globals.translateYAxisX[l]=s-n.labels.offsetX):(s=i.globals.gridWidth+i.globals.translateX+o,h||(o=o+c+20),i.globals.translateYAxisX[l]=s-n.labels.offsetX+20):(a=i.globals.translateX-r,h||(r=r+c+20),i.globals.translateYAxisX[l]=a+n.labels.offsetX)}))}},{key:\"setYAxisTextAlignments\",value:function(){var t=this.w,e=t.globals.dom.baseEl.getElementsByClassName(\"apexcharts-yaxis\");(e=x.listToArray(e)).forEach((function(e,i){var a=t.config.yaxis[i];if(a&&void 0!==a.labels.align){var s=t.globals.dom.baseEl.querySelector(\".apexcharts-yaxis[rel='\".concat(i,\"'] .apexcharts-yaxis-texts-g\")),r=t.globals.dom.baseEl.querySelectorAll(\".apexcharts-yaxis[rel='\".concat(i,\"'] .apexcharts-yaxis-label\"));r=x.listToArray(r);var o=s.getBoundingClientRect();\"left\"===a.labels.align?(r.forEach((function(t,e){t.setAttribute(\"text-anchor\",\"start\")})),a.opposite||s.setAttribute(\"transform\",\"translate(-\".concat(o.width,\", 0)\"))):\"center\"===a.labels.align?(r.forEach((function(t,e){t.setAttribute(\"text-anchor\",\"middle\")})),s.setAttribute(\"transform\",\"translate(\".concat(o.width/2*(a.opposite?1:-1),\", 0)\"))):\"right\"===a.labels.align&&(r.forEach((function(t,e){t.setAttribute(\"text-anchor\",\"end\")})),a.opposite&&s.setAttribute(\"transform\",\"translate(\".concat(o.width,\", 0)\")))}}))}}]),t}(),Z=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.documentEvent=x.bind(this.documentEvent,this)}return r(t,[{key:\"addEventListener\",value:function(t,e){var i=this.w;i.globals.events.hasOwnProperty(t)?i.globals.events[t].push(e):i.globals.events[t]=[e]}},{key:\"removeEventListener\",value:function(t,e){var i=this.w;if(i.globals.events.hasOwnProperty(t)){var a=i.globals.events[t].indexOf(e);-1!==a&&i.globals.events[t].splice(a,1)}}},{key:\"fireEvent\",value:function(t,e){var i=this.w;if(i.globals.events.hasOwnProperty(t)){e&&e.length||(e=[]);for(var a=i.globals.events[t],s=a.length,r=0;r0&&(e=this.w.config.chart.locales.concat(window.Apex.chart.locales));var i=e.filter((function(e){return e.name===t}))[0];if(!i)throw new Error(\"Wrong locale name provided. Please make sure you set the correct locale name in options\");var a=x.extend(C,i);this.w.globals.locale=a.options}}]),t}(),J=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"drawAxis\",value:function(t,e){var i,a,s=this.w.globals,r=this.w.config,o=new V(this.ctx,e),n=new q(this.ctx,e);s.axisCharts&&\"radar\"!==t&&(s.isBarHorizontal?(a=n.drawYaxisInversed(0),i=o.drawXaxisInversed(0),s.dom.elGraphical.add(i),s.dom.elGraphical.add(a)):(i=o.drawXaxis(),s.dom.elGraphical.add(i),r.yaxis.map((function(t,e){-1===s.ignoreYAxisIndexes.indexOf(e)&&(a=n.drawYaxis(e),s.dom.Paper.add(a))}))))}}]),t}(),Q=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"drawXCrosshairs\",value:function(){var t=this.w,e=new m(this.ctx),i=new v(this.ctx),a=t.config.xaxis.crosshairs.fill.gradient,s=t.config.xaxis.crosshairs.dropShadow,r=t.config.xaxis.crosshairs.fill.type,o=a.colorFrom,n=a.colorTo,l=a.opacityFrom,h=a.opacityTo,c=a.stops,d=s.enabled,g=s.left,u=s.top,f=s.blur,p=s.color,b=s.opacity,y=t.config.xaxis.crosshairs.fill.color;if(t.config.xaxis.crosshairs.show){\"gradient\"===r&&(y=e.drawGradient(\"vertical\",o,n,l,h,null,c,null));var w=e.drawRect();1===t.config.xaxis.crosshairs.width&&(w=e.drawLine());var k=t.globals.gridHeight;(!x.isNumber(k)||k<0)&&(k=0);var A=t.config.xaxis.crosshairs.width;(!x.isNumber(A)||A<0)&&(A=0),w.attr({class:\"apexcharts-xcrosshairs\",x:0,y:0,y2:k,width:A,height:k,fill:y,filter:\"none\",\"fill-opacity\":t.config.xaxis.crosshairs.opacity,stroke:t.config.xaxis.crosshairs.stroke.color,\"stroke-width\":t.config.xaxis.crosshairs.stroke.width,\"stroke-dasharray\":t.config.xaxis.crosshairs.stroke.dashArray}),d&&(w=i.dropShadow(w,{left:g,top:u,blur:f,color:p,opacity:b})),t.globals.dom.elGraphical.add(w)}}},{key:\"drawYCrosshairs\",value:function(){var t=this.w,e=new m(this.ctx),i=t.config.yaxis[0].crosshairs,a=t.globals.barPadForNumericAxis;if(t.config.yaxis[0].crosshairs.show){var s=e.drawLine(-a,0,t.globals.gridWidth+a,0,i.stroke.color,i.stroke.dashArray,i.stroke.width);s.attr({class:\"apexcharts-ycrosshairs\"}),t.globals.dom.elGraphical.add(s)}var r=e.drawLine(-a,0,t.globals.gridWidth+a,0,i.stroke.color,0,0);r.attr({class:\"apexcharts-ycrosshairs-hidden\"}),t.globals.dom.elGraphical.add(r)}}]),t}(),K=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"checkResponsiveConfig\",value:function(t){var e=this,i=this.w,a=i.config;if(0!==a.responsive.length){var s=a.responsive.slice();s.sort((function(t,e){return t.breakpoint>e.breakpoint?1:e.breakpoint>t.breakpoint?-1:0})).reverse();var r=new X({}),o=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},a=s[0].breakpoint,o=window.innerWidth>0?window.innerWidth:screen.width;if(o>a){var n=y.extendArrayProps(r,i.globals.initialConfig,i);t=x.extend(n,t),t=x.extend(i.config,t),e.overrideResponsiveOptions(t)}else for(var l=0;l0&&\"function\"==typeof e.config.colors[0]&&(e.globals.colors=e.config.series.map((function(i,a){var s=e.config.colors[a];return s||(s=e.config.colors[0]),\"function\"==typeof s?(t.isColorFn=!0,s({value:e.globals.axisCharts?e.globals.series[a][0]?e.globals.series[a][0]:0:e.globals.series[a],seriesIndex:a,dataPointIndex:a,w:e})):s})))),e.globals.seriesColors.map((function(t,i){t&&(e.globals.colors[i]=t)})),e.config.theme.monochrome.enabled){var a=[],s=e.globals.series.length;(this.isBarDistributed||this.isHeatmapDistributed)&&(s=e.globals.series[0].length*e.globals.series.length);for(var r=e.config.theme.monochrome.color,o=1/(s/e.config.theme.monochrome.shadeIntensity),n=e.config.theme.monochrome.shadeTo,l=0,h=0;h2&&void 0!==arguments[2]?arguments[2]:null,a=this.w,s=e||a.globals.series.length;if(null===i&&(i=this.isBarDistributed||this.isHeatmapDistributed||\"heatmap\"===a.config.chart.type&&a.config.plotOptions.heatmap.colorScale.inverse),i&&a.globals.series.length&&(s=a.globals.series[a.globals.maxValsInArrayIndex].length*a.globals.series.length),t.lengtht.globals.svgWidth&&(this.dCtx.lgRect.width=t.globals.svgWidth/1.5),this.dCtx.lgRect}},{key:\"getLargestStringFromMultiArr\",value:function(t,e){var i=t;if(this.w.globals.isMultiLineX){var a=e.map((function(t,e){return Array.isArray(t)?t.length:1})),s=Math.max.apply(Math,u(a));i=e[a.indexOf(s)]}return i}}]),t}(),at=function(){function t(e){a(this,t),this.w=e.w,this.dCtx=e}return r(t,[{key:\"getxAxisLabelsCoords\",value:function(){var t,e=this.w,i=e.globals.labels.slice();if(e.config.xaxis.convertedCatToNumeric&&0===i.length&&(i=e.globals.categoryLabels),e.globals.timescaleLabels.length>0){var a=this.getxAxisTimeScaleLabelsCoords();t={width:a.width,height:a.height},e.globals.rotateXLabels=!1}else{this.dCtx.lgWidthForSideLegends=\"left\"!==e.config.legend.position&&\"right\"!==e.config.legend.position||e.config.legend.floating?0:this.dCtx.lgRect.width;var s=e.globals.xLabelFormatter,r=x.getLargestStringFromArr(i),o=this.dCtx.dimHelpers.getLargestStringFromMultiArr(r,i);e.globals.isBarHorizontal&&(o=r=e.globals.yAxisScale[0].result.reduce((function(t,e){return t.length>e.length?t:e}),0));var n=new W(this.dCtx.ctx),l=r;r=n.xLabelFormat(s,r,l,{i:void 0,dateFormatter:new T(this.dCtx.ctx).formatDate,w:e}),o=n.xLabelFormat(s,o,l,{i:void 0,dateFormatter:new T(this.dCtx.ctx).formatDate,w:e}),(e.config.xaxis.convertedCatToNumeric&&void 0===r||\"\"===String(r).trim())&&(o=r=\"1\");var h=new m(this.dCtx.ctx),c=h.getTextRects(r,e.config.xaxis.labels.style.fontSize),d=c;if(r!==o&&(d=h.getTextRects(o,e.config.xaxis.labels.style.fontSize)),(t={width:c.width>=d.width?c.width:d.width,height:c.height>=d.height?c.height:d.height}).width*i.length>e.globals.svgWidth-this.dCtx.lgWidthForSideLegends-this.dCtx.yAxisWidth-this.dCtx.gridPad.left-this.dCtx.gridPad.right&&0!==e.config.xaxis.labels.rotate||e.config.xaxis.labels.rotateAlways){if(!e.globals.isBarHorizontal){e.globals.rotateXLabels=!0;var g=function(t){return h.getTextRects(t,e.config.xaxis.labels.style.fontSize,e.config.xaxis.labels.style.fontFamily,\"rotate(\".concat(e.config.xaxis.labels.rotate,\" 0 0)\"),!1)};c=g(r),r!==o&&(d=g(o)),t.height=(c.height>d.height?c.height:d.height)/1.5,t.width=c.width>d.width?c.width:d.width}}else e.globals.rotateXLabels=!1}return e.config.xaxis.labels.show||(t={width:0,height:0}),{width:t.width,height:t.height}}},{key:\"getxAxisGroupLabelsCoords\",value:function(){var t,e=this.w;if(!e.globals.hasGroups)return{width:0,height:0};var i,a=(null===(t=e.config.xaxis.group.style)||void 0===t?void 0:t.fontSize)||e.config.xaxis.labels.style.fontSize,s=e.globals.groups.map((function(t){return t.title})),r=x.getLargestStringFromArr(s),o=this.dCtx.dimHelpers.getLargestStringFromMultiArr(r,s),n=new m(this.dCtx.ctx),l=n.getTextRects(r,a),h=l;return r!==o&&(h=n.getTextRects(o,a)),i={width:l.width>=h.width?l.width:h.width,height:l.height>=h.height?l.height:h.height},e.config.xaxis.labels.show||(i={width:0,height:0}),{width:i.width,height:i.height}}},{key:\"getxAxisTitleCoords\",value:function(){var t=this.w,e=0,i=0;if(void 0!==t.config.xaxis.title.text){var a=new m(this.dCtx.ctx).getTextRects(t.config.xaxis.title.text,t.config.xaxis.title.style.fontSize);e=a.width,i=a.height}return{width:e,height:i}}},{key:\"getxAxisTimeScaleLabelsCoords\",value:function(){var t,e=this.w;this.dCtx.timescaleLabels=e.globals.timescaleLabels.slice();var i=this.dCtx.timescaleLabels.map((function(t){return t.value})),a=i.reduce((function(t,e){return void 0===t?(console.error(\"You have possibly supplied invalid Date format. Please supply a valid JavaScript Date\"),0):t.length>e.length?t:e}),0);return 1.05*(t=new m(this.dCtx.ctx).getTextRects(a,e.config.xaxis.labels.style.fontSize)).width*i.length>e.globals.gridWidth&&0!==e.config.xaxis.labels.rotate&&(e.globals.overlappingXLabels=!0),t}},{key:\"additionalPaddingXLabels\",value:function(t){var e=this,i=this.w,a=i.globals,s=i.config,r=s.xaxis.type,o=t.width;a.skipLastTimelinelabel=!1,a.skipFirstTimelinelabel=!1;var n=i.config.yaxis[0].opposite&&i.globals.isBarHorizontal,l=function(t,n){(function(t){return-1!==a.collapsedSeriesIndices.indexOf(t)})(n)||function(t){if(e.dCtx.timescaleLabels&&e.dCtx.timescaleLabels.length){var n=e.dCtx.timescaleLabels[0],l=e.dCtx.timescaleLabels[e.dCtx.timescaleLabels.length-1].position+o/1.75-e.dCtx.yAxisWidthRight,h=n.position-o/1.75+e.dCtx.yAxisWidthLeft,c=\"right\"===i.config.legend.position&&e.dCtx.lgRect.width>0?e.dCtx.lgRect.width:0;l>a.svgWidth-a.translateX-c&&(a.skipLastTimelinelabel=!0),h<-(t.show&&!t.floating||\"bar\"!==s.chart.type&&\"candlestick\"!==s.chart.type&&\"rangeBar\"!==s.chart.type&&\"boxPlot\"!==s.chart.type?10:o/1.75)&&(a.skipFirstTimelinelabel=!0)}else\"datetime\"===r?e.dCtx.gridPad.rightString(n.niceMax).length?c:n.niceMax,g=h(d,{seriesIndex:o,dataPointIndex:-1,w:e}),u=g;if(void 0!==g&&0!==g.length||(g=d),e.globals.isBarHorizontal){a=0;var f=e.globals.labels.slice();g=h(g=x.getLargestStringFromArr(f),{seriesIndex:o,dataPointIndex:-1,w:e}),u=t.dCtx.dimHelpers.getLargestStringFromMultiArr(g,f)}var p=new m(t.dCtx.ctx),b=\"rotate(\".concat(r.labels.rotate,\" 0 0)\"),v=p.getTextRects(g,r.labels.style.fontSize,r.labels.style.fontFamily,b,!1),y=v;g!==u&&(y=p.getTextRects(u,r.labels.style.fontSize,r.labels.style.fontFamily,b,!1)),i.push({width:(l>y.width||l>v.width?l:y.width>v.width?y.width:v.width)+a,height:y.height>v.height?y.height:v.height})}else i.push({width:0,height:0})})),i}},{key:\"getyAxisTitleCoords\",value:function(){var t=this,e=this.w,i=[];return e.config.yaxis.map((function(e,a){if(e.show&&void 0!==e.title.text){var s=new m(t.dCtx.ctx),r=\"rotate(\".concat(e.title.rotate,\" 0 0)\"),o=s.getTextRects(e.title.text,e.title.style.fontSize,e.title.style.fontFamily,r,!1);i.push({width:o.width,height:o.height})}else i.push({width:0,height:0})})),i}},{key:\"getTotalYAxisWidth\",value:function(){var t=this.w,e=0,i=0,a=0,s=t.globals.yAxisScale.length>1?10:0,r=new B(this.dCtx.ctx),o=function(o,n){var l=t.config.yaxis[n].floating,h=0;o.width>0&&!l?(h=o.width+s,function(e){return t.globals.ignoreYAxisIndexes.indexOf(e)>-1}(n)&&(h=h-o.width-s)):h=l||r.isYAxisHidden(n)?0:5,t.config.yaxis[n].opposite?a+=h:i+=h,e+=h};return t.globals.yLabelsCoords.map((function(t,e){o(t,e)})),t.globals.yTitleCoords.map((function(t,e){o(t,e)})),t.globals.isBarHorizontal&&!t.config.yaxis[0].floating&&(e=t.globals.yLabelsCoords[0].width+t.globals.yTitleCoords[0].width+15),this.dCtx.yAxisWidthLeft=i,this.dCtx.yAxisWidthRight=a,e}}]),t}(),rt=function(){function t(e){a(this,t),this.w=e.w,this.dCtx=e}return r(t,[{key:\"gridPadForColumnsInNumericAxis\",value:function(t){var e=this.w;if(e.globals.noData||e.globals.allSeriesCollapsed)return 0;var i=function(t){return\"bar\"===t||\"rangeBar\"===t||\"candlestick\"===t||\"boxPlot\"===t},a=e.config.chart.type,s=0,r=i(a)?e.config.series.length:1;if(e.globals.comboBarCount>0&&(r=e.globals.comboBarCount),e.globals.collapsedSeries.forEach((function(t){i(t.type)&&(r-=1)})),e.config.chart.stacked&&(r=1),(i(a)||e.globals.comboBarCount>0)&&e.globals.isXNumeric&&!e.globals.isBarHorizontal&&r>0){var o,n,l=Math.abs(e.globals.initialMaxX-e.globals.initialMinX);l<=3&&(l=e.globals.dataPoints),o=l/t,e.globals.minXDiff&&e.globals.minXDiff/o>0&&(n=e.globals.minXDiff/o),n>t/2&&(n/=2),(s=n/r*parseInt(e.config.plotOptions.bar.columnWidth,10)/100)<1&&(s=1),s=s/(r>1?1:1.5)+5,e.globals.barPadForNumericAxis=s}return s}},{key:\"gridPadFortitleSubtitle\",value:function(){var t=this,e=this.w,i=e.globals,a=this.dCtx.isSparkline||!e.globals.axisCharts?0:10;[\"title\",\"subtitle\"].forEach((function(i){void 0!==e.config[i].text?a+=e.config[i].margin:a+=t.dCtx.isSparkline||!e.globals.axisCharts?0:5})),!e.config.legend.show||\"bottom\"!==e.config.legend.position||e.config.legend.floating||e.globals.axisCharts||(a+=10);var s=this.dCtx.dimHelpers.getTitleSubtitleCoords(\"title\"),r=this.dCtx.dimHelpers.getTitleSubtitleCoords(\"subtitle\");i.gridHeight=i.gridHeight-s.height-r.height-a,i.translateY=i.translateY+s.height+r.height+a}},{key:\"setGridXPosForDualYAxis\",value:function(t,e){var i=this.w,a=new B(this.dCtx.ctx);i.config.yaxis.map((function(s,r){-1!==i.globals.ignoreYAxisIndexes.indexOf(r)||s.floating||a.isYAxisHidden(r)||(s.opposite&&(i.globals.translateX=i.globals.translateX-(e[r].width+t[r].width)-parseInt(i.config.yaxis[r].labels.style.fontSize,10)/1.2-12),i.globals.translateX<2&&(i.globals.translateX=2))}))}}]),t}(),ot=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.lgRect={},this.yAxisWidth=0,this.yAxisWidthLeft=0,this.yAxisWidthRight=0,this.xAxisHeight=0,this.isSparkline=this.w.config.chart.sparkline.enabled,this.dimHelpers=new it(this),this.dimYAxis=new st(this),this.dimXAxis=new at(this),this.dimGrid=new rt(this),this.lgWidthForSideLegends=0,this.gridPad=this.w.config.grid.padding,this.xPadRight=0,this.xPadLeft=0}return r(t,[{key:\"plotCoords\",value:function(){var t=this,e=this.w,i=e.globals;this.lgRect=this.dimHelpers.getLegendsRect(),this.isSparkline&&(e.config.markers.discrete.length>0||e.config.markers.size>0)&&Object.entries(this.gridPad).forEach((function(e){var i=g(e,2),a=i[0],s=i[1];t.gridPad[a]=Math.max(s,t.w.globals.markers.largestSize/1.5)})),i.axisCharts?this.setDimensionsForAxisCharts():this.setDimensionsForNonAxisCharts(),this.dimGrid.gridPadFortitleSubtitle(),i.gridHeight=i.gridHeight-this.gridPad.top-this.gridPad.bottom,i.gridWidth=i.gridWidth-this.gridPad.left-this.gridPad.right-this.xPadRight-this.xPadLeft;var a=this.dimGrid.gridPadForColumnsInNumericAxis(i.gridWidth);i.gridWidth=i.gridWidth-2*a,i.translateX=i.translateX+this.gridPad.left+this.xPadLeft+(a>0?a+4:0),i.translateY=i.translateY+this.gridPad.top}},{key:\"setDimensionsForAxisCharts\",value:function(){var t=this,e=this.w,i=e.globals,a=this.dimYAxis.getyAxisLabelsCoords(),s=this.dimYAxis.getyAxisTitleCoords();e.globals.yLabelsCoords=[],e.globals.yTitleCoords=[],e.config.yaxis.map((function(t,i){e.globals.yLabelsCoords.push({width:a[i].width,index:i}),e.globals.yTitleCoords.push({width:s[i].width,index:i})})),this.yAxisWidth=this.dimYAxis.getTotalYAxisWidth();var r=this.dimXAxis.getxAxisLabelsCoords(),o=this.dimXAxis.getxAxisGroupLabelsCoords(),n=this.dimXAxis.getxAxisTitleCoords();this.conditionalChecksForAxisCoords(r,n,o),i.translateXAxisY=e.globals.rotateXLabels?this.xAxisHeight/8:-4,i.translateXAxisX=e.globals.rotateXLabels&&e.globals.isXNumeric&&e.config.xaxis.labels.rotate<=-45?-this.xAxisWidth/4:0,e.globals.isBarHorizontal&&(i.rotateXLabels=!1,i.translateXAxisY=parseInt(e.config.xaxis.labels.style.fontSize,10)/1.5*-1),i.translateXAxisY=i.translateXAxisY+e.config.xaxis.labels.offsetY,i.translateXAxisX=i.translateXAxisX+e.config.xaxis.labels.offsetX;var l=this.yAxisWidth,h=this.xAxisHeight;i.xAxisLabelsHeight=this.xAxisHeight-n.height,i.xAxisGroupLabelsHeight=i.xAxisLabelsHeight-r.height,i.xAxisLabelsWidth=this.xAxisWidth,i.xAxisHeight=this.xAxisHeight;var c=10;(\"radar\"===e.config.chart.type||this.isSparkline)&&(l=0,h=i.goldenPadding),this.isSparkline&&(this.lgRect={height:0,width:0}),(this.isSparkline||\"treemap\"===e.config.chart.type)&&(l=0,h=0,c=0),this.isSparkline||this.dimXAxis.additionalPaddingXLabels(r);var d=function(){i.translateX=l,i.gridHeight=i.svgHeight-t.lgRect.height-h-(t.isSparkline||\"treemap\"===e.config.chart.type?0:e.globals.rotateXLabels?10:15),i.gridWidth=i.svgWidth-l};switch(\"top\"===e.config.xaxis.position&&(c=i.xAxisHeight-e.config.xaxis.axisTicks.height-5),e.config.legend.position){case\"bottom\":i.translateY=c,d();break;case\"top\":i.translateY=this.lgRect.height+c,d();break;case\"left\":i.translateY=c,i.translateX=this.lgRect.width+l,i.gridHeight=i.svgHeight-h-12,i.gridWidth=i.svgWidth-this.lgRect.width-l;break;case\"right\":i.translateY=c,i.translateX=l,i.gridHeight=i.svgHeight-h-12,i.gridWidth=i.svgWidth-this.lgRect.width-l-5;break;default:throw new Error(\"Legend position not supported\")}this.dimGrid.setGridXPosForDualYAxis(s,a),new q(this.ctx).setYAxisXPosition(a,s)}},{key:\"setDimensionsForNonAxisCharts\",value:function(){var t=this.w,e=t.globals,i=t.config,a=0;t.config.legend.show&&!t.config.legend.floating&&(a=20);var s=\"pie\"===i.chart.type||\"polarArea\"===i.chart.type||\"donut\"===i.chart.type?\"pie\":\"radialBar\",r=i.plotOptions[s].offsetY,o=i.plotOptions[s].offsetX;if(!i.legend.show||i.legend.floating)return e.gridHeight=e.svgHeight-i.grid.padding.left+i.grid.padding.right,e.gridWidth=e.gridHeight,e.translateY=r,void(e.translateX=o+(e.svgWidth-e.gridWidth)/2);switch(i.legend.position){case\"bottom\":e.gridHeight=e.svgHeight-this.lgRect.height-e.goldenPadding,e.gridWidth=e.svgWidth,e.translateY=r-10,e.translateX=o+(e.svgWidth-e.gridWidth)/2;break;case\"top\":e.gridHeight=e.svgHeight-this.lgRect.height-e.goldenPadding,e.gridWidth=e.svgWidth,e.translateY=this.lgRect.height+r+10,e.translateX=o+(e.svgWidth-e.gridWidth)/2;break;case\"left\":e.gridWidth=e.svgWidth-this.lgRect.width-a,e.gridHeight=\"auto\"!==i.chart.height?e.svgHeight:e.gridWidth,e.translateY=r,e.translateX=o+this.lgRect.width+a;break;case\"right\":e.gridWidth=e.svgWidth-this.lgRect.width-a-5,e.gridHeight=\"auto\"!==i.chart.height?e.svgHeight:e.gridWidth,e.translateY=r,e.translateX=o+10;break;default:throw new Error(\"Legend position not supported\")}}},{key:\"conditionalChecksForAxisCoords\",value:function(t,e,i){var a=this.w,s=a.globals.hasGroups?2:1,r=i.height+t.height+e.height,o=a.globals.isMultiLineX?1.2:a.globals.LINE_HEIGHT_RATIO,n=a.globals.rotateXLabels?22:10,l=a.globals.rotateXLabels&&\"bottom\"===a.config.legend.position?10:0;this.xAxisHeight=r*o+s*n+l,this.xAxisWidth=t.width,this.xAxisHeight-e.height>a.config.xaxis.labels.maxHeight&&(this.xAxisHeight=a.config.xaxis.labels.maxHeight),a.config.xaxis.labels.minHeight&&this.xAxisHeightc&&(this.yAxisWidth=c)}}]),t}(),nt=function(){function t(e){a(this,t),this.w=e.w,this.lgCtx=e}return r(t,[{key:\"getLegendStyles\",value:function(){var t=document.createElement(\"style\");t.setAttribute(\"type\",\"text/css\");var e=document.createTextNode(\"\\t\\n \\t\\n .apexcharts-legend {\\t\\n display: flex;\\t\\n overflow: auto;\\t\\n padding: 0 10px;\\t\\n }\\t\\n .apexcharts-legend.apx-legend-position-bottom, .apexcharts-legend.apx-legend-position-top {\\t\\n flex-wrap: wrap\\t\\n }\\t\\n .apexcharts-legend.apx-legend-position-right, .apexcharts-legend.apx-legend-position-left {\\t\\n flex-direction: column;\\t\\n bottom: 0;\\t\\n }\\t\\n .apexcharts-legend.apx-legend-position-bottom.apexcharts-align-left, .apexcharts-legend.apx-legend-position-top.apexcharts-align-left, .apexcharts-legend.apx-legend-position-right, .apexcharts-legend.apx-legend-position-left {\\t\\n justify-content: flex-start;\\t\\n }\\t\\n .apexcharts-legend.apx-legend-position-bottom.apexcharts-align-center, .apexcharts-legend.apx-legend-position-top.apexcharts-align-center {\\t\\n justify-content: center; \\t\\n }\\t\\n .apexcharts-legend.apx-legend-position-bottom.apexcharts-align-right, .apexcharts-legend.apx-legend-position-top.apexcharts-align-right {\\t\\n justify-content: flex-end;\\t\\n }\\t\\n .apexcharts-legend-series {\\t\\n cursor: pointer;\\t\\n line-height: normal;\\t\\n }\\t\\n .apexcharts-legend.apx-legend-position-bottom .apexcharts-legend-series, .apexcharts-legend.apx-legend-position-top .apexcharts-legend-series{\\t\\n display: flex;\\t\\n align-items: center;\\t\\n }\\t\\n .apexcharts-legend-text {\\t\\n position: relative;\\t\\n font-size: 14px;\\t\\n }\\t\\n .apexcharts-legend-text *, .apexcharts-legend-marker * {\\t\\n pointer-events: none;\\t\\n }\\t\\n .apexcharts-legend-marker {\\t\\n position: relative;\\t\\n display: inline-block;\\t\\n cursor: pointer;\\t\\n margin-right: 3px;\\t\\n border-style: solid;\\n }\\t\\n \\t\\n .apexcharts-legend.apexcharts-align-right .apexcharts-legend-series, .apexcharts-legend.apexcharts-align-left .apexcharts-legend-series{\\t\\n display: inline-block;\\t\\n }\\t\\n .apexcharts-legend-series.apexcharts-no-click {\\t\\n cursor: auto;\\t\\n }\\t\\n .apexcharts-legend .apexcharts-hidden-zero-series, .apexcharts-legend .apexcharts-hidden-null-series {\\t\\n display: none !important;\\t\\n }\\t\\n .apexcharts-inactive-legend {\\t\\n opacity: 0.45;\\t\\n }\");return t.appendChild(e),t}},{key:\"getLegendBBox\",value:function(){var t=this.w.globals.dom.baseEl.querySelector(\".apexcharts-legend\").getBoundingClientRect(),e=t.width;return{clwh:t.height,clww:e}}},{key:\"appendToForeignObject\",value:function(){var t=this.w.globals;t.dom.elLegendForeign=document.createElementNS(t.SVGNS,\"foreignObject\");var e=t.dom.elLegendForeign;e.setAttribute(\"x\",0),e.setAttribute(\"y\",0),e.setAttribute(\"width\",t.svgWidth),e.setAttribute(\"height\",t.svgHeight),t.dom.elLegendWrap.setAttribute(\"xmlns\",\"http://www.w3.org/1999/xhtml\"),e.appendChild(t.dom.elLegendWrap),e.appendChild(this.getLegendStyles()),t.dom.Paper.node.insertBefore(e,t.dom.elGraphical.node)}},{key:\"toggleDataSeries\",value:function(t,e){var i=this,a=this.w;if(a.globals.axisCharts||\"radialBar\"===a.config.chart.type){a.globals.resized=!0;var s=null,r=null;if(a.globals.risingSeries=[],a.globals.axisCharts?(s=a.globals.dom.baseEl.querySelector(\".apexcharts-series[data\\\\:realIndex='\".concat(t,\"']\")),r=parseInt(s.getAttribute(\"data:realIndex\"),10)):(s=a.globals.dom.baseEl.querySelector(\".apexcharts-series[rel='\".concat(t+1,\"']\")),r=parseInt(s.getAttribute(\"rel\"),10)-1),e)[{cs:a.globals.collapsedSeries,csi:a.globals.collapsedSeriesIndices},{cs:a.globals.ancillaryCollapsedSeries,csi:a.globals.ancillaryCollapsedSeriesIndices}].forEach((function(t){i.riseCollapsedSeries(t.cs,t.csi,r)}));else this.hideSeries({seriesEl:s,realIndex:r})}else{var o=a.globals.dom.Paper.select(\" .apexcharts-series[rel='\".concat(t+1,\"'] path\")),n=a.config.chart.type;if(\"pie\"===n||\"polarArea\"===n||\"donut\"===n){var l=a.config.plotOptions.pie.donut.labels;new m(this.lgCtx.ctx).pathMouseDown(o.members[0],null),this.lgCtx.ctx.pie.printDataLabelsInner(o.members[0].node,l)}o.fire(\"click\")}}},{key:\"hideSeries\",value:function(t){var e=t.seriesEl,i=t.realIndex,a=this.w,s=x.clone(a.config.series);if(a.globals.axisCharts){var r=!1;if(a.config.yaxis[i]&&a.config.yaxis[i].show&&a.config.yaxis[i].showAlways&&(r=!0,a.globals.ancillaryCollapsedSeriesIndices.indexOf(i)<0&&(a.globals.ancillaryCollapsedSeries.push({index:i,data:s[i].data.slice(),type:e.parentNode.className.baseVal.split(\"-\")[1]}),a.globals.ancillaryCollapsedSeriesIndices.push(i))),!r){a.globals.collapsedSeries.push({index:i,data:s[i].data.slice(),type:e.parentNode.className.baseVal.split(\"-\")[1]}),a.globals.collapsedSeriesIndices.push(i);var o=a.globals.risingSeries.indexOf(i);a.globals.risingSeries.splice(o,1)}}else a.globals.collapsedSeries.push({index:i,data:s[i]}),a.globals.collapsedSeriesIndices.push(i);for(var n=e.childNodes,l=0;l0){for(var r=0;r-1&&(t[a].data=[])})):t.forEach((function(i,a){e.globals.collapsedSeriesIndices.indexOf(a)>-1&&(t[a]=0)})),t}}]),t}(),lt=function(){function t(e,i){a(this,t),this.ctx=e,this.w=e.w,this.onLegendClick=this.onLegendClick.bind(this),this.onLegendHovered=this.onLegendHovered.bind(this),this.isBarsDistributed=\"bar\"===this.w.config.chart.type&&this.w.config.plotOptions.bar.distributed&&1===this.w.config.series.length,this.legendHelpers=new nt(this)}return r(t,[{key:\"init\",value:function(){var t=this.w,e=t.globals,i=t.config;if((i.legend.showForSingleSeries&&1===e.series.length||this.isBarsDistributed||e.series.length>1||!e.axisCharts)&&i.legend.show){for(;e.dom.elLegendWrap.firstChild;)e.dom.elLegendWrap.removeChild(e.dom.elLegendWrap.firstChild);this.drawLegends(),x.isIE11()?document.getElementsByTagName(\"head\")[0].appendChild(this.legendHelpers.getLegendStyles()):this.legendHelpers.appendToForeignObject(),\"bottom\"===i.legend.position||\"top\"===i.legend.position?this.legendAlignHorizontal():\"right\"!==i.legend.position&&\"left\"!==i.legend.position||this.legendAlignVertical()}}},{key:\"drawLegends\",value:function(){var t=this,e=this.w,i=e.config.legend.fontFamily,a=e.globals.seriesNames,s=e.globals.colors.slice();if(\"heatmap\"===e.config.chart.type){var r=e.config.plotOptions.heatmap.colorScale.ranges;a=r.map((function(t){return t.name?t.name:t.from+\" - \"+t.to})),s=r.map((function(t){return t.color}))}else this.isBarsDistributed&&(a=e.globals.labels.slice());e.config.legend.customLegendItems.length&&(a=e.config.legend.customLegendItems);for(var o=e.globals.legendFormatter,n=e.config.legend.inverseOrder,l=n?a.length-1:0;n?l>=0:l<=a.length-1;n?l--:l++){var h=o(a[l],{seriesIndex:l,w:e}),c=!1,d=!1;if(e.globals.collapsedSeries.length>0)for(var g=0;g0)for(var u=0;u0?l-10:0)+(h>0?h-10:0)}a.style.position=\"absolute\",r=r+t+i.config.legend.offsetX,o=o+e+i.config.legend.offsetY,a.style.left=r+\"px\",a.style.top=o+\"px\",\"bottom\"===i.config.legend.position?(a.style.top=\"auto\",a.style.bottom=5-i.config.legend.offsetY+\"px\"):\"right\"===i.config.legend.position&&(a.style.left=\"auto\",a.style.right=25+i.config.legend.offsetX+\"px\");[\"width\",\"height\"].forEach((function(t){a.style[t]&&(a.style[t]=parseInt(i.config.legend[t],10)+\"px\")}))}},{key:\"legendAlignHorizontal\",value:function(){var t=this.w;t.globals.dom.baseEl.querySelector(\".apexcharts-legend\").style.right=0;var e=this.legendHelpers.getLegendBBox(),i=new ot(this.ctx),a=i.dimHelpers.getTitleSubtitleCoords(\"title\"),s=i.dimHelpers.getTitleSubtitleCoords(\"subtitle\"),r=0;\"bottom\"===t.config.legend.position?r=-e.clwh/1.8:\"top\"===t.config.legend.position&&(r=a.height+s.height+t.config.title.margin+t.config.subtitle.margin-10),this.setLegendWrapXY(20,r)}},{key:\"legendAlignVertical\",value:function(){var t=this.w,e=this.legendHelpers.getLegendBBox(),i=0;\"left\"===t.config.legend.position&&(i=20),\"right\"===t.config.legend.position&&(i=t.globals.svgWidth-e.clww-10),this.setLegendWrapXY(i,20)}},{key:\"onLegendHovered\",value:function(t){var e=this.w,i=t.target.classList.contains(\"apexcharts-legend-text\")||t.target.classList.contains(\"apexcharts-legend-marker\");if(\"heatmap\"===e.config.chart.type||this.isBarsDistributed){if(i){var a=parseInt(t.target.getAttribute(\"rel\"),10)-1;this.ctx.events.fireEvent(\"legendHover\",[this.ctx,a,this.w]),new O(this.ctx).highlightRangeInSeries(t,t.target)}}else!t.target.classList.contains(\"apexcharts-inactive-legend\")&&i&&new O(this.ctx).toggleSeriesOnHover(t,t.target)}},{key:\"onLegendClick\",value:function(t){var e=this.w;if(!e.config.legend.customLegendItems.length&&(t.target.classList.contains(\"apexcharts-legend-text\")||t.target.classList.contains(\"apexcharts-legend-marker\"))){var i=parseInt(t.target.getAttribute(\"rel\"),10)-1,a=\"true\"===t.target.getAttribute(\"data:collapsed\"),s=this.w.config.chart.events.legendClick;\"function\"==typeof s&&s(this.ctx,i,this.w),this.ctx.events.fireEvent(\"legendClick\",[this.ctx,i,this.w]);var r=this.w.config.legend.markers.onClick;\"function\"==typeof r&&t.target.classList.contains(\"apexcharts-legend-marker\")&&(r(this.ctx,i,this.w),this.ctx.events.fireEvent(\"legendMarkerClick\",[this.ctx,i,this.w])),\"treemap\"!==e.config.chart.type&&\"heatmap\"!==e.config.chart.type&&!this.isBarsDistributed&&e.config.legend.onItemClick.toggleDataSeries&&this.legendHelpers.toggleDataSeries(i,a)}}}]),t}(),ht=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w;var i=this.w;this.ev=this.w.config.chart.events,this.selectedClass=\"apexcharts-selected\",this.localeValues=this.w.globals.locale.toolbar,this.minX=i.globals.minX,this.maxX=i.globals.maxX}return r(t,[{key:\"createToolbar\",value:function(){var t=this,e=this.w,i=function(){return document.createElement(\"div\")},a=i();if(a.setAttribute(\"class\",\"apexcharts-toolbar\"),a.style.top=e.config.chart.toolbar.offsetY+\"px\",a.style.right=3-e.config.chart.toolbar.offsetX+\"px\",e.globals.dom.elWrap.appendChild(a),this.elZoom=i(),this.elZoomIn=i(),this.elZoomOut=i(),this.elPan=i(),this.elSelection=i(),this.elZoomReset=i(),this.elMenuIcon=i(),this.elMenu=i(),this.elCustomIcons=[],this.t=e.config.chart.toolbar.tools,Array.isArray(this.t.customIcons))for(var s=0;s\\n \\n \\n\\n'),o(\"zoomOut\",this.elZoomOut,'\\n \\n \\n\\n');var n=function(i){t.t[i]&&e.config.chart[i].enabled&&r.push({el:\"zoom\"===i?t.elZoom:t.elSelection,icon:\"string\"==typeof t.t[i]?t.t[i]:\"zoom\"===i?'\\n \\n \\n \\n':'\\n \\n \\n',title:t.localeValues[\"zoom\"===i?\"selectionZoom\":\"selection\"],class:e.globals.isTouchDevice?\"apexcharts-element-hidden\":\"apexcharts-\".concat(i,\"-icon\")})};n(\"zoom\"),n(\"selection\"),this.t.pan&&e.config.chart.zoom.enabled&&r.push({el:this.elPan,icon:\"string\"==typeof this.t.pan?this.t.pan:'\\n \\n \\n \\n \\n \\n \\n \\n',title:this.localeValues.pan,class:e.globals.isTouchDevice?\"apexcharts-element-hidden\":\"apexcharts-pan-icon\"}),o(\"reset\",this.elZoomReset,'\\n \\n \\n'),this.t.download&&r.push({el:this.elMenuIcon,icon:\"string\"==typeof this.t.download?this.t.download:'',title:this.localeValues.menu,class:\"apexcharts-menu-icon\"});for(var l=0;l0&&e.height>0&&this.slDraggableRect.selectize({points:\"l, r\",pointSize:8,pointType:\"rect\"}).resize({constraint:{minX:0,minY:0,maxX:t.globals.gridWidth,maxY:t.globals.gridHeight}}).on(\"resizing\",this.selectionDragging.bind(this,\"resizing\"))}}},{key:\"preselectedSelection\",value:function(){var t=this.w,e=this.xyRatios;if(!t.globals.zoomEnabled)if(void 0!==t.globals.selection&&null!==t.globals.selection)this.drawSelectionRect(t.globals.selection);else if(void 0!==t.config.chart.selection.xaxis.min&&void 0!==t.config.chart.selection.xaxis.max){var i=(t.config.chart.selection.xaxis.min-t.globals.minX)/e.xRatio,a={x:i,y:0,width:t.globals.gridWidth-(t.globals.maxX-t.config.chart.selection.xaxis.max)/e.xRatio-i,height:t.globals.gridHeight,translateX:0,translateY:0,selectionEnabled:!0};this.drawSelectionRect(a),this.makeSelectionRectDraggable(),\"function\"==typeof t.config.chart.events.selection&&t.config.chart.events.selection(this.ctx,{xaxis:{min:t.config.chart.selection.xaxis.min,max:t.config.chart.selection.xaxis.max},yaxis:{}})}}},{key:\"drawSelectionRect\",value:function(t){var e=t.x,i=t.y,a=t.width,s=t.height,r=t.translateX,o=void 0===r?0:r,n=t.translateY,l=void 0===n?0:n,h=this.w,c=this.zoomRect,d=this.selectionRect;if(this.dragged||null!==h.globals.selection){var g={transform:\"translate(\"+o+\", \"+l+\")\"};h.globals.zoomEnabled&&this.dragged&&(a<0&&(a=1),c.attr({x:e,y:i,width:a,height:s,fill:h.config.chart.zoom.zoomedArea.fill.color,\"fill-opacity\":h.config.chart.zoom.zoomedArea.fill.opacity,stroke:h.config.chart.zoom.zoomedArea.stroke.color,\"stroke-width\":h.config.chart.zoom.zoomedArea.stroke.width,\"stroke-opacity\":h.config.chart.zoom.zoomedArea.stroke.opacity}),m.setAttrs(c.node,g)),h.globals.selectionEnabled&&(d.attr({x:e,y:i,width:a>0?a:0,height:s>0?s:0,fill:h.config.chart.selection.fill.color,\"fill-opacity\":h.config.chart.selection.fill.opacity,stroke:h.config.chart.selection.stroke.color,\"stroke-width\":h.config.chart.selection.stroke.width,\"stroke-dasharray\":h.config.chart.selection.stroke.dashArray,\"stroke-opacity\":h.config.chart.selection.stroke.opacity}),m.setAttrs(d.node,g))}}},{key:\"hideSelectionRect\",value:function(t){t&&t.attr({x:0,y:0,width:0,height:0})}},{key:\"selectionDrawing\",value:function(t){var e=t.context,i=t.zoomtype,a=this.w,s=e,r=this.gridRect.getBoundingClientRect(),o=s.startX-1,n=s.startY,l=!1,h=!1,c=s.clientX-r.left-o,d=s.clientY-r.top-n,g={};return Math.abs(c+o)>a.globals.gridWidth?c=a.globals.gridWidth-o:s.clientX-r.left<0&&(c=o),o>s.clientX-r.left&&(l=!0,c=Math.abs(c)),n>s.clientY-r.top&&(h=!0,d=Math.abs(d)),g=\"x\"===i?{x:l?o-c:o,y:0,width:c,height:a.globals.gridHeight}:\"y\"===i?{x:0,y:h?n-d:n,width:a.globals.gridWidth,height:d}:{x:l?o-c:o,y:h?n-d:n,width:c,height:d},s.drawSelectionRect(g),s.selectionDragging(\"resizing\"),g}},{key:\"selectionDragging\",value:function(t,e){var i=this,a=this.w,s=this.xyRatios,r=this.selectionRect,o=0;\"resizing\"===t&&(o=30);var n=function(t){return parseFloat(r.node.getAttribute(t))},l={x:n(\"x\"),y:n(\"y\"),width:n(\"width\"),height:n(\"height\")};a.globals.selection=l,\"function\"==typeof a.config.chart.events.selection&&a.globals.selectionEnabled&&(clearTimeout(this.w.globals.selectionResizeTimer),this.w.globals.selectionResizeTimer=window.setTimeout((function(){var t=i.gridRect.getBoundingClientRect(),e=r.node.getBoundingClientRect(),o={xaxis:{min:a.globals.xAxisScale.niceMin+(e.left-t.left)*s.xRatio,max:a.globals.xAxisScale.niceMin+(e.right-t.left)*s.xRatio},yaxis:{min:a.globals.yAxisScale[0].niceMin+(t.bottom-e.bottom)*s.yRatio[0],max:a.globals.yAxisScale[0].niceMax-(e.top-t.top)*s.yRatio[0]}};a.config.chart.events.selection(i.ctx,o),a.config.chart.brush.enabled&&void 0!==a.config.chart.events.brushScrolled&&a.config.chart.events.brushScrolled(i.ctx,o)}),o))}},{key:\"selectionDrawn\",value:function(t){var e=t.context,i=t.zoomtype,a=this.w,s=e,r=this.xyRatios,o=this.ctx.toolbar;if(s.startX>s.endX){var n=s.startX;s.startX=s.endX,s.endX=n}if(s.startY>s.endY){var l=s.startY;s.startY=s.endY,s.endY=l}var h=void 0,c=void 0;a.globals.isRangeBar?(h=a.globals.yAxisScale[0].niceMin+s.startX*r.invertedYRatio,c=a.globals.yAxisScale[0].niceMin+s.endX*r.invertedYRatio):(h=a.globals.xAxisScale.niceMin+s.startX*r.xRatio,c=a.globals.xAxisScale.niceMin+s.endX*r.xRatio);var d=[],g=[];if(a.config.yaxis.forEach((function(t,e){d.push(a.globals.yAxisScale[e].niceMax-r.yRatio[e]*s.startY),g.push(a.globals.yAxisScale[e].niceMax-r.yRatio[e]*s.endY)})),s.dragged&&(s.dragX>10||s.dragY>10)&&h!==c)if(a.globals.zoomEnabled){var u=x.clone(a.globals.initialConfig.yaxis),f=x.clone(a.globals.initialConfig.xaxis);if(a.globals.zoomed=!0,a.config.xaxis.convertedCatToNumeric&&(h=Math.floor(h),c=Math.floor(c),h<1&&(h=1,c=a.globals.dataPoints),c-h<2&&(c=h+1)),\"xy\"!==i&&\"x\"!==i||(f={min:h,max:c}),\"xy\"!==i&&\"y\"!==i||u.forEach((function(t,e){u[e].min=g[e],u[e].max=d[e]})),a.config.chart.zoom.autoScaleYaxis){var p=new _(s.ctx);u=p.autoScaleY(s.ctx,u,{xaxis:f})}if(o){var b=o.getBeforeZoomRange(f,u);b&&(f=b.xaxis?b.xaxis:f,u=b.yaxis?b.yaxis:u)}var v={xaxis:f};a.config.chart.group||(v.yaxis=u),s.ctx.updateHelpers._updateOptions(v,!1,s.w.config.chart.animations.dynamicAnimation.enabled),\"function\"==typeof a.config.chart.events.zoomed&&o.zoomCallback(f,u)}else if(a.globals.selectionEnabled){var m,y=null;m={min:h,max:c},\"xy\"!==i&&\"y\"!==i||(y=x.clone(a.config.yaxis)).forEach((function(t,e){y[e].min=g[e],y[e].max=d[e]})),a.globals.selection=s.selection,\"function\"==typeof a.config.chart.events.selection&&a.config.chart.events.selection(s.ctx,{xaxis:m,yaxis:y})}}},{key:\"panDragging\",value:function(t){var e=t.context,i=this.w,a=e;if(void 0!==i.globals.lastClientPosition.x){var s=i.globals.lastClientPosition.x-a.clientX,r=i.globals.lastClientPosition.y-a.clientY;Math.abs(s)>Math.abs(r)&&s>0?this.moveDirection=\"left\":Math.abs(s)>Math.abs(r)&&s<0?this.moveDirection=\"right\":Math.abs(r)>Math.abs(s)&&r>0?this.moveDirection=\"up\":Math.abs(r)>Math.abs(s)&&r<0&&(this.moveDirection=\"down\")}i.globals.lastClientPosition={x:a.clientX,y:a.clientY};var o=i.globals.isRangeBar?i.globals.minY:i.globals.minX,n=i.globals.isRangeBar?i.globals.maxY:i.globals.maxX;i.config.xaxis.convertedCatToNumeric||a.panScrolled(o,n)}},{key:\"delayedPanScrolled\",value:function(){var t=this.w,e=t.globals.minX,i=t.globals.maxX,a=(t.globals.maxX-t.globals.minX)/2;\"left\"===this.moveDirection?(e=t.globals.minX+a,i=t.globals.maxX+a):\"right\"===this.moveDirection&&(e=t.globals.minX-a,i=t.globals.maxX-a),e=Math.floor(e),i=Math.floor(i),this.updateScrolledChart({xaxis:{min:e,max:i}},e,i)}},{key:\"panScrolled\",value:function(t,e){var i=this.w,a=this.xyRatios,s=x.clone(i.globals.initialConfig.yaxis),r=a.xRatio,o=i.globals.minX,n=i.globals.maxX;i.globals.isRangeBar&&(r=a.invertedYRatio,o=i.globals.minY,n=i.globals.maxY),\"left\"===this.moveDirection?(t=o+i.globals.gridWidth/15*r,e=n+i.globals.gridWidth/15*r):\"right\"===this.moveDirection&&(t=o-i.globals.gridWidth/15*r,e=n-i.globals.gridWidth/15*r),i.globals.isRangeBar||(ti.globals.initialMaxX)&&(t=o,e=n);var l={min:t,max:e};i.config.chart.zoom.autoScaleYaxis&&(s=new _(this.ctx).autoScaleY(this.ctx,s,{xaxis:l}));var h={xaxis:{min:t,max:e}};i.config.chart.group||(h.yaxis=s),this.updateScrolledChart(h,t,e)}},{key:\"updateScrolledChart\",value:function(t,e,i){var a=this.w;this.ctx.updateHelpers._updateOptions(t,!1,!1),\"function\"==typeof a.config.chart.events.scrolled&&a.config.chart.events.scrolled(this.ctx,{xaxis:{min:e,max:i}})}}]),i}(ht),dt=function(){function t(e){a(this,t),this.w=e.w,this.ttCtx=e,this.ctx=e.ctx}return r(t,[{key:\"getNearestValues\",value:function(t){var e=t.hoverArea,i=t.elGrid,a=t.clientX,s=t.clientY,r=this.w,o=i.getBoundingClientRect(),n=o.width,l=o.height,h=n/(r.globals.dataPoints-1),c=l/r.globals.dataPoints,d=this.hasBars();!r.globals.comboCharts&&!d||r.config.xaxis.convertedCatToNumeric||(h=n/r.globals.dataPoints);var g=a-o.left-r.globals.barPadForNumericAxis,u=s-o.top;g<0||u<0||g>n||u>l?(e.classList.remove(\"hovering-zoom\"),e.classList.remove(\"hovering-pan\")):r.globals.zoomEnabled?(e.classList.remove(\"hovering-pan\"),e.classList.add(\"hovering-zoom\")):r.globals.panEnabled&&(e.classList.remove(\"hovering-zoom\"),e.classList.add(\"hovering-pan\"));var f=Math.round(g/h),p=Math.floor(u/c);d&&!r.config.xaxis.convertedCatToNumeric&&(f=Math.ceil(g/h),f-=1);var b=null,v=null,m=[],y=[];if(r.globals.seriesXvalues.forEach((function(t){m.push([t[0]+1e-6].concat(t))})),r.globals.seriesYvalues.forEach((function(t){y.push([t[0]+1e-6].concat(t))})),m=m.map((function(t){return t.filter((function(t){return x.isNumber(t)}))})),y=y.map((function(t){return t.filter((function(t){return x.isNumber(t)}))})),r.globals.isXNumeric){var w=this.ttCtx.getElGrid().getBoundingClientRect(),k=g*(w.width/n),A=u*(w.height/l);b=(v=this.closestInMultiArray(k,A,m,y)).index,f=v.j,null!==b&&(m=r.globals.seriesXvalues[b],f=(v=this.closestInArray(k,m)).index)}return r.globals.capturedSeriesIndex=null===b?-1:b,(!f||f<1)&&(f=0),r.globals.isBarHorizontal?r.globals.capturedDataPointIndex=p:r.globals.capturedDataPointIndex=f,{capturedSeries:b,j:r.globals.isBarHorizontal?p:f,hoverX:g,hoverY:u}}},{key:\"closestInMultiArray\",value:function(t,e,i,a){var s=this.w,r=0,o=null,n=-1;s.globals.series.length>1?r=this.getFirstActiveXArray(i):o=0;var l=i[r][0],h=Math.abs(t-l);if(i.forEach((function(e){e.forEach((function(e,i){var a=Math.abs(t-e);a0?e:-1})),s=0;s0)for(var a=0;ai?-1:0}));var e=[];return t.forEach((function(t){e.push(t.querySelector(\".apexcharts-marker\"))})),e}},{key:\"hasMarkers\",value:function(){return this.getElMarkers().length>0}},{key:\"getElBars\",value:function(){return this.w.globals.dom.baseEl.querySelectorAll(\".apexcharts-bar-series, .apexcharts-candlestick-series, .apexcharts-boxPlot-series, .apexcharts-rangebar-series\")}},{key:\"hasBars\",value:function(){return this.getElBars().length>0}},{key:\"getHoverMarkerSize\",value:function(t){var e=this.w,i=e.config.markers.hover.size;return void 0===i&&(i=e.globals.markers.size[t]+e.config.markers.hover.sizeOffset),i}},{key:\"toggleAllTooltipSeriesGroups\",value:function(t){var e=this.w,i=this.ttCtx;0===i.allTooltipSeriesGroups.length&&(i.allTooltipSeriesGroups=e.globals.dom.baseEl.querySelectorAll(\".apexcharts-tooltip-series-group\"));for(var a=i.allTooltipSeriesGroups,s=0;s\",e=\"
    \";d.forEach((function(i,a){t+='
    ').concat(i.attrs.name,\"
    \"),e+=\"
    \".concat(i.val,\"
    \")})),v.innerHTML=t+\"
    \",m.innerHTML=e+\"\"};o?l.globals.seriesGoals[e][i]&&Array.isArray(l.globals.seriesGoals[e][i])?y():(v.innerHTML=\"\",m.innerHTML=\"\"):y()}else v.innerHTML=\"\",m.innerHTML=\"\";null!==f&&(a[e].querySelector(\".apexcharts-tooltip-text-z-label\").innerHTML=l.config.tooltip.z.title,a[e].querySelector(\".apexcharts-tooltip-text-z-value\").innerHTML=void 0!==f?f:\"\");o&&p[0]&&(null==c||l.globals.ancillaryCollapsedSeriesIndices.indexOf(e)>-1||l.globals.collapsedSeriesIndices.indexOf(e)>-1?p[0].parentNode.style.display=\"none\":p[0].parentNode.style.display=l.config.tooltip.items.display)}},{key:\"toggleActiveInactiveSeries\",value:function(t){var e=this.w;if(t)this.tooltipUtil.toggleAllTooltipSeriesGroups(\"enable\");else{this.tooltipUtil.toggleAllTooltipSeriesGroups(\"disable\");var i=e.globals.dom.baseEl.querySelector(\".apexcharts-tooltip-series-group\");i&&(i.classList.add(\"apexcharts-active\"),i.style.display=e.config.tooltip.items.display)}}},{key:\"getValuesToPrint\",value:function(t){var e=t.i,i=t.j,a=this.w,s=this.ctx.series.filteredSeriesX(),r=\"\",o=\"\",n=null,l=null,h={series:a.globals.series,seriesIndex:e,dataPointIndex:i,w:a},c=a.globals.ttZFormatter;null===i?l=a.globals.series[e]:a.globals.isXNumeric&&\"treemap\"!==a.config.chart.type?(r=s[e][i],0===s[e].length&&(r=s[this.tooltipUtil.getFirstActiveXArray(s)][i])):r=void 0!==a.globals.labels[i]?a.globals.labels[i]:\"\";var d=r;a.globals.isXNumeric&&\"datetime\"===a.config.xaxis.type?r=new W(this.ctx).xLabelFormat(a.globals.ttKeyFormatter,d,d,{i:void 0,dateFormatter:new T(this.ctx).formatDate,w:this.w}):r=a.globals.isBarHorizontal?a.globals.yLabelFormatters[0](d,h):a.globals.xLabelFormatter(d,h);return void 0!==a.config.tooltip.x.formatter&&(r=a.globals.ttKeyFormatter(d,h)),a.globals.seriesZ.length>0&&a.globals.seriesZ[e].length>0&&(n=c(a.globals.seriesZ[e][i],a)),o=\"function\"==typeof a.config.xaxis.tooltip.formatter?a.globals.xaxisTooltipFormatter(d,h):r,{val:Array.isArray(l)?l.join(\" \"):l,xVal:Array.isArray(r)?r.join(\" \"):r,xAxisTTVal:Array.isArray(o)?o.join(\" \"):o,zVal:n}}},{key:\"handleCustomTooltip\",value:function(t){var e=t.i,i=t.j,a=t.y1,s=t.y2,r=t.w,o=this.ttCtx.getElTooltip(),n=r.config.tooltip.custom;Array.isArray(n)&&n[e]&&(n=n[e]),o.innerHTML=n({ctx:this.ctx,series:r.globals.series,seriesIndex:e,dataPointIndex:i,y1:a,y2:s,w:r})}}]),t}(),ut=function(){function t(e){a(this,t),this.ttCtx=e,this.ctx=e.ctx,this.w=e.w}return r(t,[{key:\"moveXCrosshairs\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,i=this.ttCtx,a=this.w,s=i.getElXCrosshairs(),r=t-i.xcrosshairsWidth/2,o=a.globals.labels.slice().length;if(null!==e&&(r=a.globals.gridWidth/o*e),null===s||a.globals.isBarHorizontal||(s.setAttribute(\"x\",r),s.setAttribute(\"x1\",r),s.setAttribute(\"x2\",r),s.setAttribute(\"y2\",a.globals.gridHeight),s.classList.add(\"apexcharts-active\")),r<0&&(r=0),r>a.globals.gridWidth&&(r=a.globals.gridWidth),i.isXAxisTooltipEnabled){var n=r;\"tickWidth\"!==a.config.xaxis.crosshairs.width&&\"barWidth\"!==a.config.xaxis.crosshairs.width||(n=r+i.xcrosshairsWidth/2),this.moveXAxisTooltip(n)}}},{key:\"moveYCrosshairs\",value:function(t){var e=this.ttCtx;null!==e.ycrosshairs&&m.setAttrs(e.ycrosshairs,{y1:t,y2:t}),null!==e.ycrosshairsHidden&&m.setAttrs(e.ycrosshairsHidden,{y1:t,y2:t})}},{key:\"moveXAxisTooltip\",value:function(t){var e=this.w,i=this.ttCtx;if(null!==i.xaxisTooltip&&0!==i.xcrosshairsWidth){i.xaxisTooltip.classList.add(\"apexcharts-active\");var a=i.xaxisOffY+e.config.xaxis.tooltip.offsetY+e.globals.translateY+1+e.config.xaxis.offsetY;if(t-=i.xaxisTooltip.getBoundingClientRect().width/2,!isNaN(t)){t+=e.globals.translateX;var s;s=new m(this.ctx).getTextRects(i.xaxisTooltipText.innerHTML),i.xaxisTooltipText.style.minWidth=s.width+\"px\",i.xaxisTooltip.style.left=t+\"px\",i.xaxisTooltip.style.top=a+\"px\"}}}},{key:\"moveYAxisTooltip\",value:function(t){var e=this.w,i=this.ttCtx;null===i.yaxisTTEls&&(i.yaxisTTEls=e.globals.dom.baseEl.querySelectorAll(\".apexcharts-yaxistooltip\"));var a=parseInt(i.ycrosshairsHidden.getAttribute(\"y1\"),10),s=e.globals.translateY+a,r=i.yaxisTTEls[t].getBoundingClientRect().height,o=e.globals.translateYAxisX[t]-2;e.config.yaxis[t].opposite&&(o-=26),s-=r/2,-1===e.globals.ignoreYAxisIndexes.indexOf(t)?(i.yaxisTTEls[t].classList.add(\"apexcharts-active\"),i.yaxisTTEls[t].style.top=s+\"px\",i.yaxisTTEls[t].style.left=o+e.config.yaxis[t].tooltip.offsetX+\"px\"):i.yaxisTTEls[t].classList.remove(\"apexcharts-active\")}},{key:\"moveTooltip\",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=this.w,s=this.ttCtx,r=s.getElTooltip(),o=s.tooltipRect,n=null!==i?parseFloat(i):1,l=parseFloat(t)+n+5,h=parseFloat(e)+n/2;if(l>a.globals.gridWidth/2&&(l=l-o.ttWidth-n-10),l>a.globals.gridWidth-o.ttWidth-10&&(l=a.globals.gridWidth-o.ttWidth),l<-20&&(l=-20),a.config.tooltip.followCursor){var c=s.getElGrid(),d=c.getBoundingClientRect();h=s.e.clientY+a.globals.translateY-d.top-o.ttHeight/2}else a.globals.isBarHorizontal||(o.ttHeight/2+h>a.globals.gridHeight&&(h=a.globals.gridHeight-o.ttHeight+a.globals.translateY),h<0&&(h=0));isNaN(l)||(l+=a.globals.translateX,r.style.left=l+\"px\",r.style.top=h+\"px\")}},{key:\"moveMarkers\",value:function(t,e){var i=this.w,a=this.ttCtx;if(i.globals.markers.size[t]>0)for(var s=i.globals.dom.baseEl.querySelectorAll(\" .apexcharts-series[data\\\\:realIndex='\".concat(t,\"'] .apexcharts-marker\")),r=0;r0&&(h.setAttribute(\"r\",n),h.setAttribute(\"cx\",i),h.setAttribute(\"cy\",a)),this.moveXCrosshairs(i),r.fixedTooltip||this.moveTooltip(i,a,n)}}},{key:\"moveDynamicPointsOnHover\",value:function(t){var e,i=this.ttCtx,a=i.w,s=0,r=0,o=a.globals.pointsArray;e=new O(this.ctx).getActiveConfigSeriesIndex(\"asc\",[\"line\",\"area\",\"scatter\",\"bubble\"]);var n=i.tooltipUtil.getHoverMarkerSize(e);o[e]&&(s=o[e][t][0],r=o[e][t][1]);var l=i.tooltipUtil.getAllMarkers();if(null!==l)for(var h=0;h0?(l[h]&&l[h].setAttribute(\"r\",n),l[h]&&l[h].setAttribute(\"cy\",d)):l[h]&&l[h].setAttribute(\"r\",0)}}if(this.moveXCrosshairs(s),!i.fixedTooltip){var f=r||a.globals.gridHeight;this.moveTooltip(s,f,n)}}},{key:\"moveStickyTooltipOverBars\",value:function(t){var e=this.w,i=this.ttCtx,a=e.globals.columnSeries?e.globals.columnSeries.length:e.globals.series.length,s=a>=2&&a%2==0?Math.floor(a/2):Math.floor(a/2)+1;e.globals.isBarHorizontal&&(s=new O(this.ctx).getActiveConfigSeriesIndex(\"desc\")+1);var r=e.globals.dom.baseEl.querySelector(\".apexcharts-bar-series .apexcharts-series[rel='\".concat(s,\"'] path[j='\").concat(t,\"'], .apexcharts-candlestick-series .apexcharts-series[rel='\").concat(s,\"'] path[j='\").concat(t,\"'], .apexcharts-boxPlot-series .apexcharts-series[rel='\").concat(s,\"'] path[j='\").concat(t,\"'], .apexcharts-rangebar-series .apexcharts-series[rel='\").concat(s,\"'] path[j='\").concat(t,\"']\")),o=r?parseFloat(r.getAttribute(\"cx\")):0,n=r?parseFloat(r.getAttribute(\"cy\")):0,l=r?parseFloat(r.getAttribute(\"barWidth\")):0,h=r?parseFloat(r.getAttribute(\"barHeight\")):0,c=i.getElGrid().getBoundingClientRect(),d=r.classList.contains(\"apexcharts-candlestick-area\")||r.classList.contains(\"apexcharts-boxPlot-area\");if(e.globals.isXNumeric?(r&&!d&&(o-=a%2!=0?l/2:0),r&&d&&e.globals.comboCharts&&(o-=l/2)):e.globals.isBarHorizontal||(o=i.xAxisTicksPositions[t-1]+i.dataPointsDividedWidth/2,isNaN(o)&&(o=i.xAxisTicksPositions[t]-i.dataPointsDividedWidth/2)),e.globals.isBarHorizontal?(n>e.globals.gridHeight/2&&(n-=i.tooltipRect.ttHeight),(n=n+e.config.grid.padding.top+h/3)+h>e.globals.gridHeight&&(n=e.globals.gridHeight-h)):e.config.tooltip.followCursor?n=i.e.clientY-c.top-i.tooltipRect.ttHeight/2:n+i.tooltipRect.ttHeight+15>e.globals.gridHeight&&(n=e.globals.gridHeight),n<-10&&(n=-10),e.globals.isBarHorizontal||this.moveXCrosshairs(o),!i.fixedTooltip){var g=n||e.globals.gridHeight;this.moveTooltip(o,g)}}}]),t}(),ft=function(){function t(e){a(this,t),this.w=e.w,this.ttCtx=e,this.ctx=e.ctx,this.tooltipPosition=new ut(e)}return r(t,[{key:\"drawDynamicPoints\",value:function(){var t=this.w,e=new m(this.ctx),i=new R(this.ctx),a=t.globals.dom.baseEl.querySelectorAll(\".apexcharts-series\");a=u(a),t.config.chart.stacked&&a.sort((function(t,e){return parseFloat(t.getAttribute(\"data:realIndex\"))-parseFloat(e.getAttribute(\"data:realIndex\"))}));for(var s=0;s2&&void 0!==arguments[2]?arguments[2]:null,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,s=this.w;\"bubble\"!==s.config.chart.type&&this.newPointSize(t,e);var r=e.getAttribute(\"cx\"),o=e.getAttribute(\"cy\");if(null!==i&&null!==a&&(r=i,o=a),this.tooltipPosition.moveXCrosshairs(r),!this.fixedTooltip){if(\"radar\"===s.config.chart.type){var n=this.ttCtx.getElGrid(),l=n.getBoundingClientRect();r=this.ttCtx.e.clientX-l.left}this.tooltipPosition.moveTooltip(r,o,s.config.markers.hover.size)}}},{key:\"enlargePoints\",value:function(t){for(var e=this.w,i=this,a=this.ttCtx,s=t,r=e.globals.dom.baseEl.querySelectorAll(\".apexcharts-series:not(.apexcharts-series-collapsed) .apexcharts-marker\"),o=e.config.markers.hover.size,n=0;n=0?t[e].setAttribute(\"r\",i):t[e].setAttribute(\"r\",0)}}}]),t}(),pt=function(){function t(e){a(this,t),this.w=e.w,this.ttCtx=e}return r(t,[{key:\"getAttr\",value:function(t,e){return parseFloat(t.target.getAttribute(e))}},{key:\"handleHeatTreeTooltip\",value:function(t){var e=t.e,i=t.opt,a=t.x,s=t.y,r=t.type,o=this.ttCtx,n=this.w;if(e.target.classList.contains(\"apexcharts-\".concat(r,\"-rect\"))){var l=this.getAttr(e,\"i\"),h=this.getAttr(e,\"j\"),c=this.getAttr(e,\"cx\"),d=this.getAttr(e,\"cy\"),g=this.getAttr(e,\"width\"),u=this.getAttr(e,\"height\");if(o.tooltipLabels.drawSeriesTexts({ttItems:i.ttItems,i:l,j:h,shared:!1,e:e}),n.globals.capturedSeriesIndex=l,n.globals.capturedDataPointIndex=h,a=c+o.tooltipRect.ttWidth/2+g,s=d+o.tooltipRect.ttHeight/2-u/2,o.tooltipPosition.moveXCrosshairs(c+g/2),a>n.globals.gridWidth/2&&(a=c-o.tooltipRect.ttWidth/2+g),o.w.config.tooltip.followCursor){var f=n.globals.dom.elWrap.getBoundingClientRect();a=n.globals.clientX-f.left-(a>n.globals.gridWidth/2?o.tooltipRect.ttWidth:0),s=n.globals.clientY-f.top-(s>n.globals.gridHeight/2?o.tooltipRect.ttHeight:0)}}return{x:a,y:s}}},{key:\"handleMarkerTooltip\",value:function(t){var e,i,a=t.e,s=t.opt,r=t.x,o=t.y,n=this.w,l=this.ttCtx;if(a.target.classList.contains(\"apexcharts-marker\")){var h=parseInt(s.paths.getAttribute(\"cx\"),10),c=parseInt(s.paths.getAttribute(\"cy\"),10),d=parseFloat(s.paths.getAttribute(\"val\"));if(i=parseInt(s.paths.getAttribute(\"rel\"),10),e=parseInt(s.paths.parentNode.parentNode.parentNode.getAttribute(\"rel\"),10)-1,l.intersect){var g=x.findAncestor(s.paths,\"apexcharts-series\");g&&(e=parseInt(g.getAttribute(\"data:realIndex\"),10))}if(l.tooltipLabels.drawSeriesTexts({ttItems:s.ttItems,i:e,j:i,shared:!l.showOnIntersect&&n.config.tooltip.shared,e:a}),\"mouseup\"===a.type&&l.markerClick(a,e,i),n.globals.capturedSeriesIndex=e,n.globals.capturedDataPointIndex=i,r=h,o=c+n.globals.translateY-1.4*l.tooltipRect.ttHeight,l.w.config.tooltip.followCursor){var u=l.getElGrid().getBoundingClientRect();o=l.e.clientY+n.globals.translateY-u.top}d<0&&(o=c),l.marker.enlargeCurrentPoint(i,s.paths,r,o)}return{x:r,y:o}}},{key:\"handleBarTooltip\",value:function(t){var e,i,a=t.e,s=t.opt,r=this.w,o=this.ttCtx,n=o.getElTooltip(),l=0,h=0,c=0,d=this.getBarTooltipXY({e:a,opt:s});e=d.i;var g=d.barHeight,u=d.j;r.globals.capturedSeriesIndex=e,r.globals.capturedDataPointIndex=u,r.globals.isBarHorizontal&&o.tooltipUtil.hasBars()||!r.config.tooltip.shared?(h=d.x,c=d.y,i=Array.isArray(r.config.stroke.width)?r.config.stroke.width[e]:r.config.stroke.width,l=h):r.globals.comboCharts||r.config.tooltip.shared||(l/=2),isNaN(c)?c=r.globals.svgHeight-o.tooltipRect.ttHeight:c<0&&(c=0);var f=parseInt(s.paths.parentNode.getAttribute(\"data:realIndex\"),10),p=r.globals.isMultipleYAxis?r.config.yaxis[f]&&r.config.yaxis[f].reversed:r.config.yaxis[0].reversed;if(h+o.tooltipRect.ttWidth>r.globals.gridWidth&&!p?h-=o.tooltipRect.ttWidth:h<0&&(h=0),o.w.config.tooltip.followCursor){var x=o.getElGrid().getBoundingClientRect();c=o.e.clientY-x.top}null===o.tooltip&&(o.tooltip=r.globals.dom.baseEl.querySelector(\".apexcharts-tooltip\")),r.config.tooltip.shared||(r.globals.comboBarCount>0?o.tooltipPosition.moveXCrosshairs(l+i/2):o.tooltipPosition.moveXCrosshairs(l)),!o.fixedTooltip&&(!r.config.tooltip.shared||r.globals.isBarHorizontal&&o.tooltipUtil.hasBars())&&(p&&(h-=o.tooltipRect.ttWidth)<0&&(h=0),!p||r.globals.isBarHorizontal&&o.tooltipUtil.hasBars()||(c=c+g-2*(r.globals.series[e][u]<0?g:0)),o.tooltipRect.ttHeight+c>r.globals.gridHeight?c=r.globals.gridHeight-o.tooltipRect.ttHeight+r.globals.translateY:(c=c+r.globals.translateY-o.tooltipRect.ttHeight/2)<0&&(c=0),n.style.left=h+r.globals.translateX+\"px\",n.style.top=c+\"px\")}},{key:\"getBarTooltipXY\",value:function(t){var e=t.e,i=t.opt,a=this.w,s=null,r=this.ttCtx,o=0,n=0,l=0,h=0,c=0,d=e.target.classList;if(d.contains(\"apexcharts-bar-area\")||d.contains(\"apexcharts-candlestick-area\")||d.contains(\"apexcharts-boxPlot-area\")||d.contains(\"apexcharts-rangebar-area\")){var g=e.target,u=g.getBoundingClientRect(),f=i.elGrid.getBoundingClientRect(),p=u.height;c=u.height;var x=u.width,b=parseInt(g.getAttribute(\"cx\"),10),v=parseInt(g.getAttribute(\"cy\"),10);h=parseFloat(g.getAttribute(\"barWidth\"));var m=\"touchmove\"===e.type?e.touches[0].clientX:e.clientX;s=parseInt(g.getAttribute(\"j\"),10),o=parseInt(g.parentNode.getAttribute(\"rel\"),10)-1;var y=g.getAttribute(\"data-range-y1\"),w=g.getAttribute(\"data-range-y2\");a.globals.comboCharts&&(o=parseInt(g.parentNode.getAttribute(\"data:realIndex\"),10)),r.tooltipLabels.drawSeriesTexts({ttItems:i.ttItems,i:o,j:s,y1:y?parseInt(y,10):null,y2:w?parseInt(w,10):null,shared:!r.showOnIntersect&&a.config.tooltip.shared,e:e}),a.config.tooltip.followCursor?a.globals.isBarHorizontal?(n=m-f.left+15,l=v-r.dataPointsDividedHeight+p/2-r.tooltipRect.ttHeight/2):(n=a.globals.isXNumeric?b-x/2:b-r.dataPointsDividedWidth+x/2,l=e.clientY-f.top-r.tooltipRect.ttHeight/2-15):a.globals.isBarHorizontal?((n=b)0&&i.setAttribute(\"width\",e.xcrosshairsWidth)}},{key:\"handleYCrosshair\",value:function(){var t=this.w,e=this.ttCtx;e.ycrosshairs=t.globals.dom.baseEl.querySelector(\".apexcharts-ycrosshairs\"),e.ycrosshairsHidden=t.globals.dom.baseEl.querySelector(\".apexcharts-ycrosshairs-hidden\")}},{key:\"drawYaxisTooltipText\",value:function(t,e,i){var a=this.ttCtx,s=this.w,r=s.globals.yLabelFormatters[t];if(a.yaxisTooltips[t]){var o=a.getElGrid().getBoundingClientRect(),n=(e-o.top)*i.yRatio[t],l=s.globals.maxYArr[t]-s.globals.minYArr[t],h=s.globals.minYArr[t]+(l-n);a.tooltipPosition.moveYCrosshairs(e-o.top),a.yaxisTooltipText[t].innerHTML=r(h),a.tooltipPosition.moveYAxisTooltip(t)}}}]),t}(),bt=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w;var i=this.w;this.tConfig=i.config.tooltip,this.tooltipUtil=new dt(this),this.tooltipLabels=new gt(this),this.tooltipPosition=new ut(this),this.marker=new ft(this),this.intersect=new pt(this),this.axesTooltip=new xt(this),this.showOnIntersect=this.tConfig.intersect,this.showTooltipTitle=this.tConfig.x.show,this.fixedTooltip=this.tConfig.fixed.enabled,this.xaxisTooltip=null,this.yaxisTTEls=null,this.isBarShared=!i.globals.isBarHorizontal&&this.tConfig.shared,this.lastHoverTime=Date.now()}return r(t,[{key:\"getElTooltip\",value:function(t){return t||(t=this),t.w.globals.dom.baseEl?t.w.globals.dom.baseEl.querySelector(\".apexcharts-tooltip\"):null}},{key:\"getElXCrosshairs\",value:function(){return this.w.globals.dom.baseEl.querySelector(\".apexcharts-xcrosshairs\")}},{key:\"getElGrid\",value:function(){return this.w.globals.dom.baseEl.querySelector(\".apexcharts-grid\")}},{key:\"drawTooltip\",value:function(t){var e=this.w;this.xyRatios=t,this.isXAxisTooltipEnabled=e.config.xaxis.tooltip.enabled&&e.globals.axisCharts,this.yaxisTooltips=e.config.yaxis.map((function(t,i){return!!(t.show&&t.tooltip.enabled&&e.globals.axisCharts)})),this.allTooltipSeriesGroups=[],e.globals.axisCharts||(this.showTooltipTitle=!1);var i=document.createElement(\"div\");if(i.classList.add(\"apexcharts-tooltip\"),e.config.tooltip.cssClass&&i.classList.add(e.config.tooltip.cssClass),i.classList.add(\"apexcharts-theme-\".concat(this.tConfig.theme)),e.globals.dom.elWrap.appendChild(i),e.globals.axisCharts){this.axesTooltip.drawXaxisTooltip(),this.axesTooltip.drawYaxisTooltip(),this.axesTooltip.setXCrosshairWidth(),this.axesTooltip.handleYCrosshair();var a=new V(this.ctx);this.xAxisTicksPositions=a.getXAxisTicksPositions()}if(!e.globals.comboCharts&&!this.tConfig.intersect&&\"rangeBar\"!==e.config.chart.type||this.tConfig.shared||(this.showOnIntersect=!0),0!==e.config.markers.size&&0!==e.globals.markers.largestSize||this.marker.drawDynamicPoints(this),e.globals.collapsedSeries.length!==e.globals.series.length){this.dataPointsDividedHeight=e.globals.gridHeight/e.globals.dataPoints,this.dataPointsDividedWidth=e.globals.gridWidth/e.globals.dataPoints,this.showTooltipTitle&&(this.tooltipTitle=document.createElement(\"div\"),this.tooltipTitle.classList.add(\"apexcharts-tooltip-title\"),this.tooltipTitle.style.fontFamily=this.tConfig.style.fontFamily||e.config.chart.fontFamily,this.tooltipTitle.style.fontSize=this.tConfig.style.fontSize,i.appendChild(this.tooltipTitle));var s=e.globals.series.length;(e.globals.xyCharts||e.globals.comboCharts)&&this.tConfig.shared&&(s=this.showOnIntersect?1:e.globals.series.length),this.legendLabels=e.globals.dom.baseEl.querySelectorAll(\".apexcharts-legend-text\"),this.ttItems=this.createTTElements(s),this.addSVGEvents()}}},{key:\"createTTElements\",value:function(t){for(var e=this,i=this.w,a=[],s=this.getElTooltip(),r=function(r){var o=document.createElement(\"div\");o.classList.add(\"apexcharts-tooltip-series-group\"),o.style.order=i.config.tooltip.inverseOrder?t-r:r+1,e.tConfig.shared&&e.tConfig.enabledOnSeries&&Array.isArray(e.tConfig.enabledOnSeries)&&e.tConfig.enabledOnSeries.indexOf(r)<0&&o.classList.add(\"apexcharts-tooltip-series-group-hidden\");var n=document.createElement(\"span\");n.classList.add(\"apexcharts-tooltip-marker\"),n.style.backgroundColor=i.globals.colors[r],o.appendChild(n);var l=document.createElement(\"div\");l.classList.add(\"apexcharts-tooltip-text\"),l.style.fontFamily=e.tConfig.style.fontFamily||i.config.chart.fontFamily,l.style.fontSize=e.tConfig.style.fontSize,[\"y\",\"goals\",\"z\"].forEach((function(t){var e=document.createElement(\"div\");e.classList.add(\"apexcharts-tooltip-\".concat(t,\"-group\"));var i=document.createElement(\"span\");i.classList.add(\"apexcharts-tooltip-text-\".concat(t,\"-label\")),e.appendChild(i);var a=document.createElement(\"span\");a.classList.add(\"apexcharts-tooltip-text-\".concat(t,\"-value\")),e.appendChild(a),l.appendChild(e)})),o.appendChild(l),s.appendChild(o),a.push(o)},o=0;o0&&this.addPathsEventListeners(u,c),this.tooltipUtil.hasBars()&&!this.tConfig.shared&&this.addDatapointEventsListeners(c)}}},{key:\"drawFixedTooltipRect\",value:function(){var t=this.w,e=this.getElTooltip(),i=e.getBoundingClientRect(),a=i.width+10,s=i.height+10,r=this.tConfig.fixed.offsetX,o=this.tConfig.fixed.offsetY,n=this.tConfig.fixed.position.toLowerCase();return n.indexOf(\"right\")>-1&&(r=r+t.globals.svgWidth-a+10),n.indexOf(\"bottom\")>-1&&(o=o+t.globals.svgHeight-s-10),e.style.left=r+\"px\",e.style.top=o+\"px\",{x:r,y:o,ttWidth:a,ttHeight:s}}},{key:\"addDatapointEventsListeners\",value:function(t){var e=this.w.globals.dom.baseEl.querySelectorAll(\".apexcharts-series-markers .apexcharts-marker, .apexcharts-bar-area, .apexcharts-candlestick-area, .apexcharts-boxPlot-area, .apexcharts-rangebar-area\");this.addPathsEventListeners(e,t)}},{key:\"addPathsEventListeners\",value:function(t,e){for(var i=this,a=function(a){var s={paths:t[a],tooltipEl:e.tooltipEl,tooltipY:e.tooltipY,tooltipX:e.tooltipX,elGrid:e.elGrid,hoverArea:e.hoverArea,ttItems:e.ttItems};[\"mousemove\",\"mouseup\",\"touchmove\",\"mouseout\",\"touchend\"].map((function(e){return t[a].addEventListener(e,i.onSeriesHover.bind(i,s),{capture:!1,passive:!0})}))},s=0;s=100?this.seriesHover(t,e):(clearTimeout(this.seriesHoverTimeout),this.seriesHoverTimeout=setTimeout((function(){i.seriesHover(t,e)}),100-a))}},{key:\"seriesHover\",value:function(t,e){var i=this;this.lastHoverTime=Date.now();var a=[],s=this.w;s.config.chart.group&&(a=this.ctx.getGroupedCharts()),s.globals.axisCharts&&(s.globals.minX===-1/0&&s.globals.maxX===1/0||0===s.globals.dataPoints)||(a.length?a.forEach((function(a){var s=i.getElTooltip(a),r={paths:t.paths,tooltipEl:s,tooltipY:t.tooltipY,tooltipX:t.tooltipX,elGrid:t.elGrid,hoverArea:t.hoverArea,ttItems:a.w.globals.tooltip.ttItems};a.w.globals.minX===i.w.globals.minX&&a.w.globals.maxX===i.w.globals.maxX&&a.w.globals.tooltip.seriesHoverByContext({chartCtx:a,ttCtx:a.w.globals.tooltip,opt:r,e:e})})):this.seriesHoverByContext({chartCtx:this.ctx,ttCtx:this.w.globals.tooltip,opt:t,e:e}))}},{key:\"seriesHoverByContext\",value:function(t){var e=t.chartCtx,i=t.ttCtx,a=t.opt,s=t.e,r=e.w,o=this.getElTooltip();if(o){if(i.tooltipRect={x:0,y:0,ttWidth:o.getBoundingClientRect().width,ttHeight:o.getBoundingClientRect().height},i.e=s,i.tooltipUtil.hasBars()&&!r.globals.comboCharts&&!i.isBarShared)if(this.tConfig.onDatasetHover.highlightDataSeries)new O(e).toggleSeriesOnHover(s,s.target.parentNode);i.fixedTooltip&&i.drawFixedTooltipRect(),r.globals.axisCharts?i.axisChartsTooltips({e:s,opt:a,tooltipRect:i.tooltipRect}):i.nonAxisChartsTooltips({e:s,opt:a,tooltipRect:i.tooltipRect})}}},{key:\"axisChartsTooltips\",value:function(t){var e,i,a=t.e,s=t.opt,r=this.w,o=s.elGrid.getBoundingClientRect(),n=\"touchmove\"===a.type?a.touches[0].clientX:a.clientX,l=\"touchmove\"===a.type?a.touches[0].clientY:a.clientY;if(this.clientY=l,this.clientX=n,r.globals.capturedSeriesIndex=-1,r.globals.capturedDataPointIndex=-1,lo.top+o.height)this.handleMouseOut(s);else{if(Array.isArray(this.tConfig.enabledOnSeries)&&!r.config.tooltip.shared){var h=parseInt(s.paths.getAttribute(\"index\"),10);if(this.tConfig.enabledOnSeries.indexOf(h)<0)return void this.handleMouseOut(s)}var c=this.getElTooltip(),d=this.getElXCrosshairs(),g=r.globals.xyCharts||\"bar\"===r.config.chart.type&&!r.globals.isBarHorizontal&&this.tooltipUtil.hasBars()&&this.tConfig.shared||r.globals.comboCharts&&this.tooltipUtil.hasBars();if(\"mousemove\"===a.type||\"touchmove\"===a.type||\"mouseup\"===a.type){if(r.globals.collapsedSeries.length+r.globals.ancillaryCollapsedSeries.length===r.globals.series.length)return;null!==d&&d.classList.add(\"apexcharts-active\");var u=this.yaxisTooltips.filter((function(t){return!0===t}));if(null!==this.ycrosshairs&&u.length&&this.ycrosshairs.classList.add(\"apexcharts-active\"),g&&!this.showOnIntersect)this.handleStickyTooltip(a,n,l,s);else if(\"heatmap\"===r.config.chart.type||\"treemap\"===r.config.chart.type){var f=this.intersect.handleHeatTreeTooltip({e:a,opt:s,x:e,y:i,type:r.config.chart.type});e=f.x,i=f.y,c.style.left=e+\"px\",c.style.top=i+\"px\"}else this.tooltipUtil.hasBars()&&this.intersect.handleBarTooltip({e:a,opt:s}),this.tooltipUtil.hasMarkers()&&this.intersect.handleMarkerTooltip({e:a,opt:s,x:e,y:i});if(this.yaxisTooltips.length)for(var p=0;pl.width?this.handleMouseOut(a):null!==n?this.handleStickyCapturedSeries(t,n,a,o):(this.tooltipUtil.isXoverlap(o)||s.globals.isBarHorizontal)&&this.create(t,this,0,o,a.ttItems)}},{key:\"handleStickyCapturedSeries\",value:function(t,e,i,a){var s=this.w;if(!this.tConfig.shared&&null===s.globals.series[e][a])return void this.handleMouseOut(i);void 0!==s.globals.series[e][a]?this.tConfig.shared&&this.tooltipUtil.isXoverlap(a)&&this.tooltipUtil.isInitialSeriesSameLen()?this.create(t,this,e,a,i.ttItems):this.create(t,this,e,a,i.ttItems,!1):this.tooltipUtil.isXoverlap(a)&&this.create(t,this,0,a,i.ttItems)}},{key:\"deactivateHoverFilter\",value:function(){for(var t=this.w,e=new m(this.ctx),i=t.globals.dom.Paper.select(\".apexcharts-bar-area\"),a=0;a5&&void 0!==arguments[5]?arguments[5]:null,o=this.w,n=e;\"mouseup\"===t.type&&this.markerClick(t,i,a),null===r&&(r=this.tConfig.shared);var l=this.tooltipUtil.hasMarkers(),h=this.tooltipUtil.getElBars();if(o.config.legend.tooltipHoverFormatter){var c=o.config.legend.tooltipHoverFormatter,d=Array.from(this.legendLabels);d.forEach((function(t){var e=t.getAttribute(\"data:default-text\");t.innerHTML=decodeURIComponent(e)}));for(var g=0;g0?n.marker.enlargePoints(a):n.tooltipPosition.moveDynamicPointsOnHover(a)),this.tooltipUtil.hasBars()&&(this.barSeriesHeight=this.tooltipUtil.getBarsHeight(h),this.barSeriesHeight>0)){var b=new m(this.ctx),v=o.globals.dom.Paper.select(\".apexcharts-bar-area[j='\".concat(a,\"']\"));this.deactivateHoverFilter(),this.tooltipPosition.moveStickyTooltipOverBars(a);for(var y=0;ys.globals.gridHeight&&(u=s.globals.gridHeight-b)),{bcx:h,bcy:l,dataLabelsX:e,dataLabelsY:u,totalDataLabelsX:a,totalDataLabelsY:i,totalDataLabelsAnchor:\"middle\"}}},{key:\"calculateBarsDataLabelsPosition\",value:function(t){var e=this.w,i=t.x,a=t.i,s=t.j,r=t.realIndex,o=t.bcy,n=t.barHeight,l=t.barWidth,h=t.textRects,c=t.dataLabelsX,d=t.strokeWidth,g=t.dataLabelsConfig,u=t.barDataLabelsConfig,f=t.barTotalDataLabelsConfig,p=t.offX,x=t.offY,b=e.globals.gridHeight/e.globals.dataPoints;l=Math.abs(l);var v,y,w=o-(this.barCtx.isRangeBar?0:b)+n/2+h.height/2+x-3,k=\"start\",A=this.barCtx.series[a][s]<0,S=i;switch(this.barCtx.isReversed&&(S=i+l-(A?2*l:0),i=e.globals.gridWidth-l),u.position){case\"center\":c=A?S+l/2-p:Math.max(h.width/2,S-l/2)+p;break;case\"bottom\":c=A?S+l-d-Math.round(h.width/2)-p:S-l+d+Math.round(h.width/2)+p;break;case\"top\":c=A?S-d+Math.round(h.width/2)-p:S-d-Math.round(h.width/2)+p}if(this.barCtx.lastActiveBarSerieIndex===r&&f.enabled){var C=new m(this.barCtx.ctx).getTextRects(this.getStackedTotalDataLabel({realIndex:r,j:s}),g.fontSize);A?(v=S-d+Math.round(C.width/2)-p-f.offsetX-15,k=\"end\"):v=S-d-Math.round(C.width/2)+p+f.offsetX+15,y=w+f.offsetY}return e.config.chart.stacked||(c<0?c=c+h.width+d:c+h.width/2>e.globals.gridWidth&&(c=e.globals.gridWidth-h.width-d)),{bcx:i,bcy:o,dataLabelsX:c,dataLabelsY:w,totalDataLabelsX:v,totalDataLabelsY:y,totalDataLabelsAnchor:k}}},{key:\"drawCalculatedDataLabels\",value:function(t){var i=t.x,a=t.y,s=t.val,r=t.i,o=t.j,n=t.textRects,l=t.barHeight,h=t.barWidth,c=t.dataLabelsConfig,d=this.w,g=\"rotate(0)\";\"vertical\"===d.config.plotOptions.bar.dataLabels.orientation&&(g=\"rotate(-90, \".concat(i,\", \").concat(a,\")\"));var u=new H(this.barCtx.ctx),f=new m(this.barCtx.ctx),p=c.formatter,x=null,b=d.globals.collapsedSeriesIndices.indexOf(r)>-1;if(c.enabled&&!b){x=f.group({class:\"apexcharts-data-labels\",transform:g});var v=\"\";void 0!==s&&(v=p(s,e(e({},d),{},{seriesIndex:r,dataPointIndex:o,w:d})));var y=d.globals.series[r][o]<0,w=d.config.plotOptions.bar.dataLabels.position;if(\"vertical\"===d.config.plotOptions.bar.dataLabels.orientation&&(\"top\"===w&&(c.textAnchor=y?\"end\":\"start\"),\"center\"===w&&(c.textAnchor=\"middle\"),\"bottom\"===w&&(c.textAnchor=y?\"end\":\"start\")),this.barCtx.isRangeBar&&this.barCtx.barOptions.dataLabels.hideOverflowingLabels)hMath.abs(h)&&(v=\"\"):n.height/1.6>Math.abs(l)&&(v=\"\"));var k=e({},c);this.barCtx.isHorizontal&&s<0&&(\"start\"===c.textAnchor?k.textAnchor=\"end\":\"end\"===c.textAnchor&&(k.textAnchor=\"start\")),u.plotDataLabelsText({x:i,y:a,text:v,i:r,j:o,parent:x,dataLabelsConfig:k,alwaysDrawDataLabel:!0,offsetCorrection:!0})}return x}},{key:\"drawTotalDataLabels\",value:function(t){var e,i=t.x,a=t.y,s=t.val,r=t.realIndex,o=t.textAnchor,n=t.barTotalDataLabelsConfig,l=new m(this.barCtx.ctx);return n.enabled&&void 0!==i&&void 0!==a&&this.barCtx.lastActiveBarSerieIndex===r&&(e=l.drawText({x:i,y:a,foreColor:n.style.color,text:s,textAnchor:o,fontFamily:n.style.fontFamily,fontSize:n.style.fontSize,fontWeight:n.style.fontWeight})),e}}]),t}(),mt=function(){function t(e){a(this,t),this.w=e.w,this.barCtx=e}return r(t,[{key:\"initVariables\",value:function(t){var e=this.w;this.barCtx.series=t,this.barCtx.totalItems=0,this.barCtx.seriesLen=0,this.barCtx.visibleI=-1,this.barCtx.visibleItems=1;for(var i=0;i0&&(this.barCtx.seriesLen=this.barCtx.seriesLen+1,this.barCtx.totalItems+=t[i].length),e.globals.isXNumeric)for(var a=0;ae.globals.minX&&e.globals.seriesX[i][a]0&&(a=l.globals.minXDiff/d),(r=a/this.barCtx.seriesLen*parseInt(this.barCtx.barOptions.columnWidth,10)/100)<1&&(r=1)}o=l.globals.gridHeight-this.barCtx.baseLineY[this.barCtx.yaxisIndex]-(this.barCtx.isReversed?l.globals.gridHeight:0)+(this.barCtx.isReversed?2*this.barCtx.baseLineY[this.barCtx.yaxisIndex]:0),t=l.globals.padHorizontal+(a-r*this.barCtx.seriesLen)/2}return{x:t,y:e,yDivision:i,xDivision:a,barHeight:s,barWidth:r,zeroH:o,zeroW:n}}},{key:\"getPathFillColor\",value:function(t,e,i,a){var s,r,o,n,l=this.w,h=new F(this.barCtx.ctx),c=null,d=this.barCtx.barOptions.distributed?i:e;this.barCtx.barOptions.colors.ranges.length>0&&this.barCtx.barOptions.colors.ranges.map((function(a){t[e][i]>=a.from&&t[e][i]<=a.to&&(c=a.color)}));return l.config.series[e].data[i]&&l.config.series[e].data[i].fillColor&&(c=l.config.series[e].data[i].fillColor),h.fillPath({seriesNumber:this.barCtx.barOptions.distributed?d:a,dataPointIndex:i,color:c,value:t[e][i],fillConfig:null===(s=l.config.series[e].data[i])||void 0===s?void 0:s.fill,fillType:null!==(r=l.config.series[e].data[i])&&void 0!==r&&null!==(o=r.fill)&&void 0!==o&&o.type?null===(n=l.config.series[e].data[i])||void 0===n?void 0:n.fill.type:l.config.fill.type})}},{key:\"getStrokeWidth\",value:function(t,e,i){var a=0,s=this.w;return void 0===this.barCtx.series[t][e]||null===this.barCtx.series[t][e]?this.barCtx.isNullValue=!0:this.barCtx.isNullValue=!1,s.config.stroke.show&&(this.barCtx.isNullValue||(a=Array.isArray(this.barCtx.strokeWidth)?this.barCtx.strokeWidth[i]:this.barCtx.strokeWidth)),a}},{key:\"shouldApplyRadius\",value:function(t){var e=this.w,i=!1;return e.config.plotOptions.bar.borderRadius>0&&(e.config.chart.stacked&&\"last\"===e.config.plotOptions.bar.borderRadiusWhenStacked?this.barCtx.lastActiveBarSerieIndex===t&&(i=!0):i=!0),i}},{key:\"barBackground\",value:function(t){var e=t.j,i=t.i,a=t.x1,s=t.x2,r=t.y1,o=t.y2,n=t.elSeries,l=this.w,h=new m(this.barCtx.ctx),c=new O(this.barCtx.ctx).getActiveConfigSeriesIndex();if(this.barCtx.barOptions.colors.backgroundBarColors.length>0&&c===i){e>=this.barCtx.barOptions.colors.backgroundBarColors.length&&(e%=this.barCtx.barOptions.colors.backgroundBarColors.length);var d=this.barCtx.barOptions.colors.backgroundBarColors[e],g=h.drawRect(void 0!==a?a:0,void 0!==r?r:0,void 0!==s?s:l.globals.gridWidth,void 0!==o?o:l.globals.gridHeight,this.barCtx.barOptions.colors.backgroundBarRadius,d,this.barCtx.barOptions.colors.backgroundBarOpacity);n.add(g),g.node.classList.add(\"apexcharts-backgroundBar\")}}},{key:\"getColumnPaths\",value:function(t){var e,i=t.barWidth,a=t.barXPosition,s=t.y1,r=t.y2,o=t.strokeWidth,n=t.realIndex,l=t.i,h=t.j,c=t.w,d=new m(this.barCtx.ctx);(o=Array.isArray(o)?o[n]:o)||(o=0);var g=i,u=a;null!==(e=c.config.series[n].data[h])&&void 0!==e&&e.columnWidthOffset&&(u=a-c.config.series[n].data[h].columnWidthOffset/2,g=i+c.config.series[n].data[h].columnWidthOffset);var f=u,p=u+g;s+=.001,r+=.001;var x=d.move(f,s),b=d.move(f,s),v=d.line(p-o,s);return c.globals.previousPaths.length>0&&(b=this.barCtx.getPreviousPath(n,h,!1)),x=x+d.line(f,r)+d.line(p-o,r)+d.line(p-o,s)+(\"around\"===c.config.plotOptions.bar.borderRadiusApplication?\" Z\":\" z\"),b=b+d.line(f,s)+v+v+v+v+v+d.line(f,s)+(\"around\"===c.config.plotOptions.bar.borderRadiusApplication?\" Z\":\" z\"),this.shouldApplyRadius(n)&&(x=d.roundPathCorners(x,c.config.plotOptions.bar.borderRadius)),c.config.chart.stacked&&(this.barCtx.yArrj.push(r),this.barCtx.yArrjF.push(Math.abs(s-r)),this.barCtx.yArrjVal.push(this.barCtx.series[l][h])),{pathTo:x,pathFrom:b}}},{key:\"getBarpaths\",value:function(t){var e,i=t.barYPosition,a=t.barHeight,s=t.x1,r=t.x2,o=t.strokeWidth,n=t.realIndex,l=t.i,h=t.j,c=t.w,d=new m(this.barCtx.ctx);(o=Array.isArray(o)?o[n]:o)||(o=0);var g=i,u=a;null!==(e=c.config.series[n].data[h])&&void 0!==e&&e.barHeightOffset&&(g=i-c.config.series[n].data[h].barHeightOffset/2,u=a+c.config.series[n].data[h].barHeightOffset);var f=g,p=g+u;s+=.001,r+=.001;var x=d.move(s,f),b=d.move(s,f);c.globals.previousPaths.length>0&&(b=this.barCtx.getPreviousPath(n,h,!1));var v=d.line(s,p-o);return x=x+d.line(r,f)+d.line(r,p-o)+v+(\"around\"===c.config.plotOptions.bar.borderRadiusApplication?\" Z\":\" z\"),b=b+d.line(s,f)+v+v+v+v+v+d.line(s,f)+(\"around\"===c.config.plotOptions.bar.borderRadiusApplication?\" Z\":\" z\"),this.shouldApplyRadius(n)&&(x=d.roundPathCorners(x,c.config.plotOptions.bar.borderRadius)),c.config.chart.stacked&&(this.barCtx.xArrj.push(r),this.barCtx.xArrjF.push(Math.abs(s-r)),this.barCtx.xArrjVal.push(this.barCtx.series[l][h])),{pathTo:x,pathFrom:b}}},{key:\"checkZeroSeries\",value:function(t){for(var e=t.series,i=this.w,a=0;a=0;o--)this.barCtx.zeroSerieses.indexOf(o)>-1&&o===this.radiusOnSeriesNumber&&(this.barCtx.radiusOnSeriesNumber-=1);for(var n=e.length-1;n>=0;n--)i.globals.collapsedSeriesIndices.indexOf(this.barCtx.radiusOnSeriesNumber)>-1&&(this.barCtx.radiusOnSeriesNumber-=1)}},{key:\"getXForValue\",value:function(t,e){var i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=i?e:null;return null!=t&&(a=e+t/this.barCtx.invertedYRatio-2*(this.barCtx.isReversed?t/this.barCtx.invertedYRatio:0)),a}},{key:\"getYForValue\",value:function(t,e){var i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=i?e:null;return null!=t&&(a=e-t/this.barCtx.yRatio[this.barCtx.yaxisIndex]+2*(this.barCtx.isReversed?t/this.barCtx.yRatio[this.barCtx.yaxisIndex]:0)),a}},{key:\"getGoalValues\",value:function(t,e,i,a,s){var r=this,n=this.w,l=[];return n.globals.seriesGoals[a]&&n.globals.seriesGoals[a][s]&&Array.isArray(n.globals.seriesGoals[a][s])&&n.globals.seriesGoals[a][s].forEach((function(a){var s;l.push((o(s={},t,\"x\"===t?r.getXForValue(a.value,e,!1):r.getYForValue(a.value,i,!1)),o(s,\"attrs\",a),s))})),l}},{key:\"drawGoalLine\",value:function(t){var e=t.barXPosition,i=t.barYPosition,a=t.goalX,s=t.goalY,r=t.barWidth,o=t.barHeight,n=new m(this.barCtx.ctx),l=n.group({className:\"apexcharts-bar-goals-groups\"}),h=null;return this.barCtx.isHorizontal?Array.isArray(a)&&a.forEach((function(t){var e=void 0!==t.attrs.strokeHeight?t.attrs.strokeHeight:o/2,a=i+e+o/2;h=n.drawLine(t.x,a-2*e,t.x,a,t.attrs.strokeColor?t.attrs.strokeColor:void 0,t.attrs.strokeDashArray,t.attrs.strokeWidth?t.attrs.strokeWidth:2,t.attrs.strokeLineCap),l.add(h)})):Array.isArray(s)&&s.forEach((function(t){var i=void 0!==t.attrs.strokeWidth?t.attrs.strokeWidth:r/2,a=e+i+r/2;h=n.drawLine(a-2*i,t.y,a,t.y,t.attrs.strokeColor?t.attrs.strokeColor:void 0,t.attrs.strokeDashArray,t.attrs.strokeHeight?t.attrs.strokeHeight:2,t.attrs.strokeLineCap),l.add(h)})),l}}]),t}(),yt=function(){function t(e,i){a(this,t),this.ctx=e,this.w=e.w;var s=this.w;this.barOptions=s.config.plotOptions.bar,this.isHorizontal=this.barOptions.horizontal,this.strokeWidth=s.config.stroke.width,this.isNullValue=!1,this.isRangeBar=s.globals.seriesRange.length&&this.isHorizontal,this.xyRatios=i,null!==this.xyRatios&&(this.xRatio=i.xRatio,this.initialXRatio=i.initialXRatio,this.yRatio=i.yRatio,this.invertedXRatio=i.invertedXRatio,this.invertedYRatio=i.invertedYRatio,this.baseLineY=i.baseLineY,this.baseLineInvertedY=i.baseLineInvertedY),this.yaxisIndex=0,this.seriesLen=0;var r=new O(this.ctx);this.lastActiveBarSerieIndex=r.getActiveConfigSeriesIndex(\"desc\",[\"bar\",\"column\"]);var o=r.getBarSeriesIndices(),n=new y(this.ctx);this.stackedSeriesTotals=n.getStackedSeriesTotals(this.w.config.series.map((function(t,e){return-1===o.indexOf(e)?e:-1})).filter((function(t){return-1!==t}))),this.barHelpers=new mt(this)}return r(t,[{key:\"draw\",value:function(t,i){var a=this.w,s=new m(this.ctx),r=new y(this.ctx,a);t=r.getLogSeries(t),this.series=t,this.yRatio=r.getLogYRatios(this.yRatio),this.barHelpers.initVariables(t);var o=s.group({class:\"apexcharts-bar-series apexcharts-plot-series\"});a.config.dataLabels.enabled&&this.totalItems>this.barOptions.dataLabels.maxItems&&console.warn(\"WARNING: DataLabels are enabled but there are too many to display. This may cause performance issue when rendering.\");for(var n=0,l=0;n0&&(this.visibleI=this.visibleI+1);var k=0,A=0;this.yRatio.length>1&&(this.yaxisIndex=v),this.isReversed=a.config.yaxis[this.yaxisIndex]&&a.config.yaxis[this.yaxisIndex].reversed;var S=this.barHelpers.initialPositions();f=S.y,k=S.barHeight,c=S.yDivision,g=S.zeroW,u=S.x,A=S.barWidth,h=S.xDivision,d=S.zeroH,this.horizontal||b.push(u+A/2);for(var C=s.group({class:\"apexcharts-datalabels\",\"data:realIndex\":v}),L=s.group({class:\"apexcharts-bar-goals-markers\",style:\"pointer-events: none\"}),P=0;P0&&b.push(u+A/2),p.push(f);var X=this.barHelpers.getPathFillColor(t,n,P,v);this.renderSeries({realIndex:v,pathFill:X,j:P,i:n,pathFrom:M.pathFrom,pathTo:M.pathTo,strokeWidth:T,elSeries:w,x:u,y:f,series:t,barHeight:k,barWidth:A,elDataLabelsWrap:C,elGoalsMarkers:L,visibleSeries:this.visibleI,type:\"bar\"})}a.globals.seriesXvalues[v]=b,a.globals.seriesYvalues[v]=p,o.add(w)}return o}},{key:\"renderSeries\",value:function(t){var e=t.realIndex,i=t.pathFill,a=t.lineFill,s=t.j,r=t.i,o=t.pathFrom,n=t.pathTo,l=t.strokeWidth,h=t.elSeries,c=t.x,d=t.y,g=t.y1,u=t.y2,f=t.series,p=t.barHeight,x=t.barWidth,b=t.barYPosition,y=t.elDataLabelsWrap,w=t.elGoalsMarkers,k=t.visibleSeries,A=t.type,S=this.w,C=new m(this.ctx);a||(a=this.barOptions.distributed?S.globals.stroke.colors[s]:S.globals.stroke.colors[e]),S.config.series[r].data[s]&&S.config.series[r].data[s].strokeColor&&(a=S.config.series[r].data[s].strokeColor),this.isNullValue&&(i=\"none\");var L=s/S.config.chart.animations.animateGradually.delay*(S.config.chart.animations.speed/S.globals.dataPoints)/2.4,P=C.renderPaths({i:r,j:s,realIndex:e,pathFrom:o,pathTo:n,stroke:a,strokeWidth:l,strokeLineCap:S.config.stroke.lineCap,fill:i,animationDelay:L,initialSpeed:S.config.chart.animations.speed,dataChangeSpeed:S.config.chart.animations.dynamicAnimation.speed,className:\"apexcharts-\".concat(A,\"-area\")});P.attr(\"clip-path\",\"url(#gridRectMask\".concat(S.globals.cuid,\")\"));var T=S.config.forecastDataPoints;T.count>0&&s>=S.globals.dataPoints-T.count&&(P.node.setAttribute(\"stroke-dasharray\",T.dashArray),P.node.setAttribute(\"stroke-width\",T.strokeWidth),P.node.setAttribute(\"fill-opacity\",T.fillOpacity)),void 0!==g&&void 0!==u&&(P.attr(\"data-range-y1\",g),P.attr(\"data-range-y2\",u)),new v(this.ctx).setSelectionFilter(P,e,s),h.add(P);var M=new vt(this).handleBarDataLabels({x:c,y:d,y1:g,y2:u,i:r,j:s,series:f,realIndex:e,barHeight:p,barWidth:x,barYPosition:b,renderedPath:P,visibleSeries:k});return null!==M.dataLabels&&y.add(M.dataLabels),M.totalDataLabels&&y.add(M.totalDataLabels),h.add(y),w&&h.add(w),h}},{key:\"drawBarPaths\",value:function(t){var e=t.indexes,i=t.barHeight,a=t.strokeWidth,s=t.zeroW,r=t.x,o=t.y,n=t.yDivision,l=t.elSeries,h=this.w,c=e.i,d=e.j;h.globals.isXNumeric&&(o=(h.globals.seriesX[c][d]-h.globals.minX)/this.invertedXRatio-i);var g=o+i*this.visibleI;r=this.barHelpers.getXForValue(this.series[c][d],s);var u=this.barHelpers.getBarpaths({barYPosition:g,barHeight:i,x1:s,x2:r,strokeWidth:a,series:this.series,realIndex:e.realIndex,i:c,j:d,w:h});return h.globals.isXNumeric||(o+=n),this.barHelpers.barBackground({j:d,i:c,y1:g-i*this.visibleI,y2:i*this.seriesLen,elSeries:l}),{pathTo:u.pathTo,pathFrom:u.pathFrom,x:r,y:o,goalX:this.barHelpers.getGoalValues(\"x\",s,null,c,d),barYPosition:g}}},{key:\"drawColumnPaths\",value:function(t){var e=t.indexes,i=t.x,a=t.y,s=t.xDivision,r=t.barWidth,o=t.zeroH,n=t.strokeWidth,l=t.elSeries,h=this.w,c=e.realIndex,d=e.i,g=e.j,u=e.bc;if(h.globals.isXNumeric){var f=c;h.globals.seriesX[c].length||(f=h.globals.maxValsInArrayIndex),i=(h.globals.seriesX[f][g]-h.globals.minX)/this.xRatio-r*this.seriesLen/2}var p=i+r*this.visibleI;a=this.barHelpers.getYForValue(this.series[d][g],o);var x=this.barHelpers.getColumnPaths({barXPosition:p,barWidth:r,y1:o,y2:a,strokeWidth:n,series:this.series,realIndex:e.realIndex,i:d,j:g,w:h});return h.globals.isXNumeric||(i+=s),this.barHelpers.barBackground({bc:u,j:g,i:d,x1:p-n/2-r*this.visibleI,x2:r*this.seriesLen+n/2,elSeries:l}),{pathTo:x.pathTo,pathFrom:x.pathFrom,x:i,y:a,goalY:this.barHelpers.getGoalValues(\"y\",null,o,d,g),barXPosition:p}}},{key:\"getPreviousPath\",value:function(t,e){for(var i,a=this.w,s=0;s0&&parseInt(r.realIndex,10)===parseInt(t,10)&&void 0!==a.globals.previousPaths[s].paths[e]&&(i=a.globals.previousPaths[s].paths[e].d)}return i}}]),t}(),wt=function(t){n(s,t);var i=d(s);function s(){return a(this,s),i.apply(this,arguments)}return r(s,[{key:\"draw\",value:function(t,i){var a=this,s=this.w;this.graphics=new m(this.ctx),this.bar=new yt(this.ctx,this.xyRatios);var r=new y(this.ctx,s);t=r.getLogSeries(t),this.yRatio=r.getLogYRatios(this.yRatio),this.barHelpers.initVariables(t),\"100%\"===s.config.chart.stackType&&(t=s.globals.seriesPercent.slice()),this.series=t,this.totalItems=0,this.prevY=[],this.prevX=[],this.prevYF=[],this.prevXF=[],this.prevYVal=[],this.prevXVal=[],this.xArrj=[],this.xArrjF=[],this.xArrjVal=[],this.yArrj=[],this.yArrjF=[],this.yArrjVal=[];for(var o=0;o0&&(this.totalItems+=t[o].length);for(var n=this.graphics.group({class:\"apexcharts-bar-series apexcharts-plot-series\"}),l=0,h=0,c=function(r,o){var c=void 0,d=void 0,g=void 0,u=void 0,f=[],p=[],b=s.globals.comboCharts?i[r]:r;a.yRatio.length>1&&(a.yaxisIndex=b),a.isReversed=s.config.yaxis[a.yaxisIndex]&&s.config.yaxis[a.yaxisIndex].reversed;var v=a.graphics.group({class:\"apexcharts-series\",seriesName:x.escapeString(s.globals.seriesNames[b]),rel:r+1,\"data:realIndex\":b});a.ctx.series.addCollapsedClassToSeries(v,b);var m=a.graphics.group({class:\"apexcharts-datalabels\",\"data:realIndex\":b}),y=a.graphics.group({class:\"apexcharts-bar-goals-markers\",style:\"pointer-events: none\"}),w=0,k=0,A=a.initialPositions(l,h,c,d,g,u);h=A.y,w=A.barHeight,d=A.yDivision,u=A.zeroW,l=A.x,k=A.barWidth,c=A.xDivision,g=A.zeroH,a.yArrj=[],a.yArrjF=[],a.yArrjVal=[],a.xArrj=[],a.xArrjF=[],a.xArrjVal=[],1===a.prevY.length&&a.prevY[0].every((function(t){return isNaN(t)}))&&(a.prevY[0]=a.prevY[0].map((function(t){return g})),a.prevYF[0]=a.prevYF[0].map((function(t){return 0})));for(var S=0;S1?(i=l.globals.minXDiff/this.xRatio)*parseInt(this.barOptions.columnWidth,10)/100:n*parseInt(l.config.plotOptions.bar.columnWidth,10)/100,s=l.globals.gridHeight-this.baseLineY[this.yaxisIndex]-(this.isReversed?l.globals.gridHeight:0)+(this.isReversed?2*this.baseLineY[this.yaxisIndex]:0),t=l.globals.padHorizontal+(i-n)/2),{x:t,y:e,yDivision:a,xDivision:i,barHeight:o,barWidth:n,zeroH:s,zeroW:r}}},{key:\"drawStackedBarPaths\",value:function(t){for(var e,i=t.indexes,a=t.barHeight,s=t.strokeWidth,r=t.zeroW,o=t.x,n=t.y,l=t.yDivision,h=t.elSeries,c=this.w,d=n,g=i.i,u=i.j,f=0,p=0;p0){var x=r;this.prevXVal[g-1][u]<0?x=this.series[g][u]>=0?this.prevX[g-1][u]+f-2*(this.isReversed?f:0):this.prevX[g-1][u]:this.prevXVal[g-1][u]>=0&&(x=this.series[g][u]>=0?this.prevX[g-1][u]:this.prevX[g-1][u]-f+2*(this.isReversed?f:0)),e=x}else e=r;o=null===this.series[g][u]?e:e+this.series[g][u]/this.invertedYRatio-2*(this.isReversed?this.series[g][u]/this.invertedYRatio:0);var b=this.barHelpers.getBarpaths({barYPosition:d,barHeight:a,x1:e,x2:o,strokeWidth:s,series:this.series,realIndex:i.realIndex,i:g,j:u,w:c});return this.barHelpers.barBackground({j:u,i:g,y1:d,y2:a,elSeries:h}),n+=l,{pathTo:b.pathTo,pathFrom:b.pathFrom,goalX:this.barHelpers.getGoalValues(\"x\",r,null,g,u),barYPosition:d,x:o,y:n}}},{key:\"drawStackedColumnPaths\",value:function(t){var e=t.indexes,i=t.x,a=t.y,s=t.xDivision,r=t.barWidth,o=t.zeroH;t.strokeWidth;var n=t.elSeries,l=this.w,h=e.i,c=e.j,d=e.bc;if(l.globals.isXNumeric){var g=l.globals.seriesX[h][c];g||(g=0),i=(g-l.globals.minX)/this.xRatio-r/2}for(var u,f=i,p=0,x=0;x0&&!l.globals.isXNumeric||h>0&&l.globals.isXNumeric&&l.globals.seriesX[h-1][c]===l.globals.seriesX[h][c]){var b,v,m=Math.min(this.yRatio.length+1,h+1);if(void 0!==this.prevY[h-1])for(var y=1;y=0?v-p+2*(this.isReversed?p:0):v;break}if(this.prevYVal[h-w][c]>=0){b=this.series[h][c]>=0?v:v+p-2*(this.isReversed?p:0);break}}void 0===b&&(b=l.globals.gridHeight),u=this.prevYF[0].every((function(t){return 0===t}))&&this.prevYF.slice(1,h).every((function(t){return t.every((function(t){return isNaN(t)}))}))?o:b}else u=o;a=u-this.series[h][c]/this.yRatio[this.yaxisIndex]+2*(this.isReversed?this.series[h][c]/this.yRatio[this.yaxisIndex]:0);var k=this.barHelpers.getColumnPaths({barXPosition:f,barWidth:r,y1:u,y2:a,yRatio:this.yRatio[this.yaxisIndex],strokeWidth:this.strokeWidth,series:this.series,realIndex:e.realIndex,i:h,j:c,w:l});return this.barHelpers.barBackground({bc:d,j:c,i:h,x1:f,x2:r,elSeries:n}),i+=s,{pathTo:k.pathTo,pathFrom:k.pathFrom,goalY:this.barHelpers.getGoalValues(\"y\",null,o,h,c),barXPosition:f,x:l.globals.isXNumeric?i-s:i,y:a}}}]),s}(yt),kt=function(t){n(s,t);var i=d(s);function s(){return a(this,s),i.apply(this,arguments)}return r(s,[{key:\"draw\",value:function(t,i){var a=this,s=this.w,r=new m(this.ctx),o=new F(this.ctx);this.candlestickOptions=this.w.config.plotOptions.candlestick,this.boxOptions=this.w.config.plotOptions.boxPlot,this.isHorizontal=s.config.plotOptions.bar.horizontal;var n=new y(this.ctx,s);t=n.getLogSeries(t),this.series=t,this.yRatio=n.getLogYRatios(this.yRatio),this.barHelpers.initVariables(t);for(var l=r.group({class:\"apexcharts-\".concat(s.config.chart.type,\"-series apexcharts-plot-series\")}),h=function(n){a.isBoxPlot=\"boxPlot\"===s.config.chart.type||\"boxPlot\"===s.config.series[n].type;var h,c,d,g,u=void 0,f=void 0,p=[],b=[],v=s.globals.comboCharts?i[n]:n,m=r.group({class:\"apexcharts-series\",seriesName:x.escapeString(s.globals.seriesNames[v]),rel:n+1,\"data:realIndex\":v});a.ctx.series.addCollapsedClassToSeries(m,v),t[n].length>0&&(a.visibleI=a.visibleI+1);var y,w;a.yRatio.length>1&&(a.yaxisIndex=v);var k=a.barHelpers.initialPositions();f=k.y,y=k.barHeight,c=k.yDivision,g=k.zeroW,u=k.x,w=k.barWidth,h=k.xDivision,d=k.zeroH,b.push(u+w/2);for(var A=r.group({class:\"apexcharts-datalabels\",\"data:realIndex\":v}),S=function(i){var r=a.barHelpers.getStrokeWidth(n,i,v),l=null,x={indexes:{i:n,j:i,realIndex:v},x:u,y:f,strokeWidth:r,elSeries:m};l=a.isHorizontal?a.drawHorizontalBoxPaths(e(e({},x),{},{yDivision:c,barHeight:y,zeroW:g})):a.drawVerticalBoxPaths(e(e({},x),{},{xDivision:h,barWidth:w,zeroH:d})),f=l.y,u=l.x,i>0&&b.push(u+w/2),p.push(f),l.pathTo.forEach((function(e,h){var c=!a.isBoxPlot&&a.candlestickOptions.wick.useFillColor?l.color[h]:s.globals.stroke.colors[n],d=o.fillPath({seriesNumber:v,dataPointIndex:i,color:l.color[h],value:t[n][i]});a.renderSeries({realIndex:v,pathFill:d,lineFill:c,j:i,i:n,pathFrom:l.pathFrom,pathTo:e,strokeWidth:r,elSeries:m,x:u,y:f,series:t,barHeight:y,barWidth:w,elDataLabelsWrap:A,visibleSeries:a.visibleI,type:s.config.chart.type})}))},C=0;Cb.c&&(d=!1);var w=Math.min(b.o,b.c),k=Math.max(b.o,b.c),A=b.m;n.globals.isXNumeric&&(i=(n.globals.seriesX[x][c]-n.globals.minX)/this.xRatio-s/2);var S=i+s*this.visibleI;void 0===this.series[h][c]||null===this.series[h][c]?(w=r,k=r):(w=r-w/p,k=r-k/p,v=r-b.h/p,y=r-b.l/p,A=r-b.m/p);var C=l.move(S,r),L=l.move(S+s/2,w);return n.globals.previousPaths.length>0&&(L=this.getPreviousPath(x,c,!0)),C=this.isBoxPlot?[l.move(S,w)+l.line(S+s/2,w)+l.line(S+s/2,v)+l.line(S+s/4,v)+l.line(S+s-s/4,v)+l.line(S+s/2,v)+l.line(S+s/2,w)+l.line(S+s,w)+l.line(S+s,A)+l.line(S,A)+l.line(S,w+o/2),l.move(S,A)+l.line(S+s,A)+l.line(S+s,k)+l.line(S+s/2,k)+l.line(S+s/2,y)+l.line(S+s-s/4,y)+l.line(S+s/4,y)+l.line(S+s/2,y)+l.line(S+s/2,k)+l.line(S,k)+l.line(S,A)+\"z\"]:[l.move(S,k)+l.line(S+s/2,k)+l.line(S+s/2,v)+l.line(S+s/2,k)+l.line(S+s,k)+l.line(S+s,w)+l.line(S+s/2,w)+l.line(S+s/2,y)+l.line(S+s/2,w)+l.line(S,w)+l.line(S,k-o/2)],L+=l.move(S,w),n.globals.isXNumeric||(i+=a),{pathTo:C,pathFrom:L,x:i,y:k,barXPosition:S,color:this.isBoxPlot?f:d?[g]:[u]}}},{key:\"drawHorizontalBoxPaths\",value:function(t){var e=t.indexes;t.x;var i=t.y,a=t.yDivision,s=t.barHeight,r=t.zeroW,o=t.strokeWidth,n=this.w,l=new m(this.ctx),h=e.i,c=e.j,d=this.boxOptions.colors.lower;this.isBoxPlot&&(d=[this.boxOptions.colors.lower,this.boxOptions.colors.upper]);var g=this.invertedYRatio,u=e.realIndex,f=this.getOHLCValue(u,c),p=r,x=r,b=Math.min(f.o,f.c),v=Math.max(f.o,f.c),y=f.m;n.globals.isXNumeric&&(i=(n.globals.seriesX[u][c]-n.globals.minX)/this.invertedXRatio-s/2);var w=i+s*this.visibleI;void 0===this.series[h][c]||null===this.series[h][c]?(b=r,v=r):(b=r+b/g,v=r+v/g,p=r+f.h/g,x=r+f.l/g,y=r+f.m/g);var k=l.move(r,w),A=l.move(b,w+s/2);return n.globals.previousPaths.length>0&&(A=this.getPreviousPath(u,c,!0)),k=[l.move(b,w)+l.line(b,w+s/2)+l.line(p,w+s/2)+l.line(p,w+s/2-s/4)+l.line(p,w+s/2+s/4)+l.line(p,w+s/2)+l.line(b,w+s/2)+l.line(b,w+s)+l.line(y,w+s)+l.line(y,w)+l.line(b+o/2,w),l.move(y,w)+l.line(y,w+s)+l.line(v,w+s)+l.line(v,w+s/2)+l.line(x,w+s/2)+l.line(x,w+s-s/4)+l.line(x,w+s/4)+l.line(x,w+s/2)+l.line(v,w+s/2)+l.line(v,w)+l.line(y,w)+\"z\"],A+=l.move(b,w),n.globals.isXNumeric||(i+=a),{pathTo:k,pathFrom:A,x:v,y:i,barYPosition:w,color:d}}},{key:\"getOHLCValue\",value:function(t,e){var i=this.w;return{o:this.isBoxPlot?i.globals.seriesCandleH[t][e]:i.globals.seriesCandleO[t][e],h:this.isBoxPlot?i.globals.seriesCandleO[t][e]:i.globals.seriesCandleH[t][e],m:i.globals.seriesCandleM[t][e],l:this.isBoxPlot?i.globals.seriesCandleC[t][e]:i.globals.seriesCandleL[t][e],c:this.isBoxPlot?i.globals.seriesCandleL[t][e]:i.globals.seriesCandleC[t][e]}}}]),s}(yt),At=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"checkColorRange\",value:function(){var t=this.w,e=!1,i=t.config.plotOptions[t.config.chart.type];return i.colorScale.ranges.length>0&&i.colorScale.ranges.map((function(t,i){t.from<=0&&(e=!0)})),e}},{key:\"getShadeColor\",value:function(t,e,i,a){var s=this.w,r=1,o=s.config.plotOptions[t].shadeIntensity,n=this.determineColor(t,e,i);s.globals.hasNegs||a?r=s.config.plotOptions[t].reverseNegativeShade?n.percent<0?n.percent/100*(1.25*o):(1-n.percent/100)*(1.25*o):n.percent<=0?1-(1+n.percent/100)*o:(1-n.percent/100)*o:(r=1-n.percent/100,\"treemap\"===t&&(r=(1-n.percent/100)*(1.25*o)));var l=n.color,h=new x;return s.config.plotOptions[t].enableShades&&(l=\"dark\"===this.w.config.theme.mode?x.hexToRgba(h.shadeColor(-1*r,n.color),s.config.fill.opacity):x.hexToRgba(h.shadeColor(r,n.color),s.config.fill.opacity)),{color:l,colorProps:n}}},{key:\"determineColor\",value:function(t,e,i){var a=this.w,s=a.globals.series[e][i],r=a.config.plotOptions[t],o=r.colorScale.inverse?i:e;r.distributed&&\"treemap\"===a.config.chart.type&&(o=i);var n=a.globals.colors[o],l=null,h=Math.min.apply(Math,u(a.globals.series[e])),c=Math.max.apply(Math,u(a.globals.series[e]));r.distributed||\"heatmap\"!==t||(h=a.globals.minY,c=a.globals.maxY),void 0!==r.colorScale.min&&(h=r.colorScale.mina.globals.maxY?r.colorScale.max:a.globals.maxY);var d=Math.abs(c)+Math.abs(h),g=100*s/(0===d?d-1e-6:d);r.colorScale.ranges.length>0&&r.colorScale.ranges.map((function(t,e){if(s>=t.from&&s<=t.to){n=t.color,l=t.foreColor?t.foreColor:null,h=t.from,c=t.to;var i=Math.abs(c)+Math.abs(h);g=100*s/(0===i?i-1e-6:i)}}));return{color:n,foreColor:l,percent:g}}},{key:\"calculateDataLabels\",value:function(t){var e=t.text,i=t.x,a=t.y,s=t.i,r=t.j,o=t.colorProps,n=t.fontSize,l=this.w.config.dataLabels,h=new m(this.ctx),c=new H(this.ctx),d=null;if(l.enabled){d=h.group({class:\"apexcharts-data-labels\"});var g=l.offsetX,u=l.offsetY,f=i+g,p=a+parseFloat(l.style.fontSize)/3+u;c.plotDataLabelsText({x:f,y:p,text:e,i:s,j:r,color:o.foreColor,parent:d,fontSize:n,dataLabelsConfig:l})}return d}},{key:\"addListeners\",value:function(t){var e=new m(this.ctx);t.node.addEventListener(\"mouseenter\",e.pathMouseEnter.bind(this,t)),t.node.addEventListener(\"mouseleave\",e.pathMouseLeave.bind(this,t)),t.node.addEventListener(\"mousedown\",e.pathMouseDown.bind(this,t))}}]),t}(),St=function(){function t(e,i){a(this,t),this.ctx=e,this.w=e.w,this.xRatio=i.xRatio,this.yRatio=i.yRatio,this.dynamicAnim=this.w.config.chart.animations.dynamicAnimation,this.helpers=new At(e),this.rectRadius=this.w.config.plotOptions.heatmap.radius,this.strokeWidth=this.w.config.stroke.show?this.w.config.stroke.width:0}return r(t,[{key:\"draw\",value:function(t){var e=this.w,i=new m(this.ctx),a=i.group({class:\"apexcharts-heatmap\"});a.attr(\"clip-path\",\"url(#gridRectMask\".concat(e.globals.cuid,\")\"));var s=e.globals.gridWidth/e.globals.dataPoints,r=e.globals.gridHeight/e.globals.series.length,o=0,n=!1;this.negRange=this.helpers.checkColorRange();var l=t.slice();e.config.yaxis[0].reversed&&(n=!0,l.reverse());for(var h=n?0:l.length-1;n?h=0;n?h++:h--){var c=i.group({class:\"apexcharts-series apexcharts-heatmap-series\",seriesName:x.escapeString(e.globals.seriesNames[h]),rel:h+1,\"data:realIndex\":h});if(this.ctx.series.addCollapsedClassToSeries(c,h),e.config.chart.dropShadow.enabled){var d=e.config.chart.dropShadow;new v(this.ctx).dropShadow(c,d,h)}for(var g=0,u=e.config.plotOptions.heatmap.shadeIntensity,f=0;f-1&&this.pieClicked(d),i.config.dataLabels.enabled){var A=w.x,S=w.y,C=100*u/this.fullAngle+\"%\";if(0!==u&&i.config.plotOptions.pie.dataLabels.minAngleToShowLabelthis.fullAngle?e.endAngle=e.endAngle-(a+o):a+o=this.fullAngle+this.w.config.plotOptions.pie.startAngle%this.fullAngle&&(n=this.fullAngle+this.w.config.plotOptions.pie.startAngle%this.fullAngle-.01),Math.ceil(n)>this.fullAngle&&(n-=this.fullAngle);var l=Math.PI*(n-90)/180,h=e.centerX+s*Math.cos(o),c=e.centerY+s*Math.sin(o),d=e.centerX+s*Math.cos(l),g=e.centerY+s*Math.sin(l),u=x.polarToCartesian(e.centerX,e.centerY,e.donutSize,n),f=x.polarToCartesian(e.centerX,e.centerY,e.donutSize,r),p=a>180?1:0,b=[\"M\",h,c,\"A\",s,s,0,p,1,d,g];return\"donut\"===e.chartType?[].concat(b,[\"L\",u.x,u.y,\"A\",e.donutSize,e.donutSize,0,p,0,f.x,f.y,\"L\",h,c,\"z\"]).join(\" \"):\"pie\"===e.chartType||\"polarArea\"===e.chartType?[].concat(b,[\"L\",e.centerX,e.centerY,\"L\",h,c]).join(\" \"):[].concat(b).join(\" \")}},{key:\"drawPolarElements\",value:function(t){var e=this.w,i=new _(this.ctx),a=new m(this.ctx),s=new Ct(this.ctx),r=a.group(),o=a.group(),n=i.niceScale(0,Math.ceil(this.maxY),e.config.yaxis[0].tickAmount,0,!0),l=n.result.reverse(),h=n.result.length;this.maxY=n.niceMax;for(var c=e.globals.radialSize,d=c/(h-1),g=0;g1&&t.total.show&&(s=t.total.color);var o=r.globals.dom.baseEl.querySelector(\".apexcharts-datalabel-label\"),n=r.globals.dom.baseEl.querySelector(\".apexcharts-datalabel-value\");i=(0,t.value.formatter)(i,r),a||\"function\"!=typeof t.total.formatter||(i=t.total.formatter(r));var l=e===t.total.label;e=t.name.formatter(e,l,r),null!==o&&(o.textContent=e),null!==n&&(n.textContent=i),null!==o&&(o.style.fill=s)}},{key:\"printDataLabelsInner\",value:function(t,e){var i=this.w,a=t.getAttribute(\"data:value\"),s=i.globals.seriesNames[parseInt(t.parentNode.getAttribute(\"rel\"),10)-1];i.globals.series.length>1&&this.printInnerLabels(e,s,a,t);var r=i.globals.dom.baseEl.querySelector(\".apexcharts-datalabels-group\");null!==r&&(r.style.opacity=1)}},{key:\"drawSpokes\",value:function(t){var e=this,i=this.w,a=new m(this.ctx),s=i.config.plotOptions.polarArea.spokes;if(0!==s.strokeWidth){for(var r=[],o=360/i.globals.series.length,n=0;n1)o&&!e.total.showAlways?l({makeSliceOut:!1,printLabel:!0}):this.printInnerLabels(e,e.total.label,e.total.formatter(s));else if(l({makeSliceOut:!1,printLabel:!0}),!o)if(s.globals.selectedDataPoints.length&&s.globals.series.length>1)if(s.globals.selectedDataPoints[0].length>0){var h=s.globals.selectedDataPoints[0],c=s.globals.dom.baseEl.querySelector(\".apexcharts-\".concat(this.chartType.toLowerCase(),\"-slice-\").concat(h));this.printDataLabelsInner(c,e)}else r&&s.globals.selectedDataPoints.length&&0===s.globals.selectedDataPoints[0].length&&(r.style.opacity=0);else r&&s.globals.series.length>1&&(r.style.opacity=0)}}]),t}(),Pt=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.chartType=this.w.config.chart.type,this.initialAnim=this.w.config.chart.animations.enabled,this.dynamicAnim=this.initialAnim&&this.w.config.chart.animations.dynamicAnimation.enabled,this.animDur=0;var i=this.w;this.graphics=new m(this.ctx),this.lineColorArr=void 0!==i.globals.stroke.colors?i.globals.stroke.colors:i.globals.colors,this.defaultSize=i.globals.svgHeight0&&(p=i.getPreviousPath(n));for(var b=0;b=10?t.x>0?(i=\"start\",a+=10):t.x<0&&(i=\"end\",a-=10):i=\"middle\",Math.abs(t.y)>=e-10&&(t.y<0?s-=10:t.y>0&&(s+=10)),{textAnchor:i,newX:a,newY:s}}},{key:\"getPreviousPath\",value:function(t){for(var e=this.w,i=null,a=0;a0&&parseInt(s.realIndex,10)===parseInt(t,10)&&void 0!==e.globals.previousPaths[a].paths[0]&&(i=e.globals.previousPaths[a].paths[0].d)}return i}},{key:\"getDataPointsPos\",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.dataPointsLen;t=t||[],e=e||[];for(var a=[],s=0;s=360&&(g=360-Math.abs(this.startAngle)-.1);var u=i.drawPath({d:\"\",stroke:c,strokeWidth:o*parseInt(h.strokeWidth,10)/100,fill:\"none\",strokeOpacity:h.opacity,classes:\"apexcharts-radialbar-area\"});if(h.dropShadow.enabled){var f=h.dropShadow;s.dropShadow(u,f)}l.add(u),u.attr(\"id\",\"apexcharts-radialbarTrack-\"+n),this.animatePaths(u,{centerX:t.centerX,centerY:t.centerY,endAngle:g,startAngle:d,size:t.size,i:n,totalItems:2,animBeginArr:0,dur:0,isTrack:!0,easing:e.globals.easing})}return a}},{key:\"drawArcs\",value:function(t){var e=this.w,i=new m(this.ctx),a=new F(this.ctx),s=new v(this.ctx),r=i.group(),o=this.getStrokeWidth(t);t.size=t.size-o/2;var n=e.config.plotOptions.radialBar.hollow.background,l=t.size-o*t.series.length-this.margin*t.series.length-o*parseInt(e.config.plotOptions.radialBar.track.strokeWidth,10)/100/2,h=l-e.config.plotOptions.radialBar.hollow.margin;void 0!==e.config.plotOptions.radialBar.hollow.image&&(n=this.drawHollowImage(t,r,l,n));var c=this.drawHollow({size:h,centerX:t.centerX,centerY:t.centerY,fill:n||\"transparent\"});if(e.config.plotOptions.radialBar.hollow.dropShadow.enabled){var d=e.config.plotOptions.radialBar.hollow.dropShadow;s.dropShadow(c,d)}var g=1;!this.radialDataLabels.total.show&&e.globals.series.length>1&&(g=0);var u=null;this.radialDataLabels.show&&(u=this.renderInnerDataLabels(this.radialDataLabels,{hollowSize:l,centerX:t.centerX,centerY:t.centerY,opacity:g})),\"back\"===e.config.plotOptions.radialBar.hollow.position&&(r.add(c),u&&r.add(u));var f=!1;e.config.plotOptions.radialBar.inverseOrder&&(f=!0);for(var p=f?t.series.length-1:0;f?p>=0:p100?100:t.series[p])/100,S=Math.round(this.totalAngle*A)+this.startAngle,C=void 0;e.globals.dataChanged&&(k=this.startAngle,C=Math.round(this.totalAngle*x.negToZero(e.globals.previousPaths[p])/100)+k),Math.abs(S)+Math.abs(w)>=360&&(S-=.01),Math.abs(C)+Math.abs(k)>=360&&(C-=.01);var L=S-w,P=Array.isArray(e.config.stroke.dashArray)?e.config.stroke.dashArray[p]:e.config.stroke.dashArray,T=i.drawPath({d:\"\",stroke:y,strokeWidth:o,fill:\"none\",fillOpacity:e.config.fill.opacity,classes:\"apexcharts-radialbar-area apexcharts-radialbar-slice-\"+p,strokeDashArray:P});if(m.setAttrs(T.node,{\"data:angle\":L,\"data:value\":t.series[p]}),e.config.chart.dropShadow.enabled){var M=e.config.chart.dropShadow;s.dropShadow(T,M,p)}s.setSelectionFilter(T,0,p),this.addListeners(T,this.radialDataLabels),b.add(T),T.attr({index:0,j:p});var I=0;!this.initialAnim||e.globals.resized||e.globals.dataChanged||(I=e.config.chart.animations.speed),e.globals.dataChanged&&(I=e.config.chart.animations.dynamicAnimation.speed),this.animDur=I/(1.2*t.series.length)+this.animDur,this.animBeginArr.push(this.animDur),this.animatePaths(T,{centerX:t.centerX,centerY:t.centerY,endAngle:S,startAngle:w,prevEndAngle:C,prevStartAngle:k,size:t.size,i:p,totalItems:2,animBeginArr:this.animBeginArr,dur:I,shouldSetPrevPaths:!0,easing:e.globals.easing})}return{g:r,elHollow:c,dataLabels:u}}},{key:\"drawHollow\",value:function(t){var e=new m(this.ctx).drawCircle(2*t.size);return e.attr({class:\"apexcharts-radialbar-hollow\",cx:t.centerX,cy:t.centerY,r:t.size,fill:t.fill}),e}},{key:\"drawHollowImage\",value:function(t,e,i,a){var s=this.w,r=new F(this.ctx),o=x.randomId(),n=s.config.plotOptions.radialBar.hollow.image;if(s.config.plotOptions.radialBar.hollow.imageClipped)r.clippedImgArea({width:i,height:i,image:n,patternID:\"pattern\".concat(s.globals.cuid).concat(o)}),a=\"url(#pattern\".concat(s.globals.cuid).concat(o,\")\");else{var l=s.config.plotOptions.radialBar.hollow.imageWidth,h=s.config.plotOptions.radialBar.hollow.imageHeight;if(void 0===l&&void 0===h){var c=s.globals.dom.Paper.image(n).loaded((function(e){this.move(t.centerX-e.width/2+s.config.plotOptions.radialBar.hollow.imageOffsetX,t.centerY-e.height/2+s.config.plotOptions.radialBar.hollow.imageOffsetY)}));e.add(c)}else{var d=s.globals.dom.Paper.image(n).loaded((function(e){this.move(t.centerX-l/2+s.config.plotOptions.radialBar.hollow.imageOffsetX,t.centerY-h/2+s.config.plotOptions.radialBar.hollow.imageOffsetY),this.size(l,h)}));e.add(d)}}return a}},{key:\"getStrokeWidth\",value:function(t){var e=this.w;return t.size*(100-parseInt(e.config.plotOptions.radialBar.hollow.size,10))/100/(t.series.length+1)-this.margin}}]),i}(Lt),Mt=function(t){n(s,t);var i=d(s);function s(){return a(this,s),i.apply(this,arguments)}return r(s,[{key:\"draw\",value:function(t,i){var a=this.w,s=new m(this.ctx);this.rangeBarOptions=this.w.config.plotOptions.rangeBar,this.series=t,this.seriesRangeStart=a.globals.seriesRangeStart,this.seriesRangeEnd=a.globals.seriesRangeEnd,this.barHelpers.initVariables(t);for(var r=s.group({class:\"apexcharts-rangebar-series apexcharts-plot-series\"}),o=0;o0&&(this.visibleI=this.visibleI+1);var p=0,b=0;this.yRatio.length>1&&(this.yaxisIndex=u);var v=this.barHelpers.initialPositions();d=v.y,h=v.zeroW,c=v.x,b=v.barWidth,n=v.xDivision,l=v.zeroH;for(var y=s.group({class:\"apexcharts-datalabels\",\"data:realIndex\":u}),w=s.group({class:\"apexcharts-rangebar-goals-markers\",style:\"pointer-events: none\"}),k=0;k0}));return a=l.config.plotOptions.bar.rangeBarGroupRows?s+o*g:s+r*this.visibleI+o*g,u>-1&&!l.config.plotOptions.bar.rangeBarOverlap&&(h=l.globals.seriesRange[e][u].overlaps).indexOf(c)>-1&&(a=(r=n.barHeight/h.length)*this.visibleI+o*(100-parseInt(this.barOptions.barHeight,10))/100/2+r*(this.visibleI+h.indexOf(c))+o*g),{barYPosition:a,barHeight:r}}},{key:\"drawRangeColumnPaths\",value:function(t){var e=t.indexes,i=t.x;t.strokeWidth;var a=t.xDivision,s=t.barWidth,r=t.zeroH,o=this.w,n=e.i,l=e.j,h=this.yRatio[this.yaxisIndex],c=e.realIndex,d=this.getRangeValue(c,l),g=Math.min(d.start,d.end),u=Math.max(d.start,d.end);o.globals.isXNumeric&&(i=(o.globals.seriesX[n][l]-o.globals.minX)/this.xRatio-s/2);var f=i+s*this.visibleI;void 0===this.series[n][l]||null===this.series[n][l]?g=r:(g=r-g/h,u=r-u/h);var p=Math.abs(u-g),x=this.barHelpers.getColumnPaths({barXPosition:f,barWidth:s,y1:g,y2:u,strokeWidth:this.strokeWidth,series:this.seriesRangeEnd,realIndex:e.realIndex,i:c,j:l,w:o});return o.globals.isXNumeric||(i+=a),{pathTo:x.pathTo,pathFrom:x.pathFrom,barHeight:p,x:i,y:u,goalY:this.barHelpers.getGoalValues(\"y\",null,r,n,l),barXPosition:f}}},{key:\"drawRangeBarPaths\",value:function(t){var e=t.indexes,i=t.y,a=t.y1,s=t.y2,r=t.yDivision,o=t.barHeight,n=t.barYPosition,l=t.zeroW,h=this.w,c=l+a/this.invertedYRatio,d=l+s/this.invertedYRatio,g=Math.abs(d-c),u=this.barHelpers.getBarpaths({barYPosition:n,barHeight:o,x1:c,x2:d,strokeWidth:this.strokeWidth,series:this.seriesRangeEnd,i:e.realIndex,realIndex:e.realIndex,j:e.j,w:h});return h.globals.isXNumeric||(i+=r),{pathTo:u.pathTo,pathFrom:u.pathFrom,barWidth:g,x:d,goalX:this.barHelpers.getGoalValues(\"x\",l,null,e.realIndex,e.j),y:i}}},{key:\"getRangeValue\",value:function(t,e){var i=this.w;return{start:i.globals.seriesRangeStart[t][e],end:i.globals.seriesRangeEnd[t][e]}}}]),s}(yt),It=function(){function t(e){a(this,t),this.w=e.w,this.lineCtx=e}return r(t,[{key:\"sameValueSeriesFix\",value:function(t,e){var i=this.w;if((\"gradient\"===i.config.fill.type||\"gradient\"===i.config.fill.type[t])&&new y(this.lineCtx.ctx,i).seriesHaveSameValues(t)){var a=e[t].slice();a[a.length-1]=a[a.length-1]+1e-6,e[t]=a}return e}},{key:\"calculatePoints\",value:function(t){var e=t.series,i=t.realIndex,a=t.x,s=t.y,r=t.i,o=t.j,n=t.prevY,l=this.w,h=[],c=[];if(0===o){var d=this.lineCtx.categoryAxisCorrection+l.config.markers.offsetX;l.globals.isXNumeric&&(d=(l.globals.seriesX[i][0]-l.globals.minX)/this.lineCtx.xRatio+l.config.markers.offsetX),h.push(d),c.push(x.isNumber(e[r][0])?n+l.config.markers.offsetY:null),h.push(a+l.config.markers.offsetX),c.push(x.isNumber(e[r][o+1])?s+l.config.markers.offsetY:null)}else h.push(a+l.config.markers.offsetX),c.push(x.isNumber(e[r][o+1])?s+l.config.markers.offsetY:null);return{x:h,y:c}}},{key:\"checkPreviousPaths\",value:function(t){for(var e=t.pathFromLine,i=t.pathFromArea,a=t.realIndex,s=this.w,r=0;r0&&parseInt(o.realIndex,10)===parseInt(a,10)&&(\"line\"===o.type?(this.lineCtx.appendPathFrom=!1,e=s.globals.previousPaths[r].paths[0].d):\"area\"===o.type&&(this.lineCtx.appendPathFrom=!1,i=s.globals.previousPaths[r].paths[0].d,s.config.stroke.show&&s.globals.previousPaths[r].paths[1]&&(e=s.globals.previousPaths[r].paths[1].d)))}return{pathFromLine:e,pathFromArea:i}}},{key:\"determineFirstPrevY\",value:function(t){var e,i=t.i,a=t.series,s=t.prevY,r=t.lineYPosition,o=this.w;if(void 0!==(null===(e=a[i])||void 0===e?void 0:e[0]))s=(r=o.config.chart.stacked&&i>0?this.lineCtx.prevSeriesY[i-1][0]:this.lineCtx.zeroY)-a[i][0]/this.lineCtx.yRatio[this.lineCtx.yaxisIndex]+2*(this.lineCtx.isReversed?a[i][0]/this.lineCtx.yRatio[this.lineCtx.yaxisIndex]:0);else if(o.config.chart.stacked&&i>0&&void 0===a[i][0])for(var n=i-1;n>=0;n--)if(null!==a[n][0]&&void 0!==a[n][0]){s=r=this.lineCtx.prevSeriesY[n][0];break}return{prevY:s,lineYPosition:r}}}]),t}(),zt=function(){function t(e,i,s){a(this,t),this.ctx=e,this.w=e.w,this.xyRatios=i,this.pointsChart=!(\"bubble\"!==this.w.config.chart.type&&\"scatter\"!==this.w.config.chart.type)||s,this.scatter=new D(this.ctx),this.noNegatives=this.w.globals.minX===Number.MAX_VALUE,this.lineHelpers=new It(this),this.markers=new R(this.ctx),this.prevSeriesY=[],this.categoryAxisCorrection=0,this.yaxisIndex=0}return r(t,[{key:\"draw\",value:function(t,i,a,s){var r=this.w,o=new m(this.ctx),n=r.globals.comboCharts?i:r.config.chart.type,l=o.group({class:\"apexcharts-\".concat(n,\"-series apexcharts-plot-series\")}),h=new y(this.ctx,r);this.yRatio=this.xyRatios.yRatio,this.zRatio=this.xyRatios.zRatio,this.xRatio=this.xyRatios.xRatio,this.baseLineY=this.xyRatios.baseLineY,t=h.getLogSeries(t),this.yRatio=h.getLogYRatios(this.yRatio);for(var c=[],d=0;d0&&(p=(r.globals.seriesX[g][0]-r.globals.minX)/this.xRatio),f.push(p);var x,b=p,v=void 0,w=b,k=this.zeroY,A=this.zeroY;k=this.lineHelpers.determineFirstPrevY({i:d,series:t,prevY:k,lineYPosition:0}).prevY,u.push(k),x=k;\"rangeArea\"===n&&(v=A=this.lineHelpers.determineFirstPrevY({i:d,series:s,prevY:A,lineYPosition:0}).prevY);var S={type:n,series:t,realIndex:g,i:d,x:p,y:1,pX:b,pY:x,pathsFrom:this._calculatePathsFrom({type:n,series:t,i:d,realIndex:g,prevX:w,prevY:k,prevY2:A}),linePaths:[],areaPaths:[],seriesIndex:a,lineYPosition:0,xArrj:f,yArrj:u,seriesRangeEnd:s},C=this._iterateOverDataPoints(e(e({},S),{},{iterations:\"rangeArea\"===n?t[d].length-1:void 0,isRangeStart:!0}));if(\"rangeArea\"===n){var L=this._calculatePathsFrom({series:s,i:d,realIndex:g,prevX:w,prevY:A}),P=this._iterateOverDataPoints(e(e({},S),{},{series:s,pY:v,pathsFrom:L,iterations:s[d].length-1,isRangeStart:!1}));C.linePaths[0]=P.linePath+C.linePath,C.pathFromLine=P.pathFromLine+C.pathFromLine}this._handlePaths({type:n,realIndex:g,i:d,paths:C}),this.elSeries.add(this.elPointsMain),this.elSeries.add(this.elDataLabelsWrap),c.push(this.elSeries)}if(r.config.chart.stacked)for(var T=c.length;T>0;T--)l.add(c[T-1]);else for(var M=0;M1&&(this.yaxisIndex=i),this.isReversed=a.config.yaxis[this.yaxisIndex]&&a.config.yaxis[this.yaxisIndex].reversed,this.zeroY=a.globals.gridHeight-this.baseLineY[this.yaxisIndex]-(this.isReversed?a.globals.gridHeight:0)+(this.isReversed?2*this.baseLineY[this.yaxisIndex]:0),this.areaBottomY=this.zeroY,(this.zeroY>a.globals.gridHeight||\"end\"===a.config.plotOptions.area.fillTo)&&(this.areaBottomY=a.globals.gridHeight),this.categoryAxisCorrection=this.xDivision/2,this.elSeries=s.group({class:\"apexcharts-series\",seriesName:x.escapeString(a.globals.seriesNames[i])}),this.elPointsMain=s.group({class:\"apexcharts-series-markers-wrap\",\"data:realIndex\":i}),this.elDataLabelsWrap=s.group({class:\"apexcharts-datalabels\",\"data:realIndex\":i});var r=t[e].length===a.globals.dataPoints;this.elSeries.attr({\"data:longestSeries\":r,rel:e+1,\"data:realIndex\":i}),this.appendPathFrom=!0}},{key:\"_calculatePathsFrom\",value:function(t){var e,i,a,s,r=t.type,o=t.series,n=t.i,l=t.realIndex,h=t.prevX,c=t.prevY,d=t.prevY2,g=this.w,u=new m(this.ctx);if(null===o[n][0]){for(var f=0;f0){var p=this.lineHelpers.checkPreviousPaths({pathFromLine:a,pathFromArea:s,realIndex:l});a=p.pathFromLine,s=p.pathFromArea}return{prevX:h,prevY:c,linePath:e,areaPath:i,pathFromLine:a,pathFromArea:s}}},{key:\"_handlePaths\",value:function(t){var i=t.type,a=t.realIndex,s=t.i,r=t.paths,o=this.w,n=new m(this.ctx),l=new F(this.ctx);this.prevSeriesY.push(r.yArrj),o.globals.seriesXvalues[a]=r.xArrj,o.globals.seriesYvalues[a]=r.yArrj;var h=o.config.forecastDataPoints;if(h.count>0&&\"rangeArea\"!==i){var c=o.globals.seriesXvalues[a][o.globals.seriesXvalues[a].length-h.count-1],d=n.drawRect(c,0,o.globals.gridWidth,o.globals.gridHeight,0);o.globals.dom.elForecastMask.appendChild(d.node);var g=n.drawRect(0,0,c,o.globals.gridHeight,0);o.globals.dom.elNonForecastMask.appendChild(g.node)}this.pointsChart||o.globals.delayedElements.push({el:this.elPointsMain.node,index:a});var u={i:s,realIndex:a,animationDelay:s,initialSpeed:o.config.chart.animations.speed,dataChangeSpeed:o.config.chart.animations.dynamicAnimation.speed,className:\"apexcharts-\".concat(i)};if(\"area\"===i)for(var f=l.fillPath({seriesNumber:a}),p=0;p0&&\"rangeArea\"!==i){var S=n.renderPaths(k);S.node.setAttribute(\"stroke-dasharray\",h.dashArray),h.strokeWidth&&S.node.setAttribute(\"stroke-width\",h.strokeWidth),this.elSeries.add(S),S.attr(\"clip-path\",\"url(#forecastMask\".concat(o.globals.cuid,\")\")),A.attr(\"clip-path\",\"url(#nonForecastMask\".concat(o.globals.cuid,\")\"))}}}}},{key:\"_iterateOverDataPoints\",value:function(t){var e=t.type,i=t.series,a=t.iterations,s=t.realIndex,r=t.i,o=t.x,n=t.y,l=t.pX,h=t.pY,c=t.pathsFrom,d=t.linePaths,g=t.areaPaths,u=t.seriesIndex,f=t.lineYPosition,p=t.xArrj,b=t.yArrj,v=t.isRangeStart,y=t.seriesRangeEnd,w=this.w,k=new m(this.ctx),A=this.yRatio,S=c.prevY,C=c.linePath,L=c.areaPath,P=c.pathFromLine,T=c.pathFromArea,M=x.isNumber(w.globals.minYArr[s])?w.globals.minYArr[s]:w.globals.minY;a||(a=w.globals.dataPoints>1?w.globals.dataPoints-1:w.globals.dataPoints);for(var I=n,z=0;z0&&w.globals.collapsedSeries.length-1){e--;break}return e>=0?e:0}(r-1)][z+1]}else f=this.zeroY;else f=this.zeroY;X?n=f-M/A[this.yaxisIndex]+2*(this.isReversed?M/A[this.yaxisIndex]:0):(n=f-i[r][z+1]/A[this.yaxisIndex]+2*(this.isReversed?i[r][z+1]/A[this.yaxisIndex]:0),\"rangeArea\"===e&&(I=f-y[r][z+1]/A[this.yaxisIndex]+2*(this.isReversed?y[r][z+1]/A[this.yaxisIndex]:0))),p.push(o),b.push(n);var Y=this.lineHelpers.calculatePoints({series:i,x:o,y:n,realIndex:s,i:r,j:z,prevY:S}),F=this._createPaths({type:e,series:i,i:r,realIndex:s,j:z,x:o,y:n,y2:I,pX:l,pY:h,linePath:C,areaPath:L,linePaths:d,areaPaths:g,seriesIndex:u,isRangeStart:v});g=F.areaPaths,d=F.linePaths,l=F.pX,h=F.pY,L=F.areaPath,C=F.linePath,this.appendPathFrom&&(P+=k.line(o,this.zeroY),T+=k.line(o,this.zeroY)),this.handleNullDataPoints(i,Y,r,z,s),this._handleMarkersAndLabels({type:e,pointsPos:Y,i:r,j:z,realIndex:s,isRangeStart:v})}return{yArrj:b,xArrj:p,pathFromArea:T,areaPaths:g,pathFromLine:P,linePaths:d,linePath:C,areaPath:L}}},{key:\"_handleMarkersAndLabels\",value:function(t){var e=t.type,i=t.pointsPos,a=t.isRangeStart,s=t.i,r=t.j,o=t.realIndex,n=this.w,l=new H(this.ctx);if(this.pointsChart)this.scatter.draw(this.elSeries,r,{realIndex:o,pointsPos:i,zRatio:this.zRatio,elParent:this.elPointsMain});else{n.globals.series[s].length>1&&this.elPointsMain.node.classList.add(\"apexcharts-element-hidden\");var h=this.markers.plotChartMarkers(i,o,r+1);null!==h&&this.elPointsMain.add(h)}var c=l.drawDataLabel({type:e,isRangeStart:a,pos:i,i:o,j:r+1});null!==c&&this.elDataLabelsWrap.add(c)}},{key:\"_createPaths\",value:function(t){var e=t.type,i=t.series,a=t.i,s=t.realIndex,r=t.j,o=t.x,n=t.y,l=t.y2,h=t.pX,c=t.pY,d=t.linePath,g=t.areaPath,u=t.linePaths,f=t.areaPaths,p=t.seriesIndex,x=t.isRangeStart,b=this.w,v=new m(this.ctx),y=b.config.stroke.curve,w=this.areaBottomY;if(Array.isArray(b.config.stroke.curve)&&(y=Array.isArray(p)?b.config.stroke.curve[p[a]]:b.config.stroke.curve[a]),\"smooth\"===y){var k=.35*(o-h);b.globals.hasNullValues?(null!==i[a][r]&&(null!==i[a][r+1]?(d=v.move(h,c)+v.curve(h+k,c,o-k,n,o+1,n),g=v.move(h+1,c)+v.curve(h+k,c,o-k,n,o+1,n)+v.line(o,w)+v.line(h,w)+\"z\"):(d=v.move(h,c),g=v.move(h,c)+\"z\")),u.push(d),f.push(g)):(d+=v.curve(h+k,c,o-k,n,o,n),g+=v.curve(h+k,c,o-k,n,o,n)),h=o,c=n,r===i[a].length-2&&(g=g+v.curve(h,c,o,n,o,w)+v.move(o,n)+\"z\",\"rangeArea\"===e&&x?d=d+v.curve(h,c,o,n,o,l)+v.move(o,l)+\"z\":b.globals.hasNullValues||(u.push(d),f.push(g)))}else{if(null===i[a][r+1]){d+=v.move(o,n);var A=b.globals.isXNumeric?(b.globals.seriesX[s][r]-b.globals.minX)/this.xRatio:o-this.xDivision;g=g+v.line(A,w)+v.move(o,n)+\"z\"}null===i[a][r]&&(d+=v.move(o,n),g+=v.move(o,w)),\"stepline\"===y?(d=d+v.line(o,null,\"H\")+v.line(null,n,\"V\"),g=g+v.line(o,null,\"H\")+v.line(null,n,\"V\")):\"straight\"===y&&(d+=v.line(o,n),g+=v.line(o,n)),r===i[a].length-2&&(g=g+v.line(o,w)+v.move(o,n)+\"z\",\"rangeArea\"===e&&x?d=d+v.line(o,l)+v.move(o,l)+\"z\":(u.push(d),f.push(g)))}return{linePaths:u,areaPaths:f,pX:h,pY:c,linePath:d,areaPath:g}}},{key:\"handleNullDataPoints\",value:function(t,e,i,a,s){var r=this.w;if(null===t[i][a]&&r.config.markers.showNullDataPoints||1===t[i].length){var o=this.markers.plotChartMarkers(e,s,a+1,this.strokeWidth-r.config.markers.strokeWidth/2,!0);null!==o&&this.elPointsMain.add(o)}}}]),t}();window.TreemapSquared={},window.TreemapSquared.generate=function(){function t(e,i,a,s){this.xoffset=e,this.yoffset=i,this.height=s,this.width=a,this.shortestEdge=function(){return Math.min(this.height,this.width)},this.getCoordinates=function(t){var e,i=[],a=this.xoffset,s=this.yoffset,o=r(t)/this.height,n=r(t)/this.width;if(this.width>=this.height)for(e=0;e=this.height){var a=e/this.height,s=this.width-a;i=new t(this.xoffset+a,this.yoffset,s,this.height)}else{var r=e/this.width,o=this.height-r;i=new t(this.xoffset,this.yoffset+r,this.width,o)}return i}}function e(e,a,s,o,n){o=void 0===o?0:o,n=void 0===n?0:n;var l=i(function(t,e){var i,a=[],s=e/r(t);for(i=0;i=o}(e,l=t[0],n)?(e.push(l),i(t.slice(1),e,s,o)):(h=s.cutArea(r(e),o),o.push(s.getCoordinates(e)),i(t,[],h,o)),o;o.push(s.getCoordinates(e))}function a(t,e){var i=Math.min.apply(Math,t),a=Math.max.apply(Math,t),s=r(t);return Math.max(Math.pow(e,2)*a/Math.pow(s,2),Math.pow(s,2)/(Math.pow(e,2)*i))}function s(t){return t&&t.constructor===Array}function r(t){var e,i=0;for(e=0;er-a&&l.width<=o-s){var h=n.rotateAroundCenter(t.node);t.node.setAttribute(\"transform\",\"rotate(-90 \".concat(h.x,\" \").concat(h.y,\")\"))}}},{key:\"animateTreemap\",value:function(t,e,i,a){var s=new b(this.ctx);s.animateRect(t,{x:e.x,y:e.y,width:e.width,height:e.height},{x:i.x,y:i.y,width:i.width,height:i.height},a,(function(){s.animationCompleted(t)}))}}]),t}(),Ft=86400,Rt=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w,this.timeScaleArray=[],this.utc=this.w.config.xaxis.labels.datetimeUTC}return r(t,[{key:\"calculateTimeScaleTicks\",value:function(t,i){var a=this,s=this.w;if(s.globals.allSeriesCollapsed)return s.globals.labels=[],s.globals.timescaleLabels=[],[];var r=new T(this.ctx),o=(i-t)/864e5;this.determineInterval(o),s.globals.disableZoomIn=!1,s.globals.disableZoomOut=!1,o<.00011574074074074075?s.globals.disableZoomIn=!0:o>5e4&&(s.globals.disableZoomOut=!0);var n=r.getTimeUnitsfromTimestamp(t,i,this.utc),l=s.globals.gridWidth/o,h=l/24,c=h/60,d=c/60,g=Math.floor(24*o),u=Math.floor(1440*o),f=Math.floor(o*Ft),p=Math.floor(o),x=Math.floor(o/30),b=Math.floor(o/365),v={minMillisecond:n.minMillisecond,minSecond:n.minSecond,minMinute:n.minMinute,minHour:n.minHour,minDate:n.minDate,minMonth:n.minMonth,minYear:n.minYear},m={firstVal:v,currentMillisecond:v.minMillisecond,currentSecond:v.minSecond,currentMinute:v.minMinute,currentHour:v.minHour,currentMonthDate:v.minDate,currentDate:v.minDate,currentMonth:v.minMonth,currentYear:v.minYear,daysWidthOnXAxis:l,hoursWidthOnXAxis:h,minutesWidthOnXAxis:c,secondsWidthOnXAxis:d,numberOfSeconds:f,numberOfMinutes:u,numberOfHours:g,numberOfDays:p,numberOfMonths:x,numberOfYears:b};switch(this.tickInterval){case\"years\":this.generateYearScale(m);break;case\"months\":case\"half_year\":this.generateMonthScale(m);break;case\"months_days\":case\"months_fortnight\":case\"days\":case\"week_days\":this.generateDayScale(m);break;case\"hours\":this.generateHourScale(m);break;case\"minutes_fives\":case\"minutes\":this.generateMinuteScale(m);break;case\"seconds_tens\":case\"seconds_fives\":case\"seconds\":this.generateSecondScale(m)}var y=this.timeScaleArray.map((function(t){var i={position:t.position,unit:t.unit,year:t.year,day:t.day?t.day:1,hour:t.hour?t.hour:0,month:t.month+1};return\"month\"===t.unit?e(e({},i),{},{day:1,value:t.value+1}):\"day\"===t.unit||\"hour\"===t.unit?e(e({},i),{},{value:t.value}):\"minute\"===t.unit?e(e({},i),{},{value:t.value,minute:t.value}):\"second\"===t.unit?e(e({},i),{},{value:t.value,minute:t.minute,second:t.second}):t}));return y.filter((function(t){var e=1,i=Math.ceil(s.globals.gridWidth/120),r=t.value;void 0!==s.config.xaxis.tickAmount&&(i=s.config.xaxis.tickAmount),y.length>i&&(e=Math.floor(y.length/i));var o=!1,n=!1;switch(a.tickInterval){case\"years\":\"year\"===t.unit&&(o=!0);break;case\"half_year\":e=7,\"year\"===t.unit&&(o=!0);break;case\"months\":e=1,\"year\"===t.unit&&(o=!0);break;case\"months_fortnight\":e=15,\"year\"!==t.unit&&\"month\"!==t.unit||(o=!0),30===r&&(n=!0);break;case\"months_days\":e=10,\"month\"===t.unit&&(o=!0),30===r&&(n=!0);break;case\"week_days\":e=8,\"month\"===t.unit&&(o=!0);break;case\"days\":e=1,\"month\"===t.unit&&(o=!0);break;case\"hours\":\"day\"===t.unit&&(o=!0);break;case\"minutes_fives\":case\"seconds_fives\":r%5!=0&&(n=!0);break;case\"seconds_tens\":r%10!=0&&(n=!0)}if(\"hours\"===a.tickInterval||\"minutes_fives\"===a.tickInterval||\"seconds_tens\"===a.tickInterval||\"seconds_fives\"===a.tickInterval){if(!n)return!0}else if((r%e==0||o)&&!n)return!0}))}},{key:\"recalcDimensionsBasedOnFormat\",value:function(t,e){var i=this.w,a=this.formatDates(t),s=this.removeOverlappingTS(a);i.globals.timescaleLabels=s.slice(),new ot(this.ctx).plotCoords()}},{key:\"determineInterval\",value:function(t){var e=24*t,i=60*e;switch(!0){case t/365>5:this.tickInterval=\"years\";break;case t>800:this.tickInterval=\"half_year\";break;case t>180:this.tickInterval=\"months\";break;case t>90:this.tickInterval=\"months_fortnight\";break;case t>60:this.tickInterval=\"months_days\";break;case t>30:this.tickInterval=\"week_days\";break;case t>2:this.tickInterval=\"days\";break;case e>2.4:this.tickInterval=\"hours\";break;case i>15:this.tickInterval=\"minutes_fives\";break;case i>5:this.tickInterval=\"minutes\";break;case i>1:this.tickInterval=\"seconds_tens\";break;case 60*i>20:this.tickInterval=\"seconds_fives\";break;default:this.tickInterval=\"seconds\"}}},{key:\"generateYearScale\",value:function(t){var e=t.firstVal,i=t.currentMonth,a=t.currentYear,s=t.daysWidthOnXAxis,r=t.numberOfYears,o=e.minYear,n=0,l=new T(this.ctx),h=\"year\";if(e.minDate>1||e.minMonth>0){var c=l.determineRemainingDaysOfYear(e.minYear,e.minMonth,e.minDate);n=(l.determineDaysOfYear(e.minYear)-c+1)*s,o=e.minYear+1,this.timeScaleArray.push({position:n,value:o,unit:h,year:o,month:x.monthMod(i+1)})}else 1===e.minDate&&0===e.minMonth&&this.timeScaleArray.push({position:n,value:o,unit:h,year:a,month:x.monthMod(i+1)});for(var d=o,g=n,u=0;u1){l=(h.determineDaysOfMonths(a+1,e.minYear)-i+1)*r,n=x.monthMod(a+1);var g=s+d,u=x.monthMod(n),f=n;0===n&&(c=\"year\",f=g,u=1,g+=d+=1),this.timeScaleArray.push({position:l,value:f,unit:c,year:g,month:u})}else this.timeScaleArray.push({position:l,value:n,unit:c,year:s,month:x.monthMod(a)});for(var p=n+1,b=l,v=0,m=1;vo.determineDaysOfMonths(e+1,i)?(h=1,n=\"month\",g=e+=1,e):e},d=(24-e.minHour)*s,g=l,u=c(h,i,a);0===e.minHour&&1===e.minDate?(d=0,g=x.monthMod(e.minMonth),n=\"month\",h=e.minDate,r++):1!==e.minDate&&0===e.minHour&&0===e.minMinute&&(d=0,l=e.minDate,g=l,u=c(h=l,i,a)),this.timeScaleArray.push({position:d,value:g,unit:n,year:this._getYear(a,u,0),month:x.monthMod(u),day:h});for(var f=d,p=0;pn.determineDaysOfMonths(e+1,s)&&(p=1,e+=1),{month:e,date:p}},c=function(t,e){return t>n.determineDaysOfMonths(e+1,s)?e+=1:e},d=60-(e.minMinute+e.minSecond/60),g=d*r,u=e.minHour+1,f=u+1;60===d&&(g=0,f=(u=e.minHour)+1);var p=i,b=c(p,a);this.timeScaleArray.push({position:g,value:u,unit:l,day:p,hour:f,year:s,month:x.monthMod(b)});for(var v=g,m=0;m=24)f=0,l=\"day\",b=h(p+=1,b).month,b=c(p,b);var y=this._getYear(s,b,0);v=0===f&&0===m?d*r:60*r+v;var w=0===f?p:f;this.timeScaleArray.push({position:v,value:w,unit:l,hour:f,day:p,year:y,month:x.monthMod(b)}),f++}}},{key:\"generateMinuteScale\",value:function(t){for(var e=t.currentMillisecond,i=t.currentSecond,a=t.currentMinute,s=t.currentHour,r=t.currentDate,o=t.currentMonth,n=t.currentYear,l=t.minutesWidthOnXAxis,h=t.secondsWidthOnXAxis,c=t.numberOfMinutes,d=a+1,g=r,u=o,f=n,p=s,b=(60-i-e/1e3)*h,v=0;v=60&&(d=0,24===(p+=1)&&(p=0)),this.timeScaleArray.push({position:b,value:d,unit:\"minute\",hour:p,minute:d,day:g,year:this._getYear(f,u,0),month:x.monthMod(u)}),b+=l,d++}},{key:\"generateSecondScale\",value:function(t){for(var e=t.currentMillisecond,i=t.currentSecond,a=t.currentMinute,s=t.currentHour,r=t.currentDate,o=t.currentMonth,n=t.currentYear,l=t.secondsWidthOnXAxis,h=t.numberOfSeconds,c=i+1,d=a,g=r,u=o,f=n,p=s,b=(1e3-e)/1e3*l,v=0;v=60&&(c=0,++d>=60&&(d=0,24===++p&&(p=0))),this.timeScaleArray.push({position:b,value:c,unit:\"second\",hour:p,minute:d,second:c,day:g,year:this._getYear(f,u,0),month:x.monthMod(u)}),b+=l,c++}},{key:\"createRawDateString\",value:function(t,e){var i=t.year;return 0===t.month&&(t.month=1),i+=\"-\"+(\"0\"+t.month.toString()).slice(-2),\"day\"===t.unit?i+=\"day\"===t.unit?\"-\"+(\"0\"+e).slice(-2):\"-01\":i+=\"-\"+(\"0\"+(t.day?t.day:\"1\")).slice(-2),\"hour\"===t.unit?i+=\"hour\"===t.unit?\"T\"+(\"0\"+e).slice(-2):\"T00\":i+=\"T\"+(\"0\"+(t.hour?t.hour:\"0\")).slice(-2),\"minute\"===t.unit?i+=\":\"+(\"0\"+e).slice(-2):i+=\":\"+(t.minute?(\"0\"+t.minute).slice(-2):\"00\"),\"second\"===t.unit?i+=\":\"+(\"0\"+e).slice(-2):i+=\":00\",this.utc&&(i+=\".000Z\"),i}},{key:\"formatDates\",value:function(t){var e=this,i=this.w;return t.map((function(t){var a=t.value.toString(),s=new T(e.ctx),r=e.createRawDateString(t,a),o=s.getDate(s.parseDate(r));if(e.utc||(o=s.getDate(s.parseDateWithTimezone(r))),void 0===i.config.xaxis.labels.format){var n=\"dd MMM\",l=i.config.xaxis.labels.datetimeFormatter;\"year\"===t.unit&&(n=l.year),\"month\"===t.unit&&(n=l.month),\"day\"===t.unit&&(n=l.day),\"hour\"===t.unit&&(n=l.hour),\"minute\"===t.unit&&(n=l.minute),\"second\"===t.unit&&(n=l.second),a=s.formatDate(o,n)}else a=s.formatDate(o,i.config.xaxis.labels.format);return{dateString:r,position:t.position,value:a,unit:t.unit,year:t.year,month:t.month}}))}},{key:\"removeOverlappingTS\",value:function(t){var e,i=this,a=new m(this.ctx),s=!1;t.length>0&&t[0].value&&t.every((function(e){return e.value.length===t[0].value.length}))&&(s=!0,e=a.getTextRects(t[0].value).width);var r=0,o=t.map((function(o,n){if(n>0&&i.w.config.xaxis.labels.hideOverlappingLabels){var l=s?e:a.getTextRects(t[r].value).width,h=t[r].position;return o.position>h+l+10?(r=n,o):null}return o}));return o=o.filter((function(t){return null!==t}))}},{key:\"_getYear\",value:function(t,e,i){return t+Math.floor(e/12)+i}}]),t}(),Dt=function(){function t(e,i){a(this,t),this.ctx=i,this.w=i.w,this.el=e}return r(t,[{key:\"setupElements\",value:function(){var t=this.w.globals,e=this.w.config,i=e.chart.type;t.axisCharts=[\"line\",\"area\",\"bar\",\"rangeBar\",\"rangeArea\",\"candlestick\",\"boxPlot\",\"scatter\",\"bubble\",\"radar\",\"heatmap\",\"treemap\"].indexOf(i)>-1,t.xyCharts=[\"line\",\"area\",\"bar\",\"rangeBar\",\"rangeArea\",\"candlestick\",\"boxPlot\",\"scatter\",\"bubble\"].indexOf(i)>-1,t.isBarHorizontal=(\"bar\"===e.chart.type||\"rangeBar\"===e.chart.type||\"boxPlot\"===e.chart.type)&&e.plotOptions.bar.horizontal,t.chartClass=\".apexcharts\"+t.chartID,t.dom.baseEl=this.el,t.dom.elWrap=document.createElement(\"div\"),m.setAttrs(t.dom.elWrap,{id:t.chartClass.substring(1),class:\"apexcharts-canvas \"+t.chartClass.substring(1)}),this.el.appendChild(t.dom.elWrap),t.dom.Paper=new window.SVG.Doc(t.dom.elWrap),t.dom.Paper.attr({class:\"apexcharts-svg\",\"xmlns:data\":\"ApexChartsNS\",transform:\"translate(\".concat(e.chart.offsetX,\", \").concat(e.chart.offsetY,\")\")}),t.dom.Paper.node.style.background=e.chart.background,this.setSVGDimensions(),t.dom.elGraphical=t.dom.Paper.group().attr({class:\"apexcharts-inner apexcharts-graphical\"}),t.dom.elAnnotations=t.dom.Paper.group().attr({class:\"apexcharts-annotations\"}),t.dom.elDefs=t.dom.Paper.defs(),t.dom.elLegendWrap=document.createElement(\"div\"),t.dom.elLegendWrap.classList.add(\"apexcharts-legend\"),t.dom.elWrap.appendChild(t.dom.elLegendWrap),t.dom.Paper.add(t.dom.elGraphical),t.dom.elGraphical.add(t.dom.elDefs)}},{key:\"plotChartType\",value:function(t,e){var i=this.w,a=i.config,s=i.globals,r={series:[],i:[]},o={series:[],i:[]},n={series:[],i:[]},l={series:[],i:[]},h={series:[],i:[]},c={series:[],i:[]},d={series:[],i:[]},g={series:[],i:[]},u={series:[],seriesRangeEnd:[],i:[]};s.series.map((function(e,f){var p=0;void 0!==t[f].type?(\"column\"===t[f].type||\"bar\"===t[f].type?(s.series.length>1&&a.plotOptions.bar.horizontal&&console.warn(\"Horizontal bars are not supported in a mixed/combo chart. Please turn off `plotOptions.bar.horizontal`\"),h.series.push(e),h.i.push(f),p++,i.globals.columnSeries=h.series):\"area\"===t[f].type?(o.series.push(e),o.i.push(f),p++):\"line\"===t[f].type?(r.series.push(e),r.i.push(f),p++):\"scatter\"===t[f].type?(n.series.push(e),n.i.push(f)):\"bubble\"===t[f].type?(l.series.push(e),l.i.push(f),p++):\"candlestick\"===t[f].type?(c.series.push(e),c.i.push(f),p++):\"boxPlot\"===t[f].type?(d.series.push(e),d.i.push(f),p++):\"rangeBar\"===t[f].type?(g.series.push(e),g.i.push(f),p++):\"rangeArea\"===t[f].type?(u.series.push(s.seriesRangeStart[f]),u.seriesRangeEnd.push(s.seriesRangeEnd[f]),u.i.push(f),p++):console.warn(\"You have specified an unrecognized chart type. Available types for this property are line/area/column/bar/scatter/bubble\"),p>1&&(s.comboCharts=!0)):(r.series.push(e),r.i.push(f))}));var f=new zt(this.ctx,e),p=new kt(this.ctx,e);this.ctx.pie=new Lt(this.ctx);var x=new Tt(this.ctx);this.ctx.rangeBar=new Mt(this.ctx,e);var b=new Pt(this.ctx),v=[];if(s.comboCharts){if(o.series.length>0&&v.push(f.draw(o.series,\"area\",o.i)),h.series.length>0)if(i.config.chart.stacked){var m=new wt(this.ctx,e);v.push(m.draw(h.series,h.i))}else this.ctx.bar=new yt(this.ctx,e),v.push(this.ctx.bar.draw(h.series,h.i));if(u.series.length>0&&v.push(f.draw(u.series,\"rangeArea\",u.i,u.seriesRangeEnd)),r.series.length>0&&v.push(f.draw(r.series,\"line\",r.i)),c.series.length>0&&v.push(p.draw(c.series,c.i)),d.series.length>0&&v.push(p.draw(d.series,d.i)),g.series.length>0&&v.push(this.ctx.rangeBar.draw(g.series,g.i)),n.series.length>0){var y=new zt(this.ctx,e,!0);v.push(y.draw(n.series,\"scatter\",n.i))}if(l.series.length>0){var w=new zt(this.ctx,e,!0);v.push(w.draw(l.series,\"bubble\",l.i))}}else switch(a.chart.type){case\"line\":v=f.draw(s.series,\"line\");break;case\"area\":v=f.draw(s.series,\"area\");break;case\"bar\":if(a.chart.stacked)v=new wt(this.ctx,e).draw(s.series);else this.ctx.bar=new yt(this.ctx,e),v=this.ctx.bar.draw(s.series);break;case\"candlestick\":v=new kt(this.ctx,e).draw(s.series);break;case\"boxPlot\":v=new kt(this.ctx,e).draw(s.series);break;case\"rangeBar\":v=this.ctx.rangeBar.draw(s.series);break;case\"rangeArea\":v=f.draw(s.seriesRangeStart,\"rangeArea\",void 0,s.seriesRangeEnd);break;case\"heatmap\":v=new St(this.ctx,e).draw(s.series);break;case\"treemap\":v=new Yt(this.ctx,e).draw(s.series);break;case\"pie\":case\"donut\":case\"polarArea\":v=this.ctx.pie.draw(s.series);break;case\"radialBar\":v=x.draw(s.series);break;case\"radar\":v=b.draw(s.series);break;default:v=f.draw(s.series)}return v}},{key:\"setSVGDimensions\",value:function(){var t=this.w.globals,e=this.w.config;t.svgWidth=e.chart.width,t.svgHeight=e.chart.height;var i=x.getDimensions(this.el),a=e.chart.width.toString().split(/[0-9]+/g).pop();\"%\"===a?x.isNumber(i[0])&&(0===i[0].width&&(i=x.getDimensions(this.el.parentNode)),t.svgWidth=i[0]*parseInt(e.chart.width,10)/100):\"px\"!==a&&\"\"!==a||(t.svgWidth=parseInt(e.chart.width,10));var s=e.chart.height.toString().split(/[0-9]+/g).pop();if(\"auto\"!==t.svgHeight&&\"\"!==t.svgHeight)if(\"%\"===s){var r=x.getDimensions(this.el.parentNode);t.svgHeight=r[1]*parseInt(e.chart.height,10)/100}else t.svgHeight=parseInt(e.chart.height,10);else t.axisCharts?t.svgHeight=t.svgWidth/1.61:t.svgHeight=t.svgWidth/1.2;if(t.svgWidth<0&&(t.svgWidth=0),t.svgHeight<0&&(t.svgHeight=0),m.setAttrs(t.dom.Paper.node,{width:t.svgWidth,height:t.svgHeight}),\"%\"!==s){var o=e.chart.sparkline.enabled?0:t.axisCharts?e.chart.parentHeightOffset:0;t.dom.Paper.node.parentNode.parentNode.style.minHeight=t.svgHeight+o+\"px\"}t.dom.elWrap.style.width=t.svgWidth+\"px\",t.dom.elWrap.style.height=t.svgHeight+\"px\"}},{key:\"shiftGraphPosition\",value:function(){var t=this.w.globals,e=t.translateY,i={transform:\"translate(\"+t.translateX+\", \"+e+\")\"};m.setAttrs(t.dom.elGraphical.node,i)}},{key:\"resizeNonAxisCharts\",value:function(){var t=this.w,e=t.globals,i=0,a=t.config.chart.sparkline.enabled?1:15;a+=t.config.grid.padding.bottom,\"top\"!==t.config.legend.position&&\"bottom\"!==t.config.legend.position||!t.config.legend.show||t.config.legend.floating||(i=new lt(this.ctx).legendHelpers.getLegendBBox().clwh+10);var s=t.globals.dom.baseEl.querySelector(\".apexcharts-radialbar, .apexcharts-pie\"),r=2.05*t.globals.radialSize;if(s&&!t.config.chart.sparkline.enabled&&0!==t.config.plotOptions.radialBar.startAngle){var o=x.getBoundingClientRect(s);r=o.bottom;var n=o.bottom-o.top;r=Math.max(2.05*t.globals.radialSize,n)}var l=r+e.translateY+i+a;e.dom.elLegendForeign&&e.dom.elLegendForeign.setAttribute(\"height\",l),t.config.chart.height&&String(t.config.chart.height).indexOf(\"%\")>0||(e.dom.elWrap.style.height=l+\"px\",m.setAttrs(e.dom.Paper.node,{height:l}),e.dom.Paper.node.parentNode.parentNode.style.minHeight=l+\"px\")}},{key:\"coreCalculations\",value:function(){new U(this.ctx).init()}},{key:\"resetGlobals\",value:function(){var t=this,e=function(){return t.w.config.series.map((function(t){return[]}))},i=new E,a=this.w.globals;i.initGlobalVars(a),a.seriesXvalues=e(),a.seriesYvalues=e()}},{key:\"isMultipleY\",value:function(){if(this.w.config.yaxis.constructor===Array&&this.w.config.yaxis.length>1)return this.w.globals.isMultipleYAxis=!0,!0}},{key:\"xySettings\",value:function(){var t=null,e=this.w;if(e.globals.axisCharts){if(\"back\"===e.config.xaxis.crosshairs.position)new Q(this.ctx).drawXCrosshairs();if(\"back\"===e.config.yaxis[0].crosshairs.position)new Q(this.ctx).drawYCrosshairs();if(\"datetime\"===e.config.xaxis.type&&void 0===e.config.xaxis.labels.formatter){this.ctx.timeScale=new Rt(this.ctx);var i=[];isFinite(e.globals.minX)&&isFinite(e.globals.maxX)&&!e.globals.isBarHorizontal?i=this.ctx.timeScale.calculateTimeScaleTicks(e.globals.minX,e.globals.maxX):e.globals.isBarHorizontal&&(i=this.ctx.timeScale.calculateTimeScaleTicks(e.globals.minY,e.globals.maxY)),this.ctx.timeScale.recalcDimensionsBasedOnFormat(i)}t=new y(this.ctx).getCalculatedRatios()}return t}},{key:\"updateSourceChart\",value:function(t){this.ctx.w.globals.selection=void 0,this.ctx.updateHelpers._updateOptions({chart:{selection:{xaxis:{min:t.w.globals.minX,max:t.w.globals.maxX}}}},!1,!1)}},{key:\"setupBrushHandler\",value:function(){var t=this,i=this.w;if(i.config.chart.brush.enabled&&\"function\"!=typeof i.config.chart.events.selection){var a=i.config.chart.brush.targets||[i.config.chart.brush.target];a.forEach((function(e){var i=ApexCharts.getChartByID(e);i.w.globals.brushSource=t.ctx,\"function\"!=typeof i.w.config.chart.events.zoomed&&(i.w.config.chart.events.zoomed=function(){t.updateSourceChart(i)}),\"function\"!=typeof i.w.config.chart.events.scrolled&&(i.w.config.chart.events.scrolled=function(){t.updateSourceChart(i)})})),i.config.chart.events.selection=function(t,s){a.forEach((function(t){var a=ApexCharts.getChartByID(t),r=x.clone(i.config.yaxis);if(i.config.chart.brush.autoScaleYaxis&&1===a.w.globals.series.length){var o=new _(a);r=o.autoScaleY(a,r,s)}var n=a.w.config.yaxis.reduce((function(t,i,s){return[].concat(u(t),[e(e({},a.w.config.yaxis[s]),{},{min:r[0].min,max:r[0].max})])}),[]);a.ctx.updateHelpers._updateOptions({xaxis:{min:s.xaxis.min,max:s.xaxis.max},yaxis:n},!1,!1,!1,!1)}))}}}}]),t}(),Ht=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"_updateOptions\",value:function(t){var e=this,a=arguments.length>1&&void 0!==arguments[1]&&arguments[1],s=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],o=arguments.length>4&&void 0!==arguments[4]&&arguments[4];return new Promise((function(n){var l=[e.ctx];r&&(l=e.ctx.getSyncedCharts()),e.ctx.w.globals.isExecCalled&&(l=[e.ctx],e.ctx.w.globals.isExecCalled=!1),l.forEach((function(r,h){var c=r.w;if(c.globals.shouldAnimate=s,a||(c.globals.resized=!0,c.globals.dataChanged=!0,s&&r.series.getPreviousPaths()),t&&\"object\"===i(t)&&(r.config=new X(t),t=y.extendArrayProps(r.config,t,c),r.w.globals.chartID!==e.ctx.w.globals.chartID&&delete t.series,c.config=x.extend(c.config,t),o&&(c.globals.lastXAxis=t.xaxis?x.clone(t.xaxis):[],c.globals.lastYAxis=t.yaxis?x.clone(t.yaxis):[],c.globals.initialConfig=x.extend({},c.config),c.globals.initialSeries=x.clone(c.config.series),t.series))){for(var d=0;d2&&void 0!==arguments[2]&&arguments[2];return new Promise((function(s){var r,o=i.w;return o.globals.shouldAnimate=e,o.globals.dataChanged=!0,e&&i.ctx.series.getPreviousPaths(),o.globals.axisCharts?(0===(r=t.map((function(t,e){return i._extendSeries(t,e)}))).length&&(r=[{data:[]}]),o.config.series=r):o.config.series=t.slice(),a&&(o.globals.initialConfig.series=x.clone(o.config.series),o.globals.initialSeries=x.clone(o.config.series)),i.ctx.update().then((function(){s(i.ctx)}))}))}},{key:\"_extendSeries\",value:function(t,i){var a=this.w,s=a.config.series[i];return e(e({},a.config.series[i]),{},{name:t.name?t.name:s&&s.name,color:t.color?t.color:s&&s.color,type:t.type?t.type:s&&s.type,data:t.data?t.data:s&&s.data})}},{key:\"toggleDataPointSelection\",value:function(t,e){var i=this.w,a=null,s=\".apexcharts-series[data\\\\:realIndex='\".concat(t,\"']\");return i.globals.axisCharts?a=i.globals.dom.Paper.select(\"\".concat(s,\" path[j='\").concat(e,\"'], \").concat(s,\" circle[j='\").concat(e,\"'], \").concat(s,\" rect[j='\").concat(e,\"']\")).members[0]:void 0===e&&(a=i.globals.dom.Paper.select(\"\".concat(s,\" path[j='\").concat(t,\"']\")).members[0],\"pie\"!==i.config.chart.type&&\"polarArea\"!==i.config.chart.type&&\"donut\"!==i.config.chart.type||this.ctx.pie.pieClicked(t)),a?(new m(this.ctx).pathMouseDown(a,null),a.node?a.node:null):(console.warn(\"toggleDataPointSelection: Element not found\"),null)}},{key:\"forceXAxisUpdate\",value:function(t){var e=this.w;if([\"min\",\"max\"].forEach((function(i){void 0!==t.xaxis[i]&&(e.config.xaxis[i]=t.xaxis[i],e.globals.lastXAxis[i]=t.xaxis[i])})),t.xaxis.categories&&t.xaxis.categories.length&&(e.config.xaxis.categories=t.xaxis.categories),e.config.xaxis.convertedCatToNumeric){var i=new z(t);t=i.convertCatToNumericXaxis(t,this.ctx)}return t}},{key:\"forceYAxisUpdate\",value:function(t){return t.chart&&t.chart.stacked&&\"100%\"===t.chart.stackType&&(Array.isArray(t.yaxis)?t.yaxis.forEach((function(e,i){t.yaxis[i].min=0,t.yaxis[i].max=100})):(t.yaxis.min=0,t.yaxis.max=100)),t}},{key:\"revertDefaultAxisMinMax\",value:function(t){var e=this,i=this.w,a=i.globals.lastXAxis,s=i.globals.lastYAxis;t&&t.xaxis&&(a=t.xaxis),t&&t.yaxis&&(s=t.yaxis),i.config.xaxis.min=a.min,i.config.xaxis.max=a.max;var r=function(t){void 0!==s[t]&&(i.config.yaxis[t].min=s[t].min,i.config.yaxis[t].max=s[t].max)};i.config.yaxis.map((function(t,a){i.globals.zoomed||void 0!==s[a]?r(a):void 0!==e.ctx.opts.yaxis[a]&&(t.min=e.ctx.opts.yaxis[a].min,t.max=e.ctx.opts.yaxis[a].max)}))}}]),t}();Xt=\"undefined\"!=typeof window?window:void 0,Et=function(t,e){var a=(void 0!==this?this:t).SVG=function(t){if(a.supported)return t=new a.Doc(t),a.parser.draw||a.prepare(),t};if(a.ns=\"http://www.w3.org/2000/svg\",a.xmlns=\"http://www.w3.org/2000/xmlns/\",a.xlink=\"http://www.w3.org/1999/xlink\",a.svgjs=\"http://svgjs.dev\",a.supported=!0,!a.supported)return!1;a.did=1e3,a.eid=function(t){return\"Svgjs\"+d(t)+a.did++},a.create=function(t){var i=e.createElementNS(this.ns,t);return i.setAttribute(\"id\",this.eid(t)),i},a.extend=function(){var t,e;e=(t=[].slice.call(arguments)).pop();for(var i=t.length-1;i>=0;i--)if(t[i])for(var s in e)t[i].prototype[s]=e[s];a.Set&&a.Set.inherit&&a.Set.inherit()},a.invent=function(t){var e=\"function\"==typeof t.create?t.create:function(){this.constructor.call(this,a.create(t.create))};return t.inherit&&(e.prototype=new t.inherit),t.extend&&a.extend(e,t.extend),t.construct&&a.extend(t.parent||a.Container,t.construct),e},a.adopt=function(e){return e?e.instance?e.instance:((i=\"svg\"==e.nodeName?e.parentNode instanceof t.SVGElement?new a.Nested:new a.Doc:\"linearGradient\"==e.nodeName?new a.Gradient(\"linear\"):\"radialGradient\"==e.nodeName?new a.Gradient(\"radial\"):a[d(e.nodeName)]?new(a[d(e.nodeName)]):new a.Element(e)).type=e.nodeName,i.node=e,e.instance=i,i instanceof a.Doc&&i.namespace().defs(),i.setData(JSON.parse(e.getAttribute(\"svgjs:data\"))||{}),i):null;var i},a.prepare=function(){var t=e.getElementsByTagName(\"body\")[0],i=(t?new a.Doc(t):a.adopt(e.documentElement).nested()).size(2,0);a.parser={body:t||e.documentElement,draw:i.style(\"opacity:0;position:absolute;left:-100%;top:-100%;overflow:hidden\").node,poly:i.polyline().node,path:i.path().node,native:a.create(\"svg\")}},a.parser={native:a.create(\"svg\")},e.addEventListener(\"DOMContentLoaded\",(function(){a.parser.draw||a.prepare()}),!1),a.regex={numberAndUnit:/^([+-]?(\\d+(\\.\\d*)?|\\.\\d+)(e[+-]?\\d+)?)([a-z%]*)$/i,hex:/^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i,rgb:/rgb\\((\\d+),(\\d+),(\\d+)\\)/,reference:/#([a-z0-9\\-_]+)/i,transforms:/\\)\\s*,?\\s*/,whitespace:/\\s/g,isHex:/^#[a-f0-9]{3,6}$/i,isRgb:/^rgb\\(/,isCss:/[^:]+:[^;]+;?/,isBlank:/^(\\s+)?$/,isNumber:/^[+-]?(\\d+(\\.\\d*)?|\\.\\d+)(e[+-]?\\d+)?$/i,isPercent:/^-?[\\d\\.]+%$/,isImage:/\\.(jpg|jpeg|png|gif|svg)(\\?[^=]+.*)?/i,delimiter:/[\\s,]+/,hyphen:/([^e])\\-/gi,pathLetters:/[MLHVCSQTAZ]/gi,isPathLetter:/[MLHVCSQTAZ]/i,numbersWithDots:/((\\d?\\.\\d+(?:e[+-]?\\d+)?)((?:\\.\\d+(?:e[+-]?\\d+)?)+))+/gi,dots:/\\./g},a.utils={map:function(t,e){for(var i=t.length,a=[],s=0;s1?1:t,new a.Color({r:~~(this.r+(this.destination.r-this.r)*t),g:~~(this.g+(this.destination.g-this.g)*t),b:~~(this.b+(this.destination.b-this.b)*t)})):this}}),a.Color.test=function(t){return t+=\"\",a.regex.isHex.test(t)||a.regex.isRgb.test(t)},a.Color.isRgb=function(t){return t&&\"number\"==typeof t.r&&\"number\"==typeof t.g&&\"number\"==typeof t.b},a.Color.isColor=function(t){return a.Color.isRgb(t)||a.Color.test(t)},a.Array=function(t,e){0==(t=(t||[]).valueOf()).length&&e&&(t=e.valueOf()),this.value=this.parse(t)},a.extend(a.Array,{toString:function(){return this.value.join(\" \")},valueOf:function(){return this.value},parse:function(t){return t=t.valueOf(),Array.isArray(t)?t:this.split(t)}}),a.PointArray=function(t,e){a.Array.call(this,t,e||[[0,0]])},a.PointArray.prototype=new a.Array,a.PointArray.prototype.constructor=a.PointArray;for(var s={M:function(t,e,i){return e.x=i.x=t[0],e.y=i.y=t[1],[\"M\",e.x,e.y]},L:function(t,e){return e.x=t[0],e.y=t[1],[\"L\",t[0],t[1]]},H:function(t,e){return e.x=t[0],[\"H\",t[0]]},V:function(t,e){return e.y=t[0],[\"V\",t[0]]},C:function(t,e){return e.x=t[4],e.y=t[5],[\"C\",t[0],t[1],t[2],t[3],t[4],t[5]]},Q:function(t,e){return e.x=t[2],e.y=t[3],[\"Q\",t[0],t[1],t[2],t[3]]},Z:function(t,e,i){return e.x=i.x,e.y=i.y,[\"Z\"]}},r=\"mlhvqtcsaz\".split(\"\"),o=0,n=r.length;ol);return r},bbox:function(){return a.parser.draw||a.prepare(),a.parser.path.setAttribute(\"d\",this.toString()),a.parser.path.getBBox()}}),a.Number=a.invent({create:function(t,e){this.value=0,this.unit=e||\"\",\"number\"==typeof t?this.value=isNaN(t)?0:isFinite(t)?t:t<0?-34e37:34e37:\"string\"==typeof t?(e=t.match(a.regex.numberAndUnit))&&(this.value=parseFloat(e[1]),\"%\"==e[5]?this.value/=100:\"s\"==e[5]&&(this.value*=1e3),this.unit=e[5]):t instanceof a.Number&&(this.value=t.valueOf(),this.unit=t.unit)},extend:{toString:function(){return(\"%\"==this.unit?~~(1e8*this.value)/1e6:\"s\"==this.unit?this.value/1e3:this.value)+this.unit},toJSON:function(){return this.toString()},valueOf:function(){return this.value},plus:function(t){return t=new a.Number(t),new a.Number(this+t,this.unit||t.unit)},minus:function(t){return t=new a.Number(t),new a.Number(this-t,this.unit||t.unit)},times:function(t){return t=new a.Number(t),new a.Number(this*t,this.unit||t.unit)},divide:function(t){return t=new a.Number(t),new a.Number(this/t,this.unit||t.unit)},to:function(t){var e=new a.Number(this);return\"string\"==typeof t&&(e.unit=t),e},morph:function(t){return this.destination=new a.Number(t),t.relative&&(this.destination.value+=this.value),this},at:function(t){return this.destination?new a.Number(this.destination).minus(this).times(t).plus(this):this}}}),a.Element=a.invent({create:function(t){this._stroke=a.defaults.attrs.stroke,this._event=null,this.dom={},(this.node=t)&&(this.type=t.nodeName,this.node.instance=this,this._stroke=t.getAttribute(\"stroke\")||this._stroke)},extend:{x:function(t){return this.attr(\"x\",t)},y:function(t){return this.attr(\"y\",t)},cx:function(t){return null==t?this.x()+this.width()/2:this.x(t-this.width()/2)},cy:function(t){return null==t?this.y()+this.height()/2:this.y(t-this.height()/2)},move:function(t,e){return this.x(t).y(e)},center:function(t,e){return this.cx(t).cy(e)},width:function(t){return this.attr(\"width\",t)},height:function(t){return this.attr(\"height\",t)},size:function(t,e){var i=u(this,t,e);return this.width(new a.Number(i.width)).height(new a.Number(i.height))},clone:function(t){this.writeDataToDom();var e=x(this.node.cloneNode(!0));return t?t.add(e):this.after(e),e},remove:function(){return this.parent()&&this.parent().removeElement(this),this},replace:function(t){return this.after(t).remove(),t},addTo:function(t){return t.put(this)},putIn:function(t){return t.add(this)},id:function(t){return this.attr(\"id\",t)},show:function(){return this.style(\"display\",\"\")},hide:function(){return this.style(\"display\",\"none\")},visible:function(){return\"none\"!=this.style(\"display\")},toString:function(){return this.attr(\"id\")},classes:function(){var t=this.attr(\"class\");return null==t?[]:t.trim().split(a.regex.delimiter)},hasClass:function(t){return-1!=this.classes().indexOf(t)},addClass:function(t){if(!this.hasClass(t)){var e=this.classes();e.push(t),this.attr(\"class\",e.join(\" \"))}return this},removeClass:function(t){return this.hasClass(t)&&this.attr(\"class\",this.classes().filter((function(e){return e!=t})).join(\" \")),this},toggleClass:function(t){return this.hasClass(t)?this.removeClass(t):this.addClass(t)},reference:function(t){return a.get(this.attr(t))},parent:function(e){var i=this;if(!i.node.parentNode)return null;if(i=a.adopt(i.node.parentNode),!e)return i;for(;i&&i.node instanceof t.SVGElement;){if(\"string\"==typeof e?i.matches(e):i instanceof e)return i;if(!i.node.parentNode||\"#document\"==i.node.parentNode.nodeName)return null;i=a.adopt(i.node.parentNode)}},doc:function(){return this instanceof a.Doc?this:this.parent(a.Doc)},parents:function(t){var e=[],i=this;do{if(!(i=i.parent(t))||!i.node)break;e.push(i)}while(i.parent);return e},matches:function(t){return function(t,e){return(t.matches||t.matchesSelector||t.msMatchesSelector||t.mozMatchesSelector||t.webkitMatchesSelector||t.oMatchesSelector).call(t,e)}(this.node,t)},native:function(){return this.node},svg:function(t){var i=e.createElement(\"svg\");if(!(t&&this instanceof a.Parent))return i.appendChild(t=e.createElement(\"svg\")),this.writeDataToDom(),t.appendChild(this.node.cloneNode(!0)),i.innerHTML.replace(/^/,\"\").replace(/<\\/svg>$/,\"\");i.innerHTML=\"\"+t.replace(/\\n/,\"\").replace(/<([\\w:-]+)([^<]+?)\\/>/g,\"<$1$2>\")+\"\";for(var s=0,r=i.firstChild.childNodes.length;s\":function(t){return-Math.cos(t*Math.PI)/2+.5},\">\":function(t){return Math.sin(t*Math.PI/2)},\"<\":function(t){return 1-Math.cos(t*Math.PI/2)}},a.morph=function(t){return function(e,i){return new a.MorphObj(e,i).at(t)}},a.Situation=a.invent({create:function(t){this.init=!1,this.reversed=!1,this.reversing=!1,this.duration=new a.Number(t.duration).valueOf(),this.delay=new a.Number(t.delay).valueOf(),this.start=+new Date+this.delay,this.finish=this.start+this.duration,this.ease=t.ease,this.loop=0,this.loops=!1,this.animations={},this.attrs={},this.styles={},this.transforms=[],this.once={}}}),a.FX=a.invent({create:function(t){this._target=t,this.situations=[],this.active=!1,this.situation=null,this.paused=!1,this.lastPos=0,this.pos=0,this.absPos=0,this._speed=1},extend:{animate:function(t,e,s){\"object\"===i(t)&&(e=t.ease,s=t.delay,t=t.duration);var r=new a.Situation({duration:t||1e3,delay:s||0,ease:a.easing[e||\"-\"]||e});return this.queue(r),this},target:function(t){return t&&t instanceof a.Element?(this._target=t,this):this._target},timeToAbsPos:function(t){return(t-this.situation.start)/(this.situation.duration/this._speed)},absPosToTime:function(t){return this.situation.duration/this._speed*t+this.situation.start},startAnimFrame:function(){this.stopAnimFrame(),this.animationFrame=t.requestAnimationFrame(function(){this.step()}.bind(this))},stopAnimFrame:function(){t.cancelAnimationFrame(this.animationFrame)},start:function(){return!this.active&&this.situation&&(this.active=!0,this.startCurrent()),this},startCurrent:function(){return this.situation.start=+new Date+this.situation.delay/this._speed,this.situation.finish=this.situation.start+this.situation.duration/this._speed,this.initAnimations().step()},queue:function(t){return(\"function\"==typeof t||t instanceof a.Situation)&&this.situations.push(t),this.situation||(this.situation=this.situations.shift()),this},dequeue:function(){return this.stop(),this.situation=this.situations.shift(),this.situation&&(this.situation instanceof a.Situation?this.start():this.situation.call(this)),this},initAnimations:function(){var t,e=this.situation;if(e.init)return this;for(var i in e.animations){t=this.target()[i](),Array.isArray(t)||(t=[t]),Array.isArray(e.animations[i])||(e.animations[i]=[e.animations[i]]);for(var s=t.length;s--;)e.animations[i][s]instanceof a.Number&&(t[s]=new a.Number(t[s])),e.animations[i][s]=t[s].morph(e.animations[i][s])}for(var i in e.attrs)e.attrs[i]=new a.MorphObj(this.target().attr(i),e.attrs[i]);for(var i in e.styles)e.styles[i]=new a.MorphObj(this.target().style(i),e.styles[i]);return e.initialTransformation=this.target().matrixify(),e.init=!0,this},clearQueue:function(){return this.situations=[],this},clearCurrent:function(){return this.situation=null,this},stop:function(t,e){var i=this.active;return this.active=!1,e&&this.clearQueue(),t&&this.situation&&(!i&&this.startCurrent(),this.atEnd()),this.stopAnimFrame(),this.clearCurrent()},after:function(t){var e=this.last();return this.target().on(\"finished.fx\",(function i(a){a.detail.situation==e&&(t.call(this,e),this.off(\"finished.fx\",i))})),this._callStart()},during:function(t){var e=this.last(),i=function(i){i.detail.situation==e&&t.call(this,i.detail.pos,a.morph(i.detail.pos),i.detail.eased,e)};return this.target().off(\"during.fx\",i).on(\"during.fx\",i),this.after((function(){this.off(\"during.fx\",i)})),this._callStart()},afterAll:function(t){var e=function e(i){t.call(this),this.off(\"allfinished.fx\",e)};return this.target().off(\"allfinished.fx\",e).on(\"allfinished.fx\",e),this._callStart()},last:function(){return this.situations.length?this.situations[this.situations.length-1]:this.situation},add:function(t,e,i){return this.last()[i||\"animations\"][t]=e,this._callStart()},step:function(t){var e,i,a;t||(this.absPos=this.timeToAbsPos(+new Date)),!1!==this.situation.loops?(e=Math.max(this.absPos,0),i=Math.floor(e),!0===this.situation.loops||ithis.lastPos&&r<=s&&(this.situation.once[r].call(this.target(),this.pos,s),delete this.situation.once[r]);return this.active&&this.target().fire(\"during\",{pos:this.pos,eased:s,fx:this,situation:this.situation}),this.situation?(this.eachAt(),1==this.pos&&!this.situation.reversed||this.situation.reversed&&0==this.pos?(this.stopAnimFrame(),this.target().fire(\"finished\",{fx:this,situation:this.situation}),this.situations.length||(this.target().fire(\"allfinished\"),this.situations.length||(this.target().off(\".fx\"),this.active=!1)),this.active?this.dequeue():this.clearCurrent()):!this.paused&&this.active&&this.startAnimFrame(),this.lastPos=s,this):this},eachAt:function(){var t,e=this,i=this.target(),s=this.situation;for(var r in s.animations)t=[].concat(s.animations[r]).map((function(t){return\"string\"!=typeof t&&t.at?t.at(s.ease(e.pos),e.pos):t})),i[r].apply(i,t);for(var r in s.attrs)t=[r].concat(s.attrs[r]).map((function(t){return\"string\"!=typeof t&&t.at?t.at(s.ease(e.pos),e.pos):t})),i.attr.apply(i,t);for(var r in s.styles)t=[r].concat(s.styles[r]).map((function(t){return\"string\"!=typeof t&&t.at?t.at(s.ease(e.pos),e.pos):t})),i.style.apply(i,t);if(s.transforms.length){t=s.initialTransformation,r=0;for(var o=s.transforms.length;r=0;--s)this[m[s]]=null!=t[m[s]]?t[m[s]]:e[m[s]]},extend:{extract:function(){var t=f(this,0,1);f(this,1,0);var e=180/Math.PI*Math.atan2(t.y,t.x)-90;return{x:this.e,y:this.f,transformedX:(this.e*Math.cos(e*Math.PI/180)+this.f*Math.sin(e*Math.PI/180))/Math.sqrt(this.a*this.a+this.b*this.b),transformedY:(this.f*Math.cos(e*Math.PI/180)+this.e*Math.sin(-e*Math.PI/180))/Math.sqrt(this.c*this.c+this.d*this.d),rotation:e,a:this.a,b:this.b,c:this.c,d:this.d,e:this.e,f:this.f,matrix:new a.Matrix(this)}},clone:function(){return new a.Matrix(this)},morph:function(t){return this.destination=new a.Matrix(t),this},multiply:function(t){return new a.Matrix(this.native().multiply(function(t){return t instanceof a.Matrix||(t=new a.Matrix(t)),t}(t).native()))},inverse:function(){return new a.Matrix(this.native().inverse())},translate:function(t,e){return new a.Matrix(this.native().translate(t||0,e||0))},native:function(){for(var t=a.parser.native.createSVGMatrix(),e=m.length-1;e>=0;e--)t[m[e]]=this[m[e]];return t},toString:function(){return\"matrix(\"+v(this.a)+\",\"+v(this.b)+\",\"+v(this.c)+\",\"+v(this.d)+\",\"+v(this.e)+\",\"+v(this.f)+\")\"}},parent:a.Element,construct:{ctm:function(){return new a.Matrix(this.node.getCTM())},screenCTM:function(){if(this instanceof a.Nested){var t=this.rect(1,1),e=t.node.getScreenCTM();return t.remove(),new a.Matrix(e)}return new a.Matrix(this.node.getScreenCTM())}}}),a.Point=a.invent({create:function(t,e){var a;a=Array.isArray(t)?{x:t[0],y:t[1]}:\"object\"===i(t)?{x:t.x,y:t.y}:null!=t?{x:t,y:null!=e?e:t}:{x:0,y:0},this.x=a.x,this.y=a.y},extend:{clone:function(){return new a.Point(this)},morph:function(t,e){return this.destination=new a.Point(t,e),this}}}),a.extend(a.Element,{point:function(t,e){return new a.Point(t,e).transform(this.screenCTM().inverse())}}),a.extend(a.Element,{attr:function(t,e,s){if(null==t){for(t={},s=(e=this.node.attributes).length-1;s>=0;s--)t[e[s].nodeName]=a.regex.isNumber.test(e[s].nodeValue)?parseFloat(e[s].nodeValue):e[s].nodeValue;return t}if(\"object\"===i(t))for(var r in t)this.attr(r,t[r]);else if(null===e)this.node.removeAttribute(t);else{if(null==e)return null==(e=this.node.getAttribute(t))?a.defaults.attrs[t]:a.regex.isNumber.test(e)?parseFloat(e):e;\"stroke-width\"==t?this.attr(\"stroke\",parseFloat(e)>0?this._stroke:null):\"stroke\"==t&&(this._stroke=e),\"fill\"!=t&&\"stroke\"!=t||(a.regex.isImage.test(e)&&(e=this.doc().defs().image(e,0,0)),e instanceof a.Image&&(e=this.doc().defs().pattern(0,0,(function(){this.add(e)})))),\"number\"==typeof e?e=new a.Number(e):a.Color.isColor(e)?e=new a.Color(e):Array.isArray(e)&&(e=new a.Array(e)),\"leading\"==t?this.leading&&this.leading(e):\"string\"==typeof s?this.node.setAttributeNS(s,t,e.toString()):this.node.setAttribute(t,e.toString()),!this.rebuild||\"font-size\"!=t&&\"x\"!=t||this.rebuild(t,e)}return this}}),a.extend(a.Element,{transform:function(t,e){var s;return\"object\"!==i(t)?(s=new a.Matrix(this).extract(),\"string\"==typeof t?s[t]:s):(s=new a.Matrix(this),e=!!e||!!t.relative,null!=t.a&&(s=e?s.multiply(new a.Matrix(t)):new a.Matrix(t)),this.attr(\"transform\",s))}}),a.extend(a.Element,{untransform:function(){return this.attr(\"transform\",null)},matrixify:function(){return(this.attr(\"transform\")||\"\").split(a.regex.transforms).slice(0,-1).map((function(t){var e=t.trim().split(\"(\");return[e[0],e[1].split(a.regex.delimiter).map((function(t){return parseFloat(t)}))]})).reduce((function(t,e){return\"matrix\"==e[0]?t.multiply(p(e[1])):t[e[0]].apply(t,e[1])}),new a.Matrix)},toParent:function(t){if(this==t)return this;var e=this.screenCTM(),i=t.screenCTM().inverse();return this.addTo(t).untransform().transform(i.multiply(e)),this},toDoc:function(){return this.toParent(this.doc())}}),a.Transformation=a.invent({create:function(t,e){if(arguments.length>1&&\"boolean\"!=typeof e)return this.constructor.call(this,[].slice.call(arguments));if(Array.isArray(t))for(var a=0,s=this.arguments.length;a=0},index:function(t){return[].slice.call(this.node.childNodes).indexOf(t.node)},get:function(t){return a.adopt(this.node.childNodes[t])},first:function(){return this.get(0)},last:function(){return this.get(this.node.childNodes.length-1)},each:function(t,e){for(var i=this.children(),s=0,r=i.length;s=0;i--)e.childNodes[i]instanceof t.SVGElement&&x(e.childNodes[i]);return a.adopt(e).id(a.eid(e.nodeName))}function b(t){return null==t.x&&(t.x=0,t.y=0,t.width=0,t.height=0),t.w=t.width,t.h=t.height,t.x2=t.x+t.width,t.y2=t.y+t.height,t.cx=t.x+t.width/2,t.cy=t.y+t.height/2,t}function v(t){return Math.abs(t)>1e-37?t:0}[\"fill\",\"stroke\"].forEach((function(t){var e={};e[t]=function(e){if(void 0===e)return this;if(\"string\"==typeof e||a.Color.isRgb(e)||e&&\"function\"==typeof e.fill)this.attr(t,e);else for(var i=l[t].length-1;i>=0;i--)null!=e[l[t][i]]&&this.attr(l.prefix(t,l[t][i]),e[l[t][i]]);return this},a.extend(a.Element,a.FX,e)})),a.extend(a.Element,a.FX,{translate:function(t,e){return this.transform({x:t,y:e})},matrix:function(t){return this.attr(\"transform\",new a.Matrix(6==arguments.length?[].slice.call(arguments):t))},opacity:function(t){return this.attr(\"opacity\",t)},dx:function(t){return this.x(new a.Number(t).plus(this instanceof a.FX?0:this.x()),!0)},dy:function(t){return this.y(new a.Number(t).plus(this instanceof a.FX?0:this.y()),!0)}}),a.extend(a.Path,{length:function(){return this.node.getTotalLength()},pointAt:function(t){return this.node.getPointAtLength(t)}}),a.Set=a.invent({create:function(t){Array.isArray(t)?this.members=t:this.clear()},extend:{add:function(){for(var t=[].slice.call(arguments),e=0,i=t.length;e-1&&this.members.splice(e,1),this},each:function(t){for(var e=0,i=this.members.length;e=0},index:function(t){return this.members.indexOf(t)},get:function(t){return this.members[t]},first:function(){return this.get(0)},last:function(){return this.get(this.members.length-1)},valueOf:function(){return this.members}},construct:{set:function(t){return new a.Set(t)}}}),a.FX.Set=a.invent({create:function(t){this.set=t}}),a.Set.inherit=function(){var t=[];for(var e in a.Shape.prototype)\"function\"==typeof a.Shape.prototype[e]&&\"function\"!=typeof a.Set.prototype[e]&&t.push(e);for(var e in t.forEach((function(t){a.Set.prototype[t]=function(){for(var e=0,i=this.members.length;e=0;t--)delete this.memory()[arguments[t]];return this},memory:function(){return this._memory||(this._memory={})}}),a.get=function(t){var i=e.getElementById(function(t){var e=(t||\"\").toString().match(a.regex.reference);if(e)return e[1]}(t)||t);return a.adopt(i)},a.select=function(t,i){return new a.Set(a.utils.map((i||e).querySelectorAll(t),(function(t){return a.adopt(t)})))},a.extend(a.Parent,{select:function(t){return a.select(t,this.node)}});var m=\"abcdef\".split(\"\");if(\"function\"!=typeof t.CustomEvent){var y=function(t,i){i=i||{bubbles:!1,cancelable:!1,detail:void 0};var a=e.createEvent(\"CustomEvent\");return a.initCustomEvent(t,i.bubbles,i.cancelable,i.detail),a};y.prototype=t.Event.prototype,a.CustomEvent=y}else a.CustomEvent=t.CustomEvent;return a},\"function\"==typeof define&&define.amd?define((function(){return Et(Xt,Xt.document)})):\"object\"===(\"undefined\"==typeof exports?\"undefined\":i(exports))&&\"undefined\"!=typeof module?module.exports=Xt.document?Et(Xt,Xt.document):function(t){return Et(t,t.document)}:Xt.SVG=Et(Xt,Xt.document),\n/*! svg.filter.js - v2.0.2 - 2016-02-24\n * https://github.com/wout/svg.filter.js\n * Copyright (c) 2016 Wout Fierens; Licensed MIT */\nfunction(){SVG.Filter=SVG.invent({create:\"filter\",inherit:SVG.Parent,extend:{source:\"SourceGraphic\",sourceAlpha:\"SourceAlpha\",background:\"BackgroundImage\",backgroundAlpha:\"BackgroundAlpha\",fill:\"FillPaint\",stroke:\"StrokePaint\",autoSetIn:!0,put:function(t,e){return this.add(t,e),!t.attr(\"in\")&&this.autoSetIn&&t.attr(\"in\",this.source),t.attr(\"result\")||t.attr(\"result\",t),t},blend:function(t,e,i){return this.put(new SVG.BlendEffect(t,e,i))},colorMatrix:function(t,e){return this.put(new SVG.ColorMatrixEffect(t,e))},convolveMatrix:function(t){return this.put(new SVG.ConvolveMatrixEffect(t))},componentTransfer:function(t){return this.put(new SVG.ComponentTransferEffect(t))},composite:function(t,e,i){return this.put(new SVG.CompositeEffect(t,e,i))},flood:function(t,e){return this.put(new SVG.FloodEffect(t,e))},offset:function(t,e){return this.put(new SVG.OffsetEffect(t,e))},image:function(t){return this.put(new SVG.ImageEffect(t))},merge:function(){var t=[void 0];for(var e in arguments)t.push(arguments[e]);return this.put(new(SVG.MergeEffect.bind.apply(SVG.MergeEffect,t)))},gaussianBlur:function(t,e){return this.put(new SVG.GaussianBlurEffect(t,e))},morphology:function(t,e){return this.put(new SVG.MorphologyEffect(t,e))},diffuseLighting:function(t,e,i){return this.put(new SVG.DiffuseLightingEffect(t,e,i))},displacementMap:function(t,e,i,a,s){return this.put(new SVG.DisplacementMapEffect(t,e,i,a,s))},specularLighting:function(t,e,i,a){return this.put(new SVG.SpecularLightingEffect(t,e,i,a))},tile:function(){return this.put(new SVG.TileEffect)},turbulence:function(t,e,i,a,s){return this.put(new SVG.TurbulenceEffect(t,e,i,a,s))},toString:function(){return\"url(#\"+this.attr(\"id\")+\")\"}}}),SVG.extend(SVG.Defs,{filter:function(t){var e=this.put(new SVG.Filter);return\"function\"==typeof t&&t.call(e,e),e}}),SVG.extend(SVG.Container,{filter:function(t){return this.defs().filter(t)}}),SVG.extend(SVG.Element,SVG.G,SVG.Nested,{filter:function(t){return this.filterer=t instanceof SVG.Element?t:this.doc().filter(t),this.doc()&&this.filterer.doc()!==this.doc()&&this.doc().defs().add(this.filterer),this.attr(\"filter\",this.filterer),this.filterer},unfilter:function(t){return this.filterer&&!0===t&&this.filterer.remove(),delete this.filterer,this.attr(\"filter\",null)}}),SVG.Effect=SVG.invent({create:function(){this.constructor.call(this)},inherit:SVG.Element,extend:{in:function(t){return null==t?this.parent()&&this.parent().select('[result=\"'+this.attr(\"in\")+'\"]').get(0)||this.attr(\"in\"):this.attr(\"in\",t)},result:function(t){return null==t?this.attr(\"result\"):this.attr(\"result\",t)},toString:function(){return this.result()}}}),SVG.ParentEffect=SVG.invent({create:function(){this.constructor.call(this)},inherit:SVG.Parent,extend:{in:function(t){return null==t?this.parent()&&this.parent().select('[result=\"'+this.attr(\"in\")+'\"]').get(0)||this.attr(\"in\"):this.attr(\"in\",t)},result:function(t){return null==t?this.attr(\"result\"):this.attr(\"result\",t)},toString:function(){return this.result()}}});var t={blend:function(t,e){return this.parent()&&this.parent().blend(this,t,e)},colorMatrix:function(t,e){return this.parent()&&this.parent().colorMatrix(t,e).in(this)},convolveMatrix:function(t){return this.parent()&&this.parent().convolveMatrix(t).in(this)},componentTransfer:function(t){return this.parent()&&this.parent().componentTransfer(t).in(this)},composite:function(t,e){return this.parent()&&this.parent().composite(this,t,e)},flood:function(t,e){return this.parent()&&this.parent().flood(t,e)},offset:function(t,e){return this.parent()&&this.parent().offset(t,e).in(this)},image:function(t){return this.parent()&&this.parent().image(t)},merge:function(){return this.parent()&&this.parent().merge.apply(this.parent(),[this].concat(arguments))},gaussianBlur:function(t,e){return this.parent()&&this.parent().gaussianBlur(t,e).in(this)},morphology:function(t,e){return this.parent()&&this.parent().morphology(t,e).in(this)},diffuseLighting:function(t,e,i){return this.parent()&&this.parent().diffuseLighting(t,e,i).in(this)},displacementMap:function(t,e,i,a){return this.parent()&&this.parent().displacementMap(this,t,e,i,a)},specularLighting:function(t,e,i,a){return this.parent()&&this.parent().specularLighting(t,e,i,a).in(this)},tile:function(){return this.parent()&&this.parent().tile().in(this)},turbulence:function(t,e,i,a,s){return this.parent()&&this.parent().turbulence(t,e,i,a,s).in(this)}};SVG.extend(SVG.Effect,t),SVG.extend(SVG.ParentEffect,t),SVG.ChildEffect=SVG.invent({create:function(){this.constructor.call(this)},inherit:SVG.Element,extend:{in:function(t){this.attr(\"in\",t)}}});var e={blend:function(t,e,i){this.attr({in:t,in2:e,mode:i||\"normal\"})},colorMatrix:function(t,e){\"matrix\"==t&&(e=s(e)),this.attr({type:t,values:void 0===e?null:e})},convolveMatrix:function(t){t=s(t),this.attr({order:Math.sqrt(t.split(\" \").length),kernelMatrix:t})},composite:function(t,e,i){this.attr({in:t,in2:e,operator:i})},flood:function(t,e){this.attr(\"flood-color\",t),null!=e&&this.attr(\"flood-opacity\",e)},offset:function(t,e){this.attr({dx:t,dy:e})},image:function(t){this.attr(\"href\",t,SVG.xlink)},displacementMap:function(t,e,i,a,s){this.attr({in:t,in2:e,scale:i,xChannelSelector:a,yChannelSelector:s})},gaussianBlur:function(t,e){null!=t||null!=e?this.attr(\"stdDeviation\",r(Array.prototype.slice.call(arguments))):this.attr(\"stdDeviation\",\"0 0\")},morphology:function(t,e){this.attr({operator:t,radius:e})},tile:function(){},turbulence:function(t,e,i,a,s){this.attr({numOctaves:e,seed:i,stitchTiles:a,baseFrequency:t,type:s})}},i={merge:function(){var t;if(arguments[0]instanceof SVG.Set){var e=this;arguments[0].each((function(t){this instanceof SVG.MergeNode?e.put(this):(this instanceof SVG.Effect||this instanceof SVG.ParentEffect)&&e.put(new SVG.MergeNode(this))}))}else{t=Array.isArray(arguments[0])?arguments[0]:arguments;for(var i=0;i1&&(T*=a=Math.sqrt(a),M*=a);s=(new SVG.Matrix).rotate(I).scale(1/T,1/M).rotate(-I),F=F.transform(s),R=R.transform(s),r=[R.x-F.x,R.y-F.y],n=r[0]*r[0]+r[1]*r[1],o=Math.sqrt(n),r[0]/=o,r[1]/=o,l=n<4?Math.sqrt(1-n/4):0,z===X&&(l*=-1);h=new SVG.Point((R.x+F.x)/2+l*-r[1],(R.y+F.y)/2+l*r[0]),c=new SVG.Point(F.x-h.x,F.y-h.y),d=new SVG.Point(R.x-h.x,R.y-h.y),g=Math.acos(c.x/Math.sqrt(c.x*c.x+c.y*c.y)),c.y<0&&(g*=-1);u=Math.acos(d.x/Math.sqrt(d.x*d.x+d.y*d.y)),d.y<0&&(u*=-1);X&&g>u&&(u+=2*Math.PI);!X&&gr.maxX-e.width&&(o=(a=r.maxX-e.width)-this.startPoints.box.x),null!=r.minY&&sr.maxY-e.height&&(n=(s=r.maxY-e.height)-this.startPoints.box.y),null!=r.snapToGrid&&(a-=a%r.snapToGrid,s-=s%r.snapToGrid,o-=o%r.snapToGrid,n-=n%r.snapToGrid),this.el instanceof SVG.G?this.el.matrix(this.startPoints.transform).transform({x:o,y:n},!0):this.el.move(a,s));return i},t.prototype.end=function(t){var e=this.drag(t);this.el.fire(\"dragend\",{event:t,p:e,m:this.m,handler:this}),SVG.off(window,\"mousemove.drag\"),SVG.off(window,\"touchmove.drag\"),SVG.off(window,\"mouseup.drag\"),SVG.off(window,\"touchend.drag\")},SVG.extend(SVG.Element,{draggable:function(e,i){\"function\"!=typeof e&&\"object\"!=typeof e||(i=e,e=!0);var a=this.remember(\"_draggable\")||new t(this);return(e=void 0===e||e)?a.init(i||{},e):(this.off(\"mousedown.drag\"),this.off(\"touchstart.drag\")),this}})}.call(void 0),function(){function t(t){this.el=t,t.remember(\"_selectHandler\",this),this.pointSelection={isSelected:!1},this.rectSelection={isSelected:!1},this.pointsList={lt:[0,0],rt:[\"width\",0],rb:[\"width\",\"height\"],lb:[0,\"height\"],t:[\"width\",0],r:[\"width\",\"height\"],b:[\"width\",\"height\"],l:[0,\"height\"]},this.pointCoord=function(t,e,i){var a=\"string\"!=typeof t?t:e[t];return i?a/2:a},this.pointCoords=function(t,e){var i=this.pointsList[t];return{x:this.pointCoord(i[0],e,\"t\"===t||\"b\"===t),y:this.pointCoord(i[1],e,\"r\"===t||\"l\"===t)}}}t.prototype.init=function(t,e){var i=this.el.bbox();this.options={};var a=this.el.selectize.defaults.points;for(var s in this.el.selectize.defaults)this.options[s]=this.el.selectize.defaults[s],void 0!==e[s]&&(this.options[s]=e[s]);var r=[\"points\",\"pointsExclude\"];for(var s in r){var o=this.options[r[s]];\"string\"==typeof o?o=o.length>0?o.split(/\\s*,\\s*/i):[]:\"boolean\"==typeof o&&\"points\"===r[s]&&(o=o?a:[]),this.options[r[s]]=o}this.options.points=[a,this.options.points].reduce((function(t,e){return t.filter((function(t){return e.indexOf(t)>-1}))})),this.options.points=[this.options.points,this.options.pointsExclude].reduce((function(t,e){return t.filter((function(t){return e.indexOf(t)<0}))})),this.parent=this.el.parent(),this.nested=this.nested||this.parent.group(),this.nested.matrix(new SVG.Matrix(this.el).translate(i.x,i.y)),this.options.deepSelect&&-1!==[\"line\",\"polyline\",\"polygon\"].indexOf(this.el.type)?this.selectPoints(t):this.selectRect(t),this.observe(),this.cleanup()},t.prototype.selectPoints=function(t){return this.pointSelection.isSelected=t,this.pointSelection.set||(this.pointSelection.set=this.parent.set(),this.drawPoints()),this},t.prototype.getPointArray=function(){var t=this.el.bbox();return this.el.array().valueOf().map((function(e){return[e[0]-t.x,e[1]-t.y]}))},t.prototype.drawPoints=function(){for(var t=this,e=this.getPointArray(),i=0,a=e.length;i0&&this.parameters.box.height-i[1]>0){if(\"text\"===this.parameters.type)return this.el.move(this.parameters.box.x+i[0],this.parameters.box.y),void this.el.attr(\"font-size\",this.parameters.fontSize-i[0]);i=this.checkAspectRatio(i),this.el.move(this.parameters.box.x+i[0],this.parameters.box.y+i[1]).size(this.parameters.box.width-i[0],this.parameters.box.height-i[1])}};break;case\"rt\":this.calc=function(t,e){var i=this.snapToGrid(t,e,2);if(this.parameters.box.width+i[0]>0&&this.parameters.box.height-i[1]>0){if(\"text\"===this.parameters.type)return this.el.move(this.parameters.box.x-i[0],this.parameters.box.y),void this.el.attr(\"font-size\",this.parameters.fontSize+i[0]);i=this.checkAspectRatio(i,!0),this.el.move(this.parameters.box.x,this.parameters.box.y+i[1]).size(this.parameters.box.width+i[0],this.parameters.box.height-i[1])}};break;case\"rb\":this.calc=function(t,e){var i=this.snapToGrid(t,e,0);if(this.parameters.box.width+i[0]>0&&this.parameters.box.height+i[1]>0){if(\"text\"===this.parameters.type)return this.el.move(this.parameters.box.x-i[0],this.parameters.box.y),void this.el.attr(\"font-size\",this.parameters.fontSize+i[0]);i=this.checkAspectRatio(i),this.el.move(this.parameters.box.x,this.parameters.box.y).size(this.parameters.box.width+i[0],this.parameters.box.height+i[1])}};break;case\"lb\":this.calc=function(t,e){var i=this.snapToGrid(t,e,1);if(this.parameters.box.width-i[0]>0&&this.parameters.box.height+i[1]>0){if(\"text\"===this.parameters.type)return this.el.move(this.parameters.box.x+i[0],this.parameters.box.y),void this.el.attr(\"font-size\",this.parameters.fontSize-i[0]);i=this.checkAspectRatio(i,!0),this.el.move(this.parameters.box.x+i[0],this.parameters.box.y).size(this.parameters.box.width-i[0],this.parameters.box.height+i[1])}};break;case\"t\":this.calc=function(t,e){var i=this.snapToGrid(t,e,2);if(this.parameters.box.height-i[1]>0){if(\"text\"===this.parameters.type)return;this.el.move(this.parameters.box.x,this.parameters.box.y+i[1]).height(this.parameters.box.height-i[1])}};break;case\"r\":this.calc=function(t,e){var i=this.snapToGrid(t,e,0);if(this.parameters.box.width+i[0]>0){if(\"text\"===this.parameters.type)return;this.el.move(this.parameters.box.x,this.parameters.box.y).width(this.parameters.box.width+i[0])}};break;case\"b\":this.calc=function(t,e){var i=this.snapToGrid(t,e,0);if(this.parameters.box.height+i[1]>0){if(\"text\"===this.parameters.type)return;this.el.move(this.parameters.box.x,this.parameters.box.y).height(this.parameters.box.height+i[1])}};break;case\"l\":this.calc=function(t,e){var i=this.snapToGrid(t,e,1);if(this.parameters.box.width-i[0]>0){if(\"text\"===this.parameters.type)return;this.el.move(this.parameters.box.x+i[0],this.parameters.box.y).width(this.parameters.box.width-i[0])}};break;case\"rot\":this.calc=function(t,e){var i=t+this.parameters.p.x,a=e+this.parameters.p.y,s=Math.atan2(this.parameters.p.y-this.parameters.box.y-this.parameters.box.height/2,this.parameters.p.x-this.parameters.box.x-this.parameters.box.width/2),r=Math.atan2(a-this.parameters.box.y-this.parameters.box.height/2,i-this.parameters.box.x-this.parameters.box.width/2),o=this.parameters.rotation+180*(r-s)/Math.PI+this.options.snapToAngle/2;this.el.center(this.parameters.box.cx,this.parameters.box.cy).rotate(o-o%this.options.snapToAngle,this.parameters.box.cx,this.parameters.box.cy)};break;case\"point\":this.calc=function(t,e){var i=this.snapToGrid(t,e,this.parameters.pointCoords[0],this.parameters.pointCoords[1]),a=this.el.array().valueOf();a[this.parameters.i][0]=this.parameters.pointCoords[0]+i[0],a[this.parameters.i][1]=this.parameters.pointCoords[1]+i[1],this.el.plot(a)}}this.el.fire(\"resizestart\",{dx:this.parameters.x,dy:this.parameters.y,event:t}),SVG.on(window,\"touchmove.resize\",(function(t){e.update(t||window.event)})),SVG.on(window,\"touchend.resize\",(function(){e.done()})),SVG.on(window,\"mousemove.resize\",(function(t){e.update(t||window.event)})),SVG.on(window,\"mouseup.resize\",(function(){e.done()}))},t.prototype.update=function(t){if(t){var e=this._extractPosition(t),i=this.transformPoint(e.x,e.y),a=i.x-this.parameters.p.x,s=i.y-this.parameters.p.y;this.lastUpdateCall=[a,s],this.calc(a,s),this.el.fire(\"resizing\",{dx:a,dy:s,event:t})}else this.lastUpdateCall&&this.calc(this.lastUpdateCall[0],this.lastUpdateCall[1])},t.prototype.done=function(){this.lastUpdateCall=null,SVG.off(window,\"mousemove.resize\"),SVG.off(window,\"mouseup.resize\"),SVG.off(window,\"touchmove.resize\"),SVG.off(window,\"touchend.resize\"),this.el.fire(\"resizedone\")},t.prototype.snapToGrid=function(t,e,i,a){var s;return void 0!==a?s=[(i+t)%this.options.snapToGrid,(a+e)%this.options.snapToGrid]:(i=null==i?3:i,s=[(this.parameters.box.x+t+(1&i?0:this.parameters.box.width))%this.options.snapToGrid,(this.parameters.box.y+e+(2&i?0:this.parameters.box.height))%this.options.snapToGrid]),t<0&&(s[0]-=this.options.snapToGrid),e<0&&(s[1]-=this.options.snapToGrid),t-=Math.abs(s[0])o.maxX&&(t=o.maxX-s),void 0!==o.minY&&r+eo.maxY&&(e=o.maxY-r),[t,e]},t.prototype.checkAspectRatio=function(t,e){if(!this.options.saveAspectRatio)return t;var i=t.slice(),a=this.parameters.box.width/this.parameters.box.height,s=this.parameters.box.width+t[0],r=this.parameters.box.height-t[1],o=s/r;return oa&&(i[0]=this.parameters.box.width-r*a,e&&(i[0]=-i[0])),i},SVG.extend(SVG.Element,{resize:function(e){return(this.remember(\"_resizeHandler\")||new t(this)).init(e||{}),this}}),SVG.Element.prototype.resize.defaults={snapToAngle:.1,snapToGrid:1,constraint:{},saveAspectRatio:!1}}).call(this)}(),void 0===window.Apex&&(window.Apex={});var Ot=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"initModules\",value:function(){this.ctx.publicMethods=[\"updateOptions\",\"updateSeries\",\"appendData\",\"appendSeries\",\"toggleSeries\",\"showSeries\",\"hideSeries\",\"setLocale\",\"resetSeries\",\"zoomX\",\"toggleDataPointSelection\",\"dataURI\",\"exportToCSV\",\"addXaxisAnnotation\",\"addYaxisAnnotation\",\"addPointAnnotation\",\"clearAnnotations\",\"removeAnnotation\",\"paper\",\"destroy\"],this.ctx.eventList=[\"click\",\"mousedown\",\"mousemove\",\"mouseleave\",\"touchstart\",\"touchmove\",\"touchleave\",\"mouseup\",\"touchend\"],this.ctx.animations=new b(this.ctx),this.ctx.axes=new J(this.ctx),this.ctx.core=new Dt(this.ctx.el,this.ctx),this.ctx.config=new X({}),this.ctx.data=new N(this.ctx),this.ctx.grid=new j(this.ctx),this.ctx.graphics=new m(this.ctx),this.ctx.coreUtils=new y(this.ctx),this.ctx.crosshairs=new Q(this.ctx),this.ctx.events=new Z(this.ctx),this.ctx.exports=new G(this.ctx),this.ctx.localization=new $(this.ctx),this.ctx.options=new L,this.ctx.responsive=new K(this.ctx),this.ctx.series=new O(this.ctx),this.ctx.theme=new tt(this.ctx),this.ctx.formatters=new W(this.ctx),this.ctx.titleSubtitle=new et(this.ctx),this.ctx.legend=new lt(this.ctx),this.ctx.toolbar=new ht(this.ctx),this.ctx.tooltip=new bt(this.ctx),this.ctx.dimensions=new ot(this.ctx),this.ctx.updateHelpers=new Ht(this.ctx),this.ctx.zoomPanSelection=new ct(this.ctx),this.ctx.w.globals.tooltip=new bt(this.ctx)}}]),t}(),Nt=function(){function t(e){a(this,t),this.ctx=e,this.w=e.w}return r(t,[{key:\"clear\",value:function(t){var e=t.isUpdating;this.ctx.zoomPanSelection&&this.ctx.zoomPanSelection.destroy(),this.ctx.toolbar&&this.ctx.toolbar.destroy(),this.ctx.animations=null,this.ctx.axes=null,this.ctx.annotations=null,this.ctx.core=null,this.ctx.data=null,this.ctx.grid=null,this.ctx.series=null,this.ctx.responsive=null,this.ctx.theme=null,this.ctx.formatters=null,this.ctx.titleSubtitle=null,this.ctx.legend=null,this.ctx.dimensions=null,this.ctx.options=null,this.ctx.crosshairs=null,this.ctx.zoomPanSelection=null,this.ctx.updateHelpers=null,this.ctx.toolbar=null,this.ctx.localization=null,this.ctx.w.globals.tooltip=null,this.clearDomElements({isUpdating:e})}},{key:\"killSVG\",value:function(t){t.each((function(t,e){this.removeClass(\"*\"),this.off(),this.stop()}),!0),t.ungroup(),t.clear()}},{key:\"clearDomElements\",value:function(t){var e=this,i=t.isUpdating,a=this.w.globals.dom.Paper.node;a.parentNode&&a.parentNode.parentNode&&!i&&(a.parentNode.parentNode.style.minHeight=\"unset\");var s=this.w.globals.dom.baseEl;s&&this.ctx.eventList.forEach((function(t){s.removeEventListener(t,e.ctx.events.documentEvent)}));var r=this.w.globals.dom;if(null!==this.ctx.el)for(;this.ctx.el.firstChild;)this.ctx.el.removeChild(this.ctx.el.firstChild);this.killSVG(r.Paper),r.Paper.remove(),r.elWrap=null,r.elGraphical=null,r.elAnnotations=null,r.elLegendWrap=null,r.baseEl=null,r.elGridRect=null,r.elGridRectMask=null,r.elGridRectMarkerMask=null,r.elForecastMask=null,r.elNonForecastMask=null,r.elDefs=null}}]),t}(),Wt=new WeakMap;var Bt=function(){function t(e,i){a(this,t),this.opts=i,this.ctx=this,this.w=new Y(i).init(),this.el=e,this.w.globals.cuid=x.randomId(),this.w.globals.chartID=this.w.config.chart.id?x.escapeString(this.w.config.chart.id):this.w.globals.cuid,new Ot(this).initModules(),this.create=x.bind(this.create,this),this.windowResizeHandler=this._windowResizeHandler.bind(this),this.parentResizeHandler=this._parentResizeCallback.bind(this)}return r(t,[{key:\"render\",value:function(){var t=this;return new Promise((function(e,i){if(null!==t.el){void 0===Apex._chartInstances&&(Apex._chartInstances=[]),t.w.config.chart.id&&Apex._chartInstances.push({id:t.w.globals.chartID,group:t.w.config.chart.group,chart:t}),t.setLocale(t.w.config.chart.defaultLocale);var a=t.w.config.chart.events.beforeMount;if(\"function\"==typeof a&&a(t,t.w),t.events.fireEvent(\"beforeMount\",[t,t.w]),window.addEventListener(\"resize\",t.windowResizeHandler),function(t,e){var i=!1;if(t.nodeType!==Node.DOCUMENT_FRAGMENT_NODE){var a=t.getBoundingClientRect();\"none\"!==t.style.display&&0!==a.width||(i=!0)}var s=new ResizeObserver((function(a){i&&e.call(t,a),i=!0}));t.nodeType===Node.DOCUMENT_FRAGMENT_NODE?Array.from(t.children).forEach((function(t){return s.observe(t)})):s.observe(t),Wt.set(e,s)}(t.el.parentNode,t.parentResizeHandler),!t.css){var s=t.el.getRootNode&&t.el.getRootNode(),r=x.is(\"ShadowRoot\",s),o=t.el.ownerDocument,n=o.getElementById(\"apexcharts-css\");!r&&n||(t.css=document.createElement(\"style\"),t.css.id=\"apexcharts-css\",t.css.textContent='@keyframes opaque {\\n 0% {\\n opacity: 0\\n }\\n\\n to {\\n opacity: 1\\n }\\n}\\n\\n@keyframes resizeanim {\\n 0%,to {\\n opacity: 0\\n }\\n}\\n\\n.apexcharts-canvas {\\n position: relative;\\n user-select: none\\n}\\n\\n.apexcharts-canvas ::-webkit-scrollbar {\\n -webkit-appearance: none;\\n width: 6px\\n}\\n\\n.apexcharts-canvas ::-webkit-scrollbar-thumb {\\n border-radius: 4px;\\n background-color: rgba(0,0,0,.5);\\n box-shadow: 0 0 1px rgba(255,255,255,.5);\\n -webkit-box-shadow: 0 0 1px rgba(255,255,255,.5)\\n}\\n\\n.apexcharts-inner {\\n position: relative\\n}\\n\\n.apexcharts-text tspan {\\n font-family: inherit\\n}\\n\\n.legend-mouseover-inactive {\\n transition: .15s ease all;\\n opacity: .2\\n}\\n\\n.apexcharts-legend-text {\\n padding-left: 15px;\\n margin-left: -15px;\\n}\\n\\n.apexcharts-series-collapsed {\\n opacity: 0\\n}\\n\\n.apexcharts-tooltip {\\n border-radius: 5px;\\n box-shadow: 2px 2px 6px -4px #999;\\n cursor: default;\\n font-size: 14px;\\n left: 62px;\\n opacity: 0;\\n pointer-events: none;\\n position: absolute;\\n top: 20px;\\n display: flex;\\n flex-direction: column;\\n overflow: hidden;\\n white-space: nowrap;\\n z-index: 12;\\n transition: .15s ease all\\n}\\n\\n.apexcharts-tooltip.apexcharts-active {\\n opacity: 1;\\n transition: .15s ease all\\n}\\n\\n.apexcharts-tooltip.apexcharts-theme-light {\\n border: 1px solid #e3e3e3;\\n background: rgba(255,255,255,.96)\\n}\\n\\n.apexcharts-tooltip.apexcharts-theme-dark {\\n color: #fff;\\n background: rgba(30,30,30,.8)\\n}\\n\\n.apexcharts-tooltip * {\\n font-family: inherit\\n}\\n\\n.apexcharts-tooltip-title {\\n padding: 6px;\\n font-size: 15px;\\n margin-bottom: 4px\\n}\\n\\n.apexcharts-tooltip.apexcharts-theme-light .apexcharts-tooltip-title {\\n background: #eceff1;\\n border-bottom: 1px solid #ddd\\n}\\n\\n.apexcharts-tooltip.apexcharts-theme-dark .apexcharts-tooltip-title {\\n background: rgba(0,0,0,.7);\\n border-bottom: 1px solid #333\\n}\\n\\n.apexcharts-tooltip-text-goals-value,.apexcharts-tooltip-text-y-value,.apexcharts-tooltip-text-z-value {\\n display: inline-block;\\n margin-left: 5px;\\n font-weight: 600\\n}\\n\\n.apexcharts-tooltip-text-goals-label:empty,.apexcharts-tooltip-text-goals-value:empty,.apexcharts-tooltip-text-y-label:empty,.apexcharts-tooltip-text-y-value:empty,.apexcharts-tooltip-text-z-value:empty,.apexcharts-tooltip-title:empty {\\n display: none\\n}\\n\\n.apexcharts-tooltip-text-goals-label,.apexcharts-tooltip-text-goals-value {\\n padding: 6px 0 5px\\n}\\n\\n.apexcharts-tooltip-goals-group,.apexcharts-tooltip-text-goals-label,.apexcharts-tooltip-text-goals-value {\\n display: flex\\n}\\n\\n.apexcharts-tooltip-text-goals-label:not(:empty),.apexcharts-tooltip-text-goals-value:not(:empty) {\\n margin-top: -6px\\n}\\n\\n.apexcharts-tooltip-marker {\\n width: 12px;\\n height: 12px;\\n position: relative;\\n top: 0;\\n margin-right: 10px;\\n border-radius: 50%\\n}\\n\\n.apexcharts-tooltip-series-group {\\n padding: 0 10px;\\n display: none;\\n text-align: left;\\n justify-content: left;\\n align-items: center\\n}\\n\\n.apexcharts-tooltip-series-group.apexcharts-active .apexcharts-tooltip-marker {\\n opacity: 1\\n}\\n\\n.apexcharts-tooltip-series-group.apexcharts-active,.apexcharts-tooltip-series-group:last-child {\\n padding-bottom: 4px\\n}\\n\\n.apexcharts-tooltip-series-group-hidden {\\n opacity: 0;\\n height: 0;\\n line-height: 0;\\n padding: 0!important\\n}\\n\\n.apexcharts-tooltip-y-group {\\n padding: 6px 0 5px\\n}\\n\\n.apexcharts-custom-tooltip,.apexcharts-tooltip-box {\\n padding: 4px 8px\\n}\\n\\n.apexcharts-tooltip-boxPlot {\\n display: flex;\\n flex-direction: column-reverse\\n}\\n\\n.apexcharts-tooltip-box>div {\\n margin: 4px 0\\n}\\n\\n.apexcharts-tooltip-box span.value {\\n font-weight: 700\\n}\\n\\n.apexcharts-tooltip-rangebar {\\n padding: 5px 8px\\n}\\n\\n.apexcharts-tooltip-rangebar .category {\\n font-weight: 600;\\n color: #777\\n}\\n\\n.apexcharts-tooltip-rangebar .series-name {\\n font-weight: 700;\\n display: block;\\n margin-bottom: 5px\\n}\\n\\n.apexcharts-xaxistooltip,.apexcharts-yaxistooltip {\\n opacity: 0;\\n pointer-events: none;\\n color: #373d3f;\\n font-size: 13px;\\n text-align: center;\\n border-radius: 2px;\\n position: absolute;\\n z-index: 10;\\n background: #eceff1;\\n border: 1px solid #90a4ae\\n}\\n\\n.apexcharts-xaxistooltip {\\n padding: 9px 10px;\\n transition: .15s ease all\\n}\\n\\n.apexcharts-xaxistooltip.apexcharts-theme-dark {\\n background: rgba(0,0,0,.7);\\n border: 1px solid rgba(0,0,0,.5);\\n color: #fff\\n}\\n\\n.apexcharts-xaxistooltip:after,.apexcharts-xaxistooltip:before {\\n left: 50%;\\n border: solid transparent;\\n content: \" \";\\n height: 0;\\n width: 0;\\n position: absolute;\\n pointer-events: none\\n}\\n\\n.apexcharts-xaxistooltip:after {\\n border-color: transparent;\\n border-width: 6px;\\n margin-left: -6px\\n}\\n\\n.apexcharts-xaxistooltip:before {\\n border-color: transparent;\\n border-width: 7px;\\n margin-left: -7px\\n}\\n\\n.apexcharts-xaxistooltip-bottom:after,.apexcharts-xaxistooltip-bottom:before {\\n bottom: 100%\\n}\\n\\n.apexcharts-xaxistooltip-top:after,.apexcharts-xaxistooltip-top:before {\\n top: 100%\\n}\\n\\n.apexcharts-xaxistooltip-bottom:after {\\n border-bottom-color: #eceff1\\n}\\n\\n.apexcharts-xaxistooltip-bottom:before {\\n border-bottom-color: #90a4ae\\n}\\n\\n.apexcharts-xaxistooltip-bottom.apexcharts-theme-dark:after,.apexcharts-xaxistooltip-bottom.apexcharts-theme-dark:before {\\n border-bottom-color: rgba(0,0,0,.5)\\n}\\n\\n.apexcharts-xaxistooltip-top:after {\\n border-top-color: #eceff1\\n}\\n\\n.apexcharts-xaxistooltip-top:before {\\n border-top-color: #90a4ae\\n}\\n\\n.apexcharts-xaxistooltip-top.apexcharts-theme-dark:after,.apexcharts-xaxistooltip-top.apexcharts-theme-dark:before {\\n border-top-color: rgba(0,0,0,.5)\\n}\\n\\n.apexcharts-xaxistooltip.apexcharts-active {\\n opacity: 1;\\n transition: .15s ease all\\n}\\n\\n.apexcharts-yaxistooltip {\\n padding: 4px 10px\\n}\\n\\n.apexcharts-yaxistooltip.apexcharts-theme-dark {\\n background: rgba(0,0,0,.7);\\n border: 1px solid rgba(0,0,0,.5);\\n color: #fff\\n}\\n\\n.apexcharts-yaxistooltip:after,.apexcharts-yaxistooltip:before {\\n top: 50%;\\n border: solid transparent;\\n content: \" \";\\n height: 0;\\n width: 0;\\n position: absolute;\\n pointer-events: none\\n}\\n\\n.apexcharts-yaxistooltip:after {\\n border-color: transparent;\\n border-width: 6px;\\n margin-top: -6px\\n}\\n\\n.apexcharts-yaxistooltip:before {\\n border-color: transparent;\\n border-width: 7px;\\n margin-top: -7px\\n}\\n\\n.apexcharts-yaxistooltip-left:after,.apexcharts-yaxistooltip-left:before {\\n left: 100%\\n}\\n\\n.apexcharts-yaxistooltip-right:after,.apexcharts-yaxistooltip-right:before {\\n right: 100%\\n}\\n\\n.apexcharts-yaxistooltip-left:after {\\n border-left-color: #eceff1\\n}\\n\\n.apexcharts-yaxistooltip-left:before {\\n border-left-color: #90a4ae\\n}\\n\\n.apexcharts-yaxistooltip-left.apexcharts-theme-dark:after,.apexcharts-yaxistooltip-left.apexcharts-theme-dark:before {\\n border-left-color: rgba(0,0,0,.5)\\n}\\n\\n.apexcharts-yaxistooltip-right:after {\\n border-right-color: #eceff1\\n}\\n\\n.apexcharts-yaxistooltip-right:before {\\n border-right-color: #90a4ae\\n}\\n\\n.apexcharts-yaxistooltip-right.apexcharts-theme-dark:after,.apexcharts-yaxistooltip-right.apexcharts-theme-dark:before {\\n border-right-color: rgba(0,0,0,.5)\\n}\\n\\n.apexcharts-yaxistooltip.apexcharts-active {\\n opacity: 1\\n}\\n\\n.apexcharts-yaxistooltip-hidden {\\n display: none\\n}\\n\\n.apexcharts-xcrosshairs,.apexcharts-ycrosshairs {\\n pointer-events: none;\\n opacity: 0;\\n transition: .15s ease all\\n}\\n\\n.apexcharts-xcrosshairs.apexcharts-active,.apexcharts-ycrosshairs.apexcharts-active {\\n opacity: 1;\\n transition: .15s ease all\\n}\\n\\n.apexcharts-ycrosshairs-hidden {\\n opacity: 0\\n}\\n\\n.apexcharts-selection-rect {\\n cursor: move\\n}\\n\\n.svg_select_boundingRect,.svg_select_points_rot {\\n pointer-events: none;\\n opacity: 0;\\n visibility: hidden\\n}\\n\\n.apexcharts-selection-rect+g .svg_select_boundingRect,.apexcharts-selection-rect+g .svg_select_points_rot {\\n opacity: 0;\\n visibility: hidden\\n}\\n\\n.apexcharts-selection-rect+g .svg_select_points_l,.apexcharts-selection-rect+g .svg_select_points_r {\\n cursor: ew-resize;\\n opacity: 1;\\n visibility: visible\\n}\\n\\n.svg_select_points {\\n fill: #efefef;\\n stroke: #333;\\n rx: 2\\n}\\n\\n.apexcharts-svg.apexcharts-zoomable.hovering-zoom {\\n cursor: crosshair\\n}\\n\\n.apexcharts-svg.apexcharts-zoomable.hovering-pan {\\n cursor: move\\n}\\n\\n.apexcharts-menu-icon,.apexcharts-pan-icon,.apexcharts-reset-icon,.apexcharts-selection-icon,.apexcharts-toolbar-custom-icon,.apexcharts-zoom-icon,.apexcharts-zoomin-icon,.apexcharts-zoomout-icon {\\n cursor: pointer;\\n width: 20px;\\n height: 20px;\\n line-height: 24px;\\n color: #6e8192;\\n text-align: center\\n}\\n\\n.apexcharts-menu-icon svg,.apexcharts-reset-icon svg,.apexcharts-zoom-icon svg,.apexcharts-zoomin-icon svg,.apexcharts-zoomout-icon svg {\\n fill: #6e8192\\n}\\n\\n.apexcharts-selection-icon svg {\\n fill: #444;\\n transform: scale(.76)\\n}\\n\\n.apexcharts-theme-dark .apexcharts-menu-icon svg,.apexcharts-theme-dark .apexcharts-pan-icon svg,.apexcharts-theme-dark .apexcharts-reset-icon svg,.apexcharts-theme-dark .apexcharts-selection-icon svg,.apexcharts-theme-dark .apexcharts-toolbar-custom-icon svg,.apexcharts-theme-dark .apexcharts-zoom-icon svg,.apexcharts-theme-dark .apexcharts-zoomin-icon svg,.apexcharts-theme-dark .apexcharts-zoomout-icon svg {\\n fill: #f3f4f5\\n}\\n\\n.apexcharts-canvas .apexcharts-reset-zoom-icon.apexcharts-selected svg,.apexcharts-canvas .apexcharts-selection-icon.apexcharts-selected svg,.apexcharts-canvas .apexcharts-zoom-icon.apexcharts-selected svg {\\n fill: #008ffb\\n}\\n\\n.apexcharts-theme-light .apexcharts-menu-icon:hover svg,.apexcharts-theme-light .apexcharts-reset-icon:hover svg,.apexcharts-theme-light .apexcharts-selection-icon:not(.apexcharts-selected):hover svg,.apexcharts-theme-light .apexcharts-zoom-icon:not(.apexcharts-selected):hover svg,.apexcharts-theme-light .apexcharts-zoomin-icon:hover svg,.apexcharts-theme-light .apexcharts-zoomout-icon:hover svg {\\n fill: #333\\n}\\n\\n.apexcharts-menu-icon,.apexcharts-selection-icon {\\n position: relative\\n}\\n\\n.apexcharts-reset-icon {\\n margin-left: 5px\\n}\\n\\n.apexcharts-menu-icon,.apexcharts-reset-icon,.apexcharts-zoom-icon {\\n transform: scale(.85)\\n}\\n\\n.apexcharts-zoomin-icon,.apexcharts-zoomout-icon {\\n transform: scale(.7)\\n}\\n\\n.apexcharts-zoomout-icon {\\n margin-right: 3px\\n}\\n\\n.apexcharts-pan-icon {\\n transform: scale(.62);\\n position: relative;\\n left: 1px;\\n top: 0\\n}\\n\\n.apexcharts-pan-icon svg {\\n fill: #fff;\\n stroke: #6e8192;\\n stroke-width: 2\\n}\\n\\n.apexcharts-pan-icon.apexcharts-selected svg {\\n stroke: #008ffb\\n}\\n\\n.apexcharts-pan-icon:not(.apexcharts-selected):hover svg {\\n stroke: #333\\n}\\n\\n.apexcharts-toolbar {\\n position: absolute;\\n z-index: 11;\\n max-width: 176px;\\n text-align: right;\\n border-radius: 3px;\\n padding: 0 6px 2px;\\n display: flex;\\n justify-content: space-between;\\n align-items: center\\n}\\n\\n.apexcharts-menu {\\n background: #fff;\\n position: absolute;\\n top: 100%;\\n border: 1px solid #ddd;\\n border-radius: 3px;\\n padding: 3px;\\n right: 10px;\\n opacity: 0;\\n min-width: 110px;\\n transition: .15s ease all;\\n pointer-events: none\\n}\\n\\n.apexcharts-menu.apexcharts-menu-open {\\n opacity: 1;\\n pointer-events: all;\\n transition: .15s ease all\\n}\\n\\n.apexcharts-menu-item {\\n padding: 6px 7px;\\n font-size: 12px;\\n cursor: pointer\\n}\\n\\n.apexcharts-theme-light .apexcharts-menu-item:hover {\\n background: #eee\\n}\\n\\n.apexcharts-theme-dark .apexcharts-menu {\\n background: rgba(0,0,0,.7);\\n color: #fff\\n}\\n\\n@media screen and (min-width:768px) {\\n .apexcharts-canvas:hover .apexcharts-toolbar {\\n opacity: 1\\n }\\n}\\n\\n.apexcharts-canvas .apexcharts-element-hidden,.apexcharts-datalabel.apexcharts-element-hidden,.apexcharts-hide .apexcharts-series-points {\\n opacity: 0\\n}\\n\\n.apexcharts-datalabel,.apexcharts-datalabel-label,.apexcharts-datalabel-value,.apexcharts-datalabels,.apexcharts-pie-label {\\n cursor: default;\\n pointer-events: none\\n}\\n\\n.apexcharts-pie-label-delay {\\n opacity: 0;\\n animation-name: opaque;\\n animation-duration: .3s;\\n animation-fill-mode: forwards;\\n animation-timing-function: ease\\n}\\n\\n.apexcharts-annotation-rect,.apexcharts-area-series .apexcharts-area,.apexcharts-area-series .apexcharts-series-markers .apexcharts-marker.no-pointer-events,.apexcharts-gridline,.apexcharts-line,.apexcharts-line-series .apexcharts-series-markers .apexcharts-marker.no-pointer-events,.apexcharts-point-annotation-label,.apexcharts-radar-series path,.apexcharts-radar-series polygon,.apexcharts-toolbar svg,.apexcharts-tooltip .apexcharts-marker,.apexcharts-xaxis-annotation-label,.apexcharts-yaxis-annotation-label,.apexcharts-zoom-rect {\\n pointer-events: none\\n}\\n\\n.apexcharts-marker {\\n transition: .15s ease all\\n}\\n\\n.resize-triggers {\\n animation: 1ms resizeanim;\\n visibility: hidden;\\n opacity: 0;\\n height: 100%;\\n width: 100%;\\n overflow: hidden\\n}\\n\\n.contract-trigger:before,.resize-triggers,.resize-triggers>div {\\n content: \" \";\\n display: block;\\n position: absolute;\\n top: 0;\\n left: 0\\n}\\n\\n.resize-triggers>div {\\n height: 100%;\\n width: 100%;\\n background: #eee;\\n overflow: auto\\n}\\n\\n.contract-trigger:before {\\n overflow: hidden;\\n width: 200%;\\n height: 200%\\n}\\n',r?s.prepend(t.css):o.head.appendChild(t.css))}var l=t.create(t.w.config.series,{});if(!l)return e(t);t.mount(l).then((function(){\"function\"==typeof t.w.config.chart.events.mounted&&t.w.config.chart.events.mounted(t,t.w),t.events.fireEvent(\"mounted\",[t,t.w]),e(l)})).catch((function(t){i(t)}))}else i(new Error(\"Element not found\"))}))}},{key:\"create\",value:function(t,e){var i=this.w;new Ot(this).initModules();var a=this.w.globals;(a.noData=!1,a.animationEnded=!1,this.responsive.checkResponsiveConfig(e),i.config.xaxis.convertedCatToNumeric)&&new z(i.config).convertCatToNumericXaxis(i.config,this.ctx);if(null===this.el)return a.animationEnded=!0,null;if(this.core.setupElements(),\"treemap\"===i.config.chart.type&&(i.config.grid.show=!1,i.config.yaxis[0].show=!1),0===a.svgWidth)return a.animationEnded=!0,null;var s=y.checkComboSeries(t);a.comboCharts=s.comboCharts,a.comboBarCount=s.comboBarCount;var r=t.every((function(t){return t.data&&0===t.data.length}));(0===t.length||r)&&this.series.handleNoData(),this.events.setupEventHandlers(),this.data.parseData(t),this.theme.init(),new R(this).setGlobalMarkerSize(),this.formatters.setLabelFormatters(),this.titleSubtitle.draw(),a.noData&&a.collapsedSeries.length!==a.series.length&&!i.config.legend.showForSingleSeries||this.legend.init(),this.series.hasAllSeriesEqualX(),a.axisCharts&&(this.core.coreCalculations(),\"category\"!==i.config.xaxis.type&&this.formatters.setLabelFormatters(),this.ctx.toolbar.minX=i.globals.minX,this.ctx.toolbar.maxX=i.globals.maxX),this.formatters.heatmapLabelFormatters(),new y(this).getLargestMarkerSize(),this.dimensions.plotCoords();var o=this.core.xySettings();this.grid.createGridMask();var n=this.core.plotChartType(t,o),l=new H(this);l.bringForward(),i.config.dataLabels.background.enabled&&l.dataLabelsBackground(),this.core.shiftGraphPosition();var h={plot:{left:i.globals.translateX,top:i.globals.translateY,width:i.globals.gridWidth,height:i.globals.gridHeight}};return{elGraph:n,xyRatios:o,elInner:i.globals.dom.elGraphical,dimensions:h}}},{key:\"mount\",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,i=this,a=i.w;return new Promise((function(s,r){if(null===i.el)return r(new Error(\"Not enough data to display or target element not found\"));(null===e||a.globals.allSeriesCollapsed)&&i.series.handleNoData(),i.grid=new j(i);var o=i.grid.drawGrid();\"treemap\"!==a.config.chart.type&&i.axes.drawAxis(a.config.chart.type,o),i.annotations=new P(i),i.annotations.drawImageAnnos(),i.annotations.drawTextAnnos(),\"back\"===a.config.grid.position&&o&&a.globals.dom.elGraphical.add(o.el);var n=new V(t.ctx,o),l=new q(t.ctx,o);if(null!==o&&(n.xAxisLabelCorrections(o.xAxisTickWidth),l.setYAxisTextAlignments(),a.config.yaxis.map((function(t,e){-1===a.globals.ignoreYAxisIndexes.indexOf(e)&&l.yAxisTitleRotate(e,t.opposite)}))),\"back\"===a.config.annotations.position&&(a.globals.dom.Paper.add(a.globals.dom.elAnnotations),i.annotations.drawAxesAnnotations()),Array.isArray(e.elGraph))for(var h=0;h0&&a.globals.memory.methodsToExec.forEach((function(t){t.method(t.params,!1,t.context)})),a.globals.axisCharts||a.globals.noData||i.core.resizeNonAxisCharts(),s(i)}))}},{key:\"destroy\",value:function(){var t,e;window.removeEventListener(\"resize\",this.windowResizeHandler),this.el.parentNode,t=this.parentResizeHandler,(e=Wt.get(t))&&(e.disconnect(),Wt.delete(t));var i=this.w.config.chart.id;i&&Apex._chartInstances.forEach((function(t,e){t.id===x.escapeString(i)&&Apex._chartInstances.splice(e,1)})),new Nt(this.ctx).clear({isUpdating:!1})}},{key:\"updateOptions\",value:function(t){var e=this,i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],a=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],s=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],r=!(arguments.length>4&&void 0!==arguments[4])||arguments[4],o=this.w;return o.globals.selection=void 0,t.series&&(this.series.resetSeries(!1,!0,!1),t.series.length&&t.series[0].data&&(t.series=t.series.map((function(t,i){return e.updateHelpers._extendSeries(t,i)}))),this.updateHelpers.revertDefaultAxisMinMax()),t.xaxis&&(t=this.updateHelpers.forceXAxisUpdate(t)),t.yaxis&&(t=this.updateHelpers.forceYAxisUpdate(t)),o.globals.collapsedSeriesIndices.length>0&&this.series.clearPreviousPaths(),t.theme&&(t=this.theme.updateThemeOptions(t)),this.updateHelpers._updateOptions(t,i,a,s,r)}},{key:\"updateSeries\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];return this.series.resetSeries(!1),this.updateHelpers.revertDefaultAxisMinMax(),this.updateHelpers._updateSeries(t,e,i)}},{key:\"appendSeries\",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=this.w.config.series.slice();return a.push(t),this.series.resetSeries(!1),this.updateHelpers.revertDefaultAxisMinMax(),this.updateHelpers._updateSeries(a,e,i)}},{key:\"appendData\",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=this;i.w.globals.dataChanged=!0,i.series.getPreviousPaths();for(var a=i.w.config.series.slice(),s=0;s0&&void 0!==arguments[0])||arguments[0],e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];this.series.resetSeries(t,e)}},{key:\"addEventListener\",value:function(t,e){this.events.addEventListener(t,e)}},{key:\"removeEventListener\",value:function(t,e){this.events.removeEventListener(t,e)}},{key:\"addXaxisAnnotation\",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,a=this;i&&(a=i),a.annotations.addXaxisAnnotationExternal(t,e,a)}},{key:\"addYaxisAnnotation\",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,a=this;i&&(a=i),a.annotations.addYaxisAnnotationExternal(t,e,a)}},{key:\"addPointAnnotation\",value:function(t){var e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:void 0,a=this;i&&(a=i),a.annotations.addPointAnnotationExternal(t,e,a)}},{key:\"clearAnnotations\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0,e=this;t&&(e=t),e.annotations.clearAnnotations(e)}},{key:\"removeAnnotation\",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,i=this;e&&(i=e),i.annotations.removeAnnotation(i,t)}},{key:\"getChartArea\",value:function(){return this.w.globals.dom.baseEl.querySelector(\".apexcharts-inner\")}},{key:\"getSeriesTotalXRange\",value:function(t,e){return this.coreUtils.getSeriesTotalsXRange(t,e)}},{key:\"getHighestValueInSeries\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=new U(this.ctx);return e.getMinYMaxY(t).highestY}},{key:\"getLowestValueInSeries\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=new U(this.ctx);return e.getMinYMaxY(t).lowestY}},{key:\"getSeriesTotal\",value:function(){return this.w.globals.seriesTotals}},{key:\"toggleDataPointSelection\",value:function(t,e){return this.updateHelpers.toggleDataPointSelection(t,e)}},{key:\"zoomX\",value:function(t,e){this.ctx.toolbar.zoomUpdateOptions(t,e)}},{key:\"setLocale\",value:function(t){this.localization.setCurrentLocaleValues(t)}},{key:\"dataURI\",value:function(t){return new G(this.ctx).dataURI(t)}},{key:\"exportToCSV\",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=new G(this.ctx);return e.exportToCSV(t)}},{key:\"paper\",value:function(){return this.w.globals.dom.Paper}},{key:\"_parentResizeCallback\",value:function(){this.w.globals.animationEnded&&this.w.config.chart.redrawOnParentResize&&this._windowResize()}},{key:\"_windowResize\",value:function(){var t=this;clearTimeout(this.w.globals.resizeTimer),this.w.globals.resizeTimer=window.setTimeout((function(){t.w.globals.resized=!0,t.w.globals.dataChanged=!1,t.ctx.update()}),150)}},{key:\"_windowResizeHandler\",value:function(){var t=this.w.config.chart.redrawOnWindowResize;\"function\"==typeof t&&(t=t()),t&&this._windowResize()}}],[{key:\"getChartByID\",value:function(t){var e=x.escapeString(t),i=Apex._chartInstances.filter((function(t){return t.id===e}))[0];return i&&i.chart}},{key:\"initOnLoad\",value:function(){for(var e=document.querySelectorAll(\"[data-apexcharts]\"),i=0;i2?s-2:0),o=2;o 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n}\n\nmodule.exports = createAssigner;\n","/**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n}\n\nmodule.exports = createBaseFor;\n","var getNative = require('./_getNative');\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nmodule.exports = defineProperty;\n","var SetCache = require('./_SetCache'),\n arraySome = require('./_arraySome'),\n cacheHas = require('./_cacheHas');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\nfunction equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Check that cyclic values are equal.\n var arrStacked = stack.get(array);\n var othStacked = stack.get(other);\n if (arrStacked && othStacked) {\n return arrStacked == other && othStacked == array;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!arraySome(other, function(othValue, othIndex) {\n if (!cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n}\n\nmodule.exports = equalArrays;\n","var Symbol = require('./_Symbol'),\n Uint8Array = require('./_Uint8Array'),\n eq = require('./eq'),\n equalArrays = require('./_equalArrays'),\n mapToArray = require('./_mapToArray'),\n setToArray = require('./_setToArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n}\n\nmodule.exports = equalByTag;\n","var getAllKeys = require('./_getAllKeys');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n objProps = getAllKeys(object),\n objLength = objProps.length,\n othProps = getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n return false;\n }\n }\n // Check that cyclic values are equal.\n var objStacked = stack.get(object);\n var othStacked = stack.get(other);\n if (objStacked && othStacked) {\n return objStacked == other && othStacked == object;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n}\n\nmodule.exports = equalObjects;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n","var baseGetAllKeys = require('./_baseGetAllKeys'),\n getSymbols = require('./_getSymbols'),\n keys = require('./keys');\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n}\n\nmodule.exports = getAllKeys;\n","var isKeyable = require('./_isKeyable');\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\nmodule.exports = getMapData;\n","var baseIsNative = require('./_baseIsNative'),\n getValue = require('./_getValue');\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\nmodule.exports = getNative;\n","var overArg = require('./_overArg');\n\n/** Built-in value references. */\nvar getPrototype = overArg(Object.getPrototypeOf, Object);\n\nmodule.exports = getPrototype;\n","var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\n","var arrayFilter = require('./_arrayFilter'),\n stubArray = require('./stubArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\nmodule.exports = getSymbols;\n","var DataView = require('./_DataView'),\n Map = require('./_Map'),\n Promise = require('./_Promise'),\n Set = require('./_Set'),\n WeakMap = require('./_WeakMap'),\n baseGetTag = require('./_baseGetTag'),\n toSource = require('./_toSource');\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n setTag = '[object Set]',\n weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\nmodule.exports = getTag;\n","/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\nmodule.exports = getValue;\n","var nativeCreate = require('./_nativeCreate');\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\nmodule.exports = hashClear;\n","/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = hashDelete;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nmodule.exports = hashGet;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\nmodule.exports = hashHas;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nmodule.exports = hashSet;\n","var baseCreate = require('./_baseCreate'),\n getPrototype = require('./_getPrototype'),\n isPrototype = require('./_isPrototype');\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n}\n\nmodule.exports = initCloneObject;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\nmodule.exports = isIndex;\n","var eq = require('./eq'),\n isArrayLike = require('./isArrayLike'),\n isIndex = require('./_isIndex'),\n isObject = require('./isObject');\n\n/**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\nfunction isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n}\n\nmodule.exports = isIterateeCall;\n","/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\nmodule.exports = isKeyable;\n","var coreJsData = require('./_coreJsData');\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\nmodule.exports = isMasked;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\nmodule.exports = isPrototype;\n","/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\nmodule.exports = listCacheClear;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\nmodule.exports = listCacheDelete;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\nmodule.exports = listCacheGet;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\nmodule.exports = listCacheHas;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nmodule.exports = listCacheSet;\n","var Hash = require('./_Hash'),\n ListCache = require('./_ListCache'),\n Map = require('./_Map');\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\nmodule.exports = mapCacheClear;\n","var getMapData = require('./_getMapData');\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = mapCacheDelete;\n","var getMapData = require('./_getMapData');\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\nmodule.exports = mapCacheGet;\n","var getMapData = require('./_getMapData');\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\nmodule.exports = mapCacheHas;\n","var getMapData = require('./_getMapData');\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nmodule.exports = mapCacheSet;\n","/**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\nfunction mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n}\n\nmodule.exports = mapToArray;\n","var getNative = require('./_getNative');\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nmodule.exports = nativeCreate;\n","var overArg = require('./_overArg');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = overArg(Object.keys, Object);\n\nmodule.exports = nativeKeys;\n","/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = nativeKeysIn;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\nmodule.exports = nodeUtil;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n","/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\nmodule.exports = overArg;\n","var apply = require('./_apply');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max;\n\n/**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\nfunction overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n}\n\nmodule.exports = overRest;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n","/**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n}\n\nmodule.exports = safeGet;\n","/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\nfunction setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED);\n return this;\n}\n\nmodule.exports = setCacheAdd;\n","/**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\nfunction setCacheHas(value) {\n return this.__data__.has(value);\n}\n\nmodule.exports = setCacheHas;\n","/**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\nfunction setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n}\n\nmodule.exports = setToArray;\n","var baseSetToString = require('./_baseSetToString'),\n shortOut = require('./_shortOut');\n\n/**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar setToString = shortOut(baseSetToString);\n\nmodule.exports = setToString;\n","/** Used to detect hot functions by number of calls within a span of milliseconds. */\nvar HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeNow = Date.now;\n\n/**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\nfunction shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n}\n\nmodule.exports = shortOut;\n","var ListCache = require('./_ListCache');\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\nmodule.exports = stackClear;\n","/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nmodule.exports = stackDelete;\n","/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\nmodule.exports = stackGet;\n","/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\nmodule.exports = stackHas;\n","var ListCache = require('./_ListCache'),\n Map = require('./_Map'),\n MapCache = require('./_MapCache');\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\nmodule.exports = stackSet;\n","/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\nmodule.exports = toSource;\n","/**\n * Creates a function that returns `value`.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {*} value The value to return from the new function.\n * @returns {Function} Returns the new constant function.\n * @example\n *\n * var objects = _.times(2, _.constant({ 'a': 1 }));\n *\n * console.log(objects);\n * // => [{ 'a': 1 }, { 'a': 1 }]\n *\n * console.log(objects[0] === objects[1]);\n * // => true\n */\nfunction constant(value) {\n return function() {\n return value;\n };\n}\n\nmodule.exports = constant;\n","/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\nmodule.exports = eq;\n","/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n return value;\n}\n\nmodule.exports = identity;\n","var baseIsArguments = require('./_baseIsArguments'),\n isObjectLike = require('./isObjectLike');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\nmodule.exports = isArguments;\n","/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nmodule.exports = isArray;\n","var isFunction = require('./isFunction'),\n isLength = require('./isLength');\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\nmodule.exports = isArrayLike;\n","var isArrayLike = require('./isArrayLike'),\n isObjectLike = require('./isObjectLike');\n\n/**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\nfunction isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n}\n\nmodule.exports = isArrayLikeObject;\n","var root = require('./_root'),\n stubFalse = require('./stubFalse');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\nmodule.exports = isBuffer;\n","var baseIsEqual = require('./_baseIsEqual');\n\n/**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\nfunction isEqual(value, other) {\n return baseIsEqual(value, other);\n}\n\nmodule.exports = isEqual;\n","var baseGetTag = require('./_baseGetTag'),\n isObject = require('./isObject');\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n proxyTag = '[object Proxy]';\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nmodule.exports = isFunction;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\nmodule.exports = isLength;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nmodule.exports = isObject;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n","var baseGetTag = require('./_baseGetTag'),\n getPrototype = require('./_getPrototype'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString.call(Object);\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n}\n\nmodule.exports = isPlainObject;\n","var baseIsTypedArray = require('./_baseIsTypedArray'),\n baseUnary = require('./_baseUnary'),\n nodeUtil = require('./_nodeUtil');\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\nmodule.exports = isTypedArray;\n","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeys = require('./_baseKeys'),\n isArrayLike = require('./isArrayLike');\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\nmodule.exports = keys;\n","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeysIn = require('./_baseKeysIn'),\n isArrayLike = require('./isArrayLike');\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n}\n\nmodule.exports = keysIn;\n","var baseMerge = require('./_baseMerge'),\n createAssigner = require('./_createAssigner');\n\n/**\n * This method is like `_.assign` except that it recursively merges own and\n * inherited enumerable string keyed properties of source objects into the\n * destination object. Source properties that resolve to `undefined` are\n * skipped if a destination value exists. Array and plain object properties\n * are merged recursively. Other objects and value types are overridden by\n * assignment. Source objects are applied from left to right. Subsequent\n * sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {\n * 'a': [{ 'b': 2 }, { 'd': 4 }]\n * };\n *\n * var other = {\n * 'a': [{ 'c': 3 }, { 'e': 5 }]\n * };\n *\n * _.merge(object, other);\n * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }\n */\nvar merge = createAssigner(function(object, source, srcIndex) {\n baseMerge(object, source, srcIndex);\n});\n\nmodule.exports = merge;\n","/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n return [];\n}\n\nmodule.exports = stubArray;\n","/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nmodule.exports = stubFalse;\n","var copyObject = require('./_copyObject'),\n keysIn = require('./keysIn');\n\n/**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\nfunction toPlainObject(value) {\n return copyObject(value, keysIn(value));\n}\n\nmodule.exports = toPlainObject;\n","/**\n * SSR Window 2.0.0\n * Better handling for window object in SSR environment\n * https://github.com/nolimits4web/ssr-window\n *\n * Copyright 2020, Vladimir Kharlampidi\n *\n * Licensed under MIT\n *\n * Released on: May 12, 2020\n */\n/* eslint-disable no-param-reassign */\nfunction isObject(obj) {\n return (obj !== null &&\n typeof obj === 'object' &&\n 'constructor' in obj &&\n obj.constructor === Object);\n}\nfunction extend(target, src) {\n if (target === void 0) { target = {}; }\n if (src === void 0) { src = {}; }\n Object.keys(src).forEach(function (key) {\n if (typeof target[key] === 'undefined')\n target[key] = src[key];\n else if (isObject(src[key]) &&\n isObject(target[key]) &&\n Object.keys(src[key]).length > 0) {\n extend(target[key], src[key]);\n }\n });\n}\n\nvar doc = typeof document !== 'undefined' ? document : {};\nvar ssrDocument = {\n body: {},\n addEventListener: function () { },\n removeEventListener: function () { },\n activeElement: {\n blur: function () { },\n nodeName: '',\n },\n querySelector: function () {\n return null;\n },\n querySelectorAll: function () {\n return [];\n },\n getElementById: function () {\n return null;\n },\n createEvent: function () {\n return {\n initEvent: function () { },\n };\n },\n createElement: function () {\n return {\n children: [],\n childNodes: [],\n style: {},\n setAttribute: function () { },\n getElementsByTagName: function () {\n return [];\n },\n };\n },\n createElementNS: function () {\n return {};\n },\n importNode: function () {\n return null;\n },\n location: {\n hash: '',\n host: '',\n hostname: '',\n href: '',\n origin: '',\n pathname: '',\n protocol: '',\n search: '',\n },\n};\nextend(doc, ssrDocument);\n\nvar win = typeof window !== 'undefined' ? window : {};\nvar ssrWindow = {\n document: ssrDocument,\n navigator: {\n userAgent: '',\n },\n location: {\n hash: '',\n host: '',\n hostname: '',\n href: '',\n origin: '',\n pathname: '',\n protocol: '',\n search: '',\n },\n history: {\n replaceState: function () { },\n pushState: function () { },\n go: function () { },\n back: function () { },\n },\n CustomEvent: function CustomEvent() {\n return this;\n },\n addEventListener: function () { },\n removeEventListener: function () { },\n getComputedStyle: function () {\n return {\n getPropertyValue: function () {\n return '';\n },\n };\n },\n Image: function () { },\n Date: function () { },\n screen: {},\n setTimeout: function () { },\n clearTimeout: function () { },\n matchMedia: function () {\n return {};\n },\n};\nextend(win, ssrWindow);\n\nexport { doc as document, extend, win as window };\n","/**\n * Dom7 2.1.5\n * Minimalistic JavaScript library for DOM manipulation, with a jQuery-compatible API\n * http://framework7.io/docs/dom.html\n *\n * Copyright 2020, Vladimir Kharlampidi\n * The iDangero.us\n * http://www.idangero.us/\n *\n * Licensed under MIT\n *\n * Released on: May 15, 2020\n */\nimport { document, window } from 'ssr-window';\n\nclass Dom7 {\n constructor(arr) {\n const self = this;\n // Create array-like object\n for (let i = 0; i < arr.length; i += 1) {\n self[i] = arr[i];\n }\n self.length = arr.length;\n // Return collection with methods\n return this;\n }\n}\n\nfunction $(selector, context) {\n const arr = [];\n let i = 0;\n if (selector && !context) {\n if (selector instanceof Dom7) {\n return selector;\n }\n }\n if (selector) {\n // String\n if (typeof selector === 'string') {\n let els;\n let tempParent;\n const html = selector.trim();\n if (html.indexOf('<') >= 0 && html.indexOf('>') >= 0) {\n let toCreate = 'div';\n if (html.indexOf(':~]/)) {\n // Pure ID selector\n els = [document.getElementById(selector.trim().split('#')[1])];\n } else {\n // Other selectors\n els = (context || document).querySelectorAll(selector.trim());\n }\n for (i = 0; i < els.length; i += 1) {\n if (els[i]) arr.push(els[i]);\n }\n }\n } else if (selector.nodeType || selector === window || selector === document) {\n // Node/element\n arr.push(selector);\n } else if (selector.length > 0 && selector[0].nodeType) {\n // Array of elements or instance of Dom\n for (i = 0; i < selector.length; i += 1) {\n arr.push(selector[i]);\n }\n }\n }\n return new Dom7(arr);\n}\n\n$.fn = Dom7.prototype;\n$.Class = Dom7;\n$.Dom7 = Dom7;\n\nfunction unique(arr) {\n const uniqueArray = [];\n for (let i = 0; i < arr.length; i += 1) {\n if (uniqueArray.indexOf(arr[i]) === -1) uniqueArray.push(arr[i]);\n }\n return uniqueArray;\n}\nfunction toCamelCase(string) {\n return string.toLowerCase().replace(/-(.)/g, (match, group1) => group1.toUpperCase());\n}\n\nfunction requestAnimationFrame(callback) {\n if (window.requestAnimationFrame) return window.requestAnimationFrame(callback);\n else if (window.webkitRequestAnimationFrame) return window.webkitRequestAnimationFrame(callback);\n return window.setTimeout(callback, 1000 / 60);\n}\nfunction cancelAnimationFrame(id) {\n if (window.cancelAnimationFrame) return window.cancelAnimationFrame(id);\n else if (window.webkitCancelAnimationFrame) return window.webkitCancelAnimationFrame(id);\n return window.clearTimeout(id);\n}\n\n// Classes and attributes\nfunction addClass(className) {\n if (typeof className === 'undefined') {\n return this;\n }\n const classes = className.split(' ');\n for (let i = 0; i < classes.length; i += 1) {\n for (let j = 0; j < this.length; j += 1) {\n if (typeof this[j] !== 'undefined' && typeof this[j].classList !== 'undefined') this[j].classList.add(classes[i]);\n }\n }\n return this;\n}\nfunction removeClass(className) {\n const classes = className.split(' ');\n for (let i = 0; i < classes.length; i += 1) {\n for (let j = 0; j < this.length; j += 1) {\n if (typeof this[j] !== 'undefined' && typeof this[j].classList !== 'undefined') this[j].classList.remove(classes[i]);\n }\n }\n return this;\n}\nfunction hasClass(className) {\n if (!this[0]) return false;\n return this[0].classList.contains(className);\n}\nfunction toggleClass(className) {\n const classes = className.split(' ');\n for (let i = 0; i < classes.length; i += 1) {\n for (let j = 0; j < this.length; j += 1) {\n if (typeof this[j] !== 'undefined' && typeof this[j].classList !== 'undefined') this[j].classList.toggle(classes[i]);\n }\n }\n return this;\n}\nfunction attr(attrs, value) {\n if (arguments.length === 1 && typeof attrs === 'string') {\n // Get attr\n if (this[0]) return this[0].getAttribute(attrs);\n return undefined;\n }\n\n // Set attrs\n for (let i = 0; i < this.length; i += 1) {\n if (arguments.length === 2) {\n // String\n this[i].setAttribute(attrs, value);\n } else {\n // Object\n // eslint-disable-next-line\n for (const attrName in attrs) {\n this[i][attrName] = attrs[attrName];\n this[i].setAttribute(attrName, attrs[attrName]);\n }\n }\n }\n return this;\n}\n// eslint-disable-next-line\nfunction removeAttr(attr) {\n for (let i = 0; i < this.length; i += 1) {\n this[i].removeAttribute(attr);\n }\n return this;\n}\n// eslint-disable-next-line\nfunction prop(props, value) {\n if (arguments.length === 1 && typeof props === 'string') {\n // Get prop\n if (this[0]) return this[0][props];\n } else {\n // Set props\n for (let i = 0; i < this.length; i += 1) {\n if (arguments.length === 2) {\n // String\n this[i][props] = value;\n } else {\n // Object\n // eslint-disable-next-line\n for (const propName in props) {\n this[i][propName] = props[propName];\n }\n }\n }\n return this;\n }\n}\nfunction data(key, value) {\n let el;\n if (typeof value === 'undefined') {\n el = this[0];\n // Get value\n if (el) {\n if (el.dom7ElementDataStorage && (key in el.dom7ElementDataStorage)) {\n return el.dom7ElementDataStorage[key];\n }\n\n const dataKey = el.getAttribute(`data-${key}`);\n if (dataKey) {\n return dataKey;\n }\n return undefined;\n }\n return undefined;\n }\n\n // Set value\n for (let i = 0; i < this.length; i += 1) {\n el = this[i];\n if (!el.dom7ElementDataStorage) el.dom7ElementDataStorage = {};\n el.dom7ElementDataStorage[key] = value;\n }\n return this;\n}\nfunction removeData(key) {\n for (let i = 0; i < this.length; i += 1) {\n const el = this[i];\n if (el.dom7ElementDataStorage && el.dom7ElementDataStorage[key]) {\n el.dom7ElementDataStorage[key] = null;\n delete el.dom7ElementDataStorage[key];\n }\n }\n}\nfunction dataset() {\n const el = this[0];\n if (!el) return undefined;\n const dataset = {}; // eslint-disable-line\n if (el.dataset) {\n // eslint-disable-next-line\n for (const dataKey in el.dataset) {\n dataset[dataKey] = el.dataset[dataKey];\n }\n } else {\n for (let i = 0; i < el.attributes.length; i += 1) {\n // eslint-disable-next-line\n const attr = el.attributes[i];\n if (attr.name.indexOf('data-') >= 0) {\n dataset[toCamelCase(attr.name.split('data-')[1])] = attr.value;\n }\n }\n }\n // eslint-disable-next-line\n for (const key in dataset) {\n if (dataset[key] === 'false') dataset[key] = false;\n else if (dataset[key] === 'true') dataset[key] = true;\n else if (parseFloat(dataset[key]) === dataset[key] * 1) dataset[key] *= 1;\n }\n return dataset;\n}\nfunction val(value) {\n const dom = this;\n if (typeof value === 'undefined') {\n if (dom[0]) {\n if (dom[0].multiple && dom[0].nodeName.toLowerCase() === 'select') {\n const values = [];\n for (let i = 0; i < dom[0].selectedOptions.length; i += 1) {\n values.push(dom[0].selectedOptions[i].value);\n }\n return values;\n }\n return dom[0].value;\n }\n return undefined;\n }\n\n for (let i = 0; i < dom.length; i += 1) {\n const el = dom[i];\n if (Array.isArray(value) && el.multiple && el.nodeName.toLowerCase() === 'select') {\n for (let j = 0; j < el.options.length; j += 1) {\n el.options[j].selected = value.indexOf(el.options[j].value) >= 0;\n }\n } else {\n el.value = value;\n }\n }\n return dom;\n}\n// Transforms\n// eslint-disable-next-line\nfunction transform(transform) {\n for (let i = 0; i < this.length; i += 1) {\n const elStyle = this[i].style;\n elStyle.webkitTransform = transform;\n elStyle.transform = transform;\n }\n return this;\n}\nfunction transition(duration) {\n if (typeof duration !== 'string') {\n duration = `${duration}ms`; // eslint-disable-line\n }\n for (let i = 0; i < this.length; i += 1) {\n const elStyle = this[i].style;\n elStyle.webkitTransitionDuration = duration;\n elStyle.transitionDuration = duration;\n }\n return this;\n}\n// Events\nfunction on(...args) {\n let [eventType, targetSelector, listener, capture] = args;\n if (typeof args[1] === 'function') {\n [eventType, listener, capture] = args;\n targetSelector = undefined;\n }\n if (!capture) capture = false;\n\n function handleLiveEvent(e) {\n const target = e.target;\n if (!target) return;\n const eventData = e.target.dom7EventData || [];\n if (eventData.indexOf(e) < 0) {\n eventData.unshift(e);\n }\n if ($(target).is(targetSelector)) listener.apply(target, eventData);\n else {\n const parents = $(target).parents(); // eslint-disable-line\n for (let k = 0; k < parents.length; k += 1) {\n if ($(parents[k]).is(targetSelector)) listener.apply(parents[k], eventData);\n }\n }\n }\n function handleEvent(e) {\n const eventData = e && e.target ? e.target.dom7EventData || [] : [];\n if (eventData.indexOf(e) < 0) {\n eventData.unshift(e);\n }\n listener.apply(this, eventData);\n }\n const events = eventType.split(' ');\n let j;\n for (let i = 0; i < this.length; i += 1) {\n const el = this[i];\n if (!targetSelector) {\n for (j = 0; j < events.length; j += 1) {\n const event = events[j];\n if (!el.dom7Listeners) el.dom7Listeners = {};\n if (!el.dom7Listeners[event]) el.dom7Listeners[event] = [];\n el.dom7Listeners[event].push({\n listener,\n proxyListener: handleEvent,\n });\n el.addEventListener(event, handleEvent, capture);\n }\n } else {\n // Live events\n for (j = 0; j < events.length; j += 1) {\n const event = events[j];\n if (!el.dom7LiveListeners) el.dom7LiveListeners = {};\n if (!el.dom7LiveListeners[event]) el.dom7LiveListeners[event] = [];\n el.dom7LiveListeners[event].push({\n listener,\n proxyListener: handleLiveEvent,\n });\n el.addEventListener(event, handleLiveEvent, capture);\n }\n }\n }\n return this;\n}\nfunction off(...args) {\n let [eventType, targetSelector, listener, capture] = args;\n if (typeof args[1] === 'function') {\n [eventType, listener, capture] = args;\n targetSelector = undefined;\n }\n if (!capture) capture = false;\n\n const events = eventType.split(' ');\n for (let i = 0; i < events.length; i += 1) {\n const event = events[i];\n for (let j = 0; j < this.length; j += 1) {\n const el = this[j];\n let handlers;\n if (!targetSelector && el.dom7Listeners) {\n handlers = el.dom7Listeners[event];\n } else if (targetSelector && el.dom7LiveListeners) {\n handlers = el.dom7LiveListeners[event];\n }\n if (handlers && handlers.length) {\n for (let k = handlers.length - 1; k >= 0; k -= 1) {\n const handler = handlers[k];\n if (listener && handler.listener === listener) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n } else if (listener && handler.listener && handler.listener.dom7proxy && handler.listener.dom7proxy === listener) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n } else if (!listener) {\n el.removeEventListener(event, handler.proxyListener, capture);\n handlers.splice(k, 1);\n }\n }\n }\n }\n }\n return this;\n}\nfunction once(...args) {\n const dom = this;\n let [eventName, targetSelector, listener, capture] = args;\n if (typeof args[1] === 'function') {\n [eventName, listener, capture] = args;\n targetSelector = undefined;\n }\n function onceHandler(...eventArgs) {\n listener.apply(this, eventArgs);\n dom.off(eventName, targetSelector, onceHandler, capture);\n if (onceHandler.dom7proxy) {\n delete onceHandler.dom7proxy;\n }\n }\n onceHandler.dom7proxy = listener;\n return dom.on(eventName, targetSelector, onceHandler, capture);\n}\nfunction trigger(...args) {\n const events = args[0].split(' ');\n const eventData = args[1];\n for (let i = 0; i < events.length; i += 1) {\n const event = events[i];\n for (let j = 0; j < this.length; j += 1) {\n const el = this[j];\n let evt;\n try {\n evt = new window.CustomEvent(event, {\n detail: eventData,\n bubbles: true,\n cancelable: true,\n });\n } catch (e) {\n evt = document.createEvent('Event');\n evt.initEvent(event, true, true);\n evt.detail = eventData;\n }\n // eslint-disable-next-line\n el.dom7EventData = args.filter((data, dataIndex) => dataIndex > 0);\n el.dispatchEvent(evt);\n el.dom7EventData = [];\n delete el.dom7EventData;\n }\n }\n return this;\n}\nfunction transitionEnd(callback) {\n const events = ['webkitTransitionEnd', 'transitionend'];\n const dom = this;\n let i;\n function fireCallBack(e) {\n /* jshint validthis:true */\n if (e.target !== this) return;\n callback.call(this, e);\n for (i = 0; i < events.length; i += 1) {\n dom.off(events[i], fireCallBack);\n }\n }\n if (callback) {\n for (i = 0; i < events.length; i += 1) {\n dom.on(events[i], fireCallBack);\n }\n }\n return this;\n}\nfunction animationEnd(callback) {\n const events = ['webkitAnimationEnd', 'animationend'];\n const dom = this;\n let i;\n function fireCallBack(e) {\n if (e.target !== this) return;\n callback.call(this, e);\n for (i = 0; i < events.length; i += 1) {\n dom.off(events[i], fireCallBack);\n }\n }\n if (callback) {\n for (i = 0; i < events.length; i += 1) {\n dom.on(events[i], fireCallBack);\n }\n }\n return this;\n}\n// Sizing/Styles\nfunction width() {\n if (this[0] === window) {\n return window.innerWidth;\n }\n\n if (this.length > 0) {\n return parseFloat(this.css('width'));\n }\n\n return null;\n}\nfunction outerWidth(includeMargins) {\n if (this.length > 0) {\n if (includeMargins) {\n // eslint-disable-next-line\n const styles = this.styles();\n return this[0].offsetWidth + parseFloat(styles.getPropertyValue('margin-right')) + parseFloat(styles.getPropertyValue('margin-left'));\n }\n return this[0].offsetWidth;\n }\n return null;\n}\nfunction height() {\n if (this[0] === window) {\n return window.innerHeight;\n }\n\n if (this.length > 0) {\n return parseFloat(this.css('height'));\n }\n\n return null;\n}\nfunction outerHeight(includeMargins) {\n if (this.length > 0) {\n if (includeMargins) {\n // eslint-disable-next-line\n const styles = this.styles();\n return this[0].offsetHeight + parseFloat(styles.getPropertyValue('margin-top')) + parseFloat(styles.getPropertyValue('margin-bottom'));\n }\n return this[0].offsetHeight;\n }\n return null;\n}\nfunction offset() {\n if (this.length > 0) {\n const el = this[0];\n const box = el.getBoundingClientRect();\n const body = document.body;\n const clientTop = el.clientTop || body.clientTop || 0;\n const clientLeft = el.clientLeft || body.clientLeft || 0;\n const scrollTop = el === window ? window.scrollY : el.scrollTop;\n const scrollLeft = el === window ? window.scrollX : el.scrollLeft;\n return {\n top: (box.top + scrollTop) - clientTop,\n left: (box.left + scrollLeft) - clientLeft,\n };\n }\n\n return null;\n}\nfunction hide() {\n for (let i = 0; i < this.length; i += 1) {\n this[i].style.display = 'none';\n }\n return this;\n}\nfunction show() {\n for (let i = 0; i < this.length; i += 1) {\n const el = this[i];\n if (el.style.display === 'none') {\n el.style.display = '';\n }\n if (window.getComputedStyle(el, null).getPropertyValue('display') === 'none') {\n // Still not visible\n el.style.display = 'block';\n }\n }\n return this;\n}\nfunction styles() {\n if (this[0]) return window.getComputedStyle(this[0], null);\n return {};\n}\nfunction css(props, value) {\n let i;\n if (arguments.length === 1) {\n if (typeof props === 'string') {\n if (this[0]) return window.getComputedStyle(this[0], null).getPropertyValue(props);\n } else {\n for (i = 0; i < this.length; i += 1) {\n // eslint-disable-next-line\n for (let prop in props) {\n this[i].style[prop] = props[prop];\n }\n }\n return this;\n }\n }\n if (arguments.length === 2 && typeof props === 'string') {\n for (i = 0; i < this.length; i += 1) {\n this[i].style[props] = value;\n }\n return this;\n }\n return this;\n}\n\n// Dom manipulation\nfunction toArray() {\n const arr = [];\n for (let i = 0; i < this.length; i += 1) {\n arr.push(this[i]);\n }\n return arr;\n}\n// Iterate over the collection passing elements to `callback`\nfunction each(callback) {\n // Don't bother continuing without a callback\n if (!callback) return this;\n // Iterate over the current collection\n for (let i = 0; i < this.length; i += 1) {\n // If the callback returns false\n if (callback.call(this[i], i, this[i]) === false) {\n // End the loop early\n return this;\n }\n }\n // Return `this` to allow chained DOM operations\n return this;\n}\nfunction forEach(callback) {\n // Don't bother continuing without a callback\n if (!callback) return this;\n // Iterate over the current collection\n for (let i = 0; i < this.length; i += 1) {\n // If the callback returns false\n if (callback.call(this[i], this[i], i) === false) {\n // End the loop early\n return this;\n }\n }\n // Return `this` to allow chained DOM operations\n return this;\n}\nfunction filter(callback) {\n const matchedItems = [];\n const dom = this;\n for (let i = 0; i < dom.length; i += 1) {\n if (callback.call(dom[i], i, dom[i])) matchedItems.push(dom[i]);\n }\n return new Dom7(matchedItems);\n}\nfunction map(callback) {\n const modifiedItems = [];\n const dom = this;\n for (let i = 0; i < dom.length; i += 1) {\n modifiedItems.push(callback.call(dom[i], i, dom[i]));\n }\n return new Dom7(modifiedItems);\n}\n// eslint-disable-next-line\nfunction html(html) {\n if (typeof html === 'undefined') {\n return this[0] ? this[0].innerHTML : undefined;\n }\n\n for (let i = 0; i < this.length; i += 1) {\n this[i].innerHTML = html;\n }\n return this;\n}\n// eslint-disable-next-line\nfunction text(text) {\n if (typeof text === 'undefined') {\n if (this[0]) {\n return this[0].textContent.trim();\n }\n return null;\n }\n\n for (let i = 0; i < this.length; i += 1) {\n this[i].textContent = text;\n }\n return this;\n}\nfunction is(selector) {\n const el = this[0];\n let compareWith;\n let i;\n if (!el || typeof selector === 'undefined') return false;\n if (typeof selector === 'string') {\n if (el.matches) return el.matches(selector);\n else if (el.webkitMatchesSelector) return el.webkitMatchesSelector(selector);\n else if (el.msMatchesSelector) return el.msMatchesSelector(selector);\n\n compareWith = $(selector);\n for (i = 0; i < compareWith.length; i += 1) {\n if (compareWith[i] === el) return true;\n }\n return false;\n } else if (selector === document) return el === document;\n else if (selector === window) return el === window;\n\n if (selector.nodeType || selector instanceof Dom7) {\n compareWith = selector.nodeType ? [selector] : selector;\n for (i = 0; i < compareWith.length; i += 1) {\n if (compareWith[i] === el) return true;\n }\n return false;\n }\n return false;\n}\nfunction indexOf(el) {\n for (let i = 0; i < this.length; i += 1) {\n if (this[i] === el) return i;\n }\n return -1;\n}\nfunction index() {\n let child = this[0];\n let i;\n if (child) {\n i = 0;\n // eslint-disable-next-line\n while ((child = child.previousSibling) !== null) {\n if (child.nodeType === 1) i += 1;\n }\n return i;\n }\n return undefined;\n}\n// eslint-disable-next-line\nfunction eq(index) {\n if (typeof index === 'undefined') return this;\n const length = this.length;\n let returnIndex;\n if (index > length - 1) {\n return new Dom7([]);\n }\n if (index < 0) {\n returnIndex = length + index;\n if (returnIndex < 0) return new Dom7([]);\n return new Dom7([this[returnIndex]]);\n }\n return new Dom7([this[index]]);\n}\nfunction append(...args) {\n let newChild;\n\n for (let k = 0; k < args.length; k += 1) {\n newChild = args[k];\n for (let i = 0; i < this.length; i += 1) {\n if (typeof newChild === 'string') {\n const tempDiv = document.createElement('div');\n tempDiv.innerHTML = newChild;\n while (tempDiv.firstChild) {\n this[i].appendChild(tempDiv.firstChild);\n }\n } else if (newChild instanceof Dom7) {\n for (let j = 0; j < newChild.length; j += 1) {\n this[i].appendChild(newChild[j]);\n }\n } else {\n this[i].appendChild(newChild);\n }\n }\n }\n\n return this;\n}\n// eslint-disable-next-line\nfunction appendTo(parent) {\n $(parent).append(this);\n return this;\n}\nfunction prepend(newChild) {\n let i;\n let j;\n for (i = 0; i < this.length; i += 1) {\n if (typeof newChild === 'string') {\n const tempDiv = document.createElement('div');\n tempDiv.innerHTML = newChild;\n for (j = tempDiv.childNodes.length - 1; j >= 0; j -= 1) {\n this[i].insertBefore(tempDiv.childNodes[j], this[i].childNodes[0]);\n }\n } else if (newChild instanceof Dom7) {\n for (j = 0; j < newChild.length; j += 1) {\n this[i].insertBefore(newChild[j], this[i].childNodes[0]);\n }\n } else {\n this[i].insertBefore(newChild, this[i].childNodes[0]);\n }\n }\n return this;\n}\n// eslint-disable-next-line\nfunction prependTo(parent) {\n $(parent).prepend(this);\n return this;\n}\nfunction insertBefore(selector) {\n const before = $(selector);\n for (let i = 0; i < this.length; i += 1) {\n if (before.length === 1) {\n before[0].parentNode.insertBefore(this[i], before[0]);\n } else if (before.length > 1) {\n for (let j = 0; j < before.length; j += 1) {\n before[j].parentNode.insertBefore(this[i].cloneNode(true), before[j]);\n }\n }\n }\n}\nfunction insertAfter(selector) {\n const after = $(selector);\n for (let i = 0; i < this.length; i += 1) {\n if (after.length === 1) {\n after[0].parentNode.insertBefore(this[i], after[0].nextSibling);\n } else if (after.length > 1) {\n for (let j = 0; j < after.length; j += 1) {\n after[j].parentNode.insertBefore(this[i].cloneNode(true), after[j].nextSibling);\n }\n }\n }\n}\nfunction next(selector) {\n if (this.length > 0) {\n if (selector) {\n if (this[0].nextElementSibling && $(this[0].nextElementSibling).is(selector)) {\n return new Dom7([this[0].nextElementSibling]);\n }\n return new Dom7([]);\n }\n\n if (this[0].nextElementSibling) return new Dom7([this[0].nextElementSibling]);\n return new Dom7([]);\n }\n return new Dom7([]);\n}\nfunction nextAll(selector) {\n const nextEls = [];\n let el = this[0];\n if (!el) return new Dom7([]);\n while (el.nextElementSibling) {\n const next = el.nextElementSibling; // eslint-disable-line\n if (selector) {\n if ($(next).is(selector)) nextEls.push(next);\n } else nextEls.push(next);\n el = next;\n }\n return new Dom7(nextEls);\n}\nfunction prev(selector) {\n if (this.length > 0) {\n const el = this[0];\n if (selector) {\n if (el.previousElementSibling && $(el.previousElementSibling).is(selector)) {\n return new Dom7([el.previousElementSibling]);\n }\n return new Dom7([]);\n }\n\n if (el.previousElementSibling) return new Dom7([el.previousElementSibling]);\n return new Dom7([]);\n }\n return new Dom7([]);\n}\nfunction prevAll(selector) {\n const prevEls = [];\n let el = this[0];\n if (!el) return new Dom7([]);\n while (el.previousElementSibling) {\n const prev = el.previousElementSibling; // eslint-disable-line\n if (selector) {\n if ($(prev).is(selector)) prevEls.push(prev);\n } else prevEls.push(prev);\n el = prev;\n }\n return new Dom7(prevEls);\n}\nfunction siblings(selector) {\n return this.nextAll(selector).add(this.prevAll(selector));\n}\nfunction parent(selector) {\n const parents = []; // eslint-disable-line\n for (let i = 0; i < this.length; i += 1) {\n if (this[i].parentNode !== null) {\n if (selector) {\n if ($(this[i].parentNode).is(selector)) parents.push(this[i].parentNode);\n } else {\n parents.push(this[i].parentNode);\n }\n }\n }\n return $(unique(parents));\n}\nfunction parents(selector) {\n const parents = []; // eslint-disable-line\n for (let i = 0; i < this.length; i += 1) {\n let parent = this[i].parentNode; // eslint-disable-line\n while (parent) {\n if (selector) {\n if ($(parent).is(selector)) parents.push(parent);\n } else {\n parents.push(parent);\n }\n parent = parent.parentNode;\n }\n }\n return $(unique(parents));\n}\nfunction closest(selector) {\n let closest = this; // eslint-disable-line\n if (typeof selector === 'undefined') {\n return new Dom7([]);\n }\n if (!closest.is(selector)) {\n closest = closest.parents(selector).eq(0);\n }\n return closest;\n}\nfunction find(selector) {\n const foundElements = [];\n for (let i = 0; i < this.length; i += 1) {\n const found = this[i].querySelectorAll(selector);\n for (let j = 0; j < found.length; j += 1) {\n foundElements.push(found[j]);\n }\n }\n return new Dom7(foundElements);\n}\nfunction children(selector) {\n const children = []; // eslint-disable-line\n for (let i = 0; i < this.length; i += 1) {\n const childNodes = this[i].childNodes;\n\n for (let j = 0; j < childNodes.length; j += 1) {\n if (!selector) {\n if (childNodes[j].nodeType === 1) children.push(childNodes[j]);\n } else if (childNodes[j].nodeType === 1 && $(childNodes[j]).is(selector)) {\n children.push(childNodes[j]);\n }\n }\n }\n return new Dom7(unique(children));\n}\nfunction remove() {\n for (let i = 0; i < this.length; i += 1) {\n if (this[i].parentNode) this[i].parentNode.removeChild(this[i]);\n }\n return this;\n}\nfunction detach() {\n return this.remove();\n}\nfunction add(...args) {\n const dom = this;\n let i;\n let j;\n for (i = 0; i < args.length; i += 1) {\n const toAdd = $(args[i]);\n for (j = 0; j < toAdd.length; j += 1) {\n dom[dom.length] = toAdd[j];\n dom.length += 1;\n }\n }\n return dom;\n}\nfunction empty() {\n for (let i = 0; i < this.length; i += 1) {\n const el = this[i];\n if (el.nodeType === 1) {\n for (let j = 0; j < el.childNodes.length; j += 1) {\n if (el.childNodes[j].parentNode) {\n el.childNodes[j].parentNode.removeChild(el.childNodes[j]);\n }\n }\n el.textContent = '';\n }\n }\n return this;\n}\n\nfunction scrollTo(...args) {\n let [left, top, duration, easing, callback] = args;\n if (args.length === 4 && typeof easing === 'function') {\n callback = easing;\n [left, top, duration, callback, easing] = args;\n }\n if (typeof easing === 'undefined') easing = 'swing';\n\n return this.each(function animate() {\n const el = this;\n let currentTop;\n let currentLeft;\n let maxTop;\n let maxLeft;\n let newTop;\n let newLeft;\n let scrollTop; // eslint-disable-line\n let scrollLeft; // eslint-disable-line\n let animateTop = top > 0 || top === 0;\n let animateLeft = left > 0 || left === 0;\n if (typeof easing === 'undefined') {\n easing = 'swing';\n }\n if (animateTop) {\n currentTop = el.scrollTop;\n if (!duration) {\n el.scrollTop = top;\n }\n }\n if (animateLeft) {\n currentLeft = el.scrollLeft;\n if (!duration) {\n el.scrollLeft = left;\n }\n }\n if (!duration) return;\n if (animateTop) {\n maxTop = el.scrollHeight - el.offsetHeight;\n newTop = Math.max(Math.min(top, maxTop), 0);\n }\n if (animateLeft) {\n maxLeft = el.scrollWidth - el.offsetWidth;\n newLeft = Math.max(Math.min(left, maxLeft), 0);\n }\n let startTime = null;\n if (animateTop && newTop === currentTop) animateTop = false;\n if (animateLeft && newLeft === currentLeft) animateLeft = false;\n function render(time = new Date().getTime()) {\n if (startTime === null) {\n startTime = time;\n }\n const progress = Math.max(Math.min((time - startTime) / duration, 1), 0);\n const easeProgress = easing === 'linear' ? progress : (0.5 - (Math.cos(progress * Math.PI) / 2));\n let done;\n if (animateTop) scrollTop = currentTop + (easeProgress * (newTop - currentTop));\n if (animateLeft) scrollLeft = currentLeft + (easeProgress * (newLeft - currentLeft));\n if (animateTop && newTop > currentTop && scrollTop >= newTop) {\n el.scrollTop = newTop;\n done = true;\n }\n if (animateTop && newTop < currentTop && scrollTop <= newTop) {\n el.scrollTop = newTop;\n done = true;\n }\n if (animateLeft && newLeft > currentLeft && scrollLeft >= newLeft) {\n el.scrollLeft = newLeft;\n done = true;\n }\n if (animateLeft && newLeft < currentLeft && scrollLeft <= newLeft) {\n el.scrollLeft = newLeft;\n done = true;\n }\n\n if (done) {\n if (callback) callback();\n return;\n }\n if (animateTop) el.scrollTop = scrollTop;\n if (animateLeft) el.scrollLeft = scrollLeft;\n requestAnimationFrame(render);\n }\n requestAnimationFrame(render);\n });\n}\n// scrollTop(top, duration, easing, callback) {\nfunction scrollTop(...args) {\n let [top, duration, easing, callback] = args;\n if (args.length === 3 && typeof easing === 'function') {\n [top, duration, callback, easing] = args;\n }\n const dom = this;\n if (typeof top === 'undefined') {\n if (dom.length > 0) return dom[0].scrollTop;\n return null;\n }\n return dom.scrollTo(undefined, top, duration, easing, callback);\n}\nfunction scrollLeft(...args) {\n let [left, duration, easing, callback] = args;\n if (args.length === 3 && typeof easing === 'function') {\n [left, duration, callback, easing] = args;\n }\n const dom = this;\n if (typeof left === 'undefined') {\n if (dom.length > 0) return dom[0].scrollLeft;\n return null;\n }\n return dom.scrollTo(left, undefined, duration, easing, callback);\n}\n\nfunction animate(initialProps, initialParams) {\n const els = this;\n const a = {\n props: Object.assign({}, initialProps),\n params: Object.assign({\n duration: 300,\n easing: 'swing', // or 'linear'\n /* Callbacks\n begin(elements)\n complete(elements)\n progress(elements, complete, remaining, start, tweenValue)\n */\n }, initialParams),\n\n elements: els,\n animating: false,\n que: [],\n\n easingProgress(easing, progress) {\n if (easing === 'swing') {\n return 0.5 - (Math.cos(progress * Math.PI) / 2);\n }\n if (typeof easing === 'function') {\n return easing(progress);\n }\n return progress;\n },\n stop() {\n if (a.frameId) {\n cancelAnimationFrame(a.frameId);\n }\n a.animating = false;\n a.elements.each((index, el) => {\n const element = el;\n delete element.dom7AnimateInstance;\n });\n a.que = [];\n },\n done(complete) {\n a.animating = false;\n a.elements.each((index, el) => {\n const element = el;\n delete element.dom7AnimateInstance;\n });\n if (complete) complete(els);\n if (a.que.length > 0) {\n const que = a.que.shift();\n a.animate(que[0], que[1]);\n }\n },\n animate(props, params) {\n if (a.animating) {\n a.que.push([props, params]);\n return a;\n }\n const elements = [];\n\n // Define & Cache Initials & Units\n a.elements.each((index, el) => {\n let initialFullValue;\n let initialValue;\n let unit;\n let finalValue;\n let finalFullValue;\n\n if (!el.dom7AnimateInstance) a.elements[index].dom7AnimateInstance = a;\n\n elements[index] = {\n container: el,\n };\n Object.keys(props).forEach((prop) => {\n initialFullValue = window.getComputedStyle(el, null).getPropertyValue(prop).replace(',', '.');\n initialValue = parseFloat(initialFullValue);\n unit = initialFullValue.replace(initialValue, '');\n finalValue = parseFloat(props[prop]);\n finalFullValue = props[prop] + unit;\n elements[index][prop] = {\n initialFullValue,\n initialValue,\n unit,\n finalValue,\n finalFullValue,\n currentValue: initialValue,\n };\n });\n });\n\n let startTime = null;\n let time;\n let elementsDone = 0;\n let propsDone = 0;\n let done;\n let began = false;\n\n a.animating = true;\n\n function render() {\n time = new Date().getTime();\n let progress;\n let easeProgress;\n // let el;\n if (!began) {\n began = true;\n if (params.begin) params.begin(els);\n }\n if (startTime === null) {\n startTime = time;\n }\n if (params.progress) {\n // eslint-disable-next-line\n params.progress(els, Math.max(Math.min((time - startTime) / params.duration, 1), 0), ((startTime + params.duration) - time < 0 ? 0 : (startTime + params.duration) - time), startTime);\n }\n\n elements.forEach((element) => {\n const el = element;\n if (done || el.done) return;\n Object.keys(props).forEach((prop) => {\n if (done || el.done) return;\n progress = Math.max(Math.min((time - startTime) / params.duration, 1), 0);\n easeProgress = a.easingProgress(params.easing, progress);\n const { initialValue, finalValue, unit } = el[prop];\n el[prop].currentValue = initialValue + (easeProgress * (finalValue - initialValue));\n const currentValue = el[prop].currentValue;\n\n if (\n (finalValue > initialValue && currentValue >= finalValue) ||\n (finalValue < initialValue && currentValue <= finalValue)) {\n el.container.style[prop] = finalValue + unit;\n propsDone += 1;\n if (propsDone === Object.keys(props).length) {\n el.done = true;\n elementsDone += 1;\n }\n if (elementsDone === elements.length) {\n done = true;\n }\n }\n if (done) {\n a.done(params.complete);\n return;\n }\n el.container.style[prop] = currentValue + unit;\n });\n });\n if (done) return;\n // Then call\n a.frameId = requestAnimationFrame(render);\n }\n a.frameId = requestAnimationFrame(render);\n return a;\n },\n };\n\n if (a.elements.length === 0) {\n return els;\n }\n\n let animateInstance;\n for (let i = 0; i < a.elements.length; i += 1) {\n if (a.elements[i].dom7AnimateInstance) {\n animateInstance = a.elements[i].dom7AnimateInstance;\n } else a.elements[i].dom7AnimateInstance = a;\n }\n if (!animateInstance) {\n animateInstance = a;\n }\n\n if (initialProps === 'stop') {\n animateInstance.stop();\n } else {\n animateInstance.animate(a.props, a.params);\n }\n\n return els;\n}\n\nfunction stop() {\n const els = this;\n for (let i = 0; i < els.length; i += 1) {\n if (els[i].dom7AnimateInstance) {\n els[i].dom7AnimateInstance.stop();\n }\n }\n}\n\nconst noTrigger = ('resize scroll').split(' ');\nfunction eventShortcut(name, ...args) {\n if (typeof args[0] === 'undefined') {\n for (let i = 0; i < this.length; i += 1) {\n if (noTrigger.indexOf(name) < 0) {\n if (name in this[i]) this[i][name]();\n else {\n $(this[i]).trigger(name);\n }\n }\n }\n return this;\n }\n return this.on(name, ...args);\n}\n\nfunction click(...args) {\n return eventShortcut.bind(this)('click', ...args);\n}\nfunction blur(...args) {\n return eventShortcut.bind(this)('blur', ...args);\n}\nfunction focus(...args) {\n return eventShortcut.bind(this)('focus', ...args);\n}\nfunction focusin(...args) {\n return eventShortcut.bind(this)('focusin', ...args);\n}\nfunction focusout(...args) {\n return eventShortcut.bind(this)('focusout', ...args);\n}\nfunction keyup(...args) {\n return eventShortcut.bind(this)('keyup', ...args);\n}\nfunction keydown(...args) {\n return eventShortcut.bind(this)('keydown', ...args);\n}\nfunction keypress(...args) {\n return eventShortcut.bind(this)('keypress', ...args);\n}\nfunction submit(...args) {\n return eventShortcut.bind(this)('submit', ...args);\n}\nfunction change(...args) {\n return eventShortcut.bind(this)('change', ...args);\n}\nfunction mousedown(...args) {\n return eventShortcut.bind(this)('mousedown', ...args);\n}\nfunction mousemove(...args) {\n return eventShortcut.bind(this)('mousemove', ...args);\n}\nfunction mouseup(...args) {\n return eventShortcut.bind(this)('mouseup', ...args);\n}\nfunction mouseenter(...args) {\n return eventShortcut.bind(this)('mouseenter', ...args);\n}\nfunction mouseleave(...args) {\n return eventShortcut.bind(this)('mouseleave', ...args);\n}\nfunction mouseout(...args) {\n return eventShortcut.bind(this)('mouseout', ...args);\n}\nfunction mouseover(...args) {\n return eventShortcut.bind(this)('mouseover', ...args);\n}\nfunction touchstart(...args) {\n return eventShortcut.bind(this)('touchstart', ...args);\n}\nfunction touchend(...args) {\n return eventShortcut.bind(this)('touchend', ...args);\n}\nfunction touchmove(...args) {\n return eventShortcut.bind(this)('touchmove', ...args);\n}\nfunction resize(...args) {\n return eventShortcut.bind(this)('resize', ...args);\n}\nfunction scroll(...args) {\n return eventShortcut.bind(this)('scroll', ...args);\n}\n\nexport { $, addClass, removeClass, hasClass, toggleClass, attr, removeAttr, prop, data, removeData, dataset, val, transform, transition, on, off, once, trigger, transitionEnd, animationEnd, width, outerWidth, height, outerHeight, offset, hide, show, styles, css, toArray, each, forEach, filter, map, html, text, is, indexOf, index, eq, append, appendTo, prepend, prependTo, insertBefore, insertAfter, next, nextAll, prev, prevAll, siblings, parent, parents, closest, find, children, remove, detach, add, empty, scrollTo, scrollTop, scrollLeft, animate, stop, click, blur, focus, focusin, focusout, keyup, keydown, keypress, submit, change, mousedown, mousemove, mouseup, mouseenter, mouseleave, mouseout, mouseover, touchstart, touchend, touchmove, resize, scroll };\n","/**\n * Swiper 5.4.5\n * Most modern mobile touch slider and framework with hardware accelerated transitions\n * http://swiperjs.com\n *\n * Copyright 2014-2020 Vladimir Kharlampidi\n *\n * Released under the MIT License\n *\n * Released on: June 16, 2020\n */\n\nimport { $, addClass, removeClass, hasClass, toggleClass, attr, removeAttr, data, transform, transition as transition$1, on, off, trigger, transitionEnd as transitionEnd$1, outerWidth, outerHeight, offset, css, each, html, text, is, index, eq, append, prepend, next, nextAll, prev, prevAll, parent, parents, closest, find, children, filter, remove, add, styles } from 'dom7/dist/dom7.modular';\nimport { window, document as document$1 } from 'ssr-window';\n\nconst Methods = {\n addClass,\n removeClass,\n hasClass,\n toggleClass,\n attr,\n removeAttr,\n data,\n transform,\n transition: transition$1,\n on,\n off,\n trigger,\n transitionEnd: transitionEnd$1,\n outerWidth,\n outerHeight,\n offset,\n css,\n each,\n html,\n text,\n is,\n index,\n eq,\n append,\n prepend,\n next,\n nextAll,\n prev,\n prevAll,\n parent,\n parents,\n closest,\n find,\n children,\n filter,\n remove,\n add,\n styles,\n};\n\nObject.keys(Methods).forEach((methodName) => {\n $.fn[methodName] = $.fn[methodName] || Methods[methodName];\n});\n\nconst Utils = {\n deleteProps(obj) {\n const object = obj;\n Object.keys(object).forEach((key) => {\n try {\n object[key] = null;\n } catch (e) {\n // no getter for object\n }\n try {\n delete object[key];\n } catch (e) {\n // something got wrong\n }\n });\n },\n nextTick(callback, delay = 0) {\n return setTimeout(callback, delay);\n },\n now() {\n return Date.now();\n },\n getTranslate(el, axis = 'x') {\n let matrix;\n let curTransform;\n let transformMatrix;\n\n const curStyle = window.getComputedStyle(el, null);\n\n if (window.WebKitCSSMatrix) {\n curTransform = curStyle.transform || curStyle.webkitTransform;\n if (curTransform.split(',').length > 6) {\n curTransform = curTransform.split(', ').map((a) => a.replace(',', '.')).join(', ');\n }\n // Some old versions of Webkit choke when 'none' is passed; pass\n // empty string instead in this case\n transformMatrix = new window.WebKitCSSMatrix(curTransform === 'none' ? '' : curTransform);\n } else {\n transformMatrix = curStyle.MozTransform || curStyle.OTransform || curStyle.MsTransform || curStyle.msTransform || curStyle.transform || curStyle.getPropertyValue('transform').replace('translate(', 'matrix(1, 0, 0, 1,');\n matrix = transformMatrix.toString().split(',');\n }\n\n if (axis === 'x') {\n // Latest Chrome and webkits Fix\n if (window.WebKitCSSMatrix) curTransform = transformMatrix.m41;\n // Crazy IE10 Matrix\n else if (matrix.length === 16) curTransform = parseFloat(matrix[12]);\n // Normal Browsers\n else curTransform = parseFloat(matrix[4]);\n }\n if (axis === 'y') {\n // Latest Chrome and webkits Fix\n if (window.WebKitCSSMatrix) curTransform = transformMatrix.m42;\n // Crazy IE10 Matrix\n else if (matrix.length === 16) curTransform = parseFloat(matrix[13]);\n // Normal Browsers\n else curTransform = parseFloat(matrix[5]);\n }\n return curTransform || 0;\n },\n parseUrlQuery(url) {\n const query = {};\n let urlToParse = url || window.location.href;\n let i;\n let params;\n let param;\n let length;\n if (typeof urlToParse === 'string' && urlToParse.length) {\n urlToParse = urlToParse.indexOf('?') > -1 ? urlToParse.replace(/\\S*\\?/, '') : '';\n params = urlToParse.split('&').filter((paramsPart) => paramsPart !== '');\n length = params.length;\n\n for (i = 0; i < length; i += 1) {\n param = params[i].replace(/#\\S+/g, '').split('=');\n query[decodeURIComponent(param[0])] = typeof param[1] === 'undefined' ? undefined : decodeURIComponent(param[1]) || '';\n }\n }\n return query;\n },\n isObject(o) {\n return typeof o === 'object' && o !== null && o.constructor && o.constructor === Object;\n },\n extend(...args) {\n const to = Object(args[0]);\n for (let i = 1; i < args.length; i += 1) {\n const nextSource = args[i];\n if (nextSource !== undefined && nextSource !== null) {\n const keysArray = Object.keys(Object(nextSource));\n for (let nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex += 1) {\n const nextKey = keysArray[nextIndex];\n const desc = Object.getOwnPropertyDescriptor(nextSource, nextKey);\n if (desc !== undefined && desc.enumerable) {\n if (Utils.isObject(to[nextKey]) && Utils.isObject(nextSource[nextKey])) {\n Utils.extend(to[nextKey], nextSource[nextKey]);\n } else if (!Utils.isObject(to[nextKey]) && Utils.isObject(nextSource[nextKey])) {\n to[nextKey] = {};\n Utils.extend(to[nextKey], nextSource[nextKey]);\n } else {\n to[nextKey] = nextSource[nextKey];\n }\n }\n }\n }\n }\n return to;\n },\n};\n\nconst Support = (function Support() {\n return {\n touch: !!(('ontouchstart' in window) || (window.DocumentTouch && document$1 instanceof window.DocumentTouch)),\n\n pointerEvents: !!window.PointerEvent && ('maxTouchPoints' in window.navigator) && window.navigator.maxTouchPoints >= 0,\n\n observer: (function checkObserver() {\n return ('MutationObserver' in window || 'WebkitMutationObserver' in window);\n }()),\n\n passiveListener: (function checkPassiveListener() {\n let supportsPassive = false;\n try {\n const opts = Object.defineProperty({}, 'passive', {\n // eslint-disable-next-line\n get() {\n supportsPassive = true;\n },\n });\n window.addEventListener('testPassiveListener', null, opts);\n } catch (e) {\n // No support\n }\n return supportsPassive;\n }()),\n\n gestures: (function checkGestures() {\n return 'ongesturestart' in window;\n }()),\n };\n}());\n\nclass SwiperClass {\n constructor(params = {}) {\n const self = this;\n self.params = params;\n\n // Events\n self.eventsListeners = {};\n\n if (self.params && self.params.on) {\n Object.keys(self.params.on).forEach((eventName) => {\n self.on(eventName, self.params.on[eventName]);\n });\n }\n }\n\n on(events, handler, priority) {\n const self = this;\n if (typeof handler !== 'function') return self;\n const method = priority ? 'unshift' : 'push';\n events.split(' ').forEach((event) => {\n if (!self.eventsListeners[event]) self.eventsListeners[event] = [];\n self.eventsListeners[event][method](handler);\n });\n return self;\n }\n\n once(events, handler, priority) {\n const self = this;\n if (typeof handler !== 'function') return self;\n function onceHandler(...args) {\n self.off(events, onceHandler);\n if (onceHandler.f7proxy) {\n delete onceHandler.f7proxy;\n }\n handler.apply(self, args);\n }\n onceHandler.f7proxy = handler;\n return self.on(events, onceHandler, priority);\n }\n\n off(events, handler) {\n const self = this;\n if (!self.eventsListeners) return self;\n events.split(' ').forEach((event) => {\n if (typeof handler === 'undefined') {\n self.eventsListeners[event] = [];\n } else if (self.eventsListeners[event] && self.eventsListeners[event].length) {\n self.eventsListeners[event].forEach((eventHandler, index) => {\n if (eventHandler === handler || (eventHandler.f7proxy && eventHandler.f7proxy === handler)) {\n self.eventsListeners[event].splice(index, 1);\n }\n });\n }\n });\n return self;\n }\n\n emit(...args) {\n const self = this;\n if (!self.eventsListeners) return self;\n let events;\n let data;\n let context;\n if (typeof args[0] === 'string' || Array.isArray(args[0])) {\n events = args[0];\n data = args.slice(1, args.length);\n context = self;\n } else {\n events = args[0].events;\n data = args[0].data;\n context = args[0].context || self;\n }\n const eventsArray = Array.isArray(events) ? events : events.split(' ');\n eventsArray.forEach((event) => {\n if (self.eventsListeners && self.eventsListeners[event]) {\n const handlers = [];\n self.eventsListeners[event].forEach((eventHandler) => {\n handlers.push(eventHandler);\n });\n handlers.forEach((eventHandler) => {\n eventHandler.apply(context, data);\n });\n }\n });\n return self;\n }\n\n useModulesParams(instanceParams) {\n const instance = this;\n if (!instance.modules) return;\n Object.keys(instance.modules).forEach((moduleName) => {\n const module = instance.modules[moduleName];\n // Extend params\n if (module.params) {\n Utils.extend(instanceParams, module.params);\n }\n });\n }\n\n useModules(modulesParams = {}) {\n const instance = this;\n if (!instance.modules) return;\n Object.keys(instance.modules).forEach((moduleName) => {\n const module = instance.modules[moduleName];\n const moduleParams = modulesParams[moduleName] || {};\n // Extend instance methods and props\n if (module.instance) {\n Object.keys(module.instance).forEach((modulePropName) => {\n const moduleProp = module.instance[modulePropName];\n if (typeof moduleProp === 'function') {\n instance[modulePropName] = moduleProp.bind(instance);\n } else {\n instance[modulePropName] = moduleProp;\n }\n });\n }\n // Add event listeners\n if (module.on && instance.on) {\n Object.keys(module.on).forEach((moduleEventName) => {\n instance.on(moduleEventName, module.on[moduleEventName]);\n });\n }\n\n // Module create callback\n if (module.create) {\n module.create.bind(instance)(moduleParams);\n }\n });\n }\n\n static set components(components) {\n const Class = this;\n if (!Class.use) return;\n Class.use(components);\n }\n\n static installModule(module, ...params) {\n const Class = this;\n if (!Class.prototype.modules) Class.prototype.modules = {};\n const name = module.name || (`${Object.keys(Class.prototype.modules).length}_${Utils.now()}`);\n Class.prototype.modules[name] = module;\n // Prototype\n if (module.proto) {\n Object.keys(module.proto).forEach((key) => {\n Class.prototype[key] = module.proto[key];\n });\n }\n // Class\n if (module.static) {\n Object.keys(module.static).forEach((key) => {\n Class[key] = module.static[key];\n });\n }\n // Callback\n if (module.install) {\n module.install.apply(Class, params);\n }\n return Class;\n }\n\n static use(module, ...params) {\n const Class = this;\n if (Array.isArray(module)) {\n module.forEach((m) => Class.installModule(m));\n return Class;\n }\n return Class.installModule(module, ...params);\n }\n}\n\nfunction updateSize () {\n const swiper = this;\n let width;\n let height;\n const $el = swiper.$el;\n if (typeof swiper.params.width !== 'undefined') {\n width = swiper.params.width;\n } else {\n width = $el[0].clientWidth;\n }\n if (typeof swiper.params.height !== 'undefined') {\n height = swiper.params.height;\n } else {\n height = $el[0].clientHeight;\n }\n if ((width === 0 && swiper.isHorizontal()) || (height === 0 && swiper.isVertical())) {\n return;\n }\n\n // Subtract paddings\n width = width - parseInt($el.css('padding-left'), 10) - parseInt($el.css('padding-right'), 10);\n height = height - parseInt($el.css('padding-top'), 10) - parseInt($el.css('padding-bottom'), 10);\n\n Utils.extend(swiper, {\n width,\n height,\n size: swiper.isHorizontal() ? width : height,\n });\n}\n\nfunction updateSlides () {\n const swiper = this;\n const params = swiper.params;\n\n const {\n $wrapperEl, size: swiperSize, rtlTranslate: rtl, wrongRTL,\n } = swiper;\n const isVirtual = swiper.virtual && params.virtual.enabled;\n const previousSlidesLength = isVirtual ? swiper.virtual.slides.length : swiper.slides.length;\n const slides = $wrapperEl.children(`.${swiper.params.slideClass}`);\n const slidesLength = isVirtual ? swiper.virtual.slides.length : slides.length;\n let snapGrid = [];\n const slidesGrid = [];\n const slidesSizesGrid = [];\n\n function slidesForMargin(slideIndex) {\n if (!params.cssMode) return true;\n if (slideIndex === slides.length - 1) {\n return false;\n }\n return true;\n }\n\n let offsetBefore = params.slidesOffsetBefore;\n if (typeof offsetBefore === 'function') {\n offsetBefore = params.slidesOffsetBefore.call(swiper);\n }\n\n let offsetAfter = params.slidesOffsetAfter;\n if (typeof offsetAfter === 'function') {\n offsetAfter = params.slidesOffsetAfter.call(swiper);\n }\n\n const previousSnapGridLength = swiper.snapGrid.length;\n const previousSlidesGridLength = swiper.snapGrid.length;\n\n let spaceBetween = params.spaceBetween;\n let slidePosition = -offsetBefore;\n let prevSlideSize = 0;\n let index = 0;\n if (typeof swiperSize === 'undefined') {\n return;\n }\n if (typeof spaceBetween === 'string' && spaceBetween.indexOf('%') >= 0) {\n spaceBetween = (parseFloat(spaceBetween.replace('%', '')) / 100) * swiperSize;\n }\n\n swiper.virtualSize = -spaceBetween;\n\n // reset margins\n if (rtl) slides.css({ marginLeft: '', marginTop: '' });\n else slides.css({ marginRight: '', marginBottom: '' });\n\n let slidesNumberEvenToRows;\n if (params.slidesPerColumn > 1) {\n if (Math.floor(slidesLength / params.slidesPerColumn) === slidesLength / swiper.params.slidesPerColumn) {\n slidesNumberEvenToRows = slidesLength;\n } else {\n slidesNumberEvenToRows = Math.ceil(slidesLength / params.slidesPerColumn) * params.slidesPerColumn;\n }\n if (params.slidesPerView !== 'auto' && params.slidesPerColumnFill === 'row') {\n slidesNumberEvenToRows = Math.max(slidesNumberEvenToRows, params.slidesPerView * params.slidesPerColumn);\n }\n }\n\n // Calc slides\n let slideSize;\n const slidesPerColumn = params.slidesPerColumn;\n const slidesPerRow = slidesNumberEvenToRows / slidesPerColumn;\n const numFullColumns = Math.floor(slidesLength / params.slidesPerColumn);\n for (let i = 0; i < slidesLength; i += 1) {\n slideSize = 0;\n const slide = slides.eq(i);\n if (params.slidesPerColumn > 1) {\n // Set slides order\n let newSlideOrderIndex;\n let column;\n let row;\n if (params.slidesPerColumnFill === 'row' && params.slidesPerGroup > 1) {\n const groupIndex = Math.floor(i / (params.slidesPerGroup * params.slidesPerColumn));\n const slideIndexInGroup = i - params.slidesPerColumn * params.slidesPerGroup * groupIndex;\n const columnsInGroup = groupIndex === 0\n ? params.slidesPerGroup\n : Math.min(Math.ceil((slidesLength - groupIndex * slidesPerColumn * params.slidesPerGroup) / slidesPerColumn), params.slidesPerGroup);\n row = Math.floor(slideIndexInGroup / columnsInGroup);\n column = (slideIndexInGroup - row * columnsInGroup) + groupIndex * params.slidesPerGroup;\n\n newSlideOrderIndex = column + ((row * slidesNumberEvenToRows) / slidesPerColumn);\n slide\n .css({\n '-webkit-box-ordinal-group': newSlideOrderIndex,\n '-moz-box-ordinal-group': newSlideOrderIndex,\n '-ms-flex-order': newSlideOrderIndex,\n '-webkit-order': newSlideOrderIndex,\n order: newSlideOrderIndex,\n });\n } else if (params.slidesPerColumnFill === 'column') {\n column = Math.floor(i / slidesPerColumn);\n row = i - (column * slidesPerColumn);\n if (column > numFullColumns || (column === numFullColumns && row === slidesPerColumn - 1)) {\n row += 1;\n if (row >= slidesPerColumn) {\n row = 0;\n column += 1;\n }\n }\n } else {\n row = Math.floor(i / slidesPerRow);\n column = i - (row * slidesPerRow);\n }\n slide.css(\n `margin-${swiper.isHorizontal() ? 'top' : 'left'}`,\n (row !== 0 && params.spaceBetween) && (`${params.spaceBetween}px`)\n );\n }\n if (slide.css('display') === 'none') continue; // eslint-disable-line\n\n if (params.slidesPerView === 'auto') {\n const slideStyles = window.getComputedStyle(slide[0], null);\n const currentTransform = slide[0].style.transform;\n const currentWebKitTransform = slide[0].style.webkitTransform;\n if (currentTransform) {\n slide[0].style.transform = 'none';\n }\n if (currentWebKitTransform) {\n slide[0].style.webkitTransform = 'none';\n }\n if (params.roundLengths) {\n slideSize = swiper.isHorizontal()\n ? slide.outerWidth(true)\n : slide.outerHeight(true);\n } else {\n // eslint-disable-next-line\n if (swiper.isHorizontal()) {\n const width = parseFloat(slideStyles.getPropertyValue('width'));\n const paddingLeft = parseFloat(slideStyles.getPropertyValue('padding-left'));\n const paddingRight = parseFloat(slideStyles.getPropertyValue('padding-right'));\n const marginLeft = parseFloat(slideStyles.getPropertyValue('margin-left'));\n const marginRight = parseFloat(slideStyles.getPropertyValue('margin-right'));\n const boxSizing = slideStyles.getPropertyValue('box-sizing');\n if (boxSizing && boxSizing === 'border-box') {\n slideSize = width + marginLeft + marginRight;\n } else {\n slideSize = width + paddingLeft + paddingRight + marginLeft + marginRight;\n }\n } else {\n const height = parseFloat(slideStyles.getPropertyValue('height'));\n const paddingTop = parseFloat(slideStyles.getPropertyValue('padding-top'));\n const paddingBottom = parseFloat(slideStyles.getPropertyValue('padding-bottom'));\n const marginTop = parseFloat(slideStyles.getPropertyValue('margin-top'));\n const marginBottom = parseFloat(slideStyles.getPropertyValue('margin-bottom'));\n const boxSizing = slideStyles.getPropertyValue('box-sizing');\n if (boxSizing && boxSizing === 'border-box') {\n slideSize = height + marginTop + marginBottom;\n } else {\n slideSize = height + paddingTop + paddingBottom + marginTop + marginBottom;\n }\n }\n }\n if (currentTransform) {\n slide[0].style.transform = currentTransform;\n }\n if (currentWebKitTransform) {\n slide[0].style.webkitTransform = currentWebKitTransform;\n }\n if (params.roundLengths) slideSize = Math.floor(slideSize);\n } else {\n slideSize = (swiperSize - ((params.slidesPerView - 1) * spaceBetween)) / params.slidesPerView;\n if (params.roundLengths) slideSize = Math.floor(slideSize);\n\n if (slides[i]) {\n if (swiper.isHorizontal()) {\n slides[i].style.width = `${slideSize}px`;\n } else {\n slides[i].style.height = `${slideSize}px`;\n }\n }\n }\n if (slides[i]) {\n slides[i].swiperSlideSize = slideSize;\n }\n slidesSizesGrid.push(slideSize);\n\n\n if (params.centeredSlides) {\n slidePosition = slidePosition + (slideSize / 2) + (prevSlideSize / 2) + spaceBetween;\n if (prevSlideSize === 0 && i !== 0) slidePosition = slidePosition - (swiperSize / 2) - spaceBetween;\n if (i === 0) slidePosition = slidePosition - (swiperSize / 2) - spaceBetween;\n if (Math.abs(slidePosition) < 1 / 1000) slidePosition = 0;\n if (params.roundLengths) slidePosition = Math.floor(slidePosition);\n if ((index) % params.slidesPerGroup === 0) snapGrid.push(slidePosition);\n slidesGrid.push(slidePosition);\n } else {\n if (params.roundLengths) slidePosition = Math.floor(slidePosition);\n if ((index - Math.min(swiper.params.slidesPerGroupSkip, index)) % swiper.params.slidesPerGroup === 0) snapGrid.push(slidePosition);\n slidesGrid.push(slidePosition);\n slidePosition = slidePosition + slideSize + spaceBetween;\n }\n\n swiper.virtualSize += slideSize + spaceBetween;\n\n prevSlideSize = slideSize;\n\n index += 1;\n }\n swiper.virtualSize = Math.max(swiper.virtualSize, swiperSize) + offsetAfter;\n let newSlidesGrid;\n\n if (\n rtl && wrongRTL && (params.effect === 'slide' || params.effect === 'coverflow')) {\n $wrapperEl.css({ width: `${swiper.virtualSize + params.spaceBetween}px` });\n }\n if (params.setWrapperSize) {\n if (swiper.isHorizontal()) $wrapperEl.css({ width: `${swiper.virtualSize + params.spaceBetween}px` });\n else $wrapperEl.css({ height: `${swiper.virtualSize + params.spaceBetween}px` });\n }\n\n if (params.slidesPerColumn > 1) {\n swiper.virtualSize = (slideSize + params.spaceBetween) * slidesNumberEvenToRows;\n swiper.virtualSize = Math.ceil(swiper.virtualSize / params.slidesPerColumn) - params.spaceBetween;\n if (swiper.isHorizontal()) $wrapperEl.css({ width: `${swiper.virtualSize + params.spaceBetween}px` });\n else $wrapperEl.css({ height: `${swiper.virtualSize + params.spaceBetween}px` });\n if (params.centeredSlides) {\n newSlidesGrid = [];\n for (let i = 0; i < snapGrid.length; i += 1) {\n let slidesGridItem = snapGrid[i];\n if (params.roundLengths) slidesGridItem = Math.floor(slidesGridItem);\n if (snapGrid[i] < swiper.virtualSize + snapGrid[0]) newSlidesGrid.push(slidesGridItem);\n }\n snapGrid = newSlidesGrid;\n }\n }\n\n // Remove last grid elements depending on width\n if (!params.centeredSlides) {\n newSlidesGrid = [];\n for (let i = 0; i < snapGrid.length; i += 1) {\n let slidesGridItem = snapGrid[i];\n if (params.roundLengths) slidesGridItem = Math.floor(slidesGridItem);\n if (snapGrid[i] <= swiper.virtualSize - swiperSize) {\n newSlidesGrid.push(slidesGridItem);\n }\n }\n snapGrid = newSlidesGrid;\n if (Math.floor(swiper.virtualSize - swiperSize) - Math.floor(snapGrid[snapGrid.length - 1]) > 1) {\n snapGrid.push(swiper.virtualSize - swiperSize);\n }\n }\n if (snapGrid.length === 0) snapGrid = [0];\n\n if (params.spaceBetween !== 0) {\n if (swiper.isHorizontal()) {\n if (rtl) slides.filter(slidesForMargin).css({ marginLeft: `${spaceBetween}px` });\n else slides.filter(slidesForMargin).css({ marginRight: `${spaceBetween}px` });\n } else slides.filter(slidesForMargin).css({ marginBottom: `${spaceBetween}px` });\n }\n\n if (params.centeredSlides && params.centeredSlidesBounds) {\n let allSlidesSize = 0;\n slidesSizesGrid.forEach((slideSizeValue) => {\n allSlidesSize += slideSizeValue + (params.spaceBetween ? params.spaceBetween : 0);\n });\n allSlidesSize -= params.spaceBetween;\n const maxSnap = allSlidesSize - swiperSize;\n snapGrid = snapGrid.map((snap) => {\n if (snap < 0) return -offsetBefore;\n if (snap > maxSnap) return maxSnap + offsetAfter;\n return snap;\n });\n }\n\n if (params.centerInsufficientSlides) {\n let allSlidesSize = 0;\n slidesSizesGrid.forEach((slideSizeValue) => {\n allSlidesSize += slideSizeValue + (params.spaceBetween ? params.spaceBetween : 0);\n });\n allSlidesSize -= params.spaceBetween;\n if (allSlidesSize < swiperSize) {\n const allSlidesOffset = (swiperSize - allSlidesSize) / 2;\n snapGrid.forEach((snap, snapIndex) => {\n snapGrid[snapIndex] = snap - allSlidesOffset;\n });\n slidesGrid.forEach((snap, snapIndex) => {\n slidesGrid[snapIndex] = snap + allSlidesOffset;\n });\n }\n }\n\n Utils.extend(swiper, {\n slides,\n snapGrid,\n slidesGrid,\n slidesSizesGrid,\n });\n\n if (slidesLength !== previousSlidesLength) {\n swiper.emit('slidesLengthChange');\n }\n if (snapGrid.length !== previousSnapGridLength) {\n if (swiper.params.watchOverflow) swiper.checkOverflow();\n swiper.emit('snapGridLengthChange');\n }\n if (slidesGrid.length !== previousSlidesGridLength) {\n swiper.emit('slidesGridLengthChange');\n }\n\n if (params.watchSlidesProgress || params.watchSlidesVisibility) {\n swiper.updateSlidesOffset();\n }\n}\n\nfunction updateAutoHeight (speed) {\n const swiper = this;\n const activeSlides = [];\n let newHeight = 0;\n let i;\n if (typeof speed === 'number') {\n swiper.setTransition(speed);\n } else if (speed === true) {\n swiper.setTransition(swiper.params.speed);\n }\n // Find slides currently in view\n if (swiper.params.slidesPerView !== 'auto' && swiper.params.slidesPerView > 1) {\n if (swiper.params.centeredSlides) {\n swiper.visibleSlides.each((index, slide) => {\n activeSlides.push(slide);\n });\n } else {\n for (i = 0; i < Math.ceil(swiper.params.slidesPerView); i += 1) {\n const index = swiper.activeIndex + i;\n if (index > swiper.slides.length) break;\n activeSlides.push(swiper.slides.eq(index)[0]);\n }\n }\n } else {\n activeSlides.push(swiper.slides.eq(swiper.activeIndex)[0]);\n }\n\n // Find new height from highest slide in view\n for (i = 0; i < activeSlides.length; i += 1) {\n if (typeof activeSlides[i] !== 'undefined') {\n const height = activeSlides[i].offsetHeight;\n newHeight = height > newHeight ? height : newHeight;\n }\n }\n\n // Update Height\n if (newHeight) swiper.$wrapperEl.css('height', `${newHeight}px`);\n}\n\nfunction updateSlidesOffset () {\n const swiper = this;\n const slides = swiper.slides;\n for (let i = 0; i < slides.length; i += 1) {\n slides[i].swiperSlideOffset = swiper.isHorizontal() ? slides[i].offsetLeft : slides[i].offsetTop;\n }\n}\n\nfunction updateSlidesProgress (translate = (this && this.translate) || 0) {\n const swiper = this;\n const params = swiper.params;\n\n const { slides, rtlTranslate: rtl } = swiper;\n\n if (slides.length === 0) return;\n if (typeof slides[0].swiperSlideOffset === 'undefined') swiper.updateSlidesOffset();\n\n let offsetCenter = -translate;\n if (rtl) offsetCenter = translate;\n\n // Visible Slides\n slides.removeClass(params.slideVisibleClass);\n\n swiper.visibleSlidesIndexes = [];\n swiper.visibleSlides = [];\n\n for (let i = 0; i < slides.length; i += 1) {\n const slide = slides[i];\n const slideProgress = (\n (offsetCenter + (params.centeredSlides ? swiper.minTranslate() : 0)) - slide.swiperSlideOffset\n ) / (slide.swiperSlideSize + params.spaceBetween);\n if (params.watchSlidesVisibility || (params.centeredSlides && params.autoHeight)) {\n const slideBefore = -(offsetCenter - slide.swiperSlideOffset);\n const slideAfter = slideBefore + swiper.slidesSizesGrid[i];\n const isVisible = (slideBefore >= 0 && slideBefore < swiper.size - 1)\n || (slideAfter > 1 && slideAfter <= swiper.size)\n || (slideBefore <= 0 && slideAfter >= swiper.size);\n if (isVisible) {\n swiper.visibleSlides.push(slide);\n swiper.visibleSlidesIndexes.push(i);\n slides.eq(i).addClass(params.slideVisibleClass);\n }\n }\n slide.progress = rtl ? -slideProgress : slideProgress;\n }\n swiper.visibleSlides = $(swiper.visibleSlides);\n}\n\nfunction updateProgress (translate) {\n const swiper = this;\n if (typeof translate === 'undefined') {\n const multiplier = swiper.rtlTranslate ? -1 : 1;\n // eslint-disable-next-line\n translate = (swiper && swiper.translate && (swiper.translate * multiplier)) || 0;\n }\n const params = swiper.params;\n const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n let { progress, isBeginning, isEnd } = swiper;\n const wasBeginning = isBeginning;\n const wasEnd = isEnd;\n if (translatesDiff === 0) {\n progress = 0;\n isBeginning = true;\n isEnd = true;\n } else {\n progress = (translate - swiper.minTranslate()) / (translatesDiff);\n isBeginning = progress <= 0;\n isEnd = progress >= 1;\n }\n Utils.extend(swiper, {\n progress,\n isBeginning,\n isEnd,\n });\n\n if (params.watchSlidesProgress || params.watchSlidesVisibility || (params.centeredSlides && params.autoHeight)) swiper.updateSlidesProgress(translate);\n\n if (isBeginning && !wasBeginning) {\n swiper.emit('reachBeginning toEdge');\n }\n if (isEnd && !wasEnd) {\n swiper.emit('reachEnd toEdge');\n }\n if ((wasBeginning && !isBeginning) || (wasEnd && !isEnd)) {\n swiper.emit('fromEdge');\n }\n\n swiper.emit('progress', progress);\n}\n\nfunction updateSlidesClasses () {\n const swiper = this;\n\n const {\n slides, params, $wrapperEl, activeIndex, realIndex,\n } = swiper;\n const isVirtual = swiper.virtual && params.virtual.enabled;\n\n slides.removeClass(`${params.slideActiveClass} ${params.slideNextClass} ${params.slidePrevClass} ${params.slideDuplicateActiveClass} ${params.slideDuplicateNextClass} ${params.slideDuplicatePrevClass}`);\n\n let activeSlide;\n if (isVirtual) {\n activeSlide = swiper.$wrapperEl.find(`.${params.slideClass}[data-swiper-slide-index=\"${activeIndex}\"]`);\n } else {\n activeSlide = slides.eq(activeIndex);\n }\n\n // Active classes\n activeSlide.addClass(params.slideActiveClass);\n\n if (params.loop) {\n // Duplicate to all looped slides\n if (activeSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children(`.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index=\"${realIndex}\"]`)\n .addClass(params.slideDuplicateActiveClass);\n } else {\n $wrapperEl\n .children(`.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index=\"${realIndex}\"]`)\n .addClass(params.slideDuplicateActiveClass);\n }\n }\n // Next Slide\n let nextSlide = activeSlide.nextAll(`.${params.slideClass}`).eq(0).addClass(params.slideNextClass);\n if (params.loop && nextSlide.length === 0) {\n nextSlide = slides.eq(0);\n nextSlide.addClass(params.slideNextClass);\n }\n // Prev Slide\n let prevSlide = activeSlide.prevAll(`.${params.slideClass}`).eq(0).addClass(params.slidePrevClass);\n if (params.loop && prevSlide.length === 0) {\n prevSlide = slides.eq(-1);\n prevSlide.addClass(params.slidePrevClass);\n }\n if (params.loop) {\n // Duplicate to all looped slides\n if (nextSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children(`.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index=\"${nextSlide.attr('data-swiper-slide-index')}\"]`)\n .addClass(params.slideDuplicateNextClass);\n } else {\n $wrapperEl\n .children(`.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index=\"${nextSlide.attr('data-swiper-slide-index')}\"]`)\n .addClass(params.slideDuplicateNextClass);\n }\n if (prevSlide.hasClass(params.slideDuplicateClass)) {\n $wrapperEl\n .children(`.${params.slideClass}:not(.${params.slideDuplicateClass})[data-swiper-slide-index=\"${prevSlide.attr('data-swiper-slide-index')}\"]`)\n .addClass(params.slideDuplicatePrevClass);\n } else {\n $wrapperEl\n .children(`.${params.slideClass}.${params.slideDuplicateClass}[data-swiper-slide-index=\"${prevSlide.attr('data-swiper-slide-index')}\"]`)\n .addClass(params.slideDuplicatePrevClass);\n }\n }\n}\n\nfunction updateActiveIndex (newActiveIndex) {\n const swiper = this;\n const translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate;\n const {\n slidesGrid, snapGrid, params, activeIndex: previousIndex, realIndex: previousRealIndex, snapIndex: previousSnapIndex,\n } = swiper;\n let activeIndex = newActiveIndex;\n let snapIndex;\n if (typeof activeIndex === 'undefined') {\n for (let i = 0; i < slidesGrid.length; i += 1) {\n if (typeof slidesGrid[i + 1] !== 'undefined') {\n if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1] - ((slidesGrid[i + 1] - slidesGrid[i]) / 2)) {\n activeIndex = i;\n } else if (translate >= slidesGrid[i] && translate < slidesGrid[i + 1]) {\n activeIndex = i + 1;\n }\n } else if (translate >= slidesGrid[i]) {\n activeIndex = i;\n }\n }\n // Normalize slideIndex\n if (params.normalizeSlideIndex) {\n if (activeIndex < 0 || typeof activeIndex === 'undefined') activeIndex = 0;\n }\n }\n if (snapGrid.indexOf(translate) >= 0) {\n snapIndex = snapGrid.indexOf(translate);\n } else {\n const skip = Math.min(params.slidesPerGroupSkip, activeIndex);\n snapIndex = skip + Math.floor((activeIndex - skip) / params.slidesPerGroup);\n }\n if (snapIndex >= snapGrid.length) snapIndex = snapGrid.length - 1;\n if (activeIndex === previousIndex) {\n if (snapIndex !== previousSnapIndex) {\n swiper.snapIndex = snapIndex;\n swiper.emit('snapIndexChange');\n }\n return;\n }\n\n // Get real index\n const realIndex = parseInt(swiper.slides.eq(activeIndex).attr('data-swiper-slide-index') || activeIndex, 10);\n\n Utils.extend(swiper, {\n snapIndex,\n realIndex,\n previousIndex,\n activeIndex,\n });\n swiper.emit('activeIndexChange');\n swiper.emit('snapIndexChange');\n if (previousRealIndex !== realIndex) {\n swiper.emit('realIndexChange');\n }\n if (swiper.initialized || swiper.params.runCallbacksOnInit) {\n swiper.emit('slideChange');\n }\n}\n\nfunction updateClickedSlide (e) {\n const swiper = this;\n const params = swiper.params;\n const slide = $(e.target).closest(`.${params.slideClass}`)[0];\n let slideFound = false;\n if (slide) {\n for (let i = 0; i < swiper.slides.length; i += 1) {\n if (swiper.slides[i] === slide) slideFound = true;\n }\n }\n\n if (slide && slideFound) {\n swiper.clickedSlide = slide;\n if (swiper.virtual && swiper.params.virtual.enabled) {\n swiper.clickedIndex = parseInt($(slide).attr('data-swiper-slide-index'), 10);\n } else {\n swiper.clickedIndex = $(slide).index();\n }\n } else {\n swiper.clickedSlide = undefined;\n swiper.clickedIndex = undefined;\n return;\n }\n if (params.slideToClickedSlide && swiper.clickedIndex !== undefined && swiper.clickedIndex !== swiper.activeIndex) {\n swiper.slideToClickedSlide();\n }\n}\n\nvar update = {\n updateSize,\n updateSlides,\n updateAutoHeight,\n updateSlidesOffset,\n updateSlidesProgress,\n updateProgress,\n updateSlidesClasses,\n updateActiveIndex,\n updateClickedSlide,\n};\n\nfunction getTranslate (axis = this.isHorizontal() ? 'x' : 'y') {\n const swiper = this;\n\n const {\n params, rtlTranslate: rtl, translate, $wrapperEl,\n } = swiper;\n\n if (params.virtualTranslate) {\n return rtl ? -translate : translate;\n }\n if (params.cssMode) {\n return translate;\n }\n\n let currentTranslate = Utils.getTranslate($wrapperEl[0], axis);\n if (rtl) currentTranslate = -currentTranslate;\n\n return currentTranslate || 0;\n}\n\nfunction setTranslate (translate, byController) {\n const swiper = this;\n const {\n rtlTranslate: rtl, params, $wrapperEl, wrapperEl, progress,\n } = swiper;\n let x = 0;\n let y = 0;\n const z = 0;\n\n if (swiper.isHorizontal()) {\n x = rtl ? -translate : translate;\n } else {\n y = translate;\n }\n\n if (params.roundLengths) {\n x = Math.floor(x);\n y = Math.floor(y);\n }\n\n if (params.cssMode) {\n wrapperEl[swiper.isHorizontal() ? 'scrollLeft' : 'scrollTop'] = swiper.isHorizontal() ? -x : -y;\n } else if (!params.virtualTranslate) {\n $wrapperEl.transform(`translate3d(${x}px, ${y}px, ${z}px)`);\n }\n swiper.previousTranslate = swiper.translate;\n swiper.translate = swiper.isHorizontal() ? x : y;\n\n // Check if we need to update progress\n let newProgress;\n const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n if (translatesDiff === 0) {\n newProgress = 0;\n } else {\n newProgress = (translate - swiper.minTranslate()) / (translatesDiff);\n }\n if (newProgress !== progress) {\n swiper.updateProgress(translate);\n }\n\n swiper.emit('setTranslate', swiper.translate, byController);\n}\n\nfunction minTranslate () {\n return (-this.snapGrid[0]);\n}\n\nfunction maxTranslate () {\n return (-this.snapGrid[this.snapGrid.length - 1]);\n}\n\nfunction translateTo (translate = 0, speed = this.params.speed, runCallbacks = true, translateBounds = true, internal) {\n const swiper = this;\n\n const {\n params,\n wrapperEl,\n } = swiper;\n\n if (swiper.animating && params.preventInteractionOnTransition) {\n return false;\n }\n\n const minTranslate = swiper.minTranslate();\n const maxTranslate = swiper.maxTranslate();\n let newTranslate;\n if (translateBounds && translate > minTranslate) newTranslate = minTranslate;\n else if (translateBounds && translate < maxTranslate) newTranslate = maxTranslate;\n else newTranslate = translate;\n\n // Update progress\n swiper.updateProgress(newTranslate);\n\n if (params.cssMode) {\n const isH = swiper.isHorizontal();\n if (speed === 0) {\n wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = -newTranslate;\n } else {\n // eslint-disable-next-line\n if (wrapperEl.scrollTo) {\n wrapperEl.scrollTo({\n [isH ? 'left' : 'top']: -newTranslate,\n behavior: 'smooth',\n });\n } else {\n wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = -newTranslate;\n }\n }\n return true;\n }\n\n if (speed === 0) {\n swiper.setTransition(0);\n swiper.setTranslate(newTranslate);\n if (runCallbacks) {\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.emit('transitionEnd');\n }\n } else {\n swiper.setTransition(speed);\n swiper.setTranslate(newTranslate);\n if (runCallbacks) {\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.emit('transitionStart');\n }\n if (!swiper.animating) {\n swiper.animating = true;\n if (!swiper.onTranslateToWrapperTransitionEnd) {\n swiper.onTranslateToWrapperTransitionEnd = function transitionEnd(e) {\n if (!swiper || swiper.destroyed) return;\n if (e.target !== this) return;\n swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.onTranslateToWrapperTransitionEnd);\n swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.onTranslateToWrapperTransitionEnd);\n swiper.onTranslateToWrapperTransitionEnd = null;\n delete swiper.onTranslateToWrapperTransitionEnd;\n if (runCallbacks) {\n swiper.emit('transitionEnd');\n }\n };\n }\n swiper.$wrapperEl[0].addEventListener('transitionend', swiper.onTranslateToWrapperTransitionEnd);\n swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.onTranslateToWrapperTransitionEnd);\n }\n }\n\n return true;\n}\n\nvar translate = {\n getTranslate,\n setTranslate,\n minTranslate,\n maxTranslate,\n translateTo,\n};\n\nfunction setTransition (duration, byController) {\n const swiper = this;\n\n if (!swiper.params.cssMode) {\n swiper.$wrapperEl.transition(duration);\n }\n\n swiper.emit('setTransition', duration, byController);\n}\n\nfunction transitionStart (runCallbacks = true, direction) {\n const swiper = this;\n const { activeIndex, params, previousIndex } = swiper;\n if (params.cssMode) return;\n if (params.autoHeight) {\n swiper.updateAutoHeight();\n }\n\n let dir = direction;\n if (!dir) {\n if (activeIndex > previousIndex) dir = 'next';\n else if (activeIndex < previousIndex) dir = 'prev';\n else dir = 'reset';\n }\n\n swiper.emit('transitionStart');\n\n if (runCallbacks && activeIndex !== previousIndex) {\n if (dir === 'reset') {\n swiper.emit('slideResetTransitionStart');\n return;\n }\n swiper.emit('slideChangeTransitionStart');\n if (dir === 'next') {\n swiper.emit('slideNextTransitionStart');\n } else {\n swiper.emit('slidePrevTransitionStart');\n }\n }\n}\n\nfunction transitionEnd (runCallbacks = true, direction) {\n const swiper = this;\n const { activeIndex, previousIndex, params } = swiper;\n swiper.animating = false;\n if (params.cssMode) return;\n swiper.setTransition(0);\n\n let dir = direction;\n if (!dir) {\n if (activeIndex > previousIndex) dir = 'next';\n else if (activeIndex < previousIndex) dir = 'prev';\n else dir = 'reset';\n }\n\n swiper.emit('transitionEnd');\n\n if (runCallbacks && activeIndex !== previousIndex) {\n if (dir === 'reset') {\n swiper.emit('slideResetTransitionEnd');\n return;\n }\n swiper.emit('slideChangeTransitionEnd');\n if (dir === 'next') {\n swiper.emit('slideNextTransitionEnd');\n } else {\n swiper.emit('slidePrevTransitionEnd');\n }\n }\n}\n\nvar transition = {\n setTransition,\n transitionStart,\n transitionEnd,\n};\n\nfunction slideTo (index = 0, speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n let slideIndex = index;\n if (slideIndex < 0) slideIndex = 0;\n\n const {\n params, snapGrid, slidesGrid, previousIndex, activeIndex, rtlTranslate: rtl, wrapperEl,\n } = swiper;\n if (swiper.animating && params.preventInteractionOnTransition) {\n return false;\n }\n\n const skip = Math.min(swiper.params.slidesPerGroupSkip, slideIndex);\n let snapIndex = skip + Math.floor((slideIndex - skip) / swiper.params.slidesPerGroup);\n if (snapIndex >= snapGrid.length) snapIndex = snapGrid.length - 1;\n\n if ((activeIndex || params.initialSlide || 0) === (previousIndex || 0) && runCallbacks) {\n swiper.emit('beforeSlideChangeStart');\n }\n\n const translate = -snapGrid[snapIndex];\n\n // Update progress\n swiper.updateProgress(translate);\n\n // Normalize slideIndex\n if (params.normalizeSlideIndex) {\n for (let i = 0; i < slidesGrid.length; i += 1) {\n if (-Math.floor(translate * 100) >= Math.floor(slidesGrid[i] * 100)) {\n slideIndex = i;\n }\n }\n }\n // Directions locks\n if (swiper.initialized && slideIndex !== activeIndex) {\n if (!swiper.allowSlideNext && translate < swiper.translate && translate < swiper.minTranslate()) {\n return false;\n }\n if (!swiper.allowSlidePrev && translate > swiper.translate && translate > swiper.maxTranslate()) {\n if ((activeIndex || 0) !== slideIndex) return false;\n }\n }\n\n let direction;\n if (slideIndex > activeIndex) direction = 'next';\n else if (slideIndex < activeIndex) direction = 'prev';\n else direction = 'reset';\n\n\n // Update Index\n if ((rtl && -translate === swiper.translate) || (!rtl && translate === swiper.translate)) {\n swiper.updateActiveIndex(slideIndex);\n // Update Height\n if (params.autoHeight) {\n swiper.updateAutoHeight();\n }\n swiper.updateSlidesClasses();\n if (params.effect !== 'slide') {\n swiper.setTranslate(translate);\n }\n if (direction !== 'reset') {\n swiper.transitionStart(runCallbacks, direction);\n swiper.transitionEnd(runCallbacks, direction);\n }\n return false;\n }\n if (params.cssMode) {\n const isH = swiper.isHorizontal();\n let t = -translate;\n if (rtl) {\n t = wrapperEl.scrollWidth - wrapperEl.offsetWidth - t;\n }\n if (speed === 0) {\n wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = t;\n } else {\n // eslint-disable-next-line\n if (wrapperEl.scrollTo) {\n wrapperEl.scrollTo({\n [isH ? 'left' : 'top']: t,\n behavior: 'smooth',\n });\n } else {\n wrapperEl[isH ? 'scrollLeft' : 'scrollTop'] = t;\n }\n }\n return true;\n }\n\n if (speed === 0) {\n swiper.setTransition(0);\n swiper.setTranslate(translate);\n swiper.updateActiveIndex(slideIndex);\n swiper.updateSlidesClasses();\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.transitionStart(runCallbacks, direction);\n swiper.transitionEnd(runCallbacks, direction);\n } else {\n swiper.setTransition(speed);\n swiper.setTranslate(translate);\n swiper.updateActiveIndex(slideIndex);\n swiper.updateSlidesClasses();\n swiper.emit('beforeTransitionStart', speed, internal);\n swiper.transitionStart(runCallbacks, direction);\n if (!swiper.animating) {\n swiper.animating = true;\n if (!swiper.onSlideToWrapperTransitionEnd) {\n swiper.onSlideToWrapperTransitionEnd = function transitionEnd(e) {\n if (!swiper || swiper.destroyed) return;\n if (e.target !== this) return;\n swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd);\n swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd);\n swiper.onSlideToWrapperTransitionEnd = null;\n delete swiper.onSlideToWrapperTransitionEnd;\n swiper.transitionEnd(runCallbacks, direction);\n };\n }\n swiper.$wrapperEl[0].addEventListener('transitionend', swiper.onSlideToWrapperTransitionEnd);\n swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.onSlideToWrapperTransitionEnd);\n }\n }\n\n return true;\n}\n\nfunction slideToLoop (index = 0, speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n let newIndex = index;\n if (swiper.params.loop) {\n newIndex += swiper.loopedSlides;\n }\n\n return swiper.slideTo(newIndex, speed, runCallbacks, internal);\n}\n\n/* eslint no-unused-vars: \"off\" */\nfunction slideNext (speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n const { params, animating } = swiper;\n const increment = swiper.activeIndex < params.slidesPerGroupSkip ? 1 : params.slidesPerGroup;\n if (params.loop) {\n if (animating) return false;\n swiper.loopFix();\n // eslint-disable-next-line\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n }\n return swiper.slideTo(swiper.activeIndex + increment, speed, runCallbacks, internal);\n}\n\n/* eslint no-unused-vars: \"off\" */\nfunction slidePrev (speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n const {\n params, animating, snapGrid, slidesGrid, rtlTranslate,\n } = swiper;\n\n if (params.loop) {\n if (animating) return false;\n swiper.loopFix();\n // eslint-disable-next-line\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n }\n const translate = rtlTranslate ? swiper.translate : -swiper.translate;\n function normalize(val) {\n if (val < 0) return -Math.floor(Math.abs(val));\n return Math.floor(val);\n }\n const normalizedTranslate = normalize(translate);\n const normalizedSnapGrid = snapGrid.map((val) => normalize(val));\n const normalizedSlidesGrid = slidesGrid.map((val) => normalize(val));\n\n const currentSnap = snapGrid[normalizedSnapGrid.indexOf(normalizedTranslate)];\n let prevSnap = snapGrid[normalizedSnapGrid.indexOf(normalizedTranslate) - 1];\n if (typeof prevSnap === 'undefined' && params.cssMode) {\n snapGrid.forEach((snap) => {\n if (!prevSnap && normalizedTranslate >= snap) prevSnap = snap;\n });\n }\n let prevIndex;\n if (typeof prevSnap !== 'undefined') {\n prevIndex = slidesGrid.indexOf(prevSnap);\n if (prevIndex < 0) prevIndex = swiper.activeIndex - 1;\n }\n return swiper.slideTo(prevIndex, speed, runCallbacks, internal);\n}\n\n/* eslint no-unused-vars: \"off\" */\nfunction slideReset (speed = this.params.speed, runCallbacks = true, internal) {\n const swiper = this;\n return swiper.slideTo(swiper.activeIndex, speed, runCallbacks, internal);\n}\n\n/* eslint no-unused-vars: \"off\" */\nfunction slideToClosest (speed = this.params.speed, runCallbacks = true, internal, threshold = 0.5) {\n const swiper = this;\n let index = swiper.activeIndex;\n const skip = Math.min(swiper.params.slidesPerGroupSkip, index);\n const snapIndex = skip + Math.floor((index - skip) / swiper.params.slidesPerGroup);\n\n const translate = swiper.rtlTranslate ? swiper.translate : -swiper.translate;\n\n if (translate >= swiper.snapGrid[snapIndex]) {\n // The current translate is on or after the current snap index, so the choice\n // is between the current index and the one after it.\n const currentSnap = swiper.snapGrid[snapIndex];\n const nextSnap = swiper.snapGrid[snapIndex + 1];\n if ((translate - currentSnap) > (nextSnap - currentSnap) * threshold) {\n index += swiper.params.slidesPerGroup;\n }\n } else {\n // The current translate is before the current snap index, so the choice\n // is between the current index and the one before it.\n const prevSnap = swiper.snapGrid[snapIndex - 1];\n const currentSnap = swiper.snapGrid[snapIndex];\n if ((translate - prevSnap) <= (currentSnap - prevSnap) * threshold) {\n index -= swiper.params.slidesPerGroup;\n }\n }\n index = Math.max(index, 0);\n index = Math.min(index, swiper.slidesGrid.length - 1);\n\n return swiper.slideTo(index, speed, runCallbacks, internal);\n}\n\nfunction slideToClickedSlide () {\n const swiper = this;\n const { params, $wrapperEl } = swiper;\n\n const slidesPerView = params.slidesPerView === 'auto' ? swiper.slidesPerViewDynamic() : params.slidesPerView;\n let slideToIndex = swiper.clickedIndex;\n let realIndex;\n if (params.loop) {\n if (swiper.animating) return;\n realIndex = parseInt($(swiper.clickedSlide).attr('data-swiper-slide-index'), 10);\n if (params.centeredSlides) {\n if (\n (slideToIndex < swiper.loopedSlides - (slidesPerView / 2))\n || (slideToIndex > (swiper.slides.length - swiper.loopedSlides) + (slidesPerView / 2))\n ) {\n swiper.loopFix();\n slideToIndex = $wrapperEl\n .children(`.${params.slideClass}[data-swiper-slide-index=\"${realIndex}\"]:not(.${params.slideDuplicateClass})`)\n .eq(0)\n .index();\n\n Utils.nextTick(() => {\n swiper.slideTo(slideToIndex);\n });\n } else {\n swiper.slideTo(slideToIndex);\n }\n } else if (slideToIndex > swiper.slides.length - slidesPerView) {\n swiper.loopFix();\n slideToIndex = $wrapperEl\n .children(`.${params.slideClass}[data-swiper-slide-index=\"${realIndex}\"]:not(.${params.slideDuplicateClass})`)\n .eq(0)\n .index();\n\n Utils.nextTick(() => {\n swiper.slideTo(slideToIndex);\n });\n } else {\n swiper.slideTo(slideToIndex);\n }\n } else {\n swiper.slideTo(slideToIndex);\n }\n}\n\nvar slide = {\n slideTo,\n slideToLoop,\n slideNext,\n slidePrev,\n slideReset,\n slideToClosest,\n slideToClickedSlide,\n};\n\nfunction loopCreate () {\n const swiper = this;\n const { params, $wrapperEl } = swiper;\n // Remove duplicated slides\n $wrapperEl.children(`.${params.slideClass}.${params.slideDuplicateClass}`).remove();\n\n let slides = $wrapperEl.children(`.${params.slideClass}`);\n\n if (params.loopFillGroupWithBlank) {\n const blankSlidesNum = params.slidesPerGroup - (slides.length % params.slidesPerGroup);\n if (blankSlidesNum !== params.slidesPerGroup) {\n for (let i = 0; i < blankSlidesNum; i += 1) {\n const blankNode = $(document$1.createElement('div')).addClass(`${params.slideClass} ${params.slideBlankClass}`);\n $wrapperEl.append(blankNode);\n }\n slides = $wrapperEl.children(`.${params.slideClass}`);\n }\n }\n\n if (params.slidesPerView === 'auto' && !params.loopedSlides) params.loopedSlides = slides.length;\n\n swiper.loopedSlides = Math.ceil(parseFloat(params.loopedSlides || params.slidesPerView, 10));\n swiper.loopedSlides += params.loopAdditionalSlides;\n if (swiper.loopedSlides > slides.length) {\n swiper.loopedSlides = slides.length;\n }\n\n const prependSlides = [];\n const appendSlides = [];\n slides.each((index, el) => {\n const slide = $(el);\n if (index < swiper.loopedSlides) appendSlides.push(el);\n if (index < slides.length && index >= slides.length - swiper.loopedSlides) prependSlides.push(el);\n slide.attr('data-swiper-slide-index', index);\n });\n for (let i = 0; i < appendSlides.length; i += 1) {\n $wrapperEl.append($(appendSlides[i].cloneNode(true)).addClass(params.slideDuplicateClass));\n }\n for (let i = prependSlides.length - 1; i >= 0; i -= 1) {\n $wrapperEl.prepend($(prependSlides[i].cloneNode(true)).addClass(params.slideDuplicateClass));\n }\n}\n\nfunction loopFix () {\n const swiper = this;\n\n swiper.emit('beforeLoopFix');\n\n const {\n activeIndex, slides, loopedSlides, allowSlidePrev, allowSlideNext, snapGrid, rtlTranslate: rtl,\n } = swiper;\n let newIndex;\n swiper.allowSlidePrev = true;\n swiper.allowSlideNext = true;\n\n const snapTranslate = -snapGrid[activeIndex];\n const diff = snapTranslate - swiper.getTranslate();\n\n // Fix For Negative Oversliding\n if (activeIndex < loopedSlides) {\n newIndex = (slides.length - (loopedSlides * 3)) + activeIndex;\n newIndex += loopedSlides;\n const slideChanged = swiper.slideTo(newIndex, 0, false, true);\n if (slideChanged && diff !== 0) {\n swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff);\n }\n } else if (activeIndex >= slides.length - loopedSlides) {\n // Fix For Positive Oversliding\n newIndex = -slides.length + activeIndex + loopedSlides;\n newIndex += loopedSlides;\n const slideChanged = swiper.slideTo(newIndex, 0, false, true);\n if (slideChanged && diff !== 0) {\n swiper.setTranslate((rtl ? -swiper.translate : swiper.translate) - diff);\n }\n }\n swiper.allowSlidePrev = allowSlidePrev;\n swiper.allowSlideNext = allowSlideNext;\n\n swiper.emit('loopFix');\n}\n\nfunction loopDestroy () {\n const swiper = this;\n const { $wrapperEl, params, slides } = swiper;\n $wrapperEl.children(`.${params.slideClass}.${params.slideDuplicateClass},.${params.slideClass}.${params.slideBlankClass}`).remove();\n slides.removeAttr('data-swiper-slide-index');\n}\n\nvar loop = {\n loopCreate,\n loopFix,\n loopDestroy,\n};\n\nfunction setGrabCursor (moving) {\n const swiper = this;\n if (Support.touch || !swiper.params.simulateTouch || (swiper.params.watchOverflow && swiper.isLocked) || swiper.params.cssMode) return;\n const el = swiper.el;\n el.style.cursor = 'move';\n el.style.cursor = moving ? '-webkit-grabbing' : '-webkit-grab';\n el.style.cursor = moving ? '-moz-grabbin' : '-moz-grab';\n el.style.cursor = moving ? 'grabbing' : 'grab';\n}\n\nfunction unsetGrabCursor () {\n const swiper = this;\n if (Support.touch || (swiper.params.watchOverflow && swiper.isLocked) || swiper.params.cssMode) return;\n swiper.el.style.cursor = '';\n}\n\nvar grabCursor = {\n setGrabCursor,\n unsetGrabCursor,\n};\n\nfunction appendSlide (slides) {\n const swiper = this;\n const { $wrapperEl, params } = swiper;\n if (params.loop) {\n swiper.loopDestroy();\n }\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) $wrapperEl.append(slides[i]);\n }\n } else {\n $wrapperEl.append(slides);\n }\n if (params.loop) {\n swiper.loopCreate();\n }\n if (!(params.observer && Support.observer)) {\n swiper.update();\n }\n}\n\nfunction prependSlide (slides) {\n const swiper = this;\n const { params, $wrapperEl, activeIndex } = swiper;\n\n if (params.loop) {\n swiper.loopDestroy();\n }\n let newActiveIndex = activeIndex + 1;\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) $wrapperEl.prepend(slides[i]);\n }\n newActiveIndex = activeIndex + slides.length;\n } else {\n $wrapperEl.prepend(slides);\n }\n if (params.loop) {\n swiper.loopCreate();\n }\n if (!(params.observer && Support.observer)) {\n swiper.update();\n }\n swiper.slideTo(newActiveIndex, 0, false);\n}\n\nfunction addSlide (index, slides) {\n const swiper = this;\n const { $wrapperEl, params, activeIndex } = swiper;\n let activeIndexBuffer = activeIndex;\n if (params.loop) {\n activeIndexBuffer -= swiper.loopedSlides;\n swiper.loopDestroy();\n swiper.slides = $wrapperEl.children(`.${params.slideClass}`);\n }\n const baseLength = swiper.slides.length;\n if (index <= 0) {\n swiper.prependSlide(slides);\n return;\n }\n if (index >= baseLength) {\n swiper.appendSlide(slides);\n return;\n }\n let newActiveIndex = activeIndexBuffer > index ? activeIndexBuffer + 1 : activeIndexBuffer;\n\n const slidesBuffer = [];\n for (let i = baseLength - 1; i >= index; i -= 1) {\n const currentSlide = swiper.slides.eq(i);\n currentSlide.remove();\n slidesBuffer.unshift(currentSlide);\n }\n\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) $wrapperEl.append(slides[i]);\n }\n newActiveIndex = activeIndexBuffer > index ? activeIndexBuffer + slides.length : activeIndexBuffer;\n } else {\n $wrapperEl.append(slides);\n }\n\n for (let i = 0; i < slidesBuffer.length; i += 1) {\n $wrapperEl.append(slidesBuffer[i]);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n if (!(params.observer && Support.observer)) {\n swiper.update();\n }\n if (params.loop) {\n swiper.slideTo(newActiveIndex + swiper.loopedSlides, 0, false);\n } else {\n swiper.slideTo(newActiveIndex, 0, false);\n }\n}\n\nfunction removeSlide (slidesIndexes) {\n const swiper = this;\n const { params, $wrapperEl, activeIndex } = swiper;\n\n let activeIndexBuffer = activeIndex;\n if (params.loop) {\n activeIndexBuffer -= swiper.loopedSlides;\n swiper.loopDestroy();\n swiper.slides = $wrapperEl.children(`.${params.slideClass}`);\n }\n let newActiveIndex = activeIndexBuffer;\n let indexToRemove;\n\n if (typeof slidesIndexes === 'object' && 'length' in slidesIndexes) {\n for (let i = 0; i < slidesIndexes.length; i += 1) {\n indexToRemove = slidesIndexes[i];\n if (swiper.slides[indexToRemove]) swiper.slides.eq(indexToRemove).remove();\n if (indexToRemove < newActiveIndex) newActiveIndex -= 1;\n }\n newActiveIndex = Math.max(newActiveIndex, 0);\n } else {\n indexToRemove = slidesIndexes;\n if (swiper.slides[indexToRemove]) swiper.slides.eq(indexToRemove).remove();\n if (indexToRemove < newActiveIndex) newActiveIndex -= 1;\n newActiveIndex = Math.max(newActiveIndex, 0);\n }\n\n if (params.loop) {\n swiper.loopCreate();\n }\n\n if (!(params.observer && Support.observer)) {\n swiper.update();\n }\n if (params.loop) {\n swiper.slideTo(newActiveIndex + swiper.loopedSlides, 0, false);\n } else {\n swiper.slideTo(newActiveIndex, 0, false);\n }\n}\n\nfunction removeAllSlides () {\n const swiper = this;\n\n const slidesIndexes = [];\n for (let i = 0; i < swiper.slides.length; i += 1) {\n slidesIndexes.push(i);\n }\n swiper.removeSlide(slidesIndexes);\n}\n\nvar manipulation = {\n appendSlide,\n prependSlide,\n addSlide,\n removeSlide,\n removeAllSlides,\n};\n\nconst Device = (function Device() {\n const platform = window.navigator.platform;\n const ua = window.navigator.userAgent;\n\n const device = {\n ios: false,\n android: false,\n androidChrome: false,\n desktop: false,\n iphone: false,\n ipod: false,\n ipad: false,\n edge: false,\n ie: false,\n firefox: false,\n macos: false,\n windows: false,\n cordova: !!(window.cordova || window.phonegap),\n phonegap: !!(window.cordova || window.phonegap),\n electron: false,\n };\n\n const screenWidth = window.screen.width;\n const screenHeight = window.screen.height;\n\n const android = ua.match(/(Android);?[\\s\\/]+([\\d.]+)?/); // eslint-disable-line\n let ipad = ua.match(/(iPad).*OS\\s([\\d_]+)/);\n const ipod = ua.match(/(iPod)(.*OS\\s([\\d_]+))?/);\n const iphone = !ipad && ua.match(/(iPhone\\sOS|iOS)\\s([\\d_]+)/);\n const ie = ua.indexOf('MSIE ') >= 0 || ua.indexOf('Trident/') >= 0;\n const edge = ua.indexOf('Edge/') >= 0;\n const firefox = ua.indexOf('Gecko/') >= 0 && ua.indexOf('Firefox/') >= 0;\n const windows = platform === 'Win32';\n const electron = ua.toLowerCase().indexOf('electron') >= 0;\n let macos = platform === 'MacIntel';\n\n // iPadOs 13 fix\n if (!ipad\n && macos\n && Support.touch\n && (\n (screenWidth === 1024 && screenHeight === 1366) // Pro 12.9\n || (screenWidth === 834 && screenHeight === 1194) // Pro 11\n || (screenWidth === 834 && screenHeight === 1112) // Pro 10.5\n || (screenWidth === 768 && screenHeight === 1024) // other\n )\n ) {\n ipad = ua.match(/(Version)\\/([\\d.]+)/);\n macos = false;\n }\n\n device.ie = ie;\n device.edge = edge;\n device.firefox = firefox;\n\n // Android\n if (android && !windows) {\n device.os = 'android';\n device.osVersion = android[2];\n device.android = true;\n device.androidChrome = ua.toLowerCase().indexOf('chrome') >= 0;\n }\n if (ipad || iphone || ipod) {\n device.os = 'ios';\n device.ios = true;\n }\n // iOS\n if (iphone && !ipod) {\n device.osVersion = iphone[2].replace(/_/g, '.');\n device.iphone = true;\n }\n if (ipad) {\n device.osVersion = ipad[2].replace(/_/g, '.');\n device.ipad = true;\n }\n if (ipod) {\n device.osVersion = ipod[3] ? ipod[3].replace(/_/g, '.') : null;\n device.ipod = true;\n }\n // iOS 8+ changed UA\n if (device.ios && device.osVersion && ua.indexOf('Version/') >= 0) {\n if (device.osVersion.split('.')[0] === '10') {\n device.osVersion = ua.toLowerCase().split('version/')[1].split(' ')[0];\n }\n }\n\n // Webview\n device.webView = !!((iphone || ipad || ipod) && (ua.match(/.*AppleWebKit(?!.*Safari)/i) || window.navigator.standalone))\n || (window.matchMedia && window.matchMedia('(display-mode: standalone)').matches);\n device.webview = device.webView;\n device.standalone = device.webView;\n\n // Desktop\n device.desktop = !(device.ios || device.android) || electron;\n if (device.desktop) {\n device.electron = electron;\n device.macos = macos;\n device.windows = windows;\n if (device.macos) {\n device.os = 'macos';\n }\n if (device.windows) {\n device.os = 'windows';\n }\n }\n\n // Pixel Ratio\n device.pixelRatio = window.devicePixelRatio || 1;\n\n // Export object\n return device;\n}());\n\nfunction onTouchStart (event) {\n const swiper = this;\n const data = swiper.touchEventsData;\n const { params, touches } = swiper;\n\n if (swiper.animating && params.preventInteractionOnTransition) {\n return;\n }\n let e = event;\n if (e.originalEvent) e = e.originalEvent;\n const $targetEl = $(e.target);\n\n if (params.touchEventsTarget === 'wrapper') {\n if (!$targetEl.closest(swiper.wrapperEl).length) return;\n }\n data.isTouchEvent = e.type === 'touchstart';\n if (!data.isTouchEvent && 'which' in e && e.which === 3) return;\n if (!data.isTouchEvent && 'button' in e && e.button > 0) return;\n if (data.isTouched && data.isMoved) return;\n if (params.noSwiping && $targetEl.closest(params.noSwipingSelector ? params.noSwipingSelector : `.${params.noSwipingClass}`)[0]) {\n swiper.allowClick = true;\n return;\n }\n if (params.swipeHandler) {\n if (!$targetEl.closest(params.swipeHandler)[0]) return;\n }\n\n touches.currentX = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX;\n touches.currentY = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY;\n const startX = touches.currentX;\n const startY = touches.currentY;\n\n // Do NOT start if iOS edge swipe is detected. Otherwise iOS app cannot swipe-to-go-back anymore\n\n const edgeSwipeDetection = params.edgeSwipeDetection || params.iOSEdgeSwipeDetection;\n const edgeSwipeThreshold = params.edgeSwipeThreshold || params.iOSEdgeSwipeThreshold;\n if (\n edgeSwipeDetection\n && ((startX <= edgeSwipeThreshold)\n || (startX >= window.screen.width - edgeSwipeThreshold))\n ) {\n return;\n }\n\n Utils.extend(data, {\n isTouched: true,\n isMoved: false,\n allowTouchCallbacks: true,\n isScrolling: undefined,\n startMoving: undefined,\n });\n\n touches.startX = startX;\n touches.startY = startY;\n data.touchStartTime = Utils.now();\n swiper.allowClick = true;\n swiper.updateSize();\n swiper.swipeDirection = undefined;\n if (params.threshold > 0) data.allowThresholdMove = false;\n if (e.type !== 'touchstart') {\n let preventDefault = true;\n if ($targetEl.is(data.formElements)) preventDefault = false;\n if (\n document$1.activeElement\n && $(document$1.activeElement).is(data.formElements)\n && document$1.activeElement !== $targetEl[0]\n ) {\n document$1.activeElement.blur();\n }\n\n const shouldPreventDefault = preventDefault && swiper.allowTouchMove && params.touchStartPreventDefault;\n if (params.touchStartForcePreventDefault || shouldPreventDefault) {\n e.preventDefault();\n }\n }\n swiper.emit('touchStart', e);\n}\n\nfunction onTouchMove (event) {\n const swiper = this;\n const data = swiper.touchEventsData;\n const { params, touches, rtlTranslate: rtl } = swiper;\n let e = event;\n if (e.originalEvent) e = e.originalEvent;\n if (!data.isTouched) {\n if (data.startMoving && data.isScrolling) {\n swiper.emit('touchMoveOpposite', e);\n }\n return;\n }\n if (data.isTouchEvent && e.type !== 'touchmove') return;\n const targetTouch = e.type === 'touchmove' && e.targetTouches && (e.targetTouches[0] || e.changedTouches[0]);\n const pageX = e.type === 'touchmove' ? targetTouch.pageX : e.pageX;\n const pageY = e.type === 'touchmove' ? targetTouch.pageY : e.pageY;\n if (e.preventedByNestedSwiper) {\n touches.startX = pageX;\n touches.startY = pageY;\n return;\n }\n if (!swiper.allowTouchMove) {\n // isMoved = true;\n swiper.allowClick = false;\n if (data.isTouched) {\n Utils.extend(touches, {\n startX: pageX,\n startY: pageY,\n currentX: pageX,\n currentY: pageY,\n });\n data.touchStartTime = Utils.now();\n }\n return;\n }\n if (data.isTouchEvent && params.touchReleaseOnEdges && !params.loop) {\n if (swiper.isVertical()) {\n // Vertical\n if (\n (pageY < touches.startY && swiper.translate <= swiper.maxTranslate())\n || (pageY > touches.startY && swiper.translate >= swiper.minTranslate())\n ) {\n data.isTouched = false;\n data.isMoved = false;\n return;\n }\n } else if (\n (pageX < touches.startX && swiper.translate <= swiper.maxTranslate())\n || (pageX > touches.startX && swiper.translate >= swiper.minTranslate())\n ) {\n return;\n }\n }\n if (data.isTouchEvent && document$1.activeElement) {\n if (e.target === document$1.activeElement && $(e.target).is(data.formElements)) {\n data.isMoved = true;\n swiper.allowClick = false;\n return;\n }\n }\n if (data.allowTouchCallbacks) {\n swiper.emit('touchMove', e);\n }\n if (e.targetTouches && e.targetTouches.length > 1) return;\n\n touches.currentX = pageX;\n touches.currentY = pageY;\n\n const diffX = touches.currentX - touches.startX;\n const diffY = touches.currentY - touches.startY;\n if (swiper.params.threshold && Math.sqrt((diffX ** 2) + (diffY ** 2)) < swiper.params.threshold) return;\n\n if (typeof data.isScrolling === 'undefined') {\n let touchAngle;\n if ((swiper.isHorizontal() && touches.currentY === touches.startY) || (swiper.isVertical() && touches.currentX === touches.startX)) {\n data.isScrolling = false;\n } else {\n // eslint-disable-next-line\n if ((diffX * diffX) + (diffY * diffY) >= 25) {\n touchAngle = (Math.atan2(Math.abs(diffY), Math.abs(diffX)) * 180) / Math.PI;\n data.isScrolling = swiper.isHorizontal() ? touchAngle > params.touchAngle : (90 - touchAngle > params.touchAngle);\n }\n }\n }\n if (data.isScrolling) {\n swiper.emit('touchMoveOpposite', e);\n }\n if (typeof data.startMoving === 'undefined') {\n if (touches.currentX !== touches.startX || touches.currentY !== touches.startY) {\n data.startMoving = true;\n }\n }\n if (data.isScrolling) {\n data.isTouched = false;\n return;\n }\n if (!data.startMoving) {\n return;\n }\n swiper.allowClick = false;\n if (!params.cssMode && e.cancelable) {\n e.preventDefault();\n }\n if (params.touchMoveStopPropagation && !params.nested) {\n e.stopPropagation();\n }\n\n if (!data.isMoved) {\n if (params.loop) {\n swiper.loopFix();\n }\n data.startTranslate = swiper.getTranslate();\n swiper.setTransition(0);\n if (swiper.animating) {\n swiper.$wrapperEl.trigger('webkitTransitionEnd transitionend');\n }\n data.allowMomentumBounce = false;\n // Grab Cursor\n if (params.grabCursor && (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)) {\n swiper.setGrabCursor(true);\n }\n swiper.emit('sliderFirstMove', e);\n }\n swiper.emit('sliderMove', e);\n data.isMoved = true;\n\n let diff = swiper.isHorizontal() ? diffX : diffY;\n touches.diff = diff;\n\n diff *= params.touchRatio;\n if (rtl) diff = -diff;\n\n swiper.swipeDirection = diff > 0 ? 'prev' : 'next';\n data.currentTranslate = diff + data.startTranslate;\n\n let disableParentSwiper = true;\n let resistanceRatio = params.resistanceRatio;\n if (params.touchReleaseOnEdges) {\n resistanceRatio = 0;\n }\n if ((diff > 0 && data.currentTranslate > swiper.minTranslate())) {\n disableParentSwiper = false;\n if (params.resistance) data.currentTranslate = (swiper.minTranslate() - 1) + ((-swiper.minTranslate() + data.startTranslate + diff) ** resistanceRatio);\n } else if (diff < 0 && data.currentTranslate < swiper.maxTranslate()) {\n disableParentSwiper = false;\n if (params.resistance) data.currentTranslate = (swiper.maxTranslate() + 1) - ((swiper.maxTranslate() - data.startTranslate - diff) ** resistanceRatio);\n }\n\n if (disableParentSwiper) {\n e.preventedByNestedSwiper = true;\n }\n\n // Directions locks\n if (!swiper.allowSlideNext && swiper.swipeDirection === 'next' && data.currentTranslate < data.startTranslate) {\n data.currentTranslate = data.startTranslate;\n }\n if (!swiper.allowSlidePrev && swiper.swipeDirection === 'prev' && data.currentTranslate > data.startTranslate) {\n data.currentTranslate = data.startTranslate;\n }\n\n\n // Threshold\n if (params.threshold > 0) {\n if (Math.abs(diff) > params.threshold || data.allowThresholdMove) {\n if (!data.allowThresholdMove) {\n data.allowThresholdMove = true;\n touches.startX = touches.currentX;\n touches.startY = touches.currentY;\n data.currentTranslate = data.startTranslate;\n touches.diff = swiper.isHorizontal() ? touches.currentX - touches.startX : touches.currentY - touches.startY;\n return;\n }\n } else {\n data.currentTranslate = data.startTranslate;\n return;\n }\n }\n\n if (!params.followFinger || params.cssMode) return;\n\n // Update active index in free mode\n if (params.freeMode || params.watchSlidesProgress || params.watchSlidesVisibility) {\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n if (params.freeMode) {\n // Velocity\n if (data.velocities.length === 0) {\n data.velocities.push({\n position: touches[swiper.isHorizontal() ? 'startX' : 'startY'],\n time: data.touchStartTime,\n });\n }\n data.velocities.push({\n position: touches[swiper.isHorizontal() ? 'currentX' : 'currentY'],\n time: Utils.now(),\n });\n }\n // Update progress\n swiper.updateProgress(data.currentTranslate);\n // Update translate\n swiper.setTranslate(data.currentTranslate);\n}\n\nfunction onTouchEnd (event) {\n const swiper = this;\n const data = swiper.touchEventsData;\n\n const {\n params, touches, rtlTranslate: rtl, $wrapperEl, slidesGrid, snapGrid,\n } = swiper;\n let e = event;\n if (e.originalEvent) e = e.originalEvent;\n if (data.allowTouchCallbacks) {\n swiper.emit('touchEnd', e);\n }\n data.allowTouchCallbacks = false;\n if (!data.isTouched) {\n if (data.isMoved && params.grabCursor) {\n swiper.setGrabCursor(false);\n }\n data.isMoved = false;\n data.startMoving = false;\n return;\n }\n // Return Grab Cursor\n if (params.grabCursor && data.isMoved && data.isTouched && (swiper.allowSlideNext === true || swiper.allowSlidePrev === true)) {\n swiper.setGrabCursor(false);\n }\n\n // Time diff\n const touchEndTime = Utils.now();\n const timeDiff = touchEndTime - data.touchStartTime;\n\n // Tap, doubleTap, Click\n if (swiper.allowClick) {\n swiper.updateClickedSlide(e);\n swiper.emit('tap click', e);\n if (timeDiff < 300 && (touchEndTime - data.lastClickTime) < 300) {\n swiper.emit('doubleTap doubleClick', e);\n }\n }\n\n data.lastClickTime = Utils.now();\n Utils.nextTick(() => {\n if (!swiper.destroyed) swiper.allowClick = true;\n });\n\n if (!data.isTouched || !data.isMoved || !swiper.swipeDirection || touches.diff === 0 || data.currentTranslate === data.startTranslate) {\n data.isTouched = false;\n data.isMoved = false;\n data.startMoving = false;\n return;\n }\n data.isTouched = false;\n data.isMoved = false;\n data.startMoving = false;\n\n let currentPos;\n if (params.followFinger) {\n currentPos = rtl ? swiper.translate : -swiper.translate;\n } else {\n currentPos = -data.currentTranslate;\n }\n\n if (params.cssMode) {\n return;\n }\n\n if (params.freeMode) {\n if (currentPos < -swiper.minTranslate()) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n if (currentPos > -swiper.maxTranslate()) {\n if (swiper.slides.length < snapGrid.length) {\n swiper.slideTo(snapGrid.length - 1);\n } else {\n swiper.slideTo(swiper.slides.length - 1);\n }\n return;\n }\n\n if (params.freeModeMomentum) {\n if (data.velocities.length > 1) {\n const lastMoveEvent = data.velocities.pop();\n const velocityEvent = data.velocities.pop();\n\n const distance = lastMoveEvent.position - velocityEvent.position;\n const time = lastMoveEvent.time - velocityEvent.time;\n swiper.velocity = distance / time;\n swiper.velocity /= 2;\n if (Math.abs(swiper.velocity) < params.freeModeMinimumVelocity) {\n swiper.velocity = 0;\n }\n // this implies that the user stopped moving a finger then released.\n // There would be no events with distance zero, so the last event is stale.\n if (time > 150 || (Utils.now() - lastMoveEvent.time) > 300) {\n swiper.velocity = 0;\n }\n } else {\n swiper.velocity = 0;\n }\n swiper.velocity *= params.freeModeMomentumVelocityRatio;\n\n data.velocities.length = 0;\n let momentumDuration = 1000 * params.freeModeMomentumRatio;\n const momentumDistance = swiper.velocity * momentumDuration;\n\n let newPosition = swiper.translate + momentumDistance;\n if (rtl) newPosition = -newPosition;\n\n let doBounce = false;\n let afterBouncePosition;\n const bounceAmount = Math.abs(swiper.velocity) * 20 * params.freeModeMomentumBounceRatio;\n let needsLoopFix;\n if (newPosition < swiper.maxTranslate()) {\n if (params.freeModeMomentumBounce) {\n if (newPosition + swiper.maxTranslate() < -bounceAmount) {\n newPosition = swiper.maxTranslate() - bounceAmount;\n }\n afterBouncePosition = swiper.maxTranslate();\n doBounce = true;\n data.allowMomentumBounce = true;\n } else {\n newPosition = swiper.maxTranslate();\n }\n if (params.loop && params.centeredSlides) needsLoopFix = true;\n } else if (newPosition > swiper.minTranslate()) {\n if (params.freeModeMomentumBounce) {\n if (newPosition - swiper.minTranslate() > bounceAmount) {\n newPosition = swiper.minTranslate() + bounceAmount;\n }\n afterBouncePosition = swiper.minTranslate();\n doBounce = true;\n data.allowMomentumBounce = true;\n } else {\n newPosition = swiper.minTranslate();\n }\n if (params.loop && params.centeredSlides) needsLoopFix = true;\n } else if (params.freeModeSticky) {\n let nextSlide;\n for (let j = 0; j < snapGrid.length; j += 1) {\n if (snapGrid[j] > -newPosition) {\n nextSlide = j;\n break;\n }\n }\n\n if (Math.abs(snapGrid[nextSlide] - newPosition) < Math.abs(snapGrid[nextSlide - 1] - newPosition) || swiper.swipeDirection === 'next') {\n newPosition = snapGrid[nextSlide];\n } else {\n newPosition = snapGrid[nextSlide - 1];\n }\n newPosition = -newPosition;\n }\n if (needsLoopFix) {\n swiper.once('transitionEnd', () => {\n swiper.loopFix();\n });\n }\n // Fix duration\n if (swiper.velocity !== 0) {\n if (rtl) {\n momentumDuration = Math.abs((-newPosition - swiper.translate) / swiper.velocity);\n } else {\n momentumDuration = Math.abs((newPosition - swiper.translate) / swiper.velocity);\n }\n if (params.freeModeSticky) {\n // If freeModeSticky is active and the user ends a swipe with a slow-velocity\n // event, then durations can be 20+ seconds to slide one (or zero!) slides.\n // It's easy to see this when simulating touch with mouse events. To fix this,\n // limit single-slide swipes to the default slide duration. This also has the\n // nice side effect of matching slide speed if the user stopped moving before\n // lifting finger or mouse vs. moving slowly before lifting the finger/mouse.\n // For faster swipes, also apply limits (albeit higher ones).\n const moveDistance = Math.abs((rtl ? -newPosition : newPosition) - swiper.translate);\n const currentSlideSize = swiper.slidesSizesGrid[swiper.activeIndex];\n if (moveDistance < currentSlideSize) {\n momentumDuration = params.speed;\n } else if (moveDistance < 2 * currentSlideSize) {\n momentumDuration = params.speed * 1.5;\n } else {\n momentumDuration = params.speed * 2.5;\n }\n }\n } else if (params.freeModeSticky) {\n swiper.slideToClosest();\n return;\n }\n\n if (params.freeModeMomentumBounce && doBounce) {\n swiper.updateProgress(afterBouncePosition);\n swiper.setTransition(momentumDuration);\n swiper.setTranslate(newPosition);\n swiper.transitionStart(true, swiper.swipeDirection);\n swiper.animating = true;\n $wrapperEl.transitionEnd(() => {\n if (!swiper || swiper.destroyed || !data.allowMomentumBounce) return;\n swiper.emit('momentumBounce');\n swiper.setTransition(params.speed);\n setTimeout(() => {\n swiper.setTranslate(afterBouncePosition);\n $wrapperEl.transitionEnd(() => {\n if (!swiper || swiper.destroyed) return;\n swiper.transitionEnd();\n });\n }, 0);\n });\n } else if (swiper.velocity) {\n swiper.updateProgress(newPosition);\n swiper.setTransition(momentumDuration);\n swiper.setTranslate(newPosition);\n swiper.transitionStart(true, swiper.swipeDirection);\n if (!swiper.animating) {\n swiper.animating = true;\n $wrapperEl.transitionEnd(() => {\n if (!swiper || swiper.destroyed) return;\n swiper.transitionEnd();\n });\n }\n } else {\n swiper.updateProgress(newPosition);\n }\n\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n } else if (params.freeModeSticky) {\n swiper.slideToClosest();\n return;\n }\n\n if (!params.freeModeMomentum || timeDiff >= params.longSwipesMs) {\n swiper.updateProgress();\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n return;\n }\n\n // Find current slide\n let stopIndex = 0;\n let groupSize = swiper.slidesSizesGrid[0];\n for (let i = 0; i < slidesGrid.length; i += (i < params.slidesPerGroupSkip ? 1 : params.slidesPerGroup)) {\n const increment = (i < params.slidesPerGroupSkip - 1 ? 1 : params.slidesPerGroup);\n if (typeof slidesGrid[i + increment] !== 'undefined') {\n if (currentPos >= slidesGrid[i] && currentPos < slidesGrid[i + increment]) {\n stopIndex = i;\n groupSize = slidesGrid[i + increment] - slidesGrid[i];\n }\n } else if (currentPos >= slidesGrid[i]) {\n stopIndex = i;\n groupSize = slidesGrid[slidesGrid.length - 1] - slidesGrid[slidesGrid.length - 2];\n }\n }\n\n // Find current slide size\n const ratio = (currentPos - slidesGrid[stopIndex]) / groupSize;\n const increment = (stopIndex < params.slidesPerGroupSkip - 1 ? 1 : params.slidesPerGroup);\n\n if (timeDiff > params.longSwipesMs) {\n // Long touches\n if (!params.longSwipes) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n if (swiper.swipeDirection === 'next') {\n if (ratio >= params.longSwipesRatio) swiper.slideTo(stopIndex + increment);\n else swiper.slideTo(stopIndex);\n }\n if (swiper.swipeDirection === 'prev') {\n if (ratio > (1 - params.longSwipesRatio)) swiper.slideTo(stopIndex + increment);\n else swiper.slideTo(stopIndex);\n }\n } else {\n // Short swipes\n if (!params.shortSwipes) {\n swiper.slideTo(swiper.activeIndex);\n return;\n }\n const isNavButtonTarget = swiper.navigation && (e.target === swiper.navigation.nextEl || e.target === swiper.navigation.prevEl);\n if (!isNavButtonTarget) {\n if (swiper.swipeDirection === 'next') {\n swiper.slideTo(stopIndex + increment);\n }\n if (swiper.swipeDirection === 'prev') {\n swiper.slideTo(stopIndex);\n }\n } else if (e.target === swiper.navigation.nextEl) {\n swiper.slideTo(stopIndex + increment);\n } else {\n swiper.slideTo(stopIndex);\n }\n }\n}\n\nfunction onResize () {\n const swiper = this;\n\n const { params, el } = swiper;\n\n if (el && el.offsetWidth === 0) return;\n\n // Breakpoints\n if (params.breakpoints) {\n swiper.setBreakpoint();\n }\n\n // Save locks\n const { allowSlideNext, allowSlidePrev, snapGrid } = swiper;\n\n // Disable locks on resize\n swiper.allowSlideNext = true;\n swiper.allowSlidePrev = true;\n\n swiper.updateSize();\n swiper.updateSlides();\n\n swiper.updateSlidesClasses();\n if ((params.slidesPerView === 'auto' || params.slidesPerView > 1) && swiper.isEnd && !swiper.isBeginning && !swiper.params.centeredSlides) {\n swiper.slideTo(swiper.slides.length - 1, 0, false, true);\n } else {\n swiper.slideTo(swiper.activeIndex, 0, false, true);\n }\n\n if (swiper.autoplay && swiper.autoplay.running && swiper.autoplay.paused) {\n swiper.autoplay.run();\n }\n // Return locks after resize\n swiper.allowSlidePrev = allowSlidePrev;\n swiper.allowSlideNext = allowSlideNext;\n\n if (swiper.params.watchOverflow && snapGrid !== swiper.snapGrid) {\n swiper.checkOverflow();\n }\n}\n\nfunction onClick (e) {\n const swiper = this;\n if (!swiper.allowClick) {\n if (swiper.params.preventClicks) e.preventDefault();\n if (swiper.params.preventClicksPropagation && swiper.animating) {\n e.stopPropagation();\n e.stopImmediatePropagation();\n }\n }\n}\n\nfunction onScroll () {\n const swiper = this;\n const { wrapperEl, rtlTranslate } = swiper;\n swiper.previousTranslate = swiper.translate;\n if (swiper.isHorizontal()) {\n if (rtlTranslate) {\n swiper.translate = ((wrapperEl.scrollWidth - wrapperEl.offsetWidth) - wrapperEl.scrollLeft);\n } else {\n swiper.translate = -wrapperEl.scrollLeft;\n }\n } else {\n swiper.translate = -wrapperEl.scrollTop;\n }\n // eslint-disable-next-line\n if (swiper.translate === -0) swiper.translate = 0;\n\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n\n let newProgress;\n const translatesDiff = swiper.maxTranslate() - swiper.minTranslate();\n if (translatesDiff === 0) {\n newProgress = 0;\n } else {\n newProgress = (swiper.translate - swiper.minTranslate()) / (translatesDiff);\n }\n if (newProgress !== swiper.progress) {\n swiper.updateProgress(rtlTranslate ? -swiper.translate : swiper.translate);\n }\n\n swiper.emit('setTranslate', swiper.translate, false);\n}\n\nlet dummyEventAttached = false;\nfunction dummyEventListener() {}\n\nfunction attachEvents() {\n const swiper = this;\n const {\n params, touchEvents, el, wrapperEl,\n } = swiper;\n\n swiper.onTouchStart = onTouchStart.bind(swiper);\n swiper.onTouchMove = onTouchMove.bind(swiper);\n swiper.onTouchEnd = onTouchEnd.bind(swiper);\n if (params.cssMode) {\n swiper.onScroll = onScroll.bind(swiper);\n }\n\n swiper.onClick = onClick.bind(swiper);\n\n const capture = !!params.nested;\n\n // Touch Events\n if (!Support.touch && Support.pointerEvents) {\n el.addEventListener(touchEvents.start, swiper.onTouchStart, false);\n document$1.addEventListener(touchEvents.move, swiper.onTouchMove, capture);\n document$1.addEventListener(touchEvents.end, swiper.onTouchEnd, false);\n } else {\n if (Support.touch) {\n const passiveListener = touchEvents.start === 'touchstart' && Support.passiveListener && params.passiveListeners ? { passive: true, capture: false } : false;\n el.addEventListener(touchEvents.start, swiper.onTouchStart, passiveListener);\n el.addEventListener(touchEvents.move, swiper.onTouchMove, Support.passiveListener ? { passive: false, capture } : capture);\n el.addEventListener(touchEvents.end, swiper.onTouchEnd, passiveListener);\n if (touchEvents.cancel) {\n el.addEventListener(touchEvents.cancel, swiper.onTouchEnd, passiveListener);\n }\n if (!dummyEventAttached) {\n document$1.addEventListener('touchstart', dummyEventListener);\n dummyEventAttached = true;\n }\n }\n if ((params.simulateTouch && !Device.ios && !Device.android) || (params.simulateTouch && !Support.touch && Device.ios)) {\n el.addEventListener('mousedown', swiper.onTouchStart, false);\n document$1.addEventListener('mousemove', swiper.onTouchMove, capture);\n document$1.addEventListener('mouseup', swiper.onTouchEnd, false);\n }\n }\n // Prevent Links Clicks\n if (params.preventClicks || params.preventClicksPropagation) {\n el.addEventListener('click', swiper.onClick, true);\n }\n if (params.cssMode) {\n wrapperEl.addEventListener('scroll', swiper.onScroll);\n }\n\n // Resize handler\n if (params.updateOnWindowResize) {\n swiper.on((Device.ios || Device.android ? 'resize orientationchange observerUpdate' : 'resize observerUpdate'), onResize, true);\n } else {\n swiper.on('observerUpdate', onResize, true);\n }\n}\n\nfunction detachEvents() {\n const swiper = this;\n\n const {\n params, touchEvents, el, wrapperEl,\n } = swiper;\n\n const capture = !!params.nested;\n\n // Touch Events\n if (!Support.touch && Support.pointerEvents) {\n el.removeEventListener(touchEvents.start, swiper.onTouchStart, false);\n document$1.removeEventListener(touchEvents.move, swiper.onTouchMove, capture);\n document$1.removeEventListener(touchEvents.end, swiper.onTouchEnd, false);\n } else {\n if (Support.touch) {\n const passiveListener = touchEvents.start === 'onTouchStart' && Support.passiveListener && params.passiveListeners ? { passive: true, capture: false } : false;\n el.removeEventListener(touchEvents.start, swiper.onTouchStart, passiveListener);\n el.removeEventListener(touchEvents.move, swiper.onTouchMove, capture);\n el.removeEventListener(touchEvents.end, swiper.onTouchEnd, passiveListener);\n if (touchEvents.cancel) {\n el.removeEventListener(touchEvents.cancel, swiper.onTouchEnd, passiveListener);\n }\n }\n if ((params.simulateTouch && !Device.ios && !Device.android) || (params.simulateTouch && !Support.touch && Device.ios)) {\n el.removeEventListener('mousedown', swiper.onTouchStart, false);\n document$1.removeEventListener('mousemove', swiper.onTouchMove, capture);\n document$1.removeEventListener('mouseup', swiper.onTouchEnd, false);\n }\n }\n // Prevent Links Clicks\n if (params.preventClicks || params.preventClicksPropagation) {\n el.removeEventListener('click', swiper.onClick, true);\n }\n\n if (params.cssMode) {\n wrapperEl.removeEventListener('scroll', swiper.onScroll);\n }\n\n // Resize handler\n swiper.off((Device.ios || Device.android ? 'resize orientationchange observerUpdate' : 'resize observerUpdate'), onResize);\n}\n\nvar events = {\n attachEvents,\n detachEvents,\n};\n\nfunction setBreakpoint () {\n const swiper = this;\n const {\n activeIndex, initialized, loopedSlides = 0, params, $el,\n } = swiper;\n const breakpoints = params.breakpoints;\n if (!breakpoints || (breakpoints && Object.keys(breakpoints).length === 0)) return;\n\n // Get breakpoint for window width and update parameters\n const breakpoint = swiper.getBreakpoint(breakpoints);\n\n if (breakpoint && swiper.currentBreakpoint !== breakpoint) {\n const breakpointOnlyParams = breakpoint in breakpoints ? breakpoints[breakpoint] : undefined;\n if (breakpointOnlyParams) {\n ['slidesPerView', 'spaceBetween', 'slidesPerGroup', 'slidesPerGroupSkip', 'slidesPerColumn'].forEach((param) => {\n const paramValue = breakpointOnlyParams[param];\n if (typeof paramValue === 'undefined') return;\n if (param === 'slidesPerView' && (paramValue === 'AUTO' || paramValue === 'auto')) {\n breakpointOnlyParams[param] = 'auto';\n } else if (param === 'slidesPerView') {\n breakpointOnlyParams[param] = parseFloat(paramValue);\n } else {\n breakpointOnlyParams[param] = parseInt(paramValue, 10);\n }\n });\n }\n\n const breakpointParams = breakpointOnlyParams || swiper.originalParams;\n const wasMultiRow = params.slidesPerColumn > 1;\n const isMultiRow = breakpointParams.slidesPerColumn > 1;\n if (wasMultiRow && !isMultiRow) {\n $el.removeClass(`${params.containerModifierClass}multirow ${params.containerModifierClass}multirow-column`);\n } else if (!wasMultiRow && isMultiRow) {\n $el.addClass(`${params.containerModifierClass}multirow`);\n if (breakpointParams.slidesPerColumnFill === 'column') {\n $el.addClass(`${params.containerModifierClass}multirow-column`);\n }\n }\n\n const directionChanged = breakpointParams.direction && breakpointParams.direction !== params.direction;\n const needsReLoop = params.loop && (breakpointParams.slidesPerView !== params.slidesPerView || directionChanged);\n\n if (directionChanged && initialized) {\n swiper.changeDirection();\n }\n\n Utils.extend(swiper.params, breakpointParams);\n\n Utils.extend(swiper, {\n allowTouchMove: swiper.params.allowTouchMove,\n allowSlideNext: swiper.params.allowSlideNext,\n allowSlidePrev: swiper.params.allowSlidePrev,\n });\n\n swiper.currentBreakpoint = breakpoint;\n\n if (needsReLoop && initialized) {\n swiper.loopDestroy();\n swiper.loopCreate();\n swiper.updateSlides();\n swiper.slideTo((activeIndex - loopedSlides) + swiper.loopedSlides, 0, false);\n }\n\n swiper.emit('breakpoint', breakpointParams);\n }\n}\n\nfunction getBreakpoint (breakpoints) {\n // Get breakpoint for window width\n if (!breakpoints) return undefined;\n let breakpoint = false;\n\n const points = Object.keys(breakpoints).map((point) => {\n if (typeof point === 'string' && point.indexOf('@') === 0) {\n const minRatio = parseFloat(point.substr(1));\n const value = window.innerHeight * minRatio;\n return { value, point };\n }\n return { value: point, point };\n });\n\n points.sort((a, b) => parseInt(a.value, 10) - parseInt(b.value, 10));\n for (let i = 0; i < points.length; i += 1) {\n const { point, value } = points[i];\n if (value <= window.innerWidth) {\n breakpoint = point;\n }\n }\n return breakpoint || 'max';\n}\n\nvar breakpoints = { setBreakpoint, getBreakpoint };\n\nfunction addClasses () {\n const swiper = this;\n const {\n classNames, params, rtl, $el,\n } = swiper;\n const suffixes = [];\n\n suffixes.push('initialized');\n suffixes.push(params.direction);\n\n if (params.freeMode) {\n suffixes.push('free-mode');\n }\n if (params.autoHeight) {\n suffixes.push('autoheight');\n }\n if (rtl) {\n suffixes.push('rtl');\n }\n if (params.slidesPerColumn > 1) {\n suffixes.push('multirow');\n if (params.slidesPerColumnFill === 'column') {\n suffixes.push('multirow-column');\n }\n }\n if (Device.android) {\n suffixes.push('android');\n }\n if (Device.ios) {\n suffixes.push('ios');\n }\n\n if (params.cssMode) {\n suffixes.push('css-mode');\n }\n\n suffixes.forEach((suffix) => {\n classNames.push(params.containerModifierClass + suffix);\n });\n\n $el.addClass(classNames.join(' '));\n}\n\nfunction removeClasses () {\n const swiper = this;\n const { $el, classNames } = swiper;\n\n $el.removeClass(classNames.join(' '));\n}\n\nvar classes = { addClasses, removeClasses };\n\nfunction loadImage (imageEl, src, srcset, sizes, checkForComplete, callback) {\n let image;\n function onReady() {\n if (callback) callback();\n }\n const isPicture = $(imageEl).parent('picture')[0];\n\n if (!isPicture && (!imageEl.complete || !checkForComplete)) {\n if (src) {\n image = new window.Image();\n image.onload = onReady;\n image.onerror = onReady;\n if (sizes) {\n image.sizes = sizes;\n }\n if (srcset) {\n image.srcset = srcset;\n }\n if (src) {\n image.src = src;\n }\n } else {\n onReady();\n }\n } else {\n // image already loaded...\n onReady();\n }\n}\n\nfunction preloadImages () {\n const swiper = this;\n swiper.imagesToLoad = swiper.$el.find('img');\n function onReady() {\n if (typeof swiper === 'undefined' || swiper === null || !swiper || swiper.destroyed) return;\n if (swiper.imagesLoaded !== undefined) swiper.imagesLoaded += 1;\n if (swiper.imagesLoaded === swiper.imagesToLoad.length) {\n if (swiper.params.updateOnImagesReady) swiper.update();\n swiper.emit('imagesReady');\n }\n }\n for (let i = 0; i < swiper.imagesToLoad.length; i += 1) {\n const imageEl = swiper.imagesToLoad[i];\n swiper.loadImage(\n imageEl,\n imageEl.currentSrc || imageEl.getAttribute('src'),\n imageEl.srcset || imageEl.getAttribute('srcset'),\n imageEl.sizes || imageEl.getAttribute('sizes'),\n true,\n onReady\n );\n }\n}\n\nvar images = {\n loadImage,\n preloadImages,\n};\n\nfunction checkOverflow() {\n const swiper = this;\n const params = swiper.params;\n const wasLocked = swiper.isLocked;\n const lastSlidePosition = swiper.slides.length > 0 && (params.slidesOffsetBefore + (params.spaceBetween * (swiper.slides.length - 1)) + ((swiper.slides[0]).offsetWidth) * swiper.slides.length);\n\n if (params.slidesOffsetBefore && params.slidesOffsetAfter && lastSlidePosition) {\n swiper.isLocked = lastSlidePosition <= swiper.size;\n } else {\n swiper.isLocked = swiper.snapGrid.length === 1;\n }\n\n swiper.allowSlideNext = !swiper.isLocked;\n swiper.allowSlidePrev = !swiper.isLocked;\n\n // events\n if (wasLocked !== swiper.isLocked) swiper.emit(swiper.isLocked ? 'lock' : 'unlock');\n\n if (wasLocked && wasLocked !== swiper.isLocked) {\n swiper.isEnd = false;\n if (swiper.navigation) swiper.navigation.update();\n }\n}\n\nvar checkOverflow$1 = { checkOverflow };\n\nvar defaults = {\n init: true,\n direction: 'horizontal',\n touchEventsTarget: 'container',\n initialSlide: 0,\n speed: 300,\n cssMode: false,\n updateOnWindowResize: true,\n //\n preventInteractionOnTransition: false,\n\n // To support iOS's swipe-to-go-back gesture (when being used in-app).\n edgeSwipeDetection: false,\n edgeSwipeThreshold: 20,\n\n // Free mode\n freeMode: false,\n freeModeMomentum: true,\n freeModeMomentumRatio: 1,\n freeModeMomentumBounce: true,\n freeModeMomentumBounceRatio: 1,\n freeModeMomentumVelocityRatio: 1,\n freeModeSticky: false,\n freeModeMinimumVelocity: 0.02,\n\n // Autoheight\n autoHeight: false,\n\n // Set wrapper width\n setWrapperSize: false,\n\n // Virtual Translate\n virtualTranslate: false,\n\n // Effects\n effect: 'slide', // 'slide' or 'fade' or 'cube' or 'coverflow' or 'flip'\n\n // Breakpoints\n breakpoints: undefined,\n\n // Slides grid\n spaceBetween: 0,\n slidesPerView: 1,\n slidesPerColumn: 1,\n slidesPerColumnFill: 'column',\n slidesPerGroup: 1,\n slidesPerGroupSkip: 0,\n centeredSlides: false,\n centeredSlidesBounds: false,\n slidesOffsetBefore: 0, // in px\n slidesOffsetAfter: 0, // in px\n normalizeSlideIndex: true,\n centerInsufficientSlides: false,\n\n // Disable swiper and hide navigation when container not overflow\n watchOverflow: false,\n\n // Round length\n roundLengths: false,\n\n // Touches\n touchRatio: 1,\n touchAngle: 45,\n simulateTouch: true,\n shortSwipes: true,\n longSwipes: true,\n longSwipesRatio: 0.5,\n longSwipesMs: 300,\n followFinger: true,\n allowTouchMove: true,\n threshold: 0,\n touchMoveStopPropagation: false,\n touchStartPreventDefault: true,\n touchStartForcePreventDefault: false,\n touchReleaseOnEdges: false,\n\n // Unique Navigation Elements\n uniqueNavElements: true,\n\n // Resistance\n resistance: true,\n resistanceRatio: 0.85,\n\n // Progress\n watchSlidesProgress: false,\n watchSlidesVisibility: false,\n\n // Cursor\n grabCursor: false,\n\n // Clicks\n preventClicks: true,\n preventClicksPropagation: true,\n slideToClickedSlide: false,\n\n // Images\n preloadImages: true,\n updateOnImagesReady: true,\n\n // loop\n loop: false,\n loopAdditionalSlides: 0,\n loopedSlides: null,\n loopFillGroupWithBlank: false,\n\n // Swiping/no swiping\n allowSlidePrev: true,\n allowSlideNext: true,\n swipeHandler: null, // '.swipe-handler',\n noSwiping: true,\n noSwipingClass: 'swiper-no-swiping',\n noSwipingSelector: null,\n\n // Passive Listeners\n passiveListeners: true,\n\n // NS\n containerModifierClass: 'swiper-container-', // NEW\n slideClass: 'swiper-slide',\n slideBlankClass: 'swiper-slide-invisible-blank',\n slideActiveClass: 'swiper-slide-active',\n slideDuplicateActiveClass: 'swiper-slide-duplicate-active',\n slideVisibleClass: 'swiper-slide-visible',\n slideDuplicateClass: 'swiper-slide-duplicate',\n slideNextClass: 'swiper-slide-next',\n slideDuplicateNextClass: 'swiper-slide-duplicate-next',\n slidePrevClass: 'swiper-slide-prev',\n slideDuplicatePrevClass: 'swiper-slide-duplicate-prev',\n wrapperClass: 'swiper-wrapper',\n\n // Callbacks\n runCallbacksOnInit: true,\n};\n\n/* eslint no-param-reassign: \"off\" */\n\nconst prototypes = {\n update,\n translate,\n transition,\n slide,\n loop,\n grabCursor,\n manipulation,\n events,\n breakpoints,\n checkOverflow: checkOverflow$1,\n classes,\n images,\n};\n\nconst extendedDefaults = {};\n\nclass Swiper extends SwiperClass {\n constructor(...args) {\n let el;\n let params;\n if (args.length === 1 && args[0].constructor && args[0].constructor === Object) {\n params = args[0];\n } else {\n [el, params] = args;\n }\n if (!params) params = {};\n\n params = Utils.extend({}, params);\n if (el && !params.el) params.el = el;\n\n super(params);\n\n Object.keys(prototypes).forEach((prototypeGroup) => {\n Object.keys(prototypes[prototypeGroup]).forEach((protoMethod) => {\n if (!Swiper.prototype[protoMethod]) {\n Swiper.prototype[protoMethod] = prototypes[prototypeGroup][protoMethod];\n }\n });\n });\n\n // Swiper Instance\n const swiper = this;\n if (typeof swiper.modules === 'undefined') {\n swiper.modules = {};\n }\n Object.keys(swiper.modules).forEach((moduleName) => {\n const module = swiper.modules[moduleName];\n if (module.params) {\n const moduleParamName = Object.keys(module.params)[0];\n const moduleParams = module.params[moduleParamName];\n if (typeof moduleParams !== 'object' || moduleParams === null) return;\n if (!(moduleParamName in params && 'enabled' in moduleParams)) return;\n if (params[moduleParamName] === true) {\n params[moduleParamName] = { enabled: true };\n }\n if (\n typeof params[moduleParamName] === 'object'\n && !('enabled' in params[moduleParamName])\n ) {\n params[moduleParamName].enabled = true;\n }\n if (!params[moduleParamName]) params[moduleParamName] = { enabled: false };\n }\n });\n\n // Extend defaults with modules params\n const swiperParams = Utils.extend({}, defaults);\n swiper.useModulesParams(swiperParams);\n\n // Extend defaults with passed params\n swiper.params = Utils.extend({}, swiperParams, extendedDefaults, params);\n swiper.originalParams = Utils.extend({}, swiper.params);\n swiper.passedParams = Utils.extend({}, params);\n\n // Save Dom lib\n swiper.$ = $;\n\n // Find el\n const $el = $(swiper.params.el);\n el = $el[0];\n\n if (!el) {\n return undefined;\n }\n\n if ($el.length > 1) {\n const swipers = [];\n $el.each((index, containerEl) => {\n const newParams = Utils.extend({}, params, { el: containerEl });\n swipers.push(new Swiper(newParams));\n });\n return swipers;\n }\n\n el.swiper = swiper;\n $el.data('swiper', swiper);\n\n // Find Wrapper\n let $wrapperEl;\n if (el && el.shadowRoot && el.shadowRoot.querySelector) {\n $wrapperEl = $(el.shadowRoot.querySelector(`.${swiper.params.wrapperClass}`));\n // Children needs to return slot items\n $wrapperEl.children = (options) => $el.children(options);\n } else {\n $wrapperEl = $el.children(`.${swiper.params.wrapperClass}`);\n }\n // Extend Swiper\n Utils.extend(swiper, {\n $el,\n el,\n $wrapperEl,\n wrapperEl: $wrapperEl[0],\n\n // Classes\n classNames: [],\n\n // Slides\n slides: $(),\n slidesGrid: [],\n snapGrid: [],\n slidesSizesGrid: [],\n\n // isDirection\n isHorizontal() {\n return swiper.params.direction === 'horizontal';\n },\n isVertical() {\n return swiper.params.direction === 'vertical';\n },\n // RTL\n rtl: (el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl'),\n rtlTranslate: swiper.params.direction === 'horizontal' && (el.dir.toLowerCase() === 'rtl' || $el.css('direction') === 'rtl'),\n wrongRTL: $wrapperEl.css('display') === '-webkit-box',\n\n // Indexes\n activeIndex: 0,\n realIndex: 0,\n\n //\n isBeginning: true,\n isEnd: false,\n\n // Props\n translate: 0,\n previousTranslate: 0,\n progress: 0,\n velocity: 0,\n animating: false,\n\n // Locks\n allowSlideNext: swiper.params.allowSlideNext,\n allowSlidePrev: swiper.params.allowSlidePrev,\n\n // Touch Events\n touchEvents: (function touchEvents() {\n const touch = ['touchstart', 'touchmove', 'touchend', 'touchcancel'];\n let desktop = ['mousedown', 'mousemove', 'mouseup'];\n if (Support.pointerEvents) {\n desktop = ['pointerdown', 'pointermove', 'pointerup'];\n }\n swiper.touchEventsTouch = {\n start: touch[0],\n move: touch[1],\n end: touch[2],\n cancel: touch[3],\n };\n swiper.touchEventsDesktop = {\n start: desktop[0],\n move: desktop[1],\n end: desktop[2],\n };\n return Support.touch || !swiper.params.simulateTouch ? swiper.touchEventsTouch : swiper.touchEventsDesktop;\n }()),\n touchEventsData: {\n isTouched: undefined,\n isMoved: undefined,\n allowTouchCallbacks: undefined,\n touchStartTime: undefined,\n isScrolling: undefined,\n currentTranslate: undefined,\n startTranslate: undefined,\n allowThresholdMove: undefined,\n // Form elements to match\n formElements: 'input, select, option, textarea, button, video, label',\n // Last click time\n lastClickTime: Utils.now(),\n clickTimeout: undefined,\n // Velocities\n velocities: [],\n allowMomentumBounce: undefined,\n isTouchEvent: undefined,\n startMoving: undefined,\n },\n\n // Clicks\n allowClick: true,\n\n // Touches\n allowTouchMove: swiper.params.allowTouchMove,\n\n touches: {\n startX: 0,\n startY: 0,\n currentX: 0,\n currentY: 0,\n diff: 0,\n },\n\n // Images\n imagesToLoad: [],\n imagesLoaded: 0,\n\n });\n\n // Install Modules\n swiper.useModules();\n\n // Init\n if (swiper.params.init) {\n swiper.init();\n }\n\n // Return app instance\n return swiper;\n }\n\n slidesPerViewDynamic() {\n const swiper = this;\n const {\n params, slides, slidesGrid, size: swiperSize, activeIndex,\n } = swiper;\n let spv = 1;\n if (params.centeredSlides) {\n let slideSize = slides[activeIndex].swiperSlideSize;\n let breakLoop;\n for (let i = activeIndex + 1; i < slides.length; i += 1) {\n if (slides[i] && !breakLoop) {\n slideSize += slides[i].swiperSlideSize;\n spv += 1;\n if (slideSize > swiperSize) breakLoop = true;\n }\n }\n for (let i = activeIndex - 1; i >= 0; i -= 1) {\n if (slides[i] && !breakLoop) {\n slideSize += slides[i].swiperSlideSize;\n spv += 1;\n if (slideSize > swiperSize) breakLoop = true;\n }\n }\n } else {\n for (let i = activeIndex + 1; i < slides.length; i += 1) {\n if (slidesGrid[i] - slidesGrid[activeIndex] < swiperSize) {\n spv += 1;\n }\n }\n }\n return spv;\n }\n\n update() {\n const swiper = this;\n if (!swiper || swiper.destroyed) return;\n const { snapGrid, params } = swiper;\n // Breakpoints\n if (params.breakpoints) {\n swiper.setBreakpoint();\n }\n swiper.updateSize();\n swiper.updateSlides();\n swiper.updateProgress();\n swiper.updateSlidesClasses();\n\n function setTranslate() {\n const translateValue = swiper.rtlTranslate ? swiper.translate * -1 : swiper.translate;\n const newTranslate = Math.min(Math.max(translateValue, swiper.maxTranslate()), swiper.minTranslate());\n swiper.setTranslate(newTranslate);\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n }\n let translated;\n if (swiper.params.freeMode) {\n setTranslate();\n if (swiper.params.autoHeight) {\n swiper.updateAutoHeight();\n }\n } else {\n if ((swiper.params.slidesPerView === 'auto' || swiper.params.slidesPerView > 1) && swiper.isEnd && !swiper.params.centeredSlides) {\n translated = swiper.slideTo(swiper.slides.length - 1, 0, false, true);\n } else {\n translated = swiper.slideTo(swiper.activeIndex, 0, false, true);\n }\n if (!translated) {\n setTranslate();\n }\n }\n if (params.watchOverflow && snapGrid !== swiper.snapGrid) {\n swiper.checkOverflow();\n }\n swiper.emit('update');\n }\n\n changeDirection(newDirection, needUpdate = true) {\n const swiper = this;\n const currentDirection = swiper.params.direction;\n if (!newDirection) {\n // eslint-disable-next-line\n newDirection = currentDirection === 'horizontal' ? 'vertical' : 'horizontal';\n }\n if ((newDirection === currentDirection) || (newDirection !== 'horizontal' && newDirection !== 'vertical')) {\n return swiper;\n }\n\n swiper.$el\n .removeClass(`${swiper.params.containerModifierClass}${currentDirection}`)\n .addClass(`${swiper.params.containerModifierClass}${newDirection}`);\n\n swiper.params.direction = newDirection;\n\n swiper.slides.each((slideIndex, slideEl) => {\n if (newDirection === 'vertical') {\n slideEl.style.width = '';\n } else {\n slideEl.style.height = '';\n }\n });\n\n swiper.emit('changeDirection');\n if (needUpdate) swiper.update();\n\n return swiper;\n }\n\n init() {\n const swiper = this;\n if (swiper.initialized) return;\n\n swiper.emit('beforeInit');\n\n // Set breakpoint\n if (swiper.params.breakpoints) {\n swiper.setBreakpoint();\n }\n\n // Add Classes\n swiper.addClasses();\n\n // Create loop\n if (swiper.params.loop) {\n swiper.loopCreate();\n }\n\n // Update size\n swiper.updateSize();\n\n // Update slides\n swiper.updateSlides();\n\n if (swiper.params.watchOverflow) {\n swiper.checkOverflow();\n }\n\n // Set Grab Cursor\n if (swiper.params.grabCursor) {\n swiper.setGrabCursor();\n }\n\n if (swiper.params.preloadImages) {\n swiper.preloadImages();\n }\n\n // Slide To Initial Slide\n if (swiper.params.loop) {\n swiper.slideTo(swiper.params.initialSlide + swiper.loopedSlides, 0, swiper.params.runCallbacksOnInit);\n } else {\n swiper.slideTo(swiper.params.initialSlide, 0, swiper.params.runCallbacksOnInit);\n }\n\n // Attach events\n swiper.attachEvents();\n\n // Init Flag\n swiper.initialized = true;\n\n // Emit\n swiper.emit('init');\n }\n\n destroy(deleteInstance = true, cleanStyles = true) {\n const swiper = this;\n const {\n params, $el, $wrapperEl, slides,\n } = swiper;\n\n if (typeof swiper.params === 'undefined' || swiper.destroyed) {\n return null;\n }\n\n swiper.emit('beforeDestroy');\n\n // Init Flag\n swiper.initialized = false;\n\n // Detach events\n swiper.detachEvents();\n\n // Destroy loop\n if (params.loop) {\n swiper.loopDestroy();\n }\n\n // Cleanup styles\n if (cleanStyles) {\n swiper.removeClasses();\n $el.removeAttr('style');\n $wrapperEl.removeAttr('style');\n if (slides && slides.length) {\n slides\n .removeClass([\n params.slideVisibleClass,\n params.slideActiveClass,\n params.slideNextClass,\n params.slidePrevClass,\n ].join(' '))\n .removeAttr('style')\n .removeAttr('data-swiper-slide-index');\n }\n }\n\n swiper.emit('destroy');\n\n // Detach emitter events\n Object.keys(swiper.eventsListeners).forEach((eventName) => {\n swiper.off(eventName);\n });\n\n if (deleteInstance !== false) {\n swiper.$el[0].swiper = null;\n swiper.$el.data('swiper', null);\n Utils.deleteProps(swiper);\n }\n swiper.destroyed = true;\n\n return null;\n }\n\n static extendDefaults(newDefaults) {\n Utils.extend(extendedDefaults, newDefaults);\n }\n\n static get extendedDefaults() {\n return extendedDefaults;\n }\n\n static get defaults() {\n return defaults;\n }\n\n static get Class() {\n return SwiperClass;\n }\n\n static get $() {\n return $;\n }\n}\n\nvar Device$1 = {\n name: 'device',\n proto: {\n device: Device,\n },\n static: {\n device: Device,\n },\n};\n\nvar Support$1 = {\n name: 'support',\n proto: {\n support: Support,\n },\n static: {\n support: Support,\n },\n};\n\nconst Browser = (function Browser() {\n function isSafari() {\n const ua = window.navigator.userAgent.toLowerCase();\n return (ua.indexOf('safari') >= 0 && ua.indexOf('chrome') < 0 && ua.indexOf('android') < 0);\n }\n return {\n isEdge: !!window.navigator.userAgent.match(/Edge/g),\n isSafari: isSafari(),\n isWebView: /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(window.navigator.userAgent),\n };\n}());\n\nvar Browser$1 = {\n name: 'browser',\n proto: {\n browser: Browser,\n },\n static: {\n browser: Browser,\n },\n};\n\nvar Resize = {\n name: 'resize',\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n resize: {\n resizeHandler() {\n if (!swiper || swiper.destroyed || !swiper.initialized) return;\n swiper.emit('beforeResize');\n swiper.emit('resize');\n },\n orientationChangeHandler() {\n if (!swiper || swiper.destroyed || !swiper.initialized) return;\n swiper.emit('orientationchange');\n },\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n // Emit resize\n window.addEventListener('resize', swiper.resize.resizeHandler);\n\n // Emit orientationchange\n window.addEventListener('orientationchange', swiper.resize.orientationChangeHandler);\n },\n destroy() {\n const swiper = this;\n window.removeEventListener('resize', swiper.resize.resizeHandler);\n window.removeEventListener('orientationchange', swiper.resize.orientationChangeHandler);\n },\n },\n};\n\nconst Observer = {\n func: window.MutationObserver || window.WebkitMutationObserver,\n attach(target, options = {}) {\n const swiper = this;\n\n const ObserverFunc = Observer.func;\n const observer = new ObserverFunc((mutations) => {\n // The observerUpdate event should only be triggered\n // once despite the number of mutations. Additional\n // triggers are redundant and are very costly\n if (mutations.length === 1) {\n swiper.emit('observerUpdate', mutations[0]);\n return;\n }\n const observerUpdate = function observerUpdate() {\n swiper.emit('observerUpdate', mutations[0]);\n };\n\n if (window.requestAnimationFrame) {\n window.requestAnimationFrame(observerUpdate);\n } else {\n window.setTimeout(observerUpdate, 0);\n }\n });\n\n observer.observe(target, {\n attributes: typeof options.attributes === 'undefined' ? true : options.attributes,\n childList: typeof options.childList === 'undefined' ? true : options.childList,\n characterData: typeof options.characterData === 'undefined' ? true : options.characterData,\n });\n\n swiper.observer.observers.push(observer);\n },\n init() {\n const swiper = this;\n if (!Support.observer || !swiper.params.observer) return;\n if (swiper.params.observeParents) {\n const containerParents = swiper.$el.parents();\n for (let i = 0; i < containerParents.length; i += 1) {\n swiper.observer.attach(containerParents[i]);\n }\n }\n // Observe container\n swiper.observer.attach(swiper.$el[0], { childList: swiper.params.observeSlideChildren });\n\n // Observe wrapper\n swiper.observer.attach(swiper.$wrapperEl[0], { attributes: false });\n },\n destroy() {\n const swiper = this;\n swiper.observer.observers.forEach((observer) => {\n observer.disconnect();\n });\n swiper.observer.observers = [];\n },\n};\n\nvar Observer$1 = {\n name: 'observer',\n params: {\n observer: false,\n observeParents: false,\n observeSlideChildren: false,\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n observer: {\n init: Observer.init.bind(swiper),\n attach: Observer.attach.bind(swiper),\n destroy: Observer.destroy.bind(swiper),\n observers: [],\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n swiper.observer.init();\n },\n destroy() {\n const swiper = this;\n swiper.observer.destroy();\n },\n },\n};\n\nconst Virtual = {\n update(force) {\n const swiper = this;\n const { slidesPerView, slidesPerGroup, centeredSlides } = swiper.params;\n const { addSlidesBefore, addSlidesAfter } = swiper.params.virtual;\n const {\n from: previousFrom,\n to: previousTo,\n slides,\n slidesGrid: previousSlidesGrid,\n renderSlide,\n offset: previousOffset,\n } = swiper.virtual;\n swiper.updateActiveIndex();\n const activeIndex = swiper.activeIndex || 0;\n\n let offsetProp;\n if (swiper.rtlTranslate) offsetProp = 'right';\n else offsetProp = swiper.isHorizontal() ? 'left' : 'top';\n\n let slidesAfter;\n let slidesBefore;\n if (centeredSlides) {\n slidesAfter = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesBefore;\n slidesBefore = Math.floor(slidesPerView / 2) + slidesPerGroup + addSlidesAfter;\n } else {\n slidesAfter = slidesPerView + (slidesPerGroup - 1) + addSlidesBefore;\n slidesBefore = slidesPerGroup + addSlidesAfter;\n }\n const from = Math.max((activeIndex || 0) - slidesBefore, 0);\n const to = Math.min((activeIndex || 0) + slidesAfter, slides.length - 1);\n const offset = (swiper.slidesGrid[from] || 0) - (swiper.slidesGrid[0] || 0);\n\n Utils.extend(swiper.virtual, {\n from,\n to,\n offset,\n slidesGrid: swiper.slidesGrid,\n });\n\n function onRendered() {\n swiper.updateSlides();\n swiper.updateProgress();\n swiper.updateSlidesClasses();\n if (swiper.lazy && swiper.params.lazy.enabled) {\n swiper.lazy.load();\n }\n }\n\n if (previousFrom === from && previousTo === to && !force) {\n if (swiper.slidesGrid !== previousSlidesGrid && offset !== previousOffset) {\n swiper.slides.css(offsetProp, `${offset}px`);\n }\n swiper.updateProgress();\n return;\n }\n if (swiper.params.virtual.renderExternal) {\n swiper.params.virtual.renderExternal.call(swiper, {\n offset,\n from,\n to,\n slides: (function getSlides() {\n const slidesToRender = [];\n for (let i = from; i <= to; i += 1) {\n slidesToRender.push(slides[i]);\n }\n return slidesToRender;\n }()),\n });\n onRendered();\n return;\n }\n const prependIndexes = [];\n const appendIndexes = [];\n if (force) {\n swiper.$wrapperEl.find(`.${swiper.params.slideClass}`).remove();\n } else {\n for (let i = previousFrom; i <= previousTo; i += 1) {\n if (i < from || i > to) {\n swiper.$wrapperEl.find(`.${swiper.params.slideClass}[data-swiper-slide-index=\"${i}\"]`).remove();\n }\n }\n }\n for (let i = 0; i < slides.length; i += 1) {\n if (i >= from && i <= to) {\n if (typeof previousTo === 'undefined' || force) {\n appendIndexes.push(i);\n } else {\n if (i > previousTo) appendIndexes.push(i);\n if (i < previousFrom) prependIndexes.push(i);\n }\n }\n }\n appendIndexes.forEach((index) => {\n swiper.$wrapperEl.append(renderSlide(slides[index], index));\n });\n prependIndexes.sort((a, b) => b - a).forEach((index) => {\n swiper.$wrapperEl.prepend(renderSlide(slides[index], index));\n });\n swiper.$wrapperEl.children('.swiper-slide').css(offsetProp, `${offset}px`);\n onRendered();\n },\n renderSlide(slide, index) {\n const swiper = this;\n const params = swiper.params.virtual;\n if (params.cache && swiper.virtual.cache[index]) {\n return swiper.virtual.cache[index];\n }\n const $slideEl = params.renderSlide\n ? $(params.renderSlide.call(swiper, slide, index))\n : $(`
    ${slide}
    `);\n if (!$slideEl.attr('data-swiper-slide-index')) $slideEl.attr('data-swiper-slide-index', index);\n if (params.cache) swiper.virtual.cache[index] = $slideEl;\n return $slideEl;\n },\n appendSlide(slides) {\n const swiper = this;\n if (typeof slides === 'object' && 'length' in slides) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) swiper.virtual.slides.push(slides[i]);\n }\n } else {\n swiper.virtual.slides.push(slides);\n }\n swiper.virtual.update(true);\n },\n prependSlide(slides) {\n const swiper = this;\n const activeIndex = swiper.activeIndex;\n let newActiveIndex = activeIndex + 1;\n let numberOfNewSlides = 1;\n\n if (Array.isArray(slides)) {\n for (let i = 0; i < slides.length; i += 1) {\n if (slides[i]) swiper.virtual.slides.unshift(slides[i]);\n }\n newActiveIndex = activeIndex + slides.length;\n numberOfNewSlides = slides.length;\n } else {\n swiper.virtual.slides.unshift(slides);\n }\n if (swiper.params.virtual.cache) {\n const cache = swiper.virtual.cache;\n const newCache = {};\n Object.keys(cache).forEach((cachedIndex) => {\n const $cachedEl = cache[cachedIndex];\n const cachedElIndex = $cachedEl.attr('data-swiper-slide-index');\n if (cachedElIndex) {\n $cachedEl.attr('data-swiper-slide-index', parseInt(cachedElIndex, 10) + 1);\n }\n newCache[parseInt(cachedIndex, 10) + numberOfNewSlides] = $cachedEl;\n });\n swiper.virtual.cache = newCache;\n }\n swiper.virtual.update(true);\n swiper.slideTo(newActiveIndex, 0);\n },\n removeSlide(slidesIndexes) {\n const swiper = this;\n if (typeof slidesIndexes === 'undefined' || slidesIndexes === null) return;\n let activeIndex = swiper.activeIndex;\n if (Array.isArray(slidesIndexes)) {\n for (let i = slidesIndexes.length - 1; i >= 0; i -= 1) {\n swiper.virtual.slides.splice(slidesIndexes[i], 1);\n if (swiper.params.virtual.cache) {\n delete swiper.virtual.cache[slidesIndexes[i]];\n }\n if (slidesIndexes[i] < activeIndex) activeIndex -= 1;\n activeIndex = Math.max(activeIndex, 0);\n }\n } else {\n swiper.virtual.slides.splice(slidesIndexes, 1);\n if (swiper.params.virtual.cache) {\n delete swiper.virtual.cache[slidesIndexes];\n }\n if (slidesIndexes < activeIndex) activeIndex -= 1;\n activeIndex = Math.max(activeIndex, 0);\n }\n swiper.virtual.update(true);\n swiper.slideTo(activeIndex, 0);\n },\n removeAllSlides() {\n const swiper = this;\n swiper.virtual.slides = [];\n if (swiper.params.virtual.cache) {\n swiper.virtual.cache = {};\n }\n swiper.virtual.update(true);\n swiper.slideTo(0, 0);\n },\n};\n\nvar Virtual$1 = {\n name: 'virtual',\n params: {\n virtual: {\n enabled: false,\n slides: [],\n cache: true,\n renderSlide: null,\n renderExternal: null,\n addSlidesBefore: 0,\n addSlidesAfter: 0,\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n virtual: {\n update: Virtual.update.bind(swiper),\n appendSlide: Virtual.appendSlide.bind(swiper),\n prependSlide: Virtual.prependSlide.bind(swiper),\n removeSlide: Virtual.removeSlide.bind(swiper),\n removeAllSlides: Virtual.removeAllSlides.bind(swiper),\n renderSlide: Virtual.renderSlide.bind(swiper),\n slides: swiper.params.virtual.slides,\n cache: {},\n },\n });\n },\n on: {\n beforeInit() {\n const swiper = this;\n if (!swiper.params.virtual.enabled) return;\n swiper.classNames.push(`${swiper.params.containerModifierClass}virtual`);\n const overwriteParams = {\n watchSlidesProgress: true,\n };\n Utils.extend(swiper.params, overwriteParams);\n Utils.extend(swiper.originalParams, overwriteParams);\n\n if (!swiper.params.initialSlide) {\n swiper.virtual.update();\n }\n },\n setTranslate() {\n const swiper = this;\n if (!swiper.params.virtual.enabled) return;\n swiper.virtual.update();\n },\n },\n};\n\nconst Keyboard = {\n handle(event) {\n const swiper = this;\n const { rtlTranslate: rtl } = swiper;\n let e = event;\n if (e.originalEvent) e = e.originalEvent; // jquery fix\n const kc = e.keyCode || e.charCode;\n const pageUpDown = swiper.params.keyboard.pageUpDown;\n const isPageUp = pageUpDown && kc === 33;\n const isPageDown = pageUpDown && kc === 34;\n const isArrowLeft = kc === 37;\n const isArrowRight = kc === 39;\n const isArrowUp = kc === 38;\n const isArrowDown = kc === 40;\n // Directions locks\n if (!swiper.allowSlideNext && ((swiper.isHorizontal() && isArrowRight) || (swiper.isVertical() && isArrowDown) || isPageDown)) {\n return false;\n }\n if (!swiper.allowSlidePrev && ((swiper.isHorizontal() && isArrowLeft) || (swiper.isVertical() && isArrowUp) || isPageUp)) {\n return false;\n }\n if (e.shiftKey || e.altKey || e.ctrlKey || e.metaKey) {\n return undefined;\n }\n if (document$1.activeElement && document$1.activeElement.nodeName && (document$1.activeElement.nodeName.toLowerCase() === 'input' || document$1.activeElement.nodeName.toLowerCase() === 'textarea')) {\n return undefined;\n }\n if (swiper.params.keyboard.onlyInViewport && (isPageUp || isPageDown || isArrowLeft || isArrowRight || isArrowUp || isArrowDown)) {\n let inView = false;\n // Check that swiper should be inside of visible area of window\n if (swiper.$el.parents(`.${swiper.params.slideClass}`).length > 0 && swiper.$el.parents(`.${swiper.params.slideActiveClass}`).length === 0) {\n return undefined;\n }\n const windowWidth = window.innerWidth;\n const windowHeight = window.innerHeight;\n const swiperOffset = swiper.$el.offset();\n if (rtl) swiperOffset.left -= swiper.$el[0].scrollLeft;\n const swiperCoord = [\n [swiperOffset.left, swiperOffset.top],\n [swiperOffset.left + swiper.width, swiperOffset.top],\n [swiperOffset.left, swiperOffset.top + swiper.height],\n [swiperOffset.left + swiper.width, swiperOffset.top + swiper.height],\n ];\n for (let i = 0; i < swiperCoord.length; i += 1) {\n const point = swiperCoord[i];\n if (\n point[0] >= 0 && point[0] <= windowWidth\n && point[1] >= 0 && point[1] <= windowHeight\n ) {\n inView = true;\n }\n }\n if (!inView) return undefined;\n }\n if (swiper.isHorizontal()) {\n if (isPageUp || isPageDown || isArrowLeft || isArrowRight) {\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n }\n if (((isPageDown || isArrowRight) && !rtl) || ((isPageUp || isArrowLeft) && rtl)) swiper.slideNext();\n if (((isPageUp || isArrowLeft) && !rtl) || ((isPageDown || isArrowRight) && rtl)) swiper.slidePrev();\n } else {\n if (isPageUp || isPageDown || isArrowUp || isArrowDown) {\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n }\n if (isPageDown || isArrowDown) swiper.slideNext();\n if (isPageUp || isArrowUp) swiper.slidePrev();\n }\n swiper.emit('keyPress', kc);\n return undefined;\n },\n enable() {\n const swiper = this;\n if (swiper.keyboard.enabled) return;\n $(document$1).on('keydown', swiper.keyboard.handle);\n swiper.keyboard.enabled = true;\n },\n disable() {\n const swiper = this;\n if (!swiper.keyboard.enabled) return;\n $(document$1).off('keydown', swiper.keyboard.handle);\n swiper.keyboard.enabled = false;\n },\n};\n\nvar Keyboard$1 = {\n name: 'keyboard',\n params: {\n keyboard: {\n enabled: false,\n onlyInViewport: true,\n pageUpDown: true,\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n keyboard: {\n enabled: false,\n enable: Keyboard.enable.bind(swiper),\n disable: Keyboard.disable.bind(swiper),\n handle: Keyboard.handle.bind(swiper),\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n if (swiper.params.keyboard.enabled) {\n swiper.keyboard.enable();\n }\n },\n destroy() {\n const swiper = this;\n if (swiper.keyboard.enabled) {\n swiper.keyboard.disable();\n }\n },\n },\n};\n\nfunction isEventSupported() {\n const eventName = 'onwheel';\n let isSupported = eventName in document$1;\n\n if (!isSupported) {\n const element = document$1.createElement('div');\n element.setAttribute(eventName, 'return;');\n isSupported = typeof element[eventName] === 'function';\n }\n\n if (!isSupported\n && document$1.implementation\n && document$1.implementation.hasFeature\n // always returns true in newer browsers as per the standard.\n // @see http://dom.spec.whatwg.org/#dom-domimplementation-hasfeature\n && document$1.implementation.hasFeature('', '') !== true\n ) {\n // This is the only way to test support for the `wheel` event in IE9+.\n isSupported = document$1.implementation.hasFeature('Events.wheel', '3.0');\n }\n\n return isSupported;\n}\nconst Mousewheel = {\n lastScrollTime: Utils.now(),\n lastEventBeforeSnap: undefined,\n recentWheelEvents: [],\n event() {\n if (window.navigator.userAgent.indexOf('firefox') > -1) return 'DOMMouseScroll';\n return isEventSupported() ? 'wheel' : 'mousewheel';\n },\n normalize(e) {\n // Reasonable defaults\n const PIXEL_STEP = 10;\n const LINE_HEIGHT = 40;\n const PAGE_HEIGHT = 800;\n\n let sX = 0;\n let sY = 0; // spinX, spinY\n let pX = 0;\n let pY = 0; // pixelX, pixelY\n\n // Legacy\n if ('detail' in e) {\n sY = e.detail;\n }\n if ('wheelDelta' in e) {\n sY = -e.wheelDelta / 120;\n }\n if ('wheelDeltaY' in e) {\n sY = -e.wheelDeltaY / 120;\n }\n if ('wheelDeltaX' in e) {\n sX = -e.wheelDeltaX / 120;\n }\n\n // side scrolling on FF with DOMMouseScroll\n if ('axis' in e && e.axis === e.HORIZONTAL_AXIS) {\n sX = sY;\n sY = 0;\n }\n\n pX = sX * PIXEL_STEP;\n pY = sY * PIXEL_STEP;\n\n if ('deltaY' in e) {\n pY = e.deltaY;\n }\n if ('deltaX' in e) {\n pX = e.deltaX;\n }\n\n if (e.shiftKey && !pX) { // if user scrolls with shift he wants horizontal scroll\n pX = pY;\n pY = 0;\n }\n\n if ((pX || pY) && e.deltaMode) {\n if (e.deltaMode === 1) { // delta in LINE units\n pX *= LINE_HEIGHT;\n pY *= LINE_HEIGHT;\n } else { // delta in PAGE units\n pX *= PAGE_HEIGHT;\n pY *= PAGE_HEIGHT;\n }\n }\n\n // Fall-back if spin cannot be determined\n if (pX && !sX) {\n sX = (pX < 1) ? -1 : 1;\n }\n if (pY && !sY) {\n sY = (pY < 1) ? -1 : 1;\n }\n\n return {\n spinX: sX,\n spinY: sY,\n pixelX: pX,\n pixelY: pY,\n };\n },\n handleMouseEnter() {\n const swiper = this;\n swiper.mouseEntered = true;\n },\n handleMouseLeave() {\n const swiper = this;\n swiper.mouseEntered = false;\n },\n handle(event) {\n let e = event;\n const swiper = this;\n const params = swiper.params.mousewheel;\n\n if (swiper.params.cssMode) {\n e.preventDefault();\n }\n\n let target = swiper.$el;\n if (swiper.params.mousewheel.eventsTarged !== 'container') {\n target = $(swiper.params.mousewheel.eventsTarged);\n }\n if (!swiper.mouseEntered && !target[0].contains(e.target) && !params.releaseOnEdges) return true;\n\n if (e.originalEvent) e = e.originalEvent; // jquery fix\n let delta = 0;\n const rtlFactor = swiper.rtlTranslate ? -1 : 1;\n\n const data = Mousewheel.normalize(e);\n\n if (params.forceToAxis) {\n if (swiper.isHorizontal()) {\n if (Math.abs(data.pixelX) > Math.abs(data.pixelY)) delta = -data.pixelX * rtlFactor;\n else return true;\n } else if (Math.abs(data.pixelY) > Math.abs(data.pixelX)) delta = -data.pixelY;\n else return true;\n } else {\n delta = Math.abs(data.pixelX) > Math.abs(data.pixelY) ? -data.pixelX * rtlFactor : -data.pixelY;\n }\n\n if (delta === 0) return true;\n\n if (params.invert) delta = -delta;\n\n if (!swiper.params.freeMode) {\n // Register the new event in a variable which stores the relevant data\n const newEvent = {\n time: Utils.now(),\n delta: Math.abs(delta),\n direction: Math.sign(delta),\n raw: event,\n };\n\n // Keep the most recent events\n const recentWheelEvents = swiper.mousewheel.recentWheelEvents;\n if (recentWheelEvents.length >= 2) {\n recentWheelEvents.shift(); // only store the last N events\n }\n const prevEvent = recentWheelEvents.length ? recentWheelEvents[recentWheelEvents.length - 1] : undefined;\n recentWheelEvents.push(newEvent);\n\n // If there is at least one previous recorded event:\n // If direction has changed or\n // if the scroll is quicker than the previous one:\n // Animate the slider.\n // Else (this is the first time the wheel is moved):\n // Animate the slider.\n if (prevEvent) {\n if (newEvent.direction !== prevEvent.direction || newEvent.delta > prevEvent.delta || newEvent.time > prevEvent.time + 150) {\n swiper.mousewheel.animateSlider(newEvent);\n }\n } else {\n swiper.mousewheel.animateSlider(newEvent);\n }\n\n // If it's time to release the scroll:\n // Return now so you don't hit the preventDefault.\n if (swiper.mousewheel.releaseScroll(newEvent)) {\n return true;\n }\n } else {\n // Freemode or scrollContainer:\n\n // If we recently snapped after a momentum scroll, then ignore wheel events\n // to give time for the deceleration to finish. Stop ignoring after 500 msecs\n // or if it's a new scroll (larger delta or inverse sign as last event before\n // an end-of-momentum snap).\n const newEvent = { time: Utils.now(), delta: Math.abs(delta), direction: Math.sign(delta) };\n const { lastEventBeforeSnap } = swiper.mousewheel;\n const ignoreWheelEvents = lastEventBeforeSnap\n && newEvent.time < lastEventBeforeSnap.time + 500\n && newEvent.delta <= lastEventBeforeSnap.delta\n && newEvent.direction === lastEventBeforeSnap.direction;\n if (!ignoreWheelEvents) {\n swiper.mousewheel.lastEventBeforeSnap = undefined;\n\n if (swiper.params.loop) {\n swiper.loopFix();\n }\n let position = swiper.getTranslate() + (delta * params.sensitivity);\n const wasBeginning = swiper.isBeginning;\n const wasEnd = swiper.isEnd;\n\n if (position >= swiper.minTranslate()) position = swiper.minTranslate();\n if (position <= swiper.maxTranslate()) position = swiper.maxTranslate();\n\n swiper.setTransition(0);\n swiper.setTranslate(position);\n swiper.updateProgress();\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n\n if ((!wasBeginning && swiper.isBeginning) || (!wasEnd && swiper.isEnd)) {\n swiper.updateSlidesClasses();\n }\n\n if (swiper.params.freeModeSticky) {\n // When wheel scrolling starts with sticky (aka snap) enabled, then detect\n // the end of a momentum scroll by storing recent (N=15?) wheel events.\n // 1. do all N events have decreasing or same (absolute value) delta?\n // 2. did all N events arrive in the last M (M=500?) msecs?\n // 3. does the earliest event have an (absolute value) delta that's\n // at least P (P=1?) larger than the most recent event's delta?\n // 4. does the latest event have a delta that's smaller than Q (Q=6?) pixels?\n // If 1-4 are \"yes\" then we're near the end of a momuntum scroll deceleration.\n // Snap immediately and ignore remaining wheel events in this scroll.\n // See comment above for \"remaining wheel events in this scroll\" determination.\n // If 1-4 aren't satisfied, then wait to snap until 500ms after the last event.\n clearTimeout(swiper.mousewheel.timeout);\n swiper.mousewheel.timeout = undefined;\n const recentWheelEvents = swiper.mousewheel.recentWheelEvents;\n if (recentWheelEvents.length >= 15) {\n recentWheelEvents.shift(); // only store the last N events\n }\n const prevEvent = recentWheelEvents.length ? recentWheelEvents[recentWheelEvents.length - 1] : undefined;\n const firstEvent = recentWheelEvents[0];\n recentWheelEvents.push(newEvent);\n if (prevEvent && (newEvent.delta > prevEvent.delta || newEvent.direction !== prevEvent.direction)) {\n // Increasing or reverse-sign delta means the user started scrolling again. Clear the wheel event log.\n recentWheelEvents.splice(0);\n } else if (recentWheelEvents.length >= 15\n && newEvent.time - firstEvent.time < 500\n && firstEvent.delta - newEvent.delta >= 1\n && newEvent.delta <= 6\n ) {\n // We're at the end of the deceleration of a momentum scroll, so there's no need\n // to wait for more events. Snap ASAP on the next tick.\n // Also, because there's some remaining momentum we'll bias the snap in the\n // direction of the ongoing scroll because it's better UX for the scroll to snap\n // in the same direction as the scroll instead of reversing to snap. Therefore,\n // if it's already scrolled more than 20% in the current direction, keep going.\n const snapToThreshold = delta > 0 ? 0.8 : 0.2;\n swiper.mousewheel.lastEventBeforeSnap = newEvent;\n recentWheelEvents.splice(0);\n swiper.mousewheel.timeout = Utils.nextTick(() => {\n swiper.slideToClosest(swiper.params.speed, true, undefined, snapToThreshold);\n }, 0); // no delay; move on next tick\n }\n if (!swiper.mousewheel.timeout) {\n // if we get here, then we haven't detected the end of a momentum scroll, so\n // we'll consider a scroll \"complete\" when there haven't been any wheel events\n // for 500ms.\n swiper.mousewheel.timeout = Utils.nextTick(() => {\n const snapToThreshold = 0.5;\n swiper.mousewheel.lastEventBeforeSnap = newEvent;\n recentWheelEvents.splice(0);\n swiper.slideToClosest(swiper.params.speed, true, undefined, snapToThreshold);\n }, 500);\n }\n }\n\n // Emit event\n if (!ignoreWheelEvents) swiper.emit('scroll', e);\n\n // Stop autoplay\n if (swiper.params.autoplay && swiper.params.autoplayDisableOnInteraction) swiper.autoplay.stop();\n // Return page scroll on edge positions\n if (position === swiper.minTranslate() || position === swiper.maxTranslate()) return true;\n }\n }\n\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n return false;\n },\n animateSlider(newEvent) {\n const swiper = this;\n // If the movement is NOT big enough and\n // if the last time the user scrolled was too close to the current one (avoid continuously triggering the slider):\n // Don't go any further (avoid insignificant scroll movement).\n if (newEvent.delta >= 6 && Utils.now() - swiper.mousewheel.lastScrollTime < 60) {\n // Return false as a default\n return true;\n }\n // If user is scrolling towards the end:\n // If the slider hasn't hit the latest slide or\n // if the slider is a loop and\n // if the slider isn't moving right now:\n // Go to next slide and\n // emit a scroll event.\n // Else (the user is scrolling towards the beginning) and\n // if the slider hasn't hit the first slide or\n // if the slider is a loop and\n // if the slider isn't moving right now:\n // Go to prev slide and\n // emit a scroll event.\n if (newEvent.direction < 0) {\n if ((!swiper.isEnd || swiper.params.loop) && !swiper.animating) {\n swiper.slideNext();\n swiper.emit('scroll', newEvent.raw);\n }\n } else if ((!swiper.isBeginning || swiper.params.loop) && !swiper.animating) {\n swiper.slidePrev();\n swiper.emit('scroll', newEvent.raw);\n }\n // If you got here is because an animation has been triggered so store the current time\n swiper.mousewheel.lastScrollTime = (new window.Date()).getTime();\n // Return false as a default\n return false;\n },\n releaseScroll(newEvent) {\n const swiper = this;\n const params = swiper.params.mousewheel;\n if (newEvent.direction < 0) {\n if (swiper.isEnd && !swiper.params.loop && params.releaseOnEdges) {\n // Return true to animate scroll on edges\n return true;\n }\n } else if (swiper.isBeginning && !swiper.params.loop && params.releaseOnEdges) {\n // Return true to animate scroll on edges\n return true;\n }\n return false;\n },\n enable() {\n const swiper = this;\n const event = Mousewheel.event();\n if (swiper.params.cssMode) {\n swiper.wrapperEl.removeEventListener(event, swiper.mousewheel.handle);\n return true;\n }\n if (!event) return false;\n if (swiper.mousewheel.enabled) return false;\n let target = swiper.$el;\n if (swiper.params.mousewheel.eventsTarged !== 'container') {\n target = $(swiper.params.mousewheel.eventsTarged);\n }\n target.on('mouseenter', swiper.mousewheel.handleMouseEnter);\n target.on('mouseleave', swiper.mousewheel.handleMouseLeave);\n target.on(event, swiper.mousewheel.handle);\n swiper.mousewheel.enabled = true;\n return true;\n },\n disable() {\n const swiper = this;\n const event = Mousewheel.event();\n if (swiper.params.cssMode) {\n swiper.wrapperEl.addEventListener(event, swiper.mousewheel.handle);\n return true;\n }\n if (!event) return false;\n if (!swiper.mousewheel.enabled) return false;\n let target = swiper.$el;\n if (swiper.params.mousewheel.eventsTarged !== 'container') {\n target = $(swiper.params.mousewheel.eventsTarged);\n }\n target.off(event, swiper.mousewheel.handle);\n swiper.mousewheel.enabled = false;\n return true;\n },\n};\n\nvar Mousewheel$1 = {\n name: 'mousewheel',\n params: {\n mousewheel: {\n enabled: false,\n releaseOnEdges: false,\n invert: false,\n forceToAxis: false,\n sensitivity: 1,\n eventsTarged: 'container',\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n mousewheel: {\n enabled: false,\n enable: Mousewheel.enable.bind(swiper),\n disable: Mousewheel.disable.bind(swiper),\n handle: Mousewheel.handle.bind(swiper),\n handleMouseEnter: Mousewheel.handleMouseEnter.bind(swiper),\n handleMouseLeave: Mousewheel.handleMouseLeave.bind(swiper),\n animateSlider: Mousewheel.animateSlider.bind(swiper),\n releaseScroll: Mousewheel.releaseScroll.bind(swiper),\n lastScrollTime: Utils.now(),\n lastEventBeforeSnap: undefined,\n recentWheelEvents: [],\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n if (!swiper.params.mousewheel.enabled && swiper.params.cssMode) {\n swiper.mousewheel.disable();\n }\n if (swiper.params.mousewheel.enabled) swiper.mousewheel.enable();\n },\n destroy() {\n const swiper = this;\n if (swiper.params.cssMode) {\n swiper.mousewheel.enable();\n }\n if (swiper.mousewheel.enabled) swiper.mousewheel.disable();\n },\n },\n};\n\nconst Navigation = {\n update() {\n // Update Navigation Buttons\n const swiper = this;\n const params = swiper.params.navigation;\n\n if (swiper.params.loop) return;\n const { $nextEl, $prevEl } = swiper.navigation;\n\n if ($prevEl && $prevEl.length > 0) {\n if (swiper.isBeginning) {\n $prevEl.addClass(params.disabledClass);\n } else {\n $prevEl.removeClass(params.disabledClass);\n }\n $prevEl[swiper.params.watchOverflow && swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);\n }\n if ($nextEl && $nextEl.length > 0) {\n if (swiper.isEnd) {\n $nextEl.addClass(params.disabledClass);\n } else {\n $nextEl.removeClass(params.disabledClass);\n }\n $nextEl[swiper.params.watchOverflow && swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);\n }\n },\n onPrevClick(e) {\n const swiper = this;\n e.preventDefault();\n if (swiper.isBeginning && !swiper.params.loop) return;\n swiper.slidePrev();\n },\n onNextClick(e) {\n const swiper = this;\n e.preventDefault();\n if (swiper.isEnd && !swiper.params.loop) return;\n swiper.slideNext();\n },\n init() {\n const swiper = this;\n const params = swiper.params.navigation;\n if (!(params.nextEl || params.prevEl)) return;\n\n let $nextEl;\n let $prevEl;\n if (params.nextEl) {\n $nextEl = $(params.nextEl);\n if (\n swiper.params.uniqueNavElements\n && typeof params.nextEl === 'string'\n && $nextEl.length > 1\n && swiper.$el.find(params.nextEl).length === 1\n ) {\n $nextEl = swiper.$el.find(params.nextEl);\n }\n }\n if (params.prevEl) {\n $prevEl = $(params.prevEl);\n if (\n swiper.params.uniqueNavElements\n && typeof params.prevEl === 'string'\n && $prevEl.length > 1\n && swiper.$el.find(params.prevEl).length === 1\n ) {\n $prevEl = swiper.$el.find(params.prevEl);\n }\n }\n\n if ($nextEl && $nextEl.length > 0) {\n $nextEl.on('click', swiper.navigation.onNextClick);\n }\n if ($prevEl && $prevEl.length > 0) {\n $prevEl.on('click', swiper.navigation.onPrevClick);\n }\n\n Utils.extend(swiper.navigation, {\n $nextEl,\n nextEl: $nextEl && $nextEl[0],\n $prevEl,\n prevEl: $prevEl && $prevEl[0],\n });\n },\n destroy() {\n const swiper = this;\n const { $nextEl, $prevEl } = swiper.navigation;\n if ($nextEl && $nextEl.length) {\n $nextEl.off('click', swiper.navigation.onNextClick);\n $nextEl.removeClass(swiper.params.navigation.disabledClass);\n }\n if ($prevEl && $prevEl.length) {\n $prevEl.off('click', swiper.navigation.onPrevClick);\n $prevEl.removeClass(swiper.params.navigation.disabledClass);\n }\n },\n};\n\nvar Navigation$1 = {\n name: 'navigation',\n params: {\n navigation: {\n nextEl: null,\n prevEl: null,\n\n hideOnClick: false,\n disabledClass: 'swiper-button-disabled',\n hiddenClass: 'swiper-button-hidden',\n lockClass: 'swiper-button-lock',\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n navigation: {\n init: Navigation.init.bind(swiper),\n update: Navigation.update.bind(swiper),\n destroy: Navigation.destroy.bind(swiper),\n onNextClick: Navigation.onNextClick.bind(swiper),\n onPrevClick: Navigation.onPrevClick.bind(swiper),\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n swiper.navigation.init();\n swiper.navigation.update();\n },\n toEdge() {\n const swiper = this;\n swiper.navigation.update();\n },\n fromEdge() {\n const swiper = this;\n swiper.navigation.update();\n },\n destroy() {\n const swiper = this;\n swiper.navigation.destroy();\n },\n click(e) {\n const swiper = this;\n const { $nextEl, $prevEl } = swiper.navigation;\n if (\n swiper.params.navigation.hideOnClick\n && !$(e.target).is($prevEl)\n && !$(e.target).is($nextEl)\n ) {\n let isHidden;\n if ($nextEl) {\n isHidden = $nextEl.hasClass(swiper.params.navigation.hiddenClass);\n } else if ($prevEl) {\n isHidden = $prevEl.hasClass(swiper.params.navigation.hiddenClass);\n }\n if (isHidden === true) {\n swiper.emit('navigationShow', swiper);\n } else {\n swiper.emit('navigationHide', swiper);\n }\n if ($nextEl) {\n $nextEl.toggleClass(swiper.params.navigation.hiddenClass);\n }\n if ($prevEl) {\n $prevEl.toggleClass(swiper.params.navigation.hiddenClass);\n }\n }\n },\n },\n};\n\nconst Pagination = {\n update() {\n // Render || Update Pagination bullets/items\n const swiper = this;\n const rtl = swiper.rtl;\n const params = swiper.params.pagination;\n if (!params.el || !swiper.pagination.el || !swiper.pagination.$el || swiper.pagination.$el.length === 0) return;\n const slidesLength = swiper.virtual && swiper.params.virtual.enabled ? swiper.virtual.slides.length : swiper.slides.length;\n const $el = swiper.pagination.$el;\n // Current/Total\n let current;\n const total = swiper.params.loop ? Math.ceil((slidesLength - (swiper.loopedSlides * 2)) / swiper.params.slidesPerGroup) : swiper.snapGrid.length;\n if (swiper.params.loop) {\n current = Math.ceil((swiper.activeIndex - swiper.loopedSlides) / swiper.params.slidesPerGroup);\n if (current > slidesLength - 1 - (swiper.loopedSlides * 2)) {\n current -= (slidesLength - (swiper.loopedSlides * 2));\n }\n if (current > total - 1) current -= total;\n if (current < 0 && swiper.params.paginationType !== 'bullets') current = total + current;\n } else if (typeof swiper.snapIndex !== 'undefined') {\n current = swiper.snapIndex;\n } else {\n current = swiper.activeIndex || 0;\n }\n // Types\n if (params.type === 'bullets' && swiper.pagination.bullets && swiper.pagination.bullets.length > 0) {\n const bullets = swiper.pagination.bullets;\n let firstIndex;\n let lastIndex;\n let midIndex;\n if (params.dynamicBullets) {\n swiper.pagination.bulletSize = bullets.eq(0)[swiper.isHorizontal() ? 'outerWidth' : 'outerHeight'](true);\n $el.css(swiper.isHorizontal() ? 'width' : 'height', `${swiper.pagination.bulletSize * (params.dynamicMainBullets + 4)}px`);\n if (params.dynamicMainBullets > 1 && swiper.previousIndex !== undefined) {\n swiper.pagination.dynamicBulletIndex += (current - swiper.previousIndex);\n if (swiper.pagination.dynamicBulletIndex > (params.dynamicMainBullets - 1)) {\n swiper.pagination.dynamicBulletIndex = params.dynamicMainBullets - 1;\n } else if (swiper.pagination.dynamicBulletIndex < 0) {\n swiper.pagination.dynamicBulletIndex = 0;\n }\n }\n firstIndex = current - swiper.pagination.dynamicBulletIndex;\n lastIndex = firstIndex + (Math.min(bullets.length, params.dynamicMainBullets) - 1);\n midIndex = (lastIndex + firstIndex) / 2;\n }\n bullets.removeClass(`${params.bulletActiveClass} ${params.bulletActiveClass}-next ${params.bulletActiveClass}-next-next ${params.bulletActiveClass}-prev ${params.bulletActiveClass}-prev-prev ${params.bulletActiveClass}-main`);\n if ($el.length > 1) {\n bullets.each((index, bullet) => {\n const $bullet = $(bullet);\n const bulletIndex = $bullet.index();\n if (bulletIndex === current) {\n $bullet.addClass(params.bulletActiveClass);\n }\n if (params.dynamicBullets) {\n if (bulletIndex >= firstIndex && bulletIndex <= lastIndex) {\n $bullet.addClass(`${params.bulletActiveClass}-main`);\n }\n if (bulletIndex === firstIndex) {\n $bullet\n .prev()\n .addClass(`${params.bulletActiveClass}-prev`)\n .prev()\n .addClass(`${params.bulletActiveClass}-prev-prev`);\n }\n if (bulletIndex === lastIndex) {\n $bullet\n .next()\n .addClass(`${params.bulletActiveClass}-next`)\n .next()\n .addClass(`${params.bulletActiveClass}-next-next`);\n }\n }\n });\n } else {\n const $bullet = bullets.eq(current);\n const bulletIndex = $bullet.index();\n $bullet.addClass(params.bulletActiveClass);\n if (params.dynamicBullets) {\n const $firstDisplayedBullet = bullets.eq(firstIndex);\n const $lastDisplayedBullet = bullets.eq(lastIndex);\n for (let i = firstIndex; i <= lastIndex; i += 1) {\n bullets.eq(i).addClass(`${params.bulletActiveClass}-main`);\n }\n if (swiper.params.loop) {\n if (bulletIndex >= bullets.length - params.dynamicMainBullets) {\n for (let i = params.dynamicMainBullets; i >= 0; i -= 1) {\n bullets.eq(bullets.length - i).addClass(`${params.bulletActiveClass}-main`);\n }\n bullets.eq(bullets.length - params.dynamicMainBullets - 1).addClass(`${params.bulletActiveClass}-prev`);\n } else {\n $firstDisplayedBullet\n .prev()\n .addClass(`${params.bulletActiveClass}-prev`)\n .prev()\n .addClass(`${params.bulletActiveClass}-prev-prev`);\n $lastDisplayedBullet\n .next()\n .addClass(`${params.bulletActiveClass}-next`)\n .next()\n .addClass(`${params.bulletActiveClass}-next-next`);\n }\n } else {\n $firstDisplayedBullet\n .prev()\n .addClass(`${params.bulletActiveClass}-prev`)\n .prev()\n .addClass(`${params.bulletActiveClass}-prev-prev`);\n $lastDisplayedBullet\n .next()\n .addClass(`${params.bulletActiveClass}-next`)\n .next()\n .addClass(`${params.bulletActiveClass}-next-next`);\n }\n }\n }\n if (params.dynamicBullets) {\n const dynamicBulletsLength = Math.min(bullets.length, params.dynamicMainBullets + 4);\n const bulletsOffset = (((swiper.pagination.bulletSize * dynamicBulletsLength) - (swiper.pagination.bulletSize)) / 2) - (midIndex * swiper.pagination.bulletSize);\n const offsetProp = rtl ? 'right' : 'left';\n bullets.css(swiper.isHorizontal() ? offsetProp : 'top', `${bulletsOffset}px`);\n }\n }\n if (params.type === 'fraction') {\n $el.find(`.${params.currentClass}`).text(params.formatFractionCurrent(current + 1));\n $el.find(`.${params.totalClass}`).text(params.formatFractionTotal(total));\n }\n if (params.type === 'progressbar') {\n let progressbarDirection;\n if (params.progressbarOpposite) {\n progressbarDirection = swiper.isHorizontal() ? 'vertical' : 'horizontal';\n } else {\n progressbarDirection = swiper.isHorizontal() ? 'horizontal' : 'vertical';\n }\n const scale = (current + 1) / total;\n let scaleX = 1;\n let scaleY = 1;\n if (progressbarDirection === 'horizontal') {\n scaleX = scale;\n } else {\n scaleY = scale;\n }\n $el.find(`.${params.progressbarFillClass}`).transform(`translate3d(0,0,0) scaleX(${scaleX}) scaleY(${scaleY})`).transition(swiper.params.speed);\n }\n if (params.type === 'custom' && params.renderCustom) {\n $el.html(params.renderCustom(swiper, current + 1, total));\n swiper.emit('paginationRender', swiper, $el[0]);\n } else {\n swiper.emit('paginationUpdate', swiper, $el[0]);\n }\n $el[swiper.params.watchOverflow && swiper.isLocked ? 'addClass' : 'removeClass'](params.lockClass);\n },\n render() {\n // Render Container\n const swiper = this;\n const params = swiper.params.pagination;\n if (!params.el || !swiper.pagination.el || !swiper.pagination.$el || swiper.pagination.$el.length === 0) return;\n const slidesLength = swiper.virtual && swiper.params.virtual.enabled ? swiper.virtual.slides.length : swiper.slides.length;\n\n const $el = swiper.pagination.$el;\n let paginationHTML = '';\n if (params.type === 'bullets') {\n const numberOfBullets = swiper.params.loop ? Math.ceil((slidesLength - (swiper.loopedSlides * 2)) / swiper.params.slidesPerGroup) : swiper.snapGrid.length;\n for (let i = 0; i < numberOfBullets; i += 1) {\n if (params.renderBullet) {\n paginationHTML += params.renderBullet.call(swiper, i, params.bulletClass);\n } else {\n paginationHTML += `<${params.bulletElement} class=\"${params.bulletClass}\">`;\n }\n }\n $el.html(paginationHTML);\n swiper.pagination.bullets = $el.find(`.${params.bulletClass}`);\n }\n if (params.type === 'fraction') {\n if (params.renderFraction) {\n paginationHTML = params.renderFraction.call(swiper, params.currentClass, params.totalClass);\n } else {\n paginationHTML = ``\n + ' / '\n + ``;\n }\n $el.html(paginationHTML);\n }\n if (params.type === 'progressbar') {\n if (params.renderProgressbar) {\n paginationHTML = params.renderProgressbar.call(swiper, params.progressbarFillClass);\n } else {\n paginationHTML = ``;\n }\n $el.html(paginationHTML);\n }\n if (params.type !== 'custom') {\n swiper.emit('paginationRender', swiper.pagination.$el[0]);\n }\n },\n init() {\n const swiper = this;\n const params = swiper.params.pagination;\n if (!params.el) return;\n\n let $el = $(params.el);\n if ($el.length === 0) return;\n\n if (\n swiper.params.uniqueNavElements\n && typeof params.el === 'string'\n && $el.length > 1\n ) {\n $el = swiper.$el.find(params.el);\n }\n\n if (params.type === 'bullets' && params.clickable) {\n $el.addClass(params.clickableClass);\n }\n\n $el.addClass(params.modifierClass + params.type);\n\n if (params.type === 'bullets' && params.dynamicBullets) {\n $el.addClass(`${params.modifierClass}${params.type}-dynamic`);\n swiper.pagination.dynamicBulletIndex = 0;\n if (params.dynamicMainBullets < 1) {\n params.dynamicMainBullets = 1;\n }\n }\n if (params.type === 'progressbar' && params.progressbarOpposite) {\n $el.addClass(params.progressbarOppositeClass);\n }\n\n if (params.clickable) {\n $el.on('click', `.${params.bulletClass}`, function onClick(e) {\n e.preventDefault();\n let index = $(this).index() * swiper.params.slidesPerGroup;\n if (swiper.params.loop) index += swiper.loopedSlides;\n swiper.slideTo(index);\n });\n }\n\n Utils.extend(swiper.pagination, {\n $el,\n el: $el[0],\n });\n },\n destroy() {\n const swiper = this;\n const params = swiper.params.pagination;\n if (!params.el || !swiper.pagination.el || !swiper.pagination.$el || swiper.pagination.$el.length === 0) return;\n const $el = swiper.pagination.$el;\n\n $el.removeClass(params.hiddenClass);\n $el.removeClass(params.modifierClass + params.type);\n if (swiper.pagination.bullets) swiper.pagination.bullets.removeClass(params.bulletActiveClass);\n if (params.clickable) {\n $el.off('click', `.${params.bulletClass}`);\n }\n },\n};\n\nvar Pagination$1 = {\n name: 'pagination',\n params: {\n pagination: {\n el: null,\n bulletElement: 'span',\n clickable: false,\n hideOnClick: false,\n renderBullet: null,\n renderProgressbar: null,\n renderFraction: null,\n renderCustom: null,\n progressbarOpposite: false,\n type: 'bullets', // 'bullets' or 'progressbar' or 'fraction' or 'custom'\n dynamicBullets: false,\n dynamicMainBullets: 1,\n formatFractionCurrent: (number) => number,\n formatFractionTotal: (number) => number,\n bulletClass: 'swiper-pagination-bullet',\n bulletActiveClass: 'swiper-pagination-bullet-active',\n modifierClass: 'swiper-pagination-', // NEW\n currentClass: 'swiper-pagination-current',\n totalClass: 'swiper-pagination-total',\n hiddenClass: 'swiper-pagination-hidden',\n progressbarFillClass: 'swiper-pagination-progressbar-fill',\n progressbarOppositeClass: 'swiper-pagination-progressbar-opposite',\n clickableClass: 'swiper-pagination-clickable', // NEW\n lockClass: 'swiper-pagination-lock',\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n pagination: {\n init: Pagination.init.bind(swiper),\n render: Pagination.render.bind(swiper),\n update: Pagination.update.bind(swiper),\n destroy: Pagination.destroy.bind(swiper),\n dynamicBulletIndex: 0,\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n swiper.pagination.init();\n swiper.pagination.render();\n swiper.pagination.update();\n },\n activeIndexChange() {\n const swiper = this;\n if (swiper.params.loop) {\n swiper.pagination.update();\n } else if (typeof swiper.snapIndex === 'undefined') {\n swiper.pagination.update();\n }\n },\n snapIndexChange() {\n const swiper = this;\n if (!swiper.params.loop) {\n swiper.pagination.update();\n }\n },\n slidesLengthChange() {\n const swiper = this;\n if (swiper.params.loop) {\n swiper.pagination.render();\n swiper.pagination.update();\n }\n },\n snapGridLengthChange() {\n const swiper = this;\n if (!swiper.params.loop) {\n swiper.pagination.render();\n swiper.pagination.update();\n }\n },\n destroy() {\n const swiper = this;\n swiper.pagination.destroy();\n },\n click(e) {\n const swiper = this;\n if (\n swiper.params.pagination.el\n && swiper.params.pagination.hideOnClick\n && swiper.pagination.$el.length > 0\n && !$(e.target).hasClass(swiper.params.pagination.bulletClass)\n ) {\n const isHidden = swiper.pagination.$el.hasClass(swiper.params.pagination.hiddenClass);\n if (isHidden === true) {\n swiper.emit('paginationShow', swiper);\n } else {\n swiper.emit('paginationHide', swiper);\n }\n swiper.pagination.$el.toggleClass(swiper.params.pagination.hiddenClass);\n }\n },\n },\n};\n\nconst Scrollbar = {\n setTranslate() {\n const swiper = this;\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return;\n const { scrollbar, rtlTranslate: rtl, progress } = swiper;\n const {\n dragSize, trackSize, $dragEl, $el,\n } = scrollbar;\n const params = swiper.params.scrollbar;\n\n let newSize = dragSize;\n let newPos = (trackSize - dragSize) * progress;\n if (rtl) {\n newPos = -newPos;\n if (newPos > 0) {\n newSize = dragSize - newPos;\n newPos = 0;\n } else if (-newPos + dragSize > trackSize) {\n newSize = trackSize + newPos;\n }\n } else if (newPos < 0) {\n newSize = dragSize + newPos;\n newPos = 0;\n } else if (newPos + dragSize > trackSize) {\n newSize = trackSize - newPos;\n }\n if (swiper.isHorizontal()) {\n $dragEl.transform(`translate3d(${newPos}px, 0, 0)`);\n $dragEl[0].style.width = `${newSize}px`;\n } else {\n $dragEl.transform(`translate3d(0px, ${newPos}px, 0)`);\n $dragEl[0].style.height = `${newSize}px`;\n }\n if (params.hide) {\n clearTimeout(swiper.scrollbar.timeout);\n $el[0].style.opacity = 1;\n swiper.scrollbar.timeout = setTimeout(() => {\n $el[0].style.opacity = 0;\n $el.transition(400);\n }, 1000);\n }\n },\n setTransition(duration) {\n const swiper = this;\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return;\n swiper.scrollbar.$dragEl.transition(duration);\n },\n updateSize() {\n const swiper = this;\n if (!swiper.params.scrollbar.el || !swiper.scrollbar.el) return;\n\n const { scrollbar } = swiper;\n const { $dragEl, $el } = scrollbar;\n\n $dragEl[0].style.width = '';\n $dragEl[0].style.height = '';\n const trackSize = swiper.isHorizontal() ? $el[0].offsetWidth : $el[0].offsetHeight;\n\n const divider = swiper.size / swiper.virtualSize;\n const moveDivider = divider * (trackSize / swiper.size);\n let dragSize;\n if (swiper.params.scrollbar.dragSize === 'auto') {\n dragSize = trackSize * divider;\n } else {\n dragSize = parseInt(swiper.params.scrollbar.dragSize, 10);\n }\n\n if (swiper.isHorizontal()) {\n $dragEl[0].style.width = `${dragSize}px`;\n } else {\n $dragEl[0].style.height = `${dragSize}px`;\n }\n\n if (divider >= 1) {\n $el[0].style.display = 'none';\n } else {\n $el[0].style.display = '';\n }\n if (swiper.params.scrollbar.hide) {\n $el[0].style.opacity = 0;\n }\n Utils.extend(scrollbar, {\n trackSize,\n divider,\n moveDivider,\n dragSize,\n });\n scrollbar.$el[swiper.params.watchOverflow && swiper.isLocked ? 'addClass' : 'removeClass'](swiper.params.scrollbar.lockClass);\n },\n getPointerPosition(e) {\n const swiper = this;\n if (swiper.isHorizontal()) {\n return ((e.type === 'touchstart' || e.type === 'touchmove') ? e.targetTouches[0].clientX : e.clientX);\n }\n return ((e.type === 'touchstart' || e.type === 'touchmove') ? e.targetTouches[0].clientY : e.clientY);\n },\n setDragPosition(e) {\n const swiper = this;\n const { scrollbar, rtlTranslate: rtl } = swiper;\n const {\n $el,\n dragSize,\n trackSize,\n dragStartPos,\n } = scrollbar;\n\n let positionRatio;\n positionRatio = ((scrollbar.getPointerPosition(e)) - $el.offset()[swiper.isHorizontal() ? 'left' : 'top']\n - (dragStartPos !== null ? dragStartPos : dragSize / 2)) / (trackSize - dragSize);\n positionRatio = Math.max(Math.min(positionRatio, 1), 0);\n if (rtl) {\n positionRatio = 1 - positionRatio;\n }\n\n const position = swiper.minTranslate() + ((swiper.maxTranslate() - swiper.minTranslate()) * positionRatio);\n\n swiper.updateProgress(position);\n swiper.setTranslate(position);\n swiper.updateActiveIndex();\n swiper.updateSlidesClasses();\n },\n onDragStart(e) {\n const swiper = this;\n const params = swiper.params.scrollbar;\n const { scrollbar, $wrapperEl } = swiper;\n const { $el, $dragEl } = scrollbar;\n swiper.scrollbar.isTouched = true;\n swiper.scrollbar.dragStartPos = (e.target === $dragEl[0] || e.target === $dragEl)\n ? scrollbar.getPointerPosition(e) - e.target.getBoundingClientRect()[swiper.isHorizontal() ? 'left' : 'top'] : null;\n e.preventDefault();\n e.stopPropagation();\n\n $wrapperEl.transition(100);\n $dragEl.transition(100);\n scrollbar.setDragPosition(e);\n\n clearTimeout(swiper.scrollbar.dragTimeout);\n\n $el.transition(0);\n if (params.hide) {\n $el.css('opacity', 1);\n }\n if (swiper.params.cssMode) {\n swiper.$wrapperEl.css('scroll-snap-type', 'none');\n }\n swiper.emit('scrollbarDragStart', e);\n },\n onDragMove(e) {\n const swiper = this;\n const { scrollbar, $wrapperEl } = swiper;\n const { $el, $dragEl } = scrollbar;\n\n if (!swiper.scrollbar.isTouched) return;\n if (e.preventDefault) e.preventDefault();\n else e.returnValue = false;\n scrollbar.setDragPosition(e);\n $wrapperEl.transition(0);\n $el.transition(0);\n $dragEl.transition(0);\n swiper.emit('scrollbarDragMove', e);\n },\n onDragEnd(e) {\n const swiper = this;\n\n const params = swiper.params.scrollbar;\n const { scrollbar, $wrapperEl } = swiper;\n const { $el } = scrollbar;\n\n if (!swiper.scrollbar.isTouched) return;\n swiper.scrollbar.isTouched = false;\n if (swiper.params.cssMode) {\n swiper.$wrapperEl.css('scroll-snap-type', '');\n $wrapperEl.transition('');\n }\n if (params.hide) {\n clearTimeout(swiper.scrollbar.dragTimeout);\n swiper.scrollbar.dragTimeout = Utils.nextTick(() => {\n $el.css('opacity', 0);\n $el.transition(400);\n }, 1000);\n }\n swiper.emit('scrollbarDragEnd', e);\n if (params.snapOnRelease) {\n swiper.slideToClosest();\n }\n },\n enableDraggable() {\n const swiper = this;\n if (!swiper.params.scrollbar.el) return;\n const {\n scrollbar, touchEventsTouch, touchEventsDesktop, params,\n } = swiper;\n const $el = scrollbar.$el;\n const target = $el[0];\n const activeListener = Support.passiveListener && params.passiveListeners ? { passive: false, capture: false } : false;\n const passiveListener = Support.passiveListener && params.passiveListeners ? { passive: true, capture: false } : false;\n if (!Support.touch) {\n target.addEventListener(touchEventsDesktop.start, swiper.scrollbar.onDragStart, activeListener);\n document$1.addEventListener(touchEventsDesktop.move, swiper.scrollbar.onDragMove, activeListener);\n document$1.addEventListener(touchEventsDesktop.end, swiper.scrollbar.onDragEnd, passiveListener);\n } else {\n target.addEventListener(touchEventsTouch.start, swiper.scrollbar.onDragStart, activeListener);\n target.addEventListener(touchEventsTouch.move, swiper.scrollbar.onDragMove, activeListener);\n target.addEventListener(touchEventsTouch.end, swiper.scrollbar.onDragEnd, passiveListener);\n }\n },\n disableDraggable() {\n const swiper = this;\n if (!swiper.params.scrollbar.el) return;\n const {\n scrollbar, touchEventsTouch, touchEventsDesktop, params,\n } = swiper;\n const $el = scrollbar.$el;\n const target = $el[0];\n const activeListener = Support.passiveListener && params.passiveListeners ? { passive: false, capture: false } : false;\n const passiveListener = Support.passiveListener && params.passiveListeners ? { passive: true, capture: false } : false;\n if (!Support.touch) {\n target.removeEventListener(touchEventsDesktop.start, swiper.scrollbar.onDragStart, activeListener);\n document$1.removeEventListener(touchEventsDesktop.move, swiper.scrollbar.onDragMove, activeListener);\n document$1.removeEventListener(touchEventsDesktop.end, swiper.scrollbar.onDragEnd, passiveListener);\n } else {\n target.removeEventListener(touchEventsTouch.start, swiper.scrollbar.onDragStart, activeListener);\n target.removeEventListener(touchEventsTouch.move, swiper.scrollbar.onDragMove, activeListener);\n target.removeEventListener(touchEventsTouch.end, swiper.scrollbar.onDragEnd, passiveListener);\n }\n },\n init() {\n const swiper = this;\n if (!swiper.params.scrollbar.el) return;\n const { scrollbar, $el: $swiperEl } = swiper;\n const params = swiper.params.scrollbar;\n\n let $el = $(params.el);\n if (swiper.params.uniqueNavElements && typeof params.el === 'string' && $el.length > 1 && $swiperEl.find(params.el).length === 1) {\n $el = $swiperEl.find(params.el);\n }\n\n let $dragEl = $el.find(`.${swiper.params.scrollbar.dragClass}`);\n if ($dragEl.length === 0) {\n $dragEl = $(`
    `);\n $el.append($dragEl);\n }\n\n Utils.extend(scrollbar, {\n $el,\n el: $el[0],\n $dragEl,\n dragEl: $dragEl[0],\n });\n\n if (params.draggable) {\n scrollbar.enableDraggable();\n }\n },\n destroy() {\n const swiper = this;\n swiper.scrollbar.disableDraggable();\n },\n};\n\nvar Scrollbar$1 = {\n name: 'scrollbar',\n params: {\n scrollbar: {\n el: null,\n dragSize: 'auto',\n hide: false,\n draggable: false,\n snapOnRelease: true,\n lockClass: 'swiper-scrollbar-lock',\n dragClass: 'swiper-scrollbar-drag',\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n scrollbar: {\n init: Scrollbar.init.bind(swiper),\n destroy: Scrollbar.destroy.bind(swiper),\n updateSize: Scrollbar.updateSize.bind(swiper),\n setTranslate: Scrollbar.setTranslate.bind(swiper),\n setTransition: Scrollbar.setTransition.bind(swiper),\n enableDraggable: Scrollbar.enableDraggable.bind(swiper),\n disableDraggable: Scrollbar.disableDraggable.bind(swiper),\n setDragPosition: Scrollbar.setDragPosition.bind(swiper),\n getPointerPosition: Scrollbar.getPointerPosition.bind(swiper),\n onDragStart: Scrollbar.onDragStart.bind(swiper),\n onDragMove: Scrollbar.onDragMove.bind(swiper),\n onDragEnd: Scrollbar.onDragEnd.bind(swiper),\n isTouched: false,\n timeout: null,\n dragTimeout: null,\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n swiper.scrollbar.init();\n swiper.scrollbar.updateSize();\n swiper.scrollbar.setTranslate();\n },\n update() {\n const swiper = this;\n swiper.scrollbar.updateSize();\n },\n resize() {\n const swiper = this;\n swiper.scrollbar.updateSize();\n },\n observerUpdate() {\n const swiper = this;\n swiper.scrollbar.updateSize();\n },\n setTranslate() {\n const swiper = this;\n swiper.scrollbar.setTranslate();\n },\n setTransition(duration) {\n const swiper = this;\n swiper.scrollbar.setTransition(duration);\n },\n destroy() {\n const swiper = this;\n swiper.scrollbar.destroy();\n },\n },\n};\n\nconst Parallax = {\n setTransform(el, progress) {\n const swiper = this;\n const { rtl } = swiper;\n\n const $el = $(el);\n const rtlFactor = rtl ? -1 : 1;\n\n const p = $el.attr('data-swiper-parallax') || '0';\n let x = $el.attr('data-swiper-parallax-x');\n let y = $el.attr('data-swiper-parallax-y');\n const scale = $el.attr('data-swiper-parallax-scale');\n const opacity = $el.attr('data-swiper-parallax-opacity');\n\n if (x || y) {\n x = x || '0';\n y = y || '0';\n } else if (swiper.isHorizontal()) {\n x = p;\n y = '0';\n } else {\n y = p;\n x = '0';\n }\n\n if ((x).indexOf('%') >= 0) {\n x = `${parseInt(x, 10) * progress * rtlFactor}%`;\n } else {\n x = `${x * progress * rtlFactor}px`;\n }\n if ((y).indexOf('%') >= 0) {\n y = `${parseInt(y, 10) * progress}%`;\n } else {\n y = `${y * progress}px`;\n }\n\n if (typeof opacity !== 'undefined' && opacity !== null) {\n const currentOpacity = opacity - ((opacity - 1) * (1 - Math.abs(progress)));\n $el[0].style.opacity = currentOpacity;\n }\n if (typeof scale === 'undefined' || scale === null) {\n $el.transform(`translate3d(${x}, ${y}, 0px)`);\n } else {\n const currentScale = scale - ((scale - 1) * (1 - Math.abs(progress)));\n $el.transform(`translate3d(${x}, ${y}, 0px) scale(${currentScale})`);\n }\n },\n setTranslate() {\n const swiper = this;\n const {\n $el, slides, progress, snapGrid,\n } = swiper;\n $el.children('[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]')\n .each((index, el) => {\n swiper.parallax.setTransform(el, progress);\n });\n slides.each((slideIndex, slideEl) => {\n let slideProgress = slideEl.progress;\n if (swiper.params.slidesPerGroup > 1 && swiper.params.slidesPerView !== 'auto') {\n slideProgress += Math.ceil(slideIndex / 2) - (progress * (snapGrid.length - 1));\n }\n slideProgress = Math.min(Math.max(slideProgress, -1), 1);\n $(slideEl).find('[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]')\n .each((index, el) => {\n swiper.parallax.setTransform(el, slideProgress);\n });\n });\n },\n setTransition(duration = this.params.speed) {\n const swiper = this;\n const { $el } = swiper;\n $el.find('[data-swiper-parallax], [data-swiper-parallax-x], [data-swiper-parallax-y], [data-swiper-parallax-opacity], [data-swiper-parallax-scale]')\n .each((index, parallaxEl) => {\n const $parallaxEl = $(parallaxEl);\n let parallaxDuration = parseInt($parallaxEl.attr('data-swiper-parallax-duration'), 10) || duration;\n if (duration === 0) parallaxDuration = 0;\n $parallaxEl.transition(parallaxDuration);\n });\n },\n};\n\nvar Parallax$1 = {\n name: 'parallax',\n params: {\n parallax: {\n enabled: false,\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n parallax: {\n setTransform: Parallax.setTransform.bind(swiper),\n setTranslate: Parallax.setTranslate.bind(swiper),\n setTransition: Parallax.setTransition.bind(swiper),\n },\n });\n },\n on: {\n beforeInit() {\n const swiper = this;\n if (!swiper.params.parallax.enabled) return;\n swiper.params.watchSlidesProgress = true;\n swiper.originalParams.watchSlidesProgress = true;\n },\n init() {\n const swiper = this;\n if (!swiper.params.parallax.enabled) return;\n swiper.parallax.setTranslate();\n },\n setTranslate() {\n const swiper = this;\n if (!swiper.params.parallax.enabled) return;\n swiper.parallax.setTranslate();\n },\n setTransition(duration) {\n const swiper = this;\n if (!swiper.params.parallax.enabled) return;\n swiper.parallax.setTransition(duration);\n },\n },\n};\n\nconst Zoom = {\n // Calc Scale From Multi-touches\n getDistanceBetweenTouches(e) {\n if (e.targetTouches.length < 2) return 1;\n const x1 = e.targetTouches[0].pageX;\n const y1 = e.targetTouches[0].pageY;\n const x2 = e.targetTouches[1].pageX;\n const y2 = e.targetTouches[1].pageY;\n const distance = Math.sqrt(((x2 - x1) ** 2) + ((y2 - y1) ** 2));\n return distance;\n },\n // Events\n onGestureStart(e) {\n const swiper = this;\n const params = swiper.params.zoom;\n const zoom = swiper.zoom;\n const { gesture } = zoom;\n zoom.fakeGestureTouched = false;\n zoom.fakeGestureMoved = false;\n if (!Support.gestures) {\n if (e.type !== 'touchstart' || (e.type === 'touchstart' && e.targetTouches.length < 2)) {\n return;\n }\n zoom.fakeGestureTouched = true;\n gesture.scaleStart = Zoom.getDistanceBetweenTouches(e);\n }\n if (!gesture.$slideEl || !gesture.$slideEl.length) {\n gesture.$slideEl = $(e.target).closest(`.${swiper.params.slideClass}`);\n if (gesture.$slideEl.length === 0) gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);\n gesture.$imageEl = gesture.$slideEl.find('img, svg, canvas, picture, .swiper-zoom-target');\n gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`);\n gesture.maxRatio = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n if (gesture.$imageWrapEl.length === 0) {\n gesture.$imageEl = undefined;\n return;\n }\n }\n if (gesture.$imageEl) {\n gesture.$imageEl.transition(0);\n }\n swiper.zoom.isScaling = true;\n },\n onGestureChange(e) {\n const swiper = this;\n const params = swiper.params.zoom;\n const zoom = swiper.zoom;\n const { gesture } = zoom;\n if (!Support.gestures) {\n if (e.type !== 'touchmove' || (e.type === 'touchmove' && e.targetTouches.length < 2)) {\n return;\n }\n zoom.fakeGestureMoved = true;\n gesture.scaleMove = Zoom.getDistanceBetweenTouches(e);\n }\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n if (Support.gestures) {\n zoom.scale = e.scale * zoom.currentScale;\n } else {\n zoom.scale = (gesture.scaleMove / gesture.scaleStart) * zoom.currentScale;\n }\n if (zoom.scale > gesture.maxRatio) {\n zoom.scale = (gesture.maxRatio - 1) + (((zoom.scale - gesture.maxRatio) + 1) ** 0.5);\n }\n if (zoom.scale < params.minRatio) {\n zoom.scale = (params.minRatio + 1) - (((params.minRatio - zoom.scale) + 1) ** 0.5);\n }\n gesture.$imageEl.transform(`translate3d(0,0,0) scale(${zoom.scale})`);\n },\n onGestureEnd(e) {\n const swiper = this;\n const params = swiper.params.zoom;\n const zoom = swiper.zoom;\n const { gesture } = zoom;\n if (!Support.gestures) {\n if (!zoom.fakeGestureTouched || !zoom.fakeGestureMoved) {\n return;\n }\n if (e.type !== 'touchend' || (e.type === 'touchend' && e.changedTouches.length < 2 && !Device.android)) {\n return;\n }\n zoom.fakeGestureTouched = false;\n zoom.fakeGestureMoved = false;\n }\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n zoom.scale = Math.max(Math.min(zoom.scale, gesture.maxRatio), params.minRatio);\n gesture.$imageEl.transition(swiper.params.speed).transform(`translate3d(0,0,0) scale(${zoom.scale})`);\n zoom.currentScale = zoom.scale;\n zoom.isScaling = false;\n if (zoom.scale === 1) gesture.$slideEl = undefined;\n },\n onTouchStart(e) {\n const swiper = this;\n const zoom = swiper.zoom;\n const { gesture, image } = zoom;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n if (image.isTouched) return;\n if (Device.android && e.cancelable) e.preventDefault();\n image.isTouched = true;\n image.touchesStart.x = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX;\n image.touchesStart.y = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY;\n },\n onTouchMove(e) {\n const swiper = this;\n const zoom = swiper.zoom;\n const { gesture, image, velocity } = zoom;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n swiper.allowClick = false;\n if (!image.isTouched || !gesture.$slideEl) return;\n\n if (!image.isMoved) {\n image.width = gesture.$imageEl[0].offsetWidth;\n image.height = gesture.$imageEl[0].offsetHeight;\n image.startX = Utils.getTranslate(gesture.$imageWrapEl[0], 'x') || 0;\n image.startY = Utils.getTranslate(gesture.$imageWrapEl[0], 'y') || 0;\n gesture.slideWidth = gesture.$slideEl[0].offsetWidth;\n gesture.slideHeight = gesture.$slideEl[0].offsetHeight;\n gesture.$imageWrapEl.transition(0);\n if (swiper.rtl) {\n image.startX = -image.startX;\n image.startY = -image.startY;\n }\n }\n // Define if we need image drag\n const scaledWidth = image.width * zoom.scale;\n const scaledHeight = image.height * zoom.scale;\n\n if (scaledWidth < gesture.slideWidth && scaledHeight < gesture.slideHeight) return;\n\n image.minX = Math.min(((gesture.slideWidth / 2) - (scaledWidth / 2)), 0);\n image.maxX = -image.minX;\n image.minY = Math.min(((gesture.slideHeight / 2) - (scaledHeight / 2)), 0);\n image.maxY = -image.minY;\n\n image.touchesCurrent.x = e.type === 'touchmove' ? e.targetTouches[0].pageX : e.pageX;\n image.touchesCurrent.y = e.type === 'touchmove' ? e.targetTouches[0].pageY : e.pageY;\n\n if (!image.isMoved && !zoom.isScaling) {\n if (\n swiper.isHorizontal()\n && (\n (Math.floor(image.minX) === Math.floor(image.startX) && image.touchesCurrent.x < image.touchesStart.x)\n || (Math.floor(image.maxX) === Math.floor(image.startX) && image.touchesCurrent.x > image.touchesStart.x)\n )\n ) {\n image.isTouched = false;\n return;\n } if (\n !swiper.isHorizontal()\n && (\n (Math.floor(image.minY) === Math.floor(image.startY) && image.touchesCurrent.y < image.touchesStart.y)\n || (Math.floor(image.maxY) === Math.floor(image.startY) && image.touchesCurrent.y > image.touchesStart.y)\n )\n ) {\n image.isTouched = false;\n return;\n }\n }\n if (e.cancelable) {\n e.preventDefault();\n }\n e.stopPropagation();\n\n image.isMoved = true;\n image.currentX = (image.touchesCurrent.x - image.touchesStart.x) + image.startX;\n image.currentY = (image.touchesCurrent.y - image.touchesStart.y) + image.startY;\n\n if (image.currentX < image.minX) {\n image.currentX = (image.minX + 1) - (((image.minX - image.currentX) + 1) ** 0.8);\n }\n if (image.currentX > image.maxX) {\n image.currentX = (image.maxX - 1) + (((image.currentX - image.maxX) + 1) ** 0.8);\n }\n\n if (image.currentY < image.minY) {\n image.currentY = (image.minY + 1) - (((image.minY - image.currentY) + 1) ** 0.8);\n }\n if (image.currentY > image.maxY) {\n image.currentY = (image.maxY - 1) + (((image.currentY - image.maxY) + 1) ** 0.8);\n }\n\n // Velocity\n if (!velocity.prevPositionX) velocity.prevPositionX = image.touchesCurrent.x;\n if (!velocity.prevPositionY) velocity.prevPositionY = image.touchesCurrent.y;\n if (!velocity.prevTime) velocity.prevTime = Date.now();\n velocity.x = (image.touchesCurrent.x - velocity.prevPositionX) / (Date.now() - velocity.prevTime) / 2;\n velocity.y = (image.touchesCurrent.y - velocity.prevPositionY) / (Date.now() - velocity.prevTime) / 2;\n if (Math.abs(image.touchesCurrent.x - velocity.prevPositionX) < 2) velocity.x = 0;\n if (Math.abs(image.touchesCurrent.y - velocity.prevPositionY) < 2) velocity.y = 0;\n velocity.prevPositionX = image.touchesCurrent.x;\n velocity.prevPositionY = image.touchesCurrent.y;\n velocity.prevTime = Date.now();\n\n gesture.$imageWrapEl.transform(`translate3d(${image.currentX}px, ${image.currentY}px,0)`);\n },\n onTouchEnd() {\n const swiper = this;\n const zoom = swiper.zoom;\n const { gesture, image, velocity } = zoom;\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n if (!image.isTouched || !image.isMoved) {\n image.isTouched = false;\n image.isMoved = false;\n return;\n }\n image.isTouched = false;\n image.isMoved = false;\n let momentumDurationX = 300;\n let momentumDurationY = 300;\n const momentumDistanceX = velocity.x * momentumDurationX;\n const newPositionX = image.currentX + momentumDistanceX;\n const momentumDistanceY = velocity.y * momentumDurationY;\n const newPositionY = image.currentY + momentumDistanceY;\n\n // Fix duration\n if (velocity.x !== 0) momentumDurationX = Math.abs((newPositionX - image.currentX) / velocity.x);\n if (velocity.y !== 0) momentumDurationY = Math.abs((newPositionY - image.currentY) / velocity.y);\n const momentumDuration = Math.max(momentumDurationX, momentumDurationY);\n\n image.currentX = newPositionX;\n image.currentY = newPositionY;\n\n // Define if we need image drag\n const scaledWidth = image.width * zoom.scale;\n const scaledHeight = image.height * zoom.scale;\n image.minX = Math.min(((gesture.slideWidth / 2) - (scaledWidth / 2)), 0);\n image.maxX = -image.minX;\n image.minY = Math.min(((gesture.slideHeight / 2) - (scaledHeight / 2)), 0);\n image.maxY = -image.minY;\n image.currentX = Math.max(Math.min(image.currentX, image.maxX), image.minX);\n image.currentY = Math.max(Math.min(image.currentY, image.maxY), image.minY);\n\n gesture.$imageWrapEl.transition(momentumDuration).transform(`translate3d(${image.currentX}px, ${image.currentY}px,0)`);\n },\n onTransitionEnd() {\n const swiper = this;\n const zoom = swiper.zoom;\n const { gesture } = zoom;\n if (gesture.$slideEl && swiper.previousIndex !== swiper.activeIndex) {\n if (gesture.$imageEl) {\n gesture.$imageEl.transform('translate3d(0,0,0) scale(1)');\n }\n if (gesture.$imageWrapEl) {\n gesture.$imageWrapEl.transform('translate3d(0,0,0)');\n }\n\n zoom.scale = 1;\n zoom.currentScale = 1;\n\n gesture.$slideEl = undefined;\n gesture.$imageEl = undefined;\n gesture.$imageWrapEl = undefined;\n }\n },\n // Toggle Zoom\n toggle(e) {\n const swiper = this;\n const zoom = swiper.zoom;\n\n if (zoom.scale && zoom.scale !== 1) {\n // Zoom Out\n zoom.out();\n } else {\n // Zoom In\n zoom.in(e);\n }\n },\n in(e) {\n const swiper = this;\n\n const zoom = swiper.zoom;\n const params = swiper.params.zoom;\n const { gesture, image } = zoom;\n\n if (!gesture.$slideEl) {\n if (swiper.params.virtual && swiper.params.virtual.enabled && swiper.virtual) {\n gesture.$slideEl = swiper.$wrapperEl.children(`.${swiper.params.slideActiveClass}`);\n } else {\n gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);\n }\n gesture.$imageEl = gesture.$slideEl.find('img, svg, canvas, picture, .swiper-zoom-target');\n gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`);\n }\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n\n gesture.$slideEl.addClass(`${params.zoomedSlideClass}`);\n\n let touchX;\n let touchY;\n let offsetX;\n let offsetY;\n let diffX;\n let diffY;\n let translateX;\n let translateY;\n let imageWidth;\n let imageHeight;\n let scaledWidth;\n let scaledHeight;\n let translateMinX;\n let translateMinY;\n let translateMaxX;\n let translateMaxY;\n let slideWidth;\n let slideHeight;\n\n if (typeof image.touchesStart.x === 'undefined' && e) {\n touchX = e.type === 'touchend' ? e.changedTouches[0].pageX : e.pageX;\n touchY = e.type === 'touchend' ? e.changedTouches[0].pageY : e.pageY;\n } else {\n touchX = image.touchesStart.x;\n touchY = image.touchesStart.y;\n }\n\n zoom.scale = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n zoom.currentScale = gesture.$imageWrapEl.attr('data-swiper-zoom') || params.maxRatio;\n if (e) {\n slideWidth = gesture.$slideEl[0].offsetWidth;\n slideHeight = gesture.$slideEl[0].offsetHeight;\n offsetX = gesture.$slideEl.offset().left;\n offsetY = gesture.$slideEl.offset().top;\n diffX = (offsetX + (slideWidth / 2)) - touchX;\n diffY = (offsetY + (slideHeight / 2)) - touchY;\n\n imageWidth = gesture.$imageEl[0].offsetWidth;\n imageHeight = gesture.$imageEl[0].offsetHeight;\n scaledWidth = imageWidth * zoom.scale;\n scaledHeight = imageHeight * zoom.scale;\n\n translateMinX = Math.min(((slideWidth / 2) - (scaledWidth / 2)), 0);\n translateMinY = Math.min(((slideHeight / 2) - (scaledHeight / 2)), 0);\n translateMaxX = -translateMinX;\n translateMaxY = -translateMinY;\n\n translateX = diffX * zoom.scale;\n translateY = diffY * zoom.scale;\n\n if (translateX < translateMinX) {\n translateX = translateMinX;\n }\n if (translateX > translateMaxX) {\n translateX = translateMaxX;\n }\n\n if (translateY < translateMinY) {\n translateY = translateMinY;\n }\n if (translateY > translateMaxY) {\n translateY = translateMaxY;\n }\n } else {\n translateX = 0;\n translateY = 0;\n }\n gesture.$imageWrapEl.transition(300).transform(`translate3d(${translateX}px, ${translateY}px,0)`);\n gesture.$imageEl.transition(300).transform(`translate3d(0,0,0) scale(${zoom.scale})`);\n },\n out() {\n const swiper = this;\n\n const zoom = swiper.zoom;\n const params = swiper.params.zoom;\n const { gesture } = zoom;\n\n if (!gesture.$slideEl) {\n if (swiper.params.virtual && swiper.params.virtual.enabled && swiper.virtual) {\n gesture.$slideEl = swiper.$wrapperEl.children(`.${swiper.params.slideActiveClass}`);\n } else {\n gesture.$slideEl = swiper.slides.eq(swiper.activeIndex);\n }\n gesture.$imageEl = gesture.$slideEl.find('img, svg, canvas, picture, .swiper-zoom-target');\n gesture.$imageWrapEl = gesture.$imageEl.parent(`.${params.containerClass}`);\n }\n if (!gesture.$imageEl || gesture.$imageEl.length === 0) return;\n\n zoom.scale = 1;\n zoom.currentScale = 1;\n gesture.$imageWrapEl.transition(300).transform('translate3d(0,0,0)');\n gesture.$imageEl.transition(300).transform('translate3d(0,0,0) scale(1)');\n gesture.$slideEl.removeClass(`${params.zoomedSlideClass}`);\n gesture.$slideEl = undefined;\n },\n // Attach/Detach Events\n enable() {\n const swiper = this;\n const zoom = swiper.zoom;\n if (zoom.enabled) return;\n zoom.enabled = true;\n\n const passiveListener = swiper.touchEvents.start === 'touchstart' && Support.passiveListener && swiper.params.passiveListeners ? { passive: true, capture: false } : false;\n const activeListenerWithCapture = Support.passiveListener ? { passive: false, capture: true } : true;\n\n const slideSelector = `.${swiper.params.slideClass}`;\n\n // Scale image\n if (Support.gestures) {\n swiper.$wrapperEl.on('gesturestart', slideSelector, zoom.onGestureStart, passiveListener);\n swiper.$wrapperEl.on('gesturechange', slideSelector, zoom.onGestureChange, passiveListener);\n swiper.$wrapperEl.on('gestureend', slideSelector, zoom.onGestureEnd, passiveListener);\n } else if (swiper.touchEvents.start === 'touchstart') {\n swiper.$wrapperEl.on(swiper.touchEvents.start, slideSelector, zoom.onGestureStart, passiveListener);\n swiper.$wrapperEl.on(swiper.touchEvents.move, slideSelector, zoom.onGestureChange, activeListenerWithCapture);\n swiper.$wrapperEl.on(swiper.touchEvents.end, slideSelector, zoom.onGestureEnd, passiveListener);\n if (swiper.touchEvents.cancel) {\n swiper.$wrapperEl.on(swiper.touchEvents.cancel, slideSelector, zoom.onGestureEnd, passiveListener);\n }\n }\n\n // Move image\n swiper.$wrapperEl.on(swiper.touchEvents.move, `.${swiper.params.zoom.containerClass}`, zoom.onTouchMove, activeListenerWithCapture);\n },\n disable() {\n const swiper = this;\n const zoom = swiper.zoom;\n if (!zoom.enabled) return;\n\n swiper.zoom.enabled = false;\n\n const passiveListener = swiper.touchEvents.start === 'touchstart' && Support.passiveListener && swiper.params.passiveListeners ? { passive: true, capture: false } : false;\n const activeListenerWithCapture = Support.passiveListener ? { passive: false, capture: true } : true;\n\n const slideSelector = `.${swiper.params.slideClass}`;\n\n // Scale image\n if (Support.gestures) {\n swiper.$wrapperEl.off('gesturestart', slideSelector, zoom.onGestureStart, passiveListener);\n swiper.$wrapperEl.off('gesturechange', slideSelector, zoom.onGestureChange, passiveListener);\n swiper.$wrapperEl.off('gestureend', slideSelector, zoom.onGestureEnd, passiveListener);\n } else if (swiper.touchEvents.start === 'touchstart') {\n swiper.$wrapperEl.off(swiper.touchEvents.start, slideSelector, zoom.onGestureStart, passiveListener);\n swiper.$wrapperEl.off(swiper.touchEvents.move, slideSelector, zoom.onGestureChange, activeListenerWithCapture);\n swiper.$wrapperEl.off(swiper.touchEvents.end, slideSelector, zoom.onGestureEnd, passiveListener);\n if (swiper.touchEvents.cancel) {\n swiper.$wrapperEl.off(swiper.touchEvents.cancel, slideSelector, zoom.onGestureEnd, passiveListener);\n }\n }\n\n // Move image\n swiper.$wrapperEl.off(swiper.touchEvents.move, `.${swiper.params.zoom.containerClass}`, zoom.onTouchMove, activeListenerWithCapture);\n },\n};\n\nvar Zoom$1 = {\n name: 'zoom',\n params: {\n zoom: {\n enabled: false,\n maxRatio: 3,\n minRatio: 1,\n toggle: true,\n containerClass: 'swiper-zoom-container',\n zoomedSlideClass: 'swiper-slide-zoomed',\n },\n },\n create() {\n const swiper = this;\n const zoom = {\n enabled: false,\n scale: 1,\n currentScale: 1,\n isScaling: false,\n gesture: {\n $slideEl: undefined,\n slideWidth: undefined,\n slideHeight: undefined,\n $imageEl: undefined,\n $imageWrapEl: undefined,\n maxRatio: 3,\n },\n image: {\n isTouched: undefined,\n isMoved: undefined,\n currentX: undefined,\n currentY: undefined,\n minX: undefined,\n minY: undefined,\n maxX: undefined,\n maxY: undefined,\n width: undefined,\n height: undefined,\n startX: undefined,\n startY: undefined,\n touchesStart: {},\n touchesCurrent: {},\n },\n velocity: {\n x: undefined,\n y: undefined,\n prevPositionX: undefined,\n prevPositionY: undefined,\n prevTime: undefined,\n },\n };\n\n ('onGestureStart onGestureChange onGestureEnd onTouchStart onTouchMove onTouchEnd onTransitionEnd toggle enable disable in out').split(' ').forEach((methodName) => {\n zoom[methodName] = Zoom[methodName].bind(swiper);\n });\n Utils.extend(swiper, {\n zoom,\n });\n\n let scale = 1;\n Object.defineProperty(swiper.zoom, 'scale', {\n get() {\n return scale;\n },\n set(value) {\n if (scale !== value) {\n const imageEl = swiper.zoom.gesture.$imageEl ? swiper.zoom.gesture.$imageEl[0] : undefined;\n const slideEl = swiper.zoom.gesture.$slideEl ? swiper.zoom.gesture.$slideEl[0] : undefined;\n swiper.emit('zoomChange', value, imageEl, slideEl);\n }\n scale = value;\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n if (swiper.params.zoom.enabled) {\n swiper.zoom.enable();\n }\n },\n destroy() {\n const swiper = this;\n swiper.zoom.disable();\n },\n touchStart(e) {\n const swiper = this;\n if (!swiper.zoom.enabled) return;\n swiper.zoom.onTouchStart(e);\n },\n touchEnd(e) {\n const swiper = this;\n if (!swiper.zoom.enabled) return;\n swiper.zoom.onTouchEnd(e);\n },\n doubleTap(e) {\n const swiper = this;\n if (swiper.params.zoom.enabled && swiper.zoom.enabled && swiper.params.zoom.toggle) {\n swiper.zoom.toggle(e);\n }\n },\n transitionEnd() {\n const swiper = this;\n if (swiper.zoom.enabled && swiper.params.zoom.enabled) {\n swiper.zoom.onTransitionEnd();\n }\n },\n slideChange() {\n const swiper = this;\n if (swiper.zoom.enabled && swiper.params.zoom.enabled && swiper.params.cssMode) {\n swiper.zoom.onTransitionEnd();\n }\n },\n },\n};\n\nconst Lazy = {\n loadInSlide(index, loadInDuplicate = true) {\n const swiper = this;\n const params = swiper.params.lazy;\n if (typeof index === 'undefined') return;\n if (swiper.slides.length === 0) return;\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n\n const $slideEl = isVirtual\n ? swiper.$wrapperEl.children(`.${swiper.params.slideClass}[data-swiper-slide-index=\"${index}\"]`)\n : swiper.slides.eq(index);\n\n let $images = $slideEl.find(`.${params.elementClass}:not(.${params.loadedClass}):not(.${params.loadingClass})`);\n if ($slideEl.hasClass(params.elementClass) && !$slideEl.hasClass(params.loadedClass) && !$slideEl.hasClass(params.loadingClass)) {\n $images = $images.add($slideEl[0]);\n }\n if ($images.length === 0) return;\n\n $images.each((imageIndex, imageEl) => {\n const $imageEl = $(imageEl);\n $imageEl.addClass(params.loadingClass);\n\n const background = $imageEl.attr('data-background');\n const src = $imageEl.attr('data-src');\n const srcset = $imageEl.attr('data-srcset');\n const sizes = $imageEl.attr('data-sizes');\n const $pictureEl = $imageEl.parent('picture');\n\n swiper.loadImage($imageEl[0], (src || background), srcset, sizes, false, () => {\n if (typeof swiper === 'undefined' || swiper === null || !swiper || (swiper && !swiper.params) || swiper.destroyed) return;\n if (background) {\n $imageEl.css('background-image', `url(\"${background}\")`);\n $imageEl.removeAttr('data-background');\n } else {\n if (srcset) {\n $imageEl.attr('srcset', srcset);\n $imageEl.removeAttr('data-srcset');\n }\n if (sizes) {\n $imageEl.attr('sizes', sizes);\n $imageEl.removeAttr('data-sizes');\n }\n if ($pictureEl.length) {\n $pictureEl.children('source').each((sourceIndex, sourceEl) => {\n const $source = $(sourceEl);\n\n if ($source.attr('data-srcset')) {\n $source.attr('srcset', $source.attr('data-srcset'));\n $source.removeAttr('data-srcset');\n }\n });\n }\n if (src) {\n $imageEl.attr('src', src);\n $imageEl.removeAttr('data-src');\n }\n }\n\n $imageEl.addClass(params.loadedClass).removeClass(params.loadingClass);\n $slideEl.find(`.${params.preloaderClass}`).remove();\n if (swiper.params.loop && loadInDuplicate) {\n const slideOriginalIndex = $slideEl.attr('data-swiper-slide-index');\n if ($slideEl.hasClass(swiper.params.slideDuplicateClass)) {\n const originalSlide = swiper.$wrapperEl.children(`[data-swiper-slide-index=\"${slideOriginalIndex}\"]:not(.${swiper.params.slideDuplicateClass})`);\n swiper.lazy.loadInSlide(originalSlide.index(), false);\n } else {\n const duplicatedSlide = swiper.$wrapperEl.children(`.${swiper.params.slideDuplicateClass}[data-swiper-slide-index=\"${slideOriginalIndex}\"]`);\n swiper.lazy.loadInSlide(duplicatedSlide.index(), false);\n }\n }\n swiper.emit('lazyImageReady', $slideEl[0], $imageEl[0]);\n if (swiper.params.autoHeight) {\n swiper.updateAutoHeight();\n }\n });\n\n swiper.emit('lazyImageLoad', $slideEl[0], $imageEl[0]);\n });\n },\n load() {\n const swiper = this;\n const {\n $wrapperEl, params: swiperParams, slides, activeIndex,\n } = swiper;\n const isVirtual = swiper.virtual && swiperParams.virtual.enabled;\n const params = swiperParams.lazy;\n\n let slidesPerView = swiperParams.slidesPerView;\n if (slidesPerView === 'auto') {\n slidesPerView = 0;\n }\n\n function slideExist(index) {\n if (isVirtual) {\n if ($wrapperEl.children(`.${swiperParams.slideClass}[data-swiper-slide-index=\"${index}\"]`).length) {\n return true;\n }\n } else if (slides[index]) return true;\n return false;\n }\n\n function slideIndex(slideEl) {\n if (isVirtual) {\n return $(slideEl).attr('data-swiper-slide-index');\n }\n return $(slideEl).index();\n }\n\n if (!swiper.lazy.initialImageLoaded) swiper.lazy.initialImageLoaded = true;\n if (swiper.params.watchSlidesVisibility) {\n $wrapperEl.children(`.${swiperParams.slideVisibleClass}`).each((elIndex, slideEl) => {\n const index = isVirtual ? $(slideEl).attr('data-swiper-slide-index') : $(slideEl).index();\n swiper.lazy.loadInSlide(index);\n });\n } else if (slidesPerView > 1) {\n for (let i = activeIndex; i < activeIndex + slidesPerView; i += 1) {\n if (slideExist(i)) swiper.lazy.loadInSlide(i);\n }\n } else {\n swiper.lazy.loadInSlide(activeIndex);\n }\n if (params.loadPrevNext) {\n if (slidesPerView > 1 || (params.loadPrevNextAmount && params.loadPrevNextAmount > 1)) {\n const amount = params.loadPrevNextAmount;\n const spv = slidesPerView;\n const maxIndex = Math.min(activeIndex + spv + Math.max(amount, spv), slides.length);\n const minIndex = Math.max(activeIndex - Math.max(spv, amount), 0);\n // Next Slides\n for (let i = activeIndex + slidesPerView; i < maxIndex; i += 1) {\n if (slideExist(i)) swiper.lazy.loadInSlide(i);\n }\n // Prev Slides\n for (let i = minIndex; i < activeIndex; i += 1) {\n if (slideExist(i)) swiper.lazy.loadInSlide(i);\n }\n } else {\n const nextSlide = $wrapperEl.children(`.${swiperParams.slideNextClass}`);\n if (nextSlide.length > 0) swiper.lazy.loadInSlide(slideIndex(nextSlide));\n\n const prevSlide = $wrapperEl.children(`.${swiperParams.slidePrevClass}`);\n if (prevSlide.length > 0) swiper.lazy.loadInSlide(slideIndex(prevSlide));\n }\n }\n },\n};\n\nvar Lazy$1 = {\n name: 'lazy',\n params: {\n lazy: {\n enabled: false,\n loadPrevNext: false,\n loadPrevNextAmount: 1,\n loadOnTransitionStart: false,\n\n elementClass: 'swiper-lazy',\n loadingClass: 'swiper-lazy-loading',\n loadedClass: 'swiper-lazy-loaded',\n preloaderClass: 'swiper-lazy-preloader',\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n lazy: {\n initialImageLoaded: false,\n load: Lazy.load.bind(swiper),\n loadInSlide: Lazy.loadInSlide.bind(swiper),\n },\n });\n },\n on: {\n beforeInit() {\n const swiper = this;\n if (swiper.params.lazy.enabled && swiper.params.preloadImages) {\n swiper.params.preloadImages = false;\n }\n },\n init() {\n const swiper = this;\n if (swiper.params.lazy.enabled && !swiper.params.loop && swiper.params.initialSlide === 0) {\n swiper.lazy.load();\n }\n },\n scroll() {\n const swiper = this;\n if (swiper.params.freeMode && !swiper.params.freeModeSticky) {\n swiper.lazy.load();\n }\n },\n resize() {\n const swiper = this;\n if (swiper.params.lazy.enabled) {\n swiper.lazy.load();\n }\n },\n scrollbarDragMove() {\n const swiper = this;\n if (swiper.params.lazy.enabled) {\n swiper.lazy.load();\n }\n },\n transitionStart() {\n const swiper = this;\n if (swiper.params.lazy.enabled) {\n if (swiper.params.lazy.loadOnTransitionStart || (!swiper.params.lazy.loadOnTransitionStart && !swiper.lazy.initialImageLoaded)) {\n swiper.lazy.load();\n }\n }\n },\n transitionEnd() {\n const swiper = this;\n if (swiper.params.lazy.enabled && !swiper.params.lazy.loadOnTransitionStart) {\n swiper.lazy.load();\n }\n },\n slideChange() {\n const swiper = this;\n if (swiper.params.lazy.enabled && swiper.params.cssMode) {\n swiper.lazy.load();\n }\n },\n },\n};\n\n/* eslint no-bitwise: [\"error\", { \"allow\": [\">>\"] }] */\n\nconst Controller = {\n LinearSpline: function LinearSpline(x, y) {\n const binarySearch = (function search() {\n let maxIndex;\n let minIndex;\n let guess;\n return (array, val) => {\n minIndex = -1;\n maxIndex = array.length;\n while (maxIndex - minIndex > 1) {\n guess = maxIndex + minIndex >> 1;\n if (array[guess] <= val) {\n minIndex = guess;\n } else {\n maxIndex = guess;\n }\n }\n return maxIndex;\n };\n }());\n this.x = x;\n this.y = y;\n this.lastIndex = x.length - 1;\n // Given an x value (x2), return the expected y2 value:\n // (x1,y1) is the known point before given value,\n // (x3,y3) is the known point after given value.\n let i1;\n let i3;\n\n this.interpolate = function interpolate(x2) {\n if (!x2) return 0;\n\n // Get the indexes of x1 and x3 (the array indexes before and after given x2):\n i3 = binarySearch(this.x, x2);\n i1 = i3 - 1;\n\n // We have our indexes i1 & i3, so we can calculate already:\n // y2 := ((x2−x1) × (y3−y1)) ÷ (x3−x1) + y1\n return (((x2 - this.x[i1]) * (this.y[i3] - this.y[i1])) / (this.x[i3] - this.x[i1])) + this.y[i1];\n };\n return this;\n },\n // xxx: for now i will just save one spline function to to\n getInterpolateFunction(c) {\n const swiper = this;\n if (!swiper.controller.spline) {\n swiper.controller.spline = swiper.params.loop\n ? new Controller.LinearSpline(swiper.slidesGrid, c.slidesGrid)\n : new Controller.LinearSpline(swiper.snapGrid, c.snapGrid);\n }\n },\n setTranslate(setTranslate, byController) {\n const swiper = this;\n const controlled = swiper.controller.control;\n let multiplier;\n let controlledTranslate;\n function setControlledTranslate(c) {\n // this will create an Interpolate function based on the snapGrids\n // x is the Grid of the scrolled scroller and y will be the controlled scroller\n // it makes sense to create this only once and recall it for the interpolation\n // the function does a lot of value caching for performance\n const translate = swiper.rtlTranslate ? -swiper.translate : swiper.translate;\n if (swiper.params.controller.by === 'slide') {\n swiper.controller.getInterpolateFunction(c);\n // i am not sure why the values have to be multiplicated this way, tried to invert the snapGrid\n // but it did not work out\n controlledTranslate = -swiper.controller.spline.interpolate(-translate);\n }\n\n if (!controlledTranslate || swiper.params.controller.by === 'container') {\n multiplier = (c.maxTranslate() - c.minTranslate()) / (swiper.maxTranslate() - swiper.minTranslate());\n controlledTranslate = ((translate - swiper.minTranslate()) * multiplier) + c.minTranslate();\n }\n\n if (swiper.params.controller.inverse) {\n controlledTranslate = c.maxTranslate() - controlledTranslate;\n }\n c.updateProgress(controlledTranslate);\n c.setTranslate(controlledTranslate, swiper);\n c.updateActiveIndex();\n c.updateSlidesClasses();\n }\n if (Array.isArray(controlled)) {\n for (let i = 0; i < controlled.length; i += 1) {\n if (controlled[i] !== byController && controlled[i] instanceof Swiper) {\n setControlledTranslate(controlled[i]);\n }\n }\n } else if (controlled instanceof Swiper && byController !== controlled) {\n setControlledTranslate(controlled);\n }\n },\n setTransition(duration, byController) {\n const swiper = this;\n const controlled = swiper.controller.control;\n let i;\n function setControlledTransition(c) {\n c.setTransition(duration, swiper);\n if (duration !== 0) {\n c.transitionStart();\n if (c.params.autoHeight) {\n Utils.nextTick(() => {\n c.updateAutoHeight();\n });\n }\n c.$wrapperEl.transitionEnd(() => {\n if (!controlled) return;\n if (c.params.loop && swiper.params.controller.by === 'slide') {\n c.loopFix();\n }\n c.transitionEnd();\n });\n }\n }\n if (Array.isArray(controlled)) {\n for (i = 0; i < controlled.length; i += 1) {\n if (controlled[i] !== byController && controlled[i] instanceof Swiper) {\n setControlledTransition(controlled[i]);\n }\n }\n } else if (controlled instanceof Swiper && byController !== controlled) {\n setControlledTransition(controlled);\n }\n },\n};\nvar Controller$1 = {\n name: 'controller',\n params: {\n controller: {\n control: undefined,\n inverse: false,\n by: 'slide', // or 'container'\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n controller: {\n control: swiper.params.controller.control,\n getInterpolateFunction: Controller.getInterpolateFunction.bind(swiper),\n setTranslate: Controller.setTranslate.bind(swiper),\n setTransition: Controller.setTransition.bind(swiper),\n },\n });\n },\n on: {\n update() {\n const swiper = this;\n if (!swiper.controller.control) return;\n if (swiper.controller.spline) {\n swiper.controller.spline = undefined;\n delete swiper.controller.spline;\n }\n },\n resize() {\n const swiper = this;\n if (!swiper.controller.control) return;\n if (swiper.controller.spline) {\n swiper.controller.spline = undefined;\n delete swiper.controller.spline;\n }\n },\n observerUpdate() {\n const swiper = this;\n if (!swiper.controller.control) return;\n if (swiper.controller.spline) {\n swiper.controller.spline = undefined;\n delete swiper.controller.spline;\n }\n },\n setTranslate(translate, byController) {\n const swiper = this;\n if (!swiper.controller.control) return;\n swiper.controller.setTranslate(translate, byController);\n },\n setTransition(duration, byController) {\n const swiper = this;\n if (!swiper.controller.control) return;\n swiper.controller.setTransition(duration, byController);\n },\n },\n};\n\nconst a11y = {\n makeElFocusable($el) {\n $el.attr('tabIndex', '0');\n return $el;\n },\n makeElNotFocusable($el) {\n $el.attr('tabIndex', '-1');\n return $el;\n },\n addElRole($el, role) {\n $el.attr('role', role);\n return $el;\n },\n addElLabel($el, label) {\n $el.attr('aria-label', label);\n return $el;\n },\n disableEl($el) {\n $el.attr('aria-disabled', true);\n return $el;\n },\n enableEl($el) {\n $el.attr('aria-disabled', false);\n return $el;\n },\n onEnterKey(e) {\n const swiper = this;\n const params = swiper.params.a11y;\n if (e.keyCode !== 13) return;\n const $targetEl = $(e.target);\n if (swiper.navigation && swiper.navigation.$nextEl && $targetEl.is(swiper.navigation.$nextEl)) {\n if (!(swiper.isEnd && !swiper.params.loop)) {\n swiper.slideNext();\n }\n if (swiper.isEnd) {\n swiper.a11y.notify(params.lastSlideMessage);\n } else {\n swiper.a11y.notify(params.nextSlideMessage);\n }\n }\n if (swiper.navigation && swiper.navigation.$prevEl && $targetEl.is(swiper.navigation.$prevEl)) {\n if (!(swiper.isBeginning && !swiper.params.loop)) {\n swiper.slidePrev();\n }\n if (swiper.isBeginning) {\n swiper.a11y.notify(params.firstSlideMessage);\n } else {\n swiper.a11y.notify(params.prevSlideMessage);\n }\n }\n if (swiper.pagination && $targetEl.is(`.${swiper.params.pagination.bulletClass}`)) {\n $targetEl[0].click();\n }\n },\n notify(message) {\n const swiper = this;\n const notification = swiper.a11y.liveRegion;\n if (notification.length === 0) return;\n notification.html('');\n notification.html(message);\n },\n updateNavigation() {\n const swiper = this;\n\n if (swiper.params.loop || !swiper.navigation) return;\n const { $nextEl, $prevEl } = swiper.navigation;\n\n if ($prevEl && $prevEl.length > 0) {\n if (swiper.isBeginning) {\n swiper.a11y.disableEl($prevEl);\n swiper.a11y.makeElNotFocusable($prevEl);\n } else {\n swiper.a11y.enableEl($prevEl);\n swiper.a11y.makeElFocusable($prevEl);\n }\n }\n if ($nextEl && $nextEl.length > 0) {\n if (swiper.isEnd) {\n swiper.a11y.disableEl($nextEl);\n swiper.a11y.makeElNotFocusable($nextEl);\n } else {\n swiper.a11y.enableEl($nextEl);\n swiper.a11y.makeElFocusable($nextEl);\n }\n }\n },\n updatePagination() {\n const swiper = this;\n const params = swiper.params.a11y;\n if (swiper.pagination && swiper.params.pagination.clickable && swiper.pagination.bullets && swiper.pagination.bullets.length) {\n swiper.pagination.bullets.each((bulletIndex, bulletEl) => {\n const $bulletEl = $(bulletEl);\n swiper.a11y.makeElFocusable($bulletEl);\n swiper.a11y.addElRole($bulletEl, 'button');\n swiper.a11y.addElLabel($bulletEl, params.paginationBulletMessage.replace(/\\{\\{index\\}\\}/, $bulletEl.index() + 1));\n });\n }\n },\n init() {\n const swiper = this;\n\n swiper.$el.append(swiper.a11y.liveRegion);\n\n // Navigation\n const params = swiper.params.a11y;\n let $nextEl;\n let $prevEl;\n if (swiper.navigation && swiper.navigation.$nextEl) {\n $nextEl = swiper.navigation.$nextEl;\n }\n if (swiper.navigation && swiper.navigation.$prevEl) {\n $prevEl = swiper.navigation.$prevEl;\n }\n if ($nextEl) {\n swiper.a11y.makeElFocusable($nextEl);\n swiper.a11y.addElRole($nextEl, 'button');\n swiper.a11y.addElLabel($nextEl, params.nextSlideMessage);\n $nextEl.on('keydown', swiper.a11y.onEnterKey);\n }\n if ($prevEl) {\n swiper.a11y.makeElFocusable($prevEl);\n swiper.a11y.addElRole($prevEl, 'button');\n swiper.a11y.addElLabel($prevEl, params.prevSlideMessage);\n $prevEl.on('keydown', swiper.a11y.onEnterKey);\n }\n\n // Pagination\n if (swiper.pagination && swiper.params.pagination.clickable && swiper.pagination.bullets && swiper.pagination.bullets.length) {\n swiper.pagination.$el.on('keydown', `.${swiper.params.pagination.bulletClass}`, swiper.a11y.onEnterKey);\n }\n },\n destroy() {\n const swiper = this;\n if (swiper.a11y.liveRegion && swiper.a11y.liveRegion.length > 0) swiper.a11y.liveRegion.remove();\n\n let $nextEl;\n let $prevEl;\n if (swiper.navigation && swiper.navigation.$nextEl) {\n $nextEl = swiper.navigation.$nextEl;\n }\n if (swiper.navigation && swiper.navigation.$prevEl) {\n $prevEl = swiper.navigation.$prevEl;\n }\n if ($nextEl) {\n $nextEl.off('keydown', swiper.a11y.onEnterKey);\n }\n if ($prevEl) {\n $prevEl.off('keydown', swiper.a11y.onEnterKey);\n }\n\n // Pagination\n if (swiper.pagination && swiper.params.pagination.clickable && swiper.pagination.bullets && swiper.pagination.bullets.length) {\n swiper.pagination.$el.off('keydown', `.${swiper.params.pagination.bulletClass}`, swiper.a11y.onEnterKey);\n }\n },\n};\nvar A11y = {\n name: 'a11y',\n params: {\n a11y: {\n enabled: true,\n notificationClass: 'swiper-notification',\n prevSlideMessage: 'Previous slide',\n nextSlideMessage: 'Next slide',\n firstSlideMessage: 'This is the first slide',\n lastSlideMessage: 'This is the last slide',\n paginationBulletMessage: 'Go to slide {{index}}',\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n a11y: {\n liveRegion: $(``),\n },\n });\n Object.keys(a11y).forEach((methodName) => {\n swiper.a11y[methodName] = a11y[methodName].bind(swiper);\n });\n },\n on: {\n init() {\n const swiper = this;\n if (!swiper.params.a11y.enabled) return;\n swiper.a11y.init();\n swiper.a11y.updateNavigation();\n },\n toEdge() {\n const swiper = this;\n if (!swiper.params.a11y.enabled) return;\n swiper.a11y.updateNavigation();\n },\n fromEdge() {\n const swiper = this;\n if (!swiper.params.a11y.enabled) return;\n swiper.a11y.updateNavigation();\n },\n paginationUpdate() {\n const swiper = this;\n if (!swiper.params.a11y.enabled) return;\n swiper.a11y.updatePagination();\n },\n destroy() {\n const swiper = this;\n if (!swiper.params.a11y.enabled) return;\n swiper.a11y.destroy();\n },\n },\n};\n\nconst History = {\n init() {\n const swiper = this;\n if (!swiper.params.history) return;\n if (!window.history || !window.history.pushState) {\n swiper.params.history.enabled = false;\n swiper.params.hashNavigation.enabled = true;\n return;\n }\n const history = swiper.history;\n history.initialized = true;\n history.paths = History.getPathValues();\n if (!history.paths.key && !history.paths.value) return;\n history.scrollToSlide(0, history.paths.value, swiper.params.runCallbacksOnInit);\n if (!swiper.params.history.replaceState) {\n window.addEventListener('popstate', swiper.history.setHistoryPopState);\n }\n },\n destroy() {\n const swiper = this;\n if (!swiper.params.history.replaceState) {\n window.removeEventListener('popstate', swiper.history.setHistoryPopState);\n }\n },\n setHistoryPopState() {\n const swiper = this;\n swiper.history.paths = History.getPathValues();\n swiper.history.scrollToSlide(swiper.params.speed, swiper.history.paths.value, false);\n },\n getPathValues() {\n const pathArray = window.location.pathname.slice(1).split('/').filter((part) => part !== '');\n const total = pathArray.length;\n const key = pathArray[total - 2];\n const value = pathArray[total - 1];\n return { key, value };\n },\n setHistory(key, index) {\n const swiper = this;\n if (!swiper.history.initialized || !swiper.params.history.enabled) return;\n const slide = swiper.slides.eq(index);\n let value = History.slugify(slide.attr('data-history'));\n if (!window.location.pathname.includes(key)) {\n value = `${key}/${value}`;\n }\n const currentState = window.history.state;\n if (currentState && currentState.value === value) {\n return;\n }\n if (swiper.params.history.replaceState) {\n window.history.replaceState({ value }, null, value);\n } else {\n window.history.pushState({ value }, null, value);\n }\n },\n slugify(text) {\n return text.toString()\n .replace(/\\s+/g, '-')\n .replace(/[^\\w-]+/g, '')\n .replace(/--+/g, '-')\n .replace(/^-+/, '')\n .replace(/-+$/, '');\n },\n scrollToSlide(speed, value, runCallbacks) {\n const swiper = this;\n if (value) {\n for (let i = 0, length = swiper.slides.length; i < length; i += 1) {\n const slide = swiper.slides.eq(i);\n const slideHistory = History.slugify(slide.attr('data-history'));\n if (slideHistory === value && !slide.hasClass(swiper.params.slideDuplicateClass)) {\n const index = slide.index();\n swiper.slideTo(index, speed, runCallbacks);\n }\n }\n } else {\n swiper.slideTo(0, speed, runCallbacks);\n }\n },\n};\n\nvar History$1 = {\n name: 'history',\n params: {\n history: {\n enabled: false,\n replaceState: false,\n key: 'slides',\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n history: {\n init: History.init.bind(swiper),\n setHistory: History.setHistory.bind(swiper),\n setHistoryPopState: History.setHistoryPopState.bind(swiper),\n scrollToSlide: History.scrollToSlide.bind(swiper),\n destroy: History.destroy.bind(swiper),\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n if (swiper.params.history.enabled) {\n swiper.history.init();\n }\n },\n destroy() {\n const swiper = this;\n if (swiper.params.history.enabled) {\n swiper.history.destroy();\n }\n },\n transitionEnd() {\n const swiper = this;\n if (swiper.history.initialized) {\n swiper.history.setHistory(swiper.params.history.key, swiper.activeIndex);\n }\n },\n slideChange() {\n const swiper = this;\n if (swiper.history.initialized && swiper.params.cssMode) {\n swiper.history.setHistory(swiper.params.history.key, swiper.activeIndex);\n }\n },\n },\n};\n\nconst HashNavigation = {\n onHashCange() {\n const swiper = this;\n swiper.emit('hashChange');\n const newHash = document$1.location.hash.replace('#', '');\n const activeSlideHash = swiper.slides.eq(swiper.activeIndex).attr('data-hash');\n if (newHash !== activeSlideHash) {\n const newIndex = swiper.$wrapperEl.children(`.${swiper.params.slideClass}[data-hash=\"${newHash}\"]`).index();\n if (typeof newIndex === 'undefined') return;\n swiper.slideTo(newIndex);\n }\n },\n setHash() {\n const swiper = this;\n if (!swiper.hashNavigation.initialized || !swiper.params.hashNavigation.enabled) return;\n if (swiper.params.hashNavigation.replaceState && window.history && window.history.replaceState) {\n window.history.replaceState(null, null, (`#${swiper.slides.eq(swiper.activeIndex).attr('data-hash')}` || ''));\n swiper.emit('hashSet');\n } else {\n const slide = swiper.slides.eq(swiper.activeIndex);\n const hash = slide.attr('data-hash') || slide.attr('data-history');\n document$1.location.hash = hash || '';\n swiper.emit('hashSet');\n }\n },\n init() {\n const swiper = this;\n if (!swiper.params.hashNavigation.enabled || (swiper.params.history && swiper.params.history.enabled)) return;\n swiper.hashNavigation.initialized = true;\n const hash = document$1.location.hash.replace('#', '');\n if (hash) {\n const speed = 0;\n for (let i = 0, length = swiper.slides.length; i < length; i += 1) {\n const slide = swiper.slides.eq(i);\n const slideHash = slide.attr('data-hash') || slide.attr('data-history');\n if (slideHash === hash && !slide.hasClass(swiper.params.slideDuplicateClass)) {\n const index = slide.index();\n swiper.slideTo(index, speed, swiper.params.runCallbacksOnInit, true);\n }\n }\n }\n if (swiper.params.hashNavigation.watchState) {\n $(window).on('hashchange', swiper.hashNavigation.onHashCange);\n }\n },\n destroy() {\n const swiper = this;\n if (swiper.params.hashNavigation.watchState) {\n $(window).off('hashchange', swiper.hashNavigation.onHashCange);\n }\n },\n};\nvar HashNavigation$1 = {\n name: 'hash-navigation',\n params: {\n hashNavigation: {\n enabled: false,\n replaceState: false,\n watchState: false,\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n hashNavigation: {\n initialized: false,\n init: HashNavigation.init.bind(swiper),\n destroy: HashNavigation.destroy.bind(swiper),\n setHash: HashNavigation.setHash.bind(swiper),\n onHashCange: HashNavigation.onHashCange.bind(swiper),\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n if (swiper.params.hashNavigation.enabled) {\n swiper.hashNavigation.init();\n }\n },\n destroy() {\n const swiper = this;\n if (swiper.params.hashNavigation.enabled) {\n swiper.hashNavigation.destroy();\n }\n },\n transitionEnd() {\n const swiper = this;\n if (swiper.hashNavigation.initialized) {\n swiper.hashNavigation.setHash();\n }\n },\n slideChange() {\n const swiper = this;\n if (swiper.hashNavigation.initialized && swiper.params.cssMode) {\n swiper.hashNavigation.setHash();\n }\n },\n },\n};\n\n/* eslint no-underscore-dangle: \"off\" */\n\nconst Autoplay = {\n run() {\n const swiper = this;\n const $activeSlideEl = swiper.slides.eq(swiper.activeIndex);\n let delay = swiper.params.autoplay.delay;\n if ($activeSlideEl.attr('data-swiper-autoplay')) {\n delay = $activeSlideEl.attr('data-swiper-autoplay') || swiper.params.autoplay.delay;\n }\n clearTimeout(swiper.autoplay.timeout);\n swiper.autoplay.timeout = Utils.nextTick(() => {\n if (swiper.params.autoplay.reverseDirection) {\n if (swiper.params.loop) {\n swiper.loopFix();\n swiper.slidePrev(swiper.params.speed, true, true);\n swiper.emit('autoplay');\n } else if (!swiper.isBeginning) {\n swiper.slidePrev(swiper.params.speed, true, true);\n swiper.emit('autoplay');\n } else if (!swiper.params.autoplay.stopOnLastSlide) {\n swiper.slideTo(swiper.slides.length - 1, swiper.params.speed, true, true);\n swiper.emit('autoplay');\n } else {\n swiper.autoplay.stop();\n }\n } else if (swiper.params.loop) {\n swiper.loopFix();\n swiper.slideNext(swiper.params.speed, true, true);\n swiper.emit('autoplay');\n } else if (!swiper.isEnd) {\n swiper.slideNext(swiper.params.speed, true, true);\n swiper.emit('autoplay');\n } else if (!swiper.params.autoplay.stopOnLastSlide) {\n swiper.slideTo(0, swiper.params.speed, true, true);\n swiper.emit('autoplay');\n } else {\n swiper.autoplay.stop();\n }\n if (swiper.params.cssMode && swiper.autoplay.running) swiper.autoplay.run();\n }, delay);\n },\n start() {\n const swiper = this;\n if (typeof swiper.autoplay.timeout !== 'undefined') return false;\n if (swiper.autoplay.running) return false;\n swiper.autoplay.running = true;\n swiper.emit('autoplayStart');\n swiper.autoplay.run();\n return true;\n },\n stop() {\n const swiper = this;\n if (!swiper.autoplay.running) return false;\n if (typeof swiper.autoplay.timeout === 'undefined') return false;\n\n if (swiper.autoplay.timeout) {\n clearTimeout(swiper.autoplay.timeout);\n swiper.autoplay.timeout = undefined;\n }\n swiper.autoplay.running = false;\n swiper.emit('autoplayStop');\n return true;\n },\n pause(speed) {\n const swiper = this;\n if (!swiper.autoplay.running) return;\n if (swiper.autoplay.paused) return;\n if (swiper.autoplay.timeout) clearTimeout(swiper.autoplay.timeout);\n swiper.autoplay.paused = true;\n if (speed === 0 || !swiper.params.autoplay.waitForTransition) {\n swiper.autoplay.paused = false;\n swiper.autoplay.run();\n } else {\n swiper.$wrapperEl[0].addEventListener('transitionend', swiper.autoplay.onTransitionEnd);\n swiper.$wrapperEl[0].addEventListener('webkitTransitionEnd', swiper.autoplay.onTransitionEnd);\n }\n },\n};\n\nvar Autoplay$1 = {\n name: 'autoplay',\n params: {\n autoplay: {\n enabled: false,\n delay: 3000,\n waitForTransition: true,\n disableOnInteraction: true,\n stopOnLastSlide: false,\n reverseDirection: false,\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n autoplay: {\n running: false,\n paused: false,\n run: Autoplay.run.bind(swiper),\n start: Autoplay.start.bind(swiper),\n stop: Autoplay.stop.bind(swiper),\n pause: Autoplay.pause.bind(swiper),\n onVisibilityChange() {\n if (document.visibilityState === 'hidden' && swiper.autoplay.running) {\n swiper.autoplay.pause();\n }\n if (document.visibilityState === 'visible' && swiper.autoplay.paused) {\n swiper.autoplay.run();\n swiper.autoplay.paused = false;\n }\n },\n onTransitionEnd(e) {\n if (!swiper || swiper.destroyed || !swiper.$wrapperEl) return;\n if (e.target !== this) return;\n swiper.$wrapperEl[0].removeEventListener('transitionend', swiper.autoplay.onTransitionEnd);\n swiper.$wrapperEl[0].removeEventListener('webkitTransitionEnd', swiper.autoplay.onTransitionEnd);\n swiper.autoplay.paused = false;\n if (!swiper.autoplay.running) {\n swiper.autoplay.stop();\n } else {\n swiper.autoplay.run();\n }\n },\n },\n });\n },\n on: {\n init() {\n const swiper = this;\n if (swiper.params.autoplay.enabled) {\n swiper.autoplay.start();\n document.addEventListener('visibilitychange', swiper.autoplay.onVisibilityChange);\n }\n },\n beforeTransitionStart(speed, internal) {\n const swiper = this;\n if (swiper.autoplay.running) {\n if (internal || !swiper.params.autoplay.disableOnInteraction) {\n swiper.autoplay.pause(speed);\n } else {\n swiper.autoplay.stop();\n }\n }\n },\n sliderFirstMove() {\n const swiper = this;\n if (swiper.autoplay.running) {\n if (swiper.params.autoplay.disableOnInteraction) {\n swiper.autoplay.stop();\n } else {\n swiper.autoplay.pause();\n }\n }\n },\n touchEnd() {\n const swiper = this;\n if (swiper.params.cssMode && swiper.autoplay.paused && !swiper.params.autoplay.disableOnInteraction) {\n swiper.autoplay.run();\n }\n },\n destroy() {\n const swiper = this;\n if (swiper.autoplay.running) {\n swiper.autoplay.stop();\n }\n document.removeEventListener('visibilitychange', swiper.autoplay.onVisibilityChange);\n },\n },\n};\n\nconst Fade = {\n setTranslate() {\n const swiper = this;\n const { slides } = swiper;\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = swiper.slides.eq(i);\n const offset = $slideEl[0].swiperSlideOffset;\n let tx = -offset;\n if (!swiper.params.virtualTranslate) tx -= swiper.translate;\n let ty = 0;\n if (!swiper.isHorizontal()) {\n ty = tx;\n tx = 0;\n }\n const slideOpacity = swiper.params.fadeEffect.crossFade\n ? Math.max(1 - Math.abs($slideEl[0].progress), 0)\n : 1 + Math.min(Math.max($slideEl[0].progress, -1), 0);\n $slideEl\n .css({\n opacity: slideOpacity,\n })\n .transform(`translate3d(${tx}px, ${ty}px, 0px)`);\n }\n },\n setTransition(duration) {\n const swiper = this;\n const { slides, $wrapperEl } = swiper;\n slides.transition(duration);\n if (swiper.params.virtualTranslate && duration !== 0) {\n let eventTriggered = false;\n slides.transitionEnd(() => {\n if (eventTriggered) return;\n if (!swiper || swiper.destroyed) return;\n eventTriggered = true;\n swiper.animating = false;\n const triggerEvents = ['webkitTransitionEnd', 'transitionend'];\n for (let i = 0; i < triggerEvents.length; i += 1) {\n $wrapperEl.trigger(triggerEvents[i]);\n }\n });\n }\n },\n};\n\nvar EffectFade = {\n name: 'effect-fade',\n params: {\n fadeEffect: {\n crossFade: false,\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n fadeEffect: {\n setTranslate: Fade.setTranslate.bind(swiper),\n setTransition: Fade.setTransition.bind(swiper),\n },\n });\n },\n on: {\n beforeInit() {\n const swiper = this;\n if (swiper.params.effect !== 'fade') return;\n swiper.classNames.push(`${swiper.params.containerModifierClass}fade`);\n const overwriteParams = {\n slidesPerView: 1,\n slidesPerColumn: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n spaceBetween: 0,\n virtualTranslate: true,\n };\n Utils.extend(swiper.params, overwriteParams);\n Utils.extend(swiper.originalParams, overwriteParams);\n },\n setTranslate() {\n const swiper = this;\n if (swiper.params.effect !== 'fade') return;\n swiper.fadeEffect.setTranslate();\n },\n setTransition(duration) {\n const swiper = this;\n if (swiper.params.effect !== 'fade') return;\n swiper.fadeEffect.setTransition(duration);\n },\n },\n};\n\nconst Cube = {\n setTranslate() {\n const swiper = this;\n const {\n $el, $wrapperEl, slides, width: swiperWidth, height: swiperHeight, rtlTranslate: rtl, size: swiperSize,\n } = swiper;\n const params = swiper.params.cubeEffect;\n const isHorizontal = swiper.isHorizontal();\n const isVirtual = swiper.virtual && swiper.params.virtual.enabled;\n let wrapperRotate = 0;\n let $cubeShadowEl;\n if (params.shadow) {\n if (isHorizontal) {\n $cubeShadowEl = $wrapperEl.find('.swiper-cube-shadow');\n if ($cubeShadowEl.length === 0) {\n $cubeShadowEl = $('
    ');\n $wrapperEl.append($cubeShadowEl);\n }\n $cubeShadowEl.css({ height: `${swiperWidth}px` });\n } else {\n $cubeShadowEl = $el.find('.swiper-cube-shadow');\n if ($cubeShadowEl.length === 0) {\n $cubeShadowEl = $('
    ');\n $el.append($cubeShadowEl);\n }\n }\n }\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n let slideIndex = i;\n if (isVirtual) {\n slideIndex = parseInt($slideEl.attr('data-swiper-slide-index'), 10);\n }\n let slideAngle = slideIndex * 90;\n let round = Math.floor(slideAngle / 360);\n if (rtl) {\n slideAngle = -slideAngle;\n round = Math.floor(-slideAngle / 360);\n }\n const progress = Math.max(Math.min($slideEl[0].progress, 1), -1);\n let tx = 0;\n let ty = 0;\n let tz = 0;\n if (slideIndex % 4 === 0) {\n tx = -round * 4 * swiperSize;\n tz = 0;\n } else if ((slideIndex - 1) % 4 === 0) {\n tx = 0;\n tz = -round * 4 * swiperSize;\n } else if ((slideIndex - 2) % 4 === 0) {\n tx = swiperSize + (round * 4 * swiperSize);\n tz = swiperSize;\n } else if ((slideIndex - 3) % 4 === 0) {\n tx = -swiperSize;\n tz = (3 * swiperSize) + (swiperSize * 4 * round);\n }\n if (rtl) {\n tx = -tx;\n }\n\n if (!isHorizontal) {\n ty = tx;\n tx = 0;\n }\n\n const transform = `rotateX(${isHorizontal ? 0 : -slideAngle}deg) rotateY(${isHorizontal ? slideAngle : 0}deg) translate3d(${tx}px, ${ty}px, ${tz}px)`;\n if (progress <= 1 && progress > -1) {\n wrapperRotate = (slideIndex * 90) + (progress * 90);\n if (rtl) wrapperRotate = (-slideIndex * 90) - (progress * 90);\n }\n $slideEl.transform(transform);\n if (params.slideShadows) {\n // Set shadows\n let shadowBefore = isHorizontal ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');\n let shadowAfter = isHorizontal ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');\n if (shadowBefore.length === 0) {\n shadowBefore = $(`
    `);\n $slideEl.append(shadowBefore);\n }\n if (shadowAfter.length === 0) {\n shadowAfter = $(`
    `);\n $slideEl.append(shadowAfter);\n }\n if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0);\n if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0);\n }\n }\n $wrapperEl.css({\n '-webkit-transform-origin': `50% 50% -${swiperSize / 2}px`,\n '-moz-transform-origin': `50% 50% -${swiperSize / 2}px`,\n '-ms-transform-origin': `50% 50% -${swiperSize / 2}px`,\n 'transform-origin': `50% 50% -${swiperSize / 2}px`,\n });\n\n if (params.shadow) {\n if (isHorizontal) {\n $cubeShadowEl.transform(`translate3d(0px, ${(swiperWidth / 2) + params.shadowOffset}px, ${-swiperWidth / 2}px) rotateX(90deg) rotateZ(0deg) scale(${params.shadowScale})`);\n } else {\n const shadowAngle = Math.abs(wrapperRotate) - (Math.floor(Math.abs(wrapperRotate) / 90) * 90);\n const multiplier = 1.5 - (\n (Math.sin((shadowAngle * 2 * Math.PI) / 360) / 2)\n + (Math.cos((shadowAngle * 2 * Math.PI) / 360) / 2)\n );\n const scale1 = params.shadowScale;\n const scale2 = params.shadowScale / multiplier;\n const offset = params.shadowOffset;\n $cubeShadowEl.transform(`scale3d(${scale1}, 1, ${scale2}) translate3d(0px, ${(swiperHeight / 2) + offset}px, ${-swiperHeight / 2 / scale2}px) rotateX(-90deg)`);\n }\n }\n const zFactor = (Browser.isSafari || Browser.isWebView) ? (-swiperSize / 2) : 0;\n $wrapperEl\n .transform(`translate3d(0px,0,${zFactor}px) rotateX(${swiper.isHorizontal() ? 0 : wrapperRotate}deg) rotateY(${swiper.isHorizontal() ? -wrapperRotate : 0}deg)`);\n },\n setTransition(duration) {\n const swiper = this;\n const { $el, slides } = swiper;\n slides\n .transition(duration)\n .find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left')\n .transition(duration);\n if (swiper.params.cubeEffect.shadow && !swiper.isHorizontal()) {\n $el.find('.swiper-cube-shadow').transition(duration);\n }\n },\n};\n\nvar EffectCube = {\n name: 'effect-cube',\n params: {\n cubeEffect: {\n slideShadows: true,\n shadow: true,\n shadowOffset: 20,\n shadowScale: 0.94,\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n cubeEffect: {\n setTranslate: Cube.setTranslate.bind(swiper),\n setTransition: Cube.setTransition.bind(swiper),\n },\n });\n },\n on: {\n beforeInit() {\n const swiper = this;\n if (swiper.params.effect !== 'cube') return;\n swiper.classNames.push(`${swiper.params.containerModifierClass}cube`);\n swiper.classNames.push(`${swiper.params.containerModifierClass}3d`);\n const overwriteParams = {\n slidesPerView: 1,\n slidesPerColumn: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n resistanceRatio: 0,\n spaceBetween: 0,\n centeredSlides: false,\n virtualTranslate: true,\n };\n Utils.extend(swiper.params, overwriteParams);\n Utils.extend(swiper.originalParams, overwriteParams);\n },\n setTranslate() {\n const swiper = this;\n if (swiper.params.effect !== 'cube') return;\n swiper.cubeEffect.setTranslate();\n },\n setTransition(duration) {\n const swiper = this;\n if (swiper.params.effect !== 'cube') return;\n swiper.cubeEffect.setTransition(duration);\n },\n },\n};\n\nconst Flip = {\n setTranslate() {\n const swiper = this;\n const { slides, rtlTranslate: rtl } = swiper;\n for (let i = 0; i < slides.length; i += 1) {\n const $slideEl = slides.eq(i);\n let progress = $slideEl[0].progress;\n if (swiper.params.flipEffect.limitRotation) {\n progress = Math.max(Math.min($slideEl[0].progress, 1), -1);\n }\n const offset = $slideEl[0].swiperSlideOffset;\n const rotate = -180 * progress;\n let rotateY = rotate;\n let rotateX = 0;\n let tx = -offset;\n let ty = 0;\n if (!swiper.isHorizontal()) {\n ty = tx;\n tx = 0;\n rotateX = -rotateY;\n rotateY = 0;\n } else if (rtl) {\n rotateY = -rotateY;\n }\n\n $slideEl[0].style.zIndex = -Math.abs(Math.round(progress)) + slides.length;\n\n if (swiper.params.flipEffect.slideShadows) {\n // Set shadows\n let shadowBefore = swiper.isHorizontal() ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');\n let shadowAfter = swiper.isHorizontal() ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');\n if (shadowBefore.length === 0) {\n shadowBefore = $(`
    `);\n $slideEl.append(shadowBefore);\n }\n if (shadowAfter.length === 0) {\n shadowAfter = $(`
    `);\n $slideEl.append(shadowAfter);\n }\n if (shadowBefore.length) shadowBefore[0].style.opacity = Math.max(-progress, 0);\n if (shadowAfter.length) shadowAfter[0].style.opacity = Math.max(progress, 0);\n }\n $slideEl\n .transform(`translate3d(${tx}px, ${ty}px, 0px) rotateX(${rotateX}deg) rotateY(${rotateY}deg)`);\n }\n },\n setTransition(duration) {\n const swiper = this;\n const { slides, activeIndex, $wrapperEl } = swiper;\n slides\n .transition(duration)\n .find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left')\n .transition(duration);\n if (swiper.params.virtualTranslate && duration !== 0) {\n let eventTriggered = false;\n // eslint-disable-next-line\n slides.eq(activeIndex).transitionEnd(function onTransitionEnd() {\n if (eventTriggered) return;\n if (!swiper || swiper.destroyed) return;\n // if (!$(this).hasClass(swiper.params.slideActiveClass)) return;\n eventTriggered = true;\n swiper.animating = false;\n const triggerEvents = ['webkitTransitionEnd', 'transitionend'];\n for (let i = 0; i < triggerEvents.length; i += 1) {\n $wrapperEl.trigger(triggerEvents[i]);\n }\n });\n }\n },\n};\n\nvar EffectFlip = {\n name: 'effect-flip',\n params: {\n flipEffect: {\n slideShadows: true,\n limitRotation: true,\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n flipEffect: {\n setTranslate: Flip.setTranslate.bind(swiper),\n setTransition: Flip.setTransition.bind(swiper),\n },\n });\n },\n on: {\n beforeInit() {\n const swiper = this;\n if (swiper.params.effect !== 'flip') return;\n swiper.classNames.push(`${swiper.params.containerModifierClass}flip`);\n swiper.classNames.push(`${swiper.params.containerModifierClass}3d`);\n const overwriteParams = {\n slidesPerView: 1,\n slidesPerColumn: 1,\n slidesPerGroup: 1,\n watchSlidesProgress: true,\n spaceBetween: 0,\n virtualTranslate: true,\n };\n Utils.extend(swiper.params, overwriteParams);\n Utils.extend(swiper.originalParams, overwriteParams);\n },\n setTranslate() {\n const swiper = this;\n if (swiper.params.effect !== 'flip') return;\n swiper.flipEffect.setTranslate();\n },\n setTransition(duration) {\n const swiper = this;\n if (swiper.params.effect !== 'flip') return;\n swiper.flipEffect.setTransition(duration);\n },\n },\n};\n\nconst Coverflow = {\n setTranslate() {\n const swiper = this;\n const {\n width: swiperWidth, height: swiperHeight, slides, $wrapperEl, slidesSizesGrid,\n } = swiper;\n const params = swiper.params.coverflowEffect;\n const isHorizontal = swiper.isHorizontal();\n const transform = swiper.translate;\n const center = isHorizontal ? -transform + (swiperWidth / 2) : -transform + (swiperHeight / 2);\n const rotate = isHorizontal ? params.rotate : -params.rotate;\n const translate = params.depth;\n // Each slide offset from center\n for (let i = 0, length = slides.length; i < length; i += 1) {\n const $slideEl = slides.eq(i);\n const slideSize = slidesSizesGrid[i];\n const slideOffset = $slideEl[0].swiperSlideOffset;\n const offsetMultiplier = ((center - slideOffset - (slideSize / 2)) / slideSize) * params.modifier;\n\n let rotateY = isHorizontal ? rotate * offsetMultiplier : 0;\n let rotateX = isHorizontal ? 0 : rotate * offsetMultiplier;\n // var rotateZ = 0\n let translateZ = -translate * Math.abs(offsetMultiplier);\n\n let stretch = params.stretch;\n // Allow percentage to make a relative stretch for responsive sliders\n if (typeof stretch === 'string' && stretch.indexOf('%') !== -1) {\n stretch = ((parseFloat(params.stretch) / 100) * slideSize);\n }\n let translateY = isHorizontal ? 0 : stretch * (offsetMultiplier);\n let translateX = isHorizontal ? stretch * (offsetMultiplier) : 0;\n\n let scale = 1 - (1 - params.scale) * Math.abs(offsetMultiplier);\n\n // Fix for ultra small values\n if (Math.abs(translateX) < 0.001) translateX = 0;\n if (Math.abs(translateY) < 0.001) translateY = 0;\n if (Math.abs(translateZ) < 0.001) translateZ = 0;\n if (Math.abs(rotateY) < 0.001) rotateY = 0;\n if (Math.abs(rotateX) < 0.001) rotateX = 0;\n if (Math.abs(scale) < 0.001) scale = 0;\n\n const slideTransform = `translate3d(${translateX}px,${translateY}px,${translateZ}px) rotateX(${rotateX}deg) rotateY(${rotateY}deg) scale(${scale})`;\n\n $slideEl.transform(slideTransform);\n $slideEl[0].style.zIndex = -Math.abs(Math.round(offsetMultiplier)) + 1;\n if (params.slideShadows) {\n // Set shadows\n let $shadowBeforeEl = isHorizontal ? $slideEl.find('.swiper-slide-shadow-left') : $slideEl.find('.swiper-slide-shadow-top');\n let $shadowAfterEl = isHorizontal ? $slideEl.find('.swiper-slide-shadow-right') : $slideEl.find('.swiper-slide-shadow-bottom');\n if ($shadowBeforeEl.length === 0) {\n $shadowBeforeEl = $(`
    `);\n $slideEl.append($shadowBeforeEl);\n }\n if ($shadowAfterEl.length === 0) {\n $shadowAfterEl = $(`
    `);\n $slideEl.append($shadowAfterEl);\n }\n if ($shadowBeforeEl.length) $shadowBeforeEl[0].style.opacity = offsetMultiplier > 0 ? offsetMultiplier : 0;\n if ($shadowAfterEl.length) $shadowAfterEl[0].style.opacity = (-offsetMultiplier) > 0 ? -offsetMultiplier : 0;\n }\n }\n\n // Set correct perspective for IE10\n if (Support.pointerEvents || Support.prefixedPointerEvents) {\n const ws = $wrapperEl[0].style;\n ws.perspectiveOrigin = `${center}px 50%`;\n }\n },\n setTransition(duration) {\n const swiper = this;\n swiper.slides\n .transition(duration)\n .find('.swiper-slide-shadow-top, .swiper-slide-shadow-right, .swiper-slide-shadow-bottom, .swiper-slide-shadow-left')\n .transition(duration);\n },\n};\n\nvar EffectCoverflow = {\n name: 'effect-coverflow',\n params: {\n coverflowEffect: {\n rotate: 50,\n stretch: 0,\n depth: 100,\n scale: 1,\n modifier: 1,\n slideShadows: true,\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n coverflowEffect: {\n setTranslate: Coverflow.setTranslate.bind(swiper),\n setTransition: Coverflow.setTransition.bind(swiper),\n },\n });\n },\n on: {\n beforeInit() {\n const swiper = this;\n if (swiper.params.effect !== 'coverflow') return;\n\n swiper.classNames.push(`${swiper.params.containerModifierClass}coverflow`);\n swiper.classNames.push(`${swiper.params.containerModifierClass}3d`);\n\n swiper.params.watchSlidesProgress = true;\n swiper.originalParams.watchSlidesProgress = true;\n },\n setTranslate() {\n const swiper = this;\n if (swiper.params.effect !== 'coverflow') return;\n swiper.coverflowEffect.setTranslate();\n },\n setTransition(duration) {\n const swiper = this;\n if (swiper.params.effect !== 'coverflow') return;\n swiper.coverflowEffect.setTransition(duration);\n },\n },\n};\n\nconst Thumbs = {\n init() {\n const swiper = this;\n const { thumbs: thumbsParams } = swiper.params;\n const SwiperClass = swiper.constructor;\n if (thumbsParams.swiper instanceof SwiperClass) {\n swiper.thumbs.swiper = thumbsParams.swiper;\n Utils.extend(swiper.thumbs.swiper.originalParams, {\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n });\n Utils.extend(swiper.thumbs.swiper.params, {\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n });\n } else if (Utils.isObject(thumbsParams.swiper)) {\n swiper.thumbs.swiper = new SwiperClass(Utils.extend({}, thumbsParams.swiper, {\n watchSlidesVisibility: true,\n watchSlidesProgress: true,\n slideToClickedSlide: false,\n }));\n swiper.thumbs.swiperCreated = true;\n }\n swiper.thumbs.swiper.$el.addClass(swiper.params.thumbs.thumbsContainerClass);\n swiper.thumbs.swiper.on('tap', swiper.thumbs.onThumbClick);\n },\n onThumbClick() {\n const swiper = this;\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n const clickedIndex = thumbsSwiper.clickedIndex;\n const clickedSlide = thumbsSwiper.clickedSlide;\n if (clickedSlide && $(clickedSlide).hasClass(swiper.params.thumbs.slideThumbActiveClass)) return;\n if (typeof clickedIndex === 'undefined' || clickedIndex === null) return;\n let slideToIndex;\n if (thumbsSwiper.params.loop) {\n slideToIndex = parseInt($(thumbsSwiper.clickedSlide).attr('data-swiper-slide-index'), 10);\n } else {\n slideToIndex = clickedIndex;\n }\n if (swiper.params.loop) {\n let currentIndex = swiper.activeIndex;\n if (swiper.slides.eq(currentIndex).hasClass(swiper.params.slideDuplicateClass)) {\n swiper.loopFix();\n // eslint-disable-next-line\n swiper._clientLeft = swiper.$wrapperEl[0].clientLeft;\n currentIndex = swiper.activeIndex;\n }\n const prevIndex = swiper.slides.eq(currentIndex).prevAll(`[data-swiper-slide-index=\"${slideToIndex}\"]`).eq(0).index();\n const nextIndex = swiper.slides.eq(currentIndex).nextAll(`[data-swiper-slide-index=\"${slideToIndex}\"]`).eq(0).index();\n if (typeof prevIndex === 'undefined') slideToIndex = nextIndex;\n else if (typeof nextIndex === 'undefined') slideToIndex = prevIndex;\n else if (nextIndex - currentIndex < currentIndex - prevIndex) slideToIndex = nextIndex;\n else slideToIndex = prevIndex;\n }\n swiper.slideTo(slideToIndex);\n },\n update(initial) {\n const swiper = this;\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n\n const slidesPerView = thumbsSwiper.params.slidesPerView === 'auto'\n ? thumbsSwiper.slidesPerViewDynamic()\n : thumbsSwiper.params.slidesPerView;\n\n const autoScrollOffset = swiper.params.thumbs.autoScrollOffset;\n const useOffset = autoScrollOffset && !thumbsSwiper.params.loop;\n if (swiper.realIndex !== thumbsSwiper.realIndex || useOffset) {\n let currentThumbsIndex = thumbsSwiper.activeIndex;\n let newThumbsIndex;\n let direction;\n if (thumbsSwiper.params.loop) {\n if (thumbsSwiper.slides.eq(currentThumbsIndex).hasClass(thumbsSwiper.params.slideDuplicateClass)) {\n thumbsSwiper.loopFix();\n // eslint-disable-next-line\n thumbsSwiper._clientLeft = thumbsSwiper.$wrapperEl[0].clientLeft;\n currentThumbsIndex = thumbsSwiper.activeIndex;\n }\n // Find actual thumbs index to slide to\n const prevThumbsIndex = thumbsSwiper.slides\n .eq(currentThumbsIndex)\n .prevAll(`[data-swiper-slide-index=\"${swiper.realIndex}\"]`).eq(0)\n .index();\n const nextThumbsIndex = thumbsSwiper.slides\n .eq(currentThumbsIndex)\n .nextAll(`[data-swiper-slide-index=\"${swiper.realIndex}\"]`).eq(0)\n .index();\n if (typeof prevThumbsIndex === 'undefined') newThumbsIndex = nextThumbsIndex;\n else if (typeof nextThumbsIndex === 'undefined') newThumbsIndex = prevThumbsIndex;\n else if (nextThumbsIndex - currentThumbsIndex === currentThumbsIndex - prevThumbsIndex) newThumbsIndex = currentThumbsIndex;\n else if (nextThumbsIndex - currentThumbsIndex < currentThumbsIndex - prevThumbsIndex) newThumbsIndex = nextThumbsIndex;\n else newThumbsIndex = prevThumbsIndex;\n direction = swiper.activeIndex > swiper.previousIndex ? 'next' : 'prev';\n } else {\n newThumbsIndex = swiper.realIndex;\n direction = newThumbsIndex > swiper.previousIndex ? 'next' : 'prev';\n }\n if (useOffset) {\n newThumbsIndex += direction === 'next' ? autoScrollOffset : -1 * autoScrollOffset;\n }\n\n if (thumbsSwiper.visibleSlidesIndexes && thumbsSwiper.visibleSlidesIndexes.indexOf(newThumbsIndex) < 0) {\n if (thumbsSwiper.params.centeredSlides) {\n if (newThumbsIndex > currentThumbsIndex) {\n newThumbsIndex = newThumbsIndex - Math.floor(slidesPerView / 2) + 1;\n } else {\n newThumbsIndex = newThumbsIndex + Math.floor(slidesPerView / 2) - 1;\n }\n } else if (newThumbsIndex > currentThumbsIndex) {\n newThumbsIndex = newThumbsIndex - slidesPerView + 1;\n }\n thumbsSwiper.slideTo(newThumbsIndex, initial ? 0 : undefined);\n }\n }\n\n // Activate thumbs\n let thumbsToActivate = 1;\n const thumbActiveClass = swiper.params.thumbs.slideThumbActiveClass;\n\n if (swiper.params.slidesPerView > 1 && !swiper.params.centeredSlides) {\n thumbsToActivate = swiper.params.slidesPerView;\n }\n\n if (!swiper.params.thumbs.multipleActiveThumbs) {\n thumbsToActivate = 1;\n }\n\n thumbsToActivate = Math.floor(thumbsToActivate);\n\n thumbsSwiper.slides.removeClass(thumbActiveClass);\n if (thumbsSwiper.params.loop || (thumbsSwiper.params.virtual && thumbsSwiper.params.virtual.enabled)) {\n for (let i = 0; i < thumbsToActivate; i += 1) {\n thumbsSwiper.$wrapperEl.children(`[data-swiper-slide-index=\"${swiper.realIndex + i}\"]`).addClass(thumbActiveClass);\n }\n } else {\n for (let i = 0; i < thumbsToActivate; i += 1) {\n thumbsSwiper.slides.eq(swiper.realIndex + i).addClass(thumbActiveClass);\n }\n }\n },\n};\nvar Thumbs$1 = {\n name: 'thumbs',\n params: {\n thumbs: {\n swiper: null,\n multipleActiveThumbs: true,\n autoScrollOffset: 0,\n slideThumbActiveClass: 'swiper-slide-thumb-active',\n thumbsContainerClass: 'swiper-container-thumbs',\n },\n },\n create() {\n const swiper = this;\n Utils.extend(swiper, {\n thumbs: {\n swiper: null,\n init: Thumbs.init.bind(swiper),\n update: Thumbs.update.bind(swiper),\n onThumbClick: Thumbs.onThumbClick.bind(swiper),\n },\n });\n },\n on: {\n beforeInit() {\n const swiper = this;\n const { thumbs } = swiper.params;\n if (!thumbs || !thumbs.swiper) return;\n swiper.thumbs.init();\n swiper.thumbs.update(true);\n },\n slideChange() {\n const swiper = this;\n if (!swiper.thumbs.swiper) return;\n swiper.thumbs.update();\n },\n update() {\n const swiper = this;\n if (!swiper.thumbs.swiper) return;\n swiper.thumbs.update();\n },\n resize() {\n const swiper = this;\n if (!swiper.thumbs.swiper) return;\n swiper.thumbs.update();\n },\n observerUpdate() {\n const swiper = this;\n if (!swiper.thumbs.swiper) return;\n swiper.thumbs.update();\n },\n setTransition(duration) {\n const swiper = this;\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n thumbsSwiper.setTransition(duration);\n },\n beforeDestroy() {\n const swiper = this;\n const thumbsSwiper = swiper.thumbs.swiper;\n if (!thumbsSwiper) return;\n if (swiper.thumbs.swiperCreated && thumbsSwiper) {\n thumbsSwiper.destroy();\n }\n },\n },\n};\n\n// Swiper Class\n\nconst components = [\n Device$1,\n Support$1,\n Browser$1,\n Resize,\n Observer$1,\n Virtual$1,\n Keyboard$1,\n Mousewheel$1,\n Navigation$1,\n Pagination$1,\n Scrollbar$1,\n Parallax$1,\n Zoom$1,\n Lazy$1,\n Controller$1,\n A11y,\n History$1,\n HashNavigation$1,\n Autoplay$1,\n EffectFade,\n EffectCube,\n EffectFlip,\n EffectCoverflow,\n Thumbs$1\n];\n\nif (typeof Swiper.use === 'undefined') {\n Swiper.use = Swiper.Class.use;\n Swiper.installModule = Swiper.Class.installModule;\n}\n\nSwiper.use(components);\n\nexport default Swiper;\n//# sourceMappingURL=swiper.esm.bundle.js.map\n","(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('apexcharts/dist/apexcharts.min')) :\n typeof define === 'function' && define.amd ? define(['apexcharts/dist/apexcharts.min'], factory) :\n (global.VueApexCharts = factory(global.ApexCharts));\n}(this, (function (ApexCharts) { 'use strict';\n\n ApexCharts = ApexCharts && ApexCharts.hasOwnProperty('default') ? ApexCharts['default'] : ApexCharts;\n\n function _typeof(obj) {\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function (obj) {\n return typeof obj;\n };\n } else {\n _typeof = function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n }\n\n function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n }\n\n var ApexChartsComponent = {\n props: {\n options: {\n type: Object\n },\n type: {\n type: String\n },\n series: {\n type: Array,\n required: true,\n default: function _default() {\n return [];\n }\n },\n width: {\n default: \"100%\"\n },\n height: {\n default: \"auto\"\n }\n },\n data: function data() {\n return {\n chart: null\n };\n },\n beforeMount: function beforeMount() {\n window.ApexCharts = ApexCharts;\n },\n mounted: function mounted() {\n this.init();\n },\n created: function created() {\n var _this = this;\n\n this.$watch(\"options\", function (options) {\n if (!_this.chart && options) {\n _this.init();\n } else {\n _this.chart.updateOptions(_this.options);\n }\n });\n this.$watch(\"series\", function (series) {\n if (!_this.chart && series) {\n _this.init();\n } else {\n _this.chart.updateSeries(_this.series);\n }\n });\n var watched = [\"type\", \"width\", \"height\"];\n watched.forEach(function (prop) {\n _this.$watch(prop, function () {\n _this.refresh();\n });\n });\n },\n beforeDestroy: function beforeDestroy() {\n if (!this.chart) {\n return;\n }\n\n this.destroy();\n },\n render: function render(createElement) {\n return createElement(\"div\");\n },\n methods: {\n init: function init() {\n var _this2 = this;\n\n var newOptions = {\n chart: {\n type: this.type || this.options.chart.type || \"line\",\n height: this.height,\n width: this.width,\n events: {}\n },\n series: this.series\n };\n Object.keys(this.$listeners).forEach(function (evt) {\n newOptions.chart.events[evt] = _this2.$listeners[evt];\n });\n var config = this.extend(this.options, newOptions);\n this.chart = new ApexCharts(this.$el, config);\n return this.chart.render();\n },\n isObject: function isObject(item) {\n return item && _typeof(item) === \"object\" && !Array.isArray(item) && item != null;\n },\n extend: function extend(target, source) {\n var _this3 = this;\n\n if (typeof Object.assign !== \"function\") {\n (function () {\n Object.assign = function (target) {\n // We must check against these specific cases.\n if (target === undefined || target === null) {\n throw new TypeError(\"Cannot convert undefined or null to object\");\n }\n\n var output = Object(target);\n\n for (var index = 1; index < arguments.length; index++) {\n var _source = arguments[index];\n\n if (_source !== undefined && _source !== null) {\n for (var nextKey in _source) {\n if (_source.hasOwnProperty(nextKey)) {\n output[nextKey] = _source[nextKey];\n }\n }\n }\n }\n\n return output;\n };\n })();\n }\n\n var output = Object.assign({}, target);\n\n if (this.isObject(target) && this.isObject(source)) {\n Object.keys(source).forEach(function (key) {\n if (_this3.isObject(source[key])) {\n if (!(key in target)) {\n Object.assign(output, _defineProperty({}, key, source[key]));\n } else {\n output[key] = _this3.extend(target[key], source[key]);\n }\n } else {\n Object.assign(output, _defineProperty({}, key, source[key]));\n }\n });\n }\n\n return output;\n },\n refresh: function refresh() {\n this.destroy();\n return this.init();\n },\n destroy: function destroy() {\n this.chart.destroy();\n },\n updateSeries: function updateSeries(newSeries, animate) {\n return this.chart.updateSeries(newSeries, animate);\n },\n updateOptions: function updateOptions(newOptions, redrawPaths, animate, updateSyncedCharts) {\n return this.chart.updateOptions(newOptions, redrawPaths, animate, updateSyncedCharts);\n },\n toggleSeries: function toggleSeries(seriesName) {\n return this.chart.toggleSeries(seriesName);\n },\n showSeries: function showSeries(seriesName) {\n this.chart.showSeries(seriesName);\n },\n hideSeries: function hideSeries(seriesName) {\n this.chart.hideSeries(seriesName);\n },\n appendSeries: function appendSeries(newSeries, animate) {\n return this.chart.appendSeries(newSeries, animate);\n },\n resetSeries: function resetSeries() {\n this.chart.resetSeries();\n },\n zoomX: function zoomX(min, max) {\n this.chart.zoomX(min, max);\n },\n toggleDataPointSelection: function toggleDataPointSelection(seriesIndex, dataPointIndex) {\n this.chart.toggleDataPointSelection(seriesIndex, dataPointIndex);\n },\n appendData: function appendData(newData) {\n return this.chart.appendData(newData);\n },\n addText: function addText(options) {\n this.chart.addText(options);\n },\n addImage: function addImage(options) {\n this.chart.addImage(options);\n },\n addShape: function addShape(options) {\n this.chart.addShape(options);\n },\n dataURI: function dataURI() {\n return this.chart.dataURI();\n },\n setLocale: function setLocale(localeName) {\n return this.chart.setLocale(localeName);\n },\n addXaxisAnnotation: function addXaxisAnnotation(options, pushToMemory) {\n this.chart.addXaxisAnnotation(options, pushToMemory);\n },\n addYaxisAnnotation: function addYaxisAnnotation(options, pushToMemory) {\n this.chart.addYaxisAnnotation(options, pushToMemory);\n },\n addPointAnnotation: function addPointAnnotation(options, pushToMemory) {\n this.chart.addPointAnnotation(options, pushToMemory);\n },\n removeAnnotation: function removeAnnotation(id, options) {\n this.chart.removeAnnotation(id, options);\n },\n clearAnnotations: function clearAnnotations() {\n this.chart.clearAnnotations();\n }\n }\n };\n\n var VueApexCharts = ApexChartsComponent;\n window.ApexCharts = ApexCharts;\n\n VueApexCharts.install = function (Vue) {\n //adding a global method or property\n Vue.ApexCharts = ApexCharts;\n window.ApexCharts = ApexCharts; // add the instance method\n\n Object.defineProperty(Vue.prototype, '$apexcharts', {\n get: function get() {\n return ApexCharts;\n }\n });\n };\n\n return VueApexCharts;\n\n})));\n","\n/*!\n * vue-awesome-swiper v4.1.1\n * Copyright (c) Surmon. All rights reserved.\n * Released under the MIT License.\n * Surmon \n */\n\n(function(g,f){typeof exports==='object'&&typeof module!=='undefined'?f(exports,require('swiper'),require('vue')):typeof define==='function'&&define.amd?define(['exports','swiper','vue'],f):(g=g||self,f(g.VueAwesomeSwiper={},g.Swiper,g.Vue));}(this,(function(exports, SwiperClass, Vue){'use strict';SwiperClass=SwiperClass&&Object.prototype.hasOwnProperty.call(SwiperClass,'default')?SwiperClass['default']:SwiperClass;Vue=Vue&&Object.prototype.hasOwnProperty.call(Vue,'default')?Vue['default']:Vue;/**\r\n * @file vue-awesome-swiper\r\n * @module constants\r\n * @author Surmon \r\n */\r\nvar CoreNames;\r\n(function (CoreNames) {\r\n CoreNames[\"SwiperComponent\"] = \"Swiper\";\r\n CoreNames[\"SwiperSlideComponent\"] = \"SwiperSlide\";\r\n CoreNames[\"SwiperDirective\"] = \"swiper\";\r\n CoreNames[\"SwiperInstance\"] = \"$swiper\";\r\n})(CoreNames || (CoreNames = {}));\r\nvar DEFAULT_CLASSES = Object.freeze({\r\n containerClass: 'swiper-container',\r\n wrapperClass: 'swiper-wrapper',\r\n slideClass: 'swiper-slide'\r\n});\r\nvar ComponentEvents;\r\n(function (ComponentEvents) {\r\n ComponentEvents[\"Ready\"] = \"ready\";\r\n ComponentEvents[\"ClickSlide\"] = \"clickSlide\";\r\n})(ComponentEvents || (ComponentEvents = {}));\r\nvar ComponentPropNames;\r\n(function (ComponentPropNames) {\r\n ComponentPropNames[\"AutoUpdate\"] = \"autoUpdate\";\r\n ComponentPropNames[\"AutoDestroy\"] = \"autoDestroy\";\r\n ComponentPropNames[\"DeleteInstanceOnDestroy\"] = \"deleteInstanceOnDestroy\";\r\n ComponentPropNames[\"CleanupStylesOnDestroy\"] = \"cleanupStylesOnDestroy\";\r\n})(ComponentPropNames || (ComponentPropNames = {}));\r\n// https://swiperjs.com/api/#events\r\nvar SWIPER_EVENTS = [\r\n 'init',\r\n 'beforeDestroy',\r\n 'slideChange',\r\n 'slideChangeTransitionStart',\r\n 'slideChangeTransitionEnd',\r\n 'slideNextTransitionStart',\r\n 'slideNextTransitionEnd',\r\n 'slidePrevTransitionStart',\r\n 'slidePrevTransitionEnd',\r\n 'transitionStart',\r\n 'transitionEnd',\r\n 'touchStart',\r\n 'touchMove',\r\n 'touchMoveOpposite',\r\n 'sliderMove',\r\n 'touchEnd',\r\n 'click',\r\n 'tap',\r\n 'doubleTap',\r\n 'imagesReady',\r\n 'progress',\r\n 'reachBeginning',\r\n 'reachEnd',\r\n 'fromEdge',\r\n 'setTranslate',\r\n 'setTransition',\r\n 'resize',\r\n 'observerUpdate',\r\n 'beforeLoopFix',\r\n 'loopFix'\r\n];/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n\r\nfunction __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}/**\r\n * @file vue-awesome-swiper\r\n * @module utils\r\n * @author Surmon \r\n */\r\nvar kebabcase = function (string) {\r\n return string\r\n .replace(/([a-z])([A-Z])/g, '$1-$2')\r\n .replace(/\\s+/g, '-')\r\n .toLowerCase();\r\n};/**\r\n * @file vue-awesome-swiper\r\n * @module event\r\n * @author Surmon \r\n */\r\nvar handleClickSlideEvent = function (swiper, event, emit) {\r\n var _a, _b, _c;\r\n if (swiper && !(swiper.destroyed)) {\r\n var eventPath = ((_a = event.composedPath) === null || _a === void 0 ? void 0 : _a.call(event)) || event.path;\r\n if ((event === null || event === void 0 ? void 0 : event.target) && eventPath) {\r\n var slides_1 = Array.from(swiper.slides);\r\n var paths = Array.from(eventPath);\r\n // Click slide || slide[children]\r\n if (slides_1.includes(event.target) || paths.some(function (item) { return slides_1.includes(item); })) {\r\n var clickedIndex = swiper.clickedIndex;\r\n var reallyIndex = Number((_c = (_b = swiper.clickedSlide) === null || _b === void 0 ? void 0 : _b.dataset) === null || _c === void 0 ? void 0 : _c.swiperSlideIndex);\r\n var reallyIndexValue = Number.isInteger(reallyIndex) ? reallyIndex : null;\r\n emit(ComponentEvents.ClickSlide, clickedIndex, reallyIndexValue);\r\n emit(kebabcase(ComponentEvents.ClickSlide), clickedIndex, reallyIndexValue);\r\n }\r\n }\r\n }\r\n};\r\nvar bindSwiperEvents = function (swiper, emit) {\r\n SWIPER_EVENTS.forEach(function (eventName) {\r\n swiper.on(eventName, function () {\n var arguments$1 = arguments;\n\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments$1[_i];\r\n }\r\n emit.apply(void 0, __spreadArrays([eventName], args));\r\n var kebabcaseName = kebabcase(eventName);\r\n if (kebabcaseName !== eventName) {\r\n emit.apply(void 0, __spreadArrays([kebabcaseName], args));\r\n }\r\n });\r\n });\r\n};/**\r\n * @file vue-awesome-swiper\r\n * @module directive\r\n * @author Surmon \r\n */\r\nvar INSTANCE_NAME_KEY = 'instanceName';\r\nfunction getDirective(SwiperClass, globalOptions) {\r\n var getStandardisedOptionByAttrs = function (vnode, key) {\r\n var _a, _b, _c, _d;\r\n var value = (_b = (_a = vnode.data) === null || _a === void 0 ? void 0 : _a.attrs) === null || _b === void 0 ? void 0 : _b[key];\r\n return value !== undefined\r\n ? value\r\n : (_d = (_c = vnode.data) === null || _c === void 0 ? void 0 : _c.attrs) === null || _d === void 0 ? void 0 : _d[kebabcase(key)];\r\n };\r\n // Get swiper instace name in directive\r\n var getSwiperInstanceName = function (element, binding, vnode) {\r\n return (binding.arg ||\r\n getStandardisedOptionByAttrs(vnode, INSTANCE_NAME_KEY) ||\r\n element.id ||\r\n CoreNames.SwiperInstance);\r\n };\r\n var getSwiperInstance = function (element, binding, vnode) {\r\n var instanceName = getSwiperInstanceName(element, binding, vnode);\r\n return vnode.context[instanceName] || null;\r\n };\r\n var getSwipeOptions = function (binding) {\r\n return binding.value || globalOptions;\r\n };\r\n var getBooleanValueByInput = function (input) {\r\n return [true, undefined, null, ''].includes(input);\r\n };\r\n // Emit event in Vue directive\r\n var getEventEmiter = function (vnode) {\r\n var _a, _b;\r\n var handlers = ((_a = vnode.data) === null || _a === void 0 ? void 0 : _a.on) || ((_b = vnode.componentOptions) === null || _b === void 0 ? void 0 : _b.listeners);\r\n return function (name) {\n var arguments$1 = arguments;\n\r\n var args = [];\r\n for (var _i = 1; _i < arguments.length; _i++) {\r\n args[_i - 1] = arguments$1[_i];\r\n }\r\n var _a;\r\n var handle = (_a = handlers) === null || _a === void 0 ? void 0 : _a[name];\r\n if (handle) {\r\n handle.fns.apply(handle, args);\r\n }\r\n };\r\n };\r\n return {\r\n // Init\r\n bind: function (element, binding, vnode) {\r\n // auto class name\r\n if (element.className.indexOf(DEFAULT_CLASSES.containerClass) === -1) {\r\n element.className += ((element.className ? ' ' : '') + DEFAULT_CLASSES.containerClass);\r\n }\r\n // bind click event\r\n element.addEventListener('click', function (event) {\r\n var emitEvent = getEventEmiter(vnode);\r\n var swiper = getSwiperInstance(element, binding, vnode);\r\n handleClickSlideEvent(swiper, event, emitEvent);\r\n });\r\n },\r\n // DOM inserted\r\n inserted: function (element, binding, vnode) {\r\n var context = vnode.context;\r\n var swiperOptions = getSwipeOptions(binding);\r\n var instanceName = getSwiperInstanceName(element, binding, vnode);\r\n var emitEvent = getEventEmiter(vnode);\r\n var vueContext = context;\r\n var swiper = vueContext === null || vueContext === void 0 ? void 0 : vueContext[instanceName];\r\n // Swiper will destroy but not delete instance, when used \r\n if (!swiper || swiper.destroyed) {\r\n swiper = new SwiperClass(element, swiperOptions);\r\n vueContext[instanceName] = swiper;\r\n bindSwiperEvents(swiper, emitEvent);\r\n emitEvent(ComponentEvents.Ready, swiper);\r\n // MARK: Reinstance when the nexttick with \r\n // Vue.nextTick(instancing) | setTimeout(instancing)\r\n }\r\n },\r\n // On options changed or DOM updated\r\n componentUpdated: function (element, binding, vnode) {\r\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;\r\n var autoUpdate = getStandardisedOptionByAttrs(vnode, ComponentPropNames.AutoUpdate);\r\n if (getBooleanValueByInput(autoUpdate)) {\r\n var swiper = getSwiperInstance(element, binding, vnode);\r\n if (swiper) {\r\n var swiperOptions = getSwipeOptions(binding);\r\n var isLoop = swiperOptions.loop;\r\n if (isLoop) {\r\n (_b = (_a = swiper) === null || _a === void 0 ? void 0 : _a.loopDestroy) === null || _b === void 0 ? void 0 : _b.call(_a);\r\n }\r\n (_c = swiper === null || swiper === void 0 ? void 0 : swiper.update) === null || _c === void 0 ? void 0 : _c.call(swiper);\r\n (_e = (_d = swiper.navigation) === null || _d === void 0 ? void 0 : _d.update) === null || _e === void 0 ? void 0 : _e.call(_d);\r\n (_g = (_f = swiper.pagination) === null || _f === void 0 ? void 0 : _f.render) === null || _g === void 0 ? void 0 : _g.call(_f);\r\n (_j = (_h = swiper.pagination) === null || _h === void 0 ? void 0 : _h.update) === null || _j === void 0 ? void 0 : _j.call(_h);\r\n if (isLoop) {\r\n (_l = (_k = swiper) === null || _k === void 0 ? void 0 : _k.loopCreate) === null || _l === void 0 ? void 0 : _l.call(_k);\r\n (_m = swiper === null || swiper === void 0 ? void 0 : swiper.update) === null || _m === void 0 ? void 0 : _m.call(swiper);\r\n }\r\n }\r\n }\r\n },\r\n // Destroy this directive\r\n unbind: function (element, binding, vnode) {\r\n var _a;\r\n var autoDestroy = getStandardisedOptionByAttrs(vnode, ComponentPropNames.AutoDestroy);\r\n if (getBooleanValueByInput(autoDestroy)) {\r\n var swiper = getSwiperInstance(element, binding, vnode);\r\n if (swiper && swiper.initialized) {\r\n (_a = swiper === null || swiper === void 0 ? void 0 : swiper.destroy) === null || _a === void 0 ? void 0 : _a.call(swiper, getBooleanValueByInput(getStandardisedOptionByAttrs(vnode, ComponentPropNames.DeleteInstanceOnDestroy)), getBooleanValueByInput(getStandardisedOptionByAttrs(vnode, ComponentPropNames.CleanupStylesOnDestroy)));\r\n }\r\n }\r\n }\r\n };\r\n}/**\r\n * @file vue-awesome-swiper\r\n * @module SwiperComponent\r\n * @author Surmon \r\n */\r\nvar SlotNames;\r\n(function (SlotNames) {\r\n SlotNames[\"ParallaxBg\"] = \"parallax-bg\";\r\n SlotNames[\"Pagination\"] = \"pagination\";\r\n SlotNames[\"Scrollbar\"] = \"scrollbar\";\r\n SlotNames[\"PrevButton\"] = \"button-prev\";\r\n SlotNames[\"NextButton\"] = \"button-next\";\r\n})(SlotNames || (SlotNames = {}));\r\nfunction getSwiperComponent(SwiperClass) {\r\n var _a;\r\n return Vue.extend({\r\n name: CoreNames.SwiperComponent,\r\n props: (_a = {\r\n defaultOptions: {\r\n type: Object,\r\n required: false,\r\n default: function () { return ({}); }\r\n },\r\n // eslint-disable-next-line vue/require-default-prop\r\n options: {\r\n type: Object,\r\n required: false\r\n }\r\n },\r\n _a[ComponentPropNames.AutoUpdate] = {\r\n type: Boolean,\r\n default: true\r\n },\r\n // https://github.com/surmon-china/vue-awesome-swiper/pull/550/files\r\n _a[ComponentPropNames.AutoDestroy] = {\r\n type: Boolean,\r\n default: true\r\n },\r\n // https://github.com/surmon-china/vue-awesome-swiper/pull/388\r\n _a[ComponentPropNames.DeleteInstanceOnDestroy] = {\r\n type: Boolean,\r\n required: false,\r\n default: true\r\n },\r\n _a[ComponentPropNames.CleanupStylesOnDestroy] = {\r\n type: Boolean,\r\n required: false,\r\n default: true\r\n },\r\n _a),\r\n data: function () {\r\n var _a;\r\n return _a = {},\r\n _a[CoreNames.SwiperInstance] = null,\r\n _a;\r\n },\r\n computed: {\r\n swiperInstance: {\r\n cache: false,\r\n set: function (swiper) {\r\n this[CoreNames.SwiperInstance] = swiper;\r\n },\r\n get: function () {\r\n return this[CoreNames.SwiperInstance];\r\n }\r\n },\r\n swiperOptions: function () {\r\n return this.options || this.defaultOptions;\r\n },\r\n wrapperClass: function () {\r\n return this.swiperOptions.wrapperClass || DEFAULT_CLASSES.wrapperClass;\r\n }\r\n },\r\n methods: {\r\n // Feature: click event\r\n handleSwiperClick: function (event) {\r\n handleClickSlideEvent(this.swiperInstance, event, this.$emit.bind(this));\r\n },\r\n autoReLoopSwiper: function () {\r\n var _a, _b;\r\n if (this.swiperInstance && this.swiperOptions.loop) {\r\n // https://github.com/surmon-china/vue-awesome-swiper/issues/593\r\n // https://github.com/surmon-china/vue-awesome-swiper/issues/544\r\n // https://github.com/surmon-china/vue-awesome-swiper/pull/545/files\r\n var swiper = this.swiperInstance;\r\n (_a = swiper === null || swiper === void 0 ? void 0 : swiper.loopDestroy) === null || _a === void 0 ? void 0 : _a.call(swiper);\r\n (_b = swiper === null || swiper === void 0 ? void 0 : swiper.loopCreate) === null || _b === void 0 ? void 0 : _b.call(swiper);\r\n }\r\n },\r\n updateSwiper: function () {\r\n var _a, _b, _c, _d, _e, _f, _g, _h;\r\n if (this[ComponentPropNames.AutoUpdate] && this.swiperInstance) {\r\n this.autoReLoopSwiper();\r\n (_b = (_a = this.swiperInstance) === null || _a === void 0 ? void 0 : _a.update) === null || _b === void 0 ? void 0 : _b.call(_a);\r\n (_d = (_c = this.swiperInstance.navigation) === null || _c === void 0 ? void 0 : _c.update) === null || _d === void 0 ? void 0 : _d.call(_c);\r\n (_f = (_e = this.swiperInstance.pagination) === null || _e === void 0 ? void 0 : _e.render) === null || _f === void 0 ? void 0 : _f.call(_e);\r\n (_h = (_g = this.swiperInstance.pagination) === null || _g === void 0 ? void 0 : _g.update) === null || _h === void 0 ? void 0 : _h.call(_g);\r\n }\r\n },\r\n destroySwiper: function () {\r\n var _a, _b;\r\n if (this[ComponentPropNames.AutoDestroy] && this.swiperInstance) {\r\n // https://github.com/surmon-china/vue-awesome-swiper/pull/341\r\n // https://github.com/surmon-china/vue-awesome-swiper/issues/340\r\n if (this.swiperInstance.initialized) {\r\n (_b = (_a = this.swiperInstance) === null || _a === void 0 ? void 0 : _a.destroy) === null || _b === void 0 ? void 0 : _b.call(_a, this[ComponentPropNames.DeleteInstanceOnDestroy], this[ComponentPropNames.CleanupStylesOnDestroy]);\r\n }\r\n }\r\n },\r\n initSwiper: function () {\r\n this.swiperInstance = new SwiperClass(this.$el, this.swiperOptions);\r\n bindSwiperEvents(this.swiperInstance, this.$emit.bind(this));\r\n this.$emit(ComponentEvents.Ready, this.swiperInstance);\r\n }\r\n },\r\n mounted: function () {\r\n if (!this.swiperInstance) {\r\n this.initSwiper();\r\n }\r\n },\r\n // Update swiper when the parent component activated with `keep-alive`.\r\n activated: function () {\r\n this.updateSwiper();\r\n },\r\n updated: function () {\r\n this.updateSwiper();\r\n },\r\n beforeDestroy: function () {\r\n // https://github.com/surmon-china/vue-awesome-swiper/commit/2924a9d4d3d1cf51c0d46076410b1f804b2b8a43#diff-7f4e0261ac562c0f354cb91a1ca8864f\r\n this.$nextTick(this.destroySwiper);\r\n },\r\n render: function (createElement) {\r\n return createElement('div', {\r\n staticClass: DEFAULT_CLASSES.containerClass,\r\n on: {\r\n click: this.handleSwiperClick\r\n }\r\n }, [\r\n this.$slots[SlotNames.ParallaxBg],\r\n createElement('div', {\r\n class: this.wrapperClass\r\n }, this.$slots.default),\r\n this.$slots[SlotNames.Pagination],\r\n this.$slots[SlotNames.PrevButton],\r\n this.$slots[SlotNames.NextButton],\r\n this.$slots[SlotNames.Scrollbar]\r\n ]);\r\n }\r\n });\r\n}/**\r\n * @file vue-awesome-swiper\r\n * @module SwiperSlideComponent\r\n * @author Surmon \r\n */\r\nvar SwiperSlideComponent = Vue.extend({\r\n name: CoreNames.SwiperSlideComponent,\r\n computed: {\r\n slideClass: function () {\r\n var _a, _b;\r\n return ((_b = (_a = this.$parent) === null || _a === void 0 ? void 0 : _a.swiperOptions) === null || _b === void 0 ? void 0 : _b.slideClass) || DEFAULT_CLASSES.slideClass;\r\n }\r\n },\r\n methods: {\r\n update: function () {\r\n var _a;\r\n var parent = this.$parent;\r\n // https://github.com/surmon-china/vue-awesome-swiper/issues/632\r\n if (parent[ComponentPropNames.AutoUpdate]) {\r\n (_a = parent === null || parent === void 0 ? void 0 : parent.swiperInstance) === null || _a === void 0 ? void 0 : _a.update();\r\n }\r\n }\r\n },\r\n mounted: function () {\r\n this.update();\r\n },\r\n updated: function () {\r\n this.update();\r\n },\r\n render: function (createElement) {\r\n return createElement('div', {\r\n class: this.slideClass\r\n }, this.$slots.default);\r\n }\r\n});/**\r\n * @file vue-awesome-swiper\r\n * @module exporter\r\n * @author Surmon \r\n */\r\nvar getInstaller = function (SwiperClass) {\r\n var install = function (Vue, globalOptions) {\r\n if (install.installed)\r\n { return; }\r\n var SwiperComponent = getSwiperComponent(SwiperClass);\r\n if (globalOptions) {\r\n SwiperComponent.options.props.defaultOptions.default = function () { return globalOptions; };\r\n }\r\n Vue.component(CoreNames.SwiperComponent, SwiperComponent);\r\n Vue.component(CoreNames.SwiperSlideComponent, SwiperSlideComponent);\r\n Vue.directive(CoreNames.SwiperDirective, getDirective(SwiperClass, globalOptions));\r\n install.installed = true;\r\n };\r\n return install;\r\n};\r\nfunction exporter(SwiperClass) {\r\n var _a;\r\n return _a = {\r\n version: '4.1.1',\r\n install: getInstaller(SwiperClass),\r\n directive: getDirective(SwiperClass)\r\n },\r\n _a[CoreNames.SwiperComponent] = getSwiperComponent(SwiperClass),\r\n _a[CoreNames.SwiperSlideComponent] = SwiperSlideComponent,\r\n _a;\r\n}/**\r\n * @file vue-awesome-swiper\r\n * @module default-export\r\n * @author Surmon \r\n */\r\nvar VueAwesomeSwiper = exporter(SwiperClass);\r\nvar version = VueAwesomeSwiper.version;\r\nvar install = VueAwesomeSwiper.install;\r\nvar directive = VueAwesomeSwiper.directive;\r\nvar Swiper = VueAwesomeSwiper.Swiper;\r\nvar SwiperSlide = VueAwesomeSwiper.SwiperSlide;exports.Swiper=Swiper;exports.SwiperSlide=SwiperSlide;exports.default=VueAwesomeSwiper;exports.directive=directive;exports.install=install;exports.version=version;Object.defineProperty(exports,'__esModule',{value:true});})));","// style-loader: Adds some css to the DOM by adding a \n","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent(\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier /* server only */,\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options =\n typeof scriptExports === 'function' ? scriptExports.options : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) {\n // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n )\n }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","import { render, staticRenderFns } from \"./EditionBadge.vue?vue&type=template&id=27585133&scoped=true&\"\nimport script from \"./EditionBadge.vue?vue&type=script&lang=js&\"\nexport * from \"./EditionBadge.vue?vue&type=script&lang=js&\"\nimport style0 from \"./EditionBadge.vue?vue&type=style&index=0&id=27585133&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"27585133\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"edition-badge\",class:_vm.cssClass},[_c('div',{staticClass:\"edition-badge-name\"},[_vm._v(_vm._s(_vm.name))])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginCard.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginCard.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PluginCard.vue?vue&type=template&id=28e904f0&scoped=true&\"\nimport script from \"./PluginCard.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginCard.vue?vue&type=script&lang=js&\"\nimport style0 from \"./PluginCard.vue?vue&type=style&index=0&id=28e904f0&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"28e904f0\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.plugin)?_c('router-link',{staticClass:\"plugin-card tw-relative tw-flex tw-flex-no-wrap tw-items-start tw-py-6 tw-border-b tw-border-gray-200 tw-border-solid tw-no-underline hover:tw-no-underline tw-text-gray-900\",attrs:{\"to\":'/' + _vm.plugin.handle,\"title\":_vm.plugin.name}},[_c('div',{staticClass:\"plugin-icon tw-mr-4 tw-w-16 tw-shrink-0\"},[(_vm.plugin.iconUrl)?[_c('img',{staticClass:\"tw-w-16 tw-h-16\",attrs:{\"src\":_vm.plugin.iconUrl}})]:[_c('div',{staticClass:\"tw-bg-gray-100 tw-w-16 tw-h-16 tw-flex tw-items-center tw-justify-center tw-rounded-full\"},[_c('c-icon',{staticClass:\"tw-w-7 tw-h-7 tw-text-gray-400\",attrs:{\"icon\":\"plug\"}})],1)]],2),_vm._v(\" \"),_c('div',[_c('div',{staticClass:\"plugin-details-header\"},[_c('div',{staticClass:\"plugin-name tw-flex tw-items-center\"},[_c('strong',[_vm._v(_vm._s(_vm.plugin.name))]),_vm._v(\" \"),(\n _vm.trialMode &&\n _vm.activeTrialPluginEdition &&\n _vm.plugin.editions.length > 1\n )?_c('edition-badge',{attrs:{\"name\":_vm.activeTrialPluginEdition.name}}):_vm._e()],1),_vm._v(\" \"),_c('div',[_vm._v(_vm._s(_vm.plugin.shortDescription))])]),_vm._v(\" \"),(_vm.plugin.abandoned)?[_c('div',{staticClass:\"error\"},[_vm._v(_vm._s(_vm._f(\"t\")('Abandoned','app')))])]:[_c('div',{staticClass:\"light\"},[_vm._v(\"\\n \"+_vm._s(_vm.fullPriceLabel)+\"\\n \")])],_vm._v(\" \"),(_vm.isPluginInstalled(_vm.plugin.handle))?_c('div',{staticClass:\"installed\",attrs:{\"data-icon\":\"check\"}}):_vm._e()],2)]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PluginGrid.vue?vue&type=template&id=06107ea4&\"\nimport script from \"./PluginGrid.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginGrid.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.plugins && _vm.plugins.length > 0)?_c('div',{staticClass:\"tw-grid-plugins tw-grid tw-grid-cols-1 sm:tw-grid-cols-2 xl:tw-grid-cols-3 2xl:tw-grid-cols-4 tw-gap-x-8\"},_vm._l((_vm.computedPlugins),function(plugin,key){return _c('div',{key:key,staticClass:\"tw-grid-box sm:tw-flex\"},[_c('plugin-card',{staticClass:\"sm:tw-flex-1\",attrs:{\"plugin\":plugin,\"trialMode\":_vm.trialMode}})],1)}),0):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=e0db0634&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"ps-container\"},[(!_vm.loading)?[_vm._l((_vm.featuredSections),function(featuredSection,key){return _c('div',{key:'featuredSection-' + key,staticClass:\"featured-section\"},[_c('div',{staticClass:\"tw-flex tw-items-baseline tw-justify-between\",class:{'tw-mt-8': key > 0}},[_c('h2',[_vm._v(_vm._s(featuredSection.title))]),_vm._v(\" \"),_c('router-link',{staticClass:\"tw-right\",attrs:{\"to\":'/featured/' + featuredSection.slug}},[_vm._v(_vm._s(_vm._f(\"t\")('See all','app'))+\"\\n \")])],1),_vm._v(\" \"),_c('plugin-grid',{attrs:{\"plugins\":featuredSection.plugins,\"auto-limit\":true}})],1)}),_vm._v(\" \"),(_vm.activeTrialPlugins.length > 0 || _vm.activeTrialsError)?[_c('h2',[_vm._v(_vm._s(_vm._f(\"t\")('Active Trials','app')))]),_vm._v(\" \"),(_vm.activeTrialPlugins.length > 0)?[_c('plugin-grid',{attrs:{\"plugins\":_vm.activeTrialPlugins,\"trialMode\":true}})]:_vm._e(),_vm._v(\" \"),(_vm.activeTrialsError)?[_c('div',{staticClass:\"tw-mb-8\"},[_c('p',{staticClass:\"error\"},[_vm._v(_vm._s(_vm.activeTrialsError))])])]:_vm._e()]:_vm._e()]:[_c('c-spinner')]],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./SortMenuBtn.vue?vue&type=template&id=8468b614&\"\nimport script from \"./SortMenuBtn.vue?vue&type=script&lang=js&\"\nexport * from \"./SortMenuBtn.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SortMenuBtn.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SortMenuBtn.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:\"sortMenuBtn\"},[_c('div',{staticClass:\"btn menubtn sortmenubtn\",attrs:{\"data-icon\":_vm.value.direction}},[_vm._v(\"\\n \"+_vm._s(_vm.menuLabel)+\"\\n \")]),_vm._v(\" \"),_c('div',{staticClass:\"menu\"},[_c('ul',{staticClass:\"padded sort-attributes\"},_vm._l((_vm.attributes),function(label,key){return _c('li',{key:key},[_c('a',{class:{sel: _vm.value.attribute == key},on:{\"click\":function($event){return _vm.selectAttribute(key)}}},[_vm._v(_vm._s(label))])])}),0),_vm._v(\" \"),_c('hr'),_vm._v(\" \"),_c('ul',{staticClass:\"padded sort-directions\"},_vm._l((_vm.directions),function(label,key){return _c('li',{key:key},[_c('a',{class:{sel: _vm.value.direction == key},on:{\"click\":function($event){return _vm.selectDirection(key)}}},[_vm._v(_vm._s(label))])])}),0)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./PluginIndexSort.vue?vue&type=template&id=32025476&\"\nimport script from \"./PluginIndexSort.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginIndexSort.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"tw-flex tw-items-center tw-self-end\"},[(_vm.loading)?_c('c-spinner',{staticClass:\"tw-mr-4\"}):_vm._e(),_vm._v(\" \"),_c('sort-menu-btn',{attrs:{\"attributes\":_vm.sortMenuBtnAttributes,\"value\":_vm.options},on:{\"update:value\":function($event){_vm.options=$event}}})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PluginIndex.vue?vue&type=template&id=452b9294&\"\nimport script from \"./PluginIndex.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginIndex.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginIndex.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginIndex.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('div',{staticClass:\"tw-border-b tw-border-solid tw-border-gray-200 tw-space-y-4 md:tw-space-y-0 md:tw-flex tw-justify-between tw-items-center\"},[_vm._t(\"header\"),_vm._v(\" \"),(!_vm.disableSorting)?[_c('plugin-index-sort',{staticClass:\"tw-pb-4\",attrs:{\"loading\":_vm.loading,\"orderBy\":_vm.orderBy,\"direction\":_vm.direction},on:{\"update:orderBy\":function($event){_vm.orderBy=$event},\"update:order-by\":function($event){_vm.orderBy=$event},\"update:direction\":function($event){_vm.direction=$event},\"change\":_vm.onOrderByChange}})]:_vm._e()],2),_vm._v(\" \"),_c('plugin-grid',{attrs:{\"plugins\":_vm.plugins}}),_vm._v(\" \"),(_vm.plugins.length === 0 && !_vm.loadingBottom && !_vm.loading)?_c('div',{staticClass:\"tw-mt-4\"},[_c('p',[_vm._v(_vm._s(_vm._f(\"t\")('No results.','app')))])]):_vm._e(),_vm._v(\" \"),(_vm.error)?_c('div',{staticClass:\"tw-my-4 tw-text-red-600\"},[_vm._v(_vm._s(_vm.error))]):_vm._e(),_vm._v(\" \"),(_vm.loadingBottom || (_vm.disableSorting && _vm.loading))?_c('c-spinner',{staticClass:\"tw-my-4\"}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./_id.vue?vue&type=template&id=02ca7891&\"\nimport script from \"./_id.vue?vue&type=script&lang=js&\"\nexport * from \"./_id.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_id.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_id.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.category)?_c('div',{staticClass:\"ps-container\"},[_c('plugin-index',{attrs:{\"action\":\"pluginStore/getPluginsByCategory\",\"requestData\":_vm.requestData,\"plugins\":_vm.plugins},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('h1',[_vm._v(_vm._s(_vm.category.title))])]},proxy:true}],null,false,3653016063)})],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","/**!\n * @fileOverview Kickass library to create and place poppers near their reference elements.\n * @version 1.16.1\n * @license\n * Copyright (c) 2016 Federico Zivolo and contributors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined';\n\nvar timeoutDuration = function () {\n var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox'];\n for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) {\n if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) {\n return 1;\n }\n }\n return 0;\n}();\n\nfunction microtaskDebounce(fn) {\n var called = false;\n return function () {\n if (called) {\n return;\n }\n called = true;\n window.Promise.resolve().then(function () {\n called = false;\n fn();\n });\n };\n}\n\nfunction taskDebounce(fn) {\n var scheduled = false;\n return function () {\n if (!scheduled) {\n scheduled = true;\n setTimeout(function () {\n scheduled = false;\n fn();\n }, timeoutDuration);\n }\n };\n}\n\nvar supportsMicroTasks = isBrowser && window.Promise;\n\n/**\n* Create a debounced version of a method, that's asynchronously deferred\n* but called in the minimum time possible.\n*\n* @method\n* @memberof Popper.Utils\n* @argument {Function} fn\n* @returns {Function}\n*/\nvar debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce;\n\n/**\n * Check if the given variable is a function\n * @method\n * @memberof Popper.Utils\n * @argument {Any} functionToCheck - variable to check\n * @returns {Boolean} answer to: is a function?\n */\nfunction isFunction(functionToCheck) {\n var getType = {};\n return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';\n}\n\n/**\n * Get CSS computed property of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Eement} element\n * @argument {String} property\n */\nfunction getStyleComputedProperty(element, property) {\n if (element.nodeType !== 1) {\n return [];\n }\n // NOTE: 1 DOM access here\n var window = element.ownerDocument.defaultView;\n var css = window.getComputedStyle(element, null);\n return property ? css[property] : css;\n}\n\n/**\n * Returns the parentNode or the host of the element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} parent\n */\nfunction getParentNode(element) {\n if (element.nodeName === 'HTML') {\n return element;\n }\n return element.parentNode || element.host;\n}\n\n/**\n * Returns the scrolling parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} scroll parent\n */\nfunction getScrollParent(element) {\n // Return body, `getScroll` will take care to get the correct `scrollTop` from it\n if (!element) {\n return document.body;\n }\n\n switch (element.nodeName) {\n case 'HTML':\n case 'BODY':\n return element.ownerDocument.body;\n case '#document':\n return element.body;\n }\n\n // Firefox want us to check `-x` and `-y` variations as well\n\n var _getStyleComputedProp = getStyleComputedProperty(element),\n overflow = _getStyleComputedProp.overflow,\n overflowX = _getStyleComputedProp.overflowX,\n overflowY = _getStyleComputedProp.overflowY;\n\n if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) {\n return element;\n }\n\n return getScrollParent(getParentNode(element));\n}\n\n/**\n * Returns the reference node of the reference object, or the reference object itself.\n * @method\n * @memberof Popper.Utils\n * @param {Element|Object} reference - the reference element (the popper will be relative to this)\n * @returns {Element} parent\n */\nfunction getReferenceNode(reference) {\n return reference && reference.referenceNode ? reference.referenceNode : reference;\n}\n\nvar isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode);\nvar isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent);\n\n/**\n * Determines if the browser is Internet Explorer\n * @method\n * @memberof Popper.Utils\n * @param {Number} version to check\n * @returns {Boolean} isIE\n */\nfunction isIE(version) {\n if (version === 11) {\n return isIE11;\n }\n if (version === 10) {\n return isIE10;\n }\n return isIE11 || isIE10;\n}\n\n/**\n * Returns the offset parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} offset parent\n */\nfunction getOffsetParent(element) {\n if (!element) {\n return document.documentElement;\n }\n\n var noOffsetParent = isIE(10) ? document.body : null;\n\n // NOTE: 1 DOM access here\n var offsetParent = element.offsetParent || null;\n // Skip hidden elements which don't have an offsetParent\n while (offsetParent === noOffsetParent && element.nextElementSibling) {\n offsetParent = (element = element.nextElementSibling).offsetParent;\n }\n\n var nodeName = offsetParent && offsetParent.nodeName;\n\n if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {\n return element ? element.ownerDocument.documentElement : document.documentElement;\n }\n\n // .offsetParent will return the closest TH, TD or TABLE in case\n // no offsetParent is present, I hate this job...\n if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') {\n return getOffsetParent(offsetParent);\n }\n\n return offsetParent;\n}\n\nfunction isOffsetContainer(element) {\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY') {\n return false;\n }\n return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element;\n}\n\n/**\n * Finds the root node (document, shadowDOM root) of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} node\n * @returns {Element} root node\n */\nfunction getRoot(node) {\n if (node.parentNode !== null) {\n return getRoot(node.parentNode);\n }\n\n return node;\n}\n\n/**\n * Finds the offset parent common to the two provided nodes\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element1\n * @argument {Element} element2\n * @returns {Element} common offset parent\n */\nfunction findCommonOffsetParent(element1, element2) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) {\n return document.documentElement;\n }\n\n // Here we make sure to give as \"start\" the element that comes first in the DOM\n var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING;\n var start = order ? element1 : element2;\n var end = order ? element2 : element1;\n\n // Get common ancestor container\n var range = document.createRange();\n range.setStart(start, 0);\n range.setEnd(end, 0);\n var commonAncestorContainer = range.commonAncestorContainer;\n\n // Both nodes are inside #document\n\n if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) {\n if (isOffsetContainer(commonAncestorContainer)) {\n return commonAncestorContainer;\n }\n\n return getOffsetParent(commonAncestorContainer);\n }\n\n // one of the nodes is inside shadowDOM, find which one\n var element1root = getRoot(element1);\n if (element1root.host) {\n return findCommonOffsetParent(element1root.host, element2);\n } else {\n return findCommonOffsetParent(element1, getRoot(element2).host);\n }\n}\n\n/**\n * Gets the scroll value of the given element in the given side (top and left)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {String} side `top` or `left`\n * @returns {number} amount of scrolled pixels\n */\nfunction getScroll(element) {\n var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top';\n\n var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft';\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n var html = element.ownerDocument.documentElement;\n var scrollingElement = element.ownerDocument.scrollingElement || html;\n return scrollingElement[upperSide];\n }\n\n return element[upperSide];\n}\n\n/*\n * Sum or subtract the element scroll values (left and top) from a given rect object\n * @method\n * @memberof Popper.Utils\n * @param {Object} rect - Rect object you want to change\n * @param {HTMLElement} element - The element from the function reads the scroll values\n * @param {Boolean} subtract - set to true if you want to subtract the scroll values\n * @return {Object} rect - The modifier rect object\n */\nfunction includeScroll(rect, element) {\n var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n var modifier = subtract ? -1 : 1;\n rect.top += scrollTop * modifier;\n rect.bottom += scrollTop * modifier;\n rect.left += scrollLeft * modifier;\n rect.right += scrollLeft * modifier;\n return rect;\n}\n\n/*\n * Helper to detect borders of a given element\n * @method\n * @memberof Popper.Utils\n * @param {CSSStyleDeclaration} styles\n * Result of `getStyleComputedProperty` on the given element\n * @param {String} axis - `x` or `y`\n * @return {number} borders - The borders size of the given axis\n */\n\nfunction getBordersSize(styles, axis) {\n var sideA = axis === 'x' ? 'Left' : 'Top';\n var sideB = sideA === 'Left' ? 'Right' : 'Bottom';\n\n return parseFloat(styles['border' + sideA + 'Width']) + parseFloat(styles['border' + sideB + 'Width']);\n}\n\nfunction getSize(axis, body, html, computedStyle) {\n return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? parseInt(html['offset' + axis]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')]) : 0);\n}\n\nfunction getWindowSizes(document) {\n var body = document.body;\n var html = document.documentElement;\n var computedStyle = isIE(10) && getComputedStyle(html);\n\n return {\n height: getSize('Height', body, html, computedStyle),\n width: getSize('Width', body, html, computedStyle)\n };\n}\n\nvar classCallCheck = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\n\n\n\n\nvar defineProperty = function (obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n};\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\n/**\n * Given element offsets, generate an output similar to getBoundingClientRect\n * @method\n * @memberof Popper.Utils\n * @argument {Object} offsets\n * @returns {Object} ClientRect like output\n */\nfunction getClientRect(offsets) {\n return _extends({}, offsets, {\n right: offsets.left + offsets.width,\n bottom: offsets.top + offsets.height\n });\n}\n\n/**\n * Get bounding client rect of given element\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} element\n * @return {Object} client rect\n */\nfunction getBoundingClientRect(element) {\n var rect = {};\n\n // IE10 10 FIX: Please, don't ask, the element isn't\n // considered in DOM in some circumstances...\n // This isn't reproducible in IE10 compatibility mode of IE11\n try {\n if (isIE(10)) {\n rect = element.getBoundingClientRect();\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n rect.top += scrollTop;\n rect.left += scrollLeft;\n rect.bottom += scrollTop;\n rect.right += scrollLeft;\n } else {\n rect = element.getBoundingClientRect();\n }\n } catch (e) {}\n\n var result = {\n left: rect.left,\n top: rect.top,\n width: rect.right - rect.left,\n height: rect.bottom - rect.top\n };\n\n // subtract scrollbar size from sizes\n var sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {};\n var width = sizes.width || element.clientWidth || result.width;\n var height = sizes.height || element.clientHeight || result.height;\n\n var horizScrollbar = element.offsetWidth - width;\n var vertScrollbar = element.offsetHeight - height;\n\n // if an hypothetical scrollbar is detected, we must be sure it's not a `border`\n // we make this check conditional for performance reasons\n if (horizScrollbar || vertScrollbar) {\n var styles = getStyleComputedProperty(element);\n horizScrollbar -= getBordersSize(styles, 'x');\n vertScrollbar -= getBordersSize(styles, 'y');\n\n result.width -= horizScrollbar;\n result.height -= vertScrollbar;\n }\n\n return getClientRect(result);\n}\n\nfunction getOffsetRectRelativeToArbitraryNode(children, parent) {\n var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var isIE10 = isIE(10);\n var isHTML = parent.nodeName === 'HTML';\n var childrenRect = getBoundingClientRect(children);\n var parentRect = getBoundingClientRect(parent);\n var scrollParent = getScrollParent(children);\n\n var styles = getStyleComputedProperty(parent);\n var borderTopWidth = parseFloat(styles.borderTopWidth);\n var borderLeftWidth = parseFloat(styles.borderLeftWidth);\n\n // In cases where the parent is fixed, we must ignore negative scroll in offset calc\n if (fixedPosition && isHTML) {\n parentRect.top = Math.max(parentRect.top, 0);\n parentRect.left = Math.max(parentRect.left, 0);\n }\n var offsets = getClientRect({\n top: childrenRect.top - parentRect.top - borderTopWidth,\n left: childrenRect.left - parentRect.left - borderLeftWidth,\n width: childrenRect.width,\n height: childrenRect.height\n });\n offsets.marginTop = 0;\n offsets.marginLeft = 0;\n\n // Subtract margins of documentElement in case it's being used as parent\n // we do this only on HTML because it's the only element that behaves\n // differently when margins are applied to it. The margins are included in\n // the box of the documentElement, in the other cases not.\n if (!isIE10 && isHTML) {\n var marginTop = parseFloat(styles.marginTop);\n var marginLeft = parseFloat(styles.marginLeft);\n\n offsets.top -= borderTopWidth - marginTop;\n offsets.bottom -= borderTopWidth - marginTop;\n offsets.left -= borderLeftWidth - marginLeft;\n offsets.right -= borderLeftWidth - marginLeft;\n\n // Attach marginTop and marginLeft because in some circumstances we may need them\n offsets.marginTop = marginTop;\n offsets.marginLeft = marginLeft;\n }\n\n if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') {\n offsets = includeScroll(offsets, parent);\n }\n\n return offsets;\n}\n\nfunction getViewportOffsetRectRelativeToArtbitraryNode(element) {\n var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var html = element.ownerDocument.documentElement;\n var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);\n var width = Math.max(html.clientWidth, window.innerWidth || 0);\n var height = Math.max(html.clientHeight, window.innerHeight || 0);\n\n var scrollTop = !excludeScroll ? getScroll(html) : 0;\n var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;\n\n var offset = {\n top: scrollTop - relativeOffset.top + relativeOffset.marginTop,\n left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft,\n width: width,\n height: height\n };\n\n return getClientRect(offset);\n}\n\n/**\n * Check if the given element is fixed or is inside a fixed parent\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {Element} customContainer\n * @returns {Boolean} answer to \"isFixed?\"\n */\nfunction isFixed(element) {\n var nodeName = element.nodeName;\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n return false;\n }\n if (getStyleComputedProperty(element, 'position') === 'fixed') {\n return true;\n }\n var parentNode = getParentNode(element);\n if (!parentNode) {\n return false;\n }\n return isFixed(parentNode);\n}\n\n/**\n * Finds the first parent of an element that has a transformed property defined\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} first transformed parent or documentElement\n */\n\nfunction getFixedPositionOffsetParent(element) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element || !element.parentElement || isIE()) {\n return document.documentElement;\n }\n var el = element.parentElement;\n while (el && getStyleComputedProperty(el, 'transform') === 'none') {\n el = el.parentElement;\n }\n return el || document.documentElement;\n}\n\n/**\n * Computed the boundaries limits and return them\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} popper\n * @param {HTMLElement} reference\n * @param {number} padding\n * @param {HTMLElement} boundariesElement - Element used to define the boundaries\n * @param {Boolean} fixedPosition - Is in fixed position mode\n * @returns {Object} Coordinates of the boundaries\n */\nfunction getBoundaries(popper, reference, padding, boundariesElement) {\n var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n\n // NOTE: 1 DOM access here\n\n var boundaries = { top: 0, left: 0 };\n var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n\n // Handle viewport case\n if (boundariesElement === 'viewport') {\n boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);\n } else {\n // Handle other cases based on DOM element used as boundaries\n var boundariesNode = void 0;\n if (boundariesElement === 'scrollParent') {\n boundariesNode = getScrollParent(getParentNode(reference));\n if (boundariesNode.nodeName === 'BODY') {\n boundariesNode = popper.ownerDocument.documentElement;\n }\n } else if (boundariesElement === 'window') {\n boundariesNode = popper.ownerDocument.documentElement;\n } else {\n boundariesNode = boundariesElement;\n }\n\n var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition);\n\n // In case of HTML, we need a different computation\n if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {\n var _getWindowSizes = getWindowSizes(popper.ownerDocument),\n height = _getWindowSizes.height,\n width = _getWindowSizes.width;\n\n boundaries.top += offsets.top - offsets.marginTop;\n boundaries.bottom = height + offsets.top;\n boundaries.left += offsets.left - offsets.marginLeft;\n boundaries.right = width + offsets.left;\n } else {\n // for all the other DOM elements, this one is good\n boundaries = offsets;\n }\n }\n\n // Add paddings\n padding = padding || 0;\n var isPaddingNumber = typeof padding === 'number';\n boundaries.left += isPaddingNumber ? padding : padding.left || 0;\n boundaries.top += isPaddingNumber ? padding : padding.top || 0;\n boundaries.right -= isPaddingNumber ? padding : padding.right || 0;\n boundaries.bottom -= isPaddingNumber ? padding : padding.bottom || 0;\n\n return boundaries;\n}\n\nfunction getArea(_ref) {\n var width = _ref.width,\n height = _ref.height;\n\n return width * height;\n}\n\n/**\n * Utility used to transform the `auto` placement to the placement with more\n * available space.\n * @method\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) {\n var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;\n\n if (placement.indexOf('auto') === -1) {\n return placement;\n }\n\n var boundaries = getBoundaries(popper, reference, padding, boundariesElement);\n\n var rects = {\n top: {\n width: boundaries.width,\n height: refRect.top - boundaries.top\n },\n right: {\n width: boundaries.right - refRect.right,\n height: boundaries.height\n },\n bottom: {\n width: boundaries.width,\n height: boundaries.bottom - refRect.bottom\n },\n left: {\n width: refRect.left - boundaries.left,\n height: boundaries.height\n }\n };\n\n var sortedAreas = Object.keys(rects).map(function (key) {\n return _extends({\n key: key\n }, rects[key], {\n area: getArea(rects[key])\n });\n }).sort(function (a, b) {\n return b.area - a.area;\n });\n\n var filteredAreas = sortedAreas.filter(function (_ref2) {\n var width = _ref2.width,\n height = _ref2.height;\n return width >= popper.clientWidth && height >= popper.clientHeight;\n });\n\n var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key;\n\n var variation = placement.split('-')[1];\n\n return computedPlacement + (variation ? '-' + variation : '');\n}\n\n/**\n * Get offsets to the reference element\n * @method\n * @memberof Popper.Utils\n * @param {Object} state\n * @param {Element} popper - the popper element\n * @param {Element} reference - the reference element (the popper will be relative to this)\n * @param {Element} fixedPosition - is in fixed position mode\n * @returns {Object} An object containing the offsets which will be applied to the popper\n */\nfunction getReferenceOffsets(state, popper, reference) {\n var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);\n}\n\n/**\n * Get the outer sizes of the given element (offset size + margins)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Object} object containing width and height properties\n */\nfunction getOuterSizes(element) {\n var window = element.ownerDocument.defaultView;\n var styles = window.getComputedStyle(element);\n var x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0);\n var y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0);\n var result = {\n width: element.offsetWidth + y,\n height: element.offsetHeight + x\n };\n return result;\n}\n\n/**\n * Get the opposite placement of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement\n * @returns {String} flipped placement\n */\nfunction getOppositePlacement(placement) {\n var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}\n\n/**\n * Get offsets to the popper\n * @method\n * @memberof Popper.Utils\n * @param {Object} position - CSS position the Popper will get applied\n * @param {HTMLElement} popper - the popper element\n * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this)\n * @param {String} placement - one of the valid placement options\n * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper\n */\nfunction getPopperOffsets(popper, referenceOffsets, placement) {\n placement = placement.split('-')[0];\n\n // Get popper node sizes\n var popperRect = getOuterSizes(popper);\n\n // Add position, width and height to our offsets object\n var popperOffsets = {\n width: popperRect.width,\n height: popperRect.height\n };\n\n // depending by the popper placement we have to compute its offsets slightly differently\n var isHoriz = ['right', 'left'].indexOf(placement) !== -1;\n var mainSide = isHoriz ? 'top' : 'left';\n var secondarySide = isHoriz ? 'left' : 'top';\n var measurement = isHoriz ? 'height' : 'width';\n var secondaryMeasurement = !isHoriz ? 'height' : 'width';\n\n popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2;\n if (placement === secondarySide) {\n popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement];\n } else {\n popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)];\n }\n\n return popperOffsets;\n}\n\n/**\n * Mimics the `find` method of Array\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction find(arr, check) {\n // use native find if supported\n if (Array.prototype.find) {\n return arr.find(check);\n }\n\n // use `filter` to obtain the same behavior of `find`\n return arr.filter(check)[0];\n}\n\n/**\n * Return the index of the matching object\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction findIndex(arr, prop, value) {\n // use native findIndex if supported\n if (Array.prototype.findIndex) {\n return arr.findIndex(function (cur) {\n return cur[prop] === value;\n });\n }\n\n // use `find` + `indexOf` if `findIndex` isn't supported\n var match = find(arr, function (obj) {\n return obj[prop] === value;\n });\n return arr.indexOf(match);\n}\n\n/**\n * Loop trough the list of modifiers and run them in order,\n * each of them will then edit the data object.\n * @method\n * @memberof Popper.Utils\n * @param {dataObject} data\n * @param {Array} modifiers\n * @param {String} ends - Optional modifier name used as stopper\n * @returns {dataObject}\n */\nfunction runModifiers(modifiers, data, ends) {\n var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends));\n\n modifiersToRun.forEach(function (modifier) {\n if (modifier['function']) {\n // eslint-disable-line dot-notation\n console.warn('`modifier.function` is deprecated, use `modifier.fn`!');\n }\n var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation\n if (modifier.enabled && isFunction(fn)) {\n // Add properties to offsets to make them a complete clientRect object\n // we do this before each modifier to make sure the previous one doesn't\n // mess with these values\n data.offsets.popper = getClientRect(data.offsets.popper);\n data.offsets.reference = getClientRect(data.offsets.reference);\n\n data = fn(data, modifier);\n }\n });\n\n return data;\n}\n\n/**\n * Updates the position of the popper, computing the new offsets and applying\n * the new style.
    \n * Prefer `scheduleUpdate` over `update` because of performance reasons.\n * @method\n * @memberof Popper\n */\nfunction update() {\n // if popper is destroyed, don't perform any further update\n if (this.state.isDestroyed) {\n return;\n }\n\n var data = {\n instance: this,\n styles: {},\n arrowStyles: {},\n attributes: {},\n flipped: false,\n offsets: {}\n };\n\n // compute reference element offsets\n data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n data.placement = computeAutoPlacement(this.options.placement, data.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding);\n\n // store the computed placement inside `originalPlacement`\n data.originalPlacement = data.placement;\n\n data.positionFixed = this.options.positionFixed;\n\n // compute the popper offsets\n data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement);\n\n data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute';\n\n // run the modifiers\n data = runModifiers(this.modifiers, data);\n\n // the first `update` will call `onCreate` callback\n // the other ones will call `onUpdate` callback\n if (!this.state.isCreated) {\n this.state.isCreated = true;\n this.options.onCreate(data);\n } else {\n this.options.onUpdate(data);\n }\n}\n\n/**\n * Helper used to know if the given modifier is enabled.\n * @method\n * @memberof Popper.Utils\n * @returns {Boolean}\n */\nfunction isModifierEnabled(modifiers, modifierName) {\n return modifiers.some(function (_ref) {\n var name = _ref.name,\n enabled = _ref.enabled;\n return enabled && name === modifierName;\n });\n}\n\n/**\n * Get the prefixed supported property name\n * @method\n * @memberof Popper.Utils\n * @argument {String} property (camelCase)\n * @returns {String} prefixed property (camelCase or PascalCase, depending on the vendor prefix)\n */\nfunction getSupportedPropertyName(property) {\n var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O'];\n var upperProp = property.charAt(0).toUpperCase() + property.slice(1);\n\n for (var i = 0; i < prefixes.length; i++) {\n var prefix = prefixes[i];\n var toCheck = prefix ? '' + prefix + upperProp : property;\n if (typeof document.body.style[toCheck] !== 'undefined') {\n return toCheck;\n }\n }\n return null;\n}\n\n/**\n * Destroys the popper.\n * @method\n * @memberof Popper\n */\nfunction destroy() {\n this.state.isDestroyed = true;\n\n // touch DOM only if `applyStyle` modifier is enabled\n if (isModifierEnabled(this.modifiers, 'applyStyle')) {\n this.popper.removeAttribute('x-placement');\n this.popper.style.position = '';\n this.popper.style.top = '';\n this.popper.style.left = '';\n this.popper.style.right = '';\n this.popper.style.bottom = '';\n this.popper.style.willChange = '';\n this.popper.style[getSupportedPropertyName('transform')] = '';\n }\n\n this.disableEventListeners();\n\n // remove the popper if user explicitly asked for the deletion on destroy\n // do not use `remove` because IE11 doesn't support it\n if (this.options.removeOnDestroy) {\n this.popper.parentNode.removeChild(this.popper);\n }\n return this;\n}\n\n/**\n * Get the window associated with the element\n * @argument {Element} element\n * @returns {Window}\n */\nfunction getWindow(element) {\n var ownerDocument = element.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView : window;\n}\n\nfunction attachToScrollParents(scrollParent, event, callback, scrollParents) {\n var isBody = scrollParent.nodeName === 'BODY';\n var target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent;\n target.addEventListener(event, callback, { passive: true });\n\n if (!isBody) {\n attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents);\n }\n scrollParents.push(target);\n}\n\n/**\n * Setup needed event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction setupEventListeners(reference, options, state, updateBound) {\n // Resize event listener on window\n state.updateBound = updateBound;\n getWindow(reference).addEventListener('resize', state.updateBound, { passive: true });\n\n // Scroll event listener on scroll parents\n var scrollElement = getScrollParent(reference);\n attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents);\n state.scrollElement = scrollElement;\n state.eventsEnabled = true;\n\n return state;\n}\n\n/**\n * It will add resize/scroll events and start recalculating\n * position of the popper element when they are triggered.\n * @method\n * @memberof Popper\n */\nfunction enableEventListeners() {\n if (!this.state.eventsEnabled) {\n this.state = setupEventListeners(this.reference, this.options, this.state, this.scheduleUpdate);\n }\n}\n\n/**\n * Remove event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction removeEventListeners(reference, state) {\n // Remove resize event listener on window\n getWindow(reference).removeEventListener('resize', state.updateBound);\n\n // Remove scroll event listener on scroll parents\n state.scrollParents.forEach(function (target) {\n target.removeEventListener('scroll', state.updateBound);\n });\n\n // Reset state\n state.updateBound = null;\n state.scrollParents = [];\n state.scrollElement = null;\n state.eventsEnabled = false;\n return state;\n}\n\n/**\n * It will remove resize/scroll events and won't recalculate popper position\n * when they are triggered. It also won't trigger `onUpdate` callback anymore,\n * unless you call `update` method manually.\n * @method\n * @memberof Popper\n */\nfunction disableEventListeners() {\n if (this.state.eventsEnabled) {\n cancelAnimationFrame(this.scheduleUpdate);\n this.state = removeEventListeners(this.reference, this.state);\n }\n}\n\n/**\n * Tells if a given input is a number\n * @method\n * @memberof Popper.Utils\n * @param {*} input to check\n * @return {Boolean}\n */\nfunction isNumeric(n) {\n return n !== '' && !isNaN(parseFloat(n)) && isFinite(n);\n}\n\n/**\n * Set the style to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the style to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setStyles(element, styles) {\n Object.keys(styles).forEach(function (prop) {\n var unit = '';\n // add unit if the value is numeric and is one of the following\n if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && isNumeric(styles[prop])) {\n unit = 'px';\n }\n element.style[prop] = styles[prop] + unit;\n });\n}\n\n/**\n * Set the attributes to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the attributes to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setAttributes(element, attributes) {\n Object.keys(attributes).forEach(function (prop) {\n var value = attributes[prop];\n if (value !== false) {\n element.setAttribute(prop, attributes[prop]);\n } else {\n element.removeAttribute(prop);\n }\n });\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} data.styles - List of style properties - values to apply to popper element\n * @argument {Object} data.attributes - List of attribute properties - values to apply to popper element\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The same data object\n */\nfunction applyStyle(data) {\n // any property present in `data.styles` will be applied to the popper,\n // in this way we can make the 3rd party modifiers add custom styles to it\n // Be aware, modifiers could override the properties defined in the previous\n // lines of this modifier!\n setStyles(data.instance.popper, data.styles);\n\n // any property present in `data.attributes` will be applied to the popper,\n // they will be set as HTML attributes of the element\n setAttributes(data.instance.popper, data.attributes);\n\n // if arrowElement is defined and arrowStyles has some properties\n if (data.arrowElement && Object.keys(data.arrowStyles).length) {\n setStyles(data.arrowElement, data.arrowStyles);\n }\n\n return data;\n}\n\n/**\n * Set the x-placement attribute before everything else because it could be used\n * to add margins to the popper margins needs to be calculated to get the\n * correct popper offsets.\n * @method\n * @memberof Popper.modifiers\n * @param {HTMLElement} reference - The reference element used to position the popper\n * @param {HTMLElement} popper - The HTML element used as popper\n * @param {Object} options - Popper.js options\n */\nfunction applyStyleOnLoad(reference, popper, options, modifierOptions, state) {\n // compute reference element offsets\n var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n var placement = computeAutoPlacement(options.placement, referenceOffsets, popper, reference, options.modifiers.flip.boundariesElement, options.modifiers.flip.padding);\n\n popper.setAttribute('x-placement', placement);\n\n // Apply `position` to popper before anything else because\n // without the position applied we can't guarantee correct computations\n setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' });\n\n return options;\n}\n\n/**\n * @function\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Boolean} shouldRound - If the offsets should be rounded at all\n * @returns {Object} The popper's position offsets rounded\n *\n * The tale of pixel-perfect positioning. It's still not 100% perfect, but as\n * good as it can be within reason.\n * Discussion here: https://github.com/FezVrasta/popper.js/pull/715\n *\n * Low DPI screens cause a popper to be blurry if not using full pixels (Safari\n * as well on High DPI screens).\n *\n * Firefox prefers no rounding for positioning and does not have blurriness on\n * high DPI screens.\n *\n * Only horizontal placement and left/right values need to be considered.\n */\nfunction getRoundedOffsets(data, shouldRound) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n var round = Math.round,\n floor = Math.floor;\n\n var noRound = function noRound(v) {\n return v;\n };\n\n var referenceWidth = round(reference.width);\n var popperWidth = round(popper.width);\n\n var isVertical = ['left', 'right'].indexOf(data.placement) !== -1;\n var isVariation = data.placement.indexOf('-') !== -1;\n var sameWidthParity = referenceWidth % 2 === popperWidth % 2;\n var bothOddWidth = referenceWidth % 2 === 1 && popperWidth % 2 === 1;\n\n var horizontalToInteger = !shouldRound ? noRound : isVertical || isVariation || sameWidthParity ? round : floor;\n var verticalToInteger = !shouldRound ? noRound : round;\n\n return {\n left: horizontalToInteger(bothOddWidth && !isVariation && shouldRound ? popper.left - 1 : popper.left),\n top: verticalToInteger(popper.top),\n bottom: verticalToInteger(popper.bottom),\n right: horizontalToInteger(popper.right)\n };\n}\n\nvar isFirefox = isBrowser && /Firefox/i.test(navigator.userAgent);\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeStyle(data, options) {\n var x = options.x,\n y = options.y;\n var popper = data.offsets.popper;\n\n // Remove this legacy support in Popper.js v2\n\n var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'applyStyle';\n }).gpuAcceleration;\n if (legacyGpuAccelerationOption !== undefined) {\n console.warn('WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!');\n }\n var gpuAcceleration = legacyGpuAccelerationOption !== undefined ? legacyGpuAccelerationOption : options.gpuAcceleration;\n\n var offsetParent = getOffsetParent(data.instance.popper);\n var offsetParentRect = getBoundingClientRect(offsetParent);\n\n // Styles\n var styles = {\n position: popper.position\n };\n\n var offsets = getRoundedOffsets(data, window.devicePixelRatio < 2 || !isFirefox);\n\n var sideA = x === 'bottom' ? 'top' : 'bottom';\n var sideB = y === 'right' ? 'left' : 'right';\n\n // if gpuAcceleration is set to `true` and transform is supported,\n // we use `translate3d` to apply the position to the popper we\n // automatically use the supported prefixed version if needed\n var prefixedProperty = getSupportedPropertyName('transform');\n\n // now, let's make a step back and look at this code closely (wtf?)\n // If the content of the popper grows once it's been positioned, it\n // may happen that the popper gets misplaced because of the new content\n // overflowing its reference element\n // To avoid this problem, we provide two options (x and y), which allow\n // the consumer to define the offset origin.\n // If we position a popper on top of a reference element, we can set\n // `x` to `top` to make the popper grow towards its top instead of\n // its bottom.\n var left = void 0,\n top = void 0;\n if (sideA === 'bottom') {\n // when offsetParent is the positioning is relative to the bottom of the screen (excluding the scrollbar)\n // and not the bottom of the html element\n if (offsetParent.nodeName === 'HTML') {\n top = -offsetParent.clientHeight + offsets.bottom;\n } else {\n top = -offsetParentRect.height + offsets.bottom;\n }\n } else {\n top = offsets.top;\n }\n if (sideB === 'right') {\n if (offsetParent.nodeName === 'HTML') {\n left = -offsetParent.clientWidth + offsets.right;\n } else {\n left = -offsetParentRect.width + offsets.right;\n }\n } else {\n left = offsets.left;\n }\n if (gpuAcceleration && prefixedProperty) {\n styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)';\n styles[sideA] = 0;\n styles[sideB] = 0;\n styles.willChange = 'transform';\n } else {\n // othwerise, we use the standard `top`, `left`, `bottom` and `right` properties\n var invertTop = sideA === 'bottom' ? -1 : 1;\n var invertLeft = sideB === 'right' ? -1 : 1;\n styles[sideA] = top * invertTop;\n styles[sideB] = left * invertLeft;\n styles.willChange = sideA + ', ' + sideB;\n }\n\n // Attributes\n var attributes = {\n 'x-placement': data.placement\n };\n\n // Update `data` attributes, styles and arrowStyles\n data.attributes = _extends({}, attributes, data.attributes);\n data.styles = _extends({}, styles, data.styles);\n data.arrowStyles = _extends({}, data.offsets.arrow, data.arrowStyles);\n\n return data;\n}\n\n/**\n * Helper used to know if the given modifier depends from another one.
    \n * It checks if the needed modifier is listed and enabled.\n * @method\n * @memberof Popper.Utils\n * @param {Array} modifiers - list of modifiers\n * @param {String} requestingName - name of requesting modifier\n * @param {String} requestedName - name of requested modifier\n * @returns {Boolean}\n */\nfunction isModifierRequired(modifiers, requestingName, requestedName) {\n var requesting = find(modifiers, function (_ref) {\n var name = _ref.name;\n return name === requestingName;\n });\n\n var isRequired = !!requesting && modifiers.some(function (modifier) {\n return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order;\n });\n\n if (!isRequired) {\n var _requesting = '`' + requestingName + '`';\n var requested = '`' + requestedName + '`';\n console.warn(requested + ' modifier is required by ' + _requesting + ' modifier in order to work, be sure to include it before ' + _requesting + '!');\n }\n return isRequired;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction arrow(data, options) {\n var _data$offsets$arrow;\n\n // arrow depends on keepTogether in order to work\n if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) {\n return data;\n }\n\n var arrowElement = options.element;\n\n // if arrowElement is a string, suppose it's a CSS selector\n if (typeof arrowElement === 'string') {\n arrowElement = data.instance.popper.querySelector(arrowElement);\n\n // if arrowElement is not found, don't run the modifier\n if (!arrowElement) {\n return data;\n }\n } else {\n // if the arrowElement isn't a query selector we must check that the\n // provided DOM node is child of its popper node\n if (!data.instance.popper.contains(arrowElement)) {\n console.warn('WARNING: `arrow.element` must be child of its popper element!');\n return data;\n }\n }\n\n var placement = data.placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isVertical = ['left', 'right'].indexOf(placement) !== -1;\n\n var len = isVertical ? 'height' : 'width';\n var sideCapitalized = isVertical ? 'Top' : 'Left';\n var side = sideCapitalized.toLowerCase();\n var altSide = isVertical ? 'left' : 'top';\n var opSide = isVertical ? 'bottom' : 'right';\n var arrowElementSize = getOuterSizes(arrowElement)[len];\n\n //\n // extends keepTogether behavior making sure the popper and its\n // reference have enough pixels in conjunction\n //\n\n // top/left side\n if (reference[opSide] - arrowElementSize < popper[side]) {\n data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowElementSize);\n }\n // bottom/right side\n if (reference[side] + arrowElementSize > popper[opSide]) {\n data.offsets.popper[side] += reference[side] + arrowElementSize - popper[opSide];\n }\n data.offsets.popper = getClientRect(data.offsets.popper);\n\n // compute center of the popper\n var center = reference[side] + reference[len] / 2 - arrowElementSize / 2;\n\n // Compute the sideValue using the updated popper offsets\n // take popper margin in account because we don't have this info available\n var css = getStyleComputedProperty(data.instance.popper);\n var popperMarginSide = parseFloat(css['margin' + sideCapitalized]);\n var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width']);\n var sideValue = center - data.offsets.popper[side] - popperMarginSide - popperBorderSide;\n\n // prevent arrowElement from being placed not contiguously to its popper\n sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0);\n\n data.arrowElement = arrowElement;\n data.offsets.arrow = (_data$offsets$arrow = {}, defineProperty(_data$offsets$arrow, side, Math.round(sideValue)), defineProperty(_data$offsets$arrow, altSide, ''), _data$offsets$arrow);\n\n return data;\n}\n\n/**\n * Get the opposite placement variation of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement variation\n * @returns {String} flipped placement variation\n */\nfunction getOppositeVariation(variation) {\n if (variation === 'end') {\n return 'start';\n } else if (variation === 'start') {\n return 'end';\n }\n return variation;\n}\n\n/**\n * List of accepted placements to use as values of the `placement` option.
    \n * Valid placements are:\n * - `auto`\n * - `top`\n * - `right`\n * - `bottom`\n * - `left`\n *\n * Each placement can have a variation from this list:\n * - `-start`\n * - `-end`\n *\n * Variations are interpreted easily if you think of them as the left to right\n * written languages. Horizontally (`top` and `bottom`), `start` is left and `end`\n * is right.
    \n * Vertically (`left` and `right`), `start` is top and `end` is bottom.\n *\n * Some valid examples are:\n * - `top-end` (on top of reference, right aligned)\n * - `right-start` (on right of reference, top aligned)\n * - `bottom` (on bottom, centered)\n * - `auto-end` (on the side with more space available, alignment depends by placement)\n *\n * @static\n * @type {Array}\n * @enum {String}\n * @readonly\n * @method placements\n * @memberof Popper\n */\nvar placements = ['auto-start', 'auto', 'auto-end', 'top-start', 'top', 'top-end', 'right-start', 'right', 'right-end', 'bottom-end', 'bottom', 'bottom-start', 'left-end', 'left', 'left-start'];\n\n// Get rid of `auto` `auto-start` and `auto-end`\nvar validPlacements = placements.slice(3);\n\n/**\n * Given an initial placement, returns all the subsequent placements\n * clockwise (or counter-clockwise).\n *\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement - A valid placement (it accepts variations)\n * @argument {Boolean} counter - Set to true to walk the placements counterclockwise\n * @returns {Array} placements including their variations\n */\nfunction clockwise(placement) {\n var counter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var index = validPlacements.indexOf(placement);\n var arr = validPlacements.slice(index + 1).concat(validPlacements.slice(0, index));\n return counter ? arr.reverse() : arr;\n}\n\nvar BEHAVIORS = {\n FLIP: 'flip',\n CLOCKWISE: 'clockwise',\n COUNTERCLOCKWISE: 'counterclockwise'\n};\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction flip(data, options) {\n // if `inner` modifier is enabled, we can't use the `flip` modifier\n if (isModifierEnabled(data.instance.modifiers, 'inner')) {\n return data;\n }\n\n if (data.flipped && data.placement === data.originalPlacement) {\n // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides\n return data;\n }\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed);\n\n var placement = data.placement.split('-')[0];\n var placementOpposite = getOppositePlacement(placement);\n var variation = data.placement.split('-')[1] || '';\n\n var flipOrder = [];\n\n switch (options.behavior) {\n case BEHAVIORS.FLIP:\n flipOrder = [placement, placementOpposite];\n break;\n case BEHAVIORS.CLOCKWISE:\n flipOrder = clockwise(placement);\n break;\n case BEHAVIORS.COUNTERCLOCKWISE:\n flipOrder = clockwise(placement, true);\n break;\n default:\n flipOrder = options.behavior;\n }\n\n flipOrder.forEach(function (step, index) {\n if (placement !== step || flipOrder.length === index + 1) {\n return data;\n }\n\n placement = data.placement.split('-')[0];\n placementOpposite = getOppositePlacement(placement);\n\n var popperOffsets = data.offsets.popper;\n var refOffsets = data.offsets.reference;\n\n // using floor because the reference offsets may contain decimals we are not going to consider here\n var floor = Math.floor;\n var overlapsRef = placement === 'left' && floor(popperOffsets.right) > floor(refOffsets.left) || placement === 'right' && floor(popperOffsets.left) < floor(refOffsets.right) || placement === 'top' && floor(popperOffsets.bottom) > floor(refOffsets.top) || placement === 'bottom' && floor(popperOffsets.top) < floor(refOffsets.bottom);\n\n var overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left);\n var overflowsRight = floor(popperOffsets.right) > floor(boundaries.right);\n var overflowsTop = floor(popperOffsets.top) < floor(boundaries.top);\n var overflowsBottom = floor(popperOffsets.bottom) > floor(boundaries.bottom);\n\n var overflowsBoundaries = placement === 'left' && overflowsLeft || placement === 'right' && overflowsRight || placement === 'top' && overflowsTop || placement === 'bottom' && overflowsBottom;\n\n // flip the variation if required\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n\n // flips variation if reference element overflows boundaries\n var flippedVariationByRef = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom);\n\n // flips variation if popper content overflows boundaries\n var flippedVariationByContent = !!options.flipVariationsByContent && (isVertical && variation === 'start' && overflowsRight || isVertical && variation === 'end' && overflowsLeft || !isVertical && variation === 'start' && overflowsBottom || !isVertical && variation === 'end' && overflowsTop);\n\n var flippedVariation = flippedVariationByRef || flippedVariationByContent;\n\n if (overlapsRef || overflowsBoundaries || flippedVariation) {\n // this boolean to detect any flip loop\n data.flipped = true;\n\n if (overlapsRef || overflowsBoundaries) {\n placement = flipOrder[index + 1];\n }\n\n if (flippedVariation) {\n variation = getOppositeVariation(variation);\n }\n\n data.placement = placement + (variation ? '-' + variation : '');\n\n // this object contains `position`, we want to preserve it along with\n // any additional property we may add in the future\n data.offsets.popper = _extends({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement));\n\n data = runModifiers(data.instance.modifiers, data, 'flip');\n }\n });\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction keepTogether(data) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var placement = data.placement.split('-')[0];\n var floor = Math.floor;\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n var side = isVertical ? 'right' : 'bottom';\n var opSide = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n if (popper[side] < floor(reference[opSide])) {\n data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement];\n }\n if (popper[opSide] > floor(reference[side])) {\n data.offsets.popper[opSide] = floor(reference[side]);\n }\n\n return data;\n}\n\n/**\n * Converts a string containing value + unit into a px value number\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} str - Value + unit string\n * @argument {String} measurement - `height` or `width`\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @returns {Number|String}\n * Value in pixels, or original string if no values were extracted\n */\nfunction toValue(str, measurement, popperOffsets, referenceOffsets) {\n // separate value from unit\n var split = str.match(/((?:\\-|\\+)?\\d*\\.?\\d*)(.*)/);\n var value = +split[1];\n var unit = split[2];\n\n // If it's not a number it's an operator, I guess\n if (!value) {\n return str;\n }\n\n if (unit.indexOf('%') === 0) {\n var element = void 0;\n switch (unit) {\n case '%p':\n element = popperOffsets;\n break;\n case '%':\n case '%r':\n default:\n element = referenceOffsets;\n }\n\n var rect = getClientRect(element);\n return rect[measurement] / 100 * value;\n } else if (unit === 'vh' || unit === 'vw') {\n // if is a vh or vw, we calculate the size based on the viewport\n var size = void 0;\n if (unit === 'vh') {\n size = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);\n } else {\n size = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);\n }\n return size / 100 * value;\n } else {\n // if is an explicit pixel unit, we get rid of the unit and keep the value\n // if is an implicit unit, it's px, and we return just the value\n return value;\n }\n}\n\n/**\n * Parse an `offset` string to extrapolate `x` and `y` numeric offsets.\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} offset\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @argument {String} basePlacement\n * @returns {Array} a two cells array with x and y offsets in numbers\n */\nfunction parseOffset(offset, popperOffsets, referenceOffsets, basePlacement) {\n var offsets = [0, 0];\n\n // Use height if placement is left or right and index is 0 otherwise use width\n // in this way the first offset will use an axis and the second one\n // will use the other one\n var useHeight = ['right', 'left'].indexOf(basePlacement) !== -1;\n\n // Split the offset string to obtain a list of values and operands\n // The regex addresses values with the plus or minus sign in front (+10, -20, etc)\n var fragments = offset.split(/(\\+|\\-)/).map(function (frag) {\n return frag.trim();\n });\n\n // Detect if the offset string contains a pair of values or a single one\n // they could be separated by comma or space\n var divider = fragments.indexOf(find(fragments, function (frag) {\n return frag.search(/,|\\s/) !== -1;\n }));\n\n if (fragments[divider] && fragments[divider].indexOf(',') === -1) {\n console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.');\n }\n\n // If divider is found, we divide the list of values and operands to divide\n // them by ofset X and Y.\n var splitRegex = /\\s*,\\s*|\\s+/;\n var ops = divider !== -1 ? [fragments.slice(0, divider).concat([fragments[divider].split(splitRegex)[0]]), [fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider + 1))] : [fragments];\n\n // Convert the values with units to absolute pixels to allow our computations\n ops = ops.map(function (op, index) {\n // Most of the units rely on the orientation of the popper\n var measurement = (index === 1 ? !useHeight : useHeight) ? 'height' : 'width';\n var mergeWithPrevious = false;\n return op\n // This aggregates any `+` or `-` sign that aren't considered operators\n // e.g.: 10 + +5 => [10, +, +5]\n .reduce(function (a, b) {\n if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) {\n a[a.length - 1] = b;\n mergeWithPrevious = true;\n return a;\n } else if (mergeWithPrevious) {\n a[a.length - 1] += b;\n mergeWithPrevious = false;\n return a;\n } else {\n return a.concat(b);\n }\n }, [])\n // Here we convert the string values into number values (in px)\n .map(function (str) {\n return toValue(str, measurement, popperOffsets, referenceOffsets);\n });\n });\n\n // Loop trough the offsets arrays and execute the operations\n ops.forEach(function (op, index) {\n op.forEach(function (frag, index2) {\n if (isNumeric(frag)) {\n offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1);\n }\n });\n });\n return offsets;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @argument {Number|String} options.offset=0\n * The offset value as described in the modifier description\n * @returns {Object} The data object, properly modified\n */\nfunction offset(data, _ref) {\n var offset = _ref.offset;\n var placement = data.placement,\n _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var basePlacement = placement.split('-')[0];\n\n var offsets = void 0;\n if (isNumeric(+offset)) {\n offsets = [+offset, 0];\n } else {\n offsets = parseOffset(offset, popper, reference, basePlacement);\n }\n\n if (basePlacement === 'left') {\n popper.top += offsets[0];\n popper.left -= offsets[1];\n } else if (basePlacement === 'right') {\n popper.top += offsets[0];\n popper.left += offsets[1];\n } else if (basePlacement === 'top') {\n popper.left += offsets[0];\n popper.top -= offsets[1];\n } else if (basePlacement === 'bottom') {\n popper.left += offsets[0];\n popper.top += offsets[1];\n }\n\n data.popper = popper;\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction preventOverflow(data, options) {\n var boundariesElement = options.boundariesElement || getOffsetParent(data.instance.popper);\n\n // If offsetParent is the reference element, we really want to\n // go one step up and use the next offsetParent as reference to\n // avoid to make this modifier completely useless and look like broken\n if (data.instance.reference === boundariesElement) {\n boundariesElement = getOffsetParent(boundariesElement);\n }\n\n // NOTE: DOM access here\n // resets the popper's position so that the document size can be calculated excluding\n // the size of the popper element itself\n var transformProp = getSupportedPropertyName('transform');\n var popperStyles = data.instance.popper.style; // assignment to help minification\n var top = popperStyles.top,\n left = popperStyles.left,\n transform = popperStyles[transformProp];\n\n popperStyles.top = '';\n popperStyles.left = '';\n popperStyles[transformProp] = '';\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed);\n\n // NOTE: DOM access here\n // restores the original style properties after the offsets have been computed\n popperStyles.top = top;\n popperStyles.left = left;\n popperStyles[transformProp] = transform;\n\n options.boundaries = boundaries;\n\n var order = options.priority;\n var popper = data.offsets.popper;\n\n var check = {\n primary: function primary(placement) {\n var value = popper[placement];\n if (popper[placement] < boundaries[placement] && !options.escapeWithReference) {\n value = Math.max(popper[placement], boundaries[placement]);\n }\n return defineProperty({}, placement, value);\n },\n secondary: function secondary(placement) {\n var mainSide = placement === 'right' ? 'left' : 'top';\n var value = popper[mainSide];\n if (popper[placement] > boundaries[placement] && !options.escapeWithReference) {\n value = Math.min(popper[mainSide], boundaries[placement] - (placement === 'right' ? popper.width : popper.height));\n }\n return defineProperty({}, mainSide, value);\n }\n };\n\n order.forEach(function (placement) {\n var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary';\n popper = _extends({}, popper, check[side](placement));\n });\n\n data.offsets.popper = popper;\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction shift(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var shiftvariation = placement.split('-')[1];\n\n // if shift shiftvariation is specified, run the modifier\n if (shiftvariation) {\n var _data$offsets = data.offsets,\n reference = _data$offsets.reference,\n popper = _data$offsets.popper;\n\n var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1;\n var side = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n var shiftOffsets = {\n start: defineProperty({}, side, reference[side]),\n end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement])\n };\n\n data.offsets.popper = _extends({}, popper, shiftOffsets[shiftvariation]);\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction hide(data) {\n if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) {\n return data;\n }\n\n var refRect = data.offsets.reference;\n var bound = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'preventOverflow';\n }).boundaries;\n\n if (refRect.bottom < bound.top || refRect.left > bound.right || refRect.top > bound.bottom || refRect.right < bound.left) {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === true) {\n return data;\n }\n\n data.hide = true;\n data.attributes['x-out-of-boundaries'] = '';\n } else {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === false) {\n return data;\n }\n\n data.hide = false;\n data.attributes['x-out-of-boundaries'] = false;\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction inner(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1;\n\n var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1;\n\n popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0);\n\n data.placement = getOppositePlacement(placement);\n data.offsets.popper = getClientRect(popper);\n\n return data;\n}\n\n/**\n * Modifier function, each modifier can have a function of this type assigned\n * to its `fn` property.
    \n * These functions will be called on each update, this means that you must\n * make sure they are performant enough to avoid performance bottlenecks.\n *\n * @function ModifierFn\n * @argument {dataObject} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {dataObject} The data object, properly modified\n */\n\n/**\n * Modifiers are plugins used to alter the behavior of your poppers.
    \n * Popper.js uses a set of 9 modifiers to provide all the basic functionalities\n * needed by the library.\n *\n * Usually you don't want to override the `order`, `fn` and `onLoad` props.\n * All the other properties are configurations that could be tweaked.\n * @namespace modifiers\n */\nvar modifiers = {\n /**\n * Modifier used to shift the popper on the start or end of its reference\n * element.
    \n * It will read the variation of the `placement` property.
    \n * It can be one either `-end` or `-start`.\n * @memberof modifiers\n * @inner\n */\n shift: {\n /** @prop {number} order=100 - Index used to define the order of execution */\n order: 100,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: shift\n },\n\n /**\n * The `offset` modifier can shift your popper on both its axis.\n *\n * It accepts the following units:\n * - `px` or unit-less, interpreted as pixels\n * - `%` or `%r`, percentage relative to the length of the reference element\n * - `%p`, percentage relative to the length of the popper element\n * - `vw`, CSS viewport width unit\n * - `vh`, CSS viewport height unit\n *\n * For length is intended the main axis relative to the placement of the popper.
    \n * This means that if the placement is `top` or `bottom`, the length will be the\n * `width`. In case of `left` or `right`, it will be the `height`.\n *\n * You can provide a single value (as `Number` or `String`), or a pair of values\n * as `String` divided by a comma or one (or more) white spaces.
    \n * The latter is a deprecated method because it leads to confusion and will be\n * removed in v2.
    \n * Additionally, it accepts additions and subtractions between different units.\n * Note that multiplications and divisions aren't supported.\n *\n * Valid examples are:\n * ```\n * 10\n * '10%'\n * '10, 10'\n * '10%, 10'\n * '10 + 10%'\n * '10 - 5vh + 3%'\n * '-10px + 5vh, 5px - 6%'\n * ```\n * > **NB**: If you desire to apply offsets to your poppers in a way that may make them overlap\n * > with their reference element, unfortunately, you will have to disable the `flip` modifier.\n * > You can read more on this at this [issue](https://github.com/FezVrasta/popper.js/issues/373).\n *\n * @memberof modifiers\n * @inner\n */\n offset: {\n /** @prop {number} order=200 - Index used to define the order of execution */\n order: 200,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: offset,\n /** @prop {Number|String} offset=0\n * The offset value as described in the modifier description\n */\n offset: 0\n },\n\n /**\n * Modifier used to prevent the popper from being positioned outside the boundary.\n *\n * A scenario exists where the reference itself is not within the boundaries.
    \n * We can say it has \"escaped the boundaries\" — or just \"escaped\".
    \n * In this case we need to decide whether the popper should either:\n *\n * - detach from the reference and remain \"trapped\" in the boundaries, or\n * - if it should ignore the boundary and \"escape with its reference\"\n *\n * When `escapeWithReference` is set to`true` and reference is completely\n * outside its boundaries, the popper will overflow (or completely leave)\n * the boundaries in order to remain attached to the edge of the reference.\n *\n * @memberof modifiers\n * @inner\n */\n preventOverflow: {\n /** @prop {number} order=300 - Index used to define the order of execution */\n order: 300,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: preventOverflow,\n /**\n * @prop {Array} [priority=['left','right','top','bottom']]\n * Popper will try to prevent overflow following these priorities by default,\n * then, it could overflow on the left and on top of the `boundariesElement`\n */\n priority: ['left', 'right', 'top', 'bottom'],\n /**\n * @prop {number} padding=5\n * Amount of pixel used to define a minimum distance between the boundaries\n * and the popper. This makes sure the popper always has a little padding\n * between the edges of its container\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='scrollParent'\n * Boundaries used by the modifier. Can be `scrollParent`, `window`,\n * `viewport` or any DOM element.\n */\n boundariesElement: 'scrollParent'\n },\n\n /**\n * Modifier used to make sure the reference and its popper stay near each other\n * without leaving any gap between the two. Especially useful when the arrow is\n * enabled and you want to ensure that it points to its reference element.\n * It cares only about the first axis. You can still have poppers with margin\n * between the popper and its reference element.\n * @memberof modifiers\n * @inner\n */\n keepTogether: {\n /** @prop {number} order=400 - Index used to define the order of execution */\n order: 400,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: keepTogether\n },\n\n /**\n * This modifier is used to move the `arrowElement` of the popper to make\n * sure it is positioned between the reference element and its popper element.\n * It will read the outer size of the `arrowElement` node to detect how many\n * pixels of conjunction are needed.\n *\n * It has no effect if no `arrowElement` is provided.\n * @memberof modifiers\n * @inner\n */\n arrow: {\n /** @prop {number} order=500 - Index used to define the order of execution */\n order: 500,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: arrow,\n /** @prop {String|HTMLElement} element='[x-arrow]' - Selector or node used as arrow */\n element: '[x-arrow]'\n },\n\n /**\n * Modifier used to flip the popper's placement when it starts to overlap its\n * reference element.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n *\n * **NOTE:** this modifier will interrupt the current update cycle and will\n * restart it if it detects the need to flip the placement.\n * @memberof modifiers\n * @inner\n */\n flip: {\n /** @prop {number} order=600 - Index used to define the order of execution */\n order: 600,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: flip,\n /**\n * @prop {String|Array} behavior='flip'\n * The behavior used to change the popper's placement. It can be one of\n * `flip`, `clockwise`, `counterclockwise` or an array with a list of valid\n * placements (with optional variations)\n */\n behavior: 'flip',\n /**\n * @prop {number} padding=5\n * The popper will flip if it hits the edges of the `boundariesElement`\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='viewport'\n * The element which will define the boundaries of the popper position.\n * The popper will never be placed outside of the defined boundaries\n * (except if `keepTogether` is enabled)\n */\n boundariesElement: 'viewport',\n /**\n * @prop {Boolean} flipVariations=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the reference element overlaps its boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariations: false,\n /**\n * @prop {Boolean} flipVariationsByContent=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the popper element overlaps its reference boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariationsByContent: false\n },\n\n /**\n * Modifier used to make the popper flow toward the inner of the reference element.\n * By default, when this modifier is disabled, the popper will be placed outside\n * the reference element.\n * @memberof modifiers\n * @inner\n */\n inner: {\n /** @prop {number} order=700 - Index used to define the order of execution */\n order: 700,\n /** @prop {Boolean} enabled=false - Whether the modifier is enabled or not */\n enabled: false,\n /** @prop {ModifierFn} */\n fn: inner\n },\n\n /**\n * Modifier used to hide the popper when its reference element is outside of the\n * popper boundaries. It will set a `x-out-of-boundaries` attribute which can\n * be used to hide with a CSS selector the popper when its reference is\n * out of boundaries.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n * @memberof modifiers\n * @inner\n */\n hide: {\n /** @prop {number} order=800 - Index used to define the order of execution */\n order: 800,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: hide\n },\n\n /**\n * Computes the style that will be applied to the popper element to gets\n * properly positioned.\n *\n * Note that this modifier will not touch the DOM, it just prepares the styles\n * so that `applyStyle` modifier can apply it. This separation is useful\n * in case you need to replace `applyStyle` with a custom implementation.\n *\n * This modifier has `850` as `order` value to maintain backward compatibility\n * with previous versions of Popper.js. Expect the modifiers ordering method\n * to change in future major versions of the library.\n *\n * @memberof modifiers\n * @inner\n */\n computeStyle: {\n /** @prop {number} order=850 - Index used to define the order of execution */\n order: 850,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: computeStyle,\n /**\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: true,\n /**\n * @prop {string} [x='bottom']\n * Where to anchor the X axis (`bottom` or `top`). AKA X offset origin.\n * Change this if your popper should grow in a direction different from `bottom`\n */\n x: 'bottom',\n /**\n * @prop {string} [x='left']\n * Where to anchor the Y axis (`left` or `right`). AKA Y offset origin.\n * Change this if your popper should grow in a direction different from `right`\n */\n y: 'right'\n },\n\n /**\n * Applies the computed styles to the popper element.\n *\n * All the DOM manipulations are limited to this modifier. This is useful in case\n * you want to integrate Popper.js inside a framework or view library and you\n * want to delegate all the DOM manipulations to it.\n *\n * Note that if you disable this modifier, you must make sure the popper element\n * has its position set to `absolute` before Popper.js can do its work!\n *\n * Just disable this modifier and define your own to achieve the desired effect.\n *\n * @memberof modifiers\n * @inner\n */\n applyStyle: {\n /** @prop {number} order=900 - Index used to define the order of execution */\n order: 900,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: applyStyle,\n /** @prop {Function} */\n onLoad: applyStyleOnLoad,\n /**\n * @deprecated since version 1.10.0, the property moved to `computeStyle` modifier\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: undefined\n }\n};\n\n/**\n * The `dataObject` is an object containing all the information used by Popper.js.\n * This object is passed to modifiers and to the `onCreate` and `onUpdate` callbacks.\n * @name dataObject\n * @property {Object} data.instance The Popper.js instance\n * @property {String} data.placement Placement applied to popper\n * @property {String} data.originalPlacement Placement originally defined on init\n * @property {Boolean} data.flipped True if popper has been flipped by flip modifier\n * @property {Boolean} data.hide True if the reference element is out of boundaries, useful to know when to hide the popper\n * @property {HTMLElement} data.arrowElement Node used as arrow by arrow modifier\n * @property {Object} data.styles Any CSS property defined here will be applied to the popper. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.arrowStyles Any CSS property defined here will be applied to the popper arrow. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.boundaries Offsets of the popper boundaries\n * @property {Object} data.offsets The measurements of popper, reference and arrow elements\n * @property {Object} data.offsets.popper `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.reference `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.arrow] `top` and `left` offsets, only one of them will be different from 0\n */\n\n/**\n * Default options provided to Popper.js constructor.
    \n * These can be overridden using the `options` argument of Popper.js.
    \n * To override an option, simply pass an object with the same\n * structure of the `options` object, as the 3rd argument. For example:\n * ```\n * new Popper(ref, pop, {\n * modifiers: {\n * preventOverflow: { enabled: false }\n * }\n * })\n * ```\n * @type {Object}\n * @static\n * @memberof Popper\n */\nvar Defaults = {\n /**\n * Popper's placement.\n * @prop {Popper.placements} placement='bottom'\n */\n placement: 'bottom',\n\n /**\n * Set this to true if you want popper to position it self in 'fixed' mode\n * @prop {Boolean} positionFixed=false\n */\n positionFixed: false,\n\n /**\n * Whether events (resize, scroll) are initially enabled.\n * @prop {Boolean} eventsEnabled=true\n */\n eventsEnabled: true,\n\n /**\n * Set to true if you want to automatically remove the popper when\n * you call the `destroy` method.\n * @prop {Boolean} removeOnDestroy=false\n */\n removeOnDestroy: false,\n\n /**\n * Callback called when the popper is created.
    \n * By default, it is set to no-op.
    \n * Access Popper.js instance with `data.instance`.\n * @prop {onCreate}\n */\n onCreate: function onCreate() {},\n\n /**\n * Callback called when the popper is updated. This callback is not called\n * on the initialization/creation of the popper, but only on subsequent\n * updates.
    \n * By default, it is set to no-op.
    \n * Access Popper.js instance with `data.instance`.\n * @prop {onUpdate}\n */\n onUpdate: function onUpdate() {},\n\n /**\n * List of modifiers used to modify the offsets before they are applied to the popper.\n * They provide most of the functionalities of Popper.js.\n * @prop {modifiers}\n */\n modifiers: modifiers\n};\n\n/**\n * @callback onCreate\n * @param {dataObject} data\n */\n\n/**\n * @callback onUpdate\n * @param {dataObject} data\n */\n\n// Utils\n// Methods\nvar Popper = function () {\n /**\n * Creates a new Popper.js instance.\n * @class Popper\n * @param {Element|referenceObject} reference - The reference element used to position the popper\n * @param {Element} popper - The HTML / XML element used as the popper\n * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults)\n * @return {Object} instance - The generated Popper.js instance\n */\n function Popper(reference, popper) {\n var _this = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n classCallCheck(this, Popper);\n\n this.scheduleUpdate = function () {\n return requestAnimationFrame(_this.update);\n };\n\n // make update() debounced, so that it only runs at most once-per-tick\n this.update = debounce(this.update.bind(this));\n\n // with {} we create a new object with the options inside it\n this.options = _extends({}, Popper.Defaults, options);\n\n // init state\n this.state = {\n isDestroyed: false,\n isCreated: false,\n scrollParents: []\n };\n\n // get reference and popper elements (allow jQuery wrappers)\n this.reference = reference && reference.jquery ? reference[0] : reference;\n this.popper = popper && popper.jquery ? popper[0] : popper;\n\n // Deep merge modifiers options\n this.options.modifiers = {};\n Object.keys(_extends({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) {\n _this.options.modifiers[name] = _extends({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {});\n });\n\n // Refactoring modifiers' list (Object => Array)\n this.modifiers = Object.keys(this.options.modifiers).map(function (name) {\n return _extends({\n name: name\n }, _this.options.modifiers[name]);\n })\n // sort the modifiers by order\n .sort(function (a, b) {\n return a.order - b.order;\n });\n\n // modifiers have the ability to execute arbitrary code when Popper.js get inited\n // such code is executed in the same order of its modifier\n // they could add new properties to their options configuration\n // BE AWARE: don't add options to `options.modifiers.name` but to `modifierOptions`!\n this.modifiers.forEach(function (modifierOptions) {\n if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) {\n modifierOptions.onLoad(_this.reference, _this.popper, _this.options, modifierOptions, _this.state);\n }\n });\n\n // fire the first update to position the popper in the right place\n this.update();\n\n var eventsEnabled = this.options.eventsEnabled;\n if (eventsEnabled) {\n // setup event listeners, they will take care of update the position in specific situations\n this.enableEventListeners();\n }\n\n this.state.eventsEnabled = eventsEnabled;\n }\n\n // We can't use class properties because they don't get listed in the\n // class prototype and break stuff like Sinon stubs\n\n\n createClass(Popper, [{\n key: 'update',\n value: function update$$1() {\n return update.call(this);\n }\n }, {\n key: 'destroy',\n value: function destroy$$1() {\n return destroy.call(this);\n }\n }, {\n key: 'enableEventListeners',\n value: function enableEventListeners$$1() {\n return enableEventListeners.call(this);\n }\n }, {\n key: 'disableEventListeners',\n value: function disableEventListeners$$1() {\n return disableEventListeners.call(this);\n }\n\n /**\n * Schedules an update. It will run on the next UI update available.\n * @method scheduleUpdate\n * @memberof Popper\n */\n\n\n /**\n * Collection of utilities useful when writing custom modifiers.\n * Starting from version 1.7, this method is available only if you\n * include `popper-utils.js` before `popper.js`.\n *\n * **DEPRECATION**: This way to access PopperUtils is deprecated\n * and will be removed in v2! Use the PopperUtils module directly instead.\n * Due to the high instability of the methods contained in Utils, we can't\n * guarantee them to follow semver. Use them at your own risk!\n * @static\n * @private\n * @type {Object}\n * @deprecated since version 1.8\n * @member Utils\n * @memberof Popper\n */\n\n }]);\n return Popper;\n}();\n\n/**\n * The `referenceObject` is an object that provides an interface compatible with Popper.js\n * and lets you use it as replacement of a real DOM node.
    \n * You can use this method to position a popper relatively to a set of coordinates\n * in case you don't have a DOM node to use as reference.\n *\n * ```\n * new Popper(referenceObject, popperNode);\n * ```\n *\n * NB: This feature isn't supported in Internet Explorer 10.\n * @name referenceObject\n * @property {Function} data.getBoundingClientRect\n * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method.\n * @property {number} data.clientWidth\n * An ES6 getter that will return the width of the virtual reference element.\n * @property {number} data.clientHeight\n * An ES6 getter that will return the height of the virtual reference element.\n */\n\n\nPopper.Utils = (typeof window !== 'undefined' ? window : global).PopperUtils;\nPopper.placements = placements;\nPopper.Defaults = Defaults;\n\nexport default Popper;\n//# sourceMappingURL=popper.js.map\n","function getInternetExplorerVersion() {\n var ua = window.navigator.userAgent;\n var msie = ua.indexOf('MSIE ');\n\n if (msie > 0) {\n // IE 10 or older => return version number\n return parseInt(ua.substring(msie + 5, ua.indexOf('.', msie)), 10);\n }\n\n var trident = ua.indexOf('Trident/');\n\n if (trident > 0) {\n // IE 11 => return version number\n var rv = ua.indexOf('rv:');\n return parseInt(ua.substring(rv + 3, ua.indexOf('.', rv)), 10);\n }\n\n var edge = ua.indexOf('Edge/');\n\n if (edge > 0) {\n // Edge (IE 12+) => return version number\n return parseInt(ua.substring(edge + 5, ua.indexOf('.', edge)), 10);\n } // other browser\n\n\n return -1;\n}\n\n//\nvar isIE;\n\nfunction initCompat() {\n if (!initCompat.init) {\n initCompat.init = true;\n isIE = getInternetExplorerVersion() !== -1;\n }\n}\n\nvar script = {\n name: 'ResizeObserver',\n props: {\n emitOnMount: {\n type: Boolean,\n default: false\n },\n ignoreWidth: {\n type: Boolean,\n default: false\n },\n ignoreHeight: {\n type: Boolean,\n default: false\n }\n },\n mounted: function mounted() {\n var _this = this;\n\n initCompat();\n this.$nextTick(function () {\n _this._w = _this.$el.offsetWidth;\n _this._h = _this.$el.offsetHeight;\n\n if (_this.emitOnMount) {\n _this.emitSize();\n }\n });\n var object = document.createElement('object');\n this._resizeObject = object;\n object.setAttribute('aria-hidden', 'true');\n object.setAttribute('tabindex', -1);\n object.onload = this.addResizeHandlers;\n object.type = 'text/html';\n\n if (isIE) {\n this.$el.appendChild(object);\n }\n\n object.data = 'about:blank';\n\n if (!isIE) {\n this.$el.appendChild(object);\n }\n },\n beforeDestroy: function beforeDestroy() {\n this.removeResizeHandlers();\n },\n methods: {\n compareAndNotify: function compareAndNotify() {\n if (!this.ignoreWidth && this._w !== this.$el.offsetWidth || !this.ignoreHeight && this._h !== this.$el.offsetHeight) {\n this._w = this.$el.offsetWidth;\n this._h = this.$el.offsetHeight;\n this.emitSize();\n }\n },\n emitSize: function emitSize() {\n this.$emit('notify', {\n width: this._w,\n height: this._h\n });\n },\n addResizeHandlers: function addResizeHandlers() {\n this._resizeObject.contentDocument.defaultView.addEventListener('resize', this.compareAndNotify);\n\n this.compareAndNotify();\n },\n removeResizeHandlers: function removeResizeHandlers() {\n if (this._resizeObject && this._resizeObject.onload) {\n if (!isIE && this._resizeObject.contentDocument) {\n this._resizeObject.contentDocument.defaultView.removeEventListener('resize', this.compareAndNotify);\n }\n\n this.$el.removeChild(this._resizeObject);\n this._resizeObject.onload = null;\n this._resizeObject = null;\n }\n }\n }\n};\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier\n/* server only */\n, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\n if (typeof shadowMode !== 'boolean') {\n createInjectorSSR = createInjector;\n createInjector = shadowMode;\n shadowMode = false;\n } // Vue.extend constructor export interop.\n\n\n var options = typeof script === 'function' ? script.options : script; // render functions\n\n if (template && template.render) {\n options.render = template.render;\n options.staticRenderFns = template.staticRenderFns;\n options._compiled = true; // functional template\n\n if (isFunctionalTemplate) {\n options.functional = true;\n }\n } // scopedId\n\n\n if (scopeId) {\n options._scopeId = scopeId;\n }\n\n var hook;\n\n if (moduleIdentifier) {\n // server build\n hook = function hook(context) {\n // 2.3 injection\n context = context || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; // functional\n // 2.2 with runInNewContext: true\n\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__;\n } // inject component styles\n\n\n if (style) {\n style.call(this, createInjectorSSR(context));\n } // register component module identifier for async chunk inference\n\n\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier);\n }\n }; // used by ssr in case component is cached and beforeCreate\n // never gets called\n\n\n options._ssrRegister = hook;\n } else if (style) {\n hook = shadowMode ? function (context) {\n style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));\n } : function (context) {\n style.call(this, createInjector(context));\n };\n }\n\n if (hook) {\n if (options.functional) {\n // register for functional component in vue file\n var originalRender = options.render;\n\n options.render = function renderWithStyleInjection(h, context) {\n hook.call(context);\n return originalRender(h, context);\n };\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate;\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\n }\n }\n\n return script;\n}\n\n/* script */\nvar __vue_script__ = script;\n/* template */\n\nvar __vue_render__ = function __vue_render__() {\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c(\"div\", {\n staticClass: \"resize-observer\",\n attrs: {\n tabindex: \"-1\"\n }\n });\n};\n\nvar __vue_staticRenderFns__ = [];\n__vue_render__._withStripped = true;\n/* style */\n\nvar __vue_inject_styles__ = undefined;\n/* scoped */\n\nvar __vue_scope_id__ = \"data-v-8859cc6c\";\n/* module identifier */\n\nvar __vue_module_identifier__ = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__ = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar __vue_component__ = /*#__PURE__*/normalizeComponent({\n render: __vue_render__,\n staticRenderFns: __vue_staticRenderFns__\n}, __vue_inject_styles__, __vue_script__, __vue_scope_id__, __vue_is_functional_template__, __vue_module_identifier__, false, undefined, undefined, undefined);\n\nfunction install(Vue) {\n // eslint-disable-next-line vue/component-definition-name-casing\n Vue.component('resize-observer', __vue_component__);\n Vue.component('ResizeObserver', __vue_component__);\n}\n\nvar plugin = {\n // eslint-disable-next-line no-undef\n version: \"1.0.1\",\n install: install\n};\n\nvar GlobalVue = null;\n\nif (typeof window !== 'undefined') {\n GlobalVue = window.Vue;\n} else if (typeof global !== 'undefined') {\n GlobalVue = global.Vue;\n}\n\nif (GlobalVue) {\n GlobalVue.use(plugin);\n}\n\nexport default plugin;\nexport { __vue_component__ as ResizeObserver, install };\n//# sourceMappingURL=vue-resize.esm.js.map\n","import _typeof from '@babel/runtime/helpers/typeof';\nimport _defineProperty from '@babel/runtime/helpers/defineProperty';\nimport _classCallCheck from '@babel/runtime/helpers/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/createClass';\nimport Popper from 'popper.js';\nimport isEqual from 'lodash/isEqual';\nimport { ResizeObserver } from 'vue-resize';\nimport merge from 'lodash/merge';\n\nvar SVGAnimatedString = function SVGAnimatedString() {};\n\nif (typeof window !== 'undefined') {\n SVGAnimatedString = window.SVGAnimatedString;\n}\n\nfunction convertToArray(value) {\n if (typeof value === 'string') {\n value = value.split(' ');\n }\n\n return value;\n}\n/**\n * Add classes to an element.\n * This method checks to ensure that the classes don't already exist before adding them.\n * It uses el.className rather than classList in order to be IE friendly.\n * @param {object} el - The element to add the classes to.\n * @param {classes} string - List of space separated classes to be added to the element.\n */\n\nfunction addClasses(el, classes) {\n var newClasses = convertToArray(classes);\n var classList;\n\n if (el.className instanceof SVGAnimatedString) {\n classList = convertToArray(el.className.baseVal);\n } else {\n classList = convertToArray(el.className);\n }\n\n newClasses.forEach(function (newClass) {\n if (classList.indexOf(newClass) === -1) {\n classList.push(newClass);\n }\n });\n\n if (el instanceof SVGElement) {\n el.setAttribute('class', classList.join(' '));\n } else {\n el.className = classList.join(' ');\n }\n}\n/**\n * Remove classes from an element.\n * It uses el.className rather than classList in order to be IE friendly.\n * @export\n * @param {any} el The element to remove the classes from.\n * @param {any} classes List of space separated classes to be removed from the element.\n */\n\nfunction removeClasses(el, classes) {\n var newClasses = convertToArray(classes);\n var classList;\n\n if (el.className instanceof SVGAnimatedString) {\n classList = convertToArray(el.className.baseVal);\n } else {\n classList = convertToArray(el.className);\n }\n\n newClasses.forEach(function (newClass) {\n var index = classList.indexOf(newClass);\n\n if (index !== -1) {\n classList.splice(index, 1);\n }\n });\n\n if (el instanceof SVGElement) {\n el.setAttribute('class', classList.join(' '));\n } else {\n el.className = classList.join(' ');\n }\n}\nvar supportsPassive = false;\n\nif (typeof window !== 'undefined') {\n supportsPassive = false;\n\n try {\n var opts = Object.defineProperty({}, 'passive', {\n get: function get() {\n supportsPassive = true;\n }\n });\n window.addEventListener('test', null, opts);\n } catch (e) {}\n}\n\nfunction ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$2(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\nvar DEFAULT_OPTIONS = {\n container: false,\n delay: 0,\n html: false,\n placement: 'top',\n title: '',\n template: '
    ',\n trigger: 'hover focus',\n offset: 0\n};\nvar openTooltips = [];\n\nvar Tooltip = /*#__PURE__*/function () {\n /**\n * Create a new Tooltip.js instance\n * @class Tooltip\n * @param {HTMLElement} reference - The DOM node used as reference of the tooltip (it can be a jQuery element).\n * @param {Object} options\n * @param {String} options.placement=bottom\n * Placement of the popper accepted values: `top(-start, -end), right(-start, -end), bottom(-start, -end),\n * left(-start, -end)`\n * @param {HTMLElement|String|false} options.container=false - Append the tooltip to a specific element.\n * @param {Number|Object} options.delay=0\n * Delay showing and hiding the tooltip (ms) - does not apply to manual trigger type.\n * If a number is supplied, delay is applied to both hide/show.\n * Object structure is: `{ show: 500, hide: 100 }`\n * @param {Boolean} options.html=false - Insert HTML into the tooltip. If false, the content will inserted with `innerText`.\n * @param {String|PlacementFunction} options.placement='top' - One of the allowed placements, or a function returning one of them.\n * @param {String} [options.template='
    ']\n * Base HTML to used when creating the tooltip.\n * The tooltip's `title` will be injected into the `.tooltip-inner` or `.tooltip__inner`.\n * `.tooltip-arrow` or `.tooltip__arrow` will become the tooltip's arrow.\n * The outermost wrapper element should have the `.tooltip` class.\n * @param {String|HTMLElement|TitleFunction} options.title='' - Default title value if `title` attribute isn't present.\n * @param {String} [options.trigger='hover focus']\n * How tooltip is triggered - click, hover, focus, manual.\n * You may pass multiple triggers; separate them with a space. `manual` cannot be combined with any other trigger.\n * @param {HTMLElement} options.boundariesElement\n * The element used as boundaries for the tooltip. For more information refer to Popper.js'\n * [boundariesElement docs](https://popper.js.org/popper-documentation.html)\n * @param {Number|String} options.offset=0 - Offset of the tooltip relative to its reference. For more information refer to Popper.js'\n * [offset docs](https://popper.js.org/popper-documentation.html)\n * @param {Object} options.popperOptions={} - Popper options, will be passed directly to popper instance. For more information refer to Popper.js'\n * [options docs](https://popper.js.org/popper-documentation.html)\n * @param {string} [options.ariaId] Id used for accessibility\n * @return {Object} instance - The generated tooltip instance\n */\n function Tooltip(_reference, _options) {\n var _this = this;\n\n _classCallCheck(this, Tooltip);\n\n _defineProperty(this, \"_events\", []);\n\n _defineProperty(this, \"_setTooltipNodeEvent\", function (evt, reference, delay, options) {\n var relatedreference = evt.relatedreference || evt.toElement || evt.relatedTarget;\n\n var callback = function callback(evt2) {\n var relatedreference2 = evt2.relatedreference || evt2.toElement || evt2.relatedTarget; // Remove event listener after call\n\n _this._tooltipNode.removeEventListener(evt.type, callback); // If the new reference is not the reference element\n\n\n if (!reference.contains(relatedreference2)) {\n // Schedule to hide tooltip\n _this._scheduleHide(reference, options.delay, options, evt2);\n }\n };\n\n if (_this._tooltipNode.contains(relatedreference)) {\n // listen to mouseleave on the tooltip element to be able to hide the tooltip\n _this._tooltipNode.addEventListener(evt.type, callback);\n\n return true;\n }\n\n return false;\n });\n\n // apply user options over default ones\n _options = _objectSpread$2(_objectSpread$2({}, DEFAULT_OPTIONS), _options);\n _reference.jquery && (_reference = _reference[0]);\n this.show = this.show.bind(this);\n this.hide = this.hide.bind(this); // cache reference and options\n\n this.reference = _reference;\n this.options = _options; // set initial state\n\n this._isOpen = false;\n\n this._init();\n } //\n // Public methods\n //\n\n /**\n * Reveals an element's tooltip. This is considered a \"manual\" triggering of the tooltip.\n * Tooltips with zero-length titles are never displayed.\n * @method Tooltip#show\n * @memberof Tooltip\n */\n\n\n _createClass(Tooltip, [{\n key: \"show\",\n value: function show() {\n this._show(this.reference, this.options);\n }\n /**\n * Hides an element’s tooltip. This is considered a “manual” triggering of the tooltip.\n * @method Tooltip#hide\n * @memberof Tooltip\n */\n\n }, {\n key: \"hide\",\n value: function hide() {\n this._hide();\n }\n /**\n * Hides and destroys an element’s tooltip.\n * @method Tooltip#dispose\n * @memberof Tooltip\n */\n\n }, {\n key: \"dispose\",\n value: function dispose() {\n this._dispose();\n }\n /**\n * Toggles an element’s tooltip. This is considered a “manual” triggering of the tooltip.\n * @method Tooltip#toggle\n * @memberof Tooltip\n */\n\n }, {\n key: \"toggle\",\n value: function toggle() {\n if (this._isOpen) {\n return this.hide();\n } else {\n return this.show();\n }\n }\n }, {\n key: \"setClasses\",\n value: function setClasses(classes) {\n this._classes = classes;\n }\n }, {\n key: \"setContent\",\n value: function setContent(content) {\n this.options.title = content;\n\n if (this._tooltipNode) {\n this._setContent(content, this.options);\n }\n }\n }, {\n key: \"setOptions\",\n value: function setOptions(options) {\n var classesUpdated = false;\n var classes = options && options.classes || directive.options.defaultClass;\n\n if (!isEqual(this._classes, classes)) {\n this.setClasses(classes);\n classesUpdated = true;\n }\n\n options = getOptions(options);\n var needPopperUpdate = false;\n var needRestart = false;\n\n if (this.options.offset !== options.offset || this.options.placement !== options.placement) {\n needPopperUpdate = true;\n }\n\n if (this.options.template !== options.template || this.options.trigger !== options.trigger || this.options.container !== options.container || classesUpdated) {\n needRestart = true;\n }\n\n for (var key in options) {\n this.options[key] = options[key];\n }\n\n if (this._tooltipNode) {\n if (needRestart) {\n var isOpen = this._isOpen;\n this.dispose();\n\n this._init();\n\n if (isOpen) {\n this.show();\n }\n } else if (needPopperUpdate) {\n this.popperInstance.update();\n }\n }\n } //\n // Private methods\n //\n\n }, {\n key: \"_init\",\n value: function _init() {\n // get events list\n var events = typeof this.options.trigger === 'string' ? this.options.trigger.split(' ') : [];\n this._isDisposed = false;\n this._enableDocumentTouch = events.indexOf('manual') === -1;\n events = events.filter(function (trigger) {\n return ['click', 'hover', 'focus'].indexOf(trigger) !== -1;\n }); // set event listeners\n\n this._setEventListeners(this.reference, events, this.options); // title attribute\n\n\n this.$_originalTitle = this.reference.getAttribute('title');\n this.reference.removeAttribute('title');\n this.reference.setAttribute('data-original-title', this.$_originalTitle);\n }\n /**\n * Creates a new tooltip node\n * @memberof Tooltip\n * @private\n * @param {HTMLElement} reference\n * @param {String} template\n * @param {String|HTMLElement|TitleFunction} title\n * @param {Boolean} allowHtml\n * @return {HTMLelement} tooltipNode\n */\n\n }, {\n key: \"_create\",\n value: function _create(reference, template) {\n var _this2 = this;\n\n // create tooltip element\n var tooltipGenerator = window.document.createElement('div');\n tooltipGenerator.innerHTML = template.trim();\n var tooltipNode = tooltipGenerator.childNodes[0]; // add unique ID to our tooltip (needed for accessibility reasons)\n\n tooltipNode.id = this.options.ariaId || \"tooltip_\".concat(Math.random().toString(36).substr(2, 10)); // Initially hide the tooltip\n // The attribute will be switched in a next frame so\n // CSS transitions can play\n\n tooltipNode.setAttribute('aria-hidden', 'true');\n\n if (this.options.autoHide && this.options.trigger.indexOf('hover') !== -1) {\n tooltipNode.addEventListener('mouseenter', function (evt) {\n return _this2._scheduleHide(reference, _this2.options.delay, _this2.options, evt);\n });\n tooltipNode.addEventListener('click', function (evt) {\n return _this2._scheduleHide(reference, _this2.options.delay, _this2.options, evt);\n });\n } // return the generated tooltip node\n\n\n return tooltipNode;\n }\n }, {\n key: \"_setContent\",\n value: function _setContent(content, options) {\n var _this3 = this;\n\n this.asyncContent = false;\n\n this._applyContent(content, options).then(function () {\n if (!_this3.popperInstance) return;\n\n _this3.popperInstance.update();\n });\n }\n }, {\n key: \"_applyContent\",\n value: function _applyContent(title, options) {\n var _this4 = this;\n\n return new Promise(function (resolve, reject) {\n var allowHtml = options.html;\n var rootNode = _this4._tooltipNode;\n if (!rootNode) return;\n var titleNode = rootNode.querySelector(_this4.options.innerSelector);\n\n if (title.nodeType === 1) {\n // if title is a node, append it only if allowHtml is true\n if (allowHtml) {\n while (titleNode.firstChild) {\n titleNode.removeChild(titleNode.firstChild);\n }\n\n titleNode.appendChild(title);\n }\n } else if (typeof title === 'function') {\n // if title is a function, call it and set innerText or innerHtml depending by `allowHtml` value\n var result = title();\n\n if (result && typeof result.then === 'function') {\n _this4.asyncContent = true;\n options.loadingClass && addClasses(rootNode, options.loadingClass);\n\n if (options.loadingContent) {\n _this4._applyContent(options.loadingContent, options);\n }\n\n result.then(function (asyncResult) {\n options.loadingClass && removeClasses(rootNode, options.loadingClass);\n return _this4._applyContent(asyncResult, options);\n }).then(resolve).catch(reject);\n } else {\n _this4._applyContent(result, options).then(resolve).catch(reject);\n }\n\n return;\n } else {\n // if it's just a simple text, set innerText or innerHtml depending by `allowHtml` value\n allowHtml ? titleNode.innerHTML = title : titleNode.innerText = title;\n }\n\n resolve();\n });\n }\n }, {\n key: \"_show\",\n value: function _show(reference, options) {\n if (options && typeof options.container === 'string') {\n var container = document.querySelector(options.container);\n if (!container) return;\n }\n\n clearTimeout(this._disposeTimer);\n options = Object.assign({}, options);\n delete options.offset;\n var updateClasses = true;\n\n if (this._tooltipNode) {\n addClasses(this._tooltipNode, this._classes);\n updateClasses = false;\n }\n\n var result = this._ensureShown(reference, options);\n\n if (updateClasses && this._tooltipNode) {\n addClasses(this._tooltipNode, this._classes);\n }\n\n addClasses(reference, ['v-tooltip-open']);\n return result;\n }\n }, {\n key: \"_ensureShown\",\n value: function _ensureShown(reference, options) {\n var _this5 = this;\n\n // don't show if it's already visible\n if (this._isOpen) {\n return this;\n }\n\n this._isOpen = true;\n openTooltips.push(this); // if the tooltipNode already exists, just show it\n\n if (this._tooltipNode) {\n this._tooltipNode.style.display = '';\n\n this._tooltipNode.setAttribute('aria-hidden', 'false');\n\n this.popperInstance.enableEventListeners();\n this.popperInstance.update();\n\n if (this.asyncContent) {\n this._setContent(options.title, options);\n }\n\n return this;\n } // get title\n\n\n var title = reference.getAttribute('title') || options.title; // don't show tooltip if no title is defined\n\n if (!title) {\n return this;\n } // create tooltip node\n\n\n var tooltipNode = this._create(reference, options.template);\n\n this._tooltipNode = tooltipNode; // Add `aria-describedby` to our reference element for accessibility reasons\n\n reference.setAttribute('aria-describedby', tooltipNode.id); // append tooltip to container\n\n var container = this._findContainer(options.container, reference);\n\n this._append(tooltipNode, container);\n\n var popperOptions = _objectSpread$2(_objectSpread$2({}, options.popperOptions), {}, {\n placement: options.placement\n });\n\n popperOptions.modifiers = _objectSpread$2(_objectSpread$2({}, popperOptions.modifiers), {}, {\n arrow: {\n element: this.options.arrowSelector\n }\n });\n\n if (options.boundariesElement) {\n popperOptions.modifiers.preventOverflow = {\n boundariesElement: options.boundariesElement\n };\n }\n\n this.popperInstance = new Popper(reference, tooltipNode, popperOptions);\n\n this._setContent(title, options); // Fix position\n\n\n requestAnimationFrame(function () {\n if (!_this5._isDisposed && _this5.popperInstance) {\n _this5.popperInstance.update(); // Show the tooltip\n\n\n requestAnimationFrame(function () {\n if (!_this5._isDisposed) {\n _this5._isOpen && tooltipNode.setAttribute('aria-hidden', 'false');\n } else {\n _this5.dispose();\n }\n });\n } else {\n _this5.dispose();\n }\n });\n return this;\n }\n }, {\n key: \"_noLongerOpen\",\n value: function _noLongerOpen() {\n var index = openTooltips.indexOf(this);\n\n if (index !== -1) {\n openTooltips.splice(index, 1);\n }\n }\n }, {\n key: \"_hide\",\n value: function _hide()\n /* reference, options */\n {\n var _this6 = this;\n\n // don't hide if it's already hidden\n if (!this._isOpen) {\n return this;\n }\n\n this._isOpen = false;\n\n this._noLongerOpen(); // hide tooltipNode\n\n\n this._tooltipNode.style.display = 'none';\n\n this._tooltipNode.setAttribute('aria-hidden', 'true');\n\n if (this.popperInstance) {\n this.popperInstance.disableEventListeners();\n }\n\n clearTimeout(this._disposeTimer);\n var disposeTime = directive.options.disposeTimeout;\n\n if (disposeTime !== null) {\n this._disposeTimer = setTimeout(function () {\n if (_this6._tooltipNode) {\n _this6._tooltipNode.removeEventListener('mouseenter', _this6.hide);\n\n _this6._tooltipNode.removeEventListener('click', _this6.hide); // Don't remove popper instance, just the HTML element\n\n\n _this6._removeTooltipNode();\n }\n }, disposeTime);\n }\n\n removeClasses(this.reference, ['v-tooltip-open']);\n return this;\n }\n }, {\n key: \"_removeTooltipNode\",\n value: function _removeTooltipNode() {\n if (!this._tooltipNode) return;\n var parentNode = this._tooltipNode.parentNode;\n\n if (parentNode) {\n parentNode.removeChild(this._tooltipNode);\n this.reference.removeAttribute('aria-describedby');\n }\n\n this._tooltipNode = null;\n }\n }, {\n key: \"_dispose\",\n value: function _dispose() {\n var _this7 = this;\n\n this._isDisposed = true;\n this.reference.removeAttribute('data-original-title');\n\n if (this.$_originalTitle) {\n this.reference.setAttribute('title', this.$_originalTitle);\n } // remove event listeners first to prevent any unexpected behaviour\n\n\n this._events.forEach(function (_ref) {\n var func = _ref.func,\n event = _ref.event;\n\n _this7.reference.removeEventListener(event, func);\n });\n\n this._events = [];\n\n if (this._tooltipNode) {\n this._hide();\n\n this._tooltipNode.removeEventListener('mouseenter', this.hide);\n\n this._tooltipNode.removeEventListener('click', this.hide); // destroy instance\n\n\n this.popperInstance.destroy(); // destroy tooltipNode if removeOnDestroy is not set, as popperInstance.destroy() already removes the element\n\n if (!this.popperInstance.options.removeOnDestroy) {\n this._removeTooltipNode();\n }\n } else {\n this._noLongerOpen();\n }\n\n return this;\n }\n }, {\n key: \"_findContainer\",\n value: function _findContainer(container, reference) {\n // if container is a query, get the relative element\n if (typeof container === 'string') {\n container = window.document.querySelector(container);\n } else if (container === false) {\n // if container is `false`, set it to reference parent\n container = reference.parentNode;\n }\n\n return container;\n }\n /**\n * Append tooltip to container\n * @memberof Tooltip\n * @private\n * @param {HTMLElement} tooltip\n * @param {HTMLElement|String|false} container\n */\n\n }, {\n key: \"_append\",\n value: function _append(tooltipNode, container) {\n container.appendChild(tooltipNode);\n }\n }, {\n key: \"_setEventListeners\",\n value: function _setEventListeners(reference, events, options) {\n var _this8 = this;\n\n var directEvents = [];\n var oppositeEvents = [];\n events.forEach(function (event) {\n switch (event) {\n case 'hover':\n directEvents.push('mouseenter');\n oppositeEvents.push('mouseleave');\n if (_this8.options.hideOnTargetClick) oppositeEvents.push('click');\n break;\n\n case 'focus':\n directEvents.push('focus');\n oppositeEvents.push('blur');\n if (_this8.options.hideOnTargetClick) oppositeEvents.push('click');\n break;\n\n case 'click':\n directEvents.push('click');\n oppositeEvents.push('click');\n break;\n }\n }); // schedule show tooltip\n\n directEvents.forEach(function (event) {\n var func = function func(evt) {\n if (_this8._isOpen === true) {\n return;\n }\n\n evt.usedByTooltip = true;\n\n _this8._scheduleShow(reference, options.delay, options, evt);\n };\n\n _this8._events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n }); // schedule hide tooltip\n\n oppositeEvents.forEach(function (event) {\n var func = function func(evt) {\n if (evt.usedByTooltip === true) {\n return;\n }\n\n _this8._scheduleHide(reference, options.delay, options, evt);\n };\n\n _this8._events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n });\n }\n }, {\n key: \"_onDocumentTouch\",\n value: function _onDocumentTouch(event) {\n if (this._enableDocumentTouch) {\n this._scheduleHide(this.reference, this.options.delay, this.options, event);\n }\n }\n }, {\n key: \"_scheduleShow\",\n value: function _scheduleShow(reference, delay, options\n /*, evt */\n ) {\n var _this9 = this;\n\n // defaults to 0\n var computedDelay = delay && delay.show || delay || 0;\n clearTimeout(this._scheduleTimer);\n this._scheduleTimer = window.setTimeout(function () {\n return _this9._show(reference, options);\n }, computedDelay);\n }\n }, {\n key: \"_scheduleHide\",\n value: function _scheduleHide(reference, delay, options, evt) {\n var _this10 = this;\n\n // defaults to 0\n var computedDelay = delay && delay.hide || delay || 0;\n clearTimeout(this._scheduleTimer);\n this._scheduleTimer = window.setTimeout(function () {\n if (_this10._isOpen === false) {\n return;\n }\n\n if (!_this10._tooltipNode.ownerDocument.body.contains(_this10._tooltipNode)) {\n return;\n } // if we are hiding because of a mouseleave, we must check that the new\n // reference isn't the tooltip, because in this case we don't want to hide it\n\n\n if (evt.type === 'mouseleave') {\n var isSet = _this10._setTooltipNodeEvent(evt, reference, delay, options); // if we set the new event, don't hide the tooltip yet\n // the new event will take care to hide it if necessary\n\n\n if (isSet) {\n return;\n }\n }\n\n _this10._hide(reference, options);\n }, computedDelay);\n }\n }]);\n\n return Tooltip;\n}(); // Hide tooltips on touch devices\n\nif (typeof document !== 'undefined') {\n document.addEventListener('touchstart', function (event) {\n for (var i = 0; i < openTooltips.length; i++) {\n openTooltips[i]._onDocumentTouch(event);\n }\n }, supportsPassive ? {\n passive: true,\n capture: true\n } : true);\n}\n/**\n * Placement function, its context is the Tooltip instance.\n * @memberof Tooltip\n * @callback PlacementFunction\n * @param {HTMLElement} tooltip - tooltip DOM node.\n * @param {HTMLElement} reference - reference DOM node.\n * @return {String} placement - One of the allowed placement options.\n */\n\n/**\n * Title function, its context is the Tooltip instance.\n * @memberof Tooltip\n * @callback TitleFunction\n * @return {String} placement - The desired title.\n */\n\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$1(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\nvar state = {\n enabled: true\n};\nvar positions = ['top', 'top-start', 'top-end', 'right', 'right-start', 'right-end', 'bottom', 'bottom-start', 'bottom-end', 'left', 'left-start', 'left-end'];\nvar defaultOptions = {\n // Default tooltip placement relative to target element\n defaultPlacement: 'top',\n // Default CSS classes applied to the tooltip element\n defaultClass: 'vue-tooltip-theme',\n // Default CSS classes applied to the target element of the tooltip\n defaultTargetClass: 'has-tooltip',\n // Is the content HTML by default?\n defaultHtml: true,\n // Default HTML template of the tooltip element\n // It must include `tooltip-arrow` & `tooltip-inner` CSS classes (can be configured, see below)\n // Change if the classes conflict with other libraries (for example bootstrap)\n defaultTemplate: '
    ',\n // Selector used to get the arrow element in the tooltip template\n defaultArrowSelector: '.tooltip-arrow, .tooltip__arrow',\n // Selector used to get the inner content element in the tooltip template\n defaultInnerSelector: '.tooltip-inner, .tooltip__inner',\n // Delay (ms)\n defaultDelay: 0,\n // Default events that trigger the tooltip\n defaultTrigger: 'hover focus',\n // Default position offset (px)\n defaultOffset: 0,\n // Default container where the tooltip will be appended\n defaultContainer: 'body',\n defaultBoundariesElement: undefined,\n defaultPopperOptions: {},\n // Class added when content is loading\n defaultLoadingClass: 'tooltip-loading',\n // Displayed when tooltip content is loading\n defaultLoadingContent: '...',\n // Hide on mouseover tooltip\n autoHide: true,\n // Close tooltip on click on tooltip target?\n defaultHideOnTargetClick: true,\n // Auto destroy tooltip DOM nodes (ms)\n disposeTimeout: 5000,\n // Options for popover\n popover: {\n defaultPlacement: 'bottom',\n // Use the `popoverClass` prop for theming\n defaultClass: 'vue-popover-theme',\n // Base class (change if conflicts with other libraries)\n defaultBaseClass: 'tooltip popover',\n // Wrapper class (contains arrow and inner)\n defaultWrapperClass: 'wrapper',\n // Inner content class\n defaultInnerClass: 'tooltip-inner popover-inner',\n // Arrow class\n defaultArrowClass: 'tooltip-arrow popover-arrow',\n // Class added when popover is open\n defaultOpenClass: 'open',\n defaultDelay: 0,\n defaultTrigger: 'click',\n defaultOffset: 0,\n defaultContainer: 'body',\n defaultBoundariesElement: undefined,\n defaultPopperOptions: {},\n // Hides if clicked outside of popover\n defaultAutoHide: true,\n // Update popper on content resize\n defaultHandleResize: true\n }\n};\nfunction getOptions(options) {\n var result = {\n placement: typeof options.placement !== 'undefined' ? options.placement : directive.options.defaultPlacement,\n delay: typeof options.delay !== 'undefined' ? options.delay : directive.options.defaultDelay,\n html: typeof options.html !== 'undefined' ? options.html : directive.options.defaultHtml,\n template: typeof options.template !== 'undefined' ? options.template : directive.options.defaultTemplate,\n arrowSelector: typeof options.arrowSelector !== 'undefined' ? options.arrowSelector : directive.options.defaultArrowSelector,\n innerSelector: typeof options.innerSelector !== 'undefined' ? options.innerSelector : directive.options.defaultInnerSelector,\n trigger: typeof options.trigger !== 'undefined' ? options.trigger : directive.options.defaultTrigger,\n offset: typeof options.offset !== 'undefined' ? options.offset : directive.options.defaultOffset,\n container: typeof options.container !== 'undefined' ? options.container : directive.options.defaultContainer,\n boundariesElement: typeof options.boundariesElement !== 'undefined' ? options.boundariesElement : directive.options.defaultBoundariesElement,\n autoHide: typeof options.autoHide !== 'undefined' ? options.autoHide : directive.options.autoHide,\n hideOnTargetClick: typeof options.hideOnTargetClick !== 'undefined' ? options.hideOnTargetClick : directive.options.defaultHideOnTargetClick,\n loadingClass: typeof options.loadingClass !== 'undefined' ? options.loadingClass : directive.options.defaultLoadingClass,\n loadingContent: typeof options.loadingContent !== 'undefined' ? options.loadingContent : directive.options.defaultLoadingContent,\n popperOptions: _objectSpread$1({}, typeof options.popperOptions !== 'undefined' ? options.popperOptions : directive.options.defaultPopperOptions)\n };\n\n if (result.offset) {\n var typeofOffset = _typeof(result.offset);\n\n var offset = result.offset; // One value -> switch\n\n if (typeofOffset === 'number' || typeofOffset === 'string' && offset.indexOf(',') === -1) {\n offset = \"0, \".concat(offset);\n }\n\n if (!result.popperOptions.modifiers) {\n result.popperOptions.modifiers = {};\n }\n\n result.popperOptions.modifiers.offset = {\n offset: offset\n };\n }\n\n if (result.trigger && result.trigger.indexOf('click') !== -1) {\n result.hideOnTargetClick = false;\n }\n\n return result;\n}\nfunction getPlacement(value, modifiers) {\n var placement = value.placement;\n\n for (var i = 0; i < positions.length; i++) {\n var pos = positions[i];\n\n if (modifiers[pos]) {\n placement = pos;\n }\n }\n\n return placement;\n}\nfunction getContent(value) {\n var type = _typeof(value);\n\n if (type === 'string') {\n return value;\n } else if (value && type === 'object') {\n return value.content;\n } else {\n return false;\n }\n}\nfunction createTooltip(el, value) {\n var modifiers = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var content = getContent(value);\n var classes = typeof value.classes !== 'undefined' ? value.classes : directive.options.defaultClass;\n\n var opts = _objectSpread$1({\n title: content\n }, getOptions(_objectSpread$1(_objectSpread$1({}, _typeof(value) === 'object' ? value : {}), {}, {\n placement: getPlacement(value, modifiers)\n })));\n\n var tooltip = el._tooltip = new Tooltip(el, opts);\n tooltip.setClasses(classes);\n tooltip._vueEl = el; // Class on target\n\n var targetClasses = typeof value.targetClasses !== 'undefined' ? value.targetClasses : directive.options.defaultTargetClass;\n el._tooltipTargetClasses = targetClasses;\n addClasses(el, targetClasses);\n return tooltip;\n}\nfunction destroyTooltip(el) {\n if (el._tooltip) {\n el._tooltip.dispose();\n\n delete el._tooltip;\n delete el._tooltipOldShow;\n }\n\n if (el._tooltipTargetClasses) {\n removeClasses(el, el._tooltipTargetClasses);\n delete el._tooltipTargetClasses;\n }\n}\nfunction bind(el, _ref) {\n var value = _ref.value;\n _ref.oldValue;\n var modifiers = _ref.modifiers;\n var content = getContent(value);\n\n if (!content || !state.enabled) {\n destroyTooltip(el);\n } else {\n var tooltip;\n\n if (el._tooltip) {\n tooltip = el._tooltip; // Content\n\n tooltip.setContent(content); // Options\n\n tooltip.setOptions(_objectSpread$1(_objectSpread$1({}, value), {}, {\n placement: getPlacement(value, modifiers)\n }));\n } else {\n tooltip = createTooltip(el, value, modifiers);\n } // Manual show\n\n\n if (typeof value.show !== 'undefined' && value.show !== el._tooltipOldShow) {\n el._tooltipOldShow = value.show;\n value.show ? tooltip.show() : tooltip.hide();\n }\n }\n}\nvar directive = {\n options: defaultOptions,\n bind: bind,\n update: bind,\n unbind: function unbind(el) {\n destroyTooltip(el);\n }\n};\n\nfunction addListeners(el) {\n el.addEventListener('click', onClick);\n el.addEventListener('touchstart', onTouchStart, supportsPassive ? {\n passive: true\n } : false);\n}\n\nfunction removeListeners(el) {\n el.removeEventListener('click', onClick);\n el.removeEventListener('touchstart', onTouchStart);\n el.removeEventListener('touchend', onTouchEnd);\n el.removeEventListener('touchcancel', onTouchCancel);\n}\n\nfunction onClick(event) {\n var el = event.currentTarget;\n event.closePopover = !el.$_vclosepopover_touch;\n event.closeAllPopover = el.$_closePopoverModifiers && !!el.$_closePopoverModifiers.all;\n}\n\nfunction onTouchStart(event) {\n if (event.changedTouches.length === 1) {\n var el = event.currentTarget;\n el.$_vclosepopover_touch = true;\n var touch = event.changedTouches[0];\n el.$_vclosepopover_touchPoint = touch;\n el.addEventListener('touchend', onTouchEnd);\n el.addEventListener('touchcancel', onTouchCancel);\n }\n}\n\nfunction onTouchEnd(event) {\n var el = event.currentTarget;\n el.$_vclosepopover_touch = false;\n\n if (event.changedTouches.length === 1) {\n var touch = event.changedTouches[0];\n var firstTouch = el.$_vclosepopover_touchPoint;\n event.closePopover = Math.abs(touch.screenY - firstTouch.screenY) < 20 && Math.abs(touch.screenX - firstTouch.screenX) < 20;\n event.closeAllPopover = el.$_closePopoverModifiers && !!el.$_closePopoverModifiers.all;\n }\n}\n\nfunction onTouchCancel(event) {\n var el = event.currentTarget;\n el.$_vclosepopover_touch = false;\n}\n\nvar vclosepopover = {\n bind: function bind(el, _ref) {\n var value = _ref.value,\n modifiers = _ref.modifiers;\n el.$_closePopoverModifiers = modifiers;\n\n if (typeof value === 'undefined' || value) {\n addListeners(el);\n }\n },\n update: function update(el, _ref2) {\n var value = _ref2.value,\n oldValue = _ref2.oldValue,\n modifiers = _ref2.modifiers;\n el.$_closePopoverModifiers = modifiers;\n\n if (value !== oldValue) {\n if (typeof value === 'undefined' || value) {\n addListeners(el);\n } else {\n removeListeners(el);\n }\n }\n },\n unbind: function unbind(el) {\n removeListeners(el);\n }\n};\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction getDefault(key) {\n var value = directive.options.popover[key];\n\n if (typeof value === 'undefined') {\n return directive.options[key];\n }\n\n return value;\n}\n\nvar isIOS = false;\n\nif (typeof window !== 'undefined' && typeof navigator !== 'undefined') {\n isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream;\n}\n\nvar openPopovers = [];\n\nvar Element = function Element() {};\n\nif (typeof window !== 'undefined') {\n Element = window.Element;\n}\n\nvar script = {\n name: 'VPopover',\n components: {\n ResizeObserver: ResizeObserver\n },\n props: {\n open: {\n type: Boolean,\n default: false\n },\n disabled: {\n type: Boolean,\n default: false\n },\n placement: {\n type: String,\n default: function _default() {\n return getDefault('defaultPlacement');\n }\n },\n delay: {\n type: [String, Number, Object],\n default: function _default() {\n return getDefault('defaultDelay');\n }\n },\n offset: {\n type: [String, Number],\n default: function _default() {\n return getDefault('defaultOffset');\n }\n },\n trigger: {\n type: String,\n default: function _default() {\n return getDefault('defaultTrigger');\n }\n },\n container: {\n type: [String, Object, Element, Boolean],\n default: function _default() {\n return getDefault('defaultContainer');\n }\n },\n boundariesElement: {\n type: [String, Element],\n default: function _default() {\n return getDefault('defaultBoundariesElement');\n }\n },\n popperOptions: {\n type: Object,\n default: function _default() {\n return getDefault('defaultPopperOptions');\n }\n },\n popoverClass: {\n type: [String, Array],\n default: function _default() {\n return getDefault('defaultClass');\n }\n },\n popoverBaseClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultBaseClass;\n }\n },\n popoverInnerClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultInnerClass;\n }\n },\n popoverWrapperClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultWrapperClass;\n }\n },\n popoverArrowClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultArrowClass;\n }\n },\n autoHide: {\n type: Boolean,\n default: function _default() {\n return directive.options.popover.defaultAutoHide;\n }\n },\n handleResize: {\n type: Boolean,\n default: function _default() {\n return directive.options.popover.defaultHandleResize;\n }\n },\n openGroup: {\n type: String,\n default: null\n },\n openClass: {\n type: [String, Array],\n default: function _default() {\n return directive.options.popover.defaultOpenClass;\n }\n },\n ariaId: {\n default: null\n }\n },\n data: function data() {\n return {\n isOpen: false,\n id: Math.random().toString(36).substr(2, 10)\n };\n },\n computed: {\n cssClass: function cssClass() {\n return _defineProperty({}, this.openClass, this.isOpen);\n },\n popoverId: function popoverId() {\n return \"popover_\".concat(this.ariaId != null ? this.ariaId : this.id);\n }\n },\n watch: {\n open: function open(val) {\n if (val) {\n this.show();\n } else {\n this.hide();\n }\n },\n disabled: function disabled(val, oldVal) {\n if (val !== oldVal) {\n if (val) {\n this.hide();\n } else if (this.open) {\n this.show();\n }\n }\n },\n container: function container(val) {\n if (this.isOpen && this.popperInstance) {\n var popoverNode = this.$refs.popover;\n var reference = this.$refs.trigger;\n var container = this.$_findContainer(this.container, reference);\n\n if (!container) {\n console.warn('No container for popover', this);\n return;\n }\n\n container.appendChild(popoverNode);\n this.popperInstance.scheduleUpdate();\n }\n },\n trigger: function trigger(val) {\n this.$_removeEventListeners();\n this.$_addEventListeners();\n },\n placement: function placement(val) {\n var _this = this;\n\n this.$_updatePopper(function () {\n _this.popperInstance.options.placement = val;\n });\n },\n offset: '$_restartPopper',\n boundariesElement: '$_restartPopper',\n popperOptions: {\n handler: '$_restartPopper',\n deep: true\n }\n },\n created: function created() {\n this.$_isDisposed = false;\n this.$_mounted = false;\n this.$_events = [];\n this.$_preventOpen = false;\n },\n mounted: function mounted() {\n var popoverNode = this.$refs.popover;\n popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode);\n this.$_init();\n\n if (this.open) {\n this.show();\n }\n },\n deactivated: function deactivated() {\n this.hide();\n },\n beforeDestroy: function beforeDestroy() {\n this.dispose();\n },\n methods: {\n show: function show() {\n var _this2 = this;\n\n var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n event = _ref2.event;\n _ref2.skipDelay;\n var _ref2$force = _ref2.force,\n force = _ref2$force === void 0 ? false : _ref2$force;\n\n if (force || !this.disabled) {\n this.$_scheduleShow(event);\n this.$emit('show');\n }\n\n this.$emit('update:open', true);\n this.$_beingShowed = true;\n requestAnimationFrame(function () {\n _this2.$_beingShowed = false;\n });\n },\n hide: function hide() {\n var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n event = _ref3.event;\n _ref3.skipDelay;\n\n this.$_scheduleHide(event);\n this.$emit('hide');\n this.$emit('update:open', false);\n },\n dispose: function dispose() {\n this.$_isDisposed = true;\n this.$_removeEventListeners();\n this.hide({\n skipDelay: true\n });\n\n if (this.popperInstance) {\n this.popperInstance.destroy(); // destroy tooltipNode if removeOnDestroy is not set, as popperInstance.destroy() already removes the element\n\n if (!this.popperInstance.options.removeOnDestroy) {\n var popoverNode = this.$refs.popover;\n popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode);\n }\n }\n\n this.$_mounted = false;\n this.popperInstance = null;\n this.isOpen = false;\n this.$emit('dispose');\n },\n $_init: function $_init() {\n if (this.trigger.indexOf('manual') === -1) {\n this.$_addEventListeners();\n }\n },\n $_show: function $_show() {\n var _this3 = this;\n\n var reference = this.$refs.trigger;\n var popoverNode = this.$refs.popover;\n clearTimeout(this.$_disposeTimer); // Already open\n\n if (this.isOpen) {\n return;\n } // Popper is already initialized\n\n\n if (this.popperInstance) {\n this.isOpen = true;\n this.popperInstance.enableEventListeners();\n this.popperInstance.scheduleUpdate();\n }\n\n if (!this.$_mounted) {\n var container = this.$_findContainer(this.container, reference);\n\n if (!container) {\n console.warn('No container for popover', this);\n return;\n }\n\n container.appendChild(popoverNode);\n this.$_mounted = true;\n this.isOpen = false;\n\n if (this.popperInstance) {\n requestAnimationFrame(function () {\n if (!_this3.hidden) {\n _this3.isOpen = true;\n }\n });\n }\n }\n\n if (!this.popperInstance) {\n var popperOptions = _objectSpread(_objectSpread({}, this.popperOptions), {}, {\n placement: this.placement\n });\n\n popperOptions.modifiers = _objectSpread(_objectSpread({}, popperOptions.modifiers), {}, {\n arrow: _objectSpread(_objectSpread({}, popperOptions.modifiers && popperOptions.modifiers.arrow), {}, {\n element: this.$refs.arrow\n })\n });\n\n if (this.offset) {\n var offset = this.$_getOffset();\n popperOptions.modifiers.offset = _objectSpread(_objectSpread({}, popperOptions.modifiers && popperOptions.modifiers.offset), {}, {\n offset: offset\n });\n }\n\n if (this.boundariesElement) {\n popperOptions.modifiers.preventOverflow = _objectSpread(_objectSpread({}, popperOptions.modifiers && popperOptions.modifiers.preventOverflow), {}, {\n boundariesElement: this.boundariesElement\n });\n }\n\n this.popperInstance = new Popper(reference, popoverNode, popperOptions); // Fix position\n\n requestAnimationFrame(function () {\n if (_this3.hidden) {\n _this3.hidden = false;\n\n _this3.$_hide();\n\n return;\n }\n\n if (!_this3.$_isDisposed && _this3.popperInstance) {\n _this3.popperInstance.scheduleUpdate(); // Show the tooltip\n\n\n requestAnimationFrame(function () {\n if (_this3.hidden) {\n _this3.hidden = false;\n\n _this3.$_hide();\n\n return;\n }\n\n if (!_this3.$_isDisposed) {\n _this3.isOpen = true;\n } else {\n _this3.dispose();\n }\n });\n } else {\n _this3.dispose();\n }\n });\n }\n\n var openGroup = this.openGroup;\n\n if (openGroup) {\n var popover;\n\n for (var i = 0; i < openPopovers.length; i++) {\n popover = openPopovers[i];\n\n if (popover.openGroup !== openGroup) {\n popover.hide();\n popover.$emit('close-group');\n }\n }\n }\n\n openPopovers.push(this);\n this.$emit('apply-show');\n },\n $_hide: function $_hide() {\n var _this4 = this;\n\n // Already hidden\n if (!this.isOpen) {\n return;\n }\n\n var index = openPopovers.indexOf(this);\n\n if (index !== -1) {\n openPopovers.splice(index, 1);\n }\n\n this.isOpen = false;\n\n if (this.popperInstance) {\n this.popperInstance.disableEventListeners();\n }\n\n clearTimeout(this.$_disposeTimer);\n var disposeTime = directive.options.popover.disposeTimeout || directive.options.disposeTimeout;\n\n if (disposeTime !== null) {\n this.$_disposeTimer = setTimeout(function () {\n var popoverNode = _this4.$refs.popover;\n\n if (popoverNode) {\n // Don't remove popper instance, just the HTML element\n popoverNode.parentNode && popoverNode.parentNode.removeChild(popoverNode);\n _this4.$_mounted = false;\n }\n }, disposeTime);\n }\n\n this.$emit('apply-hide');\n },\n $_findContainer: function $_findContainer(container, reference) {\n // if container is a query, get the relative element\n if (typeof container === 'string') {\n container = window.document.querySelector(container);\n } else if (container === false) {\n // if container is `false`, set it to reference parent\n container = reference.parentNode;\n }\n\n return container;\n },\n $_getOffset: function $_getOffset() {\n var typeofOffset = _typeof(this.offset);\n\n var offset = this.offset; // One value -> switch\n\n if (typeofOffset === 'number' || typeofOffset === 'string' && offset.indexOf(',') === -1) {\n offset = \"0, \".concat(offset);\n }\n\n return offset;\n },\n $_addEventListeners: function $_addEventListeners() {\n var _this5 = this;\n\n var reference = this.$refs.trigger;\n var directEvents = [];\n var oppositeEvents = [];\n var events = typeof this.trigger === 'string' ? this.trigger.split(' ').filter(function (trigger) {\n return ['click', 'hover', 'focus'].indexOf(trigger) !== -1;\n }) : [];\n events.forEach(function (event) {\n switch (event) {\n case 'hover':\n directEvents.push('mouseenter');\n oppositeEvents.push('mouseleave');\n break;\n\n case 'focus':\n directEvents.push('focus');\n oppositeEvents.push('blur');\n break;\n\n case 'click':\n directEvents.push('click');\n oppositeEvents.push('click');\n break;\n }\n }); // schedule show tooltip\n\n directEvents.forEach(function (event) {\n var func = function func(event) {\n if (_this5.isOpen) {\n return;\n }\n\n event.usedByTooltip = true;\n !_this5.$_preventOpen && _this5.show({\n event: event\n });\n _this5.hidden = false;\n };\n\n _this5.$_events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n }); // schedule hide tooltip\n\n oppositeEvents.forEach(function (event) {\n var func = function func(event) {\n if (event.usedByTooltip) {\n return;\n }\n\n _this5.hide({\n event: event\n });\n\n _this5.hidden = true;\n };\n\n _this5.$_events.push({\n event: event,\n func: func\n });\n\n reference.addEventListener(event, func);\n });\n },\n $_scheduleShow: function $_scheduleShow() {\n var skipDelay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n clearTimeout(this.$_scheduleTimer);\n\n if (skipDelay) {\n this.$_show();\n } else {\n // defaults to 0\n var computedDelay = parseInt(this.delay && this.delay.show || this.delay || 0);\n this.$_scheduleTimer = setTimeout(this.$_show.bind(this), computedDelay);\n }\n },\n $_scheduleHide: function $_scheduleHide() {\n var _this6 = this;\n\n var event = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var skipDelay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n clearTimeout(this.$_scheduleTimer);\n\n if (skipDelay) {\n this.$_hide();\n } else {\n // defaults to 0\n var computedDelay = parseInt(this.delay && this.delay.hide || this.delay || 0);\n this.$_scheduleTimer = setTimeout(function () {\n if (!_this6.isOpen) {\n return;\n } // if we are hiding because of a mouseleave, we must check that the new\n // reference isn't the tooltip, because in this case we don't want to hide it\n\n\n if (event && event.type === 'mouseleave') {\n var isSet = _this6.$_setTooltipNodeEvent(event); // if we set the new event, don't hide the tooltip yet\n // the new event will take care to hide it if necessary\n\n\n if (isSet) {\n return;\n }\n }\n\n _this6.$_hide();\n }, computedDelay);\n }\n },\n $_setTooltipNodeEvent: function $_setTooltipNodeEvent(event) {\n var _this7 = this;\n\n var reference = this.$refs.trigger;\n var popoverNode = this.$refs.popover;\n var relatedreference = event.relatedreference || event.toElement || event.relatedTarget;\n\n var callback = function callback(event2) {\n var relatedreference2 = event2.relatedreference || event2.toElement || event2.relatedTarget; // Remove event listener after call\n\n popoverNode.removeEventListener(event.type, callback); // If the new reference is not the reference element\n\n if (!reference.contains(relatedreference2)) {\n // Schedule to hide tooltip\n _this7.hide({\n event: event2\n });\n }\n };\n\n if (popoverNode.contains(relatedreference)) {\n // listen to mouseleave on the tooltip element to be able to hide the tooltip\n popoverNode.addEventListener(event.type, callback);\n return true;\n }\n\n return false;\n },\n $_removeEventListeners: function $_removeEventListeners() {\n var reference = this.$refs.trigger;\n this.$_events.forEach(function (_ref4) {\n var func = _ref4.func,\n event = _ref4.event;\n reference.removeEventListener(event, func);\n });\n this.$_events = [];\n },\n $_updatePopper: function $_updatePopper(cb) {\n if (this.popperInstance) {\n cb();\n if (this.isOpen) this.popperInstance.scheduleUpdate();\n }\n },\n $_restartPopper: function $_restartPopper() {\n if (this.popperInstance) {\n var isOpen = this.isOpen;\n this.dispose();\n this.$_isDisposed = false;\n this.$_init();\n\n if (isOpen) {\n this.show({\n skipDelay: true,\n force: true\n });\n }\n }\n },\n $_handleGlobalClose: function $_handleGlobalClose(event) {\n var _this8 = this;\n\n var touch = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n if (this.$_beingShowed) return;\n this.hide({\n event: event\n });\n\n if (event.closePopover) {\n this.$emit('close-directive');\n } else {\n this.$emit('auto-hide');\n }\n\n if (touch) {\n this.$_preventOpen = true;\n setTimeout(function () {\n _this8.$_preventOpen = false;\n }, 300);\n }\n },\n $_handleResize: function $_handleResize() {\n if (this.isOpen && this.popperInstance) {\n this.popperInstance.scheduleUpdate();\n this.$emit('resize');\n }\n }\n }\n};\n\nif (typeof document !== 'undefined' && typeof window !== 'undefined') {\n if (isIOS) {\n document.addEventListener('touchend', handleGlobalTouchend, supportsPassive ? {\n passive: true,\n capture: true\n } : true);\n } else {\n window.addEventListener('click', handleGlobalClick, true);\n }\n}\n\nfunction handleGlobalClick(event) {\n handleGlobalClose(event);\n}\n\nfunction handleGlobalTouchend(event) {\n handleGlobalClose(event, true);\n}\n\nfunction handleGlobalClose(event) {\n var touch = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var _loop = function _loop(i) {\n var popover = openPopovers[i];\n\n if (popover.$refs.popover) {\n var contains = popover.$refs.popover.contains(event.target);\n requestAnimationFrame(function () {\n if (event.closeAllPopover || event.closePopover && contains || popover.autoHide && !contains) {\n popover.$_handleGlobalClose(event, touch);\n }\n });\n }\n };\n\n // Delay so that close directive has time to set values\n for (var i = 0; i < openPopovers.length; i++) {\n _loop(i);\n }\n}\n\nfunction normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier /* server only */, shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {\r\n if (typeof shadowMode !== 'boolean') {\r\n createInjectorSSR = createInjector;\r\n createInjector = shadowMode;\r\n shadowMode = false;\r\n }\r\n // Vue.extend constructor export interop.\r\n const options = typeof script === 'function' ? script.options : script;\r\n // render functions\r\n if (template && template.render) {\r\n options.render = template.render;\r\n options.staticRenderFns = template.staticRenderFns;\r\n options._compiled = true;\r\n // functional template\r\n if (isFunctionalTemplate) {\r\n options.functional = true;\r\n }\r\n }\r\n // scopedId\r\n if (scopeId) {\r\n options._scopeId = scopeId;\r\n }\r\n let hook;\r\n if (moduleIdentifier) {\r\n // server build\r\n hook = function (context) {\r\n // 2.3 injection\r\n context =\r\n context || // cached call\r\n (this.$vnode && this.$vnode.ssrContext) || // stateful\r\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext); // functional\r\n // 2.2 with runInNewContext: true\r\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\r\n context = __VUE_SSR_CONTEXT__;\r\n }\r\n // inject component styles\r\n if (style) {\r\n style.call(this, createInjectorSSR(context));\r\n }\r\n // register component module identifier for async chunk inference\r\n if (context && context._registeredComponents) {\r\n context._registeredComponents.add(moduleIdentifier);\r\n }\r\n };\r\n // used by ssr in case component is cached and beforeCreate\r\n // never gets called\r\n options._ssrRegister = hook;\r\n }\r\n else if (style) {\r\n hook = shadowMode\r\n ? function (context) {\r\n style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));\r\n }\r\n : function (context) {\r\n style.call(this, createInjector(context));\r\n };\r\n }\r\n if (hook) {\r\n if (options.functional) {\r\n // register for functional component in vue file\r\n const originalRender = options.render;\r\n options.render = function renderWithStyleInjection(h, context) {\r\n hook.call(context);\r\n return originalRender(h, context);\r\n };\r\n }\r\n else {\r\n // inject component registration as beforeCreate hook\r\n const existing = options.beforeCreate;\r\n options.beforeCreate = existing ? [].concat(existing, hook) : [hook];\r\n }\r\n }\r\n return script;\r\n}\n\n/* script */\nvar __vue_script__ = script;\n/* template */\n\nvar __vue_render__ = function __vue_render__() {\n var _vm = this;\n\n var _h = _vm.$createElement;\n\n var _c = _vm._self._c || _h;\n\n return _c(\"div\", {\n staticClass: \"v-popover\",\n class: _vm.cssClass\n }, [_c(\"div\", {\n ref: \"trigger\",\n staticClass: \"trigger\",\n staticStyle: {\n display: \"inline-block\"\n },\n attrs: {\n \"aria-describedby\": _vm.isOpen ? _vm.popoverId : undefined,\n tabindex: _vm.trigger.indexOf(\"focus\") !== -1 ? 0 : undefined\n }\n }, [_vm._t(\"default\")], 2), _vm._v(\" \"), _c(\"div\", {\n ref: \"popover\",\n class: [_vm.popoverBaseClass, _vm.popoverClass, _vm.cssClass],\n style: {\n visibility: _vm.isOpen ? \"visible\" : \"hidden\"\n },\n attrs: {\n id: _vm.popoverId,\n \"aria-hidden\": _vm.isOpen ? \"false\" : \"true\",\n tabindex: _vm.autoHide ? 0 : undefined\n },\n on: {\n keyup: function keyup($event) {\n if (!$event.type.indexOf(\"key\") && _vm._k($event.keyCode, \"esc\", 27, $event.key, [\"Esc\", \"Escape\"])) {\n return null;\n }\n\n _vm.autoHide && _vm.hide();\n }\n }\n }, [_c(\"div\", {\n class: _vm.popoverWrapperClass\n }, [_c(\"div\", {\n ref: \"inner\",\n class: _vm.popoverInnerClass,\n staticStyle: {\n position: \"relative\"\n }\n }, [_c(\"div\", [_vm._t(\"popover\", null, {\n isOpen: _vm.isOpen\n })], 2), _vm._v(\" \"), _vm.handleResize ? _c(\"ResizeObserver\", {\n on: {\n notify: _vm.$_handleResize\n }\n }) : _vm._e()], 1), _vm._v(\" \"), _c(\"div\", {\n ref: \"arrow\",\n class: _vm.popoverArrowClass\n })])])]);\n};\n\nvar __vue_staticRenderFns__ = [];\n__vue_render__._withStripped = true;\n/* style */\n\nvar __vue_inject_styles__ = undefined;\n/* scoped */\n\nvar __vue_scope_id__ = undefined;\n/* module identifier */\n\nvar __vue_module_identifier__ = undefined;\n/* functional template */\n\nvar __vue_is_functional_template__ = false;\n/* style inject */\n\n/* style inject SSR */\n\n/* style inject shadow dom */\n\nvar __vue_component__ = /*#__PURE__*/normalizeComponent({\n render: __vue_render__,\n staticRenderFns: __vue_staticRenderFns__\n}, __vue_inject_styles__, __vue_script__, __vue_scope_id__, __vue_is_functional_template__, __vue_module_identifier__, false, undefined, undefined, undefined);\n\nfunction styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nvar css_248z = \".resize-observer[data-v-8859cc6c]{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer[data-v-8859cc6c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}\";\nstyleInject(css_248z);\n\nfunction install(Vue) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (install.installed) return;\n install.installed = true;\n var finalOptions = {};\n merge(finalOptions, defaultOptions, options);\n plugin.options = finalOptions;\n directive.options = finalOptions;\n Vue.directive('tooltip', directive);\n Vue.directive('close-popover', vclosepopover);\n Vue.component('VPopover', __vue_component__);\n}\nvar VTooltip = directive;\nvar VClosePopover = vclosepopover;\nvar VPopover = __vue_component__;\nvar plugin = {\n install: install,\n\n get enabled() {\n return state.enabled;\n },\n\n set enabled(value) {\n state.enabled = value;\n }\n\n}; // Auto-install\n\nvar GlobalVue = null;\n\nif (typeof window !== 'undefined') {\n GlobalVue = window.Vue;\n} else if (typeof global !== 'undefined') {\n GlobalVue = global.Vue;\n}\n\nif (GlobalVue) {\n GlobalVue.use(plugin);\n}\n\nexport default plugin;\nexport { VClosePopover, VPopover, VTooltip, createTooltip, destroyTooltip, install };\n","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","\n\n\n\n\n","import { render, staticRenderFns } from \"./InfoHud.vue?vue&type=template&id=01ce5c24&\"\nimport script from \"./InfoHud.vue?vue&type=script&lang=js&\"\nexport * from \"./InfoHud.vue?vue&type=script&lang=js&\"\nimport style0 from \"./InfoHud.vue?vue&type=style&index=0&id=01ce5c24&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"info-hud\"},[_c('v-popover',{attrs:{\"placement\":\"right\"}},[_c('c-icon',{attrs:{\"icon\":\"info-circle\"}}),_vm._v(\" \"),_c('template',{slot:\"popover\"},[_vm._t(\"default\")],2)],2)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./LicenseStatus.vue?vue&type=template&id=1b8bf069&scoped=true&\"\nimport script from \"./LicenseStatus.vue?vue&type=script&lang=js&\"\nexport * from \"./LicenseStatus.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LicenseStatus.vue?vue&type=style&index=0&id=1b8bf069&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1b8bf069\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"license-status\",class:{\n 'tw-border tw-border-solid tw-px-4 tw-py-2 tw-rounded-md tw-text-base tw-opacity-100 tw-flex tw-items-center tw-justify-center tw-cursor-pointer': true,\n [_vm.status]: true,\n }},[_c('c-icon',{staticClass:\"tw-mr-2\",attrs:{\"icon\":\"check\"}}),_vm._v(\"\\n \"+_vm._s(_vm.description)+\"\\n\")],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./StatusBadge.vue?vue&type=template&id=c17dc428&\"\nimport script from \"./StatusBadge.vue?vue&type=script&lang=js&\"\nexport * from \"./StatusBadge.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatusBadge.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatusBadge.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"cms-edition-status-badge\"},[(_vm.CraftEdition == _vm.edition)?[(_vm.licensedEdition >= _vm.edition)?[_c('license-status',{attrs:{\"status\":\"installed\",\"description\":_vm._f(\"t\")('Installed','app')}})]:[_c('license-status',{attrs:{\"status\":\"installed\",\"description\":_vm._f(\"t\")('Installed as a trial','app')}})]]:(_vm.licensedEdition == _vm.edition)?[_c('license-status',{attrs:{\"status\":\"licensed\",\"description\":_vm._f(\"t\")('Licensed','app')}})]:_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n \n \n\n \n \n\n\n\n","\n\n\n\n\n","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CmsEdition.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CmsEdition.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BuyBtn.vue?vue&type=template&id=15bdc9d2&\"\nimport script from \"./BuyBtn.vue?vue&type=script&lang=js&\"\nexport * from \"./BuyBtn.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BuyBtn.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BuyBtn.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.edition > _vm.licensedEdition)?[(!_vm.isCmsEditionInCart(_vm.editionHandle))?[_c('c-btn',{attrs:{\"kind\":\"primary\",\"block\":\"\",\"large\":\"\"},on:{\"click\":function($event){return _vm.buyCraft(_vm.editionHandle)}}},[_vm._v(_vm._s(_vm._f(\"t\")('Buy now','app'))+\"\\n \")])]:[_c('c-btn',{attrs:{\"block\":\"\",\"large\":\"\",\"submit\":\"\",\"disabled\":\"\"}},[_vm._v(_vm._s(_vm._f(\"t\")('Added to cart','app'))+\"\\n \")])]]:_vm._e(),_vm._v(\" \"),(\n _vm.canTestEditions && _vm.edition != _vm.CraftEdition && _vm.edition > _vm.licensedEdition\n )?[_c('c-btn',{attrs:{\"block\":\"\",\"large\":\"\"},on:{\"click\":function($event){return _vm.installCraft(_vm.editionHandle)}}},[_vm._v(_vm._s(_vm._f(\"t\")('Try for free','app'))+\"\\n \")])]:_vm._e(),_vm._v(\" \"),(_vm.edition == _vm.licensedEdition && _vm.edition != _vm.CraftEdition)?[_c('c-btn',{attrs:{\"block\":\"\",\"large\":\"\"},on:{\"click\":function($event){return _vm.installCraft(_vm.editionHandle)}}},[_vm._v(_vm._s(_vm._f(\"t\")('Reactivate','app'))+\"\\n \")])]:_vm._e(),_vm._v(\" \"),(_vm.loading)?_c('c-spinner'):_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./CmsEdition.vue?vue&type=template&id=42d06e75&\"\nimport script from \"./CmsEdition.vue?vue&type=script&lang=js&\"\nexport * from \"./CmsEdition.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CmsEdition.vue?vue&type=style&index=0&id=42d06e75&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"cms-editions-edition\"},[_c('div',{staticClass:\"description\"},[_c('edition-badge',{attrs:{\"name\":_vm.edition.name,\"block\":true,\"big\":true}}),_vm._v(\" \"),_c('p',{staticClass:\"edition-description\"},[_vm._v(_vm._s(_vm.editionDescription))]),_vm._v(\" \"),_c('div',{staticClass:\"price\"},[(_vm.edition.price && _vm.edition.price > 0)?[_vm._v(\"\\n \"+_vm._s(_vm._f(\"currency\")(_vm.edition.price))+\"\\n \")]:[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Free','app'))+\"\\n \")]],2),_vm._v(\" \"),(_vm.edition.price && _vm.edition.price > 0)?_c('p',{staticClass:\"tw--mt-8 tw-py-6 tw-text-gray-700\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Price includes 1 year of updates.','app'))),_c('br'),_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('{renewalPrice}/year per site for updates after that.','app', {\n renewalPrice: _vm.$options.filters.currency(_vm.edition.renewalPrice),\n }))+\"\\n \")]):_vm._e(),_vm._v(\" \"),_c('ul',_vm._l((_vm.features),function(feature,key){return _c('li',{key:key},[_c('c-icon',{attrs:{\"icon\":\"check\"}}),_vm._v(\"\\n \"+_vm._s(feature.name)+\"\\n\\n \"),(feature.description)?_c('info-hud',[_vm._v(\"\\n \"+_vm._s(feature.description)+\"\\n \")]):_vm._e()],1)}),0)],1),_vm._v(\" \"),_c('div',{staticClass:\"cms-edition-actions\"},[_c('status-badge',{attrs:{\"edition\":_vm.editionIndex}}),_vm._v(\" \"),_c('buy-btn',{attrs:{\"edition\":_vm.editionIndex,\"edition-handle\":_vm.edition.handle}})],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./CmsEditions.vue?vue&type=template&id=57fe1b22&\"\nimport script from \"./CmsEditions.vue?vue&type=script&lang=js&\"\nexport * from \"./CmsEditions.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CmsEditions.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CmsEditions.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"cms-editions\",class:{\n 'tw-py-6': true,\n 'md:tw-flex md:tw--mx-4 md:tw-justify-center': true,\n }},_vm._l((_vm.cmsEditions),function(edition,key){return _c('cms-edition',{key:key,staticClass:\"md:tw-flex-1 md:tw-mx-4 md:tw-max-w-xs\",attrs:{\"edition\":edition}})}),1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./upgrade-craft.vue?vue&type=template&id=ab368d08&\"\nimport script from \"./upgrade-craft.vue?vue&type=script&lang=js&\"\nexport * from \"./upgrade-craft.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"ps-container\"},[_c('h1',[_vm._v(_vm._s(_vm._f(\"t\")('Upgrade Craft CMS','app')))]),_vm._v(\" \"),_c('hr'),_vm._v(\" \"),(!_vm.loading)?[(_vm.errorMsg)?[(_vm.errorMsg)?_c('div',{staticClass:\"error\"},[_vm._v(\"\\n \"+_vm._s(_vm.errorMsg)+\"\\n \")]):_vm._e()]:[_c('cms-editions')]]:[_c('c-spinner')]],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./EnterpriseVerifiedIcon.vue?vue&type=template&id=5d14941e&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"width\":\"100\",\"height\":\"100\",\"viewBox\":\"0 0 100 100\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",\"d\":\"M20 20C20 17.3478 21.0536 14.8043 22.9289 12.9289C24.8043 11.0536 27.3478 10 30 10H70C72.6522 10 75.1957 11.0536 77.0711 12.9289C78.9464 14.8043 80 17.3478 80 20V80C81.3261 80 82.5979 80.5268 83.5355 81.4645C84.4732 82.4021 85 83.6739 85 85C85 86.3261 84.4732 87.5979 83.5355 88.5355C82.5979 89.4732 81.3261 90 80 90H65C63.6739 90 62.4021 89.4732 61.4645 88.5355C60.5268 87.5979 60 86.3261 60 85V75C60 73.6739 59.4732 72.4021 58.5355 71.4645C57.5979 70.5268 56.3261 70 55 70H45C43.6739 70 42.4021 70.5268 41.4645 71.4645C40.5268 72.4021 40 73.6739 40 75V85C40 86.3261 39.4732 87.5979 38.5355 88.5355C37.5979 89.4732 36.3261 90 35 90H20C18.6739 90 17.4021 89.4732 16.4645 88.5355C15.5268 87.5979 15 86.3261 15 85C15 83.6739 15.5268 82.4021 16.4645 81.4645C17.4021 80.5268 18.6739 80 20 80V20ZM35 25H45V35H35V25ZM45 45H35V55H45V45ZM55 25H65V35H55V25ZM65 45H55V55H65V45Z\",\"fill\":\"currentColor\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./CraftCommerceVerifiedIcon.vue?vue&type=template&id=c916ab2e&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"width\":\"100\",\"height\":\"100\",\"viewBox\":\"0 0 100 100\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('path',{attrs:{\"d\":\"M20 20C17.3478 20 14.8043 21.0536 12.9289 22.9289C11.0536 24.8043 10 27.3478 10 30V35H90V30C90 27.3478 88.9464 24.8043 87.0711 22.9289C85.1957 21.0536 82.6522 20 80 20H20Z\",\"fill\":\"currentColor\"}}),_vm._v(\" \"),_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",\"d\":\"M90 45H10V70C10 72.6522 11.0536 75.1957 12.9289 77.0711C14.8043 78.9464 17.3478 80 20 80H80C82.6522 80 85.1957 78.9464 87.0711 77.0711C88.9464 75.1957 90 72.6522 90 70V45ZM20 65C20 63.6739 20.5268 62.4021 21.4645 61.4645C22.4021 60.5268 23.6739 60 25 60H30C31.3261 60 32.5979 60.5268 33.5355 61.4645C34.4732 62.4021 35 63.6739 35 65C35 66.3261 34.4732 67.5979 33.5355 68.5355C32.5979 69.4732 31.3261 70 30 70H25C23.6739 70 22.4021 69.4732 21.4645 68.5355C20.5268 67.5979 20 66.3261 20 65ZM45 60C43.6739 60 42.4021 60.5268 41.4645 61.4645C40.5268 62.4021 40 63.6739 40 65C40 66.3261 40.5268 67.5979 41.4645 68.5355C42.4021 69.4732 43.6739 70 45 70H50C51.3261 70 52.5979 69.4732 53.5355 68.5355C54.4732 67.5979 55 66.3261 55 65C55 63.6739 54.4732 62.4021 53.5355 61.4645C52.5979 60.5268 51.3261 60 50 60H45Z\",\"fill\":\"currentColor\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./CraftVerifiedIcon.vue?vue&type=template&id=47aed198&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"width\":\"100\",\"height\":\"100\",\"viewBox\":\"0 0 100 100\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"clip-rule\":\"evenodd\",\"d\":\"M83.535 26.465C84.4723 27.4026 84.9989 28.6742 84.9989 30C84.9989 31.3258 84.4723 32.5974 83.535 33.535L43.535 73.535C42.5973 74.4724 41.3258 74.9989 40 74.9989C38.6741 74.9989 37.4026 74.4724 36.465 73.535L16.465 53.535C15.5542 52.592 15.0502 51.329 15.0616 50.018C15.073 48.707 15.5988 47.4529 16.5259 46.5259C17.4529 45.5989 18.707 45.073 20.018 45.0616C21.3289 45.0502 22.5919 45.5542 23.535 46.465L40 62.93L76.465 26.465C77.4026 25.5276 78.6741 25.0011 80 25.0011C81.3258 25.0011 82.5973 25.5276 83.535 26.465Z\",\"fill\":\"currentColor\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PartnerBadge.vue?vue&type=template&id=7e0d0280&\"\nimport script from \"./PartnerBadge.vue?vue&type=script&lang=js&\"\nexport * from \"./PartnerBadge.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"tw-border tw-border-blue-600 tw-text-blue-600 tw-rounded-full tw-w-5 tw-h-5 tw-p-[2px]\"},[_c(_vm.computedComponent,{tag:\"component\",staticClass:\"tw-w-full tw-h-full\"})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n\n \n \n
    \n \n \n \n\n \n \n
  • \n \n {{ 'Partner Profile' }}\n \n \n
  • \n \n \n
    \n \n \n \n \n \n \n \n \n\n\n\n","import { render, staticRenderFns } from \"./_id.vue?vue&type=template&id=16c45ef7&\"\nimport script from \"./_id.vue?vue&type=script&lang=js&\"\nexport * from \"./_id.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_id.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_id.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"ps-container\"},[(!_vm.loading)?[_c('plugin-index',{attrs:{\"action\":\"pluginStore/getPluginsByDeveloperId\",\"requestData\":_vm.requestData,\"plugins\":_vm.plugins},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [(_vm.developer)?_c('div',{staticClass:\"developer-card tw-flex tw-pb-6 tw-items-center\"},[(_vm.developer.photoUrl)?[_c('div',{staticClass:\"avatar tw-w-28 tw-h-28 tw-inline-block tw-overflow-hidden tw-rounded-full tw-bg-gray-100 tw-mr-8 tw-no-line-height\"},[_c('img',{staticClass:\"tw-w-full tw-h-full\",attrs:{\"src\":_vm.developer.photoUrl}})])]:_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"tw-flex-1\"},[_c('h1',{staticClass:\"tw-text-lg tw-font-bold\"},[_vm._v(\"\\n \"+_vm._s(_vm.developer.developerName)+\"\\n \")]),_vm._v(\" \"),(_vm.developer.location)?_c('div',{staticClass:\"tw-mt-1\"},[_vm._v(\"\\n \"+_vm._s(_vm.developer.location)+\"\\n \")]):_vm._e(),_vm._v(\" \"),(\n _vm.developer.partnerInfo &&\n (_vm.developer.partnerInfo.isCraftVerified ||\n _vm.developer.partnerInfo.isCommerceVerified ||\n _vm.developer.partnerInfo.isEnterpriseVerified)\n )?[_c('div',{staticClass:\"tw-mt-4 tw-text-sm\"},[_c('ul',{staticClass:\"xl:tw-flex tw-space-y-2 xl:tw-space-y-0 xl:tw-space-x-6 tw-text-gray-600\"},[(\n _vm.developer.partnerInfo &&\n _vm.developer.partnerInfo.isCraftVerified\n )?[_c('li',{staticClass:\"tw-flex tw-items-center\"},[_c('partner-badge',{staticClass:\"tw-shrink-0 tw-mr-2\",attrs:{\"kind\":\"craft\"}}),_vm._v(\"\\n Craft Verified\\n \")],1)]:_vm._e(),_vm._v(\" \"),(\n _vm.developer.partnerInfo &&\n _vm.developer.partnerInfo.isCommerceVerified\n )?[_c('li',{staticClass:\"tw-flex tw-items-center\"},[_c('partner-badge',{staticClass:\"tw-shrink-0 tw-mr-2\",attrs:{\"kind\":\"commerce\"}}),_vm._v(\"\\n Craft Commerce Verified\\n \")],1)]:_vm._e(),_vm._v(\" \"),(\n _vm.developer.partnerInfo &&\n _vm.developer.partnerInfo.isEnterpriseVerified\n )?[_c('li',{staticClass:\"tw-flex tw-items-center\"},[_c('partner-badge',{staticClass:\"tw-shrink-0 tw-mr-2\",attrs:{\"kind\":\"enterprise\"}}),_vm._v(\"\\n Enterprise Verified\\n \")],1)]:_vm._e()],2)])]:_vm._e(),_vm._v(\" \"),(\n _vm.developer.developerUrl ||\n (_vm.developer.partnerInfo && _vm.developer.partnerInfo.profileUrl)\n )?[_c('div',{staticClass:\"tw-mt-4 tw-text-sm\"},[_c('ul',{staticClass:\"developer-buttons xl:tw-flex tw-space-y-2 xl:tw-space-y-0 xl:tw-space-x-3 tw-text-gray-600 tw-space-y-2\"},[(_vm.developer.developerUrl)?[_c('li',[_c('c-btn',{attrs:{\"target\":\"_blank\",\"href\":_vm.developer.developerUrl}},[_vm._v(_vm._s(_vm._f(\"t\")('Website','app'))+\"\\n \"),_c('c-icon',{staticClass:\"tw-w-3 tw-h-3 tw-text-grey-dark tw-ml-1\",attrs:{\"icon\":\"external-link\",\"size\":null}})],1)],1)]:_vm._e(),_vm._v(\" \"),(\n _vm.developer.partnerInfo &&\n _vm.developer.partnerInfo.profileUrl\n )?[_c('li',{staticClass:\"tw-inline-block tw-mr-2\"},[_c('c-btn',{staticClass:\"tw-inline-block\",attrs:{\"target\":\"_blank\",\"href\":_vm.developer.partnerInfo.profileUrl}},[_vm._v(\"\\n \"+_vm._s('Partner Profile')+\"\\n \"),_c('c-icon',{staticClass:\"tw-w-3 tw-h-3 tw-text-grey-dark tw-ml-1\",attrs:{\"icon\":\"external-link\",\"size\":null}})],1)],1)]:_vm._e()],2)])]:_vm._e()],2)],2):_vm._e()]},proxy:true}],null,false,2117456370)})]:[_c('c-spinner')]],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./_handle.vue?vue&type=template&id=26598c04&\"\nimport script from \"./_handle.vue?vue&type=script&lang=js&\"\nexport * from \"./_handle.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_handle.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_handle.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"ps-container\"},[(!_vm.loading)?[_c('plugin-index',{attrs:{\"action\":\"pluginStore/getPluginsByFeaturedSectionHandle\",\"requestData\":_vm.requestData,\"plugins\":_vm.plugins,\"disableSorting\":true},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [(_vm.featuredSection)?[_c('h1',[_vm._v(_vm._s(_vm.featuredSection.title))])]:_vm._e()]},proxy:true}],null,false,780213750)})]:[_c('c-spinner')]],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/* global Craft */\n\nclass Api {\n abortController = null;\n\n setAbortController(abortController) {\n this.abortController = abortController;\n }\n\n /**\n * Cancel requests.\n */\n cancelRequests() {\n if (this.abortController) {\n this.abortController.abort();\n }\n }\n\n /**\n * Send API request.\n *\n * @param {string} method\n * @param {string} uri\n * @param {object} options\n *\n * @returns {Promise}\n */\n sendApiRequest(method, uri, options) {\n options = this.prepareOptions(options);\n return Craft.sendApiRequest(method, uri, options);\n }\n\n /**\n * Send action request.\n *\n * @param {string} method\n * @param {string} action\n * @param {object} options\n *\n * @returns {Promise}\n */\n sendActionRequest(method, action, options) {\n options = this.prepareOptions(options);\n return Craft.sendActionRequest(method, action, options);\n }\n\n /**\n * Prepare options.\n *\n * @param {object} options\n *\n * @returns {object}\n */\n prepareOptions(options) {\n if (\n !this.abortController ||\n (this.abortController &&\n this.abortController.signal &&\n this.abortController.signal.aborted)\n ) {\n this.abortController = new AbortController();\n }\n\n if (!options) {\n options = {};\n }\n\n // Add abort signal if needed\n if (!options.signal) {\n options.signal = this.abortController.signal;\n }\n\n return options;\n }\n}\n\nconst ApiInstance = new Api();\n\nexport default ApiInstance;\n","import axios from 'axios';\nimport api from '../utils/api';\n\nexport default {\n /**\n * Cancel requests.\n */\n cancelRequests() {\n api.cancelRequests();\n },\n\n /**\n * Get plugin store data.\n *\n * @returns {AxiosPromise}\n */\n getCoreData() {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'plugin-store/core-data')\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get CMS editions.\n *\n * @returns {AxiosPromise}\n */\n getCmsEditions() {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'cms-editions')\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get developer.\n *\n * @param developerId\n * @returns {AxiosPromise}\n */\n getDeveloper(developerId) {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'developer/' + developerId)\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get featured section by handle.\n *\n * @param featuredSectionHandle\n * @returns {AxiosPromise}\n */\n getFeaturedSectionByHandle(featuredSectionHandle) {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest(\n 'GET',\n 'plugin-store/featured-section/' + featuredSectionHandle\n )\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get featured sections.\n *\n * @returns {AxiosPromise}\n */\n getFeaturedSections() {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'plugin-store/featured-sections')\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get plugin changelog.\n *\n * @param pluginId\n * @returns {AxiosPromise}\n */\n getPluginChangelog(pluginId) {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'plugin/' + pluginId + '/changelog')\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get plugin details.\n *\n * @param pluginId\n * @returns {AxiosPromise}\n */\n getPluginDetails(pluginId) {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'plugin/' + pluginId)\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get plugin details by handle.\n *\n * @param pluginHandle\n * @returns {AxiosPromise}\n */\n getPluginDetailsByHandle(pluginHandle) {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'plugin-store/plugin/' + pluginHandle, {\n params: {\n withInstallHistory: true,\n withIssueStats: true,\n },\n })\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get plugins by category.\n *\n * @param categoryId\n * @param pluginIndexParams\n * @returns {AxiosPromise}\n */\n getPluginsByCategory(categoryId, pluginIndexParams) {\n return new Promise((resolve, reject) => {\n const params = this._getPluginIndexParams(pluginIndexParams);\n params.categoryId = categoryId;\n\n api\n .sendApiRequest('GET', 'plugin-store/plugins', {\n params,\n })\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // Request was cancelled, silently fail\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get plugins by developer ID.\n *\n * @param developerId\n * @param pluginIndexParams\n * @returns {AxiosPromise}\n */\n getPluginsByDeveloperId(developerId, pluginIndexParams) {\n return new Promise((resolve, reject) => {\n const params = this._getPluginIndexParams(pluginIndexParams);\n params.developerId = developerId;\n\n api\n .sendApiRequest('GET', 'plugin-store/plugins', {\n params,\n })\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get plugins by featured section handle.\n *\n * @param featuredSectionHandle\n * @param pluginIndexParams\n * @returns {AxiosPromise}\n */\n getPluginsByFeaturedSectionHandle(featuredSectionHandle, pluginIndexParams) {\n return new Promise((resolve, reject) => {\n const params = this._getPluginIndexParams(pluginIndexParams);\n\n api\n .sendApiRequest(\n 'GET',\n 'plugin-store/plugins-by-featured-section/' + featuredSectionHandle,\n {\n params,\n }\n )\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get plugins by handles.\n *\n * @param pluginHandles\n * @returns {AxiosPromise}\n */\n getPluginsByHandles(pluginHandles) {\n return new Promise((resolve, reject) => {\n let pluginHandlesString;\n\n if (Array.isArray(pluginHandles)) {\n pluginHandlesString = pluginHandles.join(',');\n } else {\n pluginHandlesString = pluginHandles;\n }\n\n api\n .sendApiRequest('GET', 'plugin-store/plugins-by-handles', {\n params: {\n pluginHandles: pluginHandlesString,\n },\n })\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get plugins by IDs.\n *\n * @param pluginIds\n * @returns {AxiosPromise}\n */\n getPluginsByIds(pluginIds) {\n return new Promise((resolve, reject) => {\n let pluginIdsString;\n\n if (Array.isArray(pluginIds)) {\n pluginIdsString = pluginIds.join(',');\n } else {\n pluginIdsString = pluginIds;\n }\n\n api\n .sendApiRequest('GET', 'plugins', {\n params: {\n ids: pluginIdsString,\n },\n })\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Search plugins.\n *\n * @param searchQuery\n * @param pluginIndexParams\n * @returns {AxiosPromise}\n */\n searchPlugins(searchQuery, pluginIndexParams) {\n return new Promise((resolve, reject) => {\n const params = this._getPluginIndexParams(pluginIndexParams);\n params.searchQuery = searchQuery;\n\n api\n .sendApiRequest('GET', 'plugin-store/plugins', {\n params,\n })\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get plugin index params.\n *\n * @param limit\n * @param offset\n * @param orderBy\n * @param direction\n * @returns {{offset: *, limit: *, orderBy: *, direction: *}}\n * @private\n */\n _getPluginIndexParams({perPage, page, orderBy, direction}) {\n if (!perPage) {\n perPage = 96;\n }\n\n if (!page) {\n page = 1;\n }\n\n return {\n perPage,\n page,\n orderBy,\n direction,\n };\n },\n};\n","import { render, staticRenderFns } from \"./StatusMessage.vue?vue&type=template&id=acf66fa2&\"\nimport script from \"./StatusMessage.vue?vue&type=script&lang=js&\"\nexport * from \"./StatusMessage.vue?vue&type=script&lang=js&\"\nimport style0 from \"./StatusMessage.vue?vue&type=style&index=0&id=acf66fa2&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"status-message\"},[_c('div',[(_vm.error)?[_c('c-icon',{attrs:{\"icon\":\"exclamation-triangle\"}})]:[_c('c-spinner',{attrs:{\"size\":\"lg\"}})],_vm._v(\" \"),_c('div',{staticClass:\"message\"},[_vm._v(_vm._s(_vm.message))])],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./_plugin.vue?vue&type=template&id=ad83da98&\"\nimport script from \"./_plugin.vue?vue&type=script&lang=js&\"\nexport * from \"./_plugin.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_plugin.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_plugin.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"ps-container buy-plugin\"},[(_vm.loading)?_c('status-message',{staticClass:\"tw-h-full\",attrs:{\"message\":_vm.statusMessage}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./buy-all-trials.vue?vue&type=template&id=1bc750cd&\"\nimport script from \"./buy-all-trials.vue?vue&type=script&lang=js&\"\nexport * from \"./buy-all-trials.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./buy-all-trials.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./buy-all-trials.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"ps-container buy-plugin\"},[(_vm.loading)?_c('status-message',{staticClass:\"tw-h-full\",attrs:{\"message\":_vm.statusMessage}}):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./tests.vue?vue&type=template&id=14e62e52&\"\nimport script from \"./tests.vue?vue&type=script&lang=js&\"\nexport * from \"./tests.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('h2',[_vm._v(\"Translations\")]),_vm._v(\" \"),_c('p',[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.somePrice))+\" per year for updates\")]),_vm._v(\" \"),_c('p',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('{price} per year for updates','app', {price: _vm.$root.$options.filters.currency(_vm.somePrice)}))+\"\\n \")]),_vm._v(\" \"),_vm._m(0),_vm._v(\" \"),_c('p',{domProps:{\"innerHTML\":_vm._s(_vm.craftTranslation)}}),_vm._v(\" \"),_c('h2',[_vm._v(\"Modal\")]),_vm._v(\" \"),_c('p',[_c('a',{on:{\"click\":function($event){return _vm.openModal()}}},[_vm._v(\"Open Garnish Modal\")])]),_vm._v(\" \"),_c('div',{staticClass:\"tw-hidden\"},[_c('div',{ref:\"garnishmodalcontent\",staticClass:\"modal\"},[_c('div',{staticClass:\"body\"},[_vm._v(\"Hello World\")])])])])\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('p',[_vm._v(\"{{ \\\"Go to {link}\\\"|t('app', {link: '\"),_c('a',{attrs:{\"href\":\"#\"}},[_vm._v(\"test\")]),_vm._v(\"' }) }}\")])\n}]\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./_not-found.vue?vue&type=template&id=66be910d&\"\nimport script from \"./_not-found.vue?vue&type=script&lang=js&\"\nexport * from \"./_not-found.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('status-message',{attrs:{\"error\":true,\"message\":_vm.message}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./SearchTabs.vue?vue&type=template&id=18121a7b&\"\nimport script from \"./SearchTabs.vue?vue&type=script&lang=js&\"\nexport * from \"./SearchTabs.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"search-tabs tw-mt-2\"},[_c('ul',{staticClass:\"tw--mb-px tw-flex tw-space-x-6\"},_vm._l((_vm.tabs),function(tab,tabKey){return _c('li',{key:tabKey},[_c('button',{class:{\n 'tw-text-base tw-inline-block tw-px-1 tw-py-3 tw-border-0 tw-border-b-2 tw-border-solid tw-text-gray-500 tw-text-opacity-75 hover:tw-text-opacity-100': true,\n 'tw-border-transparent hover:tw-border-separator hover:tw-border-gray-200':\n tab.handle !== _vm.activeTab,\n 'tw-text-blue-600 tw-border-blue-600 tw-text-opacity-100':\n tab.handle === _vm.activeTab,\n },on:{\"click\":function($event){return _vm.$emit('tab-click', tab.handle)}}},[_vm._v(\"\\n \"+_vm._s(tab.name)+\"\\n \")])])}),0)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","\n\n\n","import { render, staticRenderFns } from \"./DeveloperIndex.vue?vue&type=template&id=0b2466b1&\"\nimport script from \"./DeveloperIndex.vue?vue&type=script&lang=js&\"\nexport * from \"./DeveloperIndex.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DeveloperIndex.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DeveloperIndex.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('div',{staticClass:\"tw-border-b tw-border-solid tw-border-gray-200\"},[_vm._t(\"header\")],2),_vm._v(\" \"),_c('div',{staticClass:\"tw-grid-plugins tw-grid tw-grid-cols-1 sm:tw-grid-cols-2 lg:tw-grid-cols-3 tw-gap-x-8\"},[_vm._l((_vm.developers),function(developer,developerKey){return [_c('div',{key:developerKey,staticClass:\"tw-grid-box tw-border-b\"},[_c('div',{staticClass:\"tw-flex tw-items-center tw-py-6\"},[_c('div',{staticClass:\"tw-bg-red-500 tw-rounded-full tw-w-16 tw-h-16 tw-mr-4\"}),_vm._v(\" \"),_c('div',{staticClass:\"developer-card\"},[_c('h3',{staticClass:\"font-bold\"},[_vm._v(\"\\n \"+_vm._s(developer.name)+\"\\n \")]),_vm._v(\" \"),_vm._m(0,true)])])])]})],2)])\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c;return _c('ul',[_c('li',[_vm._v(\"3 plugins\")])])\n}]\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./search.vue?vue&type=template&id=1cb6286b&\"\nimport script from \"./search.vue?vue&type=script&lang=js&\"\nexport * from \"./search.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./search.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./search.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"ps-container\"},[(_vm.activeTab === 'developers')?[_c('developer-index',{staticClass:\"mb-16\",attrs:{\"request-data\":_vm.requestData},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('h1',{staticClass:\"mt-0 mb-0\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Showing results for “{searchQuery}”','app', {searchQuery: _vm.searchQuery}))+\"\\n \")]),_vm._v(\" \"),_c('search-tabs',{attrs:{\"active-tab\":_vm.activeTab},on:{\"tab-click\":function($event){_vm.activeTab = $event}}})]},proxy:true}],null,false,2956853969)})]:_vm._e(),_vm._v(\" \"),(_vm.activeTab === 'plugins')?[_c('plugin-index',{ref:\"pluginIndex\",attrs:{\"action\":\"pluginStore/searchPlugins\",\"requestData\":_vm.requestData,\"plugins\":_vm.plugins},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('div',[_c('h1',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Showing results for “{searchQuery}”','app', {searchQuery: _vm.searchQuery}))+\"\\n \")]),_vm._v(\" \"),_c('search-tabs',{attrs:{\"active-tab\":_vm.activeTab},on:{\"tab-click\":function($event){_vm.activeTab = $event}}})],1)]},proxy:true}],null,false,1589703536)})]:_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PluginScreenshots.vue?vue&type=template&id=6b129ee1&\"\nimport script from \"./PluginScreenshots.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginScreenshots.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"tw-overflow-x-auto tw-w-full tw-flex tw-gap-6 tw-snap-x tw-snap-mandatory tw-pb-8\"},_vm._l((_vm.thumbnails),function(image,key){return _c('a',{key:key,staticClass:\"tw-shrink-0 tw-snap-start tw-w-64 tw-aspect-[4/3]\",on:{\"click\":function($event){$event.preventDefault();return _vm.zoomImage(key)}}},[_c('div',{staticClass:\"tw-flex tw-justify-center tw-items-center tw-w-full tw-h-full\"},[_c('img',{staticClass:\"tw-rounded-md tw-max-w-full tw-max-h-full\",attrs:{\"alt\":'Plugin screenshot thumbnail ' + (key + 1) + '/' + _vm.thumbnails.length,\"src\":image}})])])}),0)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export default {\n computed: {\n licenseMismatched() {\n return this.getLicenseMismatched(this.pluginLicenseInfo);\n },\n\n licenseValidOrAstray() {\n return this.getLicenseValidOrAstray(this.pluginLicenseInfo);\n },\n },\n\n methods: {\n getLicenseMismatched(pluginLicenseInfo) {\n return (\n pluginLicenseInfo && pluginLicenseInfo.licenseKeyStatus === 'mismatched'\n );\n },\n\n getLicenseValidOrAstray(pluginLicenseInfo) {\n return (\n pluginLicenseInfo.licenseKeyStatus === 'valid' ||\n pluginLicenseInfo.licenseKeyStatus === 'astray'\n );\n },\n },\n};\n","import { render, staticRenderFns } from \"./MetaStat.vue?vue&type=template&id=2f678c66&\"\nimport script from \"./MetaStat.vue?vue&type=script&lang=js&\"\nexport * from \"./MetaStat.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{class:{\n 'tw-border-b tw-py-4': _vm.border,\n }},[_c('dt',{staticClass:\"tw-text-gray-500\"},[_vm._t(\"title\")],2),_vm._v(\" \"),_c('dd',{staticClass:\"tw-mt-1 tw-font-medium\"},[_vm._t(\"content\")],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import {currency} from '../filters/currency';\n\nconst getPriceLabel = (price) => {\n return price > 0 ? currency(price) : 'Free';\n};\n\nconst getPriceRange = (editions) => {\n let min = null;\n let max = null;\n\n for (let i = 0; i < editions.length; i++) {\n const edition = editions[i];\n\n let price = 0;\n\n if (edition.price) {\n price = parseInt(edition.price);\n }\n\n if (min === null) {\n min = price;\n }\n\n if (max === null) {\n max = price;\n }\n\n if (price < min) {\n min = price;\n }\n\n if (price > max) {\n max = price;\n }\n }\n\n return {\n min,\n max,\n };\n};\n\nconst getPriceRangeLabel = (plugin) => {\n const {min, max} = getPriceRange(plugin.editions);\n\n if (min !== max) {\n return `${getPriceLabel(min)} – ${getPriceLabel(max)}`;\n }\n\n return getPriceLabel(min);\n};\n\nconst isPluginFree = (plugin) => {\n const {min, max} = getPriceRange(plugin.editions);\n\n if (min !== 0 || max !== 0) {\n return false;\n }\n\n return true;\n};\n\nexport {getPriceLabel, getPriceRange, getPriceRangeLabel, isPluginFree};\n","\n \n \n \n\n \n\n \n \n\n \n
    \n

    \n {{\n 'Only up to {version} is compatible with your version of Craft.'\n | t('app', {version: plugin.latestCompatibleVersion})\n }}\n

    \n
    \n \n \n \n \n \n\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginActions.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginActions.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PluginEditionPrice.vue?vue&type=template&id=28b67676&\"\nimport script from \"./PluginEditionPrice.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginEditionPrice.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n \n \n\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(!_vm.isPluginEditionFree(_vm.edition))?[(\n _vm.licensedEdition &&\n _vm.licensedEdition.handle !== _vm.edition.handle &&\n _vm.licensedEdition.price > 0 &&\n _vm.licenseValidOrAstray\n )?[_c('del',[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.edition.price)))]),_vm._v(\"\\n \"+_vm._s(_vm._f(\"currency\")((_vm.edition.price - _vm.licensedEdition.price)))+\"\\n \")]:[_vm._v(\"\\n \"+_vm._s(_vm._f(\"currency\")(_vm.edition.price))+\"\\n \")]]:[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Free','app'))+\"\\n \")]],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PluginActions.vue?vue&type=template&id=8b638946&\"\nimport script from \"./PluginActions.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginActions.vue?vue&type=script&lang=js&\"\nimport style0 from \"./PluginActions.vue?vue&type=style&index=0&id=8b638946&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.plugin)?_c('div',{staticClass:\"plugin-actions tw-relative tw-space-y-2\"},[(!_vm.isPluginEditionFree)?[(_vm.isInCart(_vm.plugin, _vm.edition))?[(_vm.allowUpdates)?_c('c-btn',{attrs:{\"kind\":\"primary\",\"icon\":\"check\",\"block\":\"\",\"large\":\"\",\"disabled\":\"\"},on:{\"click\":function($event){return _vm.$root.openModal('cart')}}},[_vm._v(_vm._s(_vm._f(\"t\")('Already in your cart','app'))+\"\\n \")]):_vm._e()]:[(_vm.allowUpdates && _vm.isEditionMoreExpensiveThanLicensed)?_c('c-btn',{attrs:{\"kind\":\"primary\",\"loading\":_vm.addToCartloading,\"disabled\":_vm.addToCartloading ||\n !_vm.plugin.latestCompatibleVersion ||\n !_vm.plugin.phpVersionCompatible ||\n _vm.licenseMismatched ||\n _vm.plugin.abandoned,\"block\":\"\",\"large\":\"\"},on:{\"click\":function($event){return _vm.addEditionToCart(_vm.edition.handle)}}},[_c('plugin-edition-price',{attrs:{\"edition\":_vm.edition}})],1):(_vm.licensedEdition === _vm.edition.handle)?_c('c-btn',{attrs:{\"kind\":\"primary\",\"block\":\"\",\"large\":\"\",\"disabled\":\"\"}},[_vm._v(_vm._s(_vm._f(\"t\")('Licensed','app'))+\"\\n \")]):_vm._e()]]:_vm._e(),_vm._v(\" \"),(!_vm.isPluginInstalled || _vm.currentEdition !== _vm.edition.handle)?[(_vm.allowUpdates || _vm.isPluginInstalled)?_c('form',{attrs:{\"method\":\"post\"},on:{\"submit\":_vm.onSwitchOrInstallSubmit}},[_c('input',{attrs:{\"type\":\"hidden\",\"name\":_vm.csrfTokenName},domProps:{\"value\":_vm.csrfTokenValue}}),_vm._v(\" \"),(_vm.isPluginInstalled)?[_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"action\",\"value\":\"plugins/switch-edition\"}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"pluginHandle\"},domProps:{\"value\":_vm.plugin.handle}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"edition\"},domProps:{\"value\":_vm.edition.handle}})]:[_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"action\",\"value\":\"pluginstore/install\"}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"packageName\"},domProps:{\"value\":_vm.plugin.packageName}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"handle\"},domProps:{\"value\":_vm.plugin.handle}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"edition\"},domProps:{\"value\":_vm.edition.handle}}),_vm._v(\" \"),_c('input',{attrs:{\"type\":\"hidden\",\"name\":\"version\"},domProps:{\"value\":_vm.plugin.latestCompatibleVersion}})],_vm._v(\" \"),(_vm.isPluginEditionFree)?[_c('c-btn',{attrs:{\"kind\":\"primary\",\"type\":\"submit\",\"loading\":_vm.loading,\"disabled\":!_vm.plugin.latestCompatibleVersion || !_vm.plugin.phpVersionCompatible,\"block\":\"\",\"large\":\"\"}},[_vm._v(_vm._s(_vm._f(\"t\")('Install','app'))+\"\\n \")])]:[(\n (_vm.isEditionMoreExpensiveThanLicensed &&\n _vm.currentEdition === _vm.edition.handle) ||\n (_vm.licensedEdition === _vm.edition.handle && !_vm.currentEdition)\n )?[_c('c-btn',{attrs:{\"type\":\"submit\",\"loading\":_vm.loading,\"disabled\":!_vm.plugin.latestCompatibleVersion || !_vm.plugin.phpVersionCompatible,\"block\":\"\",\"large\":\"\"}},[_vm._v(_vm._s(_vm._f(\"t\")('Install','app'))+\"\\n \")])]:(\n _vm.isEditionMoreExpensiveThanLicensed &&\n _vm.currentEdition !== _vm.edition.handle\n )?[_c('c-btn',{attrs:{\"type\":\"submit\",\"disabled\":!(\n (_vm.pluginLicenseInfo &&\n _vm.pluginLicenseInfo.isInstalled &&\n _vm.pluginLicenseInfo.isEnabled) ||\n !_vm.pluginLicenseInfo\n ) ||\n !_vm.plugin.latestCompatibleVersion ||\n !_vm.plugin.phpVersionCompatible,\"loading\":_vm.loading,\"block\":\"\",\"large\":\"\"}},[_vm._v(_vm._s(_vm._f(\"t\")('Try','app'))+\"\\n \")])]:(\n _vm.currentEdition &&\n _vm.licensedEdition === _vm.edition.handle &&\n _vm.currentEdition !== _vm.edition.handle\n )?[_c('c-btn',{attrs:{\"type\":\"submit\",\"loading\":_vm.loading,\"block\":\"\",\"large\":\"\"}},[_vm._v(_vm._s(_vm._f(\"t\")('Reactivate','app'))+\"\\n \")])]:_vm._e()]],2):_vm._e()]:[(_vm.currentEdition !== _vm.licensedEdition && !_vm.isPluginEditionFree)?[_c('c-btn',{attrs:{\"icon\":\"check\",\"disabled\":true,\"large\":\"\",\"block\":\"\"}},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Installed as a trial','app'))+\"\\n \")])]:[_c('c-btn',{attrs:{\"icon\":\"check\",\"disabled\":true,\"block\":\"\",\"large\":\"\"}},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Installed','app'))+\"\\n \")])]],_vm._v(\" \"),(\n _vm.plugin.latestCompatibleVersion &&\n _vm.plugin.latestCompatibleVersion != _vm.plugin.version\n )?[_c('div',{staticClass:\"tw-text-gray-600 tw-mt-4\"},[_c('p',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Only up to {version} is compatible with your version of Craft.','app', {version: _vm.plugin.latestCompatibleVersion}))+\"\\n \")])])]:(!_vm.plugin.latestCompatibleVersion)?[_c('div',{staticClass:\"tw-text-gray-600 tw-mt-4\"},[_c('p',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('This plugin isn’t compatible with your version of Craft.','app'))+\"\\n \")])])]:(!_vm.plugin.phpVersionCompatible)?[_c('div',{staticClass:\"tw-text-gray-600 tw-mt-4\"},[(_vm.plugin.incompatiblePhpVersion === 'php')?_c('p',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('This plugin requires PHP {v1}, but your environment is currently running {v2}.','app', {\n v1: _vm.plugin.phpConstraint,\n v2: _vm.phpVersion(),\n }))+\"\\n \")]):_c('p',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('This plugin requires PHP {v1}, but your composer.json file is currently set to {v2}.','app', {\n v1: _vm.plugin.phpConstraint,\n v2: _vm.composerPhpVersion(),\n }))+\"\\n \")])])]:(!_vm.isPluginEditionFree && _vm.plugin.abandoned)?[_c('div',{staticClass:\"tw-text-gray-600 tw-mt-4\"},[_c('p',[_vm._v(_vm._s(_vm._f(\"t\")('This plugin is no longer maintained.','app')))])])]:_vm._e()],2):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./PluginEdition.vue?vue&type=template&id=0a85400b&\"\nimport script from \"./PluginEdition.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginEdition.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginEdition.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginEdition.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"plugin-editions-edition\",class:{\n 'tw-flex tw-flex-col': true,\n 'tw-border tw-border-gray-200 tw-border-solid tw-rounded-md':\n _vm.context !== 'meta' ||\n _vm.plugin.editions.length > 1 ||\n !_vm.isPluginEditionFree(_vm.edition),\n 'tw-p-8 tw-text-center': _vm.context !== 'meta',\n 'tw-p-4':\n _vm.context === 'meta' &&\n (_vm.plugin.editions.length > 1 || !_vm.isPluginEditionFree(_vm.edition)),\n }},[_c('div',{staticClass:\"description tw-flex-1\"},[(_vm.plugin.editions.length > 1)?[_c('div',{staticClass:\"tw-text-xl tw-font-bold tw-mb-4\"},[_vm._v(\"\\n \"+_vm._s(_vm.edition.name)+\"\\n \")])]:_vm._e(),_vm._v(\" \"),(_vm.context !== 'meta')?[(\n _vm.plugin.editions.length > 1 &&\n _vm.edition.features &&\n _vm.edition.features.length > 0\n )?_c('ul',{staticClass:\"tw-text-left tw-mt-8 tw-mb-8\"},_vm._l((_vm.edition.features),function(feature,key){return _c('li',{key:key,staticClass:\"tw-py-2 tw-border-b tw-border-gray-200 tw-border-solid\",class:{\n 'tw-border-t': key === 0,\n }},[_c('c-icon',{attrs:{\"icon\":\"check\"}}),_vm._v(\"\\n \"+_vm._s(feature.name)+\"\\n\\n \"),(feature.description)?_c('info-hud',[_vm._v(\"\\n \"+_vm._s(feature.description)+\"\\n \")]):_vm._e()],1)}),0):_vm._e()]:_vm._e()],2),_vm._v(\" \"),_c('plugin-actions',{attrs:{\"plugin\":_vm.plugin,\"edition\":_vm.edition}}),_vm._v(\" \"),(!_vm.isPluginEditionFree(_vm.edition))?_c('p',{staticClass:\"tw-text-gray-700\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Price includes 1 year of updates.','app'))+\"\\n \"+_vm._s(_vm._f(\"t\")('{renewalPrice}/year per site for updates after that.','app', {\n renewalPrice: _vm.$options.filters.currency(_vm.edition.renewalPrice),\n }))+\"\\n \")]):_vm._e()],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PluginMetaBuyButton.vue?vue&type=template&id=74bd5a02&\"\nimport script from \"./PluginMetaBuyButton.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginMetaBuyButton.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{class:{\n 'tw-space-y-2 tw-mb-2': _vm.isPluginFree(_vm.plugin),\n 'tw-space-y-4 tw-mb-4': !_vm.isPluginFree(_vm.plugin),\n }},[_vm._l((_vm.plugin.editions),function(edition,key){return [_c('div',{key:key},[_c('plugin-edition',{attrs:{\"plugin\":_vm.plugin,\"edition\":edition,\"context\":\"meta\"}})],1)]})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./InstallPlugin.vue?vue&type=template&id=f4cbb87c&\"\nimport script from \"./InstallPlugin.vue?vue&type=script&lang=js&\"\nexport * from \"./InstallPlugin.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('meta-stat',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Installation Instructions','app'))+\"\\n \")]},proxy:true},{key:\"content\",fn:function(){return [_c('div',[_c('ul',{staticClass:\"tw-flex tw-space-x-4 tw-text-sm\"},_vm._l((_vm.installModes),function(installMode,installModeKey){return _c('li',{key:installModeKey,staticClass:\"tw-py-1\"},[_c('button',{class:{\n 'tw-text-gray-700': !(\n installMode.handle === _vm.currentInstallModeHandle\n ),\n 'tw-font-medium tw-text-black tw-border-b-2 tw-border-orange-500':\n installMode.handle === _vm.currentInstallModeHandle,\n },on:{\"click\":function($event){return _vm.changeInstallMode(installMode.handle)}}},[_vm._v(\"\\n \"+_vm._s(installMode.name)+\"\\n \")])])}),0)]),_vm._v(\" \"),_c('div',{staticClass:\"copy-package\"},[_c('div',{staticClass:\"tw-mt-2 tw-flex\"},[_c('c-textbox',{ref:\"input\",staticClass:\"tw-w-full tw-flex tw-rounded-r-none tw-font-mono focus:tw-relative focus:tw-z-10 tw-text-sm\",attrs:{\"readonly\":\"readonly\",\"type\":\"text\",\"value\":_vm.currentInstallMode.copyValue},on:{\"focus\":_vm.select}}),_vm._v(\" \"),_c('c-btn',{staticClass:\"tw--ml-px tw-w-14 tw-rounded-l-none\",class:{\n 'tw-border-green-500 hover:tw-border-green-500 active:tw-border-green-500':\n _vm.showSuccess,\n },attrs:{\"disable-shadow\":true},on:{\"click\":_vm.copy}},[(_vm.showSuccess)?[_c('c-icon',{staticClass:\"tw-text-green-500\",attrs:{\"icon\":\"check\"}})]:[_c('c-icon',{staticClass:\"tw-text-black\",attrs:{\"icon\":\"clipboard-copy\"}})]],2)],1),_vm._v(\" \"),_c('div',{staticClass:\"tw-mt-4 tw-text-sm tw-text-gray-500\"},[_c('p',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('To install this plugin with composer, copy the command above to your terminal.','app'))+\"\\n \")])])])]},proxy:true}])})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ActivityStat.vue?vue&type=template&id=01518cf0&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"tw-p-4 tw-text-center\"},[_c('div',{staticClass:\"tw-inline-block\"},[_c('div',{staticClass:\"tw-flex tw-items-center\"},[_c('div',{staticClass:\"tw-mr-1.5\"},[_vm._t(\"icon\")],2),_vm._v(\" \"),_c('div',[_vm._t(\"count\")],2)])]),_vm._v(\" \"),_c('div',{staticClass:\"tw-mt-1 tw-text-xs tw-text-gray-500\"},[_vm._t(\"title\")],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./GithubActivity.vue?vue&type=template&id=63fd4b9d&\"\nimport script from \"./GithubActivity.vue?vue&type=script&lang=js&\"\nexport * from \"./GithubActivity.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.issueStats)?_c('meta-stat',{staticClass:\"tw-pt-4\",attrs:{\"border\":false},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.githubActivityTitle)}})]},proxy:true},{key:\"content\",fn:function(){return [_c('div',{staticClass:\"tw-mt-4 tw-border tw-border-solid tw-border-gray-200 tw-rounded-lg\"},[_c('div',{staticClass:\"tw-grid tw-grid-cols-2\"},[_c('activity-stat',{staticClass:\"tw-border-r tw-border-solid tw-border-gray-200\",scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('svg',{staticClass:\"tw-text-purple-500\",attrs:{\"aria-hidden\":\"true\",\"height\":\"16\",\"viewBox\":\"0 0 16 16\",\"version\":\"1.1\",\"width\":\"16\",\"data-view-component\":\"true\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"d\":\"M11.28 6.78a.75.75 0 00-1.06-1.06L7.25 8.69 5.78 7.22a.75.75 0 00-1.06 1.06l2 2a.75.75 0 001.06 0l3.5-3.5z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M16 8A8 8 0 110 8a8 8 0 0116 0zm-1.5 0a6.5 6.5 0 11-13 0 6.5 6.5 0 0113 0z\"}})])]},proxy:true},{key:\"count\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm.issueStats.closedIssues)+\"\\n \")]},proxy:true},{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Closed Issues','app'))+\"\\n \")]},proxy:true}],null,false,2809335390)}),_vm._v(\" \"),_c('activity-stat',{scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('svg',{staticClass:\"tw-text-green-500\",attrs:{\"aria-hidden\":\"true\",\"height\":\"16\",\"viewBox\":\"0 0 16 16\",\"version\":\"1.1\",\"width\":\"16\",\"data-view-component\":\"true\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"d\":\"M8 9.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z\"}}),_vm._v(\" \"),_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M8 0a8 8 0 100 16A8 8 0 008 0zM1.5 8a6.5 6.5 0 1113 0 6.5 6.5 0 01-13 0z\"}})])]},proxy:true},{key:\"count\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm.issueStats.openIssues)+\"\\n \")]},proxy:true},{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('New Issues','app'))+\"\\n \")]},proxy:true}],null,false,1949602571)}),_vm._v(\" \"),_c('activity-stat',{staticClass:\"tw-border-t tw-border-r tw-border-solid tw-border-gray-200\",scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('svg',{staticClass:\"tw-text-purple-500\",attrs:{\"aria-hidden\":\"true\",\"height\":\"16\",\"viewBox\":\"0 0 16 16\",\"version\":\"1.1\",\"width\":\"16\",\"data-view-component\":\"true\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M5 3.254V3.25v.005a.75.75 0 110-.005v.004zm.45 1.9a2.25 2.25 0 10-1.95.218v5.256a2.25 2.25 0 101.5 0V7.123A5.735 5.735 0 009.25 9h1.378a2.251 2.251 0 100-1.5H9.25a4.25 4.25 0 01-3.8-2.346zM12.75 9a.75.75 0 100-1.5.75.75 0 000 1.5zm-8.5 4.5a.75.75 0 100-1.5.75.75 0 000 1.5z\"}})])]},proxy:true},{key:\"count\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm.issueStats.mergedPulls)+\"\\n \")]},proxy:true},{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Merged PRs','app'))+\"\\n \")]},proxy:true}],null,false,3605081137)}),_vm._v(\" \"),_c('activity-stat',{staticClass:\"tw-border-t tw-border-solid tw-border-gray-200\",scopedSlots:_vm._u([{key:\"icon\",fn:function(){return [_c('svg',{staticClass:\"tw-text-green-500\",attrs:{\"aria-hidden\":\"true\",\"height\":\"16\",\"viewBox\":\"0 0 16 16\",\"version\":\"1.1\",\"width\":\"16\",\"data-view-component\":\"true\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M7.177 3.073L9.573.677A.25.25 0 0110 .854v4.792a.25.25 0 01-.427.177L7.177 3.427a.25.25 0 010-.354zM3.75 2.5a.75.75 0 100 1.5.75.75 0 000-1.5zm-2.25.75a2.25 2.25 0 113 2.122v5.256a2.251 2.251 0 11-1.5 0V5.372A2.25 2.25 0 011.5 3.25zM11 2.5h-1V4h1a1 1 0 011 1v5.628a2.251 2.251 0 101.5 0V5A2.5 2.5 0 0011 2.5zm1 10.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0zM3.75 12a.75.75 0 100 1.5.75.75 0 000-1.5z\"}})])]},proxy:true},{key:\"count\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm.issueStats.openPulls)+\"\\n \")]},proxy:true},{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Open PRs','app'))+\"\\n \")]},proxy:true}],null,false,3930490208)})],1)])]},proxy:true}],null,false,4069964360)}):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActiveInstallsChart.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActiveInstallsChart.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./ActiveInstallsChart.vue?vue&type=template&id=22afcb11&\"\nimport script from \"./ActiveInstallsChart.vue?vue&type=script&lang=js&\"\nexport * from \"./ActiveInstallsChart.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ActiveInstallsChart.vue?vue&type=style&index=0&id=22afcb11&prod&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.plugin.installHistory)?_c('div',[_c('ClientOnly',[_c('div',[_c('apex-chart',{attrs:{\"type\":\"area\",\"height\":\"40\",\"options\":_vm.chartOptions,\"series\":_vm.series}}),_vm._v(\" \"),(_vm.chartMounted)?_c('div',{staticClass:\"tw-h-3 tw-bg-gradient-to-b tw-from-blue-100/100 tw-to-blue-100/0\"}):_vm._e()],1)])],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./ActiveInstalls.vue?vue&type=template&id=3dcd484a&\"\nimport script from \"./ActiveInstalls.vue?vue&type=script&lang=js&\"\nexport * from \"./ActiveInstalls.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('meta-stat',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [(_vm.activeInstallsDate !== null)?[_vm._v(\"\\n \"+_vm._s(_vm._f(\"formatDate\")(_vm.activeInstallsDate))+\"\\n \")]:[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Active Installs','app'))+\"\\n \")]]},proxy:true},{key:\"content\",fn:function(){return [_c('div',{staticClass:\"tw-flex\"},[_c('div',{staticClass:\"tw-w-1/3\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"formatNumber\")(_vm.activeInstalls))+\"\\n \")]),_vm._v(\" \"),(_vm.plugin.installHistory)?[_c('active-installs-chart',{staticClass:\"tw-flex-1\",attrs:{\"plugin\":_vm.plugin},on:{\"updateCurrentDataPoint\":_vm.updateActiveInstallsDataPoint}})]:_vm._e()],2)]},proxy:true}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PluginMeta.vue?vue&type=template&id=17ff9336&\"\nimport script from \"./PluginMeta.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginMeta.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginMeta.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginMeta.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('ul',{staticClass:\"tw-list-reset tw-space-y-2\"},[_c('li',[_c('plugin-meta-buy-button',{attrs:{\"plugin\":_vm.plugin}})],1),_vm._v(\" \"),(_vm.plugin.documentationUrl)?[_c('li',[_c('c-btn',{attrs:{\"block\":\"\",\"target\":\"_blank\",\"rel\":\"noopener\",\"href\":_vm.plugin.documentationUrl,\"title\":_vm.plugin.name + ' Documentation'}},[_c('c-icon',{staticClass:\"tw-mr-2\",attrs:{\"icon\":\"book\"}}),_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Documentation','app'))+\"\\n\\n \"),_c('svg',{staticClass:\"tw-inline-block tw-w-3 tw-text-grey tw-ml-1\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\",\"stroke\":\"currentColor\"}},[_c('path',{attrs:{\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\",\"d\":\"M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14\"}})])],1)],1)]:_vm._e(),_vm._v(\" \"),_c('li',[_c('c-btn',{attrs:{\"block\":\"\",\"rel\":\"noopener\",\"target\":\"_blank\",\"href\":_vm.plugin.repository,\"title\":_vm.plugin.name + ' Repository'}},[_c('c-icon',{staticClass:\"tw-mr-2\",attrs:{\"icon\":\"github\"}}),_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Repository','app'))+\"\\n\\n \"),_c('svg',{staticClass:\"tw-inline-block tw-w-3 tw-text-grey tw-ml-1\",attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\",\"stroke\":\"currentColor\"}},[_c('path',{attrs:{\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\",\"d\":\"M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14\"}})])],1)],1)],2),_vm._v(\" \"),_c('dl',{staticClass:\"tw-mt-2\"},[_c('install-plugin',{attrs:{\"plugin\":_vm.plugin}}),_vm._v(\" \"),_c('active-installs',{attrs:{\"plugin\":_vm.plugin}}),_vm._v(\" \"),_c('div',{staticClass:\"tw-grid tw-grid-cols-2\"},[_c('meta-stat',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Version','app'))+\"\\n \")]},proxy:true},{key:\"content\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm.plugin.version)+\"\\n \")]},proxy:true}])}),_vm._v(\" \"),_c('meta-stat',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('License','app'))+\"\\n \")]},proxy:true},{key:\"content\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm.licenseLabel)+\"\\n \")]},proxy:true}])})],1),_vm._v(\" \"),_c('div',{class:{\n 'tw-grid tw-grid-cols-2': _vm.plugin.totalReleases,\n }},[_c('meta-stat',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Compatibility','app'))+\"\\n \")]},proxy:true},{key:\"content\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm.plugin.compatibility)+\"\\n \")]},proxy:true}])}),_vm._v(\" \"),(_vm.plugin.totalReleases)?[_c('meta-stat',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Total releases','app'))+\"\\n \")]},proxy:true},{key:\"content\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm.plugin.totalReleases)+\"\\n \")]},proxy:true}],null,false,875130951)})]:_vm._e()],2),_vm._v(\" \"),_c('meta-stat',{scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Last release','app'))+\"\\n \")]},proxy:true},{key:\"content\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"formatDate\")(_vm.plugin.lastUpdate))+\"\\n \")]},proxy:true}])}),_vm._v(\" \"),_c('meta-stat',{staticClass:\"meta-categories\",scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Categories','app'))+\"\\n \")]},proxy:true},{key:\"content\",fn:function(){return [(_vm.pluginCategories.length > 0)?_c('ul',[_vm._l((_vm.pluginCategories),function(category,key){return [_c('li',{key:key,staticClass:\"tw-inline-block tw-mr-2 tw-my-1.5\"},[_c('router-link',{key:key,staticClass:\"tw-px-4 tw-py-1.5 tw-text-xs tw-font-medium tw-rounded-full tw-cursor-pointer hover:tw-no-underline\",class:{\n 'tw-bg-blue-50 hover:tw-bg-blue-600': true,\n 'hover:tw-text-white': true,\n },attrs:{\"to\":'/categories/' + category.id,\"title\":category.title + ' plugins for Craft CMS'}},[_vm._v(\"\\n \"+_vm._s(category.title)+\"\\n \")])],1)]})],2):_vm._e()]},proxy:true}])}),_vm._v(\" \"),_c('github-activity',{attrs:{\"plugin\":_vm.plugin}}),_vm._v(\" \"),_c('ul',{staticClass:\"tw-list-reset tw-space-y-2 tw-mt-8\"},[_c('li',[_c('c-btn',{attrs:{\"kind\":\"danger\",\"href\":'mailto:issues@craftcms.com?subject=' +\n encodeURIComponent('Issue with ' + _vm.plugin.name) +\n '&body=' +\n encodeURIComponent(\n 'I would like to report the following issue with ' +\n _vm.plugin.name +\n ' (https://plugins.craftcms.com/' +\n _vm.plugin.handle +\n '):\\n\\n'\n )}},[_c('c-icon',{staticClass:\"tw-mr-1.5\",attrs:{\"icon\":\"flag\",\"set\":\"solid\"}}),_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Report plugin','app'))+\"\\n \")],1)],1)])],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./PluginLayout.vue?vue&type=template&id=3a80e9cd&\"\nimport script from \"./PluginLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginLayout.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginLayout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PluginLayout.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"plugin-layout\"},[(_vm.plugin)?[_c('div',{ref:\"pluginDetailsHeader\",staticClass:\"plugin-details-header tw-mt-0\"},[(_vm.plugin)?[_c('div',{staticClass:\"ps-container tw-pb-0\"},[_c('div',{staticClass:\"description tw-flex\"},[_c('div',{staticClass:\"icon tw-w-28\"},[(_vm.plugin.iconUrl)?_c('img',{attrs:{\"alt\":_vm.plugin.name + ' icon',\"src\":_vm.plugin.iconUrl}}):_c('img',{attrs:{\"alt\":\"Default plugin icon\",\"src\":_vm.defaultPluginSvg}})]),_vm._v(\" \"),_c('div',{staticClass:\"name tw-ml-8 tw-self-center\"},[_c('h1',{staticClass:\"self-center tw-pb-0 tw-border-b-0 tw-mt-0 tw-mb-1 align-middle\"},[_vm._v(\"\\n \"+_vm._s(_vm.plugin.name)+\"\\n \")]),_vm._v(\" \"),_c('div',{staticClass:\"developer tw-flex tw-items-center\"},[_c('router-link',{attrs:{\"to\":'/developer/' + _vm.plugin.developerId,\"title\":_vm.plugin.developerName}},[_vm._v(\"\\n \"+_vm._s(_vm.plugin.developerName)+\"\\n \")]),_vm._v(\" \"),(_vm.plugin.developerPartner)?[_c('partner-badge',{staticClass:\"tw-ml-2\",attrs:{\"kind\":\"craft\"}})]:_vm._e()],2)])]),_vm._v(\" \"),_c('div',{staticClass:\"tabs tw-mt-6 tw-border-b tw-border-solid tw-border-gray-200\"},[_c('ul',{staticClass:\"tw--mb-px tw-flex tw-space-x-6\"},_vm._l((_vm.tabs),function(tab,tabKey){return _c('li',{key:tabKey},[_c('router-link',{class:{\n 'tw-inline-block tw-px-1 tw-py-3 tw-border-solid tw-border-b-2 tw-text-opacity-75 hover:tw-text-opacity-100 hover:tw-no-underline': true,\n 'tw-border-transparent hover:tw-border-separator hover:tw-border-gray-200 tw-text-gray-500':\n _vm.$route.path !==\n '/' + _vm.plugin.handle + (tab.slug ? '/' + tab.slug : ''),\n 'tw-text-blue-600 tw-border-blue-600 tw-text-opacity-100':\n _vm.$route.path ===\n '/' + _vm.plugin.handle + (tab.slug ? '/' + tab.slug : ''),\n },attrs:{\"to\":'/' + _vm.plugin.handle + (tab.slug ? '/' + tab.slug : '')}},[_vm._v(\"\\n \"+_vm._s(tab.name)+\"\\n \")])],1)}),0)])])]:_vm._e()],2),_vm._v(\" \"),_c('div',{staticClass:\"ps-container tw-py-8\"},[_vm._t(\"default\")],2)]:[_c('div',{staticClass:\"ps-container tw-py-8\"},[_c('c-spinner')],1)]],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=22bdf1dc&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('plugin-layout',[_c('div',{staticClass:\"plugin-details\"},[(!_vm.loading && _vm.plugin)?[_c('div',{staticClass:\"plugin-details-body\"},[(!_vm.loading)?[(_vm.plugin.abandoned)?[_c('div',{staticClass:\"error tw-mb-6 tw-px-4 tw-py-3 tw-rounded tw-border tw-border-solid tw-border-red-500 tw-flex tw-flex-nowrap tw-text-base tw-items-center\"},[_c('c-icon',{staticClass:\"tw-w-8 tw-h-8 tw-mr-2\",attrs:{\"icon\":\"alert\"}}),_vm._v(\" \"),_c('div',{staticClass:\"tw-flex-1 tw-mb-0\"},[_c('strong',[_vm._v(_vm._s(_vm._f(\"t\")('This plugin is no longer maintained.','app'))+\"\\n \")]),_vm._v(\" \"),(_vm.recommendedLabel)?_c('span',{domProps:{\"innerHTML\":_vm._s(_vm.recommendedLabel)}}):_vm._e()])],1)]:_vm._e(),_vm._v(\" \"),(_vm.plugin.thumbnailUrls.length)?[_c('div',{staticClass:\"tw-border-b tw-border-solid tw-border-gray-200 tw-mb-8\"},[_c('plugin-screenshots',{attrs:{\"thumbnails\":_vm.plugin.thumbnailUrls,\"images\":_vm.plugin.screenshotUrls}})],1)]:_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"xl:tw-flex\"},[_c('div',{staticClass:\"xl:tw-flex-1 xl:tw-pr-8 xl:tw-mr-4\"},[(_vm.longDescription)?_c('div',{staticClass:\"readable\",domProps:{\"innerHTML\":_vm._s(_vm.longDescription)}}):(_vm.plugin.shortDescription)?_c('div',{staticClass:\"readable\",domProps:{\"innerHTML\":_vm._s(_vm.plugin.shortDescription)}}):_c('p',[_vm._v(\"No description.\")])]),_vm._v(\" \"),_c('div',{staticClass:\"xl:tw-ml-4 xl:tw-w-60 tw-mt-8 xl:tw-mt-0\"},[_c('plugin-meta',{attrs:{\"plugin\":_vm.plugin}})],1)]),_vm._v(\" \"),(_vm.licenseMismatched)?[_c('hr'),_vm._v(\" \"),_c('div',{staticClass:\"tw-py-8\"},[_c('div',{staticClass:\"tw-mx-auto tw-max-w-sm tw-px-8\"},[_c('div',{staticClass:\"tw-flex items-center\"},[_c('svg',{staticClass:\"tw-text-blue-600 tw-fill-current tw-w-8 tw-h-8 tw-mr-4 tw-flex tw-items-center tw-shrink-0\",attrs:{\"version\":\"1.1\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"x\":\"0px\",\"y\":\"0px\",\"viewBox\":\"0 0 256 448\",\"xml:space\":\"preserve\"}},[_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M184,144c0,4.2-3.8,8-8,8s-8-3.8-8-8c0-17.2-26.8-24-40-24c-4.2,0-8-3.8-8-8s3.8-8,8-8C151.2,104,184,116.2,184,144z\\n M224,144c0-50-50.8-80-96-80s-96,30-96,80c0,16,6.5,32.8,17,45c4.8,5.5,10.2,10.8,15.2,16.5C82,226.8,97,251.8,99.5,280h57\\n c2.5-28.2,17.5-53.2,35.2-74.5c5-5.8,10.5-11,15.2-16.5C217.5,176.8,224,160,224,144z M256,144c0,25.8-8.5,48-25.8,67\\n s-40,45.8-42,72.5c7.2,4.2,11.8,12.2,11.8,20.5c0,6-2.2,11.8-6.2,16c4,4.2,6.2,10,6.2,16c0,8.2-4.2,15.8-11.2,20.2\\n c2,3.5,3.2,7.8,3.2,11.8c0,16.2-12.8,24-27.2,24c-6.5,14.5-21,24-36.8,24s-30.2-9.5-36.8-24c-14.5,0-27.2-7.8-27.2-24\\n c0-4,1.2-8.2,3.2-11.8c-7-4.5-11.2-12-11.2-20.2c0-6,2.2-11.8,6.2-16c-4-4.2-6.2-10-6.2-16c0-8.2,4.5-16.2,11.8-20.5\\n c-2-26.8-24.8-53.5-42-72.5S0,169.8,0,144C0,76,64.8,32,128,32S256,76,256,144z\"}})]),_vm._v(\" \"),_c('div',[_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.licenseMismatchedMessage)}})])])])])]:_vm._e()]:[_c('c-spinner')]],2)]:[_c('c-spinner')]],2)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./PluginEditions.vue?vue&type=template&id=8eced858&\"\nimport script from \"./PluginEditions.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginEditions.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"plugin-editions\",class:{\n 'tw-py-6': true,\n 'md:tw-flex md:tw--mx-4 md:tw-justify-center': true,\n }},_vm._l((_vm.plugin.editions),function(edition,key){return _c('plugin-edition',{key:key,staticClass:\"md:tw-flex-1 md:tw-mx-4 md:tw-max-w-xs\",attrs:{\"plugin\":_vm.plugin,\"edition\":edition}})}),1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./editions.vue?vue&type=template&id=32f294e0&\"\nimport script from \"./editions.vue?vue&type=script&lang=js&\"\nexport * from \"./editions.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./editions.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./editions.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('plugin-layout',[_c('div',[_c('plugin-editions',{attrs:{\"plugin\":_vm.plugin}})],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChangelogRelease.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChangelogRelease.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","\n\n\n","import { render, staticRenderFns } from \"./ChangelogRelease.vue?vue&type=template&id=22de0ed4&\"\nimport script from \"./ChangelogRelease.vue?vue&type=script&lang=js&\"\nexport * from \"./ChangelogRelease.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ChangelogRelease.vue?vue&type=style&index=0&id=22de0ed4&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.release)?_c('div',{staticClass:\"changelog-release\"},[_c('div',{staticClass:\"version\"},[_c('a',{staticClass:\"anchor\",attrs:{\"href\":'#' + _vm.release.version}},[_c('c-icon',{attrs:{\"icon\":\"link\"}})],1),_vm._v(\" \"),_c('h2',{attrs:{\"id\":_vm.release.version}},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Version {version}','app', {version: _vm.release.version}))+\"\\n \")]),_vm._v(\" \"),_c('div',{staticClass:\"date\"},[_vm._v(_vm._s(_vm.date))]),_vm._v(\" \"),(_vm.release.critical)?_c('div',{staticClass:\"critical\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Critical','app'))+\"\\n \")]):_vm._e()]),_vm._v(\" \"),_c('div',{staticClass:\"details readable\",domProps:{\"innerHTML\":_vm._s(_vm.release.notes)}})]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./changelog.vue?vue&type=template&id=0a30d8b3&\"\nimport script from \"./changelog.vue?vue&type=script&lang=js&\"\nexport * from \"./changelog.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./changelog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./changelog.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.plugin)?_c('plugin-layout',[(_vm.loading)?[_c('c-spinner',{staticClass:\"tw-mt-4\"})]:[_c('div',{staticClass:\"releases\"},[_vm._l((_vm.pluginChangelog),function(release,key){return [_c('changelog-release',{key:key,attrs:{\"release\":release}})]})],2)]],2):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Vue from 'vue';\nimport VueRouter from 'vue-router';\nimport Index from '../pages/index';\nimport CategoriesId from '../pages/categories/_id';\nimport UpgradeCraft from '../pages/upgrade-craft';\nimport DeveloperId from '../pages/developer/_id';\nimport FeaturedHandle from '../pages/featured/_handle';\nimport BuyPlugin from '../pages/buy/_plugin';\nimport BuyAllTrials from '../pages/buy-all-trials';\nimport Tests from '../pages/tests';\nimport NotFound from '../pages/_not-found';\nimport Search from '../pages/search';\nimport PluginsHandle from '../pages/_handle';\nimport PluginsHandleEditions from '../pages/_handle/editions';\nimport PluginsHandleChangelog from '../pages/_handle/changelog';\n\nVue.use(VueRouter);\n\nexport default new VueRouter({\n base: window.pluginStoreAppBaseUrl,\n\n mode: 'history',\n\n scrollBehavior() {\n return {x: 0, y: 0};\n },\n\n routes: [\n {\n path: '/',\n name: 'Index',\n component: Index,\n },\n {\n path: '/categories/:id',\n name: 'CategoriesId',\n component: CategoriesId,\n },\n {\n path: '/upgrade-craft',\n name: 'UpgradeCraft',\n component: UpgradeCraft,\n },\n {\n path: '/developer/:id',\n name: 'DeveloperId',\n component: DeveloperId,\n },\n {\n path: '/featured/:handle',\n name: 'FeaturedHandle',\n component: FeaturedHandle,\n },\n {\n path: '/buy/:plugin',\n name: 'BuyPlugin',\n component: BuyPlugin,\n },\n {\n path: '/buy/:plugin/:edition',\n name: 'BuyPlugin',\n component: BuyPlugin,\n },\n {\n path: '/buy-all-trials',\n name: 'BuyAllTrials',\n component: BuyAllTrials,\n },\n {\n path: '/search',\n name: 'Search',\n component: Search,\n },\n {\n path: '/tests',\n name: 'Tests',\n component: Tests,\n },\n {\n path: '/:handle',\n name: 'PluginsHandle',\n component: PluginsHandle,\n },\n {\n path: '/:handle/editions',\n name: 'PluginsHandleEditions',\n component: PluginsHandleEditions,\n },\n {\n path: '/:handle/changelog',\n name: 'PluginsHandleChangelog',\n component: PluginsHandleChangelog,\n },\n {\n path: '*',\n name: 'NotFound',\n component: NotFound,\n },\n ],\n});\n","import api from '../../api/cart';\nimport pluginStoreApi from '../../api/pluginstore';\nimport licensesMixins from '../../mixins/licenses';\nimport Vue from 'vue';\nimport Vuex from 'vuex';\n\nVue.use(Vuex);\n\n/**\n * State\n */\nconst state = {\n activeTrialPlugins: [],\n cart: null,\n cartPlugins: [],\n selectedExpiryDates: {},\n};\n\n/**\n * Getters\n */\nconst getters = {\n cartItems(state) {\n let cartItems = [];\n\n if (state.cart) {\n const lineItems = state.cart.lineItems;\n\n lineItems.forEach((lineItem) => {\n let cartItem = {};\n\n cartItem.lineItem = lineItem;\n\n if (lineItem.purchasable.type === 'plugin-edition') {\n cartItem.plugin = state.cartPlugins.find(\n (p) => p.handle === lineItem.purchasable.plugin.handle\n );\n }\n\n cartItems.push(cartItem);\n });\n }\n\n return cartItems;\n },\n\n cartItemsData(state) {\n return utils.getCartItemsData(state.cart);\n },\n\n isCmsEditionInCart(state) {\n return (cmsEdition) => {\n if (!state.cart) {\n return false;\n }\n\n return state.cart.lineItems.find(\n (lineItem) =>\n lineItem.purchasable.type === 'cms-edition' &&\n lineItem.purchasable.handle === cmsEdition\n );\n };\n },\n\n isInCart(state) {\n return (plugin, edition) => {\n if (!state.cart) {\n return false;\n }\n\n return state.cart.lineItems.find((lineItem) => {\n if (lineItem.purchasable.pluginId !== plugin.id) {\n return false;\n }\n\n if (edition && lineItem.purchasable.handle !== edition.handle) {\n return false;\n }\n\n return true;\n });\n };\n },\n\n getActiveTrialPluginEdition(state, getters, rootState, rootGetters) {\n return (plugin) => {\n const pluginHandle = plugin.handle;\n const pluginLicenseInfo =\n rootGetters['craft/getPluginLicenseInfo'](pluginHandle);\n const pluginEdition = plugin.editions.find(\n (edition) => edition.handle === pluginLicenseInfo.edition\n );\n\n if (!pluginEdition) {\n return null;\n }\n\n return pluginEdition;\n };\n },\n\n activeTrials(state, getters, rootState, rootGetters) {\n const craftLogo = rootState.craft.craftLogo;\n const cmsEditions = rootState.pluginStore.cmsEditions;\n const licensedEdition = rootState.craft.licensedEdition;\n const CraftEdition = rootState.craft.CraftEdition;\n\n const getPluginLicenseInfo = rootGetters['craft/getPluginLicenseInfo'];\n const getCmsEditionIndex = rootGetters['craft/getCmsEditionIndex'];\n const getPluginEdition = rootGetters['pluginStore/getPluginEdition'];\n\n const trials = [];\n\n // CMS trial\n const cmsProEdition = cmsEditions.find(\n (edition) => edition.handle === 'pro'\n );\n const cmsProEditionIndex = getCmsEditionIndex(cmsProEdition.handle);\n\n if (\n cmsProEdition &&\n licensedEdition < cmsProEditionIndex &&\n licensedEdition < CraftEdition\n ) {\n trials.push({\n type: 'cms-edition',\n name: 'Craft',\n iconUrl: craftLogo,\n editionHandle: 'pro',\n editionName: 'Pro',\n price: cmsProEdition.price,\n navigateTo: '/upgrade-craft',\n showEditionBadge: true,\n });\n }\n\n // Plugin trials\n const plugins = state.activeTrialPlugins;\n\n for (let i = 0; i < plugins.length; i++) {\n const plugin = plugins[i];\n\n // license mismatched\n const pluginLicenseInfo = getPluginLicenseInfo(plugin.handle);\n const licenseMismatched =\n licensesMixins.methods.getLicenseMismatched(pluginLicenseInfo);\n\n // plugin edition\n const activeTrialPluginEdition = getPluginEdition(\n plugin,\n pluginLicenseInfo.edition\n );\n\n if (!activeTrialPluginEdition) {\n continue;\n }\n\n // licensed edition\n const licensedEdition = getPluginEdition(\n plugin,\n pluginLicenseInfo.licensedEdition\n );\n\n // license valid or astray\n const licenseValidOrAstray =\n licensesMixins.methods.getLicenseValidOrAstray(pluginLicenseInfo);\n\n // navigate to\n const navigateTo = '/' + plugin.handle;\n\n // price & discount price\n let discountPrice = null;\n let price = activeTrialPluginEdition.price;\n\n if (\n licensedEdition &&\n licensedEdition.handle !== activeTrialPluginEdition.handle &&\n licensedEdition.price > 0 &&\n licenseValidOrAstray\n ) {\n discountPrice = activeTrialPluginEdition.price - licensedEdition.price;\n }\n\n // show edition badge\n const showEditionBadge =\n activeTrialPluginEdition && plugin.editions.length > 1;\n\n // plugin id\n const pluginId = plugin.id;\n\n // build trial row\n trials.push({\n type: 'plugin-edition',\n name: plugin.name,\n iconUrl: plugin.iconUrl,\n editionHandle: pluginLicenseInfo.edition,\n editionName: activeTrialPluginEdition.name,\n pluginHandle: plugin.handle,\n licenseMismatched,\n discountPrice,\n price,\n navigateTo,\n showEditionBadge,\n pluginId,\n });\n }\n\n return trials;\n },\n\n pendingActiveTrials(state, getters) {\n const activeTrials = getters.activeTrials;\n const cart = state.cart;\n const isCmsEditionInCart = getters.isCmsEditionInCart;\n\n // filter out trials which are already in the cart\n return activeTrials.filter((activeTrial) => {\n switch (activeTrial.type) {\n case 'cms-edition':\n if (isCmsEditionInCart(activeTrial.editionHandle)) {\n return false;\n }\n\n return true;\n case 'plugin-edition':\n return !cart.lineItems.find((item) => {\n return item.purchasable.pluginId == activeTrial.pluginId;\n });\n default:\n return false;\n }\n });\n },\n};\n\n/**\n * Actions\n */\nconst actions = {\n addToCart({state, dispatch, rootGetters}, newItems) {\n return new Promise((resolve, reject) => {\n const cart = JSON.parse(JSON.stringify(state.cart));\n let items = utils.getCartItemsData(cart);\n\n newItems.forEach((newItem) => {\n const alreadyInCart = items.find(\n (item) => item.plugin === newItem.plugin\n );\n\n if (!alreadyInCart) {\n let item = {...newItem};\n item.expiryDate = '1y';\n\n // Set default values\n item.autoRenew = false;\n\n switch (item.type) {\n case 'plugin-edition': {\n const pluginLicenseInfo = rootGetters[\n 'craft/getPluginLicenseInfo'\n ](item.plugin);\n\n // Check that the current plugin license exists and is `valid`\n if (\n pluginLicenseInfo &&\n pluginLicenseInfo.licenseKey &&\n (pluginLicenseInfo.licenseKeyStatus === 'valid' ||\n pluginLicenseInfo.licenseKeyStatus === 'trial')\n ) {\n // Check if the license has issues other than `wrong_edition` or `astray`\n let hasIssues = false;\n\n if (pluginLicenseInfo.licenseIssues.length > 0) {\n pluginLicenseInfo.licenseIssues.forEach((issue) => {\n if (\n issue !== 'wrong_edition' &&\n issue !== 'astray' &&\n issue !== 'no_trials'\n ) {\n hasIssues = true;\n }\n });\n }\n\n // If we don’t have issues for this license, we can attach its key to the item\n if (!hasIssues) {\n item.licenseKey = pluginLicenseInfo.licenseKey;\n }\n }\n\n item.cmsLicenseKey = window.cmsLicenseKey;\n\n break;\n }\n\n case 'cms-edition': {\n item.licenseKey = window.cmsLicenseKey;\n\n break;\n }\n }\n\n items.push(item);\n }\n });\n\n let data = {\n items,\n };\n\n const cartNumber = cart.number;\n\n dispatch('updateCart', {cartNumber, data})\n .then((responseData) => {\n if (typeof responseData.errors !== 'undefined') {\n return reject(responseData);\n }\n\n resolve(responseData);\n })\n .catch((error) => {\n return reject(error);\n });\n });\n },\n\n addAllTrialsToCart({dispatch, getters}) {\n let items = [];\n\n getters.pendingActiveTrials.forEach((activeTrial) => {\n const item = {\n type: activeTrial.type,\n edition: activeTrial.editionHandle,\n };\n\n if (activeTrial.type === 'plugin-edition') {\n item.plugin = activeTrial.pluginHandle;\n }\n\n items.push(item);\n });\n\n return dispatch('addToCart', items);\n },\n\n createCart({dispatch, rootState}) {\n return new Promise((resolve, reject) => {\n const data = {\n email: rootState.craft.currentUser.email,\n };\n\n api\n .createCart(data)\n .then((cartResponseData) => {\n dispatch('updateCartPlugins', {cartResponseData})\n .then(() => {\n dispatch('saveOrderNumber', {\n orderNumber: cartResponseData.cart.number,\n });\n resolve(cartResponseData);\n })\n .catch((error) => {\n reject(error);\n });\n })\n .catch((cartError) => {\n reject(cartError);\n });\n });\n },\n\n getActiveTrials({dispatch}) {\n return new Promise((resolve, reject) => {\n // get cms editions\n dispatch('pluginStore/getCmsEditions', null, {root: true})\n .then(() => {\n // get active trial plugins\n dispatch('getActiveTrialPlugins')\n .then(() => {\n resolve();\n })\n .catch((error) => {\n reject(error);\n });\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getActiveTrialPlugins({commit, rootState, rootGetters}) {\n return new Promise((resolve, reject) => {\n // get plugin license info and find active trial plugin handles\n const pluginHandles = [];\n const pluginLicenseInfo = rootState.craft.pluginLicenseInfo;\n\n for (let pluginHandle in pluginLicenseInfo) {\n if (\n Object.prototype.hasOwnProperty.call(\n pluginLicenseInfo,\n pluginHandle\n ) &&\n pluginLicenseInfo[pluginHandle].isEnabled\n ) {\n pluginHandles.push(pluginHandle);\n }\n }\n\n // request plugins by plugin handle\n pluginStoreApi\n .getPluginsByHandles(pluginHandles)\n .then((responseData) => {\n if (responseData && responseData.error) {\n throw responseData.error;\n }\n\n const data = responseData;\n const plugins = [];\n\n for (let i = 0; i < data.length; i++) {\n const plugin = data[i];\n\n if (!plugin) {\n continue;\n }\n\n const info = pluginLicenseInfo[plugin.handle];\n\n if (!info) {\n continue;\n }\n\n if (info.licenseKey && info.edition === info.licensedEdition) {\n continue;\n }\n\n if (info.edition) {\n const pluginEdition = plugin.editions.find(\n (edition) => edition.handle === info.edition\n );\n\n if (\n pluginEdition &&\n rootGetters['pluginStore/isPluginEditionFree'](pluginEdition)\n ) {\n continue;\n }\n }\n\n if (!rootGetters['craft/isPluginInstalled'](plugin.handle)) {\n continue;\n }\n\n plugins.push(plugin);\n }\n\n commit('updateActiveTrialPlugins', plugins);\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getCart({dispatch}) {\n return new Promise((resolve, reject) => {\n // retrieve the order number\n dispatch('getOrderNumber').then((orderNumber) => {\n if (orderNumber) {\n // get cart by order number\n api\n .getCart(orderNumber)\n .then((cartResponseData) => {\n dispatch('updateCartPlugins', {cartResponseData})\n .then(() => {\n resolve(cartResponseData);\n })\n .catch((error) => {\n reject(error);\n });\n })\n .catch(() => {\n // Cart already completed or has errors? Create a new one.\n dispatch('createCart')\n .then((cartResponseData) => {\n resolve(cartResponseData);\n })\n .catch((cartError) => {\n reject(cartError);\n });\n });\n } else {\n // No order number yet? Create a new cart.\n dispatch('createCart')\n .then((cartResponseData) => {\n resolve(cartResponseData);\n })\n .catch((cartError) => {\n reject(cartError);\n });\n }\n });\n });\n },\n\n getOrderNumber({state}) {\n return new Promise((resolve, reject) => {\n if (state.cart && state.cart.number) {\n const orderNumber = state.cart.number;\n resolve(orderNumber);\n } else {\n api.getOrderNumber(\n (orderNumber) => {\n resolve(orderNumber);\n },\n (response) => {\n reject(response);\n }\n );\n }\n });\n },\n\n removeFromCart({dispatch, state}, lineItemKey) {\n return new Promise((resolve, reject) => {\n const cart = state.cart;\n\n let items = utils.getCartItemsData(cart);\n items.splice(lineItemKey, 1);\n\n let data = {\n items,\n };\n\n const cartNumber = cart.number;\n\n dispatch('updateCart', {cartNumber, data})\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n resetCart({commit, dispatch}) {\n return new Promise((resolve, reject) => {\n commit('resetCart');\n dispatch('resetOrderNumber');\n dispatch('getCart')\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n resetOrderNumber() {\n api.resetOrderNumber();\n },\n\n saveCart({dispatch, state}, data) {\n return new Promise((resolve, reject) => {\n const cart = state.cart;\n const cartNumber = cart.number;\n\n dispatch('updateCart', {cartNumber, data})\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n saveOrderNumber(context, {orderNumber}) {\n api.saveOrderNumber(orderNumber);\n },\n\n savePluginLicenseKeys({rootGetters}, cart) {\n return new Promise((resolve, reject) => {\n let pluginLicenseKeys = [];\n\n cart.lineItems.forEach((lineItem) => {\n if (lineItem.purchasable.type === 'plugin-edition') {\n if (\n rootGetters['craft/isPluginInstalled'](\n lineItem.purchasable.plugin.handle\n )\n ) {\n let licenseKey = lineItem.options.licenseKey;\n\n if (licenseKey.substring(0, 4) === 'new:') {\n licenseKey = licenseKey.substring(4);\n }\n\n pluginLicenseKeys.push({\n handle: lineItem.purchasable.plugin.handle,\n key: licenseKey,\n });\n }\n }\n });\n\n const data = {\n pluginLicenseKeys,\n };\n\n api\n .savePluginLicenseKeys(data)\n .then((response) => {\n resolve(response);\n })\n .catch((error) => {\n reject(error.response);\n });\n });\n },\n\n updateCart({dispatch}, {cartNumber, data}) {\n return new Promise((resolve, reject) => {\n api\n .updateCart(cartNumber, data)\n .then((cartResponseData) => {\n if (cartResponseData && cartResponseData.errors) {\n reject({response: cartResponseData});\n return null;\n }\n\n dispatch('updateCartPlugins', {cartResponseData})\n .then(() => {\n resolve(cartResponseData);\n })\n .catch((error) => {\n reject(error);\n });\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n updateCartPlugins({commit}, {cartResponseData}) {\n return new Promise((resolve, reject) => {\n const cart = cartResponseData.cart;\n\n const cartItemPluginIds = [];\n\n cart.lineItems.forEach((lineItem) => {\n if (lineItem.purchasable.type === 'plugin-edition') {\n cartItemPluginIds.push(lineItem.purchasable.plugin.id);\n }\n });\n\n if (cartItemPluginIds.length > 0) {\n pluginStoreApi\n .getPluginsByIds(cartItemPluginIds)\n .then((pluginsResponseData) => {\n commit('updateCart', {cartResponseData});\n commit('updateCartPlugins', {pluginsResponseData});\n resolve(pluginsResponseData);\n })\n .catch((error) => {\n reject(error);\n });\n } else {\n const pluginsResponseData = [];\n commit('updateCart', {cartResponseData});\n commit('updateCartPlugins', {pluginsResponseData});\n resolve(pluginsResponseData);\n }\n });\n },\n\n updateItem({dispatch, state}, {itemKey, item}) {\n return new Promise((resolve, reject) => {\n const cart = state.cart;\n const cartNumber = cart.number;\n\n let items = utils.getCartItemsData(cart);\n\n items[itemKey] = item;\n\n let data = {\n items,\n };\n\n dispatch('updateCart', {cartNumber, data})\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n};\n\n/**\n * Mutations\n */\nconst mutations = {\n resetCart(state) {\n state.cart = null;\n },\n\n updateActiveTrialPlugins(state, plugins) {\n state.activeTrialPlugins = plugins;\n },\n\n updateCart(state, {cartResponseData}) {\n state.cart = cartResponseData.cart;\n\n const selectedExpiryDates = {};\n state.cart.lineItems.forEach((lineItem, key) => {\n selectedExpiryDates[key] = lineItem.options.expiryDate;\n });\n\n state.selectedExpiryDates = selectedExpiryDates;\n },\n\n updateCartPlugins(state, {pluginsResponseData}) {\n state.cartPlugins = pluginsResponseData;\n },\n\n updateSelectedExpiryDates(state, selectedExpiryDates) {\n state.selectedExpiryDates = selectedExpiryDates;\n },\n};\n\n/**\n * Utils\n */\nconst utils = {\n getCartData(cart) {\n let data = {\n email: cart.email,\n billingAddress: {\n firstName: cart.billingAddress.firstName,\n lastName: cart.billingAddress.lastName,\n },\n items: [],\n };\n\n data.items = this.getCartItemsData(cart);\n\n return data;\n },\n\n getCartItemsData(cart) {\n if (!cart) {\n return [];\n }\n\n let lineItems = [];\n for (let i = 0; i < cart.lineItems.length; i++) {\n let lineItem = cart.lineItems[i];\n\n switch (lineItem.purchasable.type) {\n case 'plugin-edition': {\n const item = {\n type: lineItem.purchasable.type,\n plugin: lineItem.purchasable.plugin.handle,\n edition: lineItem.purchasable.handle,\n cmsLicenseKey: window.cmsLicenseKey,\n expiryDate: lineItem.options.expiryDate,\n autoRenew: lineItem.options.autoRenew,\n };\n\n let licenseKey = lineItem.options.licenseKey;\n\n if (licenseKey && licenseKey.substring(0, 3) !== 'new') {\n item.licenseKey = licenseKey;\n }\n\n lineItems.push(item);\n\n break;\n }\n\n case 'cms-edition': {\n const item = {\n type: lineItem.purchasable.type,\n edition: lineItem.purchasable.handle,\n expiryDate: lineItem.options.expiryDate,\n autoRenew: lineItem.options.autoRenew,\n };\n\n let licenseKey = lineItem.options.licenseKey;\n\n if (licenseKey && licenseKey.substring(0, 3) !== 'new') {\n item.licenseKey = licenseKey;\n }\n\n lineItems.push(item);\n\n break;\n }\n }\n }\n\n return lineItems;\n },\n};\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations,\n};\n","/* global Craft */\n\nimport axios from 'axios';\n\nexport default {\n /**\n * Create cart.\n */\n createCart(data) {\n return new Promise((resolve, reject) => {\n Craft.sendApiRequest('POST', 'carts', {\n data,\n })\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n /**\n * Get cart.\n */\n getCart(orderNumber) {\n return new Promise((resolve, reject) => {\n Craft.sendApiRequest('GET', 'carts/' + orderNumber)\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n /**\n * Get order number.\n */\n getOrderNumber(cb) {\n const orderNumber = localStorage.getItem('orderNumber');\n\n return cb(orderNumber);\n },\n\n /**\n * Reset order number.\n */\n resetOrderNumber() {\n localStorage.removeItem('orderNumber');\n },\n\n /**\n * Save order number.\n */\n saveOrderNumber(orderNumber) {\n localStorage.setItem('orderNumber', orderNumber);\n },\n\n /**\n * Save plugin license keys\n */\n savePluginLicenseKeys(data) {\n return axios.post(\n Craft.getActionUrl('plugin-store/save-plugin-license-keys'),\n data,\n {\n headers: {\n 'X-CSRF-Token': Craft.csrfTokenValue,\n },\n }\n );\n },\n\n /**\n * Update cart.\n */\n updateCart(orderNumber, data) {\n return new Promise((resolve, reject) => {\n Craft.sendApiRequest('POST', 'carts/' + orderNumber, {data})\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n};\n","import {getElementIndexParams} from '../utils/elementIndex';\n\nexport default {\n searchDevelopers({searchQuery, developerIndexParams}) {\n return new Promise((resolve) => {\n const params = getElementIndexParams(developerIndexParams);\n params.searchQuery = searchQuery;\n\n // TODO: replace mocked response by real one\n\n const getDevelopersFixture = () => {\n const nbDevelopers = 24;\n const developers = [];\n\n for (let i = 0; i < nbDevelopers; i++) {\n developers[i] = {\n name: 'Developer ' + (i + 1),\n };\n }\n\n return developers;\n };\n\n const developers = getDevelopersFixture();\n\n resolve({\n data: {\n developers,\n },\n });\n });\n },\n};\n","const getElementIndexParams = ({perPage, page, orderBy, direction}) => {\n if (!perPage) {\n perPage = 96;\n }\n\n if (!page) {\n page = 1;\n }\n\n return {\n perPage,\n page,\n orderBy,\n direction,\n };\n};\n\nexport {getElementIndexParams};\n","import api from '../../api/developerIndex';\n\n/**\n * State\n */\nconst state = {\n developersResponseData: null,\n developers: [],\n};\n\n/**\n * Getters\n */\nconst getters = {\n hasMore(state) {\n return (\n state.developersResponseData.currentPage <\n state.developersResponseData.total\n );\n },\n\n getDeveloperIndexParams(state, getters, rootState) {\n return (context) => {\n if (!context) {\n context = {};\n }\n\n const sortOptions = rootState.pluginStore.sortOptions;\n const firstOptionKey = Object.keys(sortOptions)[0];\n\n const perPage = context.perPage ? context.perPage : null;\n const page = context.page ? context.page : 1;\n const orderBy = context.orderBy ? context.orderBy : firstOptionKey;\n const direction = context.direction\n ? context.direction\n : rootState.pluginStore.sortOptions[firstOptionKey];\n\n return {\n perPage,\n page,\n orderBy,\n direction,\n };\n };\n },\n};\n\n/**\n * Actions\n */\nconst actions = {\n cancelRequests() {\n return new Promise((resolve) => {\n api.cancelRequests();\n resolve();\n });\n },\n\n searchDevelopers({dispatch, getters}, context) {\n return new Promise((resolve, reject) => {\n const developerIndexParams = getters['getDeveloperIndexParams'](context);\n\n api\n .searchDevelopers({\n searchQuery: context.searchQuery,\n developerIndexParams,\n })\n .then((response) => {\n if (response.data && response.data.error) {\n reject(response.data.error);\n }\n\n dispatch('updateDeveloperIndex', {context, response}).then(() => {\n resolve(response);\n });\n })\n .catch((thrown) => {\n if (thrown.response && thrown.response.data) {\n if (thrown.response.data.message) {\n reject(thrown.response.data.message);\n } else if (thrown.response.data.error) {\n reject(thrown.response.data.error);\n } else {\n reject(thrown.response.data);\n }\n } else {\n reject(thrown);\n }\n });\n });\n },\n\n updateDeveloperIndex({commit}, {context, response}) {\n return new Promise((resolve) => {\n commit('updateDevelopersResponseData', response);\n\n if (context.appendData && context.appendData === true) {\n commit('appendDevelopers', response.data.developers);\n resolve();\n } else {\n setTimeout(function () {\n commit('updateDevelopers', response.data.developers);\n resolve();\n }, 1);\n }\n });\n },\n};\n\n/**\n * Mutations\n */\nconst mutations = {\n updateDevelopers(state, developers) {\n state.developers = developers;\n },\n\n updateDevelopersResponseData(state, response) {\n state.developersResponseData = response.data;\n },\n\n appendDevelopers(state, developers) {\n state.developers = [...state.developers, ...developers];\n },\n};\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations,\n};\n","import api from '../../api/pluginstore';\n\n/**\n * State\n */\nconst state = {\n categories: [],\n cmsEditions: null,\n developer: null,\n expiryDateOptions: [],\n featuredPlugins: [],\n featuredSection: null,\n featuredSections: [],\n plugin: null,\n pluginChangelog: null,\n pluginChangelogPluginId: null,\n\n // plugin index\n plugins: [],\n};\n\n/**\n * Getters\n */\nconst getters = {\n getCategoryById(state) {\n return (id) => {\n return state.categories.find((c) => c.id == id);\n };\n },\n\n getPluginEdition() {\n return (plugin, editionHandle) => {\n return plugin.editions.find(\n (edition) => edition.handle === editionHandle\n );\n };\n },\n\n getPluginEditions() {\n return (plugin) => {\n return plugin.editions;\n };\n },\n\n getPluginIndexParams() {\n return (context) => {\n const perPage = context.perPage ? context.perPage : null;\n const page = context.page ? context.page : 1;\n const orderBy = context.orderBy;\n const direction = context.direction;\n\n return {\n perPage,\n page,\n orderBy,\n direction,\n };\n };\n },\n\n isPluginEditionFree() {\n return (edition) => {\n return edition.price === null;\n };\n },\n\n isCommercial() {\n return (plugin) => {\n return !!plugin.editions.find((edition) => edition.price > 0);\n };\n },\n};\n\n/**\n * Actions\n */\nconst actions = {\n cancelRequests() {\n return api.cancelRequests();\n },\n\n getCoreData({commit}) {\n return new Promise((resolve, reject) => {\n api\n .getCoreData()\n .then((responseData) => {\n commit('updateCoreData', {responseData});\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getCmsEditions({commit}, payload) {\n const force = payload && payload.force ? payload.force : false;\n\n return new Promise((resolve, reject) => {\n if (state.cmsEditions && force !== true) {\n resolve();\n return;\n }\n\n api\n .getCmsEditions()\n .then((responseData) => {\n commit('updateCmsEditions', {responseData});\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getDeveloper({commit}, developerId) {\n return api.getDeveloper(developerId).then((responseData) => {\n commit('updateDeveloper', responseData);\n });\n },\n\n getFeaturedSectionByHandle({commit}, featuredSectionHandle) {\n return api\n .getFeaturedSectionByHandle(featuredSectionHandle)\n .then((responseData) => {\n commit('updateFeaturedSection', responseData);\n });\n },\n\n getFeaturedSections({commit}) {\n return api.getFeaturedSections().then((responseData) => {\n commit('updateFeaturedSections', responseData);\n });\n },\n\n getPluginChangelog({commit}, pluginId) {\n return new Promise((resolve, reject) => {\n api\n .getPluginChangelog(pluginId)\n .then((responseData) => {\n commit('updatePluginChangelog', {\n pluginId,\n changelog: responseData,\n });\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getPluginDetails({commit}, pluginId) {\n return new Promise((resolve, reject) => {\n api\n .getPluginDetails(pluginId)\n .then((responseData) => {\n commit('updatePluginDetails', responseData);\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getPluginDetailsByHandle({commit}, pluginHandle) {\n return api.getPluginDetailsByHandle(pluginHandle).then((responseData) => {\n commit('updatePluginDetails', responseData);\n });\n },\n\n getPluginsByCategory({getters, dispatch}, context) {\n return new Promise((resolve, reject) => {\n const pluginIndexParams = getters['getPluginIndexParams'](context);\n\n api\n .getPluginsByCategory(context.categoryId, pluginIndexParams)\n .then((responseData) => {\n dispatch('updatePluginIndex', {context, responseData});\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getPluginsByDeveloperId({getters, dispatch}, context) {\n return new Promise((resolve, reject) => {\n const pluginIndexParams = getters['getPluginIndexParams'](context);\n\n api\n .getPluginsByDeveloperId(context.developerId, pluginIndexParams)\n .then((responseData) => {\n dispatch('updatePluginIndex', {context, responseData});\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getPluginsByFeaturedSectionHandle({getters, dispatch}, context) {\n return new Promise((resolve, reject) => {\n const pluginIndexParams = getters['getPluginIndexParams'](context);\n\n return api\n .getPluginsByFeaturedSectionHandle(\n context.featuredSectionHandle,\n pluginIndexParams\n )\n .then((responseData) => {\n dispatch('updatePluginIndex', {context, responseData});\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n searchPlugins({getters, dispatch}, context) {\n return new Promise((resolve, reject) => {\n const pluginIndexParams = getters['getPluginIndexParams'](context);\n\n api\n .searchPlugins(context.searchQuery, pluginIndexParams)\n .then((responseData) => {\n dispatch('updatePluginIndex', {context, responseData});\n resolve(responseData);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n updatePluginIndex({commit}, {context, responseData}) {\n if (context.appendData && context.appendData === true) {\n commit('appendPlugins', responseData.plugins);\n } else {\n commit('updatePlugins', responseData.plugins);\n }\n },\n};\n\n/**\n * Mutations\n */\nconst mutations = {\n appendPlugins(state, plugins) {\n state.plugins = [...state.plugins, ...plugins];\n },\n\n updateCoreData(state, {responseData}) {\n state.categories = responseData.categories;\n state.expiryDateOptions = responseData.expiryDateOptions;\n state.sortOptions = responseData.sortOptions;\n },\n\n updateCmsEditions(state, {responseData}) {\n state.cmsEditions = responseData.editions;\n },\n\n updateDeveloper(state, developer) {\n state.developer = developer;\n },\n\n updateFeaturedSection(state, featuredSection) {\n state.featuredSection = featuredSection;\n },\n\n updateFeaturedSections(state, featuredSections) {\n state.featuredSections = featuredSections;\n },\n\n updatePluginChangelog(state, {pluginId, changelog}) {\n state.pluginChangelogPluginId = pluginId;\n state.pluginChangelog = changelog;\n },\n\n updatePluginDetails(state, pluginDetails) {\n state.plugin = pluginDetails;\n },\n\n updatePlugins(state, plugins) {\n state.plugins = plugins;\n },\n};\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations,\n};\n","import api from '../../api/craft';\n\n/**\n * State\n */\nconst state = {\n canTestEditions: null,\n countries: null,\n craftId: null,\n craftLogo: null,\n currentUser: null,\n licensedEdition: null,\n pluginLicenseInfo: {},\n\n // Craft editions\n CraftEdition: null,\n CraftPro: null,\n CraftSolo: null,\n};\n\n/**\n * Getters\n */\nconst getters = {\n getCmsEditionFeatures() {\n return (editionHandle) => {\n const features = {\n solo: [\n {\n name: 'Ultra-flexible content modeling',\n description:\n 'Define custom content types, fields, and relations needed to perfectly contain your unique content requirements.',\n },\n {\n name: 'Powerful front-end tools',\n description:\n 'Develop custom front-end templates with Twig, or use Craft as a headless CMS.',\n },\n {\n name: 'Multi-Site',\n description:\n 'Run multiple related sites from a single installation, with shared content and user accounts.',\n },\n {\n name: 'Localization',\n description:\n 'Cater to distinct audiences from around the world with Craft’s best-in-class localization capabilities.',\n },\n {\n name: 'Single admin account',\n description:\n 'The Solo edition is limited to a single admin account.',\n },\n ],\n pro: [\n {\n name: 'Unlimited user accounts',\n description:\n 'Create unlimited user accounts, user groups, user permissions, and public user registration.',\n },\n {\n name: 'Enhanced content previewing',\n description:\n 'Preview your content from multiple targets, including single-page applications.',\n },\n {\n name: 'GraphQL API',\n description:\n 'Make your content available to other applications with a self-generating GraphQL API.',\n },\n {\n name: 'System branding',\n description: 'Personalize the control panel for your brand.',\n },\n {\n name: 'Basic developer support',\n description:\n 'Get developer-to-developer support right from the Craft core development team.',\n },\n ],\n };\n\n if (!features[editionHandle]) {\n return null;\n }\n\n return features[editionHandle];\n };\n },\n\n getPluginLicenseInfo(state) {\n return (pluginHandle) => {\n if (!state.pluginLicenseInfo) {\n return null;\n }\n\n if (!state.pluginLicenseInfo[pluginHandle]) {\n return null;\n }\n\n return state.pluginLicenseInfo[pluginHandle];\n };\n },\n\n isPluginInstalled(state) {\n return (pluginHandle) => {\n if (!state.pluginLicenseInfo) {\n return false;\n }\n\n if (!state.pluginLicenseInfo[pluginHandle]) {\n return false;\n }\n\n if (!state.pluginLicenseInfo[pluginHandle].isInstalled) {\n return false;\n }\n\n return true;\n };\n },\n\n getCmsEditionIndex(state) {\n return (editionHandle) => {\n switch (editionHandle) {\n case 'solo':\n return state.CraftSolo;\n case 'pro':\n return state.CraftPro;\n default:\n return null;\n }\n };\n },\n};\n\n/**\n * Actions\n */\nconst actions = {\n cancelRequests() {\n return api.cancelRequests();\n },\n\n getCraftData({commit}) {\n return new Promise((resolve, reject) => {\n api\n .getCraftData()\n .then((response) => {\n commit('updateCraftData', {response});\n api\n .getCountries()\n .then((responseData) => {\n commit('updateCountries', {responseData});\n resolve();\n })\n .catch((error) => {\n reject(error);\n });\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getCraftIdData({commit}, {accessToken}) {\n return new Promise((resolve, reject) => {\n api\n .getCraftIdData({accessToken})\n .then((responseData) => {\n commit('updateCraftIdData', {responseData});\n resolve();\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n getPluginLicenseInfo({commit}) {\n return new Promise((resolve, reject) => {\n api\n .getPluginLicenseInfo()\n .then((response) => {\n commit('updatePluginLicenseInfo', {response});\n resolve(response);\n })\n .catch((error) => {\n reject(error);\n });\n });\n },\n\n switchPluginEdition({dispatch}, {pluginHandle, edition}) {\n return new Promise((resolve, reject) => {\n api\n .switchPluginEdition(pluginHandle, edition)\n .then((switchPluginEditionResponse) => {\n dispatch('getPluginLicenseInfo')\n .then((getPluginLicenseInfoResponse) => {\n resolve({\n switchPluginEditionResponse,\n getPluginLicenseInfoResponse,\n });\n })\n .catch((response) => reject(response));\n })\n .catch((response) => reject(response));\n });\n },\n\n tryEdition(context, edition) {\n return new Promise((resolve, reject) => {\n api\n .tryEdition(edition)\n .then((response) => {\n resolve(response);\n })\n .catch((response) => {\n reject(response);\n });\n });\n },\n};\n\n/**\n * Mutations\n */\nconst mutations = {\n updateCraftData(state, {response}) {\n state.canTestEditions = response.data.canTestEditions;\n state.craftLogo = response.data.craftLogo;\n state.currentUser = response.data.currentUser;\n state.licensedEdition = response.data.licensedEdition;\n\n // Craft editions\n state.CraftEdition = response.data.CraftEdition;\n state.CraftPro = response.data.CraftPro;\n state.CraftSolo = response.data.CraftSolo;\n },\n\n updateCraftIdData(state, {responseData}) {\n state.craftId = responseData;\n },\n\n updateCountries(state, {responseData}) {\n state.countries = responseData.countries;\n },\n\n updateCraftId(state, craftId) {\n state.craftId = craftId;\n },\n\n updatePluginLicenseInfo(state, {response}) {\n state.pluginLicenseInfo = response.data;\n },\n};\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations,\n};\n","/* global Craft */\n\nimport axios from 'axios';\nimport api from '../utils/api';\n\nexport default {\n /**\n * Cancel requests.\n */\n cancelRequests() {\n api.cancelRequests();\n },\n\n /**\n * Get Craft data.\n */\n getCraftData() {\n return new Promise((resolve, reject) => {\n api\n .sendActionRequest('GET', 'plugin-store/craft-data')\n .then((response) => {\n resolve(response);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get Craft ID data.\n */\n getCraftIdData({accessToken}) {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'account', {\n headers: {\n Authorization: 'Bearer ' + accessToken,\n },\n })\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get countries.\n */\n getCountries() {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'countries')\n .then((responseData) => {\n resolve(responseData);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Get Plugin License Info.\n */\n getPluginLicenseInfo() {\n return new Promise((resolve, reject) => {\n api\n .sendApiRequest('GET', 'cms-licenses', {\n params: {\n include: 'plugins',\n },\n })\n .then((response) => {\n api\n .sendActionRequest('POST', 'app/get-plugin-license-info', {\n data: {\n pluginLicenses: response.license.pluginLicenses || [],\n },\n headers: {\n 'X-CSRF-Token': Craft.csrfTokenValue,\n },\n })\n .then((response) => {\n resolve(response);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n });\n },\n\n /**\n * Switch plugin edition.\n */\n switchPluginEdition(pluginHandle, edition) {\n return new Promise((resolve, reject) => {\n const data = 'pluginHandle=' + pluginHandle + '&edition=' + edition;\n\n api\n .sendActionRequest('POST', 'plugins/switch-edition', {\n data,\n headers: {\n 'X-CSRF-Token': Craft.csrfTokenValue,\n },\n })\n .then((response) => {\n Craft.clearCachedApiHeaders();\n resolve(response);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n\n /**\n * Try edition.\n */\n tryEdition(edition) {\n return new Promise((resolve, reject) => {\n api\n .sendActionRequest('POST', 'app/try-edition', {\n data: 'edition=' + edition,\n headers: {\n 'X-CSRF-Token': Craft.csrfTokenValue,\n },\n })\n .then((response) => {\n Craft.clearCachedApiHeaders();\n resolve(response);\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // request cancelled\n } else {\n reject(error);\n }\n });\n });\n },\n};\n","import Vue from 'vue';\nimport Vuex from 'vuex';\nimport app from './modules/app';\nimport cart from './modules/cart';\nimport developerIndex from './modules/developer-index';\nimport pluginStore from './modules/plugin-store';\nimport craft from './modules/craft';\n\nVue.use(Vuex);\n\nexport default new Vuex.Store({\n strict: true,\n modules: {\n app,\n cart,\n developerIndex,\n pluginStore,\n craft,\n },\n});\n","/**\n * State\n */\nconst state = {\n searchQuery: '',\n showingScreenshotModal: false,\n screenshotModalImages: null,\n screenshotModalImageKey: 0,\n};\n\n/**\n * Getters\n */\nconst getters = {};\n\n/**\n * Actions\n */\nconst actions = {};\n\n/**\n * Mutations\n */\nconst mutations = {\n updateSearchQuery(state, searchQuery) {\n state.searchQuery = searchQuery;\n },\n\n updateShowingScreenshotModal(state, show) {\n state.showingScreenshotModal = show;\n },\n\n updateScreenshotModalImages(state, images) {\n state.screenshotModalImages = images;\n },\n\n updateScreenshotModalImageKey(state, key) {\n state.screenshotModalImageKey = key;\n },\n};\n\nexport default {\n namespaced: true,\n state,\n getters,\n actions,\n mutations,\n};\n","import { render, staticRenderFns } from \"./Step.vue?vue&type=template&id=91f66f8a&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"pluginstore-modal-flex\"},[(!!_vm.$slots['body'])?[_vm._t(\"body\")]:[(!!_vm.$slots['header'])?_c('header',{staticClass:\"header\"},[_vm._t(\"header\")],2):_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"pluginstore-modal-main\"},[_c('div',{staticClass:\"pluginstore-modal-content\"},[_vm._t(\"main\")],2)])]],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ActiveTrial.vue?vue&type=template&id=6a81c7be&\"\nimport script from \"./ActiveTrial.vue?vue&type=script&lang=js&\"\nexport * from \"./ActiveTrial.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"tw-border-t tw-border-solid tw-border-gray-200 md:tw-flex md:tw-justify-between md:tw-items-center tw-py-4 md:tw-py-2 tw-space-y-2 md:tw-space-y-0\"},[_c('div',{staticClass:\"tw-flex tw-items-center tw-w-3/5\"},[_c('div',{staticClass:\"tw-mr-4 tw-leading-3\"},[(_vm.activeTrial.iconUrl)?_c('img',{staticClass:\"tw-w-10 tw-h-10\",attrs:{\"src\":_vm.activeTrial.iconUrl}}):_c('div',{staticClass:\"default-icon\"})]),_vm._v(\" \"),_c('div',{staticClass:\"item-name\"},[_c('a',{staticClass:\"tw-mr-2\",attrs:{\"title\":_vm.activeTrial.name},on:{\"click\":function($event){$event.preventDefault();return _vm.navigateToPlugin.apply(null, arguments)}}},[_c('strong',[_vm._v(_vm._s(_vm.activeTrial.name))])]),_vm._v(\" \"),(_vm.activeTrial.editionName && _vm.activeTrial.showEditionBadge)?_c('edition-badge',{attrs:{\"name\":_vm.activeTrial.editionName}}):_vm._e()],1)]),_vm._v(\" \"),_c('div',{staticClass:\"tw-flex-1\"},[(_vm.activeTrial.price)?[(_vm.activeTrial.discountPrice)?[_c('del',{staticClass:\"tw-mr-1\"},[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.activeTrial.price)))]),_vm._v(\" \"),_c('strong',[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.activeTrial.discountPrice)))])]:[_c('strong',[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.activeTrial.price)))])]]:_vm._e()],2),_vm._v(\" \"),_c('div',{staticClass:\"md:tw-w-1/4\"},[_c('div',{staticClass:\"md:tw-text-right\"},[(!_vm.addToCartLoading && !_vm.loading)?[_c('button',{class:{\n 'tw-text-blue-600 hover:tw-underline': true,\n 'disabled hover:tw-no-underline': _vm.activeTrial.licenseMismatched,\n },attrs:{\"loading\":_vm.addToCartLoading,\"disabled\":_vm.loading},on:{\"click\":function($event){return _vm.addToCart()}}},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Add to cart','app'))+\"\\n \")])]:[_c('c-spinner',{attrs:{\"size\":\"sm\"}})]],2)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./ActiveTrials.vue?vue&type=template&id=19de9ac0&\"\nimport script from \"./ActiveTrials.vue?vue&type=script&lang=js&\"\nexport * from \"./ActiveTrials.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActiveTrials.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ActiveTrials.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return (_vm.pendingActiveTrials && _vm.pendingActiveTrials.length > 0)?_c('div',{staticClass:\"tw-border-t tw-border-solid tw-border-gray-200 tw-mt-6 tw-pt-6\"},[(_vm.pendingActiveTrials.length > 1)?_c('div',{staticClass:\"right\"},[_c('a',{class:{\n 'tw-opacity-50 tw-cursor-default': _vm.loading,\n },on:{\"click\":function($event){return _vm.addAllTrialsToCart()}}},[_vm._v(_vm._s(_vm._f(\"t\")('Add all to cart','app')))])]):_vm._e(),_vm._v(\" \"),_c('h2',[_vm._v(_vm._s(_vm._f(\"t\")('Active Trials','app')))]),_vm._v(\" \"),_c('div',{staticClass:\"cart-data\"},_vm._l((_vm.pendingActiveTrials),function(activeTrial,key){return _c('div',{key:key},[_c('active-trial',{attrs:{\"loading\":_vm.loading,\"activeTrial\":activeTrial}})],1)}),0)]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./ItemIcon.vue?vue&type=template&id=b3a8bbe6&\"\nimport script from \"./ItemIcon.vue?vue&type=script&lang=js&\"\nexport * from \"./ItemIcon.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ItemIcon.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ItemIcon.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"tw-w-14 tw-h-14\"},[(_vm.item.lineItem.purchasable.type === 'cms-edition')?[_c('img',{staticClass:\"tw-w-full\",attrs:{\"src\":_vm.craftLogo}})]:(_vm.item.lineItem.purchasable.type === 'plugin-edition')?[(_vm.item.plugin.iconUrl)?_c('img',{staticClass:\"tw-w-full\",attrs:{\"src\":_vm.item.plugin.iconUrl}}):_vm._e()]:_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ItemName.vue?vue&type=template&id=6e53c798&\"\nimport script from \"./ItemName.vue?vue&type=script&lang=js&\"\nexport * from \"./ItemName.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[(_vm.item.lineItem.purchasable.type === 'cms-edition')?[_c('strong',[_vm._v(\"Craft CMS\")]),_vm._v(\" \"),_c('edition-badge',{attrs:{\"name\":_vm.item.lineItem.purchasable.name}})]:(_vm.item.lineItem.purchasable.type === 'plugin-edition')?[_c('strong',[_vm._v(_vm._s(_vm.item.plugin.name))]),_vm._v(\" \"),(_vm.item.plugin.editions > 1)?_c('edition-badge',{attrs:{\"name\":_vm.item.lineItem.purchasable.name}}):_vm._e()]:_vm._e()],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n \n \n\n\n\n","import { render, staticRenderFns } from \"./ItemAdjustments.vue?vue&type=template&id=3f5d5f84&\"\nimport script from \"./ItemAdjustments.vue?vue&type=script&lang=js&\"\nexport * from \"./ItemAdjustments.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n \n \n
    \n {{ adjustment.amount | currency }}\n
    \n \n \n \n \n\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_vm._l((_vm.item.lineItem.adjustments.filter(\n (lineItemAdustment) =>\n lineItemAdustment.sourceSnapshot.type !== 'extendedUpdates'\n )),function(adjustment,adjustmentKey){return [_c('div',{key:_vm.itemKey + 'adjustment-' + adjustmentKey},[_c('div',{staticClass:\"tw-py-2 tw-flex tw-border-t tw-border-solid tw-border-gray-200\"},[_c('div',{staticClass:\"tw-flex-1\"},[(adjustment.sourceSnapshot.type === 'extendedUpdates')?[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Updates until {date}','app', {\n date: _vm.$options.filters.formatDate(\n adjustment.sourceSnapshot.expiryDate\n ),\n }))+\"\\n \")]:[_vm._v(\"\\n \"+_vm._s(adjustment.name)+\"\\n \")]],2),_vm._v(\" \"),_c('div',{staticClass:\"price tw-w-24 tw-text-right\"},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"currency\")(adjustment.amount))+\"\\n \")])])])]})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Modal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Modal.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./Cart.vue?vue&type=template&id=dccd82ba&\"\nimport script from \"./Cart.vue?vue&type=script&lang=js&\"\nexport * from \"./Cart.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Cart.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Cart.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('step',[_c('template',{slot:\"header\"},[_c('h1',[_vm._v(_vm._s(_vm._f(\"t\")('Cart','app')))])]),_vm._v(\" \"),_c('template',{slot:\"main\"},[(!_vm.activeTrialsLoading)?[_c('h2',[_vm._v(_vm._s(_vm._f(\"t\")('Items in your cart','app')))]),_vm._v(\" \"),(_vm.cart)?[(_vm.cartItems.length)?[_c('div',{staticClass:\"cart-data tw-border-t tw-border-solid tw-border-gray-200\"},[_vm._l((_vm.cartItems),function(item,itemKey){return _c('div',{key:'item' + itemKey,staticClass:\"tw-border-b tw-border-solid tw-border-gray-200 md:tw-flex\"},[_c('div',{staticClass:\"md:tw-mr-6 tw-pt-4 md:tw-pb-4 md:tw-px-4\"},[_c('item-icon',{attrs:{\"item\":item}})],1),_vm._v(\" \"),_c('div',{staticClass:\"tw-flex-1\"},[_c('div',{staticClass:\"tw-flex tw-py-4\"},[_c('item-name',{staticClass:\"tw-flex-1\",attrs:{\"item\":item}}),_vm._v(\" \"),_c('div',{staticClass:\"price tw-w-24 tw-text-right\"},[_c('strong',[_vm._v(_vm._s(_vm._f(\"currency\")(item.lineItem.price)))])])],1),_vm._v(\" \"),_c('div',{staticClass:\"tw-border-t tw-border-solid tw-border-gray-200 tw-flex tw-justify-between tw-py-4\"},[_c('div',{staticClass:\"expiry-date\"},[(\n item.lineItem.purchasable.type === 'cms-edition' ||\n (item.lineItem.purchasable.type ===\n 'plugin-edition' &&\n (item.lineItem.options.licenseKey.substring(\n 0,\n 4\n ) === 'new:' ||\n (_vm.pluginLicenseInfo(item.plugin.handle) &&\n _vm.pluginLicenseInfo(item.plugin.handle).isTrial)))\n )?[_c('c-dropdown',{attrs:{\"options\":_vm.itemExpiryDateOptions(itemKey)},on:{\"input\":function($event){return _vm.onSelectedExpiryDateChange(itemKey)}},model:{value:(_vm.selectedExpiryDates[itemKey]),callback:function ($$v) {_vm.$set(_vm.selectedExpiryDates, itemKey, $$v)},expression:\"selectedExpiryDates[itemKey]\"}})]:_vm._e(),_vm._v(\" \"),(_vm.itemLoading(itemKey))?_c('c-spinner'):_vm._e()],2),_vm._v(\" \"),_vm._l((item.lineItem.adjustments.filter(\n (lineItemAdustment) =>\n lineItemAdustment.sourceSnapshot.type ===\n 'extendedUpdates'\n )),function(adjustment,adjustmentKey){return [_c('div',{key:itemKey + 'adjustment-' + adjustmentKey},[_vm._v(\"\\n \"+_vm._s(_vm._f(\"currency\")(adjustment.amount))+\"\\n \")])]})],2),_vm._v(\" \"),_c('item-adjustments',{attrs:{\"item\":item}}),_vm._v(\" \"),_c('div',{staticClass:\"tw-py-4 tw-text-right tw-border-t tw-border-solid tw-border-gray-200\"},[(!_vm.removeFromCartLoading(itemKey))?[_c('a',{attrs:{\"role\":\"button\"},on:{\"click\":function($event){return _vm.removeFromCart(itemKey)}}},[_vm._v(_vm._s(_vm._f(\"t\")('Remove','app')))])]:[_c('c-spinner',{staticClass:\"sm\"})]],2)],1)])}),_vm._v(\" \"),_c('div',{staticClass:\"tw-flex tw-mt-4 tw-text-lg\"},[_c('div',{staticClass:\"tw-w-14 tw-mr-14\"}),_vm._v(\" \"),_c('div',{staticClass:\"tw-flex-1 tw-flex tw-justify-between\"},[_c('div',[_c('strong',[_vm._v(_vm._s(_vm._f(\"t\")('Total Price','app')))])]),_vm._v(\" \"),_c('div',[_c('strong',[_vm._v(_vm._s(_vm._f(\"currency\")(_vm.cart.totalPrice)))])])])])],2),_vm._v(\" \"),_c('div',{staticClass:\"tw-mt-4 tw-py-4 tw-text-right\"},[_c('c-btn',{attrs:{\"kind\":\"primary\",\"loading\":_vm.loadingCheckout},on:{\"click\":function($event){return _vm.payment()}}},[_vm._v(_vm._s(_vm._f(\"t\")('Checkout','app'))+\"\\n \")])],1)]:_c('div',[_c('p',[_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Your cart is empty.','app'))+\"\\n \"),_c('a',{on:{\"click\":function($event){return _vm.$emit('continue-shopping')}}},[_vm._v(_vm._s(_vm._f(\"t\")('Continue shopping','app')))])])])]:_vm._e(),_vm._v(\" \"),_c('active-trials')]:[_c('c-spinner')]],2)],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Modal.vue?vue&type=template&id=1a7381d0&\"\nimport script from \"./Modal.vue?vue&type=script&lang=js&\"\nexport * from \"./Modal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Modal.vue?vue&type=style&index=0&id=1a7381d0&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"tw-hidden\"},[_c('div',{ref:\"pluginstoremodal\",staticClass:\"pluginstore-modal modal\",class:'step-' + _vm.modalStep,attrs:{\"id\":\"pluginstore-modal\"}},[(_vm.modalStep === 'cart')?_c('cart',{on:{\"continue-shopping\":function($event){return _vm.$root.closeModal()}}}):_vm._e()],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import { render, staticRenderFns } from \"./NavItems.vue?vue&type=template&id=03ee3636&\"\nimport script from \"./NavItems.vue?vue&type=script&lang=js&\"\nexport * from \"./NavItems.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavItems.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NavItems.vue?vue&type=script&lang=js&\"","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"nav-items\"},[_c('ul',[_c('li',[_c('router-link',{attrs:{\"to\":\"/\"},nativeOn:{\"click\":function($event){return _vm.$emit('itemClick')}}},[_c('c-icon',{attrs:{\"icon\":\"star\"}}),_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Discover','app'))+\"\\n \")],1)],1),_vm._v(\" \"),(_vm.CraftEdition < _vm.CraftPro || _vm.licensedEdition < _vm.CraftPro)?_c('li',[_c('router-link',{attrs:{\"to\":\"/upgrade-craft\"},nativeOn:{\"click\":function($event){return _vm.$emit('itemClick')}}},[_c('img',{attrs:{\"src\":\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIiB2aWV3Qm94PSIwIDAgMTAwIDEwMCI+CiAgPGcgZmlsbD0ibm9uZSI+CiAgICA8cmVjdCB3aWR0aD0iNDAuOTA5IiBoZWlnaHQ9IjQwLjkwOSIgeD0iMjkuNTQ1IiB5PSIyOS41NDUiIGZpbGw9IiNGRkYiLz4KICAgIDxwYXRoIGZpbGw9IiNFNTQyMkIiIGQ9Ik04OS40NzM2ODQyLDAgTDEwLjUyNjMxNTgsMCBDNC42NzgzNjI1NywwIDAsNC42NzgzNjI1NyAwLDEwLjUyNjMxNTggTDAsODkuNDczNjg0MiBDMCw5NS4zMjE2Mzc0IDQuNjc4MzYyNTcsMTAwIDEwLjUyNjMxNTgsMTAwIEw4OS40NzM2ODQyLDEwMCBDOTUuMjA0Njc4NCwxMDAgMTAwLDk1LjMyMTYzNzQgMTAwLDg5LjQ3MzY4NDIgTDEwMCwxMC41MjYzMTU4IEMxMDAsNC42NzgzNjI1NyA5NS4zMjE2Mzc0LDAgODkuNDczNjg0MiwwIE02MCw1Ni42MDgxODcxIEw2NC42NzgzNjI2LDYxLjk4ODMwNDEgQzU5Ljc2NjA4MTksNjUuOTY0OTEyMyA1NC4xNTIwNDY4LDY4LjE4NzEzNDUgNDguNTM4MDExNyw2OC4xODcxMzQ1IEMzNy40MjY5MDA2LDY4LjE4NzEzNDUgMzAuNDA5MzU2Nyw2MC44MTg3MTM1IDMyLjA0Njc4MzYsNTAuNDA5MzU2NyBDMzMuNjg0MjEwNSw0MCA0My4xNTc4OTQ3LDMyLjYzMTU3ODkgNTQuMjY5MDA1OCwzMi42MzE1Nzg5IEM1OS42NDkxMjI4LDMyLjYzMTU3ODkgNjQuNjc4MzYyNiwzNC43MzY4NDIxIDY4LjE4NzEzNDUsMzguNTk2NDkxMiBMNjEuNjM3NDI2OSw0My45NzY2MDgyIEM1OS43NjYwODE5LDQxLjUyMDQ2NzggNTYuNjA4MTg3MSwzOS44ODMwNDA5IDUzLjA5OTQxNTIsMzkuODgzMDQwOSBDNDYuNDMyNzQ4NSwzOS44ODMwNDA5IDQxLjI4NjU0OTcsNDQuMjEwNTI2MyA0MC4yMzM5MTgxLDUwLjQwOTM1NjcgQzM5LjI5ODI0NTYsNTYuNjA4MTg3MSA0My4wNDA5MzU3LDYwLjkzNTY3MjUgNDkuODI0NTYxNCw2MC45MzU2NzI1IEM1My4wOTk0MTUyLDYwLjkzNTY3MjUgNTYuNjA4MTg3MSw1OS42NDkxMjI4IDYwLDU2LjYwODE4NzEgWiIvPgogIDwvZz4KPC9zdmc+Cg==\"}}),_vm._v(\"\\n \"+_vm._s(_vm._f(\"t\")('Upgrade Craft CMS','app'))+\"\\n \")])],1):_vm._e(),_vm._v(\" \"),_vm._l((_vm.categories),function(category){return _c('li',{key:category.id},[_c('router-link',{attrs:{\"to\":'/categories/' + category.id},nativeOn:{\"click\":function($event){return _vm.$emit('itemClick')}}},[_c('img',{attrs:{\"src\":category.iconUrl}}),_vm._v(\"\\n \"+_vm._s(category.title)+\"\\n \")])],1)})],2),_vm._v(\" \"),_c('div',{staticClass:\"tw-border-t tw-border-gray-200 tw-border-solid tw-mt-8 tw-py-8\"},[_c('ul',[_c('li',[_c('a',{attrs:{\"href\":\"https://craftcms.com/\",\"title\":\"Craft CMS\"},on:{\"click\":function($event){return _vm.$emit('itemClick')}}},[_c('c-icon',{staticClass:\"tw-w-6 tw-h-6\",attrs:{\"icon\":\"world\"}}),_vm._v(\"\\n craftcms.com\\n \")],1)]),_vm._v(\" \"),_c('li',[_c('a',{attrs:{\"href\":\"https://id.craftcms.com/\",\"title\":\"Craft ID\"},on:{\"click\":function($event){return _vm.$emit('itemClick')}}},[_c('c-icon',{staticClass:\"tw-w-6 tw-h-6\",attrs:{\"icon\":\"world\"}}),_vm._v(\"\\n Craft ID\\n \")],1)])])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CategorySelector.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CategorySelector.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CategorySelector.vue?vue&type=template&id=a5bf3e5a&scoped=true&\"\nimport script from \"./CategorySelector.vue?vue&type=script&lang=js&\"\nexport * from \"./CategorySelector.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CategorySelector.vue?vue&type=style&index=0&id=a5bf3e5a&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a5bf3e5a\",\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',[_c('a',{staticClass:\"category-selector-btn\",attrs:{\"href\":\"#\"},on:{\"click\":function($event){$event.preventDefault();_vm.showCategorySelector = !_vm.showCategorySelector}}},[_vm._v(\"All categories\")]),_vm._v(\" \"),_c('div',{staticClass:\"category-selector\",class:{hidden: !_vm.showCategorySelector}},[_c('div',{staticClass:\"category-selector-header\",class:{\n 'tw-px-4 tw-py-2 tw-bg-gray-100 tw-border-b tw-border-solid tw-border-gray-200 tw-flex tw-items-center': true,\n }},[_c('button',{staticClass:\"tw-px-1.5 tw-py-1 tw-flex tw-items-center tw-rounded tw-text-gray-500 hover:tw-text-blue-600\",on:{\"click\":function($event){_vm.showCategorySelector = false}}},[_c('c-icon',{staticClass:\"tw-w-6 tw-h-6\",attrs:{\"icon\":\"x\"}})],1)]),_vm._v(\" \"),_c('div',{staticClass:\"category-selector-body\"},[_c('nav-items',{on:{\"itemClick\":function($event){_vm.showCategorySelector = false}}})],1)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PluginSearch.vue?vue&type=template&id=d14feef0&\"\nimport script from \"./PluginSearch.vue?vue&type=script&lang=js&\"\nexport * from \"./PluginSearch.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"tw-mb-4\"},[_c('form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.search()}}},[_c('div',{staticClass:\"ps-search tw-relative tw-flex tw-w-full\"},[_c('div',{staticClass:\"tw-absolute tw-inset-y-0 tw-flex tw-items-center tw-pl-3 tw-z-10 tw-text-gray-500\"},[_c('c-icon',{attrs:{\"icon\":\"search\"}})],1),_vm._v(\" \"),_c('c-textbox',{staticClass:\"tw-flex-1 tw-w-full tw-pl-9\",attrs:{\"type\":\"text\",\"id\":\"searchQuery\",\"placeholder\":_vm._f(\"t\")('Search plugins','app'),\"autocomplete\":\"off\"},model:{value:(_vm.searchQuery),callback:function ($$v) {_vm.searchQuery=$$v},expression:\"searchQuery\"}})],1)])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./Sidebar.vue?vue&type=template&id=0e5f66ea&\"\nimport script from \"./Sidebar.vue?vue&type=script&lang=js&\"\nexport * from \"./Sidebar.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"ps-sidebar\"},[_c('plugin-search'),_vm._v(\" \"),_c('category-selector'),_vm._v(\" \"),_c('nav-items',{staticClass:\"tw-hidden lg:tw-block\"})],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ScreenshotModal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ScreenshotModal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ScreenshotModal.vue?vue&type=template&id=20cc90bc&\"\nimport script from \"./ScreenshotModal.vue?vue&type=script&lang=js&\"\nexport * from \"./ScreenshotModal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ScreenshotModal.vue?vue&type=style&index=0&id=20cc90bc&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:\"screenshotModal\",attrs:{\"id\":\"screenshot-modal\"},on:{\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"]))return null;return _vm.close.apply(null, arguments)}}},[_c('a',{staticClass:\"close screenshot-modal-button\",on:{\"click\":_vm.close}},[_c('c-icon',{attrs:{\"icon\":\"x\",\"size\":\"8\"}})],1),_vm._v(\" \"),(_vm.screenshotModalImages)?_c('div',{ref:\"carousel\",staticClass:\"carousel\"},[_c('swiper',{ref:\"screenshotModalSwiper\",attrs:{\"options\":_vm.swiperOption}},_vm._l((_vm.screenshotModalImages),function(imageUrl,key){return _c('swiper-slide',{key:key},[_c('div',{staticClass:\"screenshot\"},[_c('div',{staticClass:\"swiper-zoom-container\"},[_c('img',{attrs:{\"src\":imageUrl}})])])])}),1),_vm._v(\" \"),(_vm.screenshotModalImages.length > 1)?[_c('div',{staticClass:\"ps-swiper-button-prev screenshot-modal-button\"},[_c('c-icon',{attrs:{\"icon\":\"chevron-left\",\"size\":\"8\"}})],1),_vm._v(\" \"),_c('div',{staticClass:\"ps-swiper-button-next screenshot-modal-button\"},[_c('c-icon',{attrs:{\"icon\":\"chevron-right\",\"size\":\"8\"}})],1),_vm._v(\" \"),_c('div',{staticClass:\"pagination-wrapper\"},[_c('div',{staticClass:\"pagination-content\"},[_c('div',{class:'swiper-pagination',attrs:{\"slot\":\"pagination\"},slot:\"pagination\"})])])]:_vm._e()],2):_vm._e()])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"ps-wrapper\"},[_c('transition',{attrs:{\"name\":\"fade\"}},[(_vm.showingScreenshotModal)?_c('screenshot-modal'):_vm._e()],1),_vm._v(\" \"),(_vm.$root.pluginStoreDataLoaded)?[_c('sidebar'),_vm._v(\" \"),_c('div',{staticClass:\"ps-main\",on:{\"&scroll\":function($event){return _vm.onViewScroll.apply(null, arguments)}}},[_c('router-view',{key:_vm.$route.fullPath})],1)]:[_c('status-message',{attrs:{\"error\":_vm.$root.pluginStoreDataError,\"message\":_vm.$root.statusMessage}})],_vm._v(\" \"),_c('modal',{attrs:{\"show\":_vm.$root.showModal,\"plugin-id\":_vm.$root.pluginId},on:{\"update:show\":function($event){return _vm.$set(_vm.$root, \"showModal\", $event)}}})],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=cf1860fe&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=cf1860fe&prod&lang=scss&\"\nimport style1 from \"./App.vue?vue&type=style&index=1&id=cf1860fe&prod&style=scss&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue';\nimport VueAwesomeSwiper from 'vue-awesome-swiper';\nimport 'swiper/css/swiper.css';\n\nVue.use(VueAwesomeSwiper);\n","import Vue from 'vue';\nimport ApexChart from 'vue-apexcharts';\n\nVue.component('ApexChart', ApexChart);\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c(_vm.component,_vm._b({tag:\"component\",staticClass:\"c-btn truncate\",class:[\n {\n small: _vm.small,\n large: _vm.large,\n block: _vm.block,\n outline: _vm.outline,\n loading: _vm.loading,\n [_vm.kind]: true,\n 'c-btn-icon': _vm.icon && !_vm.$slots.default,\n group: true,\n\n // Base\n 'tw-inline-block tw-px-4 tw-py-2 tw-rounded-md': true,\n 'tw-text-sm tw-leading-5 tw-no-underline hover:tw-no-underline': true,\n 'tw-border tw-border-solid': true,\n 'disabled:tw-opacity-50 disabled:tw-cursor-default': true,\n\n // Variants\n 'tw-text-white': _vm.kind === 'primary' && !_vm.outline,\n 'hover:tw-text-white': _vm.kind === 'primary' && !_vm.outline,\n 'active:tw-text-white': _vm.kind === 'primary' && !_vm.outline,\n\n // Default\n 'tw-text-black': _vm.kind === 'default',\n\n // Primary\n 'tw-border-blue-600': _vm.kind === 'primary',\n 'tw-bg-blue-600': _vm.kind === 'primary' && !_vm.outline,\n 'hover:tw-bg-blue-700 hover:tw-border-blue-700 active:hover:tw-bg-blue-600 active:hover:tw-border-blue-600':\n _vm.kind === 'primary' && !_vm.outline,\n 'active:tw-bg-blue-800 active:tw-border-blue-800':\n _vm.kind === 'primary' && !_vm.outline,\n 'disabled:tw-bg-blue-600 disabled:tw-border-blue-600':\n _vm.kind === 'primary' && !_vm.outline,\n 'tw-text-blue-600 hover:tw-bg-blue-600 active:tw-bg-blue-800':\n _vm.kind === 'primary' && _vm.outline,\n\n // Secondary\n 'tw-border-gray-200 tw-text-blue-600': _vm.kind === 'secondary',\n 'hover:tw-cursor-pointer hover:tw-bg-gray-50 hover:tw-border-gray-200':\n _vm.kind === 'secondary',\n 'active:tw-cursor-pointer active:tw-bg-gray-100 active:tw-border-gray-300':\n _vm.kind === 'secondary',\n 'tw-text-blue-600 tw-bg-white tw-shadow-gray-600/7':\n _vm.kind === 'secondary' && !_vm.outline,\n\n // Danger\n 'tw-text-red-600 tw-bg-white tw-border-gray-200': _vm.kind === 'danger',\n 'focus:tw-border-red-400 focus:tw-ring-red-500/30': _vm.kind === 'danger',\n 'hover:tw-bg-red-500 hover:tw-text-white hover:tw-border-red-600':\n _vm.kind === 'danger',\n 'active:tw-bg-red-600': _vm.kind === 'danger',\n },\n ],attrs:{\"to\":_vm.to,\"href\":_vm.href,\"target\":_vm.target,\"type\":_vm.computedType},on:{\"click\":function($event){return _vm.$emit('click')}}},'component',_vm.additionalAttributes,false),[(_vm.loading)?[_c('c-spinner',{attrs:{\"animationClass\":`border-${_vm.animationColor} group-hover:border-${_vm.animationColorHover}`}})]:_vm._e(),_vm._v(\" \"),_c('div',{staticClass:\"c-btn-content\"},[(_vm.icon && _vm.icon.length > 0)?_c('c-icon',{staticClass:\"tw-mr-1\",attrs:{\"icon\":_vm.icon,\"size\":\"3\"}}):_vm._e(),_vm._v(\" \"),_vm._t(\"default\"),_vm._v(\" \"),(_vm.trailingIcon && _vm.trailingIcon.length > 0)?_c('c-icon',{staticClass:\"tw-ml-1\",attrs:{\"icon\":_vm.trailingIcon,\"size\":\"3\"}}):_vm._e()],2)],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CBtn.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CBtn.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./CBtn.vue?vue&type=template&id=2402fbdc&\"\nimport script from \"./CBtn.vue?vue&type=script&lang=js&\"\nexport * from \"./CBtn.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CBtn.vue?vue&type=style&index=0&id=2402fbdc&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CDropdown.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CDropdown.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./CDropdown.vue?vue&type=template&id=5dcc7f8e&\"\nimport script from \"./CDropdown.vue?vue&type=script&lang=js&\"\nexport * from \"./CDropdown.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CDropdown.vue?vue&type=style&index=0&id=5dcc7f8e&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"c-dropdown\",class:{\n 'is-invalid': _vm.invalid,\n 'tw-w-full': _vm.fullwidth,\n disabled: _vm.disabled,\n }},[_c('select',{class:{\n 'form-select sm:tw-text-sm sm:tw-leading-5 tw-ps-3 tw-pe-10 tw-rounded-md': true,\n 'tw-w-full': _vm.fullwidth,\n 'tw-border-danger': _vm.invalid,\n 'tw-border-field': !_vm.invalid,\n },attrs:{\"disabled\":_vm.disabled},domProps:{\"value\":_vm.value},on:{\"input\":function($event){return _vm.$emit('input', $event.target.value)}}},_vm._l((_vm.options),function(option,key){return _c('option',{key:key,domProps:{\"value\":option.value}},[_vm._v(\"\\n \"+_vm._s(option.label)+\"\\n \")])}),0)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./AlertIcon.vue?vue&type=template&id=895adde2&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"version\":\"1.1\",\"id\":\"alert\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"xmlns:xlink\":\"http://www.w3.org/1999/xlink\",\"x\":\"0px\",\"y\":\"0px\",\"viewBox\":\"0 0 448 448\",\"fill\":\"currentColor\",\"xml:space\":\"preserve\"}},[_c('path',{attrs:{\"d\":\"M256,343.8v-47.5c0-4.5-3.5-8.2-8-8.2h-48c-4.5,0-8,3.8-8,8.2v47.5c0,4.5,3.5,8.2,8,8.2h48C252.5,352,256,348.2,256,343.8z\\nM255.5,250.2l4.5-114.8c0-1.5-0.8-3.5-2.5-4.8c-1.5-1.2-3.8-2.8-6-2.8h-55c-2.2,0-4.5,1.5-6,2.8c-1.8,1.2-2.5,3.8-2.5,5.2\\nl4.2,114.2c0,3.2,3.8,5.8,8.5,5.8H247C251.5,256,255.2,253.5,255.5,250.2z M252,16.8l192,352c5.5,9.8,5.2,21.8-0.5,31.5\\nS427.2,416,416,416H32c-11.2,0-21.8-6-27.5-15.8s-6-21.8-0.5-31.5l192-352C201.5,6.5,212.2,0,224,0S246.5,6.5,252,16.8z\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./BookIcon.vue?vue&type=template&id=4d9fb423&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{staticStyle:{\"enable-background\":\"new 0 0 417 448\"},attrs:{\"version\":\"1.1\",\"id\":\"Layer_1\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"x\":\"0px\",\"y\":\"0px\",\"viewBox\":\"0 0 417 448\",\"xml:space\":\"preserve\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"d\":\"M409.8,119.5c6.2,9,8,20.8,4.5,32.3l-68.8,226.5c-6.2,21.2-28.2,37.8-49.8,37.8H65c-25.5,0-52.8-20.2-62-46.2\\n\\tc-4-11.2-4-22.2-0.5-31.8c0.5-5,1.5-10,1.8-16c0.2-4-2-7.2-1.5-10.2c1-6,6.2-10.2,10.2-17c7.5-12.5,16-32.8,18.8-45.8\\n\\tc1.2-4.8-1.2-10.2,0-14.5c1.2-4.8,6-8.2,8.5-12.8C47,210.2,55.8,188,57,176.2c0.5-5.2-2-11-0.5-15c1.8-5.8,7.2-8.2,11-13.2\\n\\tc6-8.2,16-32,17.5-45.3c0.5-4.2-2-8.5-1.2-13c1-4.8,7-9.8,11-15.5c10.5-15.5,12.5-49.8,44.2-40.8l-0.2,0.8c4.2-1,8.5-2.2,12.8-2.2\\n\\th190.2c11.8,0,22.2,5.2,28.5,14c6.5,9,8,20.8,4.5,32.5L306.2,305c-11.8,38.5-18.2,47-50,47H39c-3.2,0-7.2,0.8-9.5,3.8\\n\\tc-2,3-2.2,5.2-0.2,10.8c5,14.5,22.2,17.5,36,17.5H296c9.2,0,20-5.2,22.8-14.2l75-246.8c1.5-4.8,1.5-9.8,1.2-14.2\\n\\tC400.8,111,406,114.5,409.8,119.5z M143.8,120c-1.5,4.5,1,8,5.5,8h152c4.2,0,9-3.5,10.5-8l5.2-16c1.5-4.5-1-8-5.5-8h-152\\n\\tc-4.2,0-9,3.5-10.5,8L143.8,120z M123,184c-1.5,4.5,1,8,5.5,8h152c4.2,0,9-3.5,10.5-8l5.2-16c1.5-4.5-1-8-5.5-8h-152\\n\\tc-4.2,0-9,3.5-10.5,8L123,184z\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./CheckIcon.vue?vue&type=template&id=ccf895da&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"version\":\"1.1\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 28 28\",\"fill\":\"currentColor\"}},[_c('title',[_vm._v(\"check\")]),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M26.109 8.844c0 0.391-0.156 0.781-0.438 1.062l-13.438 13.438c-0.281 0.281-0.672 0.438-1.062 0.438s-0.781-0.156-1.062-0.438l-7.781-7.781c-0.281-0.281-0.438-0.672-0.438-1.062s0.156-0.781 0.438-1.062l2.125-2.125c0.281-0.281 0.672-0.438 1.062-0.438s0.781 0.156 1.062 0.438l4.594 4.609 10.25-10.266c0.281-0.281 0.672-0.438 1.062-0.438s0.781 0.156 1.062 0.438l2.125 2.125c0.281 0.281 0.438 0.672 0.438 1.062z\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ChevronLeftIcon.vue?vue&type=template&id=7d26e1d4&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 20 20\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M12.707 5.293a1 1 0 010 1.414L9.414 10l3.293 3.293a1 1 0 01-1.414 1.414l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 0z\",\"clip-rule\":\"evenodd\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ChevronRightIcon.vue?vue&type=template&id=68c7231a&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 20 20\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z\",\"clip-rule\":\"evenodd\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ClipboardCopyIcon.vue?vue&type=template&id=6def4ae1&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\",\"stroke\":\"currentColor\"}},[_c('path',{attrs:{\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\",\"d\":\"M8 5H6a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2v-1M8 5a2 2 0 002 2h2a2 2 0 002-2M8 5a2 2 0 012-2h2a2 2 0 012 2m0 0h2a2 2 0 012 2v3m2 4H10m0 0l3-3m-3 3l3 3\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./CopyIcon.vue?vue&type=template&id=b2ff627e&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"aria-hidden\":\"true\",\"focusable\":\"false\",\"data-prefix\":\"fas\",\"data-icon\":\"copy\",\"role\":\"img\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 448 512\"}},[_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M320 448v40c0 13.255-10.745 24-24 24H24c-13.255 0-24-10.745-24-24V120c0-13.255 10.745-24 24-24h72v296c0 30.879 25.121 56 56 56h168zm0-344V0H152c-13.255 0-24 10.745-24 24v368c0 13.255 10.745 24 24 24h272c13.255 0 24-10.745 24-24V128H344c-13.2 0-24-10.8-24-24zm120.971-31.029L375.029 7.029A24 24 0 0 0 358.059 0H352v96h96v-6.059a24 24 0 0 0-7.029-16.97z\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ExclamationCircleIcon.vue?vue&type=template&id=7a31149e&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 20 20\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7 4a1 1 0 11-2 0 1 1 0 012 0zm-1-9a1 1 0 00-1 1v4a1 1 0 102 0V6a1 1 0 00-1-1z\",\"clip-rule\":\"evenodd\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ExclamationTriangleIcon.vue?vue&type=template&id=4788b0ca&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"version\":\"1.1\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"28\",\"height\":\"28\",\"viewBox\":\"0 0 28 28\",\"fill\":\"currentColor\"}},[_c('title',[_vm._v(\"exclamation-triangle\")]),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M16 21.484v-2.969c0-0.281-0.219-0.516-0.5-0.516h-3c-0.281 0-0.5 0.234-0.5 0.516v2.969c0 0.281 0.219 0.516 0.5 0.516h3c0.281 0 0.5-0.234 0.5-0.516zM15.969 15.641l0.281-7.172c0-0.094-0.047-0.219-0.156-0.297-0.094-0.078-0.234-0.172-0.375-0.172h-3.437c-0.141 0-0.281 0.094-0.375 0.172-0.109 0.078-0.156 0.234-0.156 0.328l0.266 7.141c0 0.203 0.234 0.359 0.531 0.359h2.891c0.281 0 0.516-0.156 0.531-0.359zM15.75 1.047l12 22c0.344 0.609 0.328 1.359-0.031 1.969s-1.016 0.984-1.719 0.984h-24c-0.703 0-1.359-0.375-1.719-0.984s-0.375-1.359-0.031-1.969l12-22c0.344-0.641 1.016-1.047 1.75-1.047s1.406 0.406 1.75 1.047z\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ExternalLinkIcon.vue?vue&type=template&id=52908732&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\",\"stroke\":\"currentColor\"}},[_c('path',{attrs:{\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\",\"d\":\"M10 6H6a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2v-4M14 4h6m0 0v6m0-6L10 14\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./FlagIcon.vue?vue&type=template&id=101e004d&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 20 20\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M3 6a3 3 0 013-3h10a1 1 0 01.8 1.6L14.25 8l2.55 3.4A1 1 0 0116 13H6a1 1 0 00-1 1v3a1 1 0 11-2 0V6z\",\"clip-rule\":\"evenodd\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./GithubIcon.vue?vue&type=template&id=bc0850d6&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"aria-hidden\":\"true\",\"focusable\":\"false\",\"data-prefix\":\"fab\",\"data-icon\":\"github\",\"role\":\"img\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 496 512\"}},[_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3 .3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5 .3-6.2 2.3zm44.2-1.7c-2.9 .7-4.9 2.6-4.6 4.9 .3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3 .7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3 .3 2.9 2.3 3.9 1.6 1 3.6 .7 4.3-.7 .7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3 .7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3 .7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./InfoCircleIcon.vue?vue&type=template&id=1f481aac&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"viewBox\":\"0 0 100 100\",\"version\":\"1.1\",\"xmlns\":\"http://www.w3.org/2000/svg\"}},[_c('title',[_vm._v(\"info-circle\")]),_vm._v(\" \"),_c('desc',[_vm._v(\"Created with Sketch.\")]),_vm._v(\" \"),_c('defs'),_vm._v(\" \"),_c('g',{attrs:{\"id\":\"Page-1\",\"stroke\":\"none\",\"stroke-width\":\"1\",\"fill\":\"none\",\"fill-rule\":\"evenodd\"}},[_c('g',{attrs:{\"id\":\"info-circle\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"d\":\"M66.6666667,81.25 L66.6666667,70.8333333 C66.6666667,69.6614583 65.7552083,68.75 64.5833333,68.75 L58.3333333,68.75 L58.3333333,35.4166667 C58.3333333,34.2447917 57.421875,33.3333333 56.25,33.3333333 L35.4166667,33.3333333 C34.2447917,33.3333333 33.3333333,34.2447917 33.3333333,35.4166667 L33.3333333,45.8333333 C33.3333333,47.0052083 34.2447917,47.9166667 35.4166667,47.9166667 L41.6666667,47.9166667 L41.6666667,68.75 L35.4166667,68.75 C34.2447917,68.75 33.3333333,69.6614583 33.3333333,70.8333333 L33.3333333,81.25 C33.3333333,82.421875 34.2447917,83.3333333 35.4166667,83.3333333 L64.5833333,83.3333333 C65.7552083,83.3333333 66.6666667,82.421875 66.6666667,81.25 Z M58.3333333,22.9166667 L58.3333333,12.5 C58.3333333,11.328125 57.421875,10.4166667 56.25,10.4166667 L43.75,10.4166667 C42.578125,10.4166667 41.6666667,11.328125 41.6666667,12.5 L41.6666667,22.9166667 C41.6666667,24.0885417 42.578125,25 43.75,25 L56.25,25 C57.421875,25 58.3333333,24.0885417 58.3333333,22.9166667 Z M100,50 C100,77.6041667 77.6041667,100 50,100 C22.3958333,100 0,77.6041667 0,50 C0,22.3958333 22.3958333,0 50,0 C77.6041667,0 100,22.3958333 100,50 Z\",\"id\":\"Shape\"}})])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./LinkIcon.vue?vue&type=template&id=27619e1f&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 20 20\",\"fill\":\"currentColor\"}},[_c('path',{attrs:{\"fill-rule\":\"evenodd\",\"d\":\"M12.586 4.586a2 2 0 112.828 2.828l-3 3a2 2 0 01-2.828 0 1 1 0 00-1.414 1.414 4 4 0 005.656 0l3-3a4 4 0 00-5.656-5.656l-1.5 1.5a1 1 0 101.414 1.414l1.5-1.5zm-5 5a2 2 0 012.828 0 1 1 0 101.414-1.414 4 4 0 00-5.656 0l-3 3a4 4 0 105.656 5.656l1.5-1.5a1 1 0 10-1.414-1.414l-1.5 1.5a2 2 0 11-2.828-2.828l3-3z\",\"clip-rule\":\"evenodd\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./PlugIcon.vue?vue&type=template&id=be2505f6&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"aria-hidden\":\"true\",\"focusable\":\"false\",\"data-prefix\":\"fas\",\"data-icon\":\"plug\",\"role\":\"img\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 384 512\"}},[_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M320 32c0-17.62-14.38-32-32-32s-32 14.38-32 32v96h64V32zM368 159.1h-352c-8.875 0-16 7.125-16 16v32c0 8.875 7.125 16 16 16H32V256c0 76 53.5 141.6 128 156.8V512h64v-99.25C298.5 397.6 352 332 352 256V223.1h16c8.875 0 16-7.125 16-16v-32C384 167.1 376.9 159.1 368 159.1zM128 32c0-17.62-14.38-32-32-32S64 14.38 64 32v96h64V32z\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./SearchIcon.vue?vue&type=template&id=4adc1abd&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"version\":\"1.1\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"width\":\"26\",\"height\":\"28\",\"viewBox\":\"0 0 26 28\",\"fill\":\"currentColor\"}},[_c('title',[_vm._v(\"search\")]),_vm._v(\" \"),_c('path',{attrs:{\"d\":\"M18 13c0-3.859-3.141-7-7-7s-7 3.141-7 7 3.141 7 7 7 7-3.141 7-7zM26 26c0 1.094-0.906 2-2 2-0.531 0-1.047-0.219-1.406-0.594l-5.359-5.344c-1.828 1.266-4.016 1.937-6.234 1.937-6.078 0-11-4.922-11-11s4.922-11 11-11 11 4.922 11 11c0 2.219-0.672 4.406-1.937 6.234l5.359 5.359c0.359 0.359 0.578 0.875 0.578 1.406z\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./StarIcon.vue?vue&type=template&id=06324932&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"aria-hidden\":\"true\",\"focusable\":\"false\",\"data-prefix\":\"fal\",\"data-icon\":\"star-sharp\",\"role\":\"img\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 576 512\"}},[_c('path',{attrs:{\"fill\":\"currentColor\",\"d\":\"M537.8 181.6h-177.6l-54.89-169.1C302.6 4.19 295.3 0 288 0S273.4 4.19 270.7 12.57L215.8 181.6H38.21c-17.6 0-24.92 22.54-10.68 32.9l143.7 104.5L116.3 488.1C112.2 500.9 122.3 512 133.7 512c3.553 0 7.227-1.09 10.62-3.556L288 403.1l143.7 104.5C435.1 510.9 438.8 512 442.3 512c11.36 0 21.49-11.13 17.35-23.89l-54.89-169.1l143.7-104.5C562.7 204.2 555.4 181.6 537.8 181.6zM370.8 317.9l45.34 139.7l-118.7-86.3c-5.61-4.079-13.21-4.079-18.82 0l-118.7 86.3l45.34-139.7c2.139-6.589-.2054-13.81-5.808-17.88L80.7 213.6h146.8c6.933 0 13.08-4.465 15.22-11.06L288 62.96l45.33 139.6c2.141 6.594 8.285 11.06 15.22 11.06h146.8l-118.7 86.35C370.1 304.1 368.6 311.3 370.8 317.9z\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./WorldIcon.vue?vue&type=template&id=07b185f8&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\",\"stroke\":\"currentColor\"}},[_c('path',{attrs:{\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\",\"d\":\"M21 12a9 9 0 01-9 9m9-9a9 9 0 00-9-9m9 9H3m9 9a9 9 0 01-9-9m9 9c1.657 0 3-4.03 3-9s-1.343-9-3-9m0 18c-1.657 0-3-4.03-3-9s1.343-9 3-9m-9 9a9 9 0 019-9\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./XIcon.vue?vue&type=template&id=2e0ccf8a&\"\nvar script = {}\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('svg',{attrs:{\"xmlns\":\"http://www.w3.org/2000/svg\",\"fill\":\"none\",\"viewBox\":\"0 0 24 24\",\"stroke\":\"currentColor\"}},[_c('path',{attrs:{\"stroke-linecap\":\"round\",\"stroke-linejoin\":\"round\",\"stroke-width\":\"2\",\"d\":\"M6 18L18 6M6 6l12 12\"}})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./CIcon.vue?vue&type=template&id=38da308c&\"\nimport script from \"./CIcon.vue?vue&type=script&lang=js&\"\nexport * from \"./CIcon.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c(_vm.computedComponent,{tag:\"component\",staticClass:\"tw-align-middle tw-inline-block\",class:{\n 'tw-w-3 tw-h-3': parseInt(_vm.size) === 3,\n 'tw-w-4 tw-h-4': parseInt(_vm.size) === 4,\n 'tw-w-5 tw-h-5': parseInt(_vm.size) === 5,\n 'tw-w-6 tw-h-6': parseInt(_vm.size) === 6,\n 'tw-w-7 tw-h-7': parseInt(_vm.size) === 7,\n 'tw-w-8 tw-h-8': parseInt(_vm.size) === 8,\n 'tw-w-10 tw-h-10': parseInt(_vm.size) === 10,\n 'tw-w-12 tw-h-12': parseInt(_vm.size) === 12,\n 'tw-w-16 tw-h-16': parseInt(_vm.size) === 16,\n }})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{staticClass:\"c-spinner\",class:{\n 'tw-inline-block': true,\n [_vm.size]: true,\n }},[_c('div',{staticClass:\"animation\",class:[\n {\n 'tw-border-gray-400': !_vm.animationClass,\n [_vm.animationClass]: _vm.animationClass,\n },\n ]})])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CSpinner.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../../node_modules/babel-loader/lib/index.js??clonedRuleSet-11.use!../../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CSpinner.vue?vue&type=script&lang=js&\"","\n\n\n\n\n","import { render, staticRenderFns } from \"./CSpinner.vue?vue&type=template&id=5e845ae8&\"\nimport script from \"./CSpinner.vue?vue&type=script&lang=js&\"\nexport * from \"./CSpinner.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CSpinner.vue?vue&type=style&index=0&id=5e845ae8&prod&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./CTextbox.vue?vue&type=template&id=11d6cc73&\"\nimport script from \"./CTextbox.vue?vue&type=script&lang=js&\"\nexport * from \"./CTextbox.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n\n","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('input',{staticClass:\"tw-rounded-md tw-bg-gray-50 tw-border tw-border-solid tw-px-3 tw-py-2 tw-border-gray-300 tw-text-sm\",attrs:{\"type\":_vm.computedType},domProps:{\"value\":_vm.value},on:{\"blur\":function($event){return _vm.$emit('blur', $event)},\"focus\":function($event){return _vm.$emit('focus', $event.target.value)},\"change\":function($event){return _vm.$emit('change', $event)},\"input\":function($event){return _vm.$emit('input', $event.target.value)},\"keydown\":function($event){return _vm.$emit('keydown', $event)},\"keypress\":function($event){return _vm.$emit('keypress', $event)},\"keyup\":function($event){return _vm.$emit('keyup', $event)}}})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/* global Craft */\n/* global Garnish */\n/* global $ */\n\nimport Vue from 'vue';\nimport axios from 'axios';\nimport {currency} from './js/filters/currency';\nimport {escapeHtml, formatDate, formatNumber, t} from './js/filters/craft';\nimport router from './js/router';\nimport store from './js/store';\nimport {mapState} from 'vuex';\nimport Modal from './js/components/modal/Modal';\nimport StatusMessage from './js/components/StatusMessage';\nimport App from './App';\nimport './js/plugins/vue-awesome-swiper';\nimport './js/plugins/vue-apex-charts';\nimport CBtn from './js/components/ui/CBtn';\nimport CDropdown from './js/components/ui/CDropdown';\nimport CIcon from './js/components/ui/CIcon';\nimport CSpinner from './js/components/ui/CSpinner';\nimport CTextbox from './js/components/ui/CTextbox';\n\nVue.filter('currency', currency);\nVue.filter('escapeHtml', escapeHtml);\nVue.filter('formatDate', formatDate);\nVue.filter('formatNumber', formatNumber);\nVue.filter('t', t);\n\nVue.component('c-btn', CBtn);\nVue.component('c-dropdown', CDropdown);\nVue.component('c-icon', CIcon);\nVue.component('c-spinner', CSpinner);\nVue.component('c-textbox', CTextbox);\n\nGarnish.$doc.ready(function () {\n Craft.initUiElements();\n\n window.pluginStoreApp = new Vue({\n router,\n store,\n render: (h) => h(App),\n\n components: {\n Modal,\n StatusMessage,\n App,\n },\n\n data() {\n return {\n allDataLoaded: false,\n cartDataLoaded: false,\n coreDataLoaded: false,\n craftDataLoaded: false,\n craftIdDataLoaded: false,\n modalStep: null,\n pageTitle: 'Plugin Store',\n plugin: null,\n pluginId: null,\n pluginLicenseInfoLoaded: false,\n pluginStoreDataError: false,\n showModal: false,\n statusMessage: null,\n };\n },\n\n computed: {\n ...mapState({\n cart: (state) => state.cart.cart,\n craftId: (state) => state.craft.craftId,\n }),\n\n /**\n * Returns `true``if the core data and the plugin license info have been loaded.\n *\n * @returns {boolean}\n */\n pluginStoreDataLoaded() {\n return this.coreDataLoaded && this.pluginLicenseInfoLoaded;\n },\n },\n\n watch: {\n cart(cart) {\n this.$emit('cartChange', cart);\n },\n\n craftId() {\n this.$emit('craftIdChange');\n },\n },\n\n methods: {\n /**\n * Displays a notice.\n *\n * @param {string} message\n * @param {Object} [settings]\n * @param {string} [settings.icon] The icon to show on the notification\n * @param {string} [settings.iconLabel] The icon’s ARIA label\n * @param {string} [settings.details] Any additional HTML that should be included below the message\n * @return {Object} The notification\n */\n displayNotice(message, settings) {\n Craft.cp.displayNotice(message, settings);\n },\n\n /**\n * Displays a success message.\n *\n * @param {string} message\n * @param {Object} [settings]\n * @param {string} [settings.icon] The icon to show on the notification\n * @param {string} [settings.iconLabel] The icon’s ARIA label\n * @param {string} [settings.details] Any additional HTML that should be included below the message\n * @return {Object} The notification\n */\n displaySuccess(message, settings) {\n Craft.cp.displaySuccess(message, settings);\n },\n\n /**\n * Displays an error.\n *\n * @param {string} message\n * @param {Object} [settings]\n * @param {string} [settings.icon] The icon to show on the notification\n * @param {string} [settings.iconLabel] The icon’s ARIA label\n * @param {string} [settings.details] Any additional HTML that should be included below the message\n * @return {Object} The notification\n */\n displayError(message, settings) {\n Craft.cp.displayError(message, settings);\n },\n\n /**\n * Opens up the modal.\n *\n * @param modalStep\n */\n openModal(modalStep) {\n this.modalStep = modalStep;\n\n this.showModal = true;\n },\n\n /**\n * Closes the modal.\n */\n closeModal() {\n this.showModal = false;\n },\n\n /**\n * Updates Craft ID.\n *\n * @param craftIdJson\n */\n updateCraftId(craftId, callback) {\n this.$store.commit('craft/updateCraftId', craftId);\n\n if (this.craftId && this.craftId.email !== this.cart.email) {\n // Update the cart’s email with the one from the Craft ID account\n let data = {\n email: this.craftId.email,\n };\n\n this.$store\n .dispatch('cart/saveCart', data)\n .then(() => {\n this.$emit('craftIdUpdated');\n\n if (callback) {\n callback();\n }\n })\n .catch((error) => {\n this.$root.displayError('Couldn’t update cart’s email.');\n\n if (callback) {\n callback();\n }\n\n throw error;\n });\n } else {\n this.$emit('craftIdUpdated');\n\n if (callback) {\n callback();\n }\n }\n },\n\n /**\n * Initializes components that live outside of the Vue app.\n */\n initializeOuterComponents() {\n // Header Title\n const $headerTitle = $('#header h1');\n\n $headerTitle.on('click', () => {\n this.$router.push({path: '/'});\n });\n\n // Cart button\n const $cartButton = $('#cart-button');\n\n $cartButton.on('click', (e) => {\n e.preventDefault();\n this.openModal('cart');\n });\n\n $cartButton.keydown((e) => {\n switch (e.which) {\n case 13: // Enter\n case 32: // Space\n e.preventDefault();\n this.openModal('cart');\n break;\n }\n });\n\n this.$on('cartChange', function (cart) {\n let totalQty = 0;\n\n if (cart) {\n totalQty = cart.totalQty;\n }\n\n $('.badge', $cartButton).html(totalQty);\n });\n\n // Plugin Store actions\n const $pluginStoreActions = $('#pluginstore-actions');\n const $pluginStoreActionsSpinner = $('#pluginstore-actions-spinner');\n\n // Show actions spinner when Plugin Store data has finished loading but Craft data has not.\n this.$on('dataLoaded', () => {\n if (\n this.pluginStoreDataLoaded &&\n !(\n this.craftDataLoaded &&\n this.cartDataLoaded &&\n this.craftIdDataLoaded\n )\n ) {\n $pluginStoreActionsSpinner.removeClass('hidden');\n }\n });\n\n // Hide actions spinner when Plugin Store data and Craft data have finished loading.\n this.$on('allDataLoaded', function () {\n $pluginStoreActions.removeClass('hidden');\n $pluginStoreActionsSpinner.addClass('hidden');\n });\n\n // Craft ID\n const $craftId = $('#craftid-account');\n const $craftIdConnectForm = $('#craftid-connect-form');\n const $craftIdDisconnectForm = $('#craftid-disconnect-form');\n\n this.$on('craftIdChange', function () {\n if (this.craftId) {\n $('.label', $craftId).text(this.craftId.username);\n\n $craftId.removeClass('hidden');\n $craftIdConnectForm.addClass('hidden');\n $craftIdDisconnectForm.removeClass('hidden');\n } else {\n $craftId.addClass('hidden');\n $craftIdConnectForm.removeClass('hidden');\n $craftIdDisconnectForm.addClass('hidden');\n }\n });\n\n // Cancel ajax requests when an outbound link gets clicked\n $('a[href]').on('click', () => {\n this.$store.dispatch('craft/cancelRequests');\n this.$store.dispatch('pluginStore/cancelRequests');\n });\n },\n\n /**\n * Loads the cart data.\n */\n loadCartData() {\n this.$store.dispatch('cart/getCart').then(() => {\n this.cartDataLoaded = true;\n this.$emit('dataLoaded');\n });\n },\n\n /**\n * Loads Craft data.\n */\n loadCraftData(afterSuccess) {\n this.$store\n .dispatch('craft/getCraftData')\n .then(() => {\n this.craftDataLoaded = true;\n this.$emit('dataLoaded');\n\n if (typeof afterSuccess === 'function') {\n afterSuccess();\n }\n })\n .catch(() => {\n this.craftDataLoaded = true;\n });\n },\n\n loadCraftIdData() {\n if (window.craftIdAccessToken) {\n const accessToken = window.craftIdAccessToken;\n\n this.$store\n .dispatch('craft/getCraftIdData', {accessToken})\n .then(() => {\n this.craftIdDataLoaded = true;\n this.$emit('dataLoaded');\n });\n } else {\n this.craftIdDataLoaded = true;\n this.$emit('dataLoaded');\n }\n },\n\n /**\n * Loads all the data required for the Plugin Store and cart to work.\n */\n loadData() {\n this.loadPluginStoreData();\n\n this.loadCraftData(() => {\n this.loadCraftIdData();\n this.loadCartData();\n });\n },\n\n /**\n * Loads the Plugin Store’s plugin data.\n */\n loadPluginStoreData() {\n // core data\n this.$store\n .dispatch('pluginStore/getCoreData')\n .then(() => {\n this.coreDataLoaded = true;\n this.$emit('dataLoaded');\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // Request canceled\n } else {\n this.pluginStoreDataError = true;\n this.statusMessage = this.$options.filters.t(\n 'The Plugin Store is not available, please try again later.',\n 'app'\n );\n throw error;\n }\n });\n\n // plugin license info\n this.$store\n .dispatch('craft/getPluginLicenseInfo')\n .then(() => {\n this.pluginLicenseInfoLoaded = true;\n this.$emit('dataLoaded');\n })\n .catch((error) => {\n if (axios.isCancel(error)) {\n // Request canceled\n } else {\n throw error;\n }\n });\n },\n\n /**\n * Checks that all the data has been loaded.\n *\n * @returns {null}\n */\n onDataLoaded() {\n if (!this.pluginStoreDataLoaded) {\n return null;\n }\n\n if (!this.craftDataLoaded) {\n return null;\n }\n\n if (!this.cartDataLoaded) {\n return null;\n }\n\n if (!this.craftIdDataLoaded) {\n return null;\n }\n\n this.allDataLoaded = true;\n this.$emit('allDataLoaded');\n },\n },\n\n created() {\n // Page Title\n this.pageTitle = this.$options.filters.t('Plugin Store', 'app');\n\n // Status message\n this.statusMessage = this.$options.filters.t(\n 'Loading Plugin Store…',\n 'app'\n );\n\n // Initialize outer components\n this.initializeOuterComponents();\n\n // On data loaded\n this.$on('dataLoaded', this.onDataLoaded);\n\n // Load data\n this.loadData();\n },\n }).$mount('#app');\n});\n","import Accounting from 'accounting';\n\n/**\n * Formats a value as a currency value\n */\nexport function currency(value) {\n let precision = 2;\n let floatValue = parseFloat(value);\n\n // Auto precision\n if (Math.round(floatValue) === floatValue) {\n precision = 0;\n }\n\n if (floatValue < 0) {\n return '-' + Accounting.formatMoney(floatValue * -1, '$', precision);\n }\n\n return Accounting.formatMoney(floatValue, '$', precision);\n}\n","/* global Craft */\n\nexport function escapeHtml(str) {\n return Craft.escapeHtml(str);\n}\n\nexport function t(message, category, params) {\n return Craft.t(category, message, params);\n}\n\nexport function formatDate(date) {\n return Craft.formatDate(date);\n}\n\nexport function formatNumber(number, format = ',.0f') {\n return Craft.formatNumber(number, format);\n}\n"],"names":["root","undefined","lib","currency","symbol","format","decimal","thousand","precision","grouping","number","nativeMap","Array","prototype","map","nativeIsArray","isArray","toString","Object","isString","obj","charCodeAt","substr","call","isObject","defaults","object","defs","key","hasOwnProperty","iterator","context","i","j","results","length","checkPrecision","val","base","Math","round","abs","isNaN","checkCurrencyFormat","settings","match","pos","neg","replace","zero","unformat","parse","value","regex","RegExp","unformatted","parseFloat","toFixed","power","pow","formatNumber","opts","usePrecision","negative","parseInt","mod","split","formatMoney","formats","formatColumn","list","padAfterSymbol","indexOf","maxLength","formatted","fVal","join","module","exports","accounting","t","e","keys","getOwnPropertySymbols","a","filter","getOwnPropertyDescriptor","enumerable","push","apply","arguments","forEach","o","getOwnPropertyDescriptors","defineProperties","defineProperty","Symbol","constructor","TypeError","s","configurable","writable","r","n","create","h","l","setPrototypeOf","getPrototypeOf","__proto__","c","ReferenceError","d","Reflect","construct","sham","Proxy","Boolean","valueOf","this","u","p","from","f","slice","name","test","x","isColorHex","shadeHexColor","shadeRGBColor","assign","extend","is","clone","log","LN10","floor","log10","random","substring","String","Number","getComputedStyle","clientHeight","clientWidth","paddingTop","paddingBottom","paddingLeft","paddingRight","getBoundingClientRect","top","right","bottom","left","width","height","y","reduce","PI","sin","cos","splice","parentElement","classList","contains","style","navigator","userAgent","toLowerCase","window","appVersion","b","ctx","w","setEasingFunctions","globals","easing","config","chart","animations","attr","animate","afterAll","cx","cy","el","realIndex","fill","pathFrom","pathTo","speed","delay","animateGradually","enabled","dynamicAnimation","dataChanged","type","morphSVG","comboCharts","delayedElements","remove","animationEnded","showDelayedElements","events","animationEnd","concat","gridHeight","shouldAnimate","plot","isNumber","series","maxValsInArrayIndex","animationCompleted","v","unfilter","SVG","Filter","size","states","normal","applyFilter","dropShadow","node","intensity","addShadow","componentTransfer","rgb","slope","intercept","filterer","setAttribute","_scaleFilterSize","addNormalFilter","addLightenFilter","addDarkenFilter","blur","color","opacity","flood","composite","sourceAlpha","offset","gaussianBlur","merge","source","blend","noUserSpaceOnUse","isIE","isSafari","isFirefox","selectedDataPoints","active","m","sqrt","min","g","origPoint","k","dom","Paper","line","x1","y1","x2","y2","stroke","rect","rx","ry","polygon","circle","strokeWidth","fillOpacity","strokeOpacity","classes","strokeLinecap","strokeDashArray","lineCap","path","class","group","animationDelay","initialSpeed","dataChangeSpeed","className","shouldClipToGrid","bindEventsOnPaths","drawShadow","A","S","C","L","P","T","resized","I","M","dashArray","z","drawPath","cuid","getDefaultFilter","enabledOnSeries","X","addEventListener","pathMouseEnter","bind","pathMouseLeave","pathMouseDown","E","animatePathsGradually","pattern","hexToRgba","gradient","at","gridWidth","gradientUnits","fx","fy","to","text","maxWidth","fontSize","fontFamily","getTextRects","textAnchor","fontWeight","foreColor","cssClass","isPlainText","getTextBasedOnMaxWidth","tspan","newLine","plain","pSize","shape","pRadius","drawRect","pointFillColor","pointFillOpacity","pointStrokeColor","pointStrokeWidth","pointStrokeOpacity","drawCircle","getAttribute","dataPointMouseEnter","seriesIndex","dataPointIndex","fireEvent","hover","isTouchDevice","dataPointMouseLeave","allowMultipleDataPointsSelection","select","members","dataPointSelection","getBBox","drawText","add","bbox","getComputedTextLength","textContent","getSubStringLength","data","every","xaxis","convertedCatToNumeric","labels","formatter","minX","max","markers","discrete","sizeOffset","largestSize","seriesTotals","seriesX","seriesPercent","stackedSeriesTotals","yRange","isMultipleYAxis","minYArr","maxYArr","minY","maxY","xRange","maxX","zRange","maxZ","minZ","initialMaxX","initialMinX","MIN_VALUE","hasNegs","yRatio","invertedYRatio","zRatio","xRatio","initialXRatio","invertedXRatio","baseLineInvertedY","baseLineY","baseLineX","seriesLog","yaxis","logarithmic","getLogVal","logBase","invalidLogScale","getBaseLog","yLogRatio","logYRange","MAX_VALUE","comboBarCount","extendYAxis","annotations","extendYAxisAnnotations","extendXAxisAnnotations","points","extendPointAnnotations","annoCtx","label","orientation","baseEl","querySelector","position","graphics","rotateAroundCenter","trim","padding","barPadForNumericAxis","borderRadius","background","borderWidth","borderColor","id","parentNode","addBackgroundToAnno","insertBefore","mouseEnter","mouseLeave","click","invertAxis","categoryLabels","yAxisIndex","marker","reversed","inversedReversedAxis","dataFormatXNumeric","getStringX","helpers","getX1X2","drawLine","offsetX","offsetY","appendChild","fillColor","rel","setOrientations","addXaxisAnnotation","getY1Y2","_getYAxisAnnotationWidth","addYaxisAnnotation","strokeColor","radius","drawMarker","customSVG","transform","innerHTML","image","addImage","appendTo","addPointAnnotation","options","months","shortMonths","days","shortDays","toolbar","exportToSVG","exportToPNG","exportToCSV","menu","selection","selectionZoom","zoomIn","zoomOut","pan","reset","yAxis","show","showAlways","showForNullSeries","seriesName","opposite","tickAmount","forceNiceScale","floating","decimalsInFloat","minWidth","align","rotate","colors","axisBorder","axisTicks","title","tooltip","crosshairs","pointAnnotation","yAxisAnnotation","xAxisAnnotation","backgroundColor","texts","images","shapes","locales","defaultLocale","beforeMount","mounted","updated","mouseMove","xAxisLabelClick","legendClick","markerClick","beforeZoom","beforeResetZoom","zoomed","scrolled","brushScrolled","parentHeightOffset","redrawOnParentResize","redrawOnWindowResize","sparkline","brush","autoScaleYaxis","target","stacked","stackType","tools","download","zoom","zoomin","zoomout","customIcons","export","csv","filename","columnDelimiter","headerCategory","headerValue","dateFormatter","Date","toDateString","png","svg","autoSelected","zoomedArea","plotOptions","area","fillTo","bar","horizontal","columnWidth","barHeight","distributed","borderRadiusApplication","borderRadiusWhenStacked","rangeBarOverlap","rangeBarGroupRows","ranges","backgroundBarColors","backgroundBarOpacity","backgroundBarRadius","dataLabels","maxItems","hideOverflowingLabels","total","bubble","zScaling","minBubbleRadius","maxBubbleRadius","candlestick","upward","downward","wick","useFillColor","boxPlot","upper","lower","heatmap","enableShades","shadeIntensity","reverseNegativeShade","useFillColorAsStroke","colorScale","inverse","treemap","radialBar","inverseOrder","startAngle","endAngle","hollow","margin","imageWidth","imageHeight","imageOffsetX","imageOffsetY","imageClipped","track","pie","customScale","expandOnClick","minAngleToShowLabel","donut","polarArea","rings","spokes","connectorColors","radar","polygons","strokeColors","shade","gradientToColors","inverseColors","opacityFrom","opacityTo","stops","colorStops","src","forecastDataPoints","count","grid","lines","row","column","legend","showForSingleSeries","showForZeroSeries","horizontalAlign","tooltipHoverFormatter","customLegendItems","useSeriesColors","fillColors","customHTML","onClick","itemMargin","vertical","onItemClick","toggleDataSeries","onItemHover","highlightDataSeries","onDblClick","showNullDataPoints","noData","verticalAlign","responsive","subtitle","curve","shared","followCursor","intersect","custom","fillSeriesColor","theme","onDatasetHover","items","display","fixed","categories","overwriteCategories","rotateAlways","hideOverlappingLabels","minHeight","maxHeight","showDuplicates","datetimeUTC","datetimeFormatter","year","month","day","hour","minute","second","groups","tickPlacement","range","colorFrom","colorTo","mode","palette","monochrome","shadeTo","isBarHorizontal","xAxisAnnotations","yAxisAnnotations","pointsAnnotations","xDivision","dataPoints","axisCharts","drawYAxisAnnotations","drawXAxisAnnotations","drawPointAnnotations","elGraphical","index","annotationsBackground","addText","move","addAnnotationExternal","params","pushToMemory","contextMethod","childNodes","memory","methodsToExec","randomId","method","querySelectorAll","listToArray","firstChild","removeChild","months31","months30","daysCntOfYear","parseDate","toISOString","getTime","toUTCString","getTimeStamp","locale","getUTCFullYear","getFullYear","getUTCMonth","getMonth","getUTCDate","getDate","getUTCHours","getHours","getUTCMinutes","getMinutes","getUTCSeconds","getSeconds","getUTCMilliseconds","getMilliseconds","charAt","getTimezoneOffset","getUTCDay","getDay","formatDate","minMillisecond","maxMillisecond","minSecond","maxSecond","minMinute","maxMinute","minHour","maxHour","minDate","maxDate","minMonth","maxMonth","minYear","maxYear","determineDaysOfMonths","isLeapYear","monthMod","seriesRangeStart","seriesRangeEnd","start","end","isFinite","startVal","endVal","ylabel","tooltipLabels","getFormatters","yLbFormatter","_getBoxTooltip","seriesCandleO","seriesCandleH","seriesCandleM","seriesCandleL","seriesCandleC","responsiveOverride","chartType","extendAnnotations","init","stacked100","checkForDarkTheme","Apex","checkForCatToNumericXAxis","handleUserInputErrors","convertCatToNumeric","extendArray","console","warn","Error","seriesRange","seriesGoals","seriesZ","seriesNames","seriesColors","seriesXvalues","seriesYvalues","hasGroups","timescaleLabels","noLabelsProvided","resizeTimer","selectionResizeTimer","pointsArray","dataLabelsRects","isXNumeric","xaxisLabelsCount","skipLastTimelinelabel","skipFirstTimelinelabel","isDataXYZ","isMultiLineX","minXDiff","yAxisScale","xAxisScale","xAxisTicksPositions","yLabelsCoords","yTitleCoords","padHorizontal","xTickAmount","chartID","clicked","clientX","clientY","radarPolygons","msMaxTouchPoints","isDirty","isExecCalled","initialConfig","initialSeries","lastXAxis","lastYAxis","columnSeries","allSeriesCollapsed","collapsedSeries","collapsedSeriesIndices","ancillaryCollapsedSeries","ancillaryCollapsedSeriesIndices","risingSeries","capturedSeriesIndex","capturedDataPointIndex","goldenPadding","ignoreYAxisIndexes","yAxisSameScaleIndices","radialSize","zoomEnabled","panEnabled","selectionEnabled","mousedown","lastClientPosition","visibleXRange","yValueDecimal","SVGNS","svgWidth","svgHeight","previousPaths","allSeriesHasEqualX","lastDrawnDataLabelsIndexes","hasNullValues","rotateXLabels","defaultLabels","xLabelFormatter","yLabelFormatters","xaxisTooltipFormatter","ttKeyFormatter","ttVal","ttZFormatter","LINE_HEIGHT_RATIO","xAxisLabelsHeight","xAxisGroupLabelsHeight","xAxisLabelsWidth","yAxisLabelsWidth","scaleX","scaleY","translateX","translateY","translateYAxisX","yAxisWidths","translateXAxisY","translateXAxisX","globalVars","initGlobalVars","Y","F","document","createElementNS","setAttrs","patternID","patternUnits","setAttributeNS","xlink","preserveAspectRatio","elDefs","seriesNumber","getSeriesIndex","getFillColors","fillType","getFillType","getOpacityFromRGBA","handlePatternFill","fillConfig","patternFill","defaultColor","handleGradientFill","clippedImgArea","solid","drawPattern","shadeColor","rgb2hex","gradientFrom","gradientTo","drawGradient","R","getMarkerConfig","setSelectionFilter","addEvents","finishRadius","getMarkerStyle","pointShape","pointStrokeDashArray","passive","D","initialAnim","dynamicAnim","pointsPos","elParent","drawPoint","fillPath","animateMarker","setTimeout","animateCircle","H","textRects","drawnextLabel","isRangeStart","centerTextInBubble","plotDataLabelsText","parent","offsetCorrection","dataLabelsConfig","alwaysDrawDataLabel","dataLabelsCorrection","addBackgroundToDataLabel","nextSibling","O","legendInactiveClass","getElementsByClassName","escapeString","getSeriesByName","isHidden","isSeriesHidden","legendHelpers","emptyCollapsedSeries","updateHelpers","revertDefaultAxisMinMax","_updateSeries","paths","hasAttribute","handlePrevBubbleScatterPaths","filteredSeriesX","N","twoDSeries","threeDSeries","twoDSeriesX","coreUtils","isFormatXY","isFormat2DArray","activeSeriesIndex","getActiveConfigSeriesIndex","parseNumber","goals","isValidDate","isRangeData","fallbackToCategory","handleRangeDataFormat","rangeUniques","overlaps","rangeName","handleCandleStickBoxDataFormat","findIndex","isRangeBar","error","isComboCharts","handleRangeData","isMultiFormat","handleFormat2DArray","handleFormatXY","handleCandleStickBoxData","convertCatToNumericXaxis","_generateExternalLabels","excludeCollapsedSeriesInYAxis","core","resetGlobals","isMultipleY","parseDataAxisCharts","getLargestSeries","parseDataNonAxisCharts","setNullSeriesToZeroValues","getSeriesTotals","getStackedSeriesTotals","getPercentSeries","handleExternalLabelsData","getCategoryLabels","W","tooltipKeyFormat","defaultGeneralFormatter","legendFormatter","xyCharts","defaultYFormatter","result","niceMax","niceMin","B","xLabelFormat","unit","timeScale","textRect","isBold","reverse","isSeriesNull","pushExtraColors","G","getAttributeNS","isIE11","cloneNode","scaleSvgNode","XMLSerializer","serializeToString","fixSvgStringForIe11","cleanup","getSvgString","Blob","URL","createObjectURL","Promise","scale","createElement","elWrap","getContext","fillStyle","fillRect","canvg","Canvg","fromString","ignoreClear","ignoreDimensions","msToBlob","stop","blob","encodeURIComponent","Image","crossOrigin","onload","drawImage","toDataURL","imgURI","triggerDownload","svgUrl","dataURI","then","msSaveOrOpenBlob","fileName","lineDelimiter","getLabel","pop","href","body","V","elgrid","axesUtils","xaxisLabels","drawnLabels","drawnLabelsRects","offY","isCategoryBarHorizontal","xaxisFontSize","xaxisFontFamily","xaxisForeColors","xaxisBorderWidth","xaxisBorderHeight","drawXAxisLabelAndGroup","cols","elGridBorders","checkLabelBasedOnTickamount","checkForOverflowingLabels","xAxisHeight","on","labelIndex","getYAxisForeColor","drawYAxisTicks","placeTextWithEllipsis","renderGrid","drawGridArea","elGridRectMask","elGridRectMarkerMask","elForecastMask","elNonForecastMask","elGridRect","elGridRectMarker","xCount","_drawGridLine","drawXaxisTicks","elg","xC","_drawGridLines","elgridLinesV","elgridLinesH","hide","_drawXYLines","_drawInvertedXYLines","drawGridBands","xAxisTickWidth","_drawGridBandRect","_","_adjustTicksForSmallRange","linearScale","ceil","isFloat","logarithmicScale","logarithmicScaleNice","niceScale","similarIndex","alreadyExists","setYScaleForIndex","sameScaleInMultipleAxes","sort","JSON","stringify","U","scales","setYRange","setXRange","setZRange","noExponents","lowestY","highestY","getMinYMaxY","_setStackedMinMax","setMultipleYScales","setXScale","_handleSingleDataPoint","_getMinXDiff","setUTCDate","setDate","q","axisFontFamily","xAxisoffX","isYAxisHidden","checkForReversedLabels","inversedYAxisTitleText","inversedYAxisBorder","xPaddingForYAxisTitle","xPos","padd","multipleYs","Z","documentEvent","chartClass","eventList","which","capture","setupBrushHandler","touches","$","J","drawYaxisInversed","drawXaxisInversed","drawXaxis","drawYaxis","Q","K","breakpoint","innerWidth","screen","extendArrayProps","overrideResponsiveOptions","tt","isColorFn","isHeatmapDistributed","isBarDistributed","setDefaultColors","predefined","et","drawTitleSubtitle","it","dCtx","lgRect","getxAxisTimeScaleLabelsCoords","lgWidthForSideLegends","getLargestStringFromArr","dimHelpers","getLargestStringFromMultiArr","yAxisWidth","gridPad","overlappingXLabels","yAxisWidthRight","yAxisWidthLeft","xPadRight","xPadLeft","st","rt","isSparkline","getTitleSubtitleCoords","ot","dimYAxis","dimXAxis","dimGrid","getLegendsRect","entries","next","done","return","setDimensionsForAxisCharts","setDimensionsForNonAxisCharts","gridPadFortitleSubtitle","gridPadForColumnsInNumericAxis","getyAxisLabelsCoords","getyAxisTitleCoords","getTotalYAxisWidth","getxAxisLabelsCoords","getxAxisGroupLabelsCoords","getxAxisTitleCoords","conditionalChecksForAxisCoords","xAxisWidth","additionalPaddingXLabels","setGridXPosForDualYAxis","setYAxisXPosition","nt","lgCtx","createTextNode","clwh","clww","elLegendForeign","elLegendWrap","getLegendStyles","cs","csi","riseCollapsedSeries","hideSeries","seriesEl","printDataLabelsInner","fire","baseVal","_getSeriesBasedOnCollapsedState","lt","onLegendClick","onLegendHovered","isBarsDistributed","drawLegends","getElementsByTagName","appendToForeignObject","legendAlignHorizontal","legendAlignVertical","setProperty","getSeriesTotalByIndex","seriesHaveSameValues","getLegendBBox","setLegendWrapXY","highlightRangeInSeries","toggleSeriesOnHover","ht","ev","selectedClass","localeValues","elZoom","elZoomIn","elZoomOut","elPan","elSelection","elZoomReset","elMenuIcon","elMenu","elCustomIcons","icon","moveIndexInArray","_createHamburgerMenu","addToolbarEventListeners","elMenuItems","handleZoomReset","toggleZoomSelection","handleZoomIn","handleZoomOut","togglePanning","toggleMenu","handleDownload","getSyncedCharts","toggleOtherControls","getToolbarIconsReference","_getNewMinXMaxX","disableZoomIn","zoomUpdateOptions","disableZoomOut","getBeforeZoomRange","autoScaleY","_updateOptions","zoomCallback","exportToPng","ct","dragged","startX","endX","dragX","startY","endY","dragY","moveDirection","xyRatios","zoomRect","selectionRect","gridRect","slDraggableRect","draggable","selectionDragging","preselectedSelection","hoverArea","svgMouseEvents","off","shiftKey","shiftWasPressed","enableZoomPanFromToolbar","changedTouches","panDragging","zoomtype","selectionDrawing","selectionDrawn","delayedPanScrolled","hideSelectionRect","makeSelectionRectDraggable","selectize","pointSize","pointType","resize","constraint","drawSelectionRect","clearTimeout","panScrolled","updateScrolledChart","dt","ttCtx","elGrid","hasBars","getElGrid","closestInMultiArray","closestInArray","capturedSeries","hoverX","hoverY","getFirstActiveXArray","getElMarkers","getElBars","allTooltipSeriesGroups","gt","tooltipUtil","ttItems","handleCustomTooltip","toggleActiveInactiveSeries","getValuesToPrint","printLabels","values","getElTooltip","tooltipRect","ttWidth","ttHeight","xVal","zVal","xAxisTTVal","getSeriesName","fn","yLbTitleFormatter","attrs","DOMHandling","goalVals","pColor","children","showTooltipTitle","tooltipTitle","isXAxisTooltipEnabled","xaxisTooltipText","toggleAllTooltipSeriesGroups","ut","getElXCrosshairs","xcrosshairsWidth","moveXAxisTooltip","ycrosshairs","ycrosshairsHidden","xaxisTooltip","xaxisOffY","yaxisTTEls","resetPointsSize","enlargeCurrentPoint","moveDynamicPointOnHover","getHoverMarkerSize","moveXCrosshairs","fixedTooltip","moveTooltip","getAllMarkers","dataPointsDividedWidth","ft","tooltipPosition","newPointSize","oldPointSize","lastChild","pt","opt","getAttr","drawSeriesTexts","findAncestor","showOnIntersect","getBarTooltipXY","dataPointsDividedHeight","barWidth","xt","yaxisOffX","yaxisTooltip","yaxisTooltipText","yaxisTooltips","moveYCrosshairs","moveYAxisTooltip","bt","tConfig","axesTooltip","isBarShared","lastHoverTime","now","drawXaxisTooltip","drawYaxisTooltip","setXCrosshairWidth","handleYCrosshair","getXAxisTicksPositions","drawDynamicPoints","legendLabels","createTTElements","addSVGEvents","order","seriesBound","tooltipEl","tooltipY","tooltipX","addPathsEventListeners","addDatapointEventsListeners","onSeriesHover","seriesHover","seriesHoverTimeout","getGroupedCharts","seriesHoverByContext","chartCtx","drawFixedTooltipRect","axisChartsTooltips","nonAxisChartsTooltips","handleMouseOut","handleStickyTooltip","handleHeatTreeTooltip","handleBarTooltip","hasMarkers","handleMarkerTooltip","drawYaxisTooltipText","decodeURIComponent","getNearestValues","handleStickyCapturedSeries","isXoverlap","isInitialSeriesSameLen","deactivateHoverFilter","enlargePoints","moveDynamicPointsOnHover","barSeriesHeight","getBarsHeight","moveStickyTooltipOverBars","moveMarkers","vt","barCtx","totalFormatter","barYPosition","visibleSeries","renderedPath","barOptions","bcx","bcy","dataLabelsX","dataLabelsY","barDataLabelsConfig","barTotalDataLabelsConfig","offX","isHorizontal","calculateBarsDataLabelsPosition","calculateColumnsDataLabelsPosition","drawCalculatedDataLabels","drawTotalDataLabels","totalDataLabelsX","totalDataLabelsY","totalDataLabelsAnchor","getStackedTotalDataLabel","totalDataLabels","isReversed","lastActiveBarSerieIndex","mt","totalItems","seriesLen","visibleI","visibleItems","zeroSerieses","radiusOnSeriesNumber","checkZeroSeries","yaxisIndex","yDivision","zeroH","zeroW","isNullValue","elSeries","barXPosition","columnWidthOffset","getPreviousPath","shouldApplyRadius","roundPathCorners","yArrj","yArrjF","yArrjVal","barHeightOffset","xArrj","xArrjF","xArrjVal","getXForValue","getYForValue","goalX","goalY","strokeHeight","strokeLineCap","yt","getBarSeriesIndices","barHelpers","getLogSeries","getLogYRatios","initVariables","addCollapsedClassToSeries","initialPositions","getStrokeWidth","indexes","bc","drawBarPaths","drawColumnPaths","drawGoalLine","getPathFillColor","renderSeries","pathFill","elDataLabelsWrap","elGoalsMarkers","lineFill","renderPaths","handleBarDataLabels","getBarpaths","barBackground","getGoalValues","getColumnPaths","wt","prevY","prevX","prevYF","prevXF","prevYVal","prevXVal","drawStackedBarPaths","drawStackedColumnPaths","kt","candlestickOptions","boxOptions","isBoxPlot","drawHorizontalBoxPaths","drawVerticalBoxPaths","getOHLCValue","At","determineColor","percent","colorProps","St","rectRadius","negRange","checkColorRange","getShadeColor","addListeners","animateHeatMap","animateHeatColor","calculateDataLabels","unshift","animateRect","Ct","Lt","animBeginArr","animDur","donutDataLabels","lineColorArr","defaultSize","centerY","centerX","fullAngle","initialAngle","donutSize","sliceLabels","sliceSizes","prevSectorAngleArr","ret","negToZero","drawPolarElements","drawArcs","renderInnerDataLabels","hollowSize","getChangedPath","polarToCartesian","animatePaths","prevStartAngle","prevEndAngle","animateStartingPos","shouldSetPrevPaths","dur","pieClicked","revertDataLabelsInner","animateArc","getPiePath","me","angle","during","isTrack","drawYAxisTexts","drawSpokes","printInnerLabels","makeSliceOut","printLabel","Pt","isLog","maxValue","minValue","dataRadiusOfPercent","dataRadius","angleArr","yaxisLabelsTextsPos","dataPointsLen","disAngle","yaxisLabels","getDataPointsPos","createPaths","linePathsTo","linePathsFrom","areaPathsFrom","areaPathsTo","drawPolygons","drawXAxisTexts","getPolygonPos","drawPolygon","getTextPos","newX","newY","Tt","totalAngle","trackStartAngle","trackEndAngle","radialDataLabels","drawTracks","colorArr","elHollow","drawHollowImage","drawHollow","loaded","Mt","rangeBarOptions","rangeBar","detectOverlappingBars","srty","initPositions","drawRangeBarPaths","drawRangeColumnPaths","getRangeValue","It","lineCtx","categoryAxisCorrection","pathFromLine","pathFromArea","appendPathFrom","lineYPosition","prevSeriesY","zeroY","zt","pointsChart","scatter","noNegatives","lineHelpers","sameValueSeriesFix","_initSerieVariables","determineFirstPrevY","pX","pY","pathsFrom","_calculatePathsFrom","prevY2","linePaths","areaPaths","_iterateOverDataPoints","iterations","linePath","_handlePaths","elPointsMain","areaBottomY","checkPreviousPaths","areaPath","calculatePoints","_createPaths","handleNullDataPoints","_handleMarkersAndLabels","draw","plotChartMarkers","drawDataLabel","TreemapSquared","generate","xoffset","yoffset","shortestEdge","getCoordinates","cutArea","Xt","Et","Yt","animateTreemap","getFontSize","rotateToFitLabel","Rt","timeScaleArray","utc","determineInterval","getTimeUnitsfromTimestamp","firstVal","currentMillisecond","currentSecond","currentMinute","currentHour","currentMonthDate","currentDate","currentMonth","currentYear","daysWidthOnXAxis","hoursWidthOnXAxis","minutesWidthOnXAxis","secondsWidthOnXAxis","numberOfSeconds","numberOfMinutes","numberOfHours","numberOfDays","numberOfMonths","numberOfYears","tickInterval","generateYearScale","generateMonthScale","generateDayScale","generateHourScale","generateMinuteScale","generateSecondScale","formatDates","removeOverlappingTS","plotCoords","determineRemainingDaysOfYear","determineDaysOfYear","_getYear","date","createRawDateString","parseDateWithTimezone","dateString","Dt","Doc","setSVGDimensions","elAnnotations","getDimensions","drawXCrosshairs","drawYCrosshairs","calculateTimeScaleTicks","recalcDimensionsBasedOnFormat","getCalculatedRatios","targets","ApexCharts","getChartByID","brushSource","updateSourceChart","Ht","getPreviousPaths","update","_extendSeries","supported","parser","prepare","ns","xmlns","svgjs","did","eid","Set","inherit","invent","Container","adopt","instance","nodeName","SVGElement","Nested","Gradient","Element","namespace","setData","documentElement","nested","poly","polyline","native","numberAndUnit","hex","reference","transforms","whitespace","isHex","isRgb","isCss","isBlank","isPercent","isImage","delimiter","hyphen","pathLetters","isPathLetter","numbersWithDots","dots","utils","filterSVGElements","Color","exec","toHex","toRgb","brightness","morph","destination","isColor","PointArray","toUpperCase","PathArray","Point","toJSON","plus","minus","times","divide","relative","_stroke","_event","center","writeDataToDom","after","removeElement","addTo","put","putIn","visible","hasClass","addClass","removeClass","toggleClass","get","matches","doc","parents","matchesSelector","msMatchesSelector","mozMatchesSelector","webkitMatchesSelector","oMatchesSelector","Parent","each","removeAttribute","MorphObj","Situation","reversing","duration","finish","ease","loop","loops","styles","once","FX","_target","situations","situation","paused","lastPos","absPos","_speed","queue","timeToAbsPos","absPosToTime","startAnimFrame","stopAnimFrame","animationFrame","requestAnimationFrame","step","cancelAnimationFrame","startCurrent","initAnimations","shift","dequeue","initialTransformation","matrixify","clearQueue","clearCurrent","atEnd","last","detail","_callStart","eased","eachAt","Matrix","multiply","undo","extract","matrix","Box","BBox","Shape","clientLeft","clientTop","atan2","transformedX","transformedY","rotation","translate","createSVGMatrix","ctm","getCTM","screenCTM","getScreenCTM","point","attributes","nodeValue","leading","rebuild","untransform","toParent","toDoc","Transformation","inversed","Translate","cssText","has","first","clear","hasChildNodes","_defs","ungroup","Defs","flatten","ViewBox","listeners","handlerMap","listenerId","_svgjsListenerId","removeEventListener","Event","dispatchEvent","CustomEvent","cancelable","event","getElementById","version","Stop","Pattern","Use","element","use","Rect","Circle","Ellipse","ellipse","Line","array","toLine","Polyline","Polygon","_array","morphArray","Path","load","_loaded","ratio","url","_error","Text","_rebuild","_build","nodeType","newLined","build","textPath","Tspan","dx","dy","TextPath","prefix","getTotalLength","pointAt","getPointAtLength","set","remember","forget","_memory","bubbles","createEvent","initCustomEvent","backgroundAlpha","autoSetIn","BlendEffect","colorMatrix","ColorMatrixEffect","convolveMatrix","ConvolveMatrixEffect","ComponentTransferEffect","CompositeEffect","FloodEffect","OffsetEffect","ImageEffect","MergeEffect","GaussianBlurEffect","morphology","MorphologyEffect","diffuseLighting","DiffuseLightingEffect","displacementMap","DisplacementMapEffect","specularLighting","SpecularLightingEffect","tile","TileEffect","turbulence","TurbulenceEffect","Effect","in","ParentEffect","ChildEffect","in2","kernelMatrix","operator","xChannelSelector","yChannelSelector","numOctaves","seed","stitchTiles","baseFrequency","MergeNode","surfaceScale","diffuseConstant","kernelUnitLength","specularExponent","distantLight","azimuth","elevation","pointLight","spotLight","pointsAtX","pointsAtY","pointsAtZ","mergeNode","sepiatone","dest","reflection","acos","tan","transformPoint","matrixTransform","rbox","buttons","handler","defaultPrevented","preventDefault","stopPropagation","createSVGPoint","startPoints","box","drag","snapToGrid","pointSelection","isSelected","rectSelection","pointsList","rb","lb","pointCoord","pointCoords","pointsExclude","deepSelect","selectPoints","selectRect","observe","drawPoints","getPointArray","returnValue","pageX","pageY","classPoints","updatePointSelection","updateRectSelection","rotationPoint","classRect","MutationObserver","observerInst","disconnect","parameters","lastUpdateCall","pageXOffset","pageYOffset","_extractPosition","calc","checkAspectRatio","snapToAngle","constraintToBox","saveAspectRatio","Ot","publicMethods","axes","localization","formatters","titleSubtitle","dimensions","zoomPanSelection","Nt","isUpdating","destroy","clearDomElements","killSVG","Wt","WeakMap","Bt","initModules","windowResizeHandler","_windowResizeHandler","parentResizeHandler","_parentResizeCallback","_chartInstances","setLocale","Node","DOCUMENT_FRAGMENT_NODE","ResizeObserver","css","getRootNode","ownerDocument","prepend","head","mount","catch","checkResponsiveConfig","setupElements","checkComboSeries","handleNoData","setupEventHandlers","parseData","setGlobalMarkerSize","setLabelFormatters","hasAllSeriesEqualX","coreCalculations","heatmapLabelFormatters","getLargestMarkerSize","xySettings","createGridMask","plotChartType","bringForward","dataLabelsBackground","shiftGraphPosition","elGraph","elInner","drawGrid","drawAxis","drawImageAnnos","drawTextAnnos","xAxisLabelCorrections","setYAxisTextAlignments","yAxisTitleRotate","drawAxesAnnotations","drawTooltip","createToolbar","resizeNonAxisCharts","delete","resetSeries","forceXAxisUpdate","forceYAxisUpdate","clearPreviousPaths","updateThemeOptions","toggleSeries","showSeries","addXaxisAnnotationExternal","addYaxisAnnotationExternal","addPointAnnotationExternal","clearAnnotations","removeAnnotation","getSeriesTotalsXRange","toggleDataPointSelection","setCurrentLocaleValues","_windowResize","render","DataView","getNative","hashClear","hashDelete","hashGet","hashHas","hashSet","Hash","entry","listCacheClear","listCacheDelete","listCacheGet","listCacheHas","listCacheSet","ListCache","Map","mapCacheClear","mapCacheDelete","mapCacheGet","mapCacheHas","mapCacheSet","MapCache","setCacheAdd","setCacheHas","SetCache","__data__","stackClear","stackDelete","stackGet","stackHas","stackSet","Stack","Uint8Array","func","thisArg","args","predicate","resIndex","baseTimes","isArguments","isBuffer","isIndex","isTypedArray","inherited","isArr","isArg","isBuff","isType","skipIndexes","baseAssignValue","eq","objValue","objectCreate","baseCreate","proto","baseFor","createBaseFor","arrayPush","keysFunc","symbolsFunc","getRawTag","objectToString","symToStringTag","toStringTag","baseGetTag","isObjectLike","baseIsEqualDeep","baseIsEqual","other","bitmask","customizer","stack","equalArrays","equalByTag","equalObjects","getTag","argsTag","arrayTag","objectTag","equalFunc","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","objIsWrapped","othIsWrapped","objUnwrapped","othUnwrapped","isFunction","isMasked","toSource","reIsHostCtor","funcProto","Function","objectProto","funcToString","reIsNative","isLength","typedArrayTags","isPrototype","nativeKeys","nativeKeysIn","isProto","assignMergeValue","baseMergeDeep","keysIn","safeGet","baseMerge","srcIndex","srcValue","newValue","cloneBuffer","cloneTypedArray","copyArray","initCloneObject","isArrayLikeObject","isPlainObject","toPlainObject","mergeFunc","isCommon","isTyped","identity","overRest","setToString","constant","baseSetToString","string","iteratee","cache","arrayBuffer","byteLength","freeExports","freeModule","Buffer","allocUnsafe","buffer","isDeep","copy","cloneArrayBuffer","typedArray","byteOffset","assignValue","props","isNew","coreJsData","baseRest","isIterateeCall","assigner","sources","guard","fromRight","iterable","arraySome","cacheHas","isPartial","arrLength","othLength","arrStacked","othStacked","seen","arrValue","othValue","compared","othIndex","mapToArray","setToArray","symbolProto","symbolValueOf","tag","message","convert","getAllKeys","objProps","objLength","objStacked","skipCtor","objCtor","othCtor","freeGlobal","baseGetAllKeys","getSymbols","isKeyable","baseIsNative","getValue","getPrototype","overArg","nativeObjectToString","isOwn","unmasked","arrayFilter","stubArray","propertyIsEnumerable","nativeGetSymbols","mapTag","promiseTag","setTag","weakMapTag","dataViewTag","dataViewCtorString","mapCtorString","promiseCtorString","setCtorString","weakMapCtorString","ArrayBuffer","resolve","Ctor","ctorString","nativeCreate","reIsUint","isArrayLike","uid","maskSrcKey","IE_PROTO","assocIndexOf","getMapData","freeProcess","process","nodeUtil","require","types","binding","arg","nativeMax","otherArgs","freeSelf","self","shortOut","nativeNow","lastCalled","stamp","remaining","pairs","LARGE_ARRAY_SIZE","baseIsArguments","stubFalse","objectCtorString","baseIsTypedArray","baseUnary","nodeIsTypedArray","arrayLikeKeys","baseKeys","baseKeysIn","createAssigner","copyObject","ssrDocument","activeElement","initEvent","importNode","location","hash","host","hostname","origin","pathname","protocol","search","win","history","replaceState","pushState","go","back","getPropertyValue","matchMedia","Dom7","arr","selector","els","tempParent","html","toCreate","unique","uniqueArray","Class","Methods","toggle","attrName","removeAttr","dom7ElementDataStorage","elStyle","webkitTransform","transition","webkitTransitionDuration","transitionDuration","eventType","targetSelector","listener","handleLiveEvent","eventData","dom7EventData","handleEvent","dom7LiveListeners","proxyListener","dom7Listeners","handlers","dom7proxy","trigger","evt","dataIndex","transitionEnd","callback","fireCallBack","outerWidth","includeMargins","offsetWidth","outerHeight","offsetHeight","scrollTop","scrollLeft","prop","compareWith","child","previousSibling","returnIndex","append","newChild","tempDiv","nextElementSibling","nextAll","nextEls","prev","previousElementSibling","prevAll","prevEls","closest","find","foundElements","found","matchedItems","toAdd","methodName","Utils","deleteProps","nextTick","getTranslate","axis","curTransform","transformMatrix","curStyle","MozTransform","OTransform","MsTransform","msTransform","m41","m42","parseUrlQuery","query","param","urlToParse","paramsPart","nextSource","keysArray","nextIndex","len","nextKey","desc","Support","touch","pointerEvents","observer","passiveListener","supportsPassive","gestures","SwiperClass","eventsListeners","eventName","priority","onceHandler","f7proxy","eventHandler","emit","useModulesParams","instanceParams","modules","moduleName","useModules","modulesParams","moduleParams","modulePropName","moduleProp","moduleEventName","components","static","install","installModule","updateSize","swiper","$el","isVertical","updateSlides","$wrapperEl","swiperSize","rtlTranslate","rtl","wrongRTL","isVirtual","virtual","previousSlidesLength","slides","slideClass","slidesLength","snapGrid","slidesGrid","slidesSizesGrid","slidesForMargin","slideIndex","cssMode","offsetBefore","slidesOffsetBefore","offsetAfter","slidesOffsetAfter","previousSnapGridLength","previousSlidesGridLength","slidesNumberEvenToRows","slideSize","spaceBetween","slidePosition","prevSlideSize","virtualSize","marginLeft","marginTop","marginRight","marginBottom","slidesPerColumn","slidesPerView","slidesPerColumnFill","slidesPerRow","numFullColumns","slide","newSlideOrderIndex","slidesPerGroup","groupIndex","slideIndexInGroup","columnsInGroup","slideStyles","currentTransform","currentWebKitTransform","roundLengths","boxSizing","swiperSlideSize","centeredSlides","slidesPerGroupSkip","newSlidesGrid","effect","setWrapperSize","slidesGridItem","centeredSlidesBounds","allSlidesSize","slideSizeValue","maxSnap","snap","centerInsufficientSlides","allSlidesOffset","snapIndex","watchOverflow","checkOverflow","watchSlidesProgress","watchSlidesVisibility","updateSlidesOffset","updateAutoHeight","activeSlides","newHeight","setTransition","visibleSlides","activeIndex","swiperSlideOffset","offsetLeft","offsetTop","updateSlidesProgress","offsetCenter","slideVisibleClass","visibleSlidesIndexes","slideProgress","minTranslate","autoHeight","slideBefore","slideAfter","progress","updateProgress","multiplier","translatesDiff","maxTranslate","isBeginning","isEnd","wasBeginning","wasEnd","updateSlidesClasses","activeSlide","slideActiveClass","slideNextClass","slidePrevClass","slideDuplicateActiveClass","slideDuplicateNextClass","slideDuplicatePrevClass","slideDuplicateClass","nextSlide","prevSlide","updateActiveIndex","newActiveIndex","previousIndex","previousRealIndex","previousSnapIndex","normalizeSlideIndex","skip","initialized","runCallbacksOnInit","updateClickedSlide","slideFound","clickedSlide","clickedIndex","slideToClickedSlide","virtualTranslate","currentTranslate","setTranslate","byController","wrapperEl","newProgress","previousTranslate","translateTo","runCallbacks","translateBounds","internal","animating","preventInteractionOnTransition","newTranslate","isH","scrollTo","behavior","onTranslateToWrapperTransitionEnd","destroyed","slideTo","initialSlide","allowSlideNext","allowSlidePrev","direction","transitionStart","scrollWidth","onSlideToWrapperTransitionEnd","slideToLoop","newIndex","loopedSlides","slideNext","increment","loopFix","_clientLeft","slidePrev","normalize","normalizedTranslate","normalizedSnapGrid","prevIndex","prevSnap","slideReset","slideToClosest","threshold","currentSnap","slidesPerViewDynamic","slideToIndex","loopCreate","loopFillGroupWithBlank","blankSlidesNum","blankNode","slideBlankClass","loopAdditionalSlides","prependSlides","appendSlides","diff","loopDestroy","grabCursor","setGrabCursor","moving","simulateTouch","isLocked","cursor","unsetGrabCursor","manipulation","appendSlide","prependSlide","addSlide","activeIndexBuffer","baseLength","slidesBuffer","currentSlide","removeSlide","slidesIndexes","indexToRemove","removeAllSlides","Device","platform","ua","device","ios","android","androidChrome","desktop","iphone","ipod","ipad","edge","ie","firefox","macos","windows","cordova","phonegap","electron","screenWidth","screenHeight","os","osVersion","webView","webview","standalone","pixelRatio","onTouchStart","touchEventsData","originalEvent","$targetEl","touchEventsTarget","isTouchEvent","button","isTouched","isMoved","noSwiping","noSwipingSelector","noSwipingClass","allowClick","swipeHandler","currentX","targetTouches","currentY","edgeSwipeDetection","iOSEdgeSwipeDetection","edgeSwipeThreshold","iOSEdgeSwipeThreshold","allowTouchCallbacks","isScrolling","startMoving","touchStartTime","swipeDirection","allowThresholdMove","formElements","shouldPreventDefault","allowTouchMove","touchStartPreventDefault","touchStartForcePreventDefault","onTouchMove","targetTouch","preventedByNestedSwiper","touchReleaseOnEdges","diffX","diffY","touchAngle","touchMoveStopPropagation","startTranslate","allowMomentumBounce","touchRatio","disableParentSwiper","resistanceRatio","resistance","followFinger","freeMode","velocities","time","onTouchEnd","touchEndTime","timeDiff","lastClickTime","currentPos","freeModeMomentum","lastMoveEvent","velocityEvent","distance","velocity","freeModeMinimumVelocity","freeModeMomentumVelocityRatio","momentumDuration","freeModeMomentumRatio","momentumDistance","newPosition","afterBouncePosition","doBounce","bounceAmount","freeModeMomentumBounceRatio","needsLoopFix","freeModeMomentumBounce","freeModeSticky","moveDistance","currentSlideSize","longSwipesMs","stopIndex","groupSize","longSwipes","longSwipesRatio","shortSwipes","navigation","nextEl","prevEl","onResize","breakpoints","setBreakpoint","autoplay","running","run","preventClicks","preventClicksPropagation","stopImmediatePropagation","onScroll","dummyEventAttached","dummyEventListener","updateOnWindowResize","uniqueNavElements","preloadImages","updateOnImagesReady","passiveListeners","containerModifierClass","wrapperClass","prototypes","dir","attachEvents","touchEvents","cancel","detachEvents","getBreakpoint","currentBreakpoint","breakpointOnlyParams","paramValue","breakpointParams","originalParams","wasMultiRow","isMultiRow","directionChanged","needsReLoop","changeDirection","minRatio","wasLocked","lastSlidePosition","addClasses","classNames","suffixes","suffix","removeClasses","loadImage","imageEl","srcset","sizes","checkForComplete","onReady","complete","onerror","imagesLoaded","imagesToLoad","currentSrc","extendedDefaults","Swiper","super","prototypeGroup","protoMethod","moduleParamName","swiperParams","passedParams","swipers","containerEl","newParams","shadowRoot","touchEventsTouch","touchEventsDesktop","clickTimeout","spv","breakLoop","translateValue","translated","newDirection","needUpdate","currentDirection","slideEl","deleteInstance","cleanStyles","newDefaults","Device$1","Support$1","support","Browser","isEdge","isWebView","Browser$1","browser","Resize","resizeHandler","orientationChangeHandler","Observer","attach","ObserverFunc","mutations","observerUpdate","childList","characterData","observers","observeParents","containerParents","observeSlideChildren","Observer$1","Virtual","force","addSlidesBefore","addSlidesAfter","previousFrom","previousTo","previousSlidesGrid","renderSlide","previousOffset","offsetProp","slidesAfter","slidesBefore","onRendered","lazy","renderExternal","slidesToRender","prependIndexes","appendIndexes","$slideEl","numberOfNewSlides","newCache","cachedIndex","$cachedEl","cachedElIndex","Virtual$1","beforeInit","overwriteParams","Keyboard","handle","kc","keyCode","charCode","pageUpDown","keyboard","isPageUp","isPageDown","isArrowLeft","isArrowRight","isArrowUp","isArrowDown","altKey","ctrlKey","metaKey","onlyInViewport","inView","windowWidth","windowHeight","swiperOffset","swiperCoord","enable","disable","Keyboard$1","Mousewheel","lastScrollTime","lastEventBeforeSnap","recentWheelEvents","isSupported","isEventSupported","sX","sY","wheelDelta","wheelDeltaY","wheelDeltaX","HORIZONTAL_AXIS","deltaY","deltaX","deltaMode","spinX","spinY","pixelX","pixelY","handleMouseEnter","mouseEntered","handleMouseLeave","mousewheel","eventsTarged","releaseOnEdges","delta","rtlFactor","forceToAxis","invert","newEvent","sign","ignoreWheelEvents","sensitivity","timeout","prevEvent","firstEvent","snapToThreshold","autoplayDisableOnInteraction","raw","animateSlider","releaseScroll","Navigation","$nextEl","$prevEl","disabledClass","lockClass","onPrevClick","onNextClick","Pagination","pagination","current","paginationType","bullets","firstIndex","lastIndex","midIndex","dynamicBullets","bulletSize","dynamicMainBullets","dynamicBulletIndex","bulletActiveClass","bullet","$bullet","bulletIndex","$firstDisplayedBullet","$lastDisplayedBullet","dynamicBulletsLength","bulletsOffset","currentClass","formatFractionCurrent","totalClass","formatFractionTotal","progressbarDirection","progressbarOpposite","progressbarFillClass","renderCustom","paginationHTML","numberOfBullets","renderBullet","bulletClass","bulletElement","renderFraction","renderProgressbar","clickable","clickableClass","modifierClass","progressbarOppositeClass","hiddenClass","Scrollbar","scrollbar","dragSize","trackSize","$dragEl","newSize","newPos","divider","moveDivider","getPointerPosition","setDragPosition","dragStartPos","positionRatio","onDragStart","dragTimeout","onDragMove","onDragEnd","snapOnRelease","enableDraggable","activeListener","disableDraggable","$swiperEl","dragClass","dragEl","Parallax","setTransform","currentOpacity","currentScale","parallax","parallaxEl","$parallaxEl","parallaxDuration","Zoom","getDistanceBetweenTouches","onGestureStart","gesture","fakeGestureTouched","fakeGestureMoved","scaleStart","$imageEl","$imageWrapEl","containerClass","maxRatio","isScaling","onGestureChange","scaleMove","onGestureEnd","touchesStart","slideWidth","slideHeight","scaledWidth","scaledHeight","touchesCurrent","prevPositionX","prevPositionY","prevTime","momentumDurationX","momentumDurationY","momentumDistanceX","newPositionX","momentumDistanceY","newPositionY","onTransitionEnd","out","touchX","touchY","translateMinX","translateMinY","translateMaxX","translateMaxY","zoomedSlideClass","activeListenerWithCapture","slideSelector","Lazy","loadInSlide","loadInDuplicate","$images","elementClass","loadedClass","loadingClass","imageIndex","$pictureEl","sourceIndex","sourceEl","$source","preloaderClass","slideOriginalIndex","originalSlide","duplicatedSlide","slideExist","initialImageLoaded","elIndex","loadPrevNext","loadPrevNextAmount","amount","maxIndex","minIndex","Controller","LinearSpline","binarySearch","guess","i1","i3","interpolate","getInterpolateFunction","controller","spline","controlled","control","controlledTranslate","setControlledTranslate","by","setControlledTransition","Controller$1","a11y","makeElFocusable","makeElNotFocusable","addElRole","role","addElLabel","disableEl","enableEl","onEnterKey","notify","lastSlideMessage","nextSlideMessage","firstSlideMessage","prevSlideMessage","notification","liveRegion","updateNavigation","updatePagination","bulletEl","$bulletEl","paginationBulletMessage","History","hashNavigation","getPathValues","scrollToSlide","setHistoryPopState","pathArray","part","setHistory","slugify","currentState","HashNavigation","onHashCange","newHash","setHash","watchState","Autoplay","$activeSlideEl","reverseDirection","stopOnLastSlide","pause","waitForTransition","Fade","tx","ty","slideOpacity","fadeEffect","crossFade","eventTriggered","triggerEvents","Cube","swiperWidth","swiperHeight","cubeEffect","$cubeShadowEl","wrapperRotate","shadow","slideAngle","tz","slideShadows","shadowBefore","shadowAfter","shadowOffset","shadowScale","shadowAngle","scale1","scale2","zFactor","Flip","flipEffect","limitRotation","rotateY","rotateX","zIndex","Coverflow","coverflowEffect","depth","offsetMultiplier","modifier","translateZ","stretch","slideTransform","$shadowBeforeEl","$shadowAfterEl","prefixedPointerEvents","perspectiveOrigin","Thumbs","thumbs","thumbsParams","swiperCreated","thumbsContainerClass","onThumbClick","thumbsSwiper","slideThumbActiveClass","currentIndex","initial","autoScrollOffset","useOffset","newThumbsIndex","currentThumbsIndex","prevThumbsIndex","nextThumbsIndex","thumbsToActivate","thumbActiveClass","multipleActiveThumbs","hideOnClick","toEdge","fromEdge","activeIndexChange","snapIndexChange","slidesLengthChange","snapGridLengthChange","touchStart","touchEnd","doubleTap","slideChange","loadOnTransitionStart","scroll","scrollbarDragMove","notificationClass","paginationUpdate","disableOnInteraction","onVisibilityChange","visibilityState","beforeTransitionStart","sliderFirstMove","beforeDestroy","_typeof","ApexChartsComponent","required","default","created","_this","$watch","updateOptions","updateSeries","refresh","methods","_this2","newOptions","$listeners","item","_this3","output","_source","_defineProperty","newSeries","redrawPaths","updateSyncedCharts","appendSeries","zoomX","appendData","newData","addShape","localeName","VueApexCharts","Vue","factory","CoreNames","ComponentEvents","ComponentPropNames","DEFAULT_CLASSES","freeze","SWIPER_EVENTS","__spreadArrays","il","jl","SlotNames","kebabcase","handleClickSlideEvent","_a","_b","_c","eventPath","composedPath","slides_1","includes","some","reallyIndex","dataset","swiperSlideIndex","reallyIndexValue","isInteger","ClickSlide","bindSwiperEvents","arguments$1","_i","kebabcaseName","getDirective","globalOptions","getStandardisedOptionByAttrs","vnode","_d","getSwiperInstanceName","SwiperInstance","getSwiperInstance","instanceName","getSwipeOptions","getBooleanValueByInput","input","getEventEmiter","componentOptions","fns","emitEvent","inserted","swiperOptions","vueContext","Ready","componentUpdated","_e","_f","_g","_h","_j","_k","_l","_m","autoUpdate","AutoUpdate","isLoop","unbind","autoDestroy","AutoDestroy","DeleteInstanceOnDestroy","CleanupStylesOnDestroy","getSwiperComponent","SwiperComponent","defaultOptions","computed","swiperInstance","handleSwiperClick","$emit","autoReLoopSwiper","updateSwiper","destroySwiper","initSwiper","activated","$nextTick","staticClass","$slots","ParallaxBg","PrevButton","NextButton","SwiperSlideComponent","$parent","getInstaller","installed","component","directive","SwiperDirective","VueAwesomeSwiper","exporter","SwiperSlide","content","__esModule","locals","listToStyles","parentId","newStyles","media","sourceMap","parts","hasDocument","DEBUG","stylesInDom","singletonElement","singletonCounter","isProduction","noop","ssrIdKey","isOldIE","addStylesClient","_isProduction","_options","addStylesToDom","newList","mayRemove","domStyle","refs","addStyle","createStyleElement","styleElement","styleIndex","applyToSingletonTag","applyToTag","newObj","textStore","replaceText","replacement","styleSheet","cssNode","ssrId","btoa","unescape","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","getter","definition","globalThis","nmd","axios","VueRouter","Vuex","block","big","cssClasses","normalizeComponent","scriptExports","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","hook","_compiled","functional","_scopeId","$vnode","ssrContext","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","$root","$options","_injectStyles","originalRender","existing","beforeCreate","_vm","_self","_v","_s","EditionBadge","mapGetters","isPluginInstalled","getActiveTrialPluginEdition","activeTrialPluginEdition","priceRange","price","fullPriceLabel","priceLabel","Craft","plugin","iconUrl","trialMode","editions","shortDescription","abandoned","PluginCard","winWidth","computedPlugins","limit","onWindowResize","plugins","PluginGrid","activeTrialsError","activeTrialsLoaded","featuredSectionsLoaded","loading","mapState","activeTrialPlugins","featuredSections","dispatch","featuredSection","slug","defaultDirection","directions","sortOptions","menuLabel","selectAttribute","attribute","selectDirection","asc","ref","sel","$event","PluginIndexSort","SortMenuBtn","selectedAttribute","selectedDirection","sortMenuBtnAttributes","watch","popularity","dateUpdated","orderBy","loadingBottom","hasMore","page","requestActionData","onOrderByChange","requestPlugins","onAfterSuccess","errorMsg","scrollContainer","scrollDistFromBottom","scrollMode","viewHasScrollbar","_t","disableSorting","PluginIndex","category","getCategoryById","requestData","categoryId","mapActions","getPluginsByCategory","scopedSlots","_u","proxy","_defineProperties","descriptor","isBrowser","timeoutDuration","longerTimeoutBrowsers","debounce","called","scheduled","functionToCheck","getStyleComputedProperty","property","defaultView","getParentNode","getScrollParent","_getStyleComputedProp","overflow","overflowX","overflowY","getReferenceNode","referenceNode","MSInputMethodContext","documentMode","isIE10","getOffsetParent","noOffsetParent","offsetParent","getRoot","findCommonOffsetParent","element1","element2","compareDocumentPosition","DOCUMENT_POSITION_FOLLOWING","createRange","setStart","setEnd","commonAncestorContainer","firstElementChild","element1root","getScroll","side","upperSide","scrollingElement","includeScroll","subtract","getBordersSize","sideA","sideB","getSize","computedStyle","getWindowSizes","classCallCheck","Constructor","createClass","protoProps","staticProps","_extends","getClientRect","offsets","horizScrollbar","vertScrollbar","getOffsetRectRelativeToArbitraryNode","fixedPosition","isHTML","childrenRect","parentRect","scrollParent","borderTopWidth","borderLeftWidth","getViewportOffsetRectRelativeToArtbitraryNode","excludeScroll","relativeOffset","innerHeight","isFixed","getFixedPositionOffsetParent","getBoundaries","popper","boundariesElement","boundaries","boundariesNode","_getWindowSizes","isPaddingNumber","getArea","_ref","computeAutoPlacement","placement","refRect","rects","sortedAreas","filteredAreas","_ref2","computedPlacement","variation","getReferenceOffsets","state","commonOffsetParent","getOuterSizes","getOppositePlacement","matched","getPopperOffsets","referenceOffsets","popperRect","popperOffsets","isHoriz","mainSide","secondarySide","measurement","secondaryMeasurement","check","runModifiers","modifiers","ends","cur","isDestroyed","arrowStyles","flipped","positionFixed","flip","originalPlacement","isCreated","onUpdate","onCreate","isModifierEnabled","modifierName","getSupportedPropertyName","prefixes","upperProp","toCheck","willChange","disableEventListeners","removeOnDestroy","getWindow","attachToScrollParents","scrollParents","isBody","setupEventListeners","updateBound","scrollElement","eventsEnabled","enableEventListeners","scheduleUpdate","removeEventListeners","isNumeric","setStyles","isModifierRequired","requestingName","requestedName","requesting","isRequired","_requesting","requested","placements","validPlacements","clockwise","counter","basePlacement","shiftvariation","_data$offsets","shiftOffsets","useHeight","fragments","frag","splitRegex","ops","op","mergeWithPrevious","str","toValue","index2","parseOffset","preventOverflow","transformProp","popperStyles","primary","escapeWithReference","secondary","keepTogether","opSide","arrow","_data$offsets$arrow","arrowElement","sideCapitalized","altSide","arrowElementSize","popperMarginSide","popperBorderSide","sideValue","placementOpposite","flipOrder","refOffsets","overlapsRef","overflowsLeft","overflowsRight","overflowsTop","overflowsBottom","overflowsBoundaries","flippedVariationByRef","flipVariations","flippedVariationByContent","flipVariationsByContent","flippedVariation","getOppositeVariation","inner","subtractLength","bound","computeStyle","legacyGpuAccelerationOption","gpuAcceleration","offsetParentRect","shouldRound","noRound","referenceWidth","popperWidth","isVariation","horizontalToInteger","verticalToInteger","getRoundedOffsets","devicePixelRatio","prefixedProperty","invertTop","invertLeft","applyStyle","onLoad","modifierOptions","Defaults","Popper","jquery","PopperUtils","initCompat","msie","rv","getInternetExplorerVersion","template","script","isFunctionalTemplate","createInjector","createInjectorSSR","createInjectorShadow","__vue_script__","emitOnMount","ignoreWidth","ignoreHeight","_w","emitSize","_resizeObject","addResizeHandlers","removeResizeHandlers","compareAndNotify","contentDocument","__vue_render__","$createElement","tabindex","_withStripped","__vue_component__","GlobalVue","SVGAnimatedString","convertToArray","newClasses","newClass","ownKeys$2","enumerableOnly","symbols","sym","_objectSpread$2","DEFAULT_OPTIONS","container","openTooltips","Tooltip","_reference","_classCallCheck","relatedreference","toElement","relatedTarget","_tooltipNode","evt2","relatedreference2","_scheduleHide","_isOpen","_init","_show","_hide","_dispose","_classes","_setContent","classesUpdated","defaultClass","setClasses","getOptions","needPopperUpdate","needRestart","isOpen","dispose","popperInstance","_isDisposed","_enableDocumentTouch","_setEventListeners","$_originalTitle","tooltipGenerator","tooltipNode","ariaId","autoHide","asyncContent","_applyContent","_this4","reject","allowHtml","rootNode","titleNode","innerSelector","loadingContent","asyncResult","innerText","_disposeTimer","updateClasses","_ensureShown","_this5","_create","_findContainer","_append","popperOptions","arrowSelector","_this6","_noLongerOpen","disposeTime","disposeTimeout","_removeTooltipNode","_this7","_events","_this8","directEvents","oppositeEvents","hideOnTargetClick","usedByTooltip","_scheduleShow","_this9","computedDelay","_scheduleTimer","_this10","_setTooltipNodeEvent","ownKeys$1","_objectSpread$1","_onDocumentTouch","positions","defaultPlacement","defaultTargetClass","defaultHtml","defaultTemplate","defaultArrowSelector","defaultInnerSelector","defaultDelay","defaultTrigger","defaultOffset","defaultContainer","defaultBoundariesElement","defaultPopperOptions","defaultLoadingClass","defaultLoadingContent","defaultHideOnTargetClick","popover","defaultBaseClass","defaultWrapperClass","defaultInnerClass","defaultArrowClass","defaultOpenClass","defaultAutoHide","defaultHandleResize","typeofOffset","getPlacement","getContent","destroyTooltip","_tooltip","_tooltipOldShow","_tooltipTargetClasses","oldValue","setContent","setOptions","_vueEl","targetClasses","createTooltip","removeListeners","onTouchCancel","currentTarget","closePopover","$_vclosepopover_touch","closeAllPopover","$_closePopoverModifiers","all","$_vclosepopover_touchPoint","firstTouch","screenY","screenX","vclosepopover","getDefault","isIOS","MSStream","openPopovers","open","disabled","popoverClass","popoverBaseClass","popoverInnerClass","popoverWrapperClass","popoverArrowClass","handleResize","openGroup","openClass","popoverId","oldVal","popoverNode","$refs","$_findContainer","$_removeEventListeners","$_addEventListeners","$_updatePopper","deep","$_isDisposed","$_mounted","$_events","$_preventOpen","$_init","deactivated","skipDelay","_ref2$force","$_scheduleShow","$_beingShowed","_ref3","$_scheduleHide","$_show","$_disposeTimer","hidden","$_getOffset","$_hide","$_scheduleTimer","$_setTooltipNodeEvent","event2","_ref4","cb","$_restartPopper","$_handleGlobalClose","$_handleResize","handleGlobalClose","_loop","staticStyle","visibility","keyup","insertAt","styleInject","finalOptions","VTooltip","slot","LicenseStatus","status","description","CraftEdition","licensedEdition","edition","canTestEditions","isCmsEditionInCart","addToCart","getCraftData","tryEdition","buyCraft","installCraft","InfoHud","StatusBadge","BuyBtn","editionHandle","getCmsEditionFeatures","getCmsEditionIndex","editionDescription","editionIndex","features","CmsEdition","renewalPrice","filters","feature","cmsEditions","CmsEditions","CraftVerifiedIcon","CraftCommerceVerifiedIcon","EnterpriseVerifiedIcon","kind","computedComponent","PartnerBadge","developer","developerId","photoUrl","developerName","partnerInfo","isCraftVerified","isCommerceVerified","isEnterpriseVerified","developerUrl","profileUrl","pluginsLoaded","sectionLoaded","featuredSectionHandle","abortController","abort","uri","prepareOptions","sendApiRequest","action","sendActionRequest","signal","aborted","AbortController","cancelRequests","api","getCoreData","responseData","getCmsEditions","getDeveloper","getFeaturedSectionByHandle","getFeaturedSections","getPluginChangelog","pluginId","getPluginDetails","getPluginDetailsByHandle","pluginHandle","withInstallHistory","withIssueStats","pluginIndexParams","_getPluginIndexParams","getPluginsByDeveloperId","getPluginsByFeaturedSectionHandle","getPluginsByHandles","pluginHandles","pluginHandlesString","getPluginsByIds","pluginIds","pluginIdsString","ids","searchPlugins","searchQuery","perPage","statusMessage","StatusMessage","buyPlugin","pluginStoreApi","isPluginBuyable","pluginLicenseInfo","isInCart","getPluginLicenseInfo","pendingActiveTrials","buyAllTrials","somePrice","modal","craftTranslation","link","autoShow","resizable","openModal","domProps","activeTab","tabs","tab","tabKey","nbDevelopers","developers","requestDevelopers","DeveloperIndex","developerKey","SearchTabs","thumbnails","zoomImage","licenseMismatched","getLicenseMismatched","licenseValidOrAstray","getLicenseValidOrAstray","licenseKeyStatus","border","isPluginFree","getPriceRange","PluginEditionPrice","mixins","isPluginEditionFree","getPluginEdition","addToCartloading","isEditionMoreExpensiveThanLicensed","currentEdition","allowUpdates","csrfTokenName","csrfTokenValue","addEditionToCart","onSwitchOrInstallSubmit","$ev","phpVersion","composerPhpVersion","latestCompatibleVersion","phpVersionCompatible","packageName","isInstalled","isEnabled","incompatiblePhpVersion","v1","phpConstraint","v2","PluginActions","cart","PluginEdition","MetaStat","copyTimeout","showSuccess","currentInstallModeHandle","currentInstallMode","installModes","copyValue","changeInstallMode","installMode","installModeKey","ActivityStat","githubActivityTitle","period","issueStats","closedIssues","openIssues","mergedPulls","openPulls","chartMounted","chartOptions","chartData","installHistory","InstallPlugin","ActiveInstalls","ActiveInstallsChart","activeInstallsValue","activeInstallsDate","activeInstalls","updateActiveInstallsDataPoint","GithubActivity","PluginMetaBuyButton","licenseLabel","pluginCategories","documentationUrl","repository","totalReleases","compatibility","lastUpdate","isCommercial","getPluginEditions","defaultPluginSvg","developerPartner","$route","PluginLayout","PluginScreenshots","PluginMeta","actionsLoading","showingScreenshotModal","longDescription","licenseMismatchedMessage","accountLink","recommendedLabel","beforeRouteLeave","thumbnailUrls","screenshotUrls","PluginEditions","ChangelogRelease","release","critical","notes","pluginChangelog","pluginChangelogPluginId","initPlugin","initChangelog","pluginStoreAppBaseUrl","scrollBehavior","routes","Index","CategoriesId","UpgradeCraft","DeveloperId","FeaturedHandle","BuyPlugin","BuyAllTrials","Search","Tests","PluginsHandle","PluginsHandleEditions","PluginsHandleChangelog","NotFound","getters","cartItems","lineItems","lineItem","cartItem","purchasable","cartPlugins","cartItemsData","getCartItemsData","cmsEdition","rootState","rootGetters","activeTrials","craftLogo","craft","pluginStore","trials","cmsProEdition","cmsProEditionIndex","editionName","navigateTo","showEditionBadge","licensesMixins","discountPrice","activeTrial","actions","newItems","newItem","alreadyInCart","expiryDate","autoRenew","licenseKey","hasIssues","licenseIssues","issue","cmsLicenseKey","cartNumber","errors","addAllTrialsToCart","createCart","email","currentUser","cartResponseData","orderNumber","cartError","getActiveTrials","getActiveTrialPlugins","commit","info","pluginEdition","getCart","getOrderNumber","localStorage","getItem","removeFromCart","lineItemKey","resetCart","resetOrderNumber","removeItem","saveCart","saveOrderNumber","setItem","savePluginLicenseKeys","pluginLicenseKeys","getActionUrl","headers","response","updateCart","updateCartPlugins","cartItemPluginIds","pluginsResponseData","updateItem","itemKey","getCartData","billingAddress","firstName","lastName","namespaced","selectedExpiryDates","updateActiveTrialPlugins","updateSelectedExpiryDates","searchDevelopers","developerIndexParams","getElementIndexParams","getDevelopersFixture","developersResponseData","currentPage","getDeveloperIndexParams","firstOptionKey","updateDevelopers","updateDevelopersResponseData","appendDevelopers","thrown","updateDeveloperIndex","expiryDateOptions","featuredPlugins","appendPlugins","updateCoreData","updateCmsEditions","updateDeveloper","updateFeaturedSection","updateFeaturedSections","updatePluginChangelog","changelog","updatePluginDetails","pluginDetails","updatePlugins","getPluginIndexParams","payload","updatePluginIndex","countries","craftId","CraftPro","CraftSolo","solo","pro","getCraftIdData","accessToken","Authorization","include","pluginLicenses","license","switchPluginEdition","clearCachedApiHeaders","switchPluginEditionResponse","getPluginLicenseInfoResponse","updateCraftData","updateCraftIdData","updateCountries","updateCraftId","updatePluginLicenseInfo","strict","app","screenshotModalImages","screenshotModalImageKey","updateSearchQuery","updateShowingScreenshotModal","updateScreenshotModalImages","updateScreenshotModalImageKey","developerIndex","addToCartLoading","navigateToPlugin","ActiveTrial","activeTrialsLoading","loadingItems","loadingRemoveFromCart","loadingCheckout","ItemAdjustments","adjustments","lineItemAdustment","sourceSnapshot","adjustment","adjustmentKey","ItemName","ItemIcon","ActiveTrials","Step","itemExpiryDateOptions","selectedOption","itemLoading","onSelectedExpiryDateChange","payment","removeFromCartLoading","Cart","isTrial","model","$$v","$set","expression","totalPrice","modalStep","onHide","$this","closeModal","nativeOn","NavItems","showCategorySelector","CategorySelector","PluginSearch","swiperOption","close","handleEscapeKey","imageElement","imageUrl","Sidebar","Modal","ScreenshotModal","onViewScroll","pluginStoreDataLoaded","fullPath","pluginStoreDataError","showModal","ApexChart","small","large","outline","trailingIcon","additionalAttributes","computedType","animationColor","animationColorHover","invalid","fullwidth","option","AlertIcon","BookIcon","CheckIcon","ChevronLeftIcon","ChevronRightIcon","ClipboardCopyIcon","CopyIcon","ExclamationCircleIcon","ExclamationTriangleIcon","ExternalLinkIcon","FlagIcon","GithubIcon","InfoCircleIcon","PlugIcon","LinkIcon","SearchIcon","StarIcon","WorldIcon","XIcon","animationClass","floatValue","Accounting","escapeHtml","CBtn","CDropdown","CIcon","CSpinner","CTextbox","Garnish","$doc","ready","initUiElements","pluginStoreApp","router","store","App","allDataLoaded","cartDataLoaded","coreDataLoaded","craftDataLoaded","craftIdDataLoaded","pageTitle","pluginLicenseInfoLoaded","displayNotice","cp","displaySuccess","displayError","$store","initializeOuterComponents","$router","$cartButton","keydown","$on","totalQty","$pluginStoreActions","$pluginStoreActionsSpinner","$craftId","$craftIdConnectForm","$craftIdDisconnectForm","username","loadCartData","loadCraftData","afterSuccess","loadCraftIdData","craftIdAccessToken","loadData","loadPluginStoreData","onDataLoaded","$mount"],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/pluginstoreoauth/dist/css/PluginStoreOauthCallback.css.map b/src/web/assets/pluginstoreoauth/dist/css/PluginStoreOauthCallback.css.map index 9f6ed24343b..b83652c7a06 100644 --- a/src/web/assets/pluginstoreoauth/dist/css/PluginStoreOauthCallback.css.map +++ b/src/web/assets/pluginstoreoauth/dist/css/PluginStoreOauthCallback.css.map @@ -1 +1 @@ -{"version":3,"file":"css/PluginStoreOauthCallback.css","mappings":"AAGA,SAOE,4BADA,4BALA,cAGA,SAFA,kBACA,OAIA,CCibA,kBACE,uBAEF,kBACE,uBDlbJ,eACE,2DAGF,2CACE,SASA,qBACA,CAHA,cACA,iBACA,CANF,eACE,CAJA,kBAKA,iBAEA,CAPA,OAGF,CACE,UAMA,gBAKA,sCAEA,CAHF,iBACE,CAJA,gBAGF,CAME,iBAHA,2BAEA,CACA,aACA,CAJA,aAIA,eACA,CALA,WAKA,qPAIF,2DAOI,iCADA,4CAIA,CAHA,+DAGA","sources":["webpack:///./pluginstore-oauth-callback.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n#graphic {\n display: block;\n position: absolute;\n top: 50%;\n left: 50%;\n @include margin(-48px, 0, 0, -24px);\n background-repeat: no-repeat;\n background-position: 50% 50%;\n}\n\n#graphic.error {\n background-image: url(images/error.png);\n}\n\n#graphic.success {\n background-image: url(images/success.png);\n}\n\n#status {\n position: absolute;\n top: 50%;\n margin-top: 20px;\n width: 100%;\n text-align: center;\n font-size: 16px;\n line-height: 20px;\n color: var(--gray-500);\n}\n\n#status #error {\n margin: 24px auto;\n border-radius: 3px;\n border: 1px solid var(--hairline-color);\n padding: 24px;\n width: 600px;\n max-width: calc(100% - 96px);\n max-height: 100px;\n overflow: auto;\n text-align: left;\n}\n\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5),\n only screen and (-moz-min-device-pixel-ratio: 1.5),\n only screen and (-o-min-device-pixel-ratio: 3/2),\n only screen and (min-device-pixel-ratio: 1.5),\n only screen and (min-resolution: 1.5dppx) {\n #graphic.error {\n background-image: url(images/error_2x.png);\n background-size: 48px;\n }\n #graphic.success {\n background-image: url(images/success_2x.png);\n background-size: 48px;\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/PluginStoreOauthCallback.css","mappings":"AAGA,SAOE,4BADA,4BALA,cAGA,SAFA,kBACA,OAIA,CCibA,kBACE,uBAEF,kBACE,uBDlbJ,eACE,2DAGF,2CACE,SASA,qBACA,CAHA,cACA,iBACA,CANF,eACE,CAJA,kBAKA,iBAEA,CAPA,OAGF,CACE,UAMA,gBAKA,sCAEA,CAHF,iBACE,CAJA,gBAGF,CAME,iBAHA,2BAEA,CACA,aACA,CAJA,aAIA,eACA,CALA,WAKA,qPAIF,2DAOI,iCADA,4CAIA,CAHA,+DAGA","sources":["webpack:///./pluginstore-oauth-callback.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n#graphic {\n display: block;\n position: absolute;\n top: 50%;\n left: 50%;\n @include margin(-48px, 0, 0, -24px);\n background-repeat: no-repeat;\n background-position: 50% 50%;\n}\n\n#graphic.error {\n background-image: url(images/error.png);\n}\n\n#graphic.success {\n background-image: url(images/success.png);\n}\n\n#status {\n position: absolute;\n top: 50%;\n margin-top: 20px;\n width: 100%;\n text-align: center;\n font-size: 16px;\n line-height: 20px;\n color: var(--gray-500);\n}\n\n#status #error {\n margin: 24px auto;\n border-radius: 3px;\n border: 1px solid var(--hairline-color);\n padding: 24px;\n width: 600px;\n max-width: calc(100% - 96px);\n max-height: 100px;\n overflow: auto;\n text-align: left;\n}\n\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5),\n only screen and (-moz-min-device-pixel-ratio: 1.5),\n only screen and (-o-min-device-pixel-ratio: 3/2),\n only screen and (min-device-pixel-ratio: 1.5),\n only screen and (min-resolution: 1.5dppx) {\n #graphic.error {\n background-image: url(images/error_2x.png);\n background-size: 48px;\n }\n #graphic.success {\n background-image: url(images/success_2x.png);\n background-size: 48px;\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/routes/dist/css/routes.css.map b/src/web/assets/routes/dist/css/routes.css.map index e15244c5c45..2f81485928d 100644 --- a/src/web/assets/routes/dist/css/routes.css.map +++ b/src/web/assets/routes/dist/css/routes.css.map @@ -1 +1 @@ -{"version":3,"file":"css/routes.css","mappings":"AAGA,QACE,kBAGF,OCiQE,eAxQM,CDaN,iCADA,yCC6PA,6DD3PA,eAJA,cACA,UAFA,iBAKA,CC6PA,aACE,6BD5PF,mBCkLA,WACA,4CAGA,wCACA,uCACA,oCAOA,mCACA,kCAMA,2BDhME,wBADA,eCyLF,cAIA,qBAjBA,kBAmBA,kBATA,oBADA,gBAGA,cAYA,4BDxME,kBCkMF,kBAVA,kCAGA,oBD1LE,QCqMF,0CAFA,qBD/LE,CCuSF,4BACE,SD3Se,CC6SjB,4BACE,QD9Se,CAMjB,uCAGE,iBACA,gBAFA,gBAEA,CAGF,sBAYE,wBADA,wBAVA,iBAWA,CCiaF,+BACE,iBD5aA,CC8aF,+BACE,gBD/aA,CCscF,+BACE,kBDtcA,CCwcF,+BACE,iBDzcA,CCyVF,+BACE,wEAEF,+BACE,wEAyCF,+BACE,WAEF,+BACE,YD/XA,4BAUE,4BARA,WADA,cAQA,YALA,gBACA,kBAFA,kBAGA,MAEA,UAEA,CCqQJ,qCACE,WDzQiB,CC2QnB,qCACE,UD5QiB,CAIf,qCACE,kFAEF,gDACE,6BAOF,0BAEA,CAJA,wCAEA,CAEA,gDACA,+BACA,CAPF,oBACE,CAEA,eAIA,sCCmXJ,sBACE,sCAEF,sBACE,mCDpXA,mCACE,8BAKF,yBCgHF,sDAEA,wCAGA,uCACA,oCACA,CAKA,kCAEA,kCACA,CAKA,0BACA,CAGA,mBAbA,aACA,CAGA,oBAEA,CD/HE,kBC+HF,iBACA,CAVA,mBACA,CADA,gBAGA,cAWA,2BAEA,CAPA,kBAVA,iCACA,CAEA,oBAWA,wBACA,kBAJA,qBAMA,kCAkOA,kDAGA,iCDjWA,2BACA,qBAHF,6BAEE,uBCkWE,WDjWF,uBAEA,yBACE,0CAGA,WACE,CADF,UACE,6CAGA,kDAIA,uDAGE,4BACE,6BAMR,wCAEE,wCAEA,CAJF,gBAEE,iBAEA,gCAEA,mCACE,oCAIF,2DC0TF,+DAGA,2CDtTE,2BAGA,CAJF,4BAIE,kCC8RF,4CAGA,gQD7RF,4BAKE,4BACE,gEACA,+CACE,sCAEF,mDACE","sources":["webpack:///./routes.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n#routes {\n margin: 0 1px 25px;\n}\n\n.route {\n @include pane;\n position: relative;\n margin: 14px 0;\n padding: 0;\n border-radius: var(--large-border-radius);\n background-color: var(--gray-050);\n cursor: pointer;\n\n &:hover:after {\n position: absolute;\n top: 9px;\n @include right(5px);\n @include icon;\n content: 'edit';\n color: var(--link-color);\n }\n\n .uri-container,\n .template {\n padding: 7px 14px;\n line-height: 18px;\n min-height: 18px;\n }\n\n .uri-container {\n position: relative;\n @include margin-right(20px);\n @include padding-right(10px);\n @include border-radius(\n var(--large-border-radius),\n 0,\n 0,\n var(--large-border-radius)\n );\n @include floatleft;\n color: var(--link-color);\n background: var(--white);\n\n &:after {\n display: block;\n content: '';\n text-indent: -100%;\n overflow: hidden;\n position: absolute;\n top: 0;\n @include right(-15px);\n width: 15px;\n height: 32px;\n background-repeat: no-repeat;\n body.ltr & {\n background-image: url(images/route-bg.png);\n }\n body.rtl & {\n background-image: url(images/route-bg_rtl.png);\n }\n }\n\n .site {\n display: inline-block;\n @include margin(-1px, 8px, -1px, 0);\n border-radius: var(--small-border-radius);\n padding: 1px 5px;\n background: var(--gray-050);\n box-shadow: inset 0 0 0 1px var(--hairline-color);\n color: var(--medium-text-color);\n }\n\n .uri .token {\n margin: 0 3px -1px;\n }\n }\n\n .template {\n color: var(--medium-text-color);\n\n &:before {\n @include icon;\n @include margin(0, 5px, 0, 0);\n content: 'template';\n }\n }\n}\n\n.route-settings {\n width: 500px;\n flex-direction: column;\n align-items: stretch;\n\n .body {\n height: calc(100% - 119px);\n overflow: auto;\n\n .uri {\n width: auto;\n cursor: text;\n\n input[type='text'] {\n box-shadow: none;\n }\n\n .token {\n cursor: default;\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n }\n }\n }\n\n .uri-tokens {\n margin-top: 10px;\n border-radius: var(--large-border-radius);\n padding: 15px 25px;\n box-shadow: inset 0 1px 3px -1px darken($grey100, 10%);\n\n h4 {\n margin-bottom: 5px;\n text-align: center;\n }\n\n .token {\n @include margin(5px, 5px, 0, 0);\n cursor: pointer;\n }\n }\n\n .delete {\n display: block;\n @include floatleft;\n margin-top: 7px;\n color: var(--disabled-color);\n }\n}\n\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5),\n only screen and (-moz-min-device-pixel-ratio: 1.5),\n only screen and (-o-min-device-pixel-ratio: 3/2),\n only screen and (min-device-pixel-ratio: 1.5),\n only screen and (min-resolution: 1.5dppx) {\n .route .uri-container:after {\n background-size: 15px 32px;\n body.ltr & {\n background-image: url(images/route-bg_2x.png);\n }\n body.rtl & {\n background-image: url(images/route-bg_rtl_2x.png);\n }\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/routes.css","mappings":"AAGA,QACE,kBAGF,OCiQE,eAxQM,CDaN,iCADA,yCC6PA,6DD3PA,eAJA,cACA,UAFA,iBAKA,CC6PA,aACE,6BD5PF,mBCkLA,WACA,4CAGA,wCACA,uCACA,oCAOA,mCACA,kCAMA,2BDhME,wBADA,eCyLF,cAIA,qBAjBA,kBAmBA,kBATA,oBADA,gBAGA,cAYA,4BDxME,kBCkMF,kBAVA,kCAGA,oBD1LE,QCqMF,0CAFA,qBD/LE,CCuSF,4BACE,SD3Se,CC6SjB,4BACE,QD9Se,CAMjB,uCAGE,iBACA,gBAFA,gBAEA,CAGF,sBAYE,wBADA,wBAVA,iBAWA,CCiaF,+BACE,iBD5aA,CC8aF,+BACE,gBD/aA,CCscF,+BACE,kBDtcA,CCwcF,+BACE,iBDzcA,CCyVF,+BACE,wEAEF,+BACE,wEAyCF,+BACE,WAEF,+BACE,YD/XA,4BAUE,4BARA,WADA,cAQA,YALA,gBACA,kBAFA,kBAGA,MAEA,UAEA,CCqQJ,qCACE,WDzQiB,CC2QnB,qCACE,UD5QiB,CAIf,qCACE,kFAEF,gDACE,6BAOF,0BAEA,CAJA,wCAEA,CAEA,gDACA,+BACA,CAPF,oBACE,CAEA,eAIA,sCCmXJ,sBACE,sCAEF,sBACE,mCDpXA,mCACE,8BAKF,yBCgHF,sDAEA,wCAGA,uCACA,oCACA,CAKA,kCAEA,kCACA,CAKA,0BACA,CAGA,mBAbA,aACA,CAGA,oBAEA,CD/HE,kBC+HF,iBACA,CAVA,mBACA,CADA,gBAGA,cAWA,2BAEA,CAPA,kBAVA,iCACA,CAEA,oBAWA,wBACA,kBAJA,qBAMA,kCAkOA,kDAGA,iCDjWA,2BACA,qBAHF,6BAEE,uBCkWE,WDjWF,uBAEA,yBACE,0CAGA,WACE,CADF,UACE,6CAGA,kDAIA,uDAGE,4BACE,6BAMR,wCAEE,wCAEA,CAJF,gBAEE,iBAEA,gCAEA,mCACE,oCAIF,2DC0TF,+DAGA,2CDtTE,2BAGA,CAJF,4BAIE,kCC8RF,4CAGA,gQD7RF,4BAKE,4BACE,gEACA,+CACE,sCAEF,mDACE","sources":["webpack:///./routes.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n#routes {\n margin: 0 1px 25px;\n}\n\n.route {\n @include pane;\n position: relative;\n margin: 14px 0;\n padding: 0;\n border-radius: var(--large-border-radius);\n background-color: var(--gray-050);\n cursor: pointer;\n\n &:hover:after {\n position: absolute;\n top: 9px;\n @include right(5px);\n @include icon;\n content: 'edit';\n color: var(--link-color);\n }\n\n .uri-container,\n .template {\n padding: 7px 14px;\n line-height: 18px;\n min-height: 18px;\n }\n\n .uri-container {\n position: relative;\n @include margin-right(20px);\n @include padding-right(10px);\n @include border-radius(\n var(--large-border-radius),\n 0,\n 0,\n var(--large-border-radius)\n );\n @include floatleft;\n color: var(--link-color);\n background: var(--white);\n\n &:after {\n display: block;\n content: '';\n text-indent: -100%;\n overflow: hidden;\n position: absolute;\n top: 0;\n @include right(-15px);\n width: 15px;\n height: 32px;\n background-repeat: no-repeat;\n body.ltr & {\n background-image: url(images/route-bg.png);\n }\n body.rtl & {\n background-image: url(images/route-bg_rtl.png);\n }\n }\n\n .site {\n display: inline-block;\n @include margin(-1px, 8px, -1px, 0);\n border-radius: var(--small-border-radius);\n padding: 1px 5px;\n background: var(--gray-050);\n box-shadow: inset 0 0 0 1px var(--hairline-color);\n color: var(--medium-text-color);\n }\n\n .uri .token {\n margin: 0 3px -1px;\n }\n }\n\n .template {\n color: var(--medium-text-color);\n\n &:before {\n @include icon;\n @include margin(0, 5px, 0, 0);\n content: 'template';\n }\n }\n}\n\n.route-settings {\n width: 500px;\n flex-direction: column;\n align-items: stretch;\n\n .body {\n height: calc(100% - 119px);\n overflow: auto;\n\n .uri {\n width: auto;\n cursor: text;\n\n input[type='text'] {\n box-shadow: none;\n }\n\n .token {\n cursor: default;\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n }\n }\n }\n\n .uri-tokens {\n margin-top: 10px;\n border-radius: var(--large-border-radius);\n padding: 15px 25px;\n box-shadow: inset 0 1px 3px -1px darken($grey100, 10%);\n\n h4 {\n margin-bottom: 5px;\n text-align: center;\n }\n\n .token {\n @include margin(5px, 5px, 0, 0);\n cursor: pointer;\n }\n }\n\n .delete {\n display: block;\n @include floatleft;\n margin-top: 7px;\n color: var(--disabled-color);\n }\n}\n\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5),\n only screen and (-moz-min-device-pixel-ratio: 1.5),\n only screen and (-o-min-device-pixel-ratio: 3/2),\n only screen and (min-device-pixel-ratio: 1.5),\n only screen and (min-resolution: 1.5dppx) {\n .route .uri-container:after {\n background-size: 15px 32px;\n body.ltr & {\n background-image: url(images/route-bg_2x.png);\n }\n body.rtl & {\n background-image: url(images/route-bg_rtl_2x.png);\n }\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/systemmessages/dist/css/system_messages.css.map b/src/web/assets/systemmessages/dist/css/system_messages.css.map index 95e5a6957b1..6ed6bc39c95 100644 --- a/src/web/assets/systemmessages/dist/css/system_messages.css.map +++ b/src/web/assets/systemmessages/dist/css/system_messages.css.map @@ -1 +1 @@ -{"version":3,"file":"css/system_messages.css","mappings":"AAGA,SAEE,eADA,iBACA,CCmeA,wBACE,kBDjeA,CCmeF,wBACE,iBDpeA,CAEA,qBCwLF,WACA,4CAGA,wCACA,uCACA,oCAOA,mCACA,kCAMA,2BDtMI,wBADA,eC+LJ,cAIA,qBAjBA,kBAmBA,kBATA,oBADA,gBAGA,cAYA,4BD9MI,kBCwMJ,kBAVA,kCAGA,oBDhMI,SC2MJ,0CAFA,qBDrMI,CC6SJ,8BACE,UDjTiB,CCmTnB,8BACE,SDpTiB,CAOnB,kBAEE,gCACA,mBAFA,mBAEA,CAGF,eAIE,+BADA,8BAFA,eACA,gBAEA,CAIJ,kBACE,YAEA,iCACE,SAGF,wBACE,0BACA","sources":["webpack:///./system_messages.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n.message {\n position: relative;\n cursor: pointer;\n\n &:hover {\n @include padding-right(26px);\n\n &:after {\n position: absolute;\n top: 18px;\n @include right(15px);\n @include icon;\n content: 'edit';\n color: var(--link-color);\n }\n }\n\n .subject {\n padding-bottom: 15px;\n border-bottom: 1px solid #dbdbdb;\n margin-bottom: 15px;\n }\n\n .body {\n font-size: 12px;\n line-height: 16px;\n font-family: Courier, monospace;\n color: var(--medium-text-color);\n }\n}\n\n.message-settings {\n width: 500px;\n\n .header .right {\n top: 12px;\n }\n\n .body {\n height: calc(100% - 131px);\n overflow: auto;\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/system_messages.css","mappings":"AAGA,SAEE,eADA,iBACA,CCmeA,wBACE,kBDjeA,CCmeF,wBACE,iBDpeA,CAEA,qBCwLF,WACA,4CAGA,wCACA,uCACA,oCAOA,mCACA,kCAMA,2BDtMI,wBADA,eC+LJ,cAIA,qBAjBA,kBAmBA,kBATA,oBADA,gBAGA,cAYA,4BD9MI,kBCwMJ,kBAVA,kCAGA,oBDhMI,SC2MJ,0CAFA,qBDrMI,CC6SJ,8BACE,UDjTiB,CCmTnB,8BACE,SDpTiB,CAOnB,kBAEE,gCACA,mBAFA,mBAEA,CAGF,eAIE,+BADA,8BAFA,eACA,gBAEA,CAIJ,kBACE,YAEA,iCACE,SAGF,wBACE,0BACA","sources":["webpack:///./system_messages.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n.message {\n position: relative;\n cursor: pointer;\n\n &:hover {\n @include padding-right(26px);\n\n &:after {\n position: absolute;\n top: 18px;\n @include right(15px);\n @include icon;\n content: 'edit';\n color: var(--link-color);\n }\n }\n\n .subject {\n padding-bottom: 15px;\n border-bottom: 1px solid #dbdbdb;\n margin-bottom: 15px;\n }\n\n .body {\n font-size: 12px;\n line-height: 16px;\n font-family: Courier, monospace;\n color: var(--medium-text-color);\n }\n}\n\n.message-settings {\n width: 500px;\n\n .header .right {\n top: 12px;\n }\n\n .body {\n height: calc(100% - 131px);\n overflow: auto;\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/updater/dist/css/Updater.css.map b/src/web/assets/updater/dist/css/Updater.css.map index c94f053b2cb..7023e949ec5 100644 --- a/src/web/assets/updater/dist/css/Updater.css.map +++ b/src/web/assets/updater/dist/css/Updater.css.map @@ -1 +1 @@ -{"version":3,"file":"css/Updater.css","mappings":"AAGA,SASE,4BADA,4BAPA,cAMA,YAHA,SAFA,kBACA,QAGA,UAGA,CC+aA,kBACE,uBAEF,kBACE,uBDjbF,eACE,2DAGF,2CACE,SAUF,qBACA,CAHA,cACA,iBACA,CANF,eACE,CALE,kBAMF,iBAEA,CARE,OAIJ,CACE,UAMA,gBAIE,sCAEA,CAHF,iBACE,CAHF,gBAEA,CAME,iBAHA,2BAEA,CACA,aACA,CAJA,aAIA,eACA,CALA,WAKA,UACA,2BAKF,CACA,oBAPE,QAOF,mCAEA,qPAKF,2DAQM,iCADA,4CAIA,CAHA,+DAGA","sources":["webpack:///./update.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '../../../../../packages/craftcms-sass/mixins';\n\n#graphic {\n display: block;\n position: absolute;\n top: 50%;\n left: 50%;\n @include margin(-48px, 0, 0, -24px);\n width: 48px;\n height: 48px;\n background-repeat: no-repeat;\n background-position: 50% 50%;\n\n &.error {\n background-image: url(images/error.png);\n }\n\n &.success {\n background-image: url(images/success.png);\n }\n}\n\n#status {\n position: absolute;\n top: 50%;\n margin-top: 20px;\n width: 100%;\n text-align: center;\n font-size: 16px;\n line-height: 20px;\n color: var(--gray-500);\n\n #error {\n margin: 24px auto;\n border-radius: 3px;\n border: 1px solid var(--hairline-color);\n padding: 24px;\n width: 600px;\n max-width: calc(100% - 96px);\n max-height: 100px;\n overflow: auto;\n text-align: left;\n }\n}\n\n#options {\n margin: 0;\n display: inline-flex;\n\n .btn {\n float: none !important;\n }\n}\n\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5),\n only screen and (-moz-min-device-pixel-ratio: 1.5),\n only screen and (-o-min-device-pixel-ratio: 3/2),\n only screen and (min-device-pixel-ratio: 1.5),\n only screen and (min-resolution: 1.5dppx) {\n #graphic {\n &.error {\n background-image: url(images/error_2x.png);\n background-size: 48px;\n }\n &.success {\n background-image: url(images/success_2x.png);\n background-size: 48px;\n }\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/Updater.css","mappings":"AAGA,SASE,4BADA,4BAPA,cAMA,YAHA,SAFA,kBACA,QAGA,UAGA,CC+aA,kBACE,uBAEF,kBACE,uBDjbF,eACE,2DAGF,2CACE,SAUF,qBACA,CAHA,cACA,iBACA,CANF,eACE,CALE,kBAMF,iBAEA,CARE,OAIJ,CACE,UAMA,gBAIE,sCAEA,CAHF,iBACE,CAHF,gBAEA,CAME,iBAHA,2BAEA,CACA,aACA,CAJA,aAIA,eACA,CALA,WAKA,UACA,2BAKF,CACA,oBAPE,QAOF,mCAEA,qPAKF,2DAQM,iCADA,4CAIA,CAHA,+DAGA","sources":["webpack:///./update.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '../../../../../packages/craftcms-sass/mixins';\n\n#graphic {\n display: block;\n position: absolute;\n top: 50%;\n left: 50%;\n @include margin(-48px, 0, 0, -24px);\n width: 48px;\n height: 48px;\n background-repeat: no-repeat;\n background-position: 50% 50%;\n\n &.error {\n background-image: url(images/error.png);\n }\n\n &.success {\n background-image: url(images/success.png);\n }\n}\n\n#status {\n position: absolute;\n top: 50%;\n margin-top: 20px;\n width: 100%;\n text-align: center;\n font-size: 16px;\n line-height: 20px;\n color: var(--gray-500);\n\n #error {\n margin: 24px auto;\n border-radius: 3px;\n border: 1px solid var(--hairline-color);\n padding: 24px;\n width: 600px;\n max-width: calc(100% - 96px);\n max-height: 100px;\n overflow: auto;\n text-align: left;\n }\n}\n\n#options {\n margin: 0;\n display: inline-flex;\n\n .btn {\n float: none !important;\n }\n}\n\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5),\n only screen and (-moz-min-device-pixel-ratio: 1.5),\n only screen and (-o-min-device-pixel-ratio: 3/2),\n only screen and (min-device-pixel-ratio: 1.5),\n only screen and (min-resolution: 1.5dppx) {\n #graphic {\n &.error {\n background-image: url(images/error_2x.png);\n background-size: 48px;\n }\n &.success {\n background-image: url(images/success_2x.png);\n background-size: 48px;\n }\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/updates/dist/css/UpdatesUtility.css.map b/src/web/assets/updates/dist/css/UpdatesUtility.css.map index 17ed376ff2a..0e0c383795b 100644 --- a/src/web/assets/updates/dist/css/UpdatesUtility.css.map +++ b/src/web/assets/updates/dist/css/UpdatesUtility.css.map @@ -1 +1 @@ -{"version":3,"file":"css/UpdatesUtility.css","mappings":"AAIE,kBACE,kCAGA,YAFA,oBACA,UACA,CAEA,0BACE,oEAGF,yCACE,kBAOF,qBACA,CAHA,cACA,iBACA,CAPE,sBAIJ,kBAIE,0BACA,eAIA,iCAKE,6CACA,8CAEA,CAJF,iCACE,CAGA,mBAFA,mBAEA,2CAGA,+BACE,mDAIF,uDAKF,yCACE,iBAGF,qCAGE,4DAII,wCAGA,CAJF,iCACE,2BAGA,wECgaR,yFAGA,wFD9ZU,qCAGE,CAHF,QAGE,+EC6OZ,wFAGA,gED5OQ,6EAMF,iCAEE,6DAMF,kFAYE,yBACA,CARA,iBACA,CAIA,kBACA,CAPF,qBAIE,cACA,CAEA,eACA,CAHA,gBACA,CAJA,aAEA,CAKA,wBACA,CAVF,0BAUE,uEC6VR,sFAGA,kFD1VE,+BAEE,mCAIF,wCAKE,6BAEA,CAHF,+BAGE,yCC0UJ,yDAGA,sQDxUF,wEAQQ,6CACA,qEAIA","sources":["webpack:///./updates.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n#content {\n #graphic {\n display: flex;\n margin: 200px auto 0;\n width: 48px;\n height: 48px;\n\n &.success {\n background-image: url(images/success.png);\n }\n\n &.error {\n background-image: url(images/error.png);\n }\n }\n\n #status {\n margin: 20px auto 250px;\n text-align: center;\n font-size: 16px;\n line-height: 20px;\n color: var(--gray-500);\n }\n\n .update {\n & + .update {\n margin-top: 24px;\n }\n\n .update-header {\n display: flex;\n align-items: center;\n padding-bottom: 10px;\n border-bottom: 1px solid var(--hairline-color);\n margin-bottom: 16px;\n\n .readable {\n flex-grow: 1;\n margin: 0;\n }\n\n .buttons {\n margin: 0;\n }\n }\n\n blockquote.ineligible:before {\n content: 'ban';\n }\n\n .releases {\n position: relative;\n\n .release {\n padding: 0;\n\n .release-info {\n display: flex;\n margin: 0;\n padding: 20px 24px;\n border-radius: var(--large-border-radius);\n\n &.fieldtoggle {\n @include padding-left(44px);\n\n &:before {\n @include left(20px);\n top: 29px;\n border-color: var(--medium-text-color);\n }\n }\n\n h2 {\n margin: 0;\n line-height: 24px;\n }\n }\n\n .release-notes {\n // Keep this LTR since the actual release notes are only LTR\n direction: ltr;\n padding: 0 24px 20px;\n }\n }\n\n .release--critical {\n .release-info {\n color: var(--red-600);\n }\n\n .release-badge {\n display: inline-block;\n vertical-align: text-bottom;\n @include margin-left(7px);\n border-radius: 3px;\n padding: 0 5px;\n font-size: 14px;\n line-height: 24px;\n color: var(--white);\n font-weight: normal;\n background: var(--red-500);\n text-transform: uppercase;\n }\n }\n }\n\n .release-heading,\n .release-date {\n font-size: 24px;\n line-height: 24px;\n }\n\n .release-heading {\n margin: 0;\n }\n\n .release-date {\n flex-grow: 1;\n @include margin-left(14px);\n color: var(--light-text-color);\n }\n }\n}\n\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5),\n only screen and (-moz-min-device-pixel-ratio: 1.5),\n only screen and (-o-min-device-pixel-ratio: 3/2),\n only screen and (min-device-pixel-ratio: 1.5),\n only screen and (min-resolution: 1.5dppx) {\n #content {\n #graphic {\n &.success {\n background-image: url(images/success_2x.png);\n background-size: 48px;\n }\n\n &.error {\n background-image: url(images/error_2x.png);\n background-size: 48px;\n }\n }\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/UpdatesUtility.css","mappings":"AAIE,kBACE,kCAGA,YAFA,oBACA,UACA,CAEA,0BACE,oEAGF,yCACE,kBAOF,qBACA,CAHA,cACA,iBACA,CAPE,sBAIJ,kBAIE,0BACA,eAIA,iCAKE,6CACA,8CAEA,CAJF,iCACE,CAGA,mBAFA,mBAEA,2CAGA,+BACE,mDAIF,uDAKF,yCACE,iBAGF,qCAGE,4DAII,wCAGA,CAJF,iCACE,2BAGA,wECgaR,yFAGA,wFD9ZU,qCAGE,CAHF,QAGE,+EC6OZ,wFAGA,gED5OQ,6EAMF,iCAEE,6DAMF,kFAYE,yBACA,CARA,iBACA,CAIA,kBACA,CAPF,qBAIE,cACA,CAEA,eACA,CAHA,gBACA,CAJA,aAEA,CAKA,wBACA,CAVF,0BAUE,uEC6VR,sFAGA,kFD1VE,+BAEE,mCAIF,wCAKE,6BAEA,CAHF,+BAGE,yCC0UJ,yDAGA,sQDxUF,wEAQQ,6CACA,qEAIA","sources":["webpack:///./updates.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n#content {\n #graphic {\n display: flex;\n margin: 200px auto 0;\n width: 48px;\n height: 48px;\n\n &.success {\n background-image: url(images/success.png);\n }\n\n &.error {\n background-image: url(images/error.png);\n }\n }\n\n #status {\n margin: 20px auto 250px;\n text-align: center;\n font-size: 16px;\n line-height: 20px;\n color: var(--gray-500);\n }\n\n .update {\n & + .update {\n margin-top: 24px;\n }\n\n .update-header {\n display: flex;\n align-items: center;\n padding-bottom: 10px;\n border-bottom: 1px solid var(--hairline-color);\n margin-bottom: 16px;\n\n .readable {\n flex-grow: 1;\n margin: 0;\n }\n\n .buttons {\n margin: 0;\n }\n }\n\n blockquote.ineligible:before {\n content: 'ban';\n }\n\n .releases {\n position: relative;\n\n .release {\n padding: 0;\n\n .release-info {\n display: flex;\n margin: 0;\n padding: 20px 24px;\n border-radius: var(--large-border-radius);\n\n &.fieldtoggle {\n @include padding-left(44px);\n\n &:before {\n @include left(20px);\n top: 29px;\n border-color: var(--medium-text-color);\n }\n }\n\n h2 {\n margin: 0;\n line-height: 24px;\n }\n }\n\n .release-notes {\n // Keep this LTR since the actual release notes are only LTR\n direction: ltr;\n padding: 0 24px 20px;\n }\n }\n\n .release--critical {\n .release-info {\n color: var(--red-600);\n }\n\n .release-badge {\n display: inline-block;\n vertical-align: text-bottom;\n @include margin-left(7px);\n border-radius: 3px;\n padding: 0 5px;\n font-size: 14px;\n line-height: 24px;\n color: var(--white);\n font-weight: normal;\n background: var(--red-500);\n text-transform: uppercase;\n }\n }\n }\n\n .release-heading,\n .release-date {\n font-size: 24px;\n line-height: 24px;\n }\n\n .release-heading {\n margin: 0;\n }\n\n .release-date {\n flex-grow: 1;\n @include margin-left(14px);\n color: var(--light-text-color);\n }\n }\n}\n\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5),\n only screen and (-moz-min-device-pixel-ratio: 1.5),\n only screen and (-o-min-device-pixel-ratio: 3/2),\n only screen and (min-device-pixel-ratio: 1.5),\n only screen and (min-resolution: 1.5dppx) {\n #content {\n #graphic {\n &.success {\n background-image: url(images/success_2x.png);\n background-size: 48px;\n }\n\n &.error {\n background-image: url(images/error_2x.png);\n background-size: 48px;\n }\n }\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/upgrade/dist/css/UpgradeUtility.css.map b/src/web/assets/upgrade/dist/css/UpgradeUtility.css.map index d1a1e4fe2c9..51f4e03c5f6 100644 --- a/src/web/assets/upgrade/dist/css/UpgradeUtility.css.map +++ b/src/web/assets/upgrade/dist/css/UpgradeUtility.css.map @@ -1 +1 @@ -{"version":3,"file":"css/UpgradeUtility.css","mappings":"AAME,kBACE,cACA,oBAEA,0BACE,oEAGF,yCACE,kBAMF,cADA,cACA,CANE,sBAIJ,kBAGE,sCAIF,kCACE,eAGF,4BAKM,WACA,CAFF,iBACE,CAJJ,iBAKI,yCAKE,WACA,CAHF,SACE,CADF,2BACE,UAEA,6CAIA,yBACE,CADF,UACE,2CAON,gEAEE,UCyIN,4CAEA,wCAGA,uCACA,oCACA,CAKA,kCAEA,kCACA,CAIA,0BACA,CD3JQ,aACA,CC8JR,mBAbA,cAIA,qBDxJM,kBC0JN,iBACA,CAVA,mBACA,CADA,gBAEA,aACA,CAaA,eD/JQ,CC6JR,4BAPA,iBAEA,CAVA,iCACA,CACA,mBACA,CAWA,yCACA,CAJA,qBDxJQ,2DCkZR,2EAGA,sGDhZM,+FAMF,wBAEE,kBACA,CAHF,qBAGE,iBACA,wCAKA,oCAEA,CAJF,aAEE,CAFF,wBAIE,iDC4XN,iEAGA,oED5XQ,qCAEA,CAHF,kCAGE,yDAIA,qCAEA,CAHF,kCAGE,yDAIA,oCAEA,CAHF,kCAGE,sCAIJ,4BACE,qPAOR,wEAQQ,6CACA,qEAIA","sources":["webpack:///./upgrade.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n$iconSize: 46px;\n\n#content {\n #graphic {\n display: block;\n margin: 200px auto 0;\n\n &.success {\n background-image: url(images/success.png);\n }\n\n &.error {\n background-image: url(images/error.png);\n }\n }\n\n #status {\n margin: 20px auto 250px;\n text-align: center;\n font-size: 16px;\n color: $grey500;\n }\n\n .readable:not(:first-child) {\n margin-top: 24px;\n }\n\n #plugins {\n margin-top: 24px;\n\n tbody {\n th {\n position: relative;\n padding-left: $iconSize + 12 + 12;\n height: $iconSize + 20;\n\n .plugin-icon {\n position: absolute;\n top: 10px;\n left: 12px;\n width: $iconSize;\n height: $iconSize;\n\n svg {\n display: block;\n width: $iconSize;\n height: $iconSize;\n }\n }\n }\n\n .plugin-developer {\n margin-top: 3px;\n &:before {\n @include icon;\n content: 'building';\n margin-top: -3px;\n @include margin-right(4px);\n color: $grey300;\n }\n\n &,\n a {\n font-weight: normal;\n }\n }\n\n .plugin-status,\n .plugin-version {\n display: inline-block;\n border: 1px solid $grey600;\n border-radius: $smallBorderRadius;\n padding: 0 7px 1px;\n }\n .plugin-status {\n @include margin-right(5px);\n text-transform: uppercase;\n color: $grey600;\n background-color: transparentize($grey600, 0.95);\n\n &.plugin-ready {\n border-color: $teal600;\n color: $teal600;\n background-color: transparentize($teal600, 0.95);\n }\n\n &.plugin-not-ready {\n border-color: $yellow600;\n color: $yellow600;\n background-color: transparentize($yellow600, 0.95);\n }\n\n &.plugin-abandoned {\n border-color: $red600;\n color: $red600;\n background-color: transparentize($red600, 0.95);\n }\n }\n\n .plugin-note {\n margin-top: 3px;\n color: $lightTextColor;\n }\n }\n }\n}\n\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5),\n only screen and (-moz-min-device-pixel-ratio: 1.5),\n only screen and (-o-min-device-pixel-ratio: 3/2),\n only screen and (min-device-pixel-ratio: 1.5),\n only screen and (min-resolution: 1.5dppx) {\n #content {\n #graphic {\n &.success {\n background-image: url(images/success_2x.png);\n background-size: 48px;\n }\n\n &.error {\n background-image: url(images/error_2x.png);\n background-size: 48px;\n }\n }\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/UpgradeUtility.css","mappings":"AAME,kBACE,cACA,oBAEA,0BACE,oEAGF,yCACE,kBAMF,cADA,cACA,CANE,sBAIJ,kBAGE,sCAIF,kCACE,eAGF,4BAKM,WACA,CAFF,iBACE,CAJJ,iBAKI,yCAKE,WACA,CAHF,SACE,CADF,2BACE,UAEA,6CAIA,yBACE,CADF,UACE,2CAON,gEAEE,UCyIN,4CAEA,wCAGA,uCACA,oCACA,CAKA,kCAEA,kCACA,CAIA,0BACA,CD3JQ,aACA,CC8JR,mBAbA,cAIA,qBDxJM,kBC0JN,iBACA,CAVA,mBACA,CADA,gBAEA,aACA,CAaA,eD/JQ,CC6JR,4BAPA,iBAEA,CAVA,iCACA,CACA,mBACA,CAWA,yCACA,CAJA,qBDxJQ,2DCkZR,2EAGA,sGDhZM,+FAMF,wBAEE,kBACA,CAHF,qBAGE,iBACA,wCAKA,oCAEA,CAJF,aAEE,CAFF,wBAIE,iDC4XN,iEAGA,oED5XQ,qCAEA,CAHF,kCAGE,yDAIA,qCAEA,CAHF,kCAGE,yDAIA,oCAEA,CAHF,kCAGE,sCAIJ,4BACE,qPAOR,wEAQQ,6CACA,qEAIA","sources":["webpack:///./upgrade.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n$iconSize: 46px;\n\n#content {\n #graphic {\n display: block;\n margin: 200px auto 0;\n\n &.success {\n background-image: url(images/success.png);\n }\n\n &.error {\n background-image: url(images/error.png);\n }\n }\n\n #status {\n margin: 20px auto 250px;\n text-align: center;\n font-size: 16px;\n color: $grey500;\n }\n\n .readable:not(:first-child) {\n margin-top: 24px;\n }\n\n #plugins {\n margin-top: 24px;\n\n tbody {\n th {\n position: relative;\n padding-left: $iconSize + 12 + 12;\n height: $iconSize + 20;\n\n .plugin-icon {\n position: absolute;\n top: 10px;\n left: 12px;\n width: $iconSize;\n height: $iconSize;\n\n svg {\n display: block;\n width: $iconSize;\n height: $iconSize;\n }\n }\n }\n\n .plugin-developer {\n margin-top: 3px;\n &:before {\n @include icon;\n content: 'building';\n margin-top: -3px;\n @include margin-right(4px);\n color: $grey300;\n }\n\n &,\n a {\n font-weight: normal;\n }\n }\n\n .plugin-status,\n .plugin-version {\n display: inline-block;\n border: 1px solid $grey600;\n border-radius: $smallBorderRadius;\n padding: 0 7px 1px;\n }\n .plugin-status {\n @include margin-right(5px);\n text-transform: uppercase;\n color: $grey600;\n background-color: transparentize($grey600, 0.95);\n\n &.plugin-ready {\n border-color: $teal600;\n color: $teal600;\n background-color: transparentize($teal600, 0.95);\n }\n\n &.plugin-not-ready {\n border-color: $yellow600;\n color: $yellow600;\n background-color: transparentize($yellow600, 0.95);\n }\n\n &.plugin-abandoned {\n border-color: $red600;\n color: $red600;\n background-color: transparentize($red600, 0.95);\n }\n }\n\n .plugin-note {\n margin-top: 3px;\n color: $lightTextColor;\n }\n }\n }\n}\n\n@media only screen and (-webkit-min-device-pixel-ratio: 1.5),\n only screen and (-moz-min-device-pixel-ratio: 1.5),\n only screen and (-o-min-device-pixel-ratio: 3/2),\n only screen and (min-device-pixel-ratio: 1.5),\n only screen and (min-resolution: 1.5dppx) {\n #content {\n #graphic {\n &.success {\n background-image: url(images/success_2x.png);\n background-size: 48px;\n }\n\n &.error {\n background-image: url(images/error_2x.png);\n background-size: 48px;\n }\n }\n }\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/userpermissions/dist/css/UserPermissions.css.map b/src/web/assets/userpermissions/dist/css/UserPermissions.css.map index b41bc52ef5a..72b533a792d 100644 --- a/src/web/assets/userpermissions/dist/css/UserPermissions.css.map +++ b/src/web/assets/userpermissions/dist/css/UserPermissions.css.map @@ -1 +1 @@ -{"version":3,"file":"css/UserPermissions.css","mappings":"AAGA,kBACE,kBAGF,iCACE,0BAGF,8BAGE,wBACA,eAHA,eACA,aAEA,CAGF,oCACE,0BAGF,4BACE,kBACA,QAGF,gDACE,WAGF,sGAEE,WCucA,8BACE,kBDpcF,CCscA,8BACE,iBDvcF,CC4TA,8BACE,2BD5TF,CC8TA,8BACE,0BD/TF,CCuaA,8BACE,iBDvaF,CCyaA,8BACE,gBD1aF,CCkYA,qEACE,WAEF,qEACE,YD9XJ,qBACE,WAGF,kCAQE,0BAJA,WAHA,cAIA,YAEA,SAJA,eADA,kBAIA,UAEA,CCyPA,2CACE,SDzPY,CC2Pd,2CACE,UD5PY,CAGhB,qCACE,WAGF,wCACE,WAGF,2CACE,WAGF,8CACE,WAGF,iDACE,WC+YA,oDACE,iBD5YF,CC8YA,oDACE,kBD/YF,CC2YA,uDACE,iBDxYF,CC0YA,uDACE,kBD3YF,CCuYA,0DACE,iBDpYF,CCsYA,0DACE,kBDvYF,CCmYA,6DACE,iBDhYF,CCkYA,6DACE,kBDnYF,CC+XA,gEACE,kBD5XF,CC8XA,gEACE,mBD/XF","sources":["webpack:///./user-permissions.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n.user-permissions {\n position: relative;\n}\n\n.user-permissions h3:first-child {\n margin-top: 14px !important;\n}\n\n.user-permissions .select-all {\n font-size: 0.9em;\n margin: 13px 0;\n color: var(--link-color);\n cursor: pointer;\n}\n\n.user-permissions .select-all:hover {\n text-decoration: underline;\n}\n\n.user-permissions .checkbox {\n position: absolute;\n right: 0;\n}\n\n.user-permissions input.checkbox:disabled + label {\n opacity: 0.5;\n}\n\n.user-permissions input.checkbox:disabled + label:before,\n.user-permissions div.checkbox.disabled:before {\n opacity: 0.5;\n}\n\n.user-permissions h3 {\n @include padding-right(0.5em);\n @include border-right(1px solid #eee);\n @include margin-right(0.5em);\n}\n\n.user-permissions h3,\n.user-permissions .select-all {\n @include floatleft;\n}\n\n.user-permissions ul {\n clear: both;\n}\n\n.user-permissions ul ul li:before {\n display: block;\n position: absolute;\n margin-top: 8px;\n content: '';\n font-size: 0;\n width: 10px;\n height: 0;\n border-top: 1px solid #eee;\n @include left(20px);\n}\n\n.user-permissions ul ul ul li:before {\n width: 30px;\n}\n\n.user-permissions ul ul ul ul li:before {\n width: 45px;\n}\n\n.user-permissions ul ul ul ul ul li:before {\n width: 60px;\n}\n\n.user-permissions ul ul ul ul ul ul li:before {\n width: 75px;\n}\n\n.user-permissions ul ul ul ul ul ul ul li:before {\n width: 90px;\n}\n\n.user-permissions ul ul li .checkbox + label {\n @include padding-left(35px);\n}\n\n.user-permissions ul ul ul li .checkbox + label {\n @include padding-left(55px);\n}\n\n.user-permissions ul ul ul ul li .checkbox + label {\n @include padding-left(70px);\n}\n\n.user-permissions ul ul ul ul ul li .checkbox + label {\n @include padding-left(85px);\n}\n\n.user-permissions ul ul ul ul ul ul li .checkbox + label {\n @include padding-left(100px);\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/UserPermissions.css","mappings":"AAGA,kBACE,kBAGF,iCACE,0BAGF,8BAGE,wBACA,eAHA,eACA,aAEA,CAGF,oCACE,0BAGF,4BACE,kBACA,QAGF,gDACE,WAGF,sGAEE,WCucA,8BACE,kBDpcF,CCscA,8BACE,iBDvcF,CC4TA,8BACE,2BD5TF,CC8TA,8BACE,0BD/TF,CCuaA,8BACE,iBDvaF,CCyaA,8BACE,gBD1aF,CCkYA,qEACE,WAEF,qEACE,YD9XJ,qBACE,WAGF,kCAQE,0BAJA,WAHA,cAIA,YAEA,SAJA,eADA,kBAIA,UAEA,CCyPA,2CACE,SDzPY,CC2Pd,2CACE,UD5PY,CAGhB,qCACE,WAGF,wCACE,WAGF,2CACE,WAGF,8CACE,WAGF,iDACE,WC+YA,oDACE,iBD5YF,CC8YA,oDACE,kBD/YF,CC2YA,uDACE,iBDxYF,CC0YA,uDACE,kBD3YF,CCuYA,0DACE,iBDpYF,CCsYA,0DACE,kBDvYF,CCmYA,6DACE,iBDhYF,CCkYA,6DACE,kBDnYF,CC+XA,gEACE,kBD5XF,CC8XA,gEACE,mBD/XF","sources":["webpack:///./user-permissions.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n.user-permissions {\n position: relative;\n}\n\n.user-permissions h3:first-child {\n margin-top: 14px !important;\n}\n\n.user-permissions .select-all {\n font-size: 0.9em;\n margin: 13px 0;\n color: var(--link-color);\n cursor: pointer;\n}\n\n.user-permissions .select-all:hover {\n text-decoration: underline;\n}\n\n.user-permissions .checkbox {\n position: absolute;\n right: 0;\n}\n\n.user-permissions input.checkbox:disabled + label {\n opacity: 0.5;\n}\n\n.user-permissions input.checkbox:disabled + label:before,\n.user-permissions div.checkbox.disabled:before {\n opacity: 0.5;\n}\n\n.user-permissions h3 {\n @include padding-right(0.5em);\n @include border-right(1px solid #eee);\n @include margin-right(0.5em);\n}\n\n.user-permissions h3,\n.user-permissions .select-all {\n @include floatleft;\n}\n\n.user-permissions ul {\n clear: both;\n}\n\n.user-permissions ul ul li:before {\n display: block;\n position: absolute;\n margin-top: 8px;\n content: '';\n font-size: 0;\n width: 10px;\n height: 0;\n border-top: 1px solid #eee;\n @include left(20px);\n}\n\n.user-permissions ul ul ul li:before {\n width: 30px;\n}\n\n.user-permissions ul ul ul ul li:before {\n width: 45px;\n}\n\n.user-permissions ul ul ul ul ul li:before {\n width: 60px;\n}\n\n.user-permissions ul ul ul ul ul ul li:before {\n width: 75px;\n}\n\n.user-permissions ul ul ul ul ul ul ul li:before {\n width: 90px;\n}\n\n.user-permissions ul ul li .checkbox + label {\n @include padding-left(35px);\n}\n\n.user-permissions ul ul ul li .checkbox + label {\n @include padding-left(55px);\n}\n\n.user-permissions ul ul ul ul li .checkbox + label {\n @include padding-left(70px);\n}\n\n.user-permissions ul ul ul ul ul li .checkbox + label {\n @include padding-left(85px);\n}\n\n.user-permissions ul ul ul ul ul ul li .checkbox + label {\n @include padding-left(100px);\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/src/web/assets/utilities/dist/css/utilities.css.map b/src/web/assets/utilities/dist/css/utilities.css.map index a2b1384e702..2fa40dd7c29 100644 --- a/src/web/assets/utilities/dist/css/utilities.css.map +++ b/src/web/assets/utilities/dist/css/utilities.css.map @@ -1 +1 @@ -{"version":3,"file":"css/utilities.css","mappings":"AAIA,6BACE,cAIA,YAFA,kBACA,WACA,CCgaA,sCACE,WAEF,sCACE,YAuBF,sCACE,gBD3bF,CC6bA,sCACE,iBD9bF,CAGF,sCACE,gBACA,UAGF,0CAIE,SAAQ,CAFR,SADA,UAGA,CC8RA,mDACE,MDhSY,CCkSd,mDACE,ODnSY,CAIhB,qDACE,QAGF,iDAIE,+BADA,eAFA,gBAIA,kBCkRA,0DACE,MDtRY,CCwRd,0DACE,ODzRY,CCgcd,0DACE,iBD7bF,CC+bA,0DACE,kBDhcF,CAIF,oBACE,iBACA","sources":["webpack:///./utilities.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n/* Utilities */\nform.utility .utility-status {\n display: block;\n @include floatleft;\n position: relative;\n width: 100px;\n height: 40px;\n @include margin-left(10px);\n}\n\nform.utility .utility-status .alldone {\n margin-top: 11px;\n opacity: 0;\n}\n\nform.utility .utility-status .progressbar {\n width: 100%;\n top: 14px;\n @include left(0);\n opacity: 0;\n}\n\nform.utility .utility-status .progressbar.has-status {\n top: 6px;\n}\n\nform.utility .utility-status .progressbar-status {\n margin-top: 17px;\n @include left(0);\n font-size: 12px;\n color: var(--medium-text-color);\n text-align: center;\n @include padding-left(10px);\n}\n\n/* Asset Index */\n.confirmmodal .body {\n max-height: 400px;\n overflow: auto;\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid transparentize($inputColor, 0.75);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(56px);\n border: 1px solid;\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $mediumTextColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n position: absolute;\n top: 12px;\n @include left(16px);\n font-size: 30px;\n width: 24px;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"css/utilities.css","mappings":"AAIA,6BACE,cAIA,YAFA,kBACA,WACA,CCgaA,sCACE,WAEF,sCACE,YAuBF,sCACE,gBD3bF,CC6bA,sCACE,iBD9bF,CAGF,sCACE,gBACA,UAGF,0CAIE,SAAQ,CAFR,SADA,UAGA,CC8RA,mDACE,MDhSY,CCkSd,mDACE,ODnSY,CAIhB,qDACE,QAGF,iDAIE,+BADA,eAFA,gBAIA,kBCkRA,0DACE,MDtRY,CCwRd,0DACE,ODzRY,CCgcd,0DACE,iBD7bF,CC+bA,0DACE,kBDhcF,CAIF,oBACE,iBACA","sources":["webpack:///./utilities.scss","webpack:///../../../../../packages/craftcms-sass/_mixins.scss"],"sourcesContent":["@charset \"UTF-8\";\n@import '@craftcms/sass/mixins';\n\n/* Utilities */\nform.utility .utility-status {\n display: block;\n @include floatleft;\n position: relative;\n width: 100px;\n height: 40px;\n @include margin-left(10px);\n}\n\nform.utility .utility-status .alldone {\n margin-top: 11px;\n opacity: 0;\n}\n\nform.utility .utility-status .progressbar {\n width: 100%;\n top: 14px;\n @include left(0);\n opacity: 0;\n}\n\nform.utility .utility-status .progressbar.has-status {\n top: 6px;\n}\n\nform.utility .utility-status .progressbar-status {\n margin-top: 17px;\n @include left(0);\n font-size: 12px;\n color: var(--medium-text-color);\n text-align: center;\n @include padding-left(10px);\n}\n\n/* Asset Index */\n.confirmmodal .body {\n max-height: 400px;\n overflow: auto;\n}\n","$white: #fff;\n$black: #000;\n\n$grey050: hsl(212, 60%, 97%);\n$grey100: hsl(212, 50%, 93%);\n$grey200: hsl(212, 30%, 85%);\n$grey300: hsl(211, 13%, 65%);\n$grey350: hsl(211, 11%, 59%);\n$grey400: hsl(210, 10%, 53%);\n$grey500: hsl(211, 12%, 43%);\n$grey550: hsl(210, 13%, 40%);\n$grey600: hsl(209, 14%, 37%);\n$grey700: hsl(209, 18%, 30%);\n$grey800: hsl(209, 20%, 25%);\n$grey900: hsl(210, 24%, 16%);\n$grey1000: hsl(210, 24%, 10%);\n\n$blue050: #e3f8ff;\n$blue100: #b3ecff;\n$blue200: #81defd;\n$blue300: #5ed0fa;\n$blue400: #40c3f7;\n$blue500: #2bb0ed;\n$blue600: #1992d4;\n$blue700: #127fbf;\n$blue800: #0b69a3;\n$blue900: #035388;\n\n$cyan050: #e0fcff;\n$cyan100: #bef8fd;\n$cyan200: #87eaf2;\n$cyan300: #54d1db;\n$cyan400: #38bec9;\n$cyan500: #2cb1bc;\n$cyan600: #14919b;\n$cyan700: #0e7c86;\n$cyan800: #0a6c74;\n$cyan900: #044e54;\n\n$pink050: #ffe3ec;\n$pink100: #ffb8d2;\n$pink200: #ff8cba;\n$pink300: #f364a2;\n$pink400: #e8368f;\n$pink500: #da127d;\n$pink600: #bc0a6f;\n$pink700: #a30664;\n$pink800: #870557;\n$pink900: #620042;\n\n$red050: #ffe3e3;\n$red100: #ffbdbd;\n$red200: #ff9b9b;\n$red300: #f86a6a;\n$red400: #ef4e4e;\n$red500: #e12d39;\n$red600: #cf1124;\n$red700: #ab091e;\n$red800: #8a041a;\n$red900: #610316;\n\n$yellow050: #fffbea;\n$yellow100: #fff3c4;\n$yellow200: #fce588;\n$yellow300: #fadb5f;\n$yellow400: #f7c948;\n$yellow500: #f0b429;\n$yellow600: #de911d;\n$yellow700: #cb6e17;\n$yellow800: #b44d12;\n$yellow900: #8d2b0b;\n\n$teal050: #effcf6;\n$teal100: #c6f7e2;\n$teal200: #8eedc7;\n$teal300: #65d6ad;\n$teal400: #3ebd93;\n$teal500: #27ab83;\n$teal600: #199473;\n$teal700: #147d64;\n$teal800: #0c6b58;\n$teal900: #014d40;\n\n// submit button colors\n$primaryColor: $red500;\n$secondaryColor: $grey500;\n\n$inputColor: hsl(212, 25%, 50%);\n\n// text colors\n$textColor: $grey700;\n$mediumDarkTextColor: $grey550;\n$mediumTextColor: $grey550;\n$lightTextColor: $grey500;\n$linkColor: #2563eb;\n\n// menu colors\n$menuOptionColor: $textColor;\n$menuOptionActiveColor: $white;\n$menuOptionActiveBackgroundColor: $grey500;\n\n// hairline colors\n$hairlineColor: transparentize($grey800, 0.9);\n$mediumHairlineColor: transparentize($grey600, 0.75);\n$darkHairlineColor: transparentize($grey400, 0.5);\n\n// focus colors\n$lightFocusColor: $blue300;\n$mediumFocusColor: $blue500;\n$darkFocusColor: #0f74b1;\n\n// focus rings\n$lightFocusRing: 0 0 0 1px $lightFocusColor,\n 0 0 0 3px transparentize($lightFocusColor, 0.3);\n$mediumFocusRing: 0 0 0 1px $mediumFocusColor,\n 0 0 0 3px transparentize($mediumFocusColor, 0.3);\n$darkFocusRing: 0 0 0 1px $darkFocusColor,\n 0 0 0 3px transparentize($darkFocusColor, 0.3);\n\n// selection colors\n$lightSelColor: $grey200;\n$darkSelColor: $grey600;\n\n// alert/notice colors\n$errorColor: $red600;\n$warningColor: $yellow800;\n$successColor: $teal500;\n$noticeColor: $blue800;\n\n// UI element styles\n$smallBorderRadius: 3px;\n$mediumBorderRadius: 4px;\n$largeBorderRadius: 5px;\n\n$menuBorderRadius: $mediumBorderRadius;\n$checkboxSize: 16px;\n$radioSize: 16px;\n\n@mixin sans-serif-font {\n font-family: system-ui, BlinkMacSystemFont, -apple-system, 'Segoe UI',\n 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans',\n 'Helvetica Neue', sans-serif;\n}\n\n@mixin fixed-width-font {\n font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier,\n monospace;\n font-size: 0.9em !important;\n}\n\n@function toRem($values...) {\n $max: length($values);\n $remValues: '';\n\n @for $i from 1 through $max {\n $remValues: #{$remValues + calc(nth($values, $i) / 16)}rem;\n\n @if $i < $max {\n $remValues: #{$remValues + ' '};\n }\n }\n\n @return $remValues;\n}\n\n@mixin fontSize($size) {\n font-size: toRem($size);\n}\n\n// Other\n\n@mixin focus-styles {\n body:not(.reduce-focus-visibility) &:focus,\n body.reduce-focus-visibility &:focus-visible {\n @content;\n }\n}\n\n@mixin svg-mask($color) {\n rect,\n circle,\n ellipse,\n line,\n polyline,\n polygon,\n path,\n text {\n fill: $color;\n stroke-width: 0;\n }\n}\n\n@mixin icon {\n font-family: 'Craft';\n speak: none;\n -webkit-font-feature-settings: 'liga', 'dlig';\n -moz-font-feature-settings: 'liga=1, dlig=1';\n -moz-font-feature-settings: 'liga', 'dlig';\n -ms-font-feature-settings: 'liga', 'dlig';\n -o-font-feature-settings: 'liga', 'dlig';\n font-feature-settings: 'liga', 'dlig';\n text-rendering: optimizeLegibility;\n font-weight: normal;\n font-variant: normal;\n text-transform: none;\n line-height: 1;\n direction: ltr; // Fixes a rendering issue in Chrome/Win\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n\n display: inline-block;\n text-align: center;\n font-style: normal;\n vertical-align: middle;\n word-wrap: normal !important;\n user-select: none;\n\n opacity: var(--icon-opacity);\n}\n\n@mixin angle($dir: down, $color: currentColor, $width: 2px) {\n display: block;\n content: '';\n font-size: 0;\n width: 7px;\n height: 7px;\n border: solid $color;\n border-width: 0 $width $width 0;\n opacity: 0.8;\n\n @if $dir == up {\n transform: rotate(225deg);\n } @else if $dir == down {\n transform: rotate(45deg);\n } @else if $dir == left {\n body.ltr & {\n transform: rotate(135deg);\n }\n body.rtl & {\n transform: rotate(-45deg);\n }\n } @else if $dir == right {\n body.ltr & {\n transform: rotate(-45deg);\n }\n body.rtl & {\n transform: rotate(135deg);\n }\n }\n}\n\n@mixin clearafter {\n content: '';\n display: block;\n height: 0;\n clear: both;\n visibility: hidden;\n}\n\n@mixin shadow {\n box-shadow: 0 1px 5px -1px transparentize($grey900, 0.8);\n}\n\n@mixin pane {\n background: $white;\n box-shadow: 0 0 0 1px $grey200, 0 2px 12px transparentize($grey200, 0.5);\n\n &:focus {\n box-shadow: var(--focus-ring);\n }\n}\n\n@mixin modal {\n border-radius: $largeBorderRadius;\n background-color: $white;\n box-shadow: 0 25px 100px transparentize($grey900, 0.5);\n}\n\n@mixin light-on-dark-text() {\n // Make light on dark text sharp on Macs\n // (sub-pixel antialiasing looks too bold/blurry with light text on dark background)\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n}\n\n@mixin light-focus-ring() {\n --focus-ring: 0 0 0 1px hsl(var(--light-focus-hsl)),\n 0 0 0 3px hsla(var(--light-focus-hsl), 0.7);\n}\n\n@mixin two-color-focus-ring($light-button: true) {\n // Creates a two-color focus ring, with a white\n // If button is light, the dark box shadow is adjacent to the button\n // Else the light box shadow is adjacent to the button\n --light-color: var(--white);\n --dark-color: var(--gray-800);\n\n @if $light-button {\n --focus-ring: 0 0 0 3px var(--dark-color), 0 0 0 6px var(--light-color);\n } @else {\n --focus-ring: 0 0 0 3px var(--light-color), 0 0 0 6px var(--dark-color);\n }\n}\n\n// RTL stuff\n\n@mixin left($left) {\n body.ltr & {\n left: $left;\n }\n body.rtl & {\n right: $left;\n }\n}\n\n@mixin right($right) {\n body.ltr & {\n right: $right;\n }\n body.rtl & {\n left: $right;\n }\n}\n\n@mixin alignleft {\n body.ltr & {\n text-align: left;\n }\n body.rtl & {\n text-align: right;\n }\n}\n\n@mixin alignright {\n body.ltr & {\n text-align: right;\n }\n body.rtl & {\n text-align: left;\n }\n}\n\n@mixin border-left($params...) {\n body.ltr & {\n border-left: $params;\n }\n body.rtl & {\n border-right: $params;\n }\n}\n\n@mixin border-right($params...) {\n body.ltr & {\n border-right: $params;\n }\n body.rtl & {\n border-left: $params;\n }\n}\n\n@mixin border-left-width($param) {\n body.ltr & {\n border-left-width: $param;\n }\n body.rtl & {\n border-right-width: $param;\n }\n}\n\n@mixin border-right-width($param) {\n body.ltr & {\n border-right-width: $param;\n }\n body.rtl & {\n border-left-width: $param;\n }\n}\n\n@mixin border-radius($tl, $tr, $br, $bl) {\n body.ltr & {\n border-radius: $tl $tr $br $bl;\n }\n body.rtl & {\n border-radius: $tr $tl $bl $br;\n }\n}\n\n@mixin border-top-left-radius($params...) {\n body.ltr & {\n border-top-left-radius: $params;\n }\n body.rtl & {\n border-top-right-radius: $params;\n }\n}\n\n@mixin border-top-right-radius($params...) {\n body.ltr & {\n border-top-right-radius: $params;\n }\n body.rtl & {\n border-top-left-radius: $params;\n }\n}\n\n@mixin border-bottom-left-radius($params...) {\n body.ltr & {\n border-bottom-left-radius: $params;\n }\n body.rtl & {\n border-bottom-right-radius: $params;\n }\n}\n\n@mixin border-bottom-right-radius($params...) {\n body.ltr & {\n border-bottom-right-radius: $params;\n }\n body.rtl & {\n border-bottom-left-radius: $params;\n }\n}\n\n@mixin floatleft {\n body.ltr & {\n float: left;\n }\n body.rtl & {\n float: right;\n }\n}\n\n@mixin floatright {\n body.ltr & {\n float: right;\n }\n body.rtl & {\n float: left;\n }\n}\n\n@mixin margin($t, $r, $b, $l, $important: '') {\n body.ltr & {\n margin: $t $r $b $l unquote($important);\n }\n body.rtl & {\n margin: $t $l $b $r unquote($important);\n }\n}\n\n@mixin margin-left($margin...) {\n body.ltr & {\n margin-left: $margin;\n }\n body.rtl & {\n margin-right: $margin;\n }\n}\n\n@mixin margin-right($margin...) {\n body.ltr & {\n margin-right: $margin;\n }\n body.rtl & {\n margin-left: $margin;\n }\n}\n\n@mixin padding($t, $r, $b, $l, $important: '') {\n body.ltr & {\n padding: $t $r $b $l unquote($important);\n }\n body.rtl & {\n padding: $t $l $b $r unquote($important);\n }\n}\n\n@mixin padding-left($padding...) {\n body.ltr & {\n padding-left: $padding;\n }\n body.rtl & {\n padding-right: $padding;\n }\n}\n\n@mixin padding-right($padding...) {\n body.ltr & {\n padding-right: $padding;\n }\n body.rtl & {\n padding-left: $padding;\n }\n}\n\n// Misc\n\n@mixin dark-inputs {\n @include placeholder-styles($grey400);\n\n .btn,\n .select:not(.selectize) select {\n background-color: $grey200;\n\n &:focus,\n &:hover {\n background-color: darken($grey200, 5%);\n }\n\n &:active,\n &.active {\n background-color: darken($grey200, 10%);\n }\n }\n\n .text {\n background-color: $grey200;\n\n &:focus {\n background-color: darken($grey200, 5%);\n }\n }\n}\n\n@mixin header-btn {\n width: 30px;\n height: 30px;\n padding-left: 0;\n padding-right: 0;\n\n &:not(:hover):not(:active):not(.active) {\n background-color: transparent;\n }\n &:not(:active):not(.active):hover {\n background-color: transparentize($grey300, 0.85);\n }\n}\n\n@mixin h6-styles {\n margin: 14px 0 3px;\n font-size: 11px;\n line-height: 1.2;\n color: $lightTextColor;\n text-transform: uppercase;\n}\n\n@mixin token-styles {\n display: inline-block;\n border-radius: $smallBorderRadius;\n padding: 3px 7px;\n font-size: 12px;\n line-height: 14px;\n color: $textColor;\n background-color: $grey100;\n}\n\n@mixin active-token-styles {\n background-color: $grey200;\n}\n\n@mixin menu-styles {\n z-index: 100;\n border-radius: $menuBorderRadius;\n padding: 0 14px;\n overflow: auto;\n background: $white;\n user-select: none;\n box-shadow: 0 0 0 1px transparentize($grey900, 0.9),\n 0 5px 20px transparentize($grey900, 0.75);\n}\n\n@mixin menu-option-styles {\n margin: 0 -14px;\n padding: 10px 14px;\n color: $menuOptionColor;\n text-decoration: none;\n white-space: nowrap;\n}\n\n@mixin menu-option-active-styles {\n color: $menuOptionActiveColor;\n background-color: $menuOptionActiveBackgroundColor;\n}\n\n@mixin disclosure-link-hover-styles {\n color: $menuOptionColor;\n background-color: $grey050;\n}\n\n@mixin input-styles {\n border-radius: $smallBorderRadius;\n border: 1px solid var(--input-border-color);\n background-color: hsl(212, 50%, 99%);\n background-clip: padding-box;\n}\n\n@mixin input-focused-styles {\n box-shadow: var(--focus-ring);\n}\n\n@mixin placeholder-styles($color) {\n input::-webkit-input-placeholder,\n textarea::-webkit-input-placeholder {\n color: $color;\n }\n\n input:-ms-input-placeholder,\n textarea:-ms-input-placeholder {\n color: $color;\n }\n\n input::-ms-input-placeholder,\n textarea::-ms-input-placeholder {\n color: $color;\n }\n\n input:-moz-placeholder,\n textarea:-moz-placeholder {\n color: $color;\n }\n\n input::-moz-placeholder,\n textarea::-moz-placeholder {\n color: $color;\n }\n\n input::placeholder,\n textarea::placeholder {\n color: $color;\n }\n}\n\n@mixin select-styles {\n position: relative;\n border-radius: $largeBorderRadius;\n white-space: nowrap;\n}\n\n@mixin select-container-styles {\n max-width: 100%;\n position: relative;\n :not(.flex) > & {\n display: inline-block;\n }\n}\n\n@mixin select-arrow-styles {\n @include angle;\n position: absolute;\n z-index: 1;\n top: calc(50% - 5px);\n @include right(9px);\n user-select: none;\n pointer-events: none;\n}\n\n@mixin select-input-styles {\n display: block;\n position: relative;\n max-width: 100%;\n border: none;\n @include padding(7px, 22px, 7px, 10px);\n font-size: 14px;\n line-height: 20px;\n color: $textColor;\n background-color: hsl(212, 25%, 90%);\n appearance: none;\n // from https://stackoverflow.com/a/15933790/1688568\n &::-ms-expand {\n display: none;\n }\n}\n\n@mixin select-input-fullwidth-styles {\n min-width: 100%;\n}\n\n@mixin select-input-focused-styles {\n outline-color: transparent;\n background-color: hsl(212, 25%, 85%);\n box-shadow: var(--focus-ring);\n}\n\n@mixin touch-target {\n height: var(--touch-target-size);\n width: var(--touch-target-size);\n}\n\n@mixin visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n@mixin readable {\n font-size: 16px;\n line-height: 22px;\n\n h1,\n .h1,\n h2,\n .h2,\n h3,\n .h3,\n h4,\n .h4,\n h5,\n .h5,\n h6,\n .h6 {\n margin: 24px 0 16px;\n font-weight: 600;\n }\n\n h1,\n .h1 {\n font-size: 32px;\n line-height: 40px;\n color: #000;\n }\n\n h2,\n .h2 {\n font-size: 24px;\n line-height: 30px;\n }\n\n h3,\n .h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4,\n .h4 {\n font-size: 16px;\n line-height: 20px;\n }\n\n h5,\n .h5 {\n font-size: 14px;\n line-height: 18px;\n }\n\n h6,\n .h6 {\n font-size: 13.6px;\n line-height: 17px;\n color: $mediumTextColor;\n }\n\n ul,\n ol {\n margin: 1em 0;\n @include padding-left(2em);\n }\n\n ul li {\n list-style-type: disc;\n }\n\n li + li {\n margin-top: 0.25em;\n }\n\n .tip-dismiss-btn {\n position: absolute;\n top: 12px;\n @include right(12px);\n\n & + p {\n margin-top: 0;\n }\n }\n\n blockquote {\n margin: 16px 0;\n\n &:not(.note) {\n padding: 0 16px;\n color: $mediumTextColor;\n @include border-left(4px solid $hairlineColor);\n }\n\n &.note {\n position: relative;\n border-radius: 4px;\n padding: 1em;\n @include padding-left(50px);\n border: 1px solid;\n\n &.dismissible {\n @include padding-right(36px);\n }\n\n &:not(.tip):not(.warning) {\n border-color: $errorColor;\n color: #bf503f;\n\n &:before {\n content: 'alert';\n color: $errorColor;\n }\n }\n\n &.tip {\n border-color: $linkColor;\n color: $linkColor;\n\n &:before {\n content: 'lightbulb';\n color: $linkColor;\n }\n }\n\n &.warning {\n border-color: $warningColor;\n color: #cf783a;\n\n &:before {\n content: 'alert';\n color: $warningColor;\n }\n }\n\n &:before {\n @include icon;\n opacity: 1;\n position: absolute;\n top: 15px;\n @include left(16px);\n font-size: 24px;\n width: 24px;\n }\n\n a[href] {\n color: currentColor;\n text-decoration: underline;\n }\n }\n }\n}\n"],"names":[],"sourceRoot":""} \ No newline at end of file