carbon-components
Version:
Carbon Components is a component library for IBM Cloud
1 lines • 174 kB
JavaScript
var CarbonComponents=function(e){"use strict";var t={prefix:"bx"};function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function a(e,t,n){return t&&o(e.prototype,t),n&&o(e,n),e}function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),o.forEach(function(t){i(e,t,n[t])})}return e}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&l(e,t)}function c(e){return(c=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function l(e,t){return(l=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function u(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function d(e,t){return!t||"object"!=typeof t&&"function"!=typeof t?u(e):t}function p(e,t,n){return(p="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var o=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=c(e)););return e}(e,t);if(o){var a=Object.getOwnPropertyDescriptor(o,t);return a.get?a.get.call(n):a.value}})(e,t,n||e)}function h(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=[],o=!0,a=!1,i=void 0;try{for(var r,s=e[Symbol.iterator]();!(o=(r=s.next()).done)&&(n.push(r.value),!t||n.length!==t);o=!0);}catch(e){a=!0,i=e}finally{try{o||null==s.return||s.return()}finally{if(a)throw i}}return n}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function f(e){return function(e){if(Array.isArray(e)){for(var t=0,n=new Array(e.length);t<e.length;t++)n[t]=e[t];return n}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function m(){for(var e=arguments.length,t=new Array(e),o=0;o<e;o++)t[o]=arguments[o];return function e(t){return t.reduce(function(t,n){return Array.isArray(n)?t.push.apply(t,f(e(n))):t.push(n),t},[])}(t).reduce(function(e,t){return t(e)},function(){return function e(){n(this,e)}}())}function g(e){return function(t){function o(e){var t,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(n(this,o),i(u(u(t=d(this,c(o).call(this,e,a)))),"children",[]),!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");return t.element=e,t.options=Object.assign(Object.create(t.constructor.options),a),t.constructor.components.set(t.element,u(u(t))),t}return s(o,e),a(o,[{key:"release",value:function(){for(var e=this.children.pop();e;e=this.children.pop())e.release();return this.constructor.components.delete(this.element),null}}],[{key:"create",value:function(e,t){return this.components.get(e)||new this(e,t)}}]),o}()}function v(e){return function(t){function o(){return n(this,o),d(this,c(o).apply(this,arguments))}return s(o,e),a(o,null,[{key:"init",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=Object.assign(Object.create(this.options),n);if(!t||t.nodeType!==Node.ELEMENT_NODE&&t.nodeType!==Node.DOCUMENT_NODE)throw new TypeError("DOM document or DOM element should be given to search for and initialize this widget.");t.nodeType===Node.ELEMENT_NODE&&t.matches(o.selectorInit)?this.create(t,n):Array.prototype.forEach.call(t.querySelectorAll(o.selectorInit),function(t){return e.create(t,n)})}}]),o}()}function y(e){return function(t){function o(){var e,t;n(this,o);for(var a=arguments.length,r=new Array(a),s=0;s<a;s++)r[s]=arguments[s];return i(u(u(t=d(this,(e=c(o)).call.apply(e,[this].concat(r))))),"handles",new Set),t}return s(o,e),a(o,[{key:"manage",value:function(e){return this.handles.add(e),e}},{key:"unmanage",value:function(e){return this.handles.delete(e),e}},{key:"release",value:function(){var e=this;return this.handles.forEach(function(t){t.release(),e.handles.delete(t)}),p(c(o.prototype),"release",this).call(this)}}]),o}()}function b(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),o=1;o<t;o++)n[o-1]=arguments[o];return e.addEventListener.apply(e,n),{release:function(){return e.removeEventListener.apply(e,n),null}}}var w={true:"true",false:"false",mixed:"mixed"},S=function(e){function o(e,t){var a;return n(this,o),(a=d(this,c(o).call(this,e,t))).manage(b(a.element,"click",function(e){a._handleClick(e)})),a.manage(b(a.element,"focus",function(e){a._handleFocus(e)})),a.manage(b(a.element,"blur",function(e){a._handleBlur(e)})),a._indeterminateCheckbox(),a._initCheckbox(),a}return s(o,m(g,v,y)),a(o,[{key:"_handleClick",value:function(){!0===this.element.checked?(this.element.setAttribute("checked",""),this.element.setAttribute("aria-checked","true"),this.element.checked=!0,this.element.parentElement.classList.contains(this.options.classLabel)&&this.element.parentElement.setAttribute(this.options.attribContainedCheckboxState,"true")):!1===this.element.checked&&(this.element.removeAttribute("checked"),this.element.setAttribute("aria-checked","false"),this.element.checked=!1,this.element.parentElement.classList.contains(this.options.classLabel)&&this.element.parentElement.setAttribute(this.options.attribContainedCheckboxState,"false"))}},{key:"_handleFocus",value:function(){this.element.parentElement.classList.contains(this.options.classLabel)&&this.element.parentElement.classList.add(this.options.classLabelFocused)}},{key:"_handleBlur",value:function(){this.element.parentElement.classList.contains(this.options.classLabel)&&this.element.parentElement.classList.remove(this.options.classLabelFocused)}},{key:"setState",value:function(e){if(void 0===e||void 0===w[e])throw new TypeError("setState expects a value of true, false or mixed.");this.element.setAttribute("aria-checked",e),this.element.indeterminate=e===w.mixed,this.element.checked=e===w.true;var t=this.element.closest(this.options.selectorContainedCheckboxState);t&&t.setAttribute(this.options.attribContainedCheckboxState,e)}},{key:"setDisabled",value:function(e){if(void 0===e)throw new TypeError("setDisabled expects a boolean value of true or false");!0===e?this.element.setAttribute("disabled",!0):!1===e&&this.element.removeAttribute("disabled");var t=this.element.closest(this.options.selectorContainedCheckboxDisabled);t&&t.setAttribute(this.options.attribContainedCheckboxDisabled,e)}},{key:"_indeterminateCheckbox",value:function(){"mixed"===this.element.getAttribute("aria-checked")&&(this.element.indeterminate=!0),!0===this.element.indeterminate&&this.element.setAttribute("aria-checked","mixed"),this.element.parentElement.classList.contains(this.options.classLabel)&&!0===this.element.indeterminate&&this.element.parentElement.setAttribute(this.options.attribContainedCheckboxState,"mixed")}},{key:"_initCheckbox",value:function(){!0===this.element.checked&&this.element.setAttribute("aria-checked","true"),this.element.parentElement.classList.contains(this.options.classLabel)&&this.element.checked&&this.element.parentElement.setAttribute(this.options.attribContainedCheckboxState,"true"),this.element.parentElement.classList.contains(this.options.classLabel)&&this.element.parentElement.setAttribute(this.options.attribContainedCheckboxDisabled,"false"),this.element.parentElement.classList.contains(this.options.classLabel)&&this.element.disabled&&this.element.parentElement.setAttribute(this.options.attribContainedCheckboxDisabled,"true")}}],[{key:"options",get:function(){var e=t.prefix;return{selectorInit:".".concat(e,"--checkbox"),selectorContainedCheckboxState:"[data-contained-checkbox-state]",selectorContainedCheckboxDisabled:"[data-contained-checkbox-disabled]",classLabel:"".concat(e,"--checkbox-label"),classLabelFocused:"".concat(e,"--checkbox-label__focus"),attribContainedCheckboxState:"data-contained-checkbox-state",attribContainedCheckboxDisabled:"data-contained-checkbox-disabled"}}}]),o}();i(S,"components",new WeakMap),i(S,"stateChangeTypes",w);function k(e){return function(t){function o(){return n(this,o),d(this,c(o).apply(this,arguments))}return s(o,e),a(o,[{key:"_changeState",value:function(){throw new Error("_changeState() should be overriden to perform actual change in state.")}},{key:"changeState",value:function(){for(var e=this,t=arguments.length,n=new Array(t),o=0;o<t;o++)n[o]=arguments[o];var a="string"==typeof n[0]?n.shift():void 0,i=Object(n[0])===n[0]&&"function"!=typeof n[0]?n.shift():void 0,r="function"==typeof n[0]?n.shift():void 0;if("function"!=typeof this.shouldStateBeChanged||this.shouldStateBeChanged(a,i)){var s={group:i&&i.group,state:a},c=[s.group,a].filter(Boolean).join("-").split("-").map(function(e){return e[0].toUpperCase()+e.substr(1)}).join(""),l=new CustomEvent(this.options["eventBefore".concat(c)],{bubbles:!0,cancelable:!0,detail:i}),u=i&&i.delegatorNode||this.element;if(!u.dispatchEvent(l)){if(r){var d=new Error("Changing state (".concat(JSON.stringify(s),") has been canceled."));d.canceled=!0,r(d)}}else{var p=[a,i].filter(Boolean);this._changeState.apply(this,f(p).concat([function(){u.dispatchEvent(new CustomEvent(e.options["eventAfter".concat(c)],{bubbles:!0,cancelable:!0,detail:i})),r&&r()}]))}}else r&&r(null,!0)}}]),o}()}function C(e,t){var n=e.target,o=e.currentTarget;if("function"==typeof n.matches){if(n.matches(t))return n;if(n.matches("".concat(t," *"))){var a=n.closest(t);if((o.nodeType===Node.DOCUMENT_NODE?o.documentElement:o).contains(a))return a}}}var E=function(e){return Array.prototype.slice.call(e)},_=function(e){function o(e){var t,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(n(this,o),i(u(u(t=d(this,c(o).call(this,e,a)))),"_changeState",function(e,n,o){"delete-filename-fileuploader"===e&&t.container.removeChild(n.filenameElement),"function"==typeof o&&o()}),i(u(u(t)),"_handleDeleteButton",function(e){var n=C(e,"[data-for=".concat(t.inputId,"]"));n&&t._changeState("delete-filename-fileuploader",{initialEvt:e,filenameElement:n.parentNode})}),t.input=t.element.querySelector(t.options.selectorInput),t.container=t.element.querySelector(t.options.selectorContainer),!t.input)throw new TypeError("Cannot find the file input box.");if(!t.container)throw new TypeError("Cannot find the file names container.");return t.inputId=t.input.getAttribute("id"),t.manage(b(t.input,"change",function(){return t._displayFilenames()})),t.manage(b(t.container,"click",t._handleDeleteButton)),t}return s(o,m(g,v,k,y)),a(o,[{key:"_filenamesHTML",value:function(e,t){return'<span class="'.concat(this.options.classSelectedFile,'">\n <p class="').concat(this.options.classFileName,'">').concat(e,'</p>\n <span data-for="').concat(t,'" class="').concat(this.options.classStateContainer,'"></span>\n </span>')}},{key:"_uploadHTML",value:function(){return'\n <div data-loading class="'.concat(this.options.classLoading,'">\n <svg class="').concat(this.options.classLoadingSvg,'" viewBox="-42 -42 84 84">\n <circle cx="0" cy="0" r="37.5" />\n </svg>\n </div>')}},{key:"_closeButtonHTML",value:function(){return'\n <svg class="'.concat(this.options.classFileClose,'" tabindex="0" viewBox="0 0 16 16" fill-rule="evenodd" width="16" height="16">\n <path d="M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zm3.5 10.1l-1.4 1.4L8\n 9.4l-2.1 2.1-1.4-1.4L6.6 8 4.5 5.9l1.4-1.4L8 6.6l2.1-2.1 1.4 1.4L9.4 8l2.1 2.1z" />\n </svg>')}},{key:"_checkmarkHTML",value:function(){return'\n <svg class="'.concat(this.options.classFileComplete,'" viewBox="0 0 16 16" fill-rule="evenodd" width="16" height="16">\n <path d="M8 0C3.6 0 0 3.6 0 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zM6.7 11.5L3.4 8.1l1.4-1.4 1.9 1.9 4.1-4.1 1.4 1.4-5.5 5.6z"/>\n </svg>')}},{key:"_getStateContainers",value:function(){var e=E(this.element.querySelectorAll("[data-for=".concat(this.inputId,"]")));if(0===e.length)throw new TypeError("State container elements not found; invoke _displayFilenames() first");if(e[0].dataset.for!==this.inputId)throw new TypeError("File input id must equal [data-for] attribute");return e}},{key:"_displayFilenames",value:function(){var e=this,t=this.element.querySelector(this.options.selectorContainer),n=E(this.input.files).map(function(t){return e._filenamesHTML(t.name,e.inputId)}).join("");t.insertAdjacentHTML("afterbegin",n)}},{key:"_removeState",value:function(e){if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");for(;e.firstChild;)e.removeChild(e.firstChild)}},{key:"_handleStateChange",value:function(e,t,n){var o=this;void 0===t?e.forEach(function(e){o._removeState(e),e.insertAdjacentHTML("beforeend",n)}):e.forEach(function(e,a){a===t&&(o._removeState(e),e.insertAdjacentHTML("beforeend",n))})}},{key:"setState",value:function(e,t){var n=this._getStateContainers();"edit"===e&&this._handleStateChange(n,t,this._closeButtonHTML()),"upload"===e&&this._handleStateChange(n,t,this._uploadHTML()),"complete"===e&&this._handleStateChange(n,t,this._checkmarkHTML())}}],[{key:"options",get:function(){var e=t.prefix;return{selectorInit:"[data-file]",selectorInput:'input[type="file"].'.concat(e,"--file-input"),selectorContainer:"[data-file-container]",selectorCloseButton:".".concat(e,"--file-close"),classLoading:"".concat(e,"--loading"),classLoadingSvg:"".concat(e,"--loading__svg"),classFileName:"".concat(e,"--file-filename"),classFileClose:"".concat(e,"--file-close"),classFileComplete:"".concat(e,"--file-complete"),classSelectedFile:"".concat(e,"--file__selected-file"),classStateContainer:"".concat(e,"--file__state-container"),eventBeforeDeleteFilenameFileuploader:"fileuploader-before-delete-filename",eventAfterDeleteFilenameFileuploader:"fileuploader-after-delete-filename"}}}]),o}();function L(e){var t=function(t){function o(){return n(this,o),d(this,c(o).apply(this,arguments))}return s(o,e),a(o,null,[{key:"init",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=Object.assign(Object.create(this.options),n);if(!t||t.nodeType!==Node.ELEMENT_NODE&&t.nodeType!==Node.DOCUMENT_NODE)throw new TypeError("DOM document or DOM element should be given to search for and initialize this widget.");if(t.nodeType!==Node.ELEMENT_NODE||!t.matches(o.selectorInit)){var a="onfocusin"in(t.nodeType===Node.ELEMENT_NODE?t.ownerDocument:t).defaultView,i=o.initEventNames.map(function(i){return b(t,"focus"===i&&a?"focusin":i,function(t){var a=C(t,o.selectorInit);if(a&&!e.components.has(a)){var i=e.create(a,n);"function"==typeof i.createdByEvent&&i.createdByEvent(t)}},"focus"===i&&!a)});return{release:function(){for(var e=i.pop();e;e=i.pop())e.release()}}}return this.create(t,n),""}}]),o}();return i(t,"forLazyInit",!0),t}i(_,"components",new WeakMap);var x=function(e){function t(e){var o;return n(this,t),(o=d(this,c(t).call(this,e))).manage(b(e,"click",function(e){o.toggle(e)})),o}return s(t,m(g,L,y)),a(t,[{key:"createdByEvent",value:function(e){this.toggle(e)}},{key:"toggle",value:function(e){"A"===this.element.tagName&&e.preventDefault(),"closed"===this.element.dataset.state?this.element.dataset.state="open":this.element.dataset.state="closed"}}],[{key:"create",value:function(e){return this.components.get(e)||new this(e)}}]),t}();i(x,"components",new WeakMap),i(x,"options",{selectorInit:"[data-fab]",initEventNames:["click"]});var A=x,D=function(e){return Array.prototype.slice.call(e)},N=function(e){function o(e,t){var a;return n(this,o),(a=d(this,c(o).call(this,e,t))).manage(b(a.element,"click",function(e){a._handleClick(e)})),a}return s(o,m(g,v,k,y)),a(o,[{key:"_handleClick",value:function(e){var t=C(e,this.options.selectorButton);t&&this.changeState({group:"selected",item:t,launchingEvent:e})}},{key:"_changeState",value:function(e,t){var n=this,o=e.item,a=o.querySelector(this.options.selectorLink);a&&(D(this.element.querySelectorAll(this.options.selectorLink)).forEach(function(e){e!==a&&e.setAttribute("aria-selected","false")}),a.setAttribute("aria-selected","true")),D(this.element.querySelectorAll(this.options.selectorButton)).forEach(function(e){e!==o&&(e.setAttribute("aria-selected",!1),e.classList.toggle(n.options.classActive,!1),D(e.ownerDocument.querySelectorAll(e.dataset.target)).forEach(function(e){e.setAttribute("hidden",""),e.setAttribute("aria-hidden","true")}))}),o.classList.toggle(this.options.classActive,!0),o.setAttribute("aria-selected",!0),D(o.ownerDocument.querySelectorAll(o.dataset.target)).forEach(function(e){e.removeAttribute("hidden"),e.setAttribute("aria-hidden","false")}),t&&t()}},{key:"setActive",value:function(e,t){this.changeState({group:"selected",item:e},function(n){n?t&&t(Object.assign(n,{item:e})):t&&t(null,e)})}}],[{key:"options",get:function(){var e=t.prefix;return{selectorInit:"[data-content-switcher]",selectorButton:'input[type="radio"], .'.concat(e,"--content-switcher-btn"),classActive:"".concat(e,"--content-switcher--selected"),eventBeforeSelected:"content-switcher-beingselected",eventAfterSelected:"content-switcher-selected"}}}]),o}();i(N,"components",new WeakMap);var T=function(e){function o(e,t){var a;n(this,o),(a=d(this,c(o).call(this,e,t))).manage(b(a.element,"keydown",function(e){a._handleKeyDown(e)})),a.manage(b(a.element.ownerDocument,"click",function(e){a._handleDocumentClick(e)}));var i=a.element.querySelector(a.options.selectorButtonSelected);return i&&a._updateTriggerText(i),a}return s(o,N),a(o,[{key:"_changeState",value:function(e,t){var n=this;p(c(o.prototype),"_changeState",this).call(this,e,function(o){o||n._updateTriggerText(e.item);for(var a=arguments.length,i=new Array(a>1?a-1:0),r=1;r<a;r++)i[r-1]=arguments[r];t.apply(void 0,[o].concat(i))})}},{key:"_handleClick",value:function(e){var t=C(e,this.options.selectorButton),n=C(e,this.options.selectorTrigger);t&&!t.classList.contains(this.options.classButtonDisabled)&&(p(c(o.prototype),"_handleClick",this).call(this,e),this._updateMenuState(!1)),n&&this._updateMenuState()}},{key:"_handleDocumentClick",value:function(e){this.element.contains(e.target)||this._updateMenuState(!1)}},{key:"_handleKeyDown",value:function(e){var t=this;if(C(e,this.options.selectorTrigger))13===e.which&&this._updateMenuState();else{var n,o={37:this.constructor.NAVIGATE.BACKWARD,39:this.constructor.NAVIGATE.FORWARD}[e.which];if(o){var a=(n=this.element.querySelectorAll(this.options.selectorButtonEnabled),Array.prototype.slice.call(n)),i=this.element.querySelector(this.options.selectorButtonSelected),r=Math.max(a.indexOf(i)+o,-1),s=r>=0&&r<a.length?r:r-Math.sign(r)*a.length;this.setActive(a[s],function(e,n){if(n){var o=n.querySelector(t.options.selectorLink);o&&o.focus()}}),e.preventDefault()}}}},{key:"_updateMenuState",value:function(e){var t=this.element.querySelector(this.options.selectorMenu),n=this.element.querySelector(this.options.selectorTrigger);t&&(t.classList.toggle(this.options.classHidden,void 0===e?e:!e),t.classList.contains(this.options.classHidden)?n.classList.remove(this.options.classOpen):n.classList.add(this.options.classOpen))}},{key:"_updateTriggerText",value:function(e){var t=this.element.querySelector(this.options.selectorTriggerText);t&&(t.textContent=e.textContent)}}],[{key:"options",get:function(){var e=t.prefix;return Object.assign(Object.create(N.options),{selectorInit:"[data-tabs]",selectorMenu:".".concat(e,"--tabs__nav"),selectorTrigger:".".concat(e,"--tabs-trigger"),selectorTriggerText:".".concat(e,"--tabs-trigger-text"),selectorButton:".".concat(e,"--tabs__nav-item"),selectorButtonEnabled:".".concat(e,"--tabs__nav-item:not(.").concat(e,"--tabs__nav-item--disabled)"),selectorButtonSelected:".".concat(e,"--tabs__nav-item--selected"),selectorLink:".".concat(e,"--tabs__nav-link"),classActive:"".concat(e,"--tabs__nav-item--selected"),classHidden:"".concat(e,"--tabs__nav--hidden"),classOpen:"".concat(e,"--tabs-trigger--open"),classButtonDisabled:"".concat(e,"--tabs__nav-item--disabled"),eventBeforeSelected:"tab-beingselected",eventAfterSelected:"tab-selected"})}}]),o}();function M(e){if(!e||"function"==typeof e)return{launchingElement:null,launchingEvent:null};var t=e.delegateTarget||e.currentTarget||e,n=e.currentTarget&&e;if(t&&!t.nodeType)throw new TypeError("DOM Node should be given for launching element.");if(n&&!n.type)throw new TypeError("DOM event should be given for launching event.");return{launchingElement:t,launchingEvent:n}}i(T,"components",new WeakMap),i(T,"NAVIGATE",{BACKWARD:-1,FORWARD:1});var I=[k,function(e){return function(t){function o(){return n(this,o),d(this,c(o).apply(this,arguments))}return s(o,e),a(o,[{key:"show",value:function(e,t){e&&"function"!=typeof e||(t=e),this.changeState("shown",M(e),t)}},{key:"hide",value:function(e,t){e&&"function"!=typeof e||(t=e),this.changeState("hidden",M(e),t)}}]),o}()}];var O=[y,function(e){return function(t){function o(e,t){var a;n(this,o),a=d(this,c(o).call(this,e,t));var i="onfocusin"in window,r=i?"focusin":"focus";return a.manage(b(a.element.ownerDocument,r,function(e){a.element.contains(e.target)||a.handleBlur(e)},!i)),a}return s(o,e),a(o,[{key:"handleBlur",value:function(){throw new Error("Components inheriting TrackBlur mix-in must implement handleBlur() method.")}}]),o}()}],F=function(){var e=[],t=!1;function n(){e.forEach(function(e){e()}),t=!1}function o(){t||(t=!0,window.requestAnimationFrame(n))}return{add:function(t){return e.length||window.addEventListener("resize",o),function(t){t&&e.indexOf(t)<0&&e.push(t)}(t),{release:function(){var n=e.indexOf(t);n>=0&&e.splice(n,1)}}}}}(),P=function(e){function t(e,o){var a;n(this,t);var i=(a=d(this,c(t).call(this,e,o))).element.getAttribute(a.options.attribDirection);return a.options.direction||(a.options.direction=i||"bottom"),i||a.element.setAttribute(a.options.attribDirection,a.options.direction),a}return s(t,m(g,I,O)),a(t,[{key:"handleBlur",value:function(e){if(this.element.classList.contains(this.options.classShown)){this.changeState("hidden",M(e));var t=this.options.refNode;this.element.contains(e.relatedTarget)&&t&&e.target!==t&&HTMLElement.prototype.focus.call(t)}}},{key:"_getContainer",value:function(){return this.element.closest(this.options.selectorContainer)||this.element.ownerDocument.body}},{key:"_getPos",value:function(){var e=this.element,t=this.options,n=t.refNode,o=t.offset,a=t.direction;if(!n)throw new Error("Cannot find the refernce node for positioning floating menu.");return function(e){var t,n=e.menuSize,o=e.refPosition,a=e.offset,r=void 0===a?{}:a,s=e.direction,c=void 0===s?"bottom":s,l=e.scrollX,u=void 0===l?0:l,d=e.scrollY,p=void 0===d?0:d,h=o.left,f=void 0===h?0:h,m=o.top,g=void 0===m?0:m,v=o.right,y=void 0===v?0:v,b=o.bottom,w=void 0===b?0:b,S=n.width,k=n.height,C=r.top,E=void 0===C?0:C,_=r.left,L=void 0===_?0:_,x=(f+y)/2,A=(g+w)/2;return(t={},i(t,"left",{left:f-S+u-L,top:A-k/2+p+E}),i(t,"top",{left:x-S/2+u+L,top:g-k+p-E}),i(t,"right",{left:y+u+L,top:A-k/2+p+E}),i(t,"bottom",{left:x-S/2+u+L,top:w+p+E}),t)[c]}({menuSize:e.getBoundingClientRect(),refPosition:n.getBoundingClientRect(),offset:"function"!=typeof o?o:o(e,a,n),direction:a,scrollX:n.ownerDocument.defaultView.pageXOffset,scrollY:n.ownerDocument.defaultView.pageYOffset})}},{key:"_testStyles",value:function(){if(this.options.debugStyle){var e=this.element,t=e.ownerDocument.defaultView.getComputedStyle(e),n={position:"absolute",right:"auto",margin:0};Object.keys(n).forEach(function(e){("number"==typeof n[e]?parseFloat(n[e]):n[e])!==t.getPropertyValue(e)&&console.warn("Floating menu component expects ".concat(e,": ").concat(n[e]," style."))})}}},{key:"_place",value:function(){var e=this.element,t=this._getPos(),n=t.left,o=t.top;e.style.left="".concat(n,"px"),e.style.top="".concat(o,"px"),this._testStyles()}},{key:"shouldStateBeChanged",value:function(e){return("shown"===e||"hidden"===e)&&e!==(this.element.classList.contains(this.options.classShown)?"shown":"hidden")}},{key:"_changeState",value:function(e,t,n){var o=this,a="shown"===e,i=this.options,r=i.refNode,s=i.classShown,c=i.classRefShown;if(!r)throw new TypeError("Cannot find the refernce node for changing the style.");this.element.classList.toggle(s,a),c&&r.classList.toggle(c,a),"shown"===e&&(this.hResize||(this.hResize=F.add(function(){o._place()})),this._getContainer().appendChild(this.element),this._place(),this.element.hasAttribute(this.options.attribAvoidFocusOnOpen)||(this.element.querySelector(this.options.selectorPrimaryFocus)||this.element).focus()),"hidden"===e&&this.hResize&&(this.hResize.release(),this.hResize=null),n()}},{key:"release",value:function(){this.hResize&&(this.hResize.release(),this.hResize=null),p(c(t.prototype),"release",this).call(this)}}]),t}();i(P,"options",{selectorContainer:"[data-floating-menu-container]",selectorPrimaryFocus:"[data-floating-menu-primary-focus]",attribDirection:"data-floating-menu-direction",attribAvoidFocusOnOpen:"data-avoid-focus-on-open",classShown:"",classRefShown:"",eventBeforeShown:"floating-menu-beingshown",eventAfterShown:"floating-menu-shown",eventBeforeHidden:"floating-menu-beinghidden",eventAfterHidden:"floating-menu-hidden",refNode:null,offset:{left:0,top:0}}),i(P,"components",new WeakMap);var q=function(){var e;return i(e={},"top","bottom"),i(e,"bottom","top"),i(e,"left","left"),i(e,"right","right"),e}(),B=function(){var e;return i(e={},"top",-2),i(e,"bottom",-1),i(e,"left",-2),i(e,"right",-1),e}(),H=function(e,t,n){var o=q[t],a=B[t];o&&a||console.warn("Wrong floating menu direction:",t);var s=e.offsetWidth,c=(e.offsetHeight,e.ownerDocument.defaultView.getComputedStyle(e,":before")),l=[o,"left","width","height","border-top-width"].reduce(function(e,t){return r({},e,i({},t,Number((/^([\d-.]+)px$/.exec(c.getPropertyValue(t))||[])[1])))},{});if(Object.keys(l).every(function(e){return!isNaN(l[e])})){var u=l.left,d=l.width,p=l.height,h=l["border-top-width"];return{left:s/2-(u+Math.sqrt(Math.pow(d,2)+Math.pow(p,2))/2),top:Math.sqrt(2*Math.pow(h,2))+a*l[o]}}},R=function(e){function o(e,t){var a;return n(this,o),i(u(u(a=d(this,c(o).call(this,e,t)))),"getCurrentNavigation",function(){var e=a.element.ownerDocument.activeElement;return e.nodeType===Node.ELEMENT_NODE&&e.matches(a.options.selectorItem)?e:null}),i(u(u(a)),"navigate",function(e){for(var t=f(a.element.ownerDocument.querySelectorAll(a.options.selectorItem)),n=a.getCurrentNavigation()||a.element.querySelector(a.options.selectorItemSelected),o=function(n){var o=Math.max(t.indexOf(n)+e,-1);return t[function(e,t){return e+(e>=0?0:t)}(function(e,t){return e-(e<t?0:t)}(o,t.length),t.length)]},i=o(n);i&&i!==n;i=o(i))if(!i.matches(a.options.selectorItemHidden)&&!i.parentNode.matches(a.options.selectorItemHidden)&&!i.matches(a.options.selectorItemSelected)){i.focus();break}}),a.manage(b(a.element.ownerDocument,"click",function(e){a._handleDocumentClick(e),a.wasOpenBeforeClick=void 0})),a.manage(b(a.element.ownerDocument,"keydown",function(e){a._handleKeyPress(e)})),a.manage(b(a.element,"mousedown",function(){a.wasOpenBeforeClick=e.classList.contains(a.options.classShown)})),a}return s(o,m(g,v,I,y)),a(o,[{key:"changeState",value:function(e,t,n){if("hidden"===e?this.element.setAttribute("aria-expanded","false"):this.element.setAttribute("aria-expanded","true"),!this.optionMenu){var o=this.element.querySelector(this.options.selectorOptionMenu);if(!o)throw new Error("Cannot find the target menu.");this.optionMenu=P.create(o,{refNode:this.element,classShown:this.options.classMenuShown,classRefShown:this.options.classShown,offset:this.options.objMenuOffset}),this.children.push(this.optionMenu)}this.optionMenu.element.classList.contains(this.options.classMenuFlip)&&(this.optionMenu.options.offset=this.options.objMenuOffsetFlip),this.optionMenu.changeState(e,Object.assign(t,{delegatorNode:this.element}),n)}},{key:"_handleDocumentClick",value:function(e){var t=this.element,n=this.optionMenu,o=this.wasOpenBeforeClick,a=t.contains(e.target),i=n&&n.element.contains(e.target),r=a&&!o?"shown":"hidden";a&&("A"===t.tagName&&e.preventDefault(),e.delegateTarget=t),i&&!C(e,this.options.selectorItem)||this.changeState(r,M(e),function(){"hidden"===r&&i&&t.focus()})}},{key:"_handleKeyPress",value:function(e){var t=e.which,n=this.element,o=this.optionMenu,a=this.options,i=o&&o.element.contains(e.target),r=this.element.classList.contains(this.options.classShown);switch(t){case 27:this.changeState("hidden",M(e),function(){i&&n.focus()});break;case 13:case 32:if(!r&&this.element.ownerDocument.activeElement!==this.element)return;var s=n.contains(e.target),c=s&&!n.classList.contains(a.classShown)?"shown":"hidden";s&&(e.delegateTarget=n,e.preventDefault(),this.changeState(c,M(e),function(){"hidden"===c&&i&&n.focus()}));break;case 38:case 40:if(!r)return;e.preventDefault();var l={38:-1,40:1}[e.which];this.navigate(l)}}}],[{key:"options",get:function(){var e=t.prefix;return{selectorInit:"[data-overflow-menu]",selectorOptionMenu:".".concat(e,"--overflow-menu-options"),selectorItem:"\n .".concat(e,"--overflow-menu-options--open >\n .").concat(e,"--overflow-menu-options__option:not(.").concat(e,"--overflow-menu-options__option--disabled) >\n .").concat(e,"--overflow-menu-options__btn\n "),classShown:"".concat(e,"--overflow-menu--open"),classMenuShown:"".concat(e,"--overflow-menu-options--open"),classMenuFlip:"".concat(e,"--overflow-menu--flip"),objMenuOffset:H,objMenuOffsetFlip:H}}}]),o}();function j(e){var t=function(t){function o(){return n(this,o),d(this,c(o).apply(this,arguments))}return s(o,e),a(o,null,[{key:"init",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:document,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=Object.assign(Object.create(this.options),n);if(!t||t.nodeType!==Node.ELEMENT_NODE&&t.nodeType!==Node.DOCUMENT_NODE)throw new TypeError("DOM document or DOM element should be given to search for and initialize this widget.");if(t.nodeType!==Node.ELEMENT_NODE||!t.matches(o.selectorInit)){var a=o.initEventNames.map(function(a){return b(t,a,function(t){var a=C(t,"[".concat(o.attribInitTarget,"]"));if(a){t.delegateTarget=a;var i=a.ownerDocument.querySelectorAll(a.getAttribute(o.attribInitTarget));if(i.length>1)throw new Error("Target widget must be unique.");if(1===i.length){"A"===a.tagName&&t.preventDefault();var r=e.create(i[0],n);"function"==typeof r.createdByLauncher&&r.createdByLauncher(t)}}})});return{release:function(){for(var e=a.pop();e;e=a.pop())e.release()}}}return this.create(t,n),""}}]),o}();return i(t,"forLazyInit",!0),t}i(R,"components",new WeakMap);var V=function(e){function o(e,t){var a;return n(this,o),i(u(u(a=d(this,c(o).call(this,e,t)))),"_handleFocusinListener",void 0),i(u(u(a)),"_handleKeydownListener",void 0),i(u(u(a)),"_handleFocusin",function(e){a.element.classList.contains(a.options.classVisible)&&!a.element.contains(e.target)&&a.options.selectorsFloatingMenus.every(function(t){return!C(e,t)})&&a.element.focus()}),a._hookCloseActions(),a}return s(o,m(g,j,I,y)),a(o,[{key:"createdByLauncher",value:function(e){this.show(e)}},{key:"shouldStateBeChanged",value:function(e){return"shown"===e?!this.element.classList.contains(this.options.classVisible):this.element.classList.contains(this.options.classVisible)}},{key:"_changeState",value:function(e,t,n){var o,a=this;if(this._handleFocusinListener&&(this._handleFocusinListener=this.unmanage(this._handleFocusinListener).release()),"shown"===e){var i="onfocusin"in this.element.ownerDocument.defaultView,r=i?"focusin":"focus";this._handleFocusinListener=this.manage(b(this.element.ownerDocument,r,this._handleFocusin,!i))}"hidden"===e?this.element.classList.toggle(this.options.classVisible,!1):"shown"===e&&this.element.classList.toggle(this.options.classVisible,!0),o=this.manage(b(this.element,"transitionend",function(){o&&(o=a.unmanage(o).release()),"shown"===e&&a.element.offsetWidth>0&&a.element.offsetHeight>0&&(a.element.querySelector(a.options.selectorPrimaryFocus)||a.element).focus(),n()}))}},{key:"_hookCloseActions",value:function(){var e=this;this.manage(b(this.element,"click",function(t){var n=C(t,e.options.selectorModalClose);n&&(t.delegateTarget=n),(n||t.target===e.element)&&e.hide(t)})),this._handleKeydownListener&&(this._handleKeydownListener=this.unmanage(this._handleKeydownListener).release()),this._handleKeydownListener=this.manage(b(this.element.ownerDocument.body,"keydown",function(t){27===t.which&&(t.stopPropagation(),e.hide(t))}))}}],[{key:"options",get:function(){var e=t.prefix;return{selectorInit:"[data-modal]",selectorModalClose:"[data-modal-close]",selectorPrimaryFocus:"[data-modal-primary-focus]",selectorsFloatingMenus:[".".concat(e,"--overflow-menu-options"),".".concat(e,"--tooltip"),".flatpickr-calendar"],classVisible:"is-visible",attribInitTarget:"data-modal-target",initEventNames:["click"],eventBeforeShown:"modal-beingshown",eventAfterShown:"modal-shown",eventBeforeHidden:"modal-beinghidden",eventAfterHidden:"modal-hidden"}}}]),o}();i(V,"components",new WeakMap);var W=function(e){function o(e,t){var a;return n(this,o),(a=d(this,c(o).call(this,e,t))).active=a.options.active,a.set(a.active),a}return s(o,m(g,v,y)),a(o,[{key:"set",value:function(e){if("boolean"!=typeof e)throw new TypeError("set expects a boolean.");this.active=e,this.element.classList.toggle(this.options.classLoadingStop,!this.active);var t=this.element.parentNode;return t&&t.classList.contains(this.options.classLoadingOverlay)&&t.classList.toggle(this.options.classLoadingOverlayStop,!this.active),this}},{key:"toggle",value:function(){return this.set(!this.active)}},{key:"isActive",value:function(){return this.active}},{key:"end",value:function(){var e=this;this.set(!1);var t=this.manage(b(this.element,"animationend",function(n){t&&(t=e.unmanage(t).release()),"rotate-end-p2"===n.animationName&&e._deleteElement()}))}},{key:"_deleteElement",value:function(){var e=this.element.parentNode;e.removeChild(this.element),e.classList.contains(this.options.selectorLoadingOverlay)&&e.remove()}}],[{key:"options",get:function(){var e=t.prefix;return{selectorInit:"[data-loading]",selectorLoadingOverlay:".".concat(e,"--loading-overlay"),classLoadingOverlay:"".concat(e,"--loading-overlay"),classLoadingStop:"".concat(e,"--loading--stop"),classLoadingOverlayStop:"".concat(e,"--loading-overlay--stop"),active:!0}}}]),o}();function Y(e,t,n){n?e.setAttribute(t,""):e.removeAttribute(t)}i(W,"components",new WeakMap);var U=function(e){function o(e,t){var a;n(this,o);var i=(a=d(this,c(o).call(this,e,t))).options.initialState;return i&&a.setState(i),a}return s(o,m(g,v,y)),a(o,[{key:"setState",value:function(e){var t=this.constructor.states,n=Object.keys(t).map(function(e){return t[e]});if(n.indexOf(e)<0)throw new Error("One of the following value should be given as the state: ".concat(n.join(", ")));var o=this.element,a=this.options,i=a.selectorSpinner,r=a.selectorFinished,s=a.selectorTextActive,c=a.selectorTextFinished,l=o.querySelector(i),u=o.querySelector(r),d=o.querySelector(s),p=o.querySelector(c);return l&&(l.classList.toggle(this.options.classLoadingStop,e!==t.ACTIVE),Y(l,"hidden",e===t.FINISHED)),u&&Y(u,"hidden",e!==t.FINISHED),d&&Y(d,"hidden",e!==t.ACTIVE),p&&Y(p,"hidden",e!==t.FINISHED),this}}],[{key:"options",get:function(){return{selectorInit:"[data-inline-loading]",selectorSpinner:"[data-inline-loading-spinner]",selectorFinished:"[data-inline-loading-finished]",selectorTextActive:"[data-inline-loading-text-active]",selectorTextFinished:"[data-inline-loading-text-finished]",classLoadingStop:"".concat(t.prefix,"--loading--stop")}}}]),o}();i(U,"states",{INACTIVE:"inactive",ACTIVE:"active",FINISHED:"finished"}),i(U,"components",new WeakMap);var K=function(e){return Array.prototype.slice.call(e)},G=function(e){function o(e,t){var a;return n(this,o),(a=d(this,c(o).call(this,e,t))).manage(b(a.element.ownerDocument,"click",function(e){a._toggle(e)})),a.manage(b(a.element,"keydown",function(e){a._handleKeyDown(e)})),a.manage(b(a.element,"click",function(e){var t=C(e,a.options.selectorItem);t&&a.select(t)})),a}return s(o,m(g,v,O)),a(o,[{key:"_handleKeyDown",value:function(e){var t=this.element.classList.contains(this.options.classOpen),n={38:this.constructor.NAVIGATE.BACKWARD,40:this.constructor.NAVIGATE.FORWARD}[e.which];t&&void 0!==n?(this.navigate(n),e.preventDefault()):this._toggle(e)}},{key:"_toggle",value:function(e){var t=this;if(!this.element.classList.contains(this.options.classDisabled)&&([13,32,40].indexOf(e.which)>=0&&!e.target.matches(this.options.selectorItem)||27===e.which||"click"===e.type)){var n=this.element.classList.contains(this.options.classOpen),o=this.element.contains(e.target),a={add:o&&40===e.which&&!n,remove:(!o||27===e.which)&&n,toggle:o&&27!==e.which&&40!==e.which};Object.keys(a).forEach(function(e){a[e]&&(t.element.classList[e](t.options.classOpen),t.element.focus())}),K(this.element.querySelectorAll(this.options.selectorItem)).forEach(function(e){t.element.classList.contains(t.options.classOpen)?e.tabIndex=0:e.tabIndex=-1})}}},{key:"getCurrentNavigation",value:function(){var e=this.element.ownerDocument.activeElement;return e.nodeType===Node.ELEMENT_NODE&&e.matches(this.options.selectorItem)?e:null}},{key:"navigate",value:function(e){for(var t=K(this.element.querySelectorAll(this.options.selectorItem)),n=this.getCurrentNavigation()||this.element.querySelector(this.options.selectorItemSelected),o=function(n){var o,a,i=Math.max(t.indexOf(n)+e,-1);return t[function(e,t){return e+(e>=0?0:t)}((o=i,a=t.length,o-(o<a?0:a)),t.length)]},a=o(n);a&&a!==n;a=o(a))if(!a.matches(this.options.selectorItemHidden)&&!a.parentNode.matches(this.options.selectorItemHidden)&&!a.matches(this.options.selectorItemSelected)){a.focus();break}}},{key:"select",value:function(e){var t=this,n=new CustomEvent(this.options.eventBeforeSelected,{bubbles:!0,cancelable:!0,detail:{item:e}});if(this.element.dispatchEvent(n)){if("navigation"!==this.element.dataset.dropdownType){var o="inline"!==this.element.dataset.dropdownType?this.options.selectorText:this.options.selectorTextInner,a=this.element.querySelector(o);a&&(a.innerHTML=e.innerHTML),e.classList.add(this.options.classSelected)}this.element.dataset.value=e.parentElement.dataset.value,K(this.element.querySelectorAll(this.options.selectorItemSelected)).forEach(function(n){e!==n&&n.classList.remove(t.options.classSelected)}),this.element.dispatchEvent(new CustomEvent(this.options.eventAfterSelected,{bubbles:!0,cancelable:!0,detail:{item:e}}))}}},{key:"handleBlur",value:function(){this.element.classList.remove(this.options.classOpen)}}],[{key:"options",get:function(){var e=t.prefix;return{selectorInit:"[data-dropdown]",selectorText:".".concat(e,"--dropdown-text"),selectorTextInner:".".concat(e,"--dropdown-text__inner"),selectorItem:".".concat(e,"--dropdown-link"),selectorItemSelected:".".concat(e,"--dropdown--selected"),selectorItemHidden:'[hidden],[aria-hidden="true"]',classSelected:"".concat(e,"--dropdown--selected"),classOpen:"".concat(e,"--dropdown--open"),classDisabled:"".concat(e,"--dropdown--disabled"),eventBeforeSelected:"dropdown-beingselected",eventAfterSelected:"dropdown-selected"}}}]),o}();i(G,"components",new WeakMap),i(G,"NAVIGATE",{BACKWARD:-1,FORWARD:1});var z=function(e){function o(e,t){var a;return n(this,o),(a=d(this,c(o).call(this,e,t))).manage(b(a.element.querySelector(".up-icon"),"click",function(e){a._handleClick(e)})),a.manage(b(a.element.querySelector(".down-icon"),"click",function(e){a._handleClick(e)})),a}return s(o,m(g,v,y)),a(o,[{key:"_handleClick",value:function(e){var t=this.element.querySelector(this.options.selectorInput),n=e.currentTarget.getAttribute("class").split(" ");n.indexOf("up-icon")>=0?++t.value:n.indexOf("down-icon")>=0&&--t.value,t.dispatchEvent(new CustomEvent("change",{bubbles:!0,cancelable:!1}))}}],[{key:"options",get:function(){return{selectorInit:"[data-numberinput]",selectorInput:".".concat(t.prefix,"--number input")}}}]),o}();i(z,"components",new WeakMap);var J=function(e){return Array.prototype.slice.call(e)},$=function(e){function o(e,t){var a;return n(this,o),i(u(u(a=d(this,c(o).call(this,e,t)))),"_toggleState",function(e,t){var n=e.dataset,o=n.label?n.label:"",i=n.previousValue?n.previousValue:"",r=t;a.changeState({group:n.event,element:e,label:o,previousValue:i,initialEvt:r})}),i(u(u(a)),"_zebraStripe",function(e){e.forEach(function(e,t){t%2==0?(e.classList.add(a.options.classParentRowEven),e.nextElementSibling&&e.nextElementSibling.classList.contains(a.options.classExpandableRow)&&e.nextElementSibling.classList.add(a.options.classExpandableRowEven)):e.classList.remove(a.options.classParentRowEven)})}),i(u(u(a)),"_initExpandableRows",function(e){e.forEach(function(e){e.classList.remove(a.options.classExpandableRowHidden),a.tableBody.removeChild(e)})}),i(u(u(a)),"_toggleRowExpand",function(e){var t=e.element,n=C(e.initialEvt,a.options.eventParentContainer),o=a.expandCells.indexOf(t);void 0===t.dataset.previousValue||"expanded"===t.dataset.previousValue?(t.dataset.previousValue="collapsed",a.tableBody.insertBefore(a.expandableRows[o],a.parentRows[o+1])):(a.tableBody.removeChild(n.nextElementSibling),t.dataset.previousValue="expanded")}),i(u(u(a)),"_toggleSort",function(e){var t=e.element,n=e.previousValue;n&&"descending"!==n?(t.dataset.previousValue="descending",t.classList.remove(a.options.classTableSortAscending)):(t.dataset.previousValue="ascending",t.classList.add(a.options.classTableSortAscending))}),i(u(u(a)),"_toggleSelectAll",function(e){var t=e.element,n=e.previousValue,o=J(a.element.querySelectorAll(a.options.selectorCheckbox));n&&"toggled"!==n?(o.forEach(function(e){e.checked=!1}),t.dataset.previousValue="toggled"):(o.forEach(function(e){e.checked=!0}),t.dataset.previousValue="off")}),i(u(u(a)),"refreshRows",function(){var e=J(a.element.querySelectorAll(a.options.selectorExpandCells)),t=J(a.element.querySelectorAll(a.options.selectorExpandableRows)),n=J(a.element.querySelectorAll(a.options.selectorParentRows));if(a.parentRows.length>0){var o=n.filter(function(e){return!a.parentRows.some(function(t){return t===e})});if(t.length>0){var i=o.map(function(e){return e.nextElementSibling}),r=J.apply(void 0,[a.expandableRows].concat(f(i)));a._initExpandableRows(i),a.expandableRows=r}a._zebraStripe(n)}else a._zebraStripe(n),t.length>0&&(a._initExpandableRows(t),a.expandableRows=t);a.expandCells=e,a.parentRows=n}),a.container=e.parentNode,a.tableBody=a.element.querySelector(a.options.selectorTableBody),a.expandCells=[],a.expandableRows=[],a.parentRows=[],a.overflowInitialized=!1,a.refreshRows(),a.manage(b(a.element,"click",function(e){var t=C(e,a.options.eventTrigger);t&&a._toggleState(t,e)})),a.manage(b(a.element,"keydown",function(e){if(13===e.which){var t=C(e,a.options.eventTrigger);t&&a._toggleState(t,e)}})),a}return s(o,m(g,v,k,y)),a(o,[{key:"_changeState",value:function(e,t){this[this.constructor.eventHandlers[e.group]](e),t()}}],[{key:"options",get:function(){var e=t.prefix;return{selectorInit:"[data-responsive-table]",selectorExpandCells:".".concat(e,"--table-expand"),selectorExpandableRows:".".concat(e,"--expandable-row"),selectorParentRows:".".concat(e,"--parent-row"),selectorTableBody:".".concat(e,"--table-body"),selectorCheckbox:".".concat(e,"--checkbox"),classParentRowEven:"".concat(e,"--parent-row--even"),classExpandableRow:"".concat(e,"--expandable-row"),classExpandableRowEven:"".concat(e,"--expandable-row--even"),classExpandableRowHidden:"".concat(e,"--expandable-row--hidden"),classTableSortAscending:"".concat(e,"--table-sort--ascending"),eventBeforeExpand:"responsive-table-beforetoggleexpand",eventAfterExpand:"responsive-table-aftertoggleexpand",eventBeforeSort:"responsive-table-beforetogglesort",eventAfterSort:"responsive-table-aftertogglesort",eventBeforeSelectAll:"responsive-table-beforetoggleselectall",eventAfterSelectAll:"responsive-table-aftertoggleselectall",eventTrigger:"[data-event]",eventParentContainer:"[data-parent-row]"}}}]),o}();i($,"components",new WeakMap),i($,"eventHandlers",{expand:"_toggleRowExpand",sort:"_toggleSort","select-all":"_toggleSelectAll"});var X=$,Z=function(e){return Array.prototype.slice.call(e)},Q=function(e){function o(e,t){var a;return n(this,o),i(u(u(a=d(this,c(o).call(this,e,t)))),"_sortToggle",function(e){var t=e.element,n=e.previousValue;Z(a.tableHeaders).forEach(function(e){var n=e.querySelector(a.options.selectorTableSort);null!==n&&n!==t&&(n.classList.remove(a.options.classTableSortActive),n.classList.remove(a.options.classTableSortAscending))}),n?"ascending"===n?(t.dataset.previousValue="descending",t.classList.add(a.options.classTableSortActive),t.classList.remove(a.options.classTableSortAscending)):"descending"===n&&(t.removeAttribute("data-previous-value"),t.classList.remove(a.options.classTableSortActive),t.classList.remove(a.options.classTableSortAscending)):(t.dataset.previousValue="ascending",t.classList.add(a.options.classTableSortActive),t.classList.add(a.options.classTableSortAscending))}),i(u(u(a)),"_selectToggle",function(e){var t=e.element,n=t.checked;a.state.checkboxCount+=n?1:-1,a.countEl.textContent=a.state.checkboxCount,t.parentNode.parentNode.classList.toggle(a.options.classTableSelected),a._actionBarToggle(a.state.checkboxCount>0)}),i(u(u(a)),"_selectAllToggle",function(e){var t=e.element.checked,n=Z(a.element.querySelectorAll(a.options.selectorCheckbox));a.state.checkboxCount=t?n.length-1:0,n.forEach(function(e){e.checked=t;var n=e.parentNode.parentNode;t&&n?n.classList.add(a.options.classTableSelected):n.classList.remove(a.options.classTableSelected)}),a._actionBarToggle(a.state.checkboxCount>0),a.batchActionEl&&(a.countEl.textContent=a.state.checkboxCount)}),i(u(u(a)),"_actionBarCancel",function(){var e=Z(a.element.querySelectorAll(a.options.selectorCheckbox));Z(a.element.querySelectorAll(a.options.selectorTableSelected)).forEach(function(e){e.classList.remove(a.options.classTableSelected)}),e.forEach(function(e){e.checked=!1}),a.state.checkboxCount=0,a._actionBarToggle(!1),a.batchActionEl&&(a.countEl.textContent=a.state.checkboxCount)}),i(u(u(a)),"_actionBarToggle",function(e){e?(a.batchActionEl.dataset.active=!0,a.batchActionEl.classList.add(a.options.classActionBarActive)):a.batchActionEl&&(a.batchActionEl.dataset.active=!1,a.batchActionEl.classList.remove(a.options.classActionBarActive)),a.batchActionEl&&a.batchActionEl.addEventListener("transitionend",function e(t){a.batchActionEl.removeEventListener("transitionend",e),t.target.matches(a.options.selectorActions)&&("false"===a.batchActionEl.dataset.active?a.batchActionEl.setAttribute("tabIndex",-1):a.batchActionEl.setAttribute("tabIndex",0))})}),i(u(u(a)),"_expandableRowsInit",function(e){e.forEach(function(e){e.classList.remove(a.options.classExpandableRowHidden),a.tableBody.removeChild(e)})}),i(u(u(a)),"_rowExpandToggle",function(e){var t=e.element,n=C(e.initialEvt,a.options.eventParentContainer),o=a.expandCells.indexOf(t);void 0===t.dataset.previousValue||"expanded"===t.dataset.previousValue?(t.dataset.previousValue="collapsed",n.classList.add(a.options.classExpandableRow),a.tableBody.insertBefore(a.expandableRows[o],a.parentRows[o+1])):(n.classList.remove(a.options.classExpandableRow),a.tableBody.removeChild(n.nextElementSibling),t.dataset.previousValue="expanded")}),i(u(u(a)),"_expandableHoverToggle",function(e){e.previousElementSibling.classList.add(a.options.classExpandableRowHover);e.addEventListener("mouseout",function t(){e.previousElementSibling.classList.remove(a.options.classExpandableRowHover),e.removeEventListener("mouseout",t)})}),i(u(u(a)),"_toggleState",function(e,t){var n=e.dataset,o=n.label?n.label:"",i=n.previousValue?n.previousValue:"",r=t;a.changeState({group:n.event,element:e,label:o,previousValue:i,initialEvt:r})}),i(u(u(a)),"_keydownHandler",function(e){27===e.which&&a._actionBarCancel()}),i(u(u(a)),"refreshRows",function(){var e=Z(a.element.querySelectorAll(a.options.selectorExpandCells)),t=Z(a.element.querySelectorAll(a.options.selectorExpandableRows)),n=Z(a.element.querySelectorAll(a.options.selectorParentRows));if(a.parentRows.length>0){var o=n.filter(function(e){return!a.parentRows.some(function(t){return t===e})});if(t.length>0){var i=o.map(function(e){return e.nextElementSibling}),r=[].concat(f(Z(a.expandableRows)),f(Z(i)));a._expandableRowsInit(i),a.expandableRows=r}}else t.length>0&&(a._expandableRowsInit(t),a.expandableRows=t);a.expandCells=e,a.parentRows=n}),a.container=e.parentNode,a.toolbarEl=a.element.querySelector(a.options.selectorToolbar),a.batchActionEl=a.element.querySelector(a.options.selectorActions),a.countEl=a.element.querySelector(a.options.selectorCount),a.cancelEl=a.element.querySelector(a.options.selectorActionCancel),a.tableHeaders=a.element.querySelectorAll("th"),a.tableBody=a.element.querySelector(a.options.selectorTableBody),a.expandCells=[],a.expandableRows=[],a.parentRows=[],a.refreshRows(),a.element.addEventListener("mouseover",function(e){var t=C(e,a.options.selectorChildRow);t&&a._expandableHoverToggle(t,!0)}),a.element.addEventListener("click",function(e){var t=C(e,a.options.eventTrigger);t&&a._toggleState(t,e)}),a.element.addEventListener("keydown",a._keydownHandler),a.state={checkboxCount:0},a}return s(o,m(g,v,k)),a(o,[{key:"_changeState",value:function(e,t){this[this.constructor.eventHandlers[e.group]](e),t()}}],[{key:"optio