@coreui/coreui 4.3.0-alpha.0 → 4.3.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 +2 -2
- 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 +2 -2
- package/dist/css/coreui-grid.rtl.css.map +1 -1
- package/dist/css/coreui-grid.rtl.min.css +2 -2
- package/dist/css/coreui-grid.rtl.min.css.map +1 -1
- package/dist/css/coreui-reboot.css +44 -149
- 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 +45 -150
- package/dist/css/coreui-reboot.rtl.css.map +1 -1
- package/dist/css/coreui-reboot.rtl.min.css +3 -3
- package/dist/css/coreui-reboot.rtl.min.css.map +1 -1
- package/dist/css/coreui-utilities.css +81 -366
- 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 +78 -363
- package/dist/css/coreui-utilities.rtl.css.map +1 -1
- package/dist/css/coreui-utilities.rtl.min.css +3 -3
- package/dist/css/coreui-utilities.rtl.min.css.map +1 -1
- package/dist/css/coreui.css +523 -1112
- 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 +537 -1140
- package/dist/css/coreui.rtl.css.map +1 -1
- package/dist/css/coreui.rtl.min.css +3 -3
- package/dist/css/coreui.rtl.min.css.map +1 -1
- package/dist/js/coreui.bundle.js +43 -47
- 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 +37 -35
- 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 +37 -35
- 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/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 +1 -1
- package/js/dist/offcanvas.js +1 -1
- package/js/dist/popover.js +1 -1
- package/js/dist/scrollspy.js +3 -3
- package/js/dist/scrollspy.js.map +1 -1
- package/js/dist/sidebar.js +1 -1
- package/js/dist/tab.js +12 -4
- package/js/dist/tab.js.map +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 +23 -29
- package/js/dist/util/sanitizer.js.map +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/src/base-component.js +1 -1
- package/js/src/scrollspy.js +2 -2
- package/js/src/tab.js +13 -3
- package/js/src/util/sanitizer.js +36 -41
- package/package.json +35 -47
- package/scss/_accordion.scss +0 -9
- package/scss/_alert.scss +5 -5
- package/scss/_button-group.scss +3 -3
- package/scss/_buttons.scss +0 -22
- package/scss/_card.scss +3 -3
- package/scss/_carousel.scss +8 -24
- package/scss/_close.scss +1 -13
- package/scss/_dropdown.scss +4 -4
- package/scss/_functions.scss +22 -6
- package/scss/_list-group.scss +2 -11
- package/scss/_maps.scss +0 -123
- package/scss/_mixins.scss +1 -1
- package/scss/_nav.scss +2 -17
- package/scss/_navbar.scss +1 -10
- package/scss/_reboot.scss +4 -4
- package/scss/_root.scss +11 -93
- package/scss/_tooltip.scss +1 -1
- package/scss/_type.scss +1 -1
- package/scss/_utilities.scss +0 -16
- package/scss/_variables.scss +162 -115
- package/scss/coreui-grid.rtl.scss +1 -1
- package/scss/coreui-grid.scss +0 -1
- package/scss/coreui-reboot.rtl.scss +1 -1
- package/scss/coreui-reboot.scss +0 -1
- package/scss/coreui-utilities.rtl.scss +1 -1
- package/scss/coreui-utilities.scss +0 -1
- package/scss/coreui.scss +0 -1
- package/scss/forms/_floating-labels.scss +3 -2
- package/scss/forms/_form-check.scss +12 -20
- package/scss/forms/_form-control.scss +14 -11
- package/scss/forms/_form-range.scss +11 -11
- package/scss/forms/_form-select.scss +9 -16
- package/scss/forms/_form-text.scss +1 -1
- package/scss/forms/_labels.scss +2 -2
- package/scss/helpers/_color-bg.scss +1 -14
- package/scss/helpers/_vr.scss +1 -1
- package/scss/mixins/_banner.scss +1 -1
- package/scss/mixins/_caret.scss +3 -3
- package/scss/mixins/_list-group.scss +0 -1
- package/scss/mixins/_utilities.scss +15 -35
- package/scss/sidebar/_sidebar.scss +2 -10
- package/js/index.esm.js +0 -21
- package/js/index.umd.js +0 -38
- package/scss/_variables-dark.scss +0 -169
- package/scss/mixins/_color-mode.scss +0 -21
package/dist/js/coreui.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* CoreUI v4.3.0
|
|
2
|
+
* CoreUI v4.3.0 (https://coreui.io)
|
|
3
3
|
* Copyright 2023 The CoreUI Team (https://github.com/orgs/coreui/people)
|
|
4
4
|
* Licensed under MIT (https://github.com/coreui/coreui/blob/main/LICENSE)
|
|
5
5
|
*/
|
|
@@ -685,7 +685,7 @@
|
|
|
685
685
|
* Constants
|
|
686
686
|
*/
|
|
687
687
|
|
|
688
|
-
const VERSION = '4.3.0
|
|
688
|
+
const VERSION = '4.3.0';
|
|
689
689
|
|
|
690
690
|
/**
|
|
691
691
|
* Class definition
|
|
@@ -3252,34 +3252,6 @@
|
|
|
3252
3252
|
* --------------------------------------------------------------------------
|
|
3253
3253
|
*/
|
|
3254
3254
|
|
|
3255
|
-
const uriAttributes = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']);
|
|
3256
|
-
|
|
3257
|
-
/**
|
|
3258
|
-
* A pattern that recognizes a commonly useful subset of URLs that are safe.
|
|
3259
|
-
*
|
|
3260
|
-
* Shout-out to Angular https://github.com/angular/angular/blob/12.2.x/packages/core/src/sanitization/url_sanitizer.ts
|
|
3261
|
-
*/
|
|
3262
|
-
const SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i;
|
|
3263
|
-
|
|
3264
|
-
/**
|
|
3265
|
-
* A pattern that matches safe data URLs. Only matches image, video and audio types.
|
|
3266
|
-
*
|
|
3267
|
-
* Shout-out to Angular https://github.com/angular/angular/blob/12.2.x/packages/core/src/sanitization/url_sanitizer.ts
|
|
3268
|
-
*/
|
|
3269
|
-
const DATA_URL_PATTERN = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i;
|
|
3270
|
-
const allowedAttribute = (attribute, allowedAttributeList) => {
|
|
3271
|
-
const attributeName = attribute.nodeName.toLowerCase();
|
|
3272
|
-
if (allowedAttributeList.includes(attributeName)) {
|
|
3273
|
-
if (uriAttributes.has(attributeName)) {
|
|
3274
|
-
return Boolean(SAFE_URL_PATTERN.test(attribute.nodeValue) || DATA_URL_PATTERN.test(attribute.nodeValue));
|
|
3275
|
-
}
|
|
3276
|
-
return true;
|
|
3277
|
-
}
|
|
3278
|
-
|
|
3279
|
-
// Check if a regular expression validates the attribute.
|
|
3280
|
-
return allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp).some(regex => regex.test(attributeName));
|
|
3281
|
-
};
|
|
3282
|
-
|
|
3283
3255
|
// js-docs-start allow-list
|
|
3284
3256
|
const ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i;
|
|
3285
3257
|
const DefaultAllowlist = {
|
|
@@ -3317,6 +3289,28 @@
|
|
|
3317
3289
|
};
|
|
3318
3290
|
// js-docs-end allow-list
|
|
3319
3291
|
|
|
3292
|
+
const uriAttributes = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']);
|
|
3293
|
+
|
|
3294
|
+
/**
|
|
3295
|
+
* A pattern that recognizes URLs that are safe wrt. XSS in URL navigation
|
|
3296
|
+
* contexts.
|
|
3297
|
+
*
|
|
3298
|
+
* Shout-out to Angular https://github.com/angular/angular/blob/15.2.8/packages/core/src/sanitization/url_sanitizer.ts#L38
|
|
3299
|
+
*/
|
|
3300
|
+
// eslint-disable-next-line unicorn/better-regex
|
|
3301
|
+
const SAFE_URL_PATTERN = /^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i;
|
|
3302
|
+
const allowedAttribute = (attribute, allowedAttributeList) => {
|
|
3303
|
+
const attributeName = attribute.nodeName.toLowerCase();
|
|
3304
|
+
if (allowedAttributeList.includes(attributeName)) {
|
|
3305
|
+
if (uriAttributes.has(attributeName)) {
|
|
3306
|
+
return Boolean(SAFE_URL_PATTERN.test(attribute.nodeValue));
|
|
3307
|
+
}
|
|
3308
|
+
return true;
|
|
3309
|
+
}
|
|
3310
|
+
|
|
3311
|
+
// Check if a regular expression validates the attribute.
|
|
3312
|
+
return allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp).some(regex => regex.test(attributeName));
|
|
3313
|
+
};
|
|
3320
3314
|
function sanitizeHtml(unsafeHtml, allowList, sanitizeFunction) {
|
|
3321
3315
|
if (!unsafeHtml.length) {
|
|
3322
3316
|
return unsafeHtml;
|
|
@@ -4271,11 +4265,11 @@
|
|
|
4271
4265
|
if (!anchor.hash || isDisabled(anchor)) {
|
|
4272
4266
|
continue;
|
|
4273
4267
|
}
|
|
4274
|
-
const observableSection = SelectorEngine.findOne(anchor.hash, this._element);
|
|
4268
|
+
const observableSection = SelectorEngine.findOne(decodeURI(anchor.hash), this._element);
|
|
4275
4269
|
|
|
4276
4270
|
// ensure that the observableSection exists & is visible
|
|
4277
4271
|
if (isVisible(observableSection)) {
|
|
4278
|
-
this._targetLinks.set(anchor.hash, anchor);
|
|
4272
|
+
this._targetLinks.set(decodeURI(anchor.hash), anchor);
|
|
4279
4273
|
this._observableSections.set(anchor.hash, observableSection);
|
|
4280
4274
|
}
|
|
4281
4275
|
}
|
|
@@ -4655,6 +4649,8 @@
|
|
|
4655
4649
|
const ARROW_RIGHT_KEY = 'ArrowRight';
|
|
4656
4650
|
const ARROW_UP_KEY = 'ArrowUp';
|
|
4657
4651
|
const ARROW_DOWN_KEY = 'ArrowDown';
|
|
4652
|
+
const HOME_KEY = 'Home';
|
|
4653
|
+
const END_KEY = 'End';
|
|
4658
4654
|
const CLASS_NAME_ACTIVE = 'active';
|
|
4659
4655
|
const CLASS_NAME_FADE$1 = 'fade';
|
|
4660
4656
|
const CLASS_NAME_SHOW$1 = 'show';
|
|
@@ -4761,13 +4757,19 @@
|
|
|
4761
4757
|
this._queueCallback(complete, element, element.classList.contains(CLASS_NAME_FADE$1));
|
|
4762
4758
|
}
|
|
4763
4759
|
_keydown(event) {
|
|
4764
|
-
if (![ARROW_LEFT_KEY, ARROW_RIGHT_KEY, ARROW_UP_KEY, ARROW_DOWN_KEY].includes(event.key)) {
|
|
4760
|
+
if (![ARROW_LEFT_KEY, ARROW_RIGHT_KEY, ARROW_UP_KEY, ARROW_DOWN_KEY, HOME_KEY, END_KEY].includes(event.key)) {
|
|
4765
4761
|
return;
|
|
4766
4762
|
}
|
|
4767
4763
|
event.stopPropagation(); // stopPropagation/preventDefault both added to support up/down keys without scrolling the page
|
|
4768
4764
|
event.preventDefault();
|
|
4769
|
-
const
|
|
4770
|
-
|
|
4765
|
+
const children = this._getChildren().filter(element => !isDisabled(element));
|
|
4766
|
+
let nextActiveElement;
|
|
4767
|
+
if ([HOME_KEY, END_KEY].includes(event.key)) {
|
|
4768
|
+
nextActiveElement = children[event.key === HOME_KEY ? 0 : children.length - 1];
|
|
4769
|
+
} else {
|
|
4770
|
+
const isNext = [ARROW_RIGHT_KEY, ARROW_DOWN_KEY].includes(event.key);
|
|
4771
|
+
nextActiveElement = getNextActiveElement(children, event.target, isNext, true);
|
|
4772
|
+
}
|
|
4771
4773
|
if (nextActiveElement) {
|
|
4772
4774
|
nextActiveElement.focus({
|
|
4773
4775
|
preventScroll: true
|