@coreui/coreui 5.6.0 → 5.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -4
- package/dist/css/coreui-grid.css +1 -1
- package/dist/css/coreui-grid.css.map +1 -1
- package/dist/css/coreui-grid.min.css +1 -1
- package/dist/css/coreui-grid.min.css.map +1 -1
- package/dist/css/coreui-grid.rtl.css +1 -1
- package/dist/css/coreui-grid.rtl.css.map +1 -1
- package/dist/css/coreui-grid.rtl.min.css +1 -1
- package/dist/css/coreui-grid.rtl.min.css.map +1 -1
- package/dist/css/coreui-reboot.css +5 -3
- package/dist/css/coreui-reboot.css.map +1 -1
- package/dist/css/coreui-reboot.min.css +2 -2
- package/dist/css/coreui-reboot.min.css.map +1 -1
- package/dist/css/coreui-reboot.rtl.css +5 -3
- package/dist/css/coreui-reboot.rtl.css.map +1 -1
- package/dist/css/coreui-reboot.rtl.min.css +2 -2
- package/dist/css/coreui-reboot.rtl.min.css.map +1 -1
- package/dist/css/coreui-utilities.css +5 -3
- package/dist/css/coreui-utilities.css.map +1 -1
- package/dist/css/coreui-utilities.min.css +2 -2
- package/dist/css/coreui-utilities.min.css.map +1 -1
- package/dist/css/coreui-utilities.rtl.css +5 -3
- package/dist/css/coreui-utilities.rtl.css.map +1 -1
- package/dist/css/coreui-utilities.rtl.min.css +2 -2
- package/dist/css/coreui-utilities.rtl.min.css.map +1 -1
- package/dist/css/coreui.css +172 -68
- package/dist/css/coreui.css.map +1 -1
- package/dist/css/coreui.min.css +2 -2
- package/dist/css/coreui.min.css.map +1 -1
- package/dist/css/coreui.rtl.css +167 -66
- package/dist/css/coreui.rtl.css.map +1 -1
- package/dist/css/coreui.rtl.min.css +2 -2
- package/dist/css/coreui.rtl.min.css.map +1 -1
- package/dist/css/themes/bootstrap/bootstrap.css +172 -68
- package/dist/css/themes/bootstrap/bootstrap.css.map +1 -1
- package/dist/css/themes/bootstrap/bootstrap.min.css +2 -2
- package/dist/css/themes/bootstrap/bootstrap.min.css.map +1 -1
- package/dist/css/themes/bootstrap/bootstrap.rtl.css +167 -66
- package/dist/css/themes/bootstrap/bootstrap.rtl.css.map +1 -1
- package/dist/css/themes/bootstrap/bootstrap.rtl.min.css +2 -2
- package/dist/css/themes/bootstrap/bootstrap.rtl.min.css.map +1 -1
- package/dist/js/bootstrap.bundle.js +578 -261
- package/dist/js/bootstrap.bundle.js.map +1 -1
- package/dist/js/bootstrap.bundle.min.js +2 -2
- package/dist/js/bootstrap.bundle.min.js.map +1 -1
- package/dist/js/bootstrap.esm.js +578 -262
- package/dist/js/bootstrap.esm.js.map +1 -1
- package/dist/js/bootstrap.esm.min.js +2 -2
- package/dist/js/bootstrap.esm.min.js.map +1 -1
- package/dist/js/bootstrap.js +578 -261
- package/dist/js/bootstrap.js.map +1 -1
- package/dist/js/bootstrap.min.js +2 -2
- package/dist/js/bootstrap.min.js.map +1 -1
- package/dist/js/coreui.bundle.js +578 -261
- package/dist/js/coreui.bundle.js.map +1 -1
- package/dist/js/coreui.bundle.min.js +2 -2
- package/dist/js/coreui.bundle.min.js.map +1 -1
- package/dist/js/coreui.esm.js +578 -262
- package/dist/js/coreui.esm.js.map +1 -1
- package/dist/js/coreui.esm.min.js +2 -2
- package/dist/js/coreui.esm.min.js.map +1 -1
- package/dist/js/coreui.js +578 -261
- package/dist/js/coreui.js.map +1 -1
- package/dist/js/coreui.min.js +2 -2
- package/dist/js/coreui.min.js.map +1 -1
- package/js/dist/alert.js +1 -1
- package/js/dist/base-component.js +2 -2
- package/js/dist/base-component.js.map +1 -1
- package/js/dist/button.js +1 -1
- package/js/dist/carousel.js +1 -1
- package/js/dist/chip-input.js +1 -3
- package/js/dist/chip-input.js.map +1 -1
- package/js/dist/chip.js +1 -1
- package/js/dist/collapse.js +1 -1
- package/js/dist/dom/data.js +1 -1
- package/js/dist/dom/event-handler.js +1 -1
- package/js/dist/dom/manipulator.js +1 -1
- package/js/dist/dom/selector-engine.js +1 -1
- package/js/dist/dropdown.js +1 -1
- package/js/dist/modal.js +1 -1
- package/js/dist/navigation.js +2 -2
- package/js/dist/navigation.js.map +1 -1
- package/js/dist/offcanvas.js +1 -1
- package/js/dist/popover.js +1 -1
- package/js/dist/scrollspy.js +1 -1
- package/js/dist/search-button.js +336 -0
- package/js/dist/search-button.js.map +1 -0
- package/js/dist/sidebar.js +7 -10
- package/js/dist/sidebar.js.map +1 -1
- package/js/dist/tab.js +1 -1
- package/js/dist/toast.js +1 -1
- package/js/dist/tooltip.js +1 -1
- package/js/dist/util/backdrop.js +1 -1
- package/js/dist/util/component-functions.js +1 -1
- package/js/dist/util/config.js +1 -1
- package/js/dist/util/focustrap.js +1 -1
- package/js/dist/util/index.js +1 -1
- package/js/dist/util/sanitizer.js +1 -1
- package/js/dist/util/scrollbar.js +1 -1
- package/js/dist/util/swipe.js +1 -1
- package/js/dist/util/template-factory.js +1 -1
- package/js/index.esm.js +1 -0
- package/js/index.umd.js +2 -0
- package/js/src/base-component.js +1 -1
- package/js/src/chip-input.js +0 -2
- package/js/src/navigation.js +1 -1
- package/js/src/search-button.js +409 -0
- package/js/src/sidebar.js +6 -10
- package/package.json +17 -16
- package/scss/_banner.scss +1 -1
- package/scss/_root.scss +3 -0
- package/scss/_search-button.scss +127 -0
- package/scss/_variables-dark.scss +2 -1
- package/scss/_variables.scss +12 -6
- package/scss/coreui.scss +1 -0
- package/scss/functions/_color-translucent.scss +33 -0
- package/scss/functions/_contrast-ratio.scss +3 -3
- package/scss/sidebar/_sidebar-narrow.scss +21 -13
- package/scss/sidebar/_sidebar-nav.scss +65 -45
- package/scss/sidebar/_sidebar.scss +1 -6
package/js/dist/alert.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* CoreUI base-component.js v5.
|
|
2
|
+
* CoreUI base-component.js v5.7.0 (https://coreui.io)
|
|
3
3
|
* Copyright 2026 The CoreUI Team (https://github.com/orgs/coreui/people)
|
|
4
4
|
* Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)
|
|
5
5
|
*/
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
* Constants
|
|
25
25
|
*/
|
|
26
26
|
|
|
27
|
-
const VERSION = '5.
|
|
27
|
+
const VERSION = '5.7.0';
|
|
28
28
|
|
|
29
29
|
/**
|
|
30
30
|
* Class definition
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-component.js","sources":["../src/base-component.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * CoreUI base-component.js\n * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)\n *\n * This component is a modified version of the Bootstrap's 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.
|
|
1
|
+
{"version":3,"file":"base-component.js","sources":["../src/base-component.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * CoreUI base-component.js\n * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)\n *\n * This component is a modified version of the Bootstrap's 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.7.0'\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 // Private\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 `coreui.${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"],"names":["VERSION","BaseComponent","Config","constructor","element","config","getElement","_element","_config","_getConfig","Data","set","DATA_KEY","dispose","remove","EventHandler","off","EVENT_KEY","propertyName","Object","getOwnPropertyNames","_queueCallback","callback","isAnimated","executeAfterTransition","_mergeConfigObj","_configAfterMerge","_typeCheckConfig","getInstance","get","getOrCreateInstance","NAME","eventName","name"],"mappings":";;;;;;;;;;;EAAA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;EAOA;EACA;EACA;;EAEA,MAAMA,OAAO,GAAG,OAAO;;EAEvB;EACA;EACA;;EAEA,MAAMC,aAAa,SAASC,MAAM,CAAC;EACjCC,EAAAA,WAAWA,CAACC,OAAO,EAAEC,MAAM,EAAE;EAC3B,IAAA,KAAK,EAAE;EAEPD,IAAAA,OAAO,GAAGE,mBAAU,CAACF,OAAO,CAAC;MAC7B,IAAI,CAACA,OAAO,EAAE;EACZ,MAAA;EACF,IAAA;MAEA,IAAI,CAACG,QAAQ,GAAGH,OAAO;MACvB,IAAI,CAACI,OAAO,GAAG,IAAI,CAACC,UAAU,CAACJ,MAAM,CAAC;EAEtCK,IAAAA,IAAI,CAACC,GAAG,CAAC,IAAI,CAACJ,QAAQ,EAAE,IAAI,CAACJ,WAAW,CAACS,QAAQ,EAAE,IAAI,CAAC;EAC1D,EAAA;;EAEA;EACAC,EAAAA,OAAOA,GAAG;EACRH,IAAAA,IAAI,CAACI,MAAM,CAAC,IAAI,CAACP,QAAQ,EAAE,IAAI,CAACJ,WAAW,CAACS,QAAQ,CAAC;EACrDG,IAAAA,YAAY,CAACC,GAAG,CAAC,IAAI,CAACT,QAAQ,EAAE,IAAI,CAACJ,WAAW,CAACc,SAAS,CAAC;MAE3D,KAAK,MAAMC,YAAY,IAAIC,MAAM,CAACC,mBAAmB,CAAC,IAAI,CAAC,EAAE;EAC3D,MAAA,IAAI,CAACF,YAAY,CAAC,GAAG,IAAI;EAC3B,IAAA;EACF,EAAA;;EAEA;IACAG,cAAcA,CAACC,QAAQ,EAAElB,OAAO,EAAEmB,UAAU,GAAG,IAAI,EAAE;EACnDC,IAAAA,+BAAsB,CAACF,QAAQ,EAAElB,OAAO,EAAEmB,UAAU,CAAC;EACvD,EAAA;IAEAd,UAAUA,CAACJ,MAAM,EAAE;MACjBA,MAAM,GAAG,IAAI,CAACoB,eAAe,CAACpB,MAAM,EAAE,IAAI,CAACE,QAAQ,CAAC;EACpDF,IAAAA,MAAM,GAAG,IAAI,CAACqB,iBAAiB,CAACrB,MAAM,CAAC;EACvC,IAAA,IAAI,CAACsB,gBAAgB,CAACtB,MAAM,CAAC;EAC7B,IAAA,OAAOA,MAAM;EACf,EAAA;;EAEA;IACA,OAAOuB,WAAWA,CAACxB,OAAO,EAAE;EAC1B,IAAA,OAAOM,IAAI,CAACmB,GAAG,CAACvB,mBAAU,CAACF,OAAO,CAAC,EAAE,IAAI,CAACQ,QAAQ,CAAC;EACrD,EAAA;IAEA,OAAOkB,mBAAmBA,CAAC1B,OAAO,EAAEC,MAAM,GAAG,EAAE,EAAE;MAC/C,OAAO,IAAI,CAACuB,WAAW,CAACxB,OAAO,CAAC,IAAI,IAAI,IAAI,CAACA,OAAO,EAAE,OAAOC,MAAM,KAAK,QAAQ,GAAGA,MAAM,GAAG,IAAI,CAAC;EACnG,EAAA;IAEA,WAAWL,OAAOA,GAAG;EACnB,IAAA,OAAOA,OAAO;EAChB,EAAA;IAEA,WAAWY,QAAQA,GAAG;EACpB,IAAA,OAAO,CAAA,OAAA,EAAU,IAAI,CAACmB,IAAI,CAAA,CAAE;EAC9B,EAAA;IAEA,WAAWd,SAASA,GAAG;EACrB,IAAA,OAAO,CAAA,CAAA,EAAI,IAAI,CAACL,QAAQ,CAAA,CAAE;EAC5B,EAAA;IAEA,OAAOoB,SAASA,CAACC,IAAI,EAAE;EACrB,IAAA,OAAO,GAAGA,IAAI,CAAA,EAAG,IAAI,CAAChB,SAAS,CAAA,CAAE;EACnC,EAAA;EACF;;;;;;;;"}
|
package/js/dist/button.js
CHANGED
package/js/dist/carousel.js
CHANGED
package/js/dist/chip-input.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* CoreUI chip-input.js v5.
|
|
2
|
+
* CoreUI chip-input.js v5.7.0 (https://coreui.io)
|
|
3
3
|
* Copyright 2026 The CoreUI Team (https://github.com/orgs/coreui/people)
|
|
4
4
|
* Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)
|
|
5
5
|
*/
|
|
@@ -354,8 +354,6 @@
|
|
|
354
354
|
return;
|
|
355
355
|
}
|
|
356
356
|
if (event.key.length === 1) {
|
|
357
|
-
// eslint-disable-next-line no-console
|
|
358
|
-
console.log(event.key.length);
|
|
359
357
|
this._input.focus();
|
|
360
358
|
}
|
|
361
359
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chip-input.js","sources":["../src/chip-input.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * CoreUI chip-input.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n *\n * This component is a highly modified version of the Bootstrap's chip-input.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport BaseComponent from './base-component.js'\nimport Chip from './chip.js'\nimport EventHandler from './dom/event-handler.js'\nimport SelectorEngine from './dom/selector-engine.js'\nimport { getUID } from './util/index.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'chip-input'\nconst DATA_KEY = 'coreui.chip-input'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_ADD = `add${EVENT_KEY}`\nconst EVENT_REMOVE = `remove${EVENT_KEY}`\nconst EVENT_CHANGE = `change${EVENT_KEY}`\nconst EVENT_SELECT = `select${EVENT_KEY}`\nconst EVENT_INPUT = `input${EVENT_KEY}`\n\nconst SELECTOR_DATA_CHIP_INPUT = '[data-coreui-chip-input]'\nconst SELECTOR_CHIP = '.chip'\nconst SELECTOR_CHIP_ACTIVE = `${SELECTOR_CHIP}.active`\nconst SELECTOR_CHIP_INPUT_LABEL = '.chip-input-label'\nconst SELECTOR_CHIP_REMOVE = '.chip-remove'\nconst SELECTOR_FOCUSABLE_ITEMS = '.chip:not(.disabled)'\n\nconst CLASS_NAME_CHIP = 'chip'\nconst CLASS_NAME_DISABLED = 'disabled'\nconst CLASS_NAME_CHIP_INPUT_FIELD = 'chip-input-field'\n\nconst DEFAULT_REMOVE_ICON = '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"><line x1=\"4\" y1=\"4\" x2=\"12\" y2=\"12\"/><line x1=\"12\" y1=\"4\" x2=\"4\" y2=\"12\"/></svg>'\n\nconst Default = {\n chipClassName: null,\n createOnBlur: true,\n disabled: false,\n id: null,\n maxChips: null,\n name: null,\n placeholder: '',\n readonly: false,\n removable: true,\n removeIcon: DEFAULT_REMOVE_ICON,\n selectable: false,\n separator: ','\n}\n\nconst DefaultType = {\n chipClassName: '(string|function|null)',\n createOnBlur: 'boolean',\n disabled: 'boolean',\n maxChips: '(number|null)',\n id: '(string|null)',\n name: '(string|null)',\n placeholder: 'string',\n readonly: 'boolean',\n removable: 'boolean',\n removeIcon: 'string',\n selectable: 'boolean',\n separator: '(string|null)'\n}\n\n/**\n * Class definition\n */\n\nclass ChipInput extends BaseComponent {\n constructor(element, config) {\n super(element, config)\n\n this._uniqueId = this._config.id ?? getUID(`${this.constructor.NAME}`)\n this._disabled = this._config.disabled || this._element.classList.contains(CLASS_NAME_DISABLED)\n this._readonly = this._config.readonly\n\n this._chips = []\n this._input = SelectorEngine.findOne('input', this._element)\n this._hiddenInput = null\n\n if (this._input) {\n this._setInputSize()\n } else {\n this._createInput()\n }\n\n this._applyInteractionState()\n this._initializeExistingChips()\n this._createHiddenInput()\n this._addEventListeners()\n }\n\n // Getters\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n add(value) {\n if (this._disabled || this._readonly) {\n return null\n }\n\n const trimmedValue = String(value).trim()\n\n if (!trimmedValue) {\n return null\n }\n\n // Chips are unique by value\n if (this._chips.includes(trimmedValue)) {\n return null\n }\n\n // Check max chips limit\n if (this._config.maxChips !== null && this._chips.length >= this._config.maxChips) {\n return null\n }\n\n const addEvent = EventHandler.trigger(this._element, EVENT_ADD, {\n value: trimmedValue,\n relatedTarget: this._input\n })\n\n if (addEvent.defaultPrevented) {\n return null\n }\n\n const chip = this._createChip(trimmedValue)\n this._element.insertBefore(chip, this._input)\n this._chips.push(trimmedValue)\n\n const values = this.getValues()\n this._hiddenInput.value = values.join(',')\n\n EventHandler.trigger(this._element, EVENT_CHANGE, {\n values\n })\n\n return chip\n }\n\n remove(chipOrValue) {\n if (this._disabled || this._readonly) {\n return false\n }\n\n let chip\n let value\n\n if (typeof chipOrValue === 'string') {\n value = chipOrValue\n chip = this._findChipByValue(value)\n } else {\n chip = chipOrValue\n value = this._getChipValue(chip)\n }\n\n if (!chip || !value) {\n return false\n }\n\n const removeEvent = EventHandler.trigger(this._element, EVENT_REMOVE, {\n value,\n chip,\n relatedTarget: this._input\n })\n\n if (removeEvent.defaultPrevented) {\n return false\n }\n\n const chipInstance = Chip.getInstance(chip)\n if (chipInstance) {\n chipInstance.remove()\n } else {\n chip.remove()\n this._handleChipRemoved(chip, value)\n }\n\n return !chip.isConnected\n }\n\n removeSelected() {\n const chipsToRemove = this._getSelectedChipElements()\n for (const chip of chipsToRemove) {\n this.remove(chip)\n }\n\n this._input?.focus()\n }\n\n getValues() {\n return [...this._chips]\n }\n\n getSelectedValues() {\n return this._getSelectedChipElements().map(chip => this._getChipValue(chip))\n }\n\n clear() {\n const chips = SelectorEngine.find(SELECTOR_CHIP, this._element)\n for (const chip of chips) {\n this.remove(chip)\n }\n }\n\n clearSelection() {\n for (const chip of this._getSelectedChipElements()) {\n Chip.getInstance(chip)?.deselect()\n }\n\n EventHandler.trigger(this._element, EVENT_SELECT, {\n selected: []\n })\n }\n\n selectChip(chip) {\n const chipElements = this._getChipElements()\n\n if (!chipElements.includes(chip)) {\n return\n }\n\n const chipInstance = Chip.getInstance(chip)\n if (!chipInstance) {\n return\n }\n\n chipInstance.select()\n }\n\n focus() {\n this._input?.focus()\n }\n\n // Private\n _emitSelectionChange() {\n EventHandler.trigger(this._element, EVENT_SELECT, {\n selected: this.getSelectedValues()\n })\n }\n\n _getChipElements() {\n return SelectorEngine.find(SELECTOR_CHIP, this._element)\n }\n\n _getSelectedChipElements() {\n return SelectorEngine.find(SELECTOR_CHIP_ACTIVE, this._element)\n }\n\n _createInput() {\n const input = document.createElement('input')\n const label = SelectorEngine.findOne(SELECTOR_CHIP_INPUT_LABEL, this._element)\n const labelFor = label?.getAttribute('for')\n const generatedInputId = labelFor || getUID(`${this.constructor.NAME}-input`)\n\n input.type = 'text'\n input.className = CLASS_NAME_CHIP_INPUT_FIELD\n input.id = generatedInputId\n if (this._config.placeholder) {\n input.placeholder = this._config.placeholder\n }\n\n if (label && !labelFor) {\n label.setAttribute('for', generatedInputId)\n }\n\n this._input = input\n this._setInputSize()\n this._element.append(input)\n }\n\n _createHiddenInput() {\n const hiddenInput = document.createElement('input')\n hiddenInput.type = 'hidden'\n hiddenInput.id = this._uniqueId\n hiddenInput.name = this._config.name || this._uniqueId\n\n this._element.append(hiddenInput)\n this._hiddenInput = hiddenInput\n this._hiddenInput.value = this.getValues().join(',')\n }\n\n _createChip(value) {\n const chip = document.createElement('span')\n chip.className = CLASS_NAME_CHIP\n chip.dataset.coreuiChipValue = value\n chip.append(document.createTextNode(value))\n this._applyChipClassName(chip, value)\n\n this._setupChip(chip)\n\n return chip\n }\n\n _createChipFromInput() {\n if (this._disabled || this._readonly) {\n return\n }\n\n const value = this._input.value.trim()\n if (value) {\n this.add(value)\n this._input.value = ''\n this._setInputSize()\n }\n }\n\n _findChipByValue(value) {\n const chips = this._getChipElements()\n return chips.find(chip => this._getChipValue(chip) === value)\n }\n\n _getChipValue(chip) {\n if (chip.dataset.coreuiChipValue) {\n return chip.dataset.coreuiChipValue\n }\n\n const clone = chip.cloneNode(true)\n const remove = SelectorEngine.findOne(SELECTOR_CHIP_REMOVE, clone)\n if (remove) {\n remove.remove()\n }\n\n return clone.textContent?.trim() || ''\n }\n\n _initializeExistingChips() {\n const existingChips = SelectorEngine.find(SELECTOR_CHIP, this._element)\n for (const chip of existingChips) {\n const value = this._getChipValue(chip)\n if (value) {\n this._chips.push(value)\n this._applyChipClassName(chip, value)\n this._setupChip(chip)\n }\n }\n }\n\n _applyChipClassName(chip, value) {\n const className = this._resolveChipClassName(value)\n if (!className) {\n return\n }\n\n chip.classList.add(...className.split(/\\s+/).filter(Boolean))\n }\n\n _resolveChipClassName(value) {\n const { chipClassName } = this._config\n if (!chipClassName) {\n return ''\n }\n\n if (typeof chipClassName === 'function') {\n const resolvedClassName = chipClassName(value)\n return typeof resolvedClassName === 'string' ? resolvedClassName : ''\n }\n\n return typeof chipClassName === 'string' ? chipClassName : ''\n }\n\n _setupChip(chip) {\n Chip.getOrCreateInstance(chip, {\n ariaRemoveLabel: `Remove ${this._getChipValue(chip)}`,\n disabled: this._disabled,\n removable: this._config.removable && !this._readonly && !this._disabled,\n removeIcon: this._config.removeIcon,\n selectable: this._config.selectable\n })\n\n const removeButton = SelectorEngine.findOne(SELECTOR_CHIP_REMOVE, chip)\n if (removeButton) {\n removeButton.disabled = this._disabled || this._readonly\n }\n }\n\n _applyInteractionState() {\n this._element.classList.toggle(CLASS_NAME_DISABLED, this._disabled)\n this._input.disabled = this._disabled\n this._input.readOnly = !this._disabled && this._readonly\n this._element.setAttribute('aria-disabled', this._disabled ? 'true' : 'false')\n this._element.setAttribute('aria-readonly', this._readonly ? 'true' : 'false')\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, 'keydown', event => {\n if (event.target === this._input) {\n return\n }\n\n if (event.key.length === 1) {\n // eslint-disable-next-line no-console\n console.log(event.key.length)\n this._input.focus()\n }\n })\n EventHandler.on(this._input, 'keydown', event => this._handleInputKeydown(event))\n EventHandler.on(this._input, 'input', event => this._handleInput(event))\n EventHandler.on(this._input, 'paste', event => this._handlePaste(event))\n EventHandler.on(this._input, 'focus', () => this.clearSelection())\n\n if (this._config.createOnBlur) {\n EventHandler.on(this._input, 'blur', event => {\n // Don't create chip if clicking on a chip\n if (!event.relatedTarget?.closest(SELECTOR_CHIP)) {\n this._createChipFromInput()\n }\n })\n }\n\n EventHandler.on(this._element, 'selected.coreui.chip', SELECTOR_CHIP, () => {\n this._emitSelectionChange()\n })\n\n EventHandler.on(this._element, 'deselected.coreui.chip', SELECTOR_CHIP, () => {\n this._emitSelectionChange()\n })\n\n EventHandler.on(this._element, 'remove.coreui.chip', SELECTOR_CHIP, event => {\n if (this._disabled || this._readonly) {\n event.preventDefault()\n }\n })\n\n EventHandler.on(this._element, 'removed.coreui.chip', SELECTOR_CHIP, event => {\n const chip = event.target.closest(SELECTOR_CHIP)\n if (chip) {\n this._handleChipRemoved(chip)\n const focusableChips = SelectorEngine.find(SELECTOR_FOCUSABLE_ITEMS, this._element)\n\n if (focusableChips.length > 0) {\n this._input?.focus()\n }\n\n this._emitSelectionChange()\n }\n })\n\n // Focus input when clicking container background\n EventHandler.on(this._element, 'click', event => {\n if (event.target === this._element) {\n this._input?.focus()\n }\n })\n }\n\n _handleInputKeydown(event) {\n const { key } = event\n\n switch (key) {\n case 'Enter': {\n event.preventDefault()\n this._createChipFromInput()\n break\n }\n\n case 'Backspace':\n case 'Delete': {\n if (this._input.value === '') {\n event.preventDefault()\n const chips = this._getChipElements()\n\n if (chips.length > 0) {\n const lastChip = chips.at(-1)\n lastChip.focus()\n }\n }\n\n break\n }\n\n case 'ArrowLeft': {\n if (this._input.selectionStart === 0 && this._input.selectionEnd === 0) {\n event.preventDefault()\n const chips = this._getChipElements()\n\n if (chips.length > 0) {\n const lastChip = chips.at(-1)\n lastChip.focus()\n }\n }\n\n break\n }\n\n case 'Escape': {\n this._input.value = ''\n this._input.blur()\n break\n }\n\n // No default\n }\n }\n\n _handleChipRemoved(chip, value = null) {\n const chipValue = value || this._getChipValue(chip)\n const valueIndex = this._chips.indexOf(chipValue)\n if (valueIndex !== -1) {\n this._chips.splice(valueIndex, 1)\n }\n\n const values = this.getValues()\n this._hiddenInput.value = values.join(',')\n\n EventHandler.trigger(this._element, EVENT_CHANGE, {\n values\n })\n }\n\n _handleInput(event) {\n if (this._disabled || this._readonly) {\n return\n }\n\n const { value } = event.target\n const { separator } = this._config\n\n if (separator && value.includes(separator)) {\n const parts = value.split(separator)\n for (const part of parts.slice(0, -1)) {\n this.add(part.trim())\n }\n\n this._input.value = parts.at(-1)\n }\n\n this._setInputSize()\n EventHandler.trigger(this._element, EVENT_INPUT, {\n value: this._input.value,\n relatedTarget: this._input\n })\n }\n\n _handlePaste(event) {\n if (this._disabled || this._readonly) {\n return\n }\n\n const { separator } = this._config\n if (!separator) {\n return\n }\n\n const pastedData = (event.clipboardData || window.clipboardData).getData('text')\n if (pastedData.includes(separator)) {\n event.preventDefault()\n\n const parts = pastedData.split(separator)\n for (const part of parts) {\n this.add(part.trim())\n }\n }\n }\n\n _setInputSize() {\n if (!this._input) {\n return\n }\n\n this._input.size = Math.max(this._input.placeholder.length, this._input.value.length) || 1\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, `DOMContentLoaded${EVENT_KEY}${DATA_API_KEY}`, () => {\n for (const element of SelectorEngine.find(SELECTOR_DATA_CHIP_INPUT)) {\n ChipInput.getOrCreateInstance(element)\n }\n})\n\nexport default ChipInput\n"],"names":["NAME","DATA_KEY","EVENT_KEY","DATA_API_KEY","EVENT_ADD","EVENT_REMOVE","EVENT_CHANGE","EVENT_SELECT","EVENT_INPUT","SELECTOR_DATA_CHIP_INPUT","SELECTOR_CHIP","SELECTOR_CHIP_ACTIVE","SELECTOR_CHIP_INPUT_LABEL","SELECTOR_CHIP_REMOVE","SELECTOR_FOCUSABLE_ITEMS","CLASS_NAME_CHIP","CLASS_NAME_DISABLED","CLASS_NAME_CHIP_INPUT_FIELD","DEFAULT_REMOVE_ICON","Default","chipClassName","createOnBlur","disabled","id","maxChips","name","placeholder","readonly","removable","removeIcon","selectable","separator","DefaultType","ChipInput","BaseComponent","constructor","element","config","_this$_config$id","_uniqueId","_config","getUID","_disabled","_element","classList","contains","_readonly","_chips","_input","SelectorEngine","findOne","_hiddenInput","_setInputSize","_createInput","_applyInteractionState","_initializeExistingChips","_createHiddenInput","_addEventListeners","add","value","trimmedValue","String","trim","includes","length","addEvent","EventHandler","trigger","relatedTarget","defaultPrevented","chip","_createChip","insertBefore","push","values","getValues","join","remove","chipOrValue","_findChipByValue","_getChipValue","removeEvent","chipInstance","Chip","getInstance","_handleChipRemoved","isConnected","removeSelected","_this$_input","chipsToRemove","_getSelectedChipElements","focus","getSelectedValues","map","clear","chips","find","clearSelection","_Chip$getInstance","deselect","selected","selectChip","chipElements","_getChipElements","select","_this$_input2","_emitSelectionChange","input","document","createElement","label","labelFor","getAttribute","generatedInputId","type","className","setAttribute","append","hiddenInput","dataset","coreuiChipValue","createTextNode","_applyChipClassName","_setupChip","_createChipFromInput","_clone$textContent","clone","cloneNode","textContent","existingChips","_resolveChipClassName","split","filter","Boolean","resolvedClassName","getOrCreateInstance","ariaRemoveLabel","removeButton","toggle","readOnly","on","event","target","key","console","log","_handleInputKeydown","_handleInput","_handlePaste","_event$relatedTarget","closest","preventDefault","focusableChips","_this$_input3","_this$_input4","lastChip","at","selectionStart","selectionEnd","blur","chipValue","valueIndex","indexOf","splice","parts","part","slice","pastedData","clipboardData","window","getData","size","Math","max"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chip-input.js","sources":["../src/chip-input.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * CoreUI chip-input.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n *\n * This component is a highly modified version of the Bootstrap's chip-input.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport BaseComponent from './base-component.js'\nimport Chip from './chip.js'\nimport EventHandler from './dom/event-handler.js'\nimport SelectorEngine from './dom/selector-engine.js'\nimport { getUID } from './util/index.js'\n\n/**\n * Constants\n */\n\nconst NAME = 'chip-input'\nconst DATA_KEY = 'coreui.chip-input'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst EVENT_ADD = `add${EVENT_KEY}`\nconst EVENT_REMOVE = `remove${EVENT_KEY}`\nconst EVENT_CHANGE = `change${EVENT_KEY}`\nconst EVENT_SELECT = `select${EVENT_KEY}`\nconst EVENT_INPUT = `input${EVENT_KEY}`\n\nconst SELECTOR_DATA_CHIP_INPUT = '[data-coreui-chip-input]'\nconst SELECTOR_CHIP = '.chip'\nconst SELECTOR_CHIP_ACTIVE = `${SELECTOR_CHIP}.active`\nconst SELECTOR_CHIP_INPUT_LABEL = '.chip-input-label'\nconst SELECTOR_CHIP_REMOVE = '.chip-remove'\nconst SELECTOR_FOCUSABLE_ITEMS = '.chip:not(.disabled)'\n\nconst CLASS_NAME_CHIP = 'chip'\nconst CLASS_NAME_DISABLED = 'disabled'\nconst CLASS_NAME_CHIP_INPUT_FIELD = 'chip-input-field'\n\nconst DEFAULT_REMOVE_ICON = '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"><line x1=\"4\" y1=\"4\" x2=\"12\" y2=\"12\"/><line x1=\"12\" y1=\"4\" x2=\"4\" y2=\"12\"/></svg>'\n\nconst Default = {\n chipClassName: null,\n createOnBlur: true,\n disabled: false,\n id: null,\n maxChips: null,\n name: null,\n placeholder: '',\n readonly: false,\n removable: true,\n removeIcon: DEFAULT_REMOVE_ICON,\n selectable: false,\n separator: ','\n}\n\nconst DefaultType = {\n chipClassName: '(string|function|null)',\n createOnBlur: 'boolean',\n disabled: 'boolean',\n maxChips: '(number|null)',\n id: '(string|null)',\n name: '(string|null)',\n placeholder: 'string',\n readonly: 'boolean',\n removable: 'boolean',\n removeIcon: 'string',\n selectable: 'boolean',\n separator: '(string|null)'\n}\n\n/**\n * Class definition\n */\n\nclass ChipInput extends BaseComponent {\n constructor(element, config) {\n super(element, config)\n\n this._uniqueId = this._config.id ?? getUID(`${this.constructor.NAME}`)\n this._disabled = this._config.disabled || this._element.classList.contains(CLASS_NAME_DISABLED)\n this._readonly = this._config.readonly\n\n this._chips = []\n this._input = SelectorEngine.findOne('input', this._element)\n this._hiddenInput = null\n\n if (this._input) {\n this._setInputSize()\n } else {\n this._createInput()\n }\n\n this._applyInteractionState()\n this._initializeExistingChips()\n this._createHiddenInput()\n this._addEventListeners()\n }\n\n // Getters\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n add(value) {\n if (this._disabled || this._readonly) {\n return null\n }\n\n const trimmedValue = String(value).trim()\n\n if (!trimmedValue) {\n return null\n }\n\n // Chips are unique by value\n if (this._chips.includes(trimmedValue)) {\n return null\n }\n\n // Check max chips limit\n if (this._config.maxChips !== null && this._chips.length >= this._config.maxChips) {\n return null\n }\n\n const addEvent = EventHandler.trigger(this._element, EVENT_ADD, {\n value: trimmedValue,\n relatedTarget: this._input\n })\n\n if (addEvent.defaultPrevented) {\n return null\n }\n\n const chip = this._createChip(trimmedValue)\n this._element.insertBefore(chip, this._input)\n this._chips.push(trimmedValue)\n\n const values = this.getValues()\n this._hiddenInput.value = values.join(',')\n\n EventHandler.trigger(this._element, EVENT_CHANGE, {\n values\n })\n\n return chip\n }\n\n remove(chipOrValue) {\n if (this._disabled || this._readonly) {\n return false\n }\n\n let chip\n let value\n\n if (typeof chipOrValue === 'string') {\n value = chipOrValue\n chip = this._findChipByValue(value)\n } else {\n chip = chipOrValue\n value = this._getChipValue(chip)\n }\n\n if (!chip || !value) {\n return false\n }\n\n const removeEvent = EventHandler.trigger(this._element, EVENT_REMOVE, {\n value,\n chip,\n relatedTarget: this._input\n })\n\n if (removeEvent.defaultPrevented) {\n return false\n }\n\n const chipInstance = Chip.getInstance(chip)\n if (chipInstance) {\n chipInstance.remove()\n } else {\n chip.remove()\n this._handleChipRemoved(chip, value)\n }\n\n return !chip.isConnected\n }\n\n removeSelected() {\n const chipsToRemove = this._getSelectedChipElements()\n for (const chip of chipsToRemove) {\n this.remove(chip)\n }\n\n this._input?.focus()\n }\n\n getValues() {\n return [...this._chips]\n }\n\n getSelectedValues() {\n return this._getSelectedChipElements().map(chip => this._getChipValue(chip))\n }\n\n clear() {\n const chips = SelectorEngine.find(SELECTOR_CHIP, this._element)\n for (const chip of chips) {\n this.remove(chip)\n }\n }\n\n clearSelection() {\n for (const chip of this._getSelectedChipElements()) {\n Chip.getInstance(chip)?.deselect()\n }\n\n EventHandler.trigger(this._element, EVENT_SELECT, {\n selected: []\n })\n }\n\n selectChip(chip) {\n const chipElements = this._getChipElements()\n\n if (!chipElements.includes(chip)) {\n return\n }\n\n const chipInstance = Chip.getInstance(chip)\n if (!chipInstance) {\n return\n }\n\n chipInstance.select()\n }\n\n focus() {\n this._input?.focus()\n }\n\n // Private\n _emitSelectionChange() {\n EventHandler.trigger(this._element, EVENT_SELECT, {\n selected: this.getSelectedValues()\n })\n }\n\n _getChipElements() {\n return SelectorEngine.find(SELECTOR_CHIP, this._element)\n }\n\n _getSelectedChipElements() {\n return SelectorEngine.find(SELECTOR_CHIP_ACTIVE, this._element)\n }\n\n _createInput() {\n const input = document.createElement('input')\n const label = SelectorEngine.findOne(SELECTOR_CHIP_INPUT_LABEL, this._element)\n const labelFor = label?.getAttribute('for')\n const generatedInputId = labelFor || getUID(`${this.constructor.NAME}-input`)\n\n input.type = 'text'\n input.className = CLASS_NAME_CHIP_INPUT_FIELD\n input.id = generatedInputId\n if (this._config.placeholder) {\n input.placeholder = this._config.placeholder\n }\n\n if (label && !labelFor) {\n label.setAttribute('for', generatedInputId)\n }\n\n this._input = input\n this._setInputSize()\n this._element.append(input)\n }\n\n _createHiddenInput() {\n const hiddenInput = document.createElement('input')\n hiddenInput.type = 'hidden'\n hiddenInput.id = this._uniqueId\n hiddenInput.name = this._config.name || this._uniqueId\n\n this._element.append(hiddenInput)\n this._hiddenInput = hiddenInput\n this._hiddenInput.value = this.getValues().join(',')\n }\n\n _createChip(value) {\n const chip = document.createElement('span')\n chip.className = CLASS_NAME_CHIP\n chip.dataset.coreuiChipValue = value\n chip.append(document.createTextNode(value))\n this._applyChipClassName(chip, value)\n\n this._setupChip(chip)\n\n return chip\n }\n\n _createChipFromInput() {\n if (this._disabled || this._readonly) {\n return\n }\n\n const value = this._input.value.trim()\n if (value) {\n this.add(value)\n this._input.value = ''\n this._setInputSize()\n }\n }\n\n _findChipByValue(value) {\n const chips = this._getChipElements()\n return chips.find(chip => this._getChipValue(chip) === value)\n }\n\n _getChipValue(chip) {\n if (chip.dataset.coreuiChipValue) {\n return chip.dataset.coreuiChipValue\n }\n\n const clone = chip.cloneNode(true)\n const remove = SelectorEngine.findOne(SELECTOR_CHIP_REMOVE, clone)\n if (remove) {\n remove.remove()\n }\n\n return clone.textContent?.trim() || ''\n }\n\n _initializeExistingChips() {\n const existingChips = SelectorEngine.find(SELECTOR_CHIP, this._element)\n for (const chip of existingChips) {\n const value = this._getChipValue(chip)\n if (value) {\n this._chips.push(value)\n this._applyChipClassName(chip, value)\n this._setupChip(chip)\n }\n }\n }\n\n _applyChipClassName(chip, value) {\n const className = this._resolveChipClassName(value)\n if (!className) {\n return\n }\n\n chip.classList.add(...className.split(/\\s+/).filter(Boolean))\n }\n\n _resolveChipClassName(value) {\n const { chipClassName } = this._config\n if (!chipClassName) {\n return ''\n }\n\n if (typeof chipClassName === 'function') {\n const resolvedClassName = chipClassName(value)\n return typeof resolvedClassName === 'string' ? resolvedClassName : ''\n }\n\n return typeof chipClassName === 'string' ? chipClassName : ''\n }\n\n _setupChip(chip) {\n Chip.getOrCreateInstance(chip, {\n ariaRemoveLabel: `Remove ${this._getChipValue(chip)}`,\n disabled: this._disabled,\n removable: this._config.removable && !this._readonly && !this._disabled,\n removeIcon: this._config.removeIcon,\n selectable: this._config.selectable\n })\n\n const removeButton = SelectorEngine.findOne(SELECTOR_CHIP_REMOVE, chip)\n if (removeButton) {\n removeButton.disabled = this._disabled || this._readonly\n }\n }\n\n _applyInteractionState() {\n this._element.classList.toggle(CLASS_NAME_DISABLED, this._disabled)\n this._input.disabled = this._disabled\n this._input.readOnly = !this._disabled && this._readonly\n this._element.setAttribute('aria-disabled', this._disabled ? 'true' : 'false')\n this._element.setAttribute('aria-readonly', this._readonly ? 'true' : 'false')\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, 'keydown', event => {\n if (event.target === this._input) {\n return\n }\n\n if (event.key.length === 1) {\n this._input.focus()\n }\n })\n EventHandler.on(this._input, 'keydown', event => this._handleInputKeydown(event))\n EventHandler.on(this._input, 'input', event => this._handleInput(event))\n EventHandler.on(this._input, 'paste', event => this._handlePaste(event))\n EventHandler.on(this._input, 'focus', () => this.clearSelection())\n\n if (this._config.createOnBlur) {\n EventHandler.on(this._input, 'blur', event => {\n // Don't create chip if clicking on a chip\n if (!event.relatedTarget?.closest(SELECTOR_CHIP)) {\n this._createChipFromInput()\n }\n })\n }\n\n EventHandler.on(this._element, 'selected.coreui.chip', SELECTOR_CHIP, () => {\n this._emitSelectionChange()\n })\n\n EventHandler.on(this._element, 'deselected.coreui.chip', SELECTOR_CHIP, () => {\n this._emitSelectionChange()\n })\n\n EventHandler.on(this._element, 'remove.coreui.chip', SELECTOR_CHIP, event => {\n if (this._disabled || this._readonly) {\n event.preventDefault()\n }\n })\n\n EventHandler.on(this._element, 'removed.coreui.chip', SELECTOR_CHIP, event => {\n const chip = event.target.closest(SELECTOR_CHIP)\n if (chip) {\n this._handleChipRemoved(chip)\n const focusableChips = SelectorEngine.find(SELECTOR_FOCUSABLE_ITEMS, this._element)\n\n if (focusableChips.length > 0) {\n this._input?.focus()\n }\n\n this._emitSelectionChange()\n }\n })\n\n // Focus input when clicking container background\n EventHandler.on(this._element, 'click', event => {\n if (event.target === this._element) {\n this._input?.focus()\n }\n })\n }\n\n _handleInputKeydown(event) {\n const { key } = event\n\n switch (key) {\n case 'Enter': {\n event.preventDefault()\n this._createChipFromInput()\n break\n }\n\n case 'Backspace':\n case 'Delete': {\n if (this._input.value === '') {\n event.preventDefault()\n const chips = this._getChipElements()\n\n if (chips.length > 0) {\n const lastChip = chips.at(-1)\n lastChip.focus()\n }\n }\n\n break\n }\n\n case 'ArrowLeft': {\n if (this._input.selectionStart === 0 && this._input.selectionEnd === 0) {\n event.preventDefault()\n const chips = this._getChipElements()\n\n if (chips.length > 0) {\n const lastChip = chips.at(-1)\n lastChip.focus()\n }\n }\n\n break\n }\n\n case 'Escape': {\n this._input.value = ''\n this._input.blur()\n break\n }\n\n // No default\n }\n }\n\n _handleChipRemoved(chip, value = null) {\n const chipValue = value || this._getChipValue(chip)\n const valueIndex = this._chips.indexOf(chipValue)\n if (valueIndex !== -1) {\n this._chips.splice(valueIndex, 1)\n }\n\n const values = this.getValues()\n this._hiddenInput.value = values.join(',')\n\n EventHandler.trigger(this._element, EVENT_CHANGE, {\n values\n })\n }\n\n _handleInput(event) {\n if (this._disabled || this._readonly) {\n return\n }\n\n const { value } = event.target\n const { separator } = this._config\n\n if (separator && value.includes(separator)) {\n const parts = value.split(separator)\n for (const part of parts.slice(0, -1)) {\n this.add(part.trim())\n }\n\n this._input.value = parts.at(-1)\n }\n\n this._setInputSize()\n EventHandler.trigger(this._element, EVENT_INPUT, {\n value: this._input.value,\n relatedTarget: this._input\n })\n }\n\n _handlePaste(event) {\n if (this._disabled || this._readonly) {\n return\n }\n\n const { separator } = this._config\n if (!separator) {\n return\n }\n\n const pastedData = (event.clipboardData || window.clipboardData).getData('text')\n if (pastedData.includes(separator)) {\n event.preventDefault()\n\n const parts = pastedData.split(separator)\n for (const part of parts) {\n this.add(part.trim())\n }\n }\n }\n\n _setInputSize() {\n if (!this._input) {\n return\n }\n\n this._input.size = Math.max(this._input.placeholder.length, this._input.value.length) || 1\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, `DOMContentLoaded${EVENT_KEY}${DATA_API_KEY}`, () => {\n for (const element of SelectorEngine.find(SELECTOR_DATA_CHIP_INPUT)) {\n ChipInput.getOrCreateInstance(element)\n }\n})\n\nexport default ChipInput\n"],"names":["NAME","DATA_KEY","EVENT_KEY","DATA_API_KEY","EVENT_ADD","EVENT_REMOVE","EVENT_CHANGE","EVENT_SELECT","EVENT_INPUT","SELECTOR_DATA_CHIP_INPUT","SELECTOR_CHIP","SELECTOR_CHIP_ACTIVE","SELECTOR_CHIP_INPUT_LABEL","SELECTOR_CHIP_REMOVE","SELECTOR_FOCUSABLE_ITEMS","CLASS_NAME_CHIP","CLASS_NAME_DISABLED","CLASS_NAME_CHIP_INPUT_FIELD","DEFAULT_REMOVE_ICON","Default","chipClassName","createOnBlur","disabled","id","maxChips","name","placeholder","readonly","removable","removeIcon","selectable","separator","DefaultType","ChipInput","BaseComponent","constructor","element","config","_this$_config$id","_uniqueId","_config","getUID","_disabled","_element","classList","contains","_readonly","_chips","_input","SelectorEngine","findOne","_hiddenInput","_setInputSize","_createInput","_applyInteractionState","_initializeExistingChips","_createHiddenInput","_addEventListeners","add","value","trimmedValue","String","trim","includes","length","addEvent","EventHandler","trigger","relatedTarget","defaultPrevented","chip","_createChip","insertBefore","push","values","getValues","join","remove","chipOrValue","_findChipByValue","_getChipValue","removeEvent","chipInstance","Chip","getInstance","_handleChipRemoved","isConnected","removeSelected","_this$_input","chipsToRemove","_getSelectedChipElements","focus","getSelectedValues","map","clear","chips","find","clearSelection","_Chip$getInstance","deselect","selected","selectChip","chipElements","_getChipElements","select","_this$_input2","_emitSelectionChange","input","document","createElement","label","labelFor","getAttribute","generatedInputId","type","className","setAttribute","append","hiddenInput","dataset","coreuiChipValue","createTextNode","_applyChipClassName","_setupChip","_createChipFromInput","_clone$textContent","clone","cloneNode","textContent","existingChips","_resolveChipClassName","split","filter","Boolean","resolvedClassName","getOrCreateInstance","ariaRemoveLabel","removeButton","toggle","readOnly","on","event","target","key","_handleInputKeydown","_handleInput","_handlePaste","_event$relatedTarget","closest","preventDefault","focusableChips","_this$_input3","_this$_input4","lastChip","at","selectionStart","selectionEnd","blur","chipValue","valueIndex","indexOf","splice","parts","part","slice","pastedData","clipboardData","window","getData","size","Math","max"],"mappings":"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"}
|
package/js/dist/chip.js
CHANGED
package/js/dist/collapse.js
CHANGED
package/js/dist/dom/data.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* CoreUI selector-engine.js v5.
|
|
2
|
+
* CoreUI selector-engine.js v5.7.0 (https://coreui.io)
|
|
3
3
|
* Copyright 2026 The CoreUI Team (https://github.com/orgs/coreui/people)
|
|
4
4
|
* Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)
|
|
5
5
|
*/
|
package/js/dist/dropdown.js
CHANGED
package/js/dist/modal.js
CHANGED
package/js/dist/navigation.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* CoreUI navigation.js v5.
|
|
2
|
+
* CoreUI navigation.js v5.7.0 (https://coreui.io)
|
|
3
3
|
* Copyright 2026 The CoreUI Team (https://github.com/orgs/coreui/people)
|
|
4
4
|
* Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)
|
|
5
5
|
*/
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
const SELECTOR_NAV_GROUP_ITEMS = '.nav-group-items';
|
|
46
46
|
const SELECTOR_NAV_GROUP_TOGGLE = '.nav-group-toggle';
|
|
47
47
|
const SELECTOR_NAV_LINK = '.nav-link';
|
|
48
|
-
const SELECTOR_DATA_NAVIGATION = '[data-coreui="navigation"]';
|
|
48
|
+
const SELECTOR_DATA_NAVIGATION = '[data-coreui-navigation], [data-coreui="navigation"]';
|
|
49
49
|
|
|
50
50
|
/**
|
|
51
51
|
* ------------------------------------------------------------------------
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation.js","sources":["../src/navigation.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * CoreUI navigation.js\n * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport BaseComponent from './base-component.js'\nimport Data from './dom/data.js'\nimport EventHandler from './dom/event-handler.js'\nimport SelectorEngine from './dom/selector-engine.js'\nimport { defineJQueryPlugin } from './util/index.js'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'navigation'\nconst DATA_KEY = 'coreui.navigation'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n activeLinksExact: true,\n groupsAutoCollapse: true\n}\n\nconst DefaultType = {\n activeLinksExact: 'boolean',\n groupsAutoCollapse: '(string|boolean)'\n}\n\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SHOW = 'show'\n\nconst CLASS_NAME_NAV_GROUP = 'nav-group'\nconst CLASS_NAME_NAV_GROUP_TOGGLE = 'nav-group-toggle'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst SELECTOR_NAV_GROUP = '.nav-group'\nconst SELECTOR_NAV_GROUP_ITEMS = '.nav-group-items'\nconst SELECTOR_NAV_GROUP_TOGGLE = '.nav-group-toggle'\nconst SELECTOR_NAV_LINK = '.nav-link'\nconst SELECTOR_DATA_NAVIGATION = '[data-coreui=\"navigation\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Navigation extends BaseComponent {\n constructor(element, config) {\n super(element)\n this._config = this._getConfig(config)\n this._setActiveLink()\n this._addEventListeners()\n\n Data.set(element, DATA_KEY, this)\n }\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Private\n\n _setActiveLink() {\n for (const element of Array.from(this._element.querySelectorAll(SELECTOR_NAV_LINK))) {\n if (element.classList.contains(CLASS_NAME_NAV_GROUP_TOGGLE)) {\n continue\n }\n\n let currentUrl = String(window.location)\n\n const urlHasParams = /\\?.*=/\n const urlHasQueryString = /\\?./\n const urlHasHash = /#./\n\n if (urlHasParams.test(currentUrl) || urlHasQueryString.test(currentUrl)) {\n currentUrl = currentUrl.split('?')[0]\n }\n\n if (urlHasHash.test(currentUrl)) {\n currentUrl = currentUrl.split('#')[0]\n }\n\n if (this._config.activeLinksExact && element.href === currentUrl) {\n element.classList.add(CLASS_NAME_ACTIVE)\n // eslint-disable-next-line unicorn/no-array-for-each\n Array.from(this._getParents(element, SELECTOR_NAV_GROUP)).forEach(element => {\n element.classList.add(CLASS_NAME_SHOW)\n element.setAttribute('aria-expanded', true)\n })\n }\n\n if (!this._config.activeLinksExact && currentUrl.startsWith(element.href)) {\n element.classList.add(CLASS_NAME_ACTIVE)\n // eslint-disable-next-line unicorn/no-array-for-each\n Array.from(this._getParents(element, SELECTOR_NAV_GROUP)).forEach(element => {\n element.classList.add(CLASS_NAME_SHOW)\n element.setAttribute('aria-expanded', true)\n })\n }\n }\n }\n\n _getParents(element, selector) {\n // Setup parents array\n const parents = []\n\n // Get matching parent elements\n for (; element && element !== document; element = element.parentNode) {\n // Add matching parents to array\n if (selector) {\n if (element.matches(selector)) {\n parents.push(element)\n }\n } else {\n parents.push(element)\n }\n }\n\n return parents\n }\n\n _getAllSiblings(element, filter) {\n const siblings = []\n element = element.parentNode.firstChild\n do {\n if (element.nodeType === 3) {\n continue // text node\n }\n\n if (element.nodeType === 8) {\n continue // comment node\n }\n\n if (!filter || filter(element)) {\n siblings.push(element)\n }\n\n // eslint-disable-next-line no-cond-assign\n } while (element = element.nextSibling)\n\n return siblings\n }\n\n _getChildren(n, skipMe) {\n const children = []\n for (; n; n = n.nextSibling) {\n if (n.nodeType === 1 && n !== skipMe) {\n children.push(n)\n }\n }\n\n return children\n }\n\n _getSiblings(element, filter) {\n const siblings = this._getChildren(element.parentNode.firstChild, element).filter(filter)\n return siblings\n }\n\n _slideDown(element) {\n element.style.height = 'auto'\n const height = element.clientHeight\n element.style.height = '0px'\n setTimeout(() => {\n element.style.height = `${height}px`\n }, 0)\n\n this._queueCallback(() => {\n element.style.height = 'auto'\n }, element, true)\n }\n\n _slideUp(element, callback) {\n const height = element.clientHeight\n element.style.height = `${height}px`\n setTimeout(() => {\n element.style.height = '0px'\n }, 0)\n\n this._queueCallback(() => {\n if (typeof callback === 'function') {\n callback()\n }\n }, element, true)\n }\n\n _toggleGroupItems(event) {\n let toggler = event.target\n if (!toggler.classList.contains(CLASS_NAME_NAV_GROUP_TOGGLE)) {\n toggler = toggler.closest(SELECTOR_NAV_GROUP_TOGGLE)\n }\n\n const filter = element => Boolean(element.classList.contains(CLASS_NAME_NAV_GROUP) && element.classList.contains(CLASS_NAME_SHOW))\n\n // Close other groups\n if (this._config.groupsAutoCollapse === true) {\n for (const element of this._getSiblings(toggler.parentNode, filter)) {\n this._slideUp(SelectorEngine.findOne(SELECTOR_NAV_GROUP_ITEMS, element), () => {\n element.classList.remove(CLASS_NAME_SHOW)\n element.setAttribute('aria-expanded', false)\n })\n }\n }\n\n if (toggler.parentNode.classList.contains(CLASS_NAME_SHOW)) {\n this._slideUp(SelectorEngine.findOne(SELECTOR_NAV_GROUP_ITEMS, toggler.parentNode), () => {\n toggler.parentNode.classList.remove(CLASS_NAME_SHOW)\n toggler.parentNode.setAttribute('aria-expanded', false)\n })\n return\n }\n\n toggler.parentNode.classList.add(CLASS_NAME_SHOW)\n toggler.parentNode.setAttribute('aria-expanded', true)\n this._slideDown(SelectorEngine.findOne(SELECTOR_NAV_GROUP_ITEMS, toggler.parentNode))\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DATA_API, SELECTOR_NAV_GROUP_TOGGLE, event => {\n event.preventDefault()\n this._toggleGroupItems(event, this)\n })\n }\n\n // Static\n\n static navigationInterface(element, config) {\n const data = Navigation.getOrCreateInstance(element, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Navigation.navigationInterface(this, config)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n for (const element of Array.from(document.querySelectorAll(SELECTOR_DATA_NAVIGATION))) {\n Navigation.navigationInterface(element)\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Navigation to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Navigation)\n\nexport default Navigation\n"],"names":["NAME","DATA_KEY","EVENT_KEY","DATA_API_KEY","Default","activeLinksExact","groupsAutoCollapse","DefaultType","CLASS_NAME_ACTIVE","CLASS_NAME_SHOW","CLASS_NAME_NAV_GROUP","CLASS_NAME_NAV_GROUP_TOGGLE","EVENT_CLICK_DATA_API","EVENT_LOAD_DATA_API","SELECTOR_NAV_GROUP","SELECTOR_NAV_GROUP_ITEMS","SELECTOR_NAV_GROUP_TOGGLE","SELECTOR_NAV_LINK","SELECTOR_DATA_NAVIGATION","Navigation","BaseComponent","constructor","element","config","_config","_getConfig","_setActiveLink","_addEventListeners","Data","set","Array","from","_element","querySelectorAll","classList","contains","currentUrl","String","window","location","urlHasParams","urlHasQueryString","urlHasHash","test","split","href","add","_getParents","forEach","setAttribute","startsWith","selector","parents","document","parentNode","matches","push","_getAllSiblings","filter","siblings","firstChild","nodeType","nextSibling","_getChildren","n","skipMe","children","_getSiblings","_slideDown","style","height","clientHeight","setTimeout","_queueCallback","_slideUp","callback","_toggleGroupItems","event","toggler","target","closest","Boolean","SelectorEngine","findOne","remove","EventHandler","on","preventDefault","navigationInterface","data","getOrCreateInstance","TypeError","jQueryInterface","each","defineJQueryPlugin"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"navigation.js","sources":["../src/navigation.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * CoreUI navigation.js\n * Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport BaseComponent from './base-component.js'\nimport Data from './dom/data.js'\nimport EventHandler from './dom/event-handler.js'\nimport SelectorEngine from './dom/selector-engine.js'\nimport { defineJQueryPlugin } from './util/index.js'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'navigation'\nconst DATA_KEY = 'coreui.navigation'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n activeLinksExact: true,\n groupsAutoCollapse: true\n}\n\nconst DefaultType = {\n activeLinksExact: 'boolean',\n groupsAutoCollapse: '(string|boolean)'\n}\n\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SHOW = 'show'\n\nconst CLASS_NAME_NAV_GROUP = 'nav-group'\nconst CLASS_NAME_NAV_GROUP_TOGGLE = 'nav-group-toggle'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst SELECTOR_NAV_GROUP = '.nav-group'\nconst SELECTOR_NAV_GROUP_ITEMS = '.nav-group-items'\nconst SELECTOR_NAV_GROUP_TOGGLE = '.nav-group-toggle'\nconst SELECTOR_NAV_LINK = '.nav-link'\nconst SELECTOR_DATA_NAVIGATION = '[data-coreui-navigation], [data-coreui=\"navigation\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Navigation extends BaseComponent {\n constructor(element, config) {\n super(element)\n this._config = this._getConfig(config)\n this._setActiveLink()\n this._addEventListeners()\n\n Data.set(element, DATA_KEY, this)\n }\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DATA_KEY() {\n return DATA_KEY\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Private\n\n _setActiveLink() {\n for (const element of Array.from(this._element.querySelectorAll(SELECTOR_NAV_LINK))) {\n if (element.classList.contains(CLASS_NAME_NAV_GROUP_TOGGLE)) {\n continue\n }\n\n let currentUrl = String(window.location)\n\n const urlHasParams = /\\?.*=/\n const urlHasQueryString = /\\?./\n const urlHasHash = /#./\n\n if (urlHasParams.test(currentUrl) || urlHasQueryString.test(currentUrl)) {\n currentUrl = currentUrl.split('?')[0]\n }\n\n if (urlHasHash.test(currentUrl)) {\n currentUrl = currentUrl.split('#')[0]\n }\n\n if (this._config.activeLinksExact && element.href === currentUrl) {\n element.classList.add(CLASS_NAME_ACTIVE)\n // eslint-disable-next-line unicorn/no-array-for-each\n Array.from(this._getParents(element, SELECTOR_NAV_GROUP)).forEach(element => {\n element.classList.add(CLASS_NAME_SHOW)\n element.setAttribute('aria-expanded', true)\n })\n }\n\n if (!this._config.activeLinksExact && currentUrl.startsWith(element.href)) {\n element.classList.add(CLASS_NAME_ACTIVE)\n // eslint-disable-next-line unicorn/no-array-for-each\n Array.from(this._getParents(element, SELECTOR_NAV_GROUP)).forEach(element => {\n element.classList.add(CLASS_NAME_SHOW)\n element.setAttribute('aria-expanded', true)\n })\n }\n }\n }\n\n _getParents(element, selector) {\n // Setup parents array\n const parents = []\n\n // Get matching parent elements\n for (; element && element !== document; element = element.parentNode) {\n // Add matching parents to array\n if (selector) {\n if (element.matches(selector)) {\n parents.push(element)\n }\n } else {\n parents.push(element)\n }\n }\n\n return parents\n }\n\n _getAllSiblings(element, filter) {\n const siblings = []\n element = element.parentNode.firstChild\n do {\n if (element.nodeType === 3) {\n continue // text node\n }\n\n if (element.nodeType === 8) {\n continue // comment node\n }\n\n if (!filter || filter(element)) {\n siblings.push(element)\n }\n\n // eslint-disable-next-line no-cond-assign\n } while (element = element.nextSibling)\n\n return siblings\n }\n\n _getChildren(n, skipMe) {\n const children = []\n for (; n; n = n.nextSibling) {\n if (n.nodeType === 1 && n !== skipMe) {\n children.push(n)\n }\n }\n\n return children\n }\n\n _getSiblings(element, filter) {\n const siblings = this._getChildren(element.parentNode.firstChild, element).filter(filter)\n return siblings\n }\n\n _slideDown(element) {\n element.style.height = 'auto'\n const height = element.clientHeight\n element.style.height = '0px'\n setTimeout(() => {\n element.style.height = `${height}px`\n }, 0)\n\n this._queueCallback(() => {\n element.style.height = 'auto'\n }, element, true)\n }\n\n _slideUp(element, callback) {\n const height = element.clientHeight\n element.style.height = `${height}px`\n setTimeout(() => {\n element.style.height = '0px'\n }, 0)\n\n this._queueCallback(() => {\n if (typeof callback === 'function') {\n callback()\n }\n }, element, true)\n }\n\n _toggleGroupItems(event) {\n let toggler = event.target\n if (!toggler.classList.contains(CLASS_NAME_NAV_GROUP_TOGGLE)) {\n toggler = toggler.closest(SELECTOR_NAV_GROUP_TOGGLE)\n }\n\n const filter = element => Boolean(element.classList.contains(CLASS_NAME_NAV_GROUP) && element.classList.contains(CLASS_NAME_SHOW))\n\n // Close other groups\n if (this._config.groupsAutoCollapse === true) {\n for (const element of this._getSiblings(toggler.parentNode, filter)) {\n this._slideUp(SelectorEngine.findOne(SELECTOR_NAV_GROUP_ITEMS, element), () => {\n element.classList.remove(CLASS_NAME_SHOW)\n element.setAttribute('aria-expanded', false)\n })\n }\n }\n\n if (toggler.parentNode.classList.contains(CLASS_NAME_SHOW)) {\n this._slideUp(SelectorEngine.findOne(SELECTOR_NAV_GROUP_ITEMS, toggler.parentNode), () => {\n toggler.parentNode.classList.remove(CLASS_NAME_SHOW)\n toggler.parentNode.setAttribute('aria-expanded', false)\n })\n return\n }\n\n toggler.parentNode.classList.add(CLASS_NAME_SHOW)\n toggler.parentNode.setAttribute('aria-expanded', true)\n this._slideDown(SelectorEngine.findOne(SELECTOR_NAV_GROUP_ITEMS, toggler.parentNode))\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DATA_API, SELECTOR_NAV_GROUP_TOGGLE, event => {\n event.preventDefault()\n this._toggleGroupItems(event, this)\n })\n }\n\n // Static\n\n static navigationInterface(element, config) {\n const data = Navigation.getOrCreateInstance(element, config)\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Navigation.navigationInterface(this, config)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n for (const element of Array.from(document.querySelectorAll(SELECTOR_DATA_NAVIGATION))) {\n Navigation.navigationInterface(element)\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Navigation to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Navigation)\n\nexport default Navigation\n"],"names":["NAME","DATA_KEY","EVENT_KEY","DATA_API_KEY","Default","activeLinksExact","groupsAutoCollapse","DefaultType","CLASS_NAME_ACTIVE","CLASS_NAME_SHOW","CLASS_NAME_NAV_GROUP","CLASS_NAME_NAV_GROUP_TOGGLE","EVENT_CLICK_DATA_API","EVENT_LOAD_DATA_API","SELECTOR_NAV_GROUP","SELECTOR_NAV_GROUP_ITEMS","SELECTOR_NAV_GROUP_TOGGLE","SELECTOR_NAV_LINK","SELECTOR_DATA_NAVIGATION","Navigation","BaseComponent","constructor","element","config","_config","_getConfig","_setActiveLink","_addEventListeners","Data","set","Array","from","_element","querySelectorAll","classList","contains","currentUrl","String","window","location","urlHasParams","urlHasQueryString","urlHasHash","test","split","href","add","_getParents","forEach","setAttribute","startsWith","selector","parents","document","parentNode","matches","push","_getAllSiblings","filter","siblings","firstChild","nodeType","nextSibling","_getChildren","n","skipMe","children","_getSiblings","_slideDown","style","height","clientHeight","setTimeout","_queueCallback","_slideUp","callback","_toggleGroupItems","event","toggler","target","closest","Boolean","SelectorEngine","findOne","remove","EventHandler","on","preventDefault","navigationInterface","data","getOrCreateInstance","TypeError","jQueryInterface","each","defineJQueryPlugin"],"mappings":"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"}
|
package/js/dist/offcanvas.js
CHANGED
package/js/dist/popover.js
CHANGED
package/js/dist/scrollspy.js
CHANGED