@openeuropa/bcl-bootstrap 0.28.0 → 1.0.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/bootstrap-icons.svg +1 -1
- package/icons/0-circle-fill.svg +4 -0
- package/icons/0-circle.svg +4 -0
- package/icons/0-square-fill.svg +4 -0
- package/icons/0-square.svg +4 -0
- package/icons/1-circle-fill.svg +1 -1
- package/icons/amd.svg +3 -0
- package/icons/arrow-bar-left.svg +1 -1
- package/icons/arrow-bar-right.svg +1 -1
- package/icons/arrows-collapse.svg +1 -1
- package/icons/arrows-expand.svg +1 -1
- package/icons/building-add.svg +5 -0
- package/icons/building-check.svg +5 -0
- package/icons/building-dash.svg +5 -0
- package/icons/building-down.svg +5 -0
- package/icons/building-exclamation.svg +4 -0
- package/icons/building-fill-add.svg +4 -0
- package/icons/building-fill-check.svg +4 -0
- package/icons/building-fill-dash.svg +4 -0
- package/icons/building-fill-down.svg +4 -0
- package/icons/building-fill-exclamation.svg +4 -0
- package/icons/building-fill-gear.svg +4 -0
- package/icons/building-fill-lock.svg +4 -0
- package/icons/building-fill-slash.svg +4 -0
- package/icons/building-fill-up.svg +4 -0
- package/icons/building-fill-x.svg +4 -0
- package/icons/building-fill.svg +3 -0
- package/icons/building-gear.svg +4 -0
- package/icons/building-lock.svg +4 -0
- package/icons/building-slash.svg +5 -0
- package/icons/building-up.svg +5 -0
- package/icons/building-x.svg +4 -0
- package/icons/building.svg +2 -2
- package/icons/buildings-fill.svg +3 -0
- package/icons/buildings.svg +4 -0
- package/icons/bus-front-fill.svg +3 -0
- package/icons/bus-front.svg +4 -0
- package/icons/capsule-pill.svg +1 -1
- package/icons/capsule.svg +1 -1
- package/icons/car-front-fill.svg +1 -1
- package/icons/car-front.svg +1 -1
- package/icons/database-add.svg +4 -0
- package/icons/database-check.svg +4 -0
- package/icons/database-dash.svg +4 -0
- package/icons/database-down.svg +4 -0
- package/icons/database-exclamation.svg +4 -0
- package/icons/database-fill-add.svg +4 -0
- package/icons/database-fill-check.svg +4 -0
- package/icons/database-fill-dash.svg +4 -0
- package/icons/database-fill-down.svg +4 -0
- package/icons/database-fill-exclamation.svg +5 -0
- package/icons/database-fill-gear.svg +4 -0
- package/icons/database-fill-lock.svg +5 -0
- package/icons/database-fill-slash.svg +4 -0
- package/icons/database-fill-up.svg +4 -0
- package/icons/database-fill-x.svg +5 -0
- package/icons/database-fill.svg +6 -0
- package/icons/database-gear.svg +4 -0
- package/icons/database-lock.svg +4 -0
- package/icons/database-slash.svg +4 -0
- package/icons/database-up.svg +4 -0
- package/icons/database-x.svg +4 -0
- package/icons/database.svg +3 -0
- package/icons/envelope-at-fill.svg +4 -0
- package/icons/envelope-at.svg +4 -0
- package/icons/ev-front-fill.svg +3 -0
- package/icons/ev-front.svg +4 -0
- package/icons/globe-americas.svg +3 -0
- package/icons/globe-asia-australia.svg +4 -0
- package/icons/globe-central-south-asia.svg +3 -0
- package/icons/globe-europe-africa.svg +3 -0
- package/icons/heart-pulse-fill.svg +2 -1
- package/icons/heart-pulse.svg +2 -1
- package/icons/heartbreak-fill.svg +1 -1
- package/icons/heartbreak.svg +1 -1
- package/icons/house-add-fill.svg +5 -0
- package/icons/house-add.svg +4 -0
- package/icons/house-check-fill.svg +5 -0
- package/icons/house-check.svg +4 -0
- package/icons/house-dash-fill.svg +5 -0
- package/icons/house-dash.svg +4 -0
- package/icons/house-door-fill.svg +1 -1
- package/icons/house-door.svg +1 -1
- package/icons/house-down-fill.svg +5 -0
- package/icons/house-down.svg +4 -0
- package/icons/house-exclamation-fill.svg +5 -0
- package/icons/house-exclamation.svg +4 -0
- package/icons/house-fill.svg +2 -2
- package/icons/house-gear-fill.svg +5 -0
- package/icons/house-gear.svg +4 -0
- package/icons/house-lock-fill.svg +5 -0
- package/icons/house-lock.svg +4 -0
- package/icons/house-slash-fill.svg +5 -0
- package/icons/house-slash.svg +4 -0
- package/icons/house-up-fill.svg +5 -0
- package/icons/house-up.svg +4 -0
- package/icons/house-x-fill.svg +5 -0
- package/icons/house-x.svg +4 -0
- package/icons/house.svg +1 -2
- package/icons/houses-fill.svg +4 -0
- package/icons/houses.svg +3 -0
- package/icons/lungs-fill.svg +1 -1
- package/icons/nvidia.svg +3 -0
- package/icons/people-fill.svg +1 -3
- package/icons/people.svg +1 -1
- package/icons/person-add.svg +4 -0
- package/icons/person-check.svg +2 -2
- package/icons/person-dash.svg +2 -2
- package/icons/person-down.svg +4 -0
- package/icons/person-exclamation.svg +4 -0
- package/icons/person-fill-add.svg +4 -0
- package/icons/person-fill-check.svg +4 -0
- package/icons/person-fill-dash.svg +4 -0
- package/icons/person-fill-down.svg +4 -0
- package/icons/person-fill-exclamation.svg +4 -0
- package/icons/person-fill-gear.svg +3 -0
- package/icons/person-fill-lock.svg +3 -0
- package/icons/person-fill-slash.svg +3 -0
- package/icons/person-fill-up.svg +4 -0
- package/icons/person-fill-x.svg +4 -0
- package/icons/person-fill.svg +1 -1
- package/icons/person-gear.svg +3 -0
- package/icons/person-lock.svg +3 -0
- package/icons/person-slash.svg +3 -0
- package/icons/person-up.svg +4 -0
- package/icons/person-vcard-fill.svg +3 -0
- package/icons/person-vcard.svg +4 -0
- package/icons/person-x.svg +2 -2
- package/icons/person.svg +1 -1
- package/icons/prescription.svg +2 -2
- package/icons/prescription2.svg +1 -1
- package/icons/regex.svg +3 -0
- package/icons/rocket-fill.svg +4 -0
- package/icons/rocket-takeoff-fill.svg +4 -0
- package/icons/rocket-takeoff.svg +5 -0
- package/icons/rocket.svg +5 -0
- package/icons/scooter.svg +3 -0
- package/icons/sign-dead-end-fill.svg +4 -0
- package/icons/sign-dead-end.svg +4 -0
- package/icons/sign-do-not-enter-fill.svg +4 -0
- package/icons/sign-do-not-enter.svg +4 -0
- package/icons/sign-intersection-fill.svg +3 -0
- package/icons/sign-intersection-side-fill.svg +3 -0
- package/icons/sign-intersection-side.svg +4 -0
- package/icons/sign-intersection-t-fill.svg +3 -0
- package/icons/sign-intersection-t.svg +4 -0
- package/icons/sign-intersection-y-fill.svg +3 -0
- package/icons/sign-intersection-y.svg +4 -0
- package/icons/sign-intersection.svg +4 -0
- package/icons/sign-merge-left-fill.svg +3 -0
- package/icons/sign-merge-left.svg +4 -0
- package/icons/sign-merge-right-fill.svg +3 -0
- package/icons/sign-merge-right.svg +4 -0
- package/icons/sign-no-left-turn-fill.svg +4 -0
- package/icons/sign-no-left-turn.svg +3 -0
- package/icons/sign-no-parking-fill.svg +4 -0
- package/icons/sign-no-parking.svg +3 -0
- package/icons/sign-no-right-turn-fill.svg +4 -0
- package/icons/sign-no-right-turn.svg +3 -0
- package/icons/sign-railroad-fill.svg +5 -0
- package/icons/sign-railroad.svg +4 -0
- package/icons/sign-stop-fill.svg +1 -1
- package/icons/sign-stop-lights-fill.svg +1 -1
- package/icons/sign-turn-left-fill.svg +1 -1
- package/icons/sign-turn-right-fill.svg +1 -1
- package/icons/sign-turn-slight-left-fill.svg +1 -1
- package/icons/sign-turn-slight-right-fill.svg +1 -1
- package/icons/sign-yield-fill.svg +1 -1
- package/icons/sina-weibo.svg +4 -0
- package/icons/stripe.svg +3 -0
- package/icons/subscript.svg +3 -0
- package/icons/superscript.svg +3 -0
- package/icons/taxi-front-fill.svg +3 -0
- package/icons/taxi-front.svg +4 -0
- package/icons/tencent-qq.svg +4 -0
- package/icons/text-wrap.svg +3 -0
- package/icons/train-freight-front-fill.svg +1 -1
- package/icons/train-freight-front.svg +1 -1
- package/icons/train-front-fill.svg +1 -1
- package/icons/train-front.svg +1 -1
- package/icons/train-lightrail-front-fill.svg +1 -1
- package/icons/train-lightrail-front.svg +1 -1
- package/icons/trello.svg +3 -0
- package/icons/truck-front-fill.svg +1 -1
- package/icons/truck-front.svg +2 -3
- package/icons/virus.svg +1 -1
- package/icons/virus2.svg +1 -1
- package/icons/wikipedia.svg +3 -0
- package/js/dist/alert.js +14 -25
- package/js/dist/alert.js.map +1 -1
- package/js/dist/base-component.js +13 -30
- package/js/dist/base-component.js.map +1 -1
- package/js/dist/button.js +11 -15
- package/js/dist/button.js.map +1 -1
- package/js/dist/carousel.js +36 -120
- package/js/dist/carousel.js.map +1 -1
- package/js/dist/collapse.js +27 -88
- package/js/dist/collapse.js.map +1 -1
- package/js/dist/dependency/manipulator.js +72 -0
- package/js/dist/dependency/manipulator.js.map +1 -0
- package/js/dist/dom/data.js +6 -10
- package/js/dist/dom/data.js.map +1 -1
- package/js/dist/dom/event-handler.js +7 -52
- package/js/dist/dom/event-handler.js.map +1 -1
- package/js/dist/dom/manipulator.js +2 -15
- package/js/dist/dom/manipulator.js.map +1 -1
- package/js/dist/dom/selector-engine.js +2 -16
- package/js/dist/dom/selector-engine.js.map +1 -1
- package/js/dist/dropdown.js +52 -124
- package/js/dist/dropdown.js.map +1 -1
- package/js/dist/modal.js +40 -119
- package/js/dist/modal.js.map +1 -1
- package/js/dist/offcanvas.js +36 -89
- package/js/dist/offcanvas.js.map +1 -1
- package/js/dist/popover.js +15 -22
- package/js/dist/popover.js.map +1 -1
- package/js/dist/scrollspy-legacy.js +216 -0
- package/js/dist/scrollspy-legacy.js.map +1 -0
- package/js/dist/scrollspy.js +42 -80
- package/js/dist/scrollspy.js.map +1 -1
- package/js/dist/tab.js +40 -98
- package/js/dist/tab.js.map +1 -1
- package/js/dist/toast.js +30 -69
- package/js/dist/toast.js.map +1 -1
- package/js/dist/tooltip.js +74 -196
- package/js/dist/tooltip.js.map +1 -1
- package/js/dist/util/backdrop.js +13 -40
- package/js/dist/util/backdrop.js.map +1 -1
- package/js/dist/util/component-functions.js +5 -11
- package/js/dist/util/component-functions.js.map +1 -1
- package/js/dist/util/config.js +6 -18
- package/js/dist/util/config.js.map +1 -1
- package/js/dist/util/focustrap.js +16 -33
- package/js/dist/util/focustrap.js.map +1 -1
- package/js/dist/util/index.js +28 -75
- package/js/dist/util/index.js.map +1 -1
- package/js/dist/util/sanitizer.js +7 -17
- package/js/dist/util/sanitizer.js.map +1 -1
- package/js/dist/util/scrollbar.js +16 -43
- package/js/dist/util/scrollbar.js.map +1 -1
- package/js/dist/util/swipe.js +18 -40
- package/js/dist/util/swipe.js.map +1 -1
- package/js/dist/util/template-factory.js +13 -41
- package/js/dist/util/template-factory.js.map +1 -1
- package/js/src/alert.js +1 -1
- package/js/src/base-component.js +2 -2
- package/js/src/button.js +1 -1
- package/js/src/carousel.js +1 -1
- package/js/src/collapse.js +1 -1
- package/js/src/dependency/manipulator.js +80 -0
- package/js/src/dom/data.js +1 -1
- package/js/src/dom/event-handler.js +1 -1
- package/js/src/dom/manipulator.js +1 -1
- package/js/src/dom/selector-engine.js +1 -1
- package/js/src/dropdown.js +10 -3
- package/js/src/modal.js +3 -3
- package/js/src/offcanvas.js +1 -1
- package/js/src/popover.js +1 -1
- package/js/src/scrollspy-legacy.js +294 -0
- package/js/src/scrollspy.js +1 -1
- package/js/src/tab.js +2 -4
- package/js/src/toast.js +9 -4
- package/js/src/tooltip.js +27 -48
- package/js/src/util/backdrop.js +1 -1
- package/js/src/util/component-functions.js +1 -1
- package/js/src/util/config.js +1 -1
- package/js/src/util/focustrap.js +1 -1
- package/js/src/util/index.js +1 -1
- package/js/src/util/sanitizer.js +1 -1
- package/js/src/util/scrollbar.js +1 -1
- package/js/src/util/swipe.js +1 -1
- package/js/src/util/template-factory.js +1 -1
- package/legacy/dependency/manipulator.js +80 -0
- package/legacy/scrollspy-legacy.js +294 -0
- package/package.json +6 -6
- package/scss/_buttons.scss +8 -2
- package/scss/_carousel.scss +0 -3
- package/scss/_functions.scss +1 -1
- package/scss/_toasts.scss +2 -0
- package/scss/_variables.scss +1 -1
- package/scss/bootstrap-utilities.scss +3 -0
- package/scss/mixins/_banner.scss +1 -1
- package/scss/mixins/_table-variants.scss +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-component.js","sources":["../src/base-component.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.2.
|
|
1
|
+
{"version":3,"file":"base-component.js","sources":["../src/base-component.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.2.3): base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Data from './dom/data'\nimport { executeAfterTransition, getElement } from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Config from './util/config'\n\n/**\n * Constants\n */\n\nconst VERSION = '5.2.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"],"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;;EAOA;EACA;EACA;;EAEA,MAAMA,OAAO,GAAG,OAAO,CAAA;;EAEvB;EACA;EACA;;EAEA,MAAMC,aAAa,SAASC,MAAM,CAAC;EACjCC,EAAAA,WAAW,CAACC,OAAO,EAAEC,MAAM,EAAE;EAC3B,IAAA,KAAK,EAAE,CAAA;EAEPD,IAAAA,OAAO,GAAGE,gBAAU,CAACF,OAAO,CAAC,CAAA;MAC7B,IAAI,CAACA,OAAO,EAAE;EACZ,MAAA,OAAA;EACF,KAAA;MAEA,IAAI,CAACG,QAAQ,GAAGH,OAAO,CAAA;MACvB,IAAI,CAACI,OAAO,GAAG,IAAI,CAACC,UAAU,CAACJ,MAAM,CAAC,CAAA;EAEtCK,IAAAA,IAAI,CAACC,GAAG,CAAC,IAAI,CAACJ,QAAQ,EAAE,IAAI,CAACJ,WAAW,CAACS,QAAQ,EAAE,IAAI,CAAC,CAAA;EAC1D,GAAA;;EAEA;EACAC,EAAAA,OAAO,GAAG;EACRH,IAAAA,IAAI,CAACI,MAAM,CAAC,IAAI,CAACP,QAAQ,EAAE,IAAI,CAACJ,WAAW,CAACS,QAAQ,CAAC,CAAA;EACrDG,IAAAA,YAAY,CAACC,GAAG,CAAC,IAAI,CAACT,QAAQ,EAAE,IAAI,CAACJ,WAAW,CAACc,SAAS,CAAC,CAAA;MAE3D,KAAK,MAAMC,YAAY,IAAIC,MAAM,CAACC,mBAAmB,CAAC,IAAI,CAAC,EAAE;EAC3D,MAAA,IAAI,CAACF,YAAY,CAAC,GAAG,IAAI,CAAA;EAC3B,KAAA;EACF,GAAA;IAEAG,cAAc,CAACC,QAAQ,EAAElB,OAAO,EAAEmB,UAAU,GAAG,IAAI,EAAE;EACnDC,IAAAA,4BAAsB,CAACF,QAAQ,EAAElB,OAAO,EAAEmB,UAAU,CAAC,CAAA;EACvD,GAAA;IAEAd,UAAU,CAACJ,MAAM,EAAE;MACjBA,MAAM,GAAG,IAAI,CAACoB,eAAe,CAACpB,MAAM,EAAE,IAAI,CAACE,QAAQ,CAAC,CAAA;EACpDF,IAAAA,MAAM,GAAG,IAAI,CAACqB,iBAAiB,CAACrB,MAAM,CAAC,CAAA;EACvC,IAAA,IAAI,CAACsB,gBAAgB,CAACtB,MAAM,CAAC,CAAA;EAC7B,IAAA,OAAOA,MAAM,CAAA;EACf,GAAA;;EAEA;IACA,OAAOuB,WAAW,CAACxB,OAAO,EAAE;EAC1B,IAAA,OAAOM,IAAI,CAACmB,GAAG,CAACvB,gBAAU,CAACF,OAAO,CAAC,EAAE,IAAI,CAACQ,QAAQ,CAAC,CAAA;EACrD,GAAA;IAEA,OAAOkB,mBAAmB,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,CAAA;EACnG,GAAA;EAEA,EAAA,WAAWL,OAAO,GAAG;EACnB,IAAA,OAAOA,OAAO,CAAA;EAChB,GAAA;EAEA,EAAA,WAAWY,QAAQ,GAAG;EACpB,IAAA,OAAQ,CAAK,GAAA,EAAA,IAAI,CAACmB,IAAK,CAAC,CAAA,CAAA;EAC1B,GAAA;EAEA,EAAA,WAAWd,SAAS,GAAG;EACrB,IAAA,OAAQ,CAAG,CAAA,EAAA,IAAI,CAACL,QAAS,CAAC,CAAA,CAAA;EAC5B,GAAA;IAEA,OAAOoB,SAAS,CAACC,IAAI,EAAE;EACrB,IAAA,OAAQ,GAAEA,IAAK,CAAA,EAAE,IAAI,CAAChB,SAAU,CAAC,CAAA,CAAA;EACnC,GAAA;EACF;;;;;;;;"}
|
package/js/dist/button.js
CHANGED
|
@@ -4,17 +4,13 @@
|
|
|
4
4
|
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Button = factory(global.Index, global.EventHandler, global.BaseComponent));
|
|
5
5
|
})(this, (function (index, EventHandler, BaseComponent) { 'use strict';
|
|
6
6
|
|
|
7
|
-
const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
|
|
8
|
-
|
|
9
|
-
const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
|
|
10
|
-
const BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
|
|
11
|
-
|
|
12
7
|
/**
|
|
13
8
|
* --------------------------------------------------------------------------
|
|
14
|
-
* Bootstrap (v5.2.
|
|
9
|
+
* Bootstrap (v5.2.3): button.js
|
|
15
10
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
16
11
|
* --------------------------------------------------------------------------
|
|
17
12
|
*/
|
|
13
|
+
|
|
18
14
|
/**
|
|
19
15
|
* Constants
|
|
20
16
|
*/
|
|
@@ -26,45 +22,45 @@
|
|
|
26
22
|
const CLASS_NAME_ACTIVE = 'active';
|
|
27
23
|
const SELECTOR_DATA_TOGGLE = '[data-bs-toggle="button"]';
|
|
28
24
|
const EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`;
|
|
25
|
+
|
|
29
26
|
/**
|
|
30
27
|
* Class definition
|
|
31
28
|
*/
|
|
32
29
|
|
|
33
|
-
class Button extends
|
|
30
|
+
class Button extends BaseComponent {
|
|
34
31
|
// Getters
|
|
35
32
|
static get NAME() {
|
|
36
33
|
return NAME;
|
|
37
|
-
}
|
|
38
|
-
|
|
34
|
+
}
|
|
39
35
|
|
|
36
|
+
// Public
|
|
40
37
|
toggle() {
|
|
41
38
|
// Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method
|
|
42
39
|
this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE));
|
|
43
|
-
}
|
|
44
|
-
|
|
40
|
+
}
|
|
45
41
|
|
|
42
|
+
// Static
|
|
46
43
|
static jQueryInterface(config) {
|
|
47
44
|
return this.each(function () {
|
|
48
45
|
const data = Button.getOrCreateInstance(this);
|
|
49
|
-
|
|
50
46
|
if (config === 'toggle') {
|
|
51
47
|
data[config]();
|
|
52
48
|
}
|
|
53
49
|
});
|
|
54
50
|
}
|
|
55
|
-
|
|
56
51
|
}
|
|
52
|
+
|
|
57
53
|
/**
|
|
58
54
|
* Data API implementation
|
|
59
55
|
*/
|
|
60
56
|
|
|
61
|
-
|
|
62
|
-
EventHandler__default.default.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {
|
|
57
|
+
EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {
|
|
63
58
|
event.preventDefault();
|
|
64
59
|
const button = event.target.closest(SELECTOR_DATA_TOGGLE);
|
|
65
60
|
const data = Button.getOrCreateInstance(button);
|
|
66
61
|
data.toggle();
|
|
67
62
|
});
|
|
63
|
+
|
|
68
64
|
/**
|
|
69
65
|
* jQuery
|
|
70
66
|
*/
|
package/js/dist/button.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button.js","sources":["../src/button.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.2.
|
|
1
|
+
{"version":3,"file":"button.js","sources":["../src/button.js"],"sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.2.3): button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * Constants\n */\n\nconst NAME = 'button'\nconst DATA_KEY = 'bs.button'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst CLASS_NAME_ACTIVE = 'active'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"button\"]'\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\n/**\n * Class definition\n */\n\nclass Button extends BaseComponent {\n // Getters\n static get NAME() {\n return NAME\n }\n\n // Public\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE))\n }\n\n // Static\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Button.getOrCreateInstance(this)\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n}\n\n/**\n * Data API implementation\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {\n event.preventDefault()\n\n const button = event.target.closest(SELECTOR_DATA_TOGGLE)\n const data = Button.getOrCreateInstance(button)\n\n data.toggle()\n})\n\n/**\n * jQuery\n */\n\ndefineJQueryPlugin(Button)\n\nexport default Button\n"],"names":["NAME","DATA_KEY","EVENT_KEY","DATA_API_KEY","CLASS_NAME_ACTIVE","SELECTOR_DATA_TOGGLE","EVENT_CLICK_DATA_API","Button","BaseComponent","toggle","_element","setAttribute","classList","jQueryInterface","config","each","data","getOrCreateInstance","EventHandler","on","document","event","preventDefault","button","target","closest","defineJQueryPlugin"],"mappings":";;;;;;EAAA;EACA;EACA;EACA;EACA;EACA;;EAMA;EACA;EACA;;EAEA,MAAMA,IAAI,GAAG,QAAQ,CAAA;EACrB,MAAMC,QAAQ,GAAG,WAAW,CAAA;EAC5B,MAAMC,SAAS,GAAI,CAAGD,CAAAA,EAAAA,QAAS,CAAC,CAAA,CAAA;EAChC,MAAME,YAAY,GAAG,WAAW,CAAA;EAEhC,MAAMC,iBAAiB,GAAG,QAAQ,CAAA;EAClC,MAAMC,oBAAoB,GAAG,2BAA2B,CAAA;EACxD,MAAMC,oBAAoB,GAAI,CAAA,KAAA,EAAOJ,SAAU,CAAA,EAAEC,YAAa,CAAC,CAAA,CAAA;;EAE/D;EACA;EACA;;EAEA,MAAMI,MAAM,SAASC,aAAa,CAAC;EACjC;EACA,EAAA,WAAWR,IAAI,GAAG;EAChB,IAAA,OAAOA,IAAI,CAAA;EACb,GAAA;;EAEA;EACAS,EAAAA,MAAM,GAAG;EACP;EACA,IAAA,IAAI,CAACC,QAAQ,CAACC,YAAY,CAAC,cAAc,EAAE,IAAI,CAACD,QAAQ,CAACE,SAAS,CAACH,MAAM,CAACL,iBAAiB,CAAC,CAAC,CAAA;EAC/F,GAAA;;EAEA;IACA,OAAOS,eAAe,CAACC,MAAM,EAAE;EAC7B,IAAA,OAAO,IAAI,CAACC,IAAI,CAAC,YAAY;EAC3B,MAAA,MAAMC,IAAI,GAAGT,MAAM,CAACU,mBAAmB,CAAC,IAAI,CAAC,CAAA;QAE7C,IAAIH,MAAM,KAAK,QAAQ,EAAE;UACvBE,IAAI,CAACF,MAAM,CAAC,EAAE,CAAA;EAChB,OAAA;EACF,KAAC,CAAC,CAAA;EACJ,GAAA;EACF,CAAA;;EAEA;EACA;EACA;;EAEAI,YAAY,CAACC,EAAE,CAACC,QAAQ,EAAEd,oBAAoB,EAAED,oBAAoB,EAAEgB,KAAK,IAAI;IAC7EA,KAAK,CAACC,cAAc,EAAE,CAAA;IAEtB,MAAMC,MAAM,GAAGF,KAAK,CAACG,MAAM,CAACC,OAAO,CAACpB,oBAAoB,CAAC,CAAA;EACzD,EAAA,MAAMW,IAAI,GAAGT,MAAM,CAACU,mBAAmB,CAACM,MAAM,CAAC,CAAA;IAE/CP,IAAI,CAACP,MAAM,EAAE,CAAA;EACf,CAAC,CAAC,CAAA;;EAEF;EACA;EACA;;AAEAiB,0BAAkB,CAACnB,MAAM,CAAC;;;;;;;;"}
|
package/js/dist/carousel.js
CHANGED
|
@@ -4,20 +4,13 @@
|
|
|
4
4
|
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.Carousel = factory(global.Index, global.EventHandler, global.Manipulator, global.SelectorEngine, global.Swipe, global.BaseComponent));
|
|
5
5
|
})(this, (function (index, EventHandler, Manipulator, SelectorEngine, Swipe, BaseComponent) { 'use strict';
|
|
6
6
|
|
|
7
|
-
const _interopDefaultLegacy = e => e && typeof e === 'object' && 'default' in e ? e : { default: e };
|
|
8
|
-
|
|
9
|
-
const EventHandler__default = /*#__PURE__*/_interopDefaultLegacy(EventHandler);
|
|
10
|
-
const Manipulator__default = /*#__PURE__*/_interopDefaultLegacy(Manipulator);
|
|
11
|
-
const SelectorEngine__default = /*#__PURE__*/_interopDefaultLegacy(SelectorEngine);
|
|
12
|
-
const Swipe__default = /*#__PURE__*/_interopDefaultLegacy(Swipe);
|
|
13
|
-
const BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
|
|
14
|
-
|
|
15
7
|
/**
|
|
16
8
|
* --------------------------------------------------------------------------
|
|
17
|
-
* Bootstrap (v5.2.
|
|
9
|
+
* Bootstrap (v5.2.3): carousel.js
|
|
18
10
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
19
11
|
* --------------------------------------------------------------------------
|
|
20
12
|
*/
|
|
13
|
+
|
|
21
14
|
/**
|
|
22
15
|
* Constants
|
|
23
16
|
*/
|
|
@@ -77,11 +70,12 @@
|
|
|
77
70
|
touch: 'boolean',
|
|
78
71
|
wrap: 'boolean'
|
|
79
72
|
};
|
|
73
|
+
|
|
80
74
|
/**
|
|
81
75
|
* Class definition
|
|
82
76
|
*/
|
|
83
77
|
|
|
84
|
-
class Carousel extends
|
|
78
|
+
class Carousel extends BaseComponent {
|
|
85
79
|
constructor(element, config) {
|
|
86
80
|
super(element, config);
|
|
87
81
|
this._interval = null;
|
|
@@ -89,33 +83,28 @@
|
|
|
89
83
|
this._isSliding = false;
|
|
90
84
|
this.touchTimeout = null;
|
|
91
85
|
this._swipeHelper = null;
|
|
92
|
-
this._indicatorsElement =
|
|
93
|
-
|
|
86
|
+
this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element);
|
|
94
87
|
this._addEventListeners();
|
|
95
|
-
|
|
96
88
|
if (this._config.ride === CLASS_NAME_CAROUSEL) {
|
|
97
89
|
this.cycle();
|
|
98
90
|
}
|
|
99
|
-
}
|
|
100
|
-
|
|
91
|
+
}
|
|
101
92
|
|
|
93
|
+
// Getters
|
|
102
94
|
static get Default() {
|
|
103
95
|
return Default;
|
|
104
96
|
}
|
|
105
|
-
|
|
106
97
|
static get DefaultType() {
|
|
107
98
|
return DefaultType;
|
|
108
99
|
}
|
|
109
|
-
|
|
110
100
|
static get NAME() {
|
|
111
101
|
return NAME;
|
|
112
|
-
}
|
|
113
|
-
|
|
102
|
+
}
|
|
114
103
|
|
|
104
|
+
// Public
|
|
115
105
|
next() {
|
|
116
106
|
this._slide(ORDER_NEXT);
|
|
117
107
|
}
|
|
118
|
-
|
|
119
108
|
nextWhenVisible() {
|
|
120
109
|
// FIXME TODO use `document.visibilityState`
|
|
121
110
|
// Don't call next when the page isn't visible
|
|
@@ -124,101 +113,80 @@
|
|
|
124
113
|
this.next();
|
|
125
114
|
}
|
|
126
115
|
}
|
|
127
|
-
|
|
128
116
|
prev() {
|
|
129
117
|
this._slide(ORDER_PREV);
|
|
130
118
|
}
|
|
131
|
-
|
|
132
119
|
pause() {
|
|
133
120
|
if (this._isSliding) {
|
|
134
121
|
index.triggerTransitionEnd(this._element);
|
|
135
122
|
}
|
|
136
|
-
|
|
137
123
|
this._clearInterval();
|
|
138
124
|
}
|
|
139
|
-
|
|
140
125
|
cycle() {
|
|
141
126
|
this._clearInterval();
|
|
142
|
-
|
|
143
127
|
this._updateInterval();
|
|
144
|
-
|
|
145
128
|
this._interval = setInterval(() => this.nextWhenVisible(), this._config.interval);
|
|
146
129
|
}
|
|
147
|
-
|
|
148
130
|
_maybeEnableCycle() {
|
|
149
131
|
if (!this._config.ride) {
|
|
150
132
|
return;
|
|
151
133
|
}
|
|
152
|
-
|
|
153
134
|
if (this._isSliding) {
|
|
154
|
-
|
|
135
|
+
EventHandler.one(this._element, EVENT_SLID, () => this.cycle());
|
|
155
136
|
return;
|
|
156
137
|
}
|
|
157
|
-
|
|
158
138
|
this.cycle();
|
|
159
139
|
}
|
|
160
|
-
|
|
161
140
|
to(index) {
|
|
162
141
|
const items = this._getItems();
|
|
163
|
-
|
|
164
142
|
if (index > items.length - 1 || index < 0) {
|
|
165
143
|
return;
|
|
166
144
|
}
|
|
167
|
-
|
|
168
145
|
if (this._isSliding) {
|
|
169
|
-
|
|
146
|
+
EventHandler.one(this._element, EVENT_SLID, () => this.to(index));
|
|
170
147
|
return;
|
|
171
148
|
}
|
|
172
|
-
|
|
173
149
|
const activeIndex = this._getItemIndex(this._getActive());
|
|
174
|
-
|
|
175
150
|
if (activeIndex === index) {
|
|
176
151
|
return;
|
|
177
152
|
}
|
|
178
|
-
|
|
179
153
|
const order = index > activeIndex ? ORDER_NEXT : ORDER_PREV;
|
|
180
|
-
|
|
181
154
|
this._slide(order, items[index]);
|
|
182
155
|
}
|
|
183
|
-
|
|
184
156
|
dispose() {
|
|
185
157
|
if (this._swipeHelper) {
|
|
186
158
|
this._swipeHelper.dispose();
|
|
187
159
|
}
|
|
188
|
-
|
|
189
160
|
super.dispose();
|
|
190
|
-
}
|
|
191
|
-
|
|
161
|
+
}
|
|
192
162
|
|
|
163
|
+
// Private
|
|
193
164
|
_configAfterMerge(config) {
|
|
194
165
|
config.defaultInterval = config.interval;
|
|
195
166
|
return config;
|
|
196
167
|
}
|
|
197
|
-
|
|
198
168
|
_addEventListeners() {
|
|
199
169
|
if (this._config.keyboard) {
|
|
200
|
-
|
|
170
|
+
EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event));
|
|
201
171
|
}
|
|
202
|
-
|
|
203
172
|
if (this._config.pause === 'hover') {
|
|
204
|
-
|
|
205
|
-
|
|
173
|
+
EventHandler.on(this._element, EVENT_MOUSEENTER, () => this.pause());
|
|
174
|
+
EventHandler.on(this._element, EVENT_MOUSELEAVE, () => this._maybeEnableCycle());
|
|
206
175
|
}
|
|
207
|
-
|
|
208
|
-
if (this._config.touch && Swipe__default.default.isSupported()) {
|
|
176
|
+
if (this._config.touch && Swipe.isSupported()) {
|
|
209
177
|
this._addTouchEventListeners();
|
|
210
178
|
}
|
|
211
179
|
}
|
|
212
|
-
|
|
213
180
|
_addTouchEventListeners() {
|
|
214
|
-
for (const img of
|
|
215
|
-
|
|
181
|
+
for (const img of SelectorEngine.find(SELECTOR_ITEM_IMG, this._element)) {
|
|
182
|
+
EventHandler.on(img, EVENT_DRAG_START, event => event.preventDefault());
|
|
216
183
|
}
|
|
217
|
-
|
|
218
184
|
const endCallBack = () => {
|
|
219
185
|
if (this._config.pause !== 'hover') {
|
|
220
186
|
return;
|
|
221
|
-
}
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
// If it's a touch-enabled device, mouseenter/leave are fired as
|
|
222
190
|
// part of the mouse compatibility events on first tap - the carousel
|
|
223
191
|
// would stop cycling until user tapped out of it;
|
|
224
192
|
// here, we listen for touchend, explicitly pause the carousel
|
|
@@ -226,112 +194,85 @@
|
|
|
226
194
|
// is NOT fired) and after a timeout (to allow for mouse compatibility
|
|
227
195
|
// events to fire) we explicitly restart cycling
|
|
228
196
|
|
|
229
|
-
|
|
230
197
|
this.pause();
|
|
231
|
-
|
|
232
198
|
if (this.touchTimeout) {
|
|
233
199
|
clearTimeout(this.touchTimeout);
|
|
234
200
|
}
|
|
235
|
-
|
|
236
201
|
this.touchTimeout = setTimeout(() => this._maybeEnableCycle(), TOUCHEVENT_COMPAT_WAIT + this._config.interval);
|
|
237
202
|
};
|
|
238
|
-
|
|
239
203
|
const swipeConfig = {
|
|
240
204
|
leftCallback: () => this._slide(this._directionToOrder(DIRECTION_LEFT)),
|
|
241
205
|
rightCallback: () => this._slide(this._directionToOrder(DIRECTION_RIGHT)),
|
|
242
206
|
endCallback: endCallBack
|
|
243
207
|
};
|
|
244
|
-
this._swipeHelper = new
|
|
208
|
+
this._swipeHelper = new Swipe(this._element, swipeConfig);
|
|
245
209
|
}
|
|
246
|
-
|
|
247
210
|
_keydown(event) {
|
|
248
211
|
if (/input|textarea/i.test(event.target.tagName)) {
|
|
249
212
|
return;
|
|
250
213
|
}
|
|
251
|
-
|
|
252
214
|
const direction = KEY_TO_DIRECTION[event.key];
|
|
253
|
-
|
|
254
215
|
if (direction) {
|
|
255
216
|
event.preventDefault();
|
|
256
|
-
|
|
257
217
|
this._slide(this._directionToOrder(direction));
|
|
258
218
|
}
|
|
259
219
|
}
|
|
260
|
-
|
|
261
220
|
_getItemIndex(element) {
|
|
262
221
|
return this._getItems().indexOf(element);
|
|
263
222
|
}
|
|
264
|
-
|
|
265
223
|
_setActiveIndicatorElement(index) {
|
|
266
224
|
if (!this._indicatorsElement) {
|
|
267
225
|
return;
|
|
268
226
|
}
|
|
269
|
-
|
|
270
|
-
const activeIndicator = SelectorEngine__default.default.findOne(SELECTOR_ACTIVE, this._indicatorsElement);
|
|
227
|
+
const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement);
|
|
271
228
|
activeIndicator.classList.remove(CLASS_NAME_ACTIVE);
|
|
272
229
|
activeIndicator.removeAttribute('aria-current');
|
|
273
|
-
const newActiveIndicator =
|
|
274
|
-
|
|
230
|
+
const newActiveIndicator = SelectorEngine.findOne(`[data-bs-slide-to="${index}"]`, this._indicatorsElement);
|
|
275
231
|
if (newActiveIndicator) {
|
|
276
232
|
newActiveIndicator.classList.add(CLASS_NAME_ACTIVE);
|
|
277
233
|
newActiveIndicator.setAttribute('aria-current', 'true');
|
|
278
234
|
}
|
|
279
235
|
}
|
|
280
|
-
|
|
281
236
|
_updateInterval() {
|
|
282
237
|
const element = this._activeElement || this._getActive();
|
|
283
|
-
|
|
284
238
|
if (!element) {
|
|
285
239
|
return;
|
|
286
240
|
}
|
|
287
|
-
|
|
288
241
|
const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10);
|
|
289
242
|
this._config.interval = elementInterval || this._config.defaultInterval;
|
|
290
243
|
}
|
|
291
|
-
|
|
292
244
|
_slide(order, element = null) {
|
|
293
245
|
if (this._isSliding) {
|
|
294
246
|
return;
|
|
295
247
|
}
|
|
296
|
-
|
|
297
248
|
const activeElement = this._getActive();
|
|
298
|
-
|
|
299
249
|
const isNext = order === ORDER_NEXT;
|
|
300
250
|
const nextElement = element || index.getNextActiveElement(this._getItems(), activeElement, isNext, this._config.wrap);
|
|
301
|
-
|
|
302
251
|
if (nextElement === activeElement) {
|
|
303
252
|
return;
|
|
304
253
|
}
|
|
305
|
-
|
|
306
254
|
const nextElementIndex = this._getItemIndex(nextElement);
|
|
307
|
-
|
|
308
255
|
const triggerEvent = eventName => {
|
|
309
|
-
return
|
|
256
|
+
return EventHandler.trigger(this._element, eventName, {
|
|
310
257
|
relatedTarget: nextElement,
|
|
311
258
|
direction: this._orderToDirection(order),
|
|
312
259
|
from: this._getItemIndex(activeElement),
|
|
313
260
|
to: nextElementIndex
|
|
314
261
|
});
|
|
315
262
|
};
|
|
316
|
-
|
|
317
263
|
const slideEvent = triggerEvent(EVENT_SLIDE);
|
|
318
|
-
|
|
319
264
|
if (slideEvent.defaultPrevented) {
|
|
320
265
|
return;
|
|
321
266
|
}
|
|
322
|
-
|
|
323
267
|
if (!activeElement || !nextElement) {
|
|
324
268
|
// Some weirdness is happening, so we bail
|
|
325
269
|
// todo: change tests that use empty divs to avoid this check
|
|
326
270
|
return;
|
|
327
271
|
}
|
|
328
|
-
|
|
329
272
|
const isCycling = Boolean(this._interval);
|
|
330
273
|
this.pause();
|
|
331
274
|
this._isSliding = true;
|
|
332
|
-
|
|
333
275
|
this._setActiveIndicatorElement(nextElementIndex);
|
|
334
|
-
|
|
335
276
|
this._activeElement = nextElement;
|
|
336
277
|
const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END;
|
|
337
278
|
const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV;
|
|
@@ -339,7 +280,6 @@
|
|
|
339
280
|
index.reflow(nextElement);
|
|
340
281
|
activeElement.classList.add(directionalClassName);
|
|
341
282
|
nextElement.classList.add(directionalClassName);
|
|
342
|
-
|
|
343
283
|
const completeCallBack = () => {
|
|
344
284
|
nextElement.classList.remove(directionalClassName, orderClassName);
|
|
345
285
|
nextElement.classList.add(CLASS_NAME_ACTIVE);
|
|
@@ -347,113 +287,89 @@
|
|
|
347
287
|
this._isSliding = false;
|
|
348
288
|
triggerEvent(EVENT_SLID);
|
|
349
289
|
};
|
|
350
|
-
|
|
351
290
|
this._queueCallback(completeCallBack, activeElement, this._isAnimated());
|
|
352
|
-
|
|
353
291
|
if (isCycling) {
|
|
354
292
|
this.cycle();
|
|
355
293
|
}
|
|
356
294
|
}
|
|
357
|
-
|
|
358
295
|
_isAnimated() {
|
|
359
296
|
return this._element.classList.contains(CLASS_NAME_SLIDE);
|
|
360
297
|
}
|
|
361
|
-
|
|
362
298
|
_getActive() {
|
|
363
|
-
return
|
|
299
|
+
return SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element);
|
|
364
300
|
}
|
|
365
|
-
|
|
366
301
|
_getItems() {
|
|
367
|
-
return
|
|
302
|
+
return SelectorEngine.find(SELECTOR_ITEM, this._element);
|
|
368
303
|
}
|
|
369
|
-
|
|
370
304
|
_clearInterval() {
|
|
371
305
|
if (this._interval) {
|
|
372
306
|
clearInterval(this._interval);
|
|
373
307
|
this._interval = null;
|
|
374
308
|
}
|
|
375
309
|
}
|
|
376
|
-
|
|
377
310
|
_directionToOrder(direction) {
|
|
378
311
|
if (index.isRTL()) {
|
|
379
312
|
return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT;
|
|
380
313
|
}
|
|
381
|
-
|
|
382
314
|
return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV;
|
|
383
315
|
}
|
|
384
|
-
|
|
385
316
|
_orderToDirection(order) {
|
|
386
317
|
if (index.isRTL()) {
|
|
387
318
|
return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT;
|
|
388
319
|
}
|
|
389
|
-
|
|
390
320
|
return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT;
|
|
391
|
-
}
|
|
392
|
-
|
|
321
|
+
}
|
|
393
322
|
|
|
323
|
+
// Static
|
|
394
324
|
static jQueryInterface(config) {
|
|
395
325
|
return this.each(function () {
|
|
396
326
|
const data = Carousel.getOrCreateInstance(this, config);
|
|
397
|
-
|
|
398
327
|
if (typeof config === 'number') {
|
|
399
328
|
data.to(config);
|
|
400
329
|
return;
|
|
401
330
|
}
|
|
402
|
-
|
|
403
331
|
if (typeof config === 'string') {
|
|
404
332
|
if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {
|
|
405
333
|
throw new TypeError(`No method named "${config}"`);
|
|
406
334
|
}
|
|
407
|
-
|
|
408
335
|
data[config]();
|
|
409
336
|
}
|
|
410
337
|
});
|
|
411
338
|
}
|
|
412
|
-
|
|
413
339
|
}
|
|
340
|
+
|
|
414
341
|
/**
|
|
415
342
|
* Data API implementation
|
|
416
343
|
*/
|
|
417
344
|
|
|
418
|
-
|
|
419
|
-
EventHandler__default.default.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, function (event) {
|
|
345
|
+
EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, function (event) {
|
|
420
346
|
const target = index.getElementFromSelector(this);
|
|
421
|
-
|
|
422
347
|
if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {
|
|
423
348
|
return;
|
|
424
349
|
}
|
|
425
|
-
|
|
426
350
|
event.preventDefault();
|
|
427
351
|
const carousel = Carousel.getOrCreateInstance(target);
|
|
428
352
|
const slideIndex = this.getAttribute('data-bs-slide-to');
|
|
429
|
-
|
|
430
353
|
if (slideIndex) {
|
|
431
354
|
carousel.to(slideIndex);
|
|
432
|
-
|
|
433
355
|
carousel._maybeEnableCycle();
|
|
434
|
-
|
|
435
356
|
return;
|
|
436
357
|
}
|
|
437
|
-
|
|
438
|
-
if (Manipulator__default.default.getDataAttribute(this, 'slide') === 'next') {
|
|
358
|
+
if (Manipulator.getDataAttribute(this, 'slide') === 'next') {
|
|
439
359
|
carousel.next();
|
|
440
|
-
|
|
441
360
|
carousel._maybeEnableCycle();
|
|
442
|
-
|
|
443
361
|
return;
|
|
444
362
|
}
|
|
445
|
-
|
|
446
363
|
carousel.prev();
|
|
447
|
-
|
|
448
364
|
carousel._maybeEnableCycle();
|
|
449
365
|
});
|
|
450
|
-
|
|
451
|
-
const carousels =
|
|
452
|
-
|
|
366
|
+
EventHandler.on(window, EVENT_LOAD_DATA_API, () => {
|
|
367
|
+
const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE);
|
|
453
368
|
for (const carousel of carousels) {
|
|
454
369
|
Carousel.getOrCreateInstance(carousel);
|
|
455
370
|
}
|
|
456
371
|
});
|
|
372
|
+
|
|
457
373
|
/**
|
|
458
374
|
* jQuery
|
|
459
375
|
*/
|