diff options
author | GeoSot <geo.sotis@gmail.com> | 2021-06-10 01:08:07 +0300 |
---|---|---|
committer | XhmikosR <xhmikosr@gmail.com> | 2021-07-29 16:30:02 +0300 |
commit | 2ad0a4a9fdbc792502c6800f6ae68c41acf4b556 (patch) | |
tree | 2f19dd5bd55be3e836ac03085156f63fe37eca79 /js/src | |
parent | c6c0bbb0b67fe89b55740a63fd10d4ad79044970 (diff) |
streamline `_getConfig` & interface
Diffstat (limited to 'js/src')
-rw-r--r-- | js/src/collapse.js | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/js/src/collapse.js b/js/src/collapse.js index 22bd31f9b3..a8651fc0a9 100644 --- a/js/src/collapse.js +++ b/js/src/collapse.js @@ -259,6 +259,7 @@ class Collapse extends BaseComponent { _getConfig(config) { config = { ...Default, + ...Manipulator.getDataAttributes(this._element), ...config } config.toggle = Boolean(config.toggle) // Coerce string values @@ -311,20 +312,12 @@ class Collapse extends BaseComponent { // Static static collapseInterface(element, config) { - let data = Collapse.getInstance(element) - const _config = { - ...Default, - ...Manipulator.getDataAttributes(element), - ...(typeof config === 'object' && config ? config : {}) - } - - if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) { + const _config = {} + if (typeof config === 'string' && /show|hide/.test(config)) { _config.toggle = false } - if (!data) { - data = new Collapse(element, _config) - } + const data = Collapse.getOrCreateInstance(element, _config) if (typeof config === 'string') { if (typeof data[config] === 'undefined') { |