var n=function(t,r){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,t){n.__proto__=t}||function(n,t){for(var r in t)t.hasOwnProperty(r)&&(n[r]=t[r])})(t,r)};function t(t,r){function e(){this.constructor=t}n(t,r),t.prototype=null===r?Object.create(r):(e.prototype=r.prototype,new e)}var r=function(){return(r=Object.assign||function(n){for(var t,r=1,e=arguments.length;r<e;r++)for(var o in t=arguments[r])Object.prototype.hasOwnProperty.call(t,o)&&(n[o]=t[o]);return n}).apply(this,arguments)};function e(n){var t="function"==typeof Symbol&&n[Symbol.iterator],r=0;return t?t.call(n):{next:function(){return n&&r>=n.length&&(n=void 0),{value:n&&n[r++],done:!n}}}}function o(n,t){var r="function"==typeof Symbol&&n[Symbol.iterator];if(!r)return n;var e,o,u=r.call(n),i=[];try{for(;(void 0===t||t-- >0)&&!(e=u.next()).done;)i.push(e.value)}catch(n){o={error:n}}finally{try{e&&!e.done&&(r=u.return)&&r.call(u)}finally{if(o)throw o.error}}return i}function u(){for(var n=[],t=0;t<arguments.length;t++)n=n.concat(o(arguments[t]));return n}var i=function(){function n(n){void 0===n&&(n={}),this.adapter_=n}return Object.defineProperty(n,"cssClasses",{get:function(){return{}},enumerable:!0,configurable:!0}),Object.defineProperty(n,"strings",{get:function(){return{}},enumerable:!0,configurable:!0}),Object.defineProperty(n,"numbers",{get:function(){return{}},enumerable:!0,configurable:!0}),Object.defineProperty(n,"defaultAdapter",{get:function(){return{}},enumerable:!0,configurable:!0}),n.prototype.init=function(){},n.prototype.destroy=function(){},n}(),f=function(){function n(n,t){for(var r=[],e=2;e<arguments.length;e++)r[e-2]=arguments[e];this.root_=n,this.initialize.apply(this,u(r)),this.foundation_=void 0===t?this.getDefaultFoundation():t,this.foundation_.init(),this.initialSyncWithDOM()}return n.attachTo=function(t){return new n(t,new i({}))},n.prototype.initialize=function(){for(var n=[],t=0;t<arguments.length;t++)n[t]=arguments[t]},n.prototype.getDefaultFoundation=function(){throw new Error("Subclasses must override getDefaultFoundation to return a properly configured foundation class")},n.prototype.initialSyncWithDOM=function(){},n.prototype.destroy=function(){this.foundation_.destroy()},n.prototype.listen=function(n,t){this.root_.addEventListener(n,t)},n.prototype.unlisten=function(n,t){this.root_.removeEventListener(n,t)},n.prototype.emit=function(n,t,r){var e;void 0===r&&(r=!1),"function"==typeof CustomEvent?e=new CustomEvent(n,{bubbles:r,detail:t}):(e=document.createEvent("CustomEvent")).initCustomEvent(n,r,!1,t),this.root_.dispatchEvent(e)},n}();export{i as M,t as _,r as a,f as b,e as c,u as d,o as e};