{"version":3,"sources":["base-component.js"],"names":["Data","EventHandler","Config","executeAfterTransition","getElement","VERSION","BaseComponent","element","config","_this","_classCallCheck","this","_callSuper","_element","_config","_getConfig","set","constructor","DATA_KEY","_possibleConstructorReturn","_inherits","_createClass","key","value","remove","off","EVENT_KEY","_step","_iterator","_createForOfIteratorHelper","Object","getOwnPropertyNames","s","n","done","err","e","f","callback","arguments","length","undefined","_mergeConfigObj","_configAfterMerge","_typeCheckConfig","get","getInstance","_typeof","concat","NAME","name"],"mappings":"++GAOAA,SAAA,uBACAC,iBAAA,gCACAC,WAAA,0BACAC,uBAAAC,UAAA,KAAA,kBAVA,IAAAC,QAAA,QAsBAC,cAAA,WAfA,SAAAA,EAAAC,EAAAC,GAAA,IAAAC,EAoBA,OApBAC,gBAAAC,KAAAL,CAAA,EACAG,EAAAG,WAAAD,KAAAL,CAAA,GAEAC,EAAAH,WAAAG,CAAA,IAqBAE,EAAAI,SAAAN,EAfAE,EAAAK,QAAAL,EAAAM,WAAAP,CAAA,EAEAR,KAAAgB,IAAAP,EAAAI,SAAAJ,EAAAQ,YAAAC,SAAAT,CAAA,EAAAA,GANAU,2BAAAV,CAAA,CAOA,CADA,OAAAW,UAAAd,EAIAJ,MAJA,EAAAmB,aAAAf,EAAA,CAAA,CAAAgB,IAAA,UAAAC,MAoBA,WACAvB,KAAAwB,OAAAb,KAAAE,SAAAF,KAAAM,YAAAC,QAAA,EACAjB,aAAAwB,IAAAd,KAAAE,SAAAF,KAAAM,YAAAS,SAAA,EAAA,IAEAC,EAFAC,EAAAC,2BAEAC,OAAAC,oBAAApB,IAAA,CAAA,EAAA,IAAA,IAAAiB,EAAAI,EAAA,EAAA,EAAAL,EAAAC,EAAAK,EAAA,GAAAC,MACAvB,KADAgB,EAAAJ,OACA,IACA,CAAA,MAAAY,GAAAP,EAAAQ,EAAAD,CAAA,CAAA,CAAA,QAAAP,EAAAS,EAAA,CAAA,CACA,CAAA,EAAA,CAAAf,IAAA,iBAAAC,MAEA,SAAAe,EAAA/B,GACAJ,uBAAAmC,EAAA/B,EADAgC,EAAA,EAAAA,UAAAC,QAAAC,KAAAA,IAAAF,UAAA,KAAAA,UAAA,EACA,CACA,CAAA,EAAA,CAAAjB,IAAA,aAAAC,MAEA,SAAAf,GAIA,OAHAA,EAAAG,KAAA+B,gBAAAlC,EAAAG,KAAAE,QAAA,EACAL,EAAAG,KAAAgC,kBAAAnC,CAAA,EACAG,KAAAiC,iBAAApC,CAAA,EACAA,CACA,CAEA,GAAA,CAAA,CAAAc,IAAA,cAAAC,MACA,SAAAhB,GACA,OAAAP,KAAA6C,IAAAzC,WAAAG,CAAA,EAAAI,KAAAO,QAAA,CACA,CAAA,EAAA,CAAAI,IAAA,sBAAAC,MAEA,SAAAhB,GAAA,IAAAC,EAAA,EAAA+B,UAAAC,QAAAC,KAAAA,IAAAF,UAAA,GAAAA,UAAA,GAAA,GACA,OAAA5B,KAAAmC,YAAAvC,CAAA,GAAA,IAAAI,KAAAJ,EAAA,WAAAwC,QAAAvC,CAAA,EAAAA,EAAA,IAAA,CACA,CAAA,EAAA,CAAAc,IAAA,UAAAuB,IAEA,WACA,OAAAxC,OACA,CAAA,EAAA,CAAAiB,IAAA,WAAAuB,IAEA,WACA,MAAA,MAAAG,OAAArC,KAAAsC,IAAA,CACA,CAAA,EAAA,CAAA3B,IAAA,YAAAuB,IAEA,WACA,MAAA,IAAAG,OAAArC,KAAAO,QAAA,CACA,CAAA,EAAA,CAAAI,IAAA,YAAAC,MAEA,SAAA2B,GACA,MAAA,GAAAF,OAAAE,CAAA,EAAAF,OAAArC,KAAAe,SAAA,CACA,CAAA,EAAA,CAAA,EA3DA,iBA8DApB","file":"base-component.js","sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Data from './dom/data.js'\nimport EventHandler from './dom/event-handler.js'\nimport Config from './util/config.js'\nimport { executeAfterTransition, getElement } from './util/index.js'\n\n/**\n * Constants\n */\n\nconst VERSION = '5.3.3'\n\n/**\n * Class definition\n */\n\nclass BaseComponent extends Config {\n constructor(element, config) {\n super()\n\n element = getElement(element)\n if (!element) {\n return\n }\n\n this._element = element\n this._config = this._getConfig(config)\n\n Data.set(this._element, this.constructor.DATA_KEY, this)\n }\n\n // Public\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY)\n EventHandler.off(this._element, this.constructor.EVENT_KEY)\n\n for (const propertyName of Object.getOwnPropertyNames(this)) {\n this[propertyName] = null\n }\n }\n\n _queueCallback(callback, element, isAnimated = true) {\n executeAfterTransition(callback, element, isAnimated)\n }\n\n _getConfig(config) {\n config = this._mergeConfigObj(config, this._element)\n config = this._configAfterMerge(config)\n this._typeCheckConfig(config)\n return config\n }\n\n // Static\n static getInstance(element) {\n return Data.get(getElement(element), this.DATA_KEY)\n }\n\n static getOrCreateInstance(element, config = {}) {\n return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null)\n }\n\n static get VERSION() {\n return VERSION\n }\n\n static get DATA_KEY() {\n return `bs.${this.NAME}`\n }\n\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`\n }\n\n static eventName(name) {\n return `${name}${this.EVENT_KEY}`\n }\n}\n\nexport default BaseComponent\n"]}