@openeuropa/bcl-bootstrap 0.25.1 → 0.26.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/apple.svg +2 -2
- package/icons/boombox-fill.svg +2 -2
- package/icons/cup-fill.svg +1 -1
- package/icons/cup.svg +1 -1
- package/js/dist/alert.js +3 -12
- package/js/dist/alert.js.map +1 -1
- package/js/dist/base-component.js +32 -18
- package/js/dist/base-component.js.map +1 -1
- package/js/dist/button.js +3 -12
- package/js/dist/button.js.map +1 -1
- package/js/dist/carousel.js +207 -307
- package/js/dist/carousel.js.map +1 -1
- package/js/dist/collapse.js +57 -88
- package/js/dist/collapse.js.map +1 -1
- package/js/dist/dom/data.js +1 -3
- package/js/dist/dom/data.js.map +1 -1
- package/js/dist/dom/event-handler.js +87 -106
- package/js/dist/dom/event-handler.js.map +1 -1
- package/js/dist/dom/manipulator.js +21 -25
- package/js/dist/dom/manipulator.js.map +1 -1
- package/js/dist/dom/selector-engine.js +11 -10
- package/js/dist/dom/selector-engine.js.map +1 -1
- package/js/dist/dropdown.js +83 -115
- package/js/dist/dropdown.js.map +1 -1
- package/js/dist/modal.js +95 -152
- package/js/dist/modal.js.map +1 -1
- package/js/dist/offcanvas.js +75 -58
- package/js/dist/offcanvas.js.map +1 -1
- package/js/dist/popover.js +29 -56
- package/js/dist/popover.js.map +1 -1
- package/js/dist/scrollspy.js +176 -125
- package/js/dist/scrollspy.js.map +1 -1
- package/js/dist/tab.js +207 -92
- package/js/dist/tab.js.map +1 -1
- package/js/dist/toast.js +23 -37
- package/js/dist/toast.js.map +1 -1
- package/js/dist/tooltip.js +259 -348
- package/js/dist/tooltip.js.map +1 -1
- package/js/dist/util/backdrop.js +62 -39
- package/js/dist/util/backdrop.js.map +1 -1
- package/js/dist/util/component-functions.js +1 -1
- package/js/dist/util/component-functions.js.map +1 -1
- package/js/dist/util/config.js +75 -0
- package/js/dist/util/config.js.map +1 -0
- package/js/dist/util/focustrap.js +41 -34
- package/js/dist/util/focustrap.js.map +1 -1
- package/js/dist/util/index.js +56 -52
- package/js/dist/util/index.js.map +1 -1
- package/js/dist/util/sanitizer.js +12 -19
- package/js/dist/util/sanitizer.js.map +1 -1
- package/js/dist/util/scrollbar.js +49 -34
- package/js/dist/util/scrollbar.js.map +1 -1
- package/js/dist/util/swipe.js +151 -0
- package/js/dist/util/swipe.js.map +1 -0
- package/js/dist/util/template-factory.js +173 -0
- package/js/dist/util/template-factory.js.map +1 -0
- package/js/src/alert.js +3 -15
- package/js/src/base-component.js +28 -18
- package/js/src/button.js +3 -17
- package/js/src/carousel.js +203 -319
- package/js/src/collapse.js +61 -94
- package/js/src/dom/data.js +1 -3
- package/js/src/dom/event-handler.js +80 -108
- package/js/src/dom/manipulator.js +22 -31
- package/js/src/dom/selector-engine.js +10 -19
- package/js/src/dropdown.js +84 -138
- package/js/src/modal.js +94 -158
- package/js/src/offcanvas.js +72 -61
- package/js/src/popover.js +31 -62
- package/js/src/scrollspy.js +166 -171
- package/js/src/tab.js +193 -110
- package/js/src/toast.js +19 -41
- package/js/src/tooltip.js +259 -371
- package/js/src/util/backdrop.js +55 -36
- package/js/src/util/component-functions.js +1 -1
- package/js/src/util/config.js +66 -0
- package/js/src/util/focustrap.js +38 -28
- package/js/src/util/index.js +67 -64
- package/js/src/util/sanitizer.js +11 -19
- package/js/src/util/scrollbar.js +47 -30
- package/js/src/util/swipe.js +146 -0
- package/js/src/util/template-factory.js +160 -0
- package/package.json +4 -4
- package/scss/_accordion.scss +52 -24
- package/scss/_alert.scss +18 -4
- package/scss/_badge.scss +14 -5
- package/scss/_breadcrumb.scss +22 -10
- package/scss/_button-group.scss +3 -0
- package/scss/_buttons.scss +97 -22
- package/scss/_card.scss +55 -37
- package/scss/_close.scss +1 -1
- package/scss/_containers.scss +1 -1
- package/scss/_dropdown.scss +83 -75
- package/scss/_functions.scss +7 -7
- package/scss/_grid.scss +3 -3
- package/scss/_helpers.scss +1 -0
- package/scss/_list-group.scss +44 -27
- package/scss/_maps.scss +54 -0
- package/scss/_modal.scss +71 -43
- package/scss/_nav.scss +53 -20
- package/scss/_navbar.scss +91 -150
- package/scss/_offcanvas.scss +119 -59
- package/scss/_pagination.scss +66 -21
- package/scss/_placeholders.scss +1 -1
- package/scss/_popover.scss +90 -52
- package/scss/_progress.scss +20 -9
- package/scss/_reboot.scss +25 -40
- package/scss/_root.scss +40 -21
- package/scss/_spinners.scss +38 -22
- package/scss/_tables.scss +32 -23
- package/scss/_toasts.scss +35 -16
- package/scss/_tooltip.scss +61 -56
- package/scss/_type.scss +2 -0
- package/scss/_utilities.scss +43 -26
- package/scss/_variables.scss +113 -121
- package/scss/bootstrap-grid.scss +3 -6
- package/scss/bootstrap-reboot.scss +3 -7
- package/scss/bootstrap-utilities.scss +3 -6
- package/scss/bootstrap.scss +4 -6
- package/scss/forms/_floating-labels.scss +14 -3
- package/scss/forms/_form-check.scss +28 -5
- package/scss/forms/_form-control.scss +12 -37
- package/scss/forms/_form-select.scss +0 -1
- package/scss/forms/_input-group.scss +15 -7
- package/scss/helpers/_color-bg.scss +10 -0
- package/scss/helpers/_colored-links.scss +2 -2
- package/scss/helpers/_position.scss +7 -1
- package/scss/helpers/_ratio.scss +2 -2
- package/scss/helpers/_vr.scss +1 -1
- package/scss/mixins/_alert.scss +7 -3
- package/scss/mixins/_banner.scss +9 -0
- package/scss/mixins/_breakpoints.scss +8 -8
- package/scss/mixins/_buttons.scss +32 -95
- package/scss/mixins/_container.scss +4 -2
- package/scss/mixins/_forms.scss +8 -0
- package/scss/mixins/_gradients.scss +1 -1
- package/scss/mixins/_grid.scss +12 -12
- package/scss/mixins/_pagination.scss +4 -25
- package/scss/mixins/_reset-text.scss +1 -1
- package/scss/mixins/_table-variants.scss +12 -9
- package/scss/mixins/_utilities.scss +12 -4
package/js/src/base-component.js
CHANGED
|
@@ -1,52 +1,62 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* --------------------------------------------------------------------------
|
|
3
|
-
* Bootstrap (v5.
|
|
3
|
+
* Bootstrap (v5.2.0): base-component.js
|
|
4
4
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
5
5
|
* --------------------------------------------------------------------------
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
8
|
import Data from './dom/data'
|
|
9
|
-
import {
|
|
10
|
-
executeAfterTransition,
|
|
11
|
-
getElement
|
|
12
|
-
} from './util/index'
|
|
9
|
+
import { executeAfterTransition, getElement } from './util/index'
|
|
13
10
|
import EventHandler from './dom/event-handler'
|
|
11
|
+
import Config from './util/config'
|
|
14
12
|
|
|
15
13
|
/**
|
|
16
|
-
* ------------------------------------------------------------------------
|
|
17
14
|
* Constants
|
|
18
|
-
* ------------------------------------------------------------------------
|
|
19
15
|
*/
|
|
20
16
|
|
|
21
|
-
const VERSION = '5.
|
|
17
|
+
const VERSION = '5.2.0'
|
|
22
18
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
19
|
+
/**
|
|
20
|
+
* Class definition
|
|
21
|
+
*/
|
|
26
22
|
|
|
23
|
+
class BaseComponent extends Config {
|
|
24
|
+
constructor(element, config) {
|
|
25
|
+
super()
|
|
26
|
+
|
|
27
|
+
element = getElement(element)
|
|
27
28
|
if (!element) {
|
|
28
29
|
return
|
|
29
30
|
}
|
|
30
31
|
|
|
31
32
|
this._element = element
|
|
33
|
+
this._config = this._getConfig(config)
|
|
34
|
+
|
|
32
35
|
Data.set(this._element, this.constructor.DATA_KEY, this)
|
|
33
36
|
}
|
|
34
37
|
|
|
38
|
+
// Public
|
|
35
39
|
dispose() {
|
|
36
40
|
Data.remove(this._element, this.constructor.DATA_KEY)
|
|
37
41
|
EventHandler.off(this._element, this.constructor.EVENT_KEY)
|
|
38
42
|
|
|
39
|
-
Object.getOwnPropertyNames(this)
|
|
43
|
+
for (const propertyName of Object.getOwnPropertyNames(this)) {
|
|
40
44
|
this[propertyName] = null
|
|
41
|
-
}
|
|
45
|
+
}
|
|
42
46
|
}
|
|
43
47
|
|
|
44
48
|
_queueCallback(callback, element, isAnimated = true) {
|
|
45
49
|
executeAfterTransition(callback, element, isAnimated)
|
|
46
50
|
}
|
|
47
51
|
|
|
48
|
-
|
|
52
|
+
_getConfig(config) {
|
|
53
|
+
config = this._mergeConfigObj(config, this._element)
|
|
54
|
+
config = this._configAfterMerge(config)
|
|
55
|
+
this._typeCheckConfig(config)
|
|
56
|
+
return config
|
|
57
|
+
}
|
|
49
58
|
|
|
59
|
+
// Static
|
|
50
60
|
static getInstance(element) {
|
|
51
61
|
return Data.get(getElement(element), this.DATA_KEY)
|
|
52
62
|
}
|
|
@@ -59,10 +69,6 @@ class BaseComponent {
|
|
|
59
69
|
return VERSION
|
|
60
70
|
}
|
|
61
71
|
|
|
62
|
-
static get NAME() {
|
|
63
|
-
throw new Error('You have to implement the static method "NAME", for each component!')
|
|
64
|
-
}
|
|
65
|
-
|
|
66
72
|
static get DATA_KEY() {
|
|
67
73
|
return `bs.${this.NAME}`
|
|
68
74
|
}
|
|
@@ -70,6 +76,10 @@ class BaseComponent {
|
|
|
70
76
|
static get EVENT_KEY() {
|
|
71
77
|
return `.${this.DATA_KEY}`
|
|
72
78
|
}
|
|
79
|
+
|
|
80
|
+
static eventName(name) {
|
|
81
|
+
return `${name}${this.EVENT_KEY}`
|
|
82
|
+
}
|
|
73
83
|
}
|
|
74
84
|
|
|
75
85
|
export default BaseComponent
|
package/js/src/button.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* --------------------------------------------------------------------------
|
|
3
|
-
* Bootstrap (v5.
|
|
3
|
+
* Bootstrap (v5.2.0): button.js
|
|
4
4
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
|
5
5
|
* --------------------------------------------------------------------------
|
|
6
6
|
*/
|
|
@@ -10,9 +10,7 @@ import EventHandler from './dom/event-handler'
|
|
|
10
10
|
import BaseComponent from './base-component'
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
|
-
* ------------------------------------------------------------------------
|
|
14
13
|
* Constants
|
|
15
|
-
* ------------------------------------------------------------------------
|
|
16
14
|
*/
|
|
17
15
|
|
|
18
16
|
const NAME = 'button'
|
|
@@ -21,33 +19,26 @@ const EVENT_KEY = `.${DATA_KEY}`
|
|
|
21
19
|
const DATA_API_KEY = '.data-api'
|
|
22
20
|
|
|
23
21
|
const CLASS_NAME_ACTIVE = 'active'
|
|
24
|
-
|
|
25
22
|
const SELECTOR_DATA_TOGGLE = '[data-bs-toggle="button"]'
|
|
26
|
-
|
|
27
23
|
const EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`
|
|
28
24
|
|
|
29
25
|
/**
|
|
30
|
-
*
|
|
31
|
-
* Class Definition
|
|
32
|
-
* ------------------------------------------------------------------------
|
|
26
|
+
* Class definition
|
|
33
27
|
*/
|
|
34
28
|
|
|
35
29
|
class Button extends BaseComponent {
|
|
36
30
|
// Getters
|
|
37
|
-
|
|
38
31
|
static get NAME() {
|
|
39
32
|
return NAME
|
|
40
33
|
}
|
|
41
34
|
|
|
42
35
|
// Public
|
|
43
|
-
|
|
44
36
|
toggle() {
|
|
45
37
|
// Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method
|
|
46
38
|
this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE))
|
|
47
39
|
}
|
|
48
40
|
|
|
49
41
|
// Static
|
|
50
|
-
|
|
51
42
|
static jQueryInterface(config) {
|
|
52
43
|
return this.each(function () {
|
|
53
44
|
const data = Button.getOrCreateInstance(this)
|
|
@@ -60,9 +51,7 @@ class Button extends BaseComponent {
|
|
|
60
51
|
}
|
|
61
52
|
|
|
62
53
|
/**
|
|
63
|
-
*
|
|
64
|
-
* Data Api implementation
|
|
65
|
-
* ------------------------------------------------------------------------
|
|
54
|
+
* Data API implementation
|
|
66
55
|
*/
|
|
67
56
|
|
|
68
57
|
EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {
|
|
@@ -75,10 +64,7 @@ EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {
|
|
|
75
64
|
})
|
|
76
65
|
|
|
77
66
|
/**
|
|
78
|
-
* ------------------------------------------------------------------------
|
|
79
67
|
* jQuery
|
|
80
|
-
* ------------------------------------------------------------------------
|
|
81
|
-
* add .Button to jQuery only if jQuery is present
|
|
82
68
|
*/
|
|
83
69
|
|
|
84
70
|
defineJQueryPlugin(Button)
|