administrate-bootstrap-theme 1.0.4 → 1.0.6
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.
- checksums.yaml +4 -4
- data/README.md +1 -0
- data/app/assets/javascripts/administrate-bootstrap-theme/bootstrap.bundle.js +174 -142
- data/app/assets/stylesheets/administrate-bootstrap-theme/bootstrap/_functions.scss +8 -2
- data/app/assets/stylesheets/administrate-bootstrap-theme/bootstrap/_reboot.scss +1 -1
- data/app/assets/stylesheets/administrate-bootstrap-theme/bootstrap/_root.scss +2 -1
- data/app/assets/stylesheets/administrate-bootstrap-theme/bootstrap/_tables.scss +8 -4
- data/app/assets/stylesheets/administrate-bootstrap-theme/bootstrap/_variables.scss +25 -13
- data/app/assets/stylesheets/administrate-bootstrap-theme/bootstrap/bootstrap-grid.scss +3 -1
- data/app/assets/stylesheets/administrate-bootstrap-theme/bootstrap/bootstrap-reboot.scss +2 -4
- data/app/assets/stylesheets/administrate-bootstrap-theme/bootstrap/bootstrap-utilities.scss +1 -1
- data/app/assets/stylesheets/administrate-bootstrap-theme/bootstrap/bootstrap.scss +1 -1
- data/app/assets/stylesheets/administrate-bootstrap-theme/bootstrap/forms/_form-select.scss +2 -0
- data/app/assets/stylesheets/administrate-bootstrap-theme/bootstrap/mixins/_grid.scss +4 -3
- data/app/assets/stylesheets/administrate-bootstrap-theme/bootstrap/mixins/_visually-hidden.scss +1 -1
- data/lib/administrate-bootstrap-theme/version.rb +3 -2
- data/package.json +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: aaa5f115d75e691b8a58fc48fae125239e19afb54a0666ed1bcb278d6c215db5
|
4
|
+
data.tar.gz: eed5a7db1ef5bf99693f472c6f3df0e305f491c71ce9f7e5ddeabb5b382eaee6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e181760902fa5b61dee3329b80f40ae5186a657b0763c97b954315e13af6e80cf67d88b6f50f0c7a11ade4cf6bed276c043614b90b7fe3f855198b826e95e4db
|
7
|
+
data.tar.gz: ad94e6464663098d6cb2df4b5ba393cd798e0fff3b4b70b6375c334343497aaa87fa919ed474b7ddb873bb8c2736367e2b0185fc7b3ab00467c265090b72a78b
|
data/README.md
CHANGED
@@ -3,6 +3,7 @@
|
|
3
3
|
[](https://rubygems.org/gems/administrate-bootstrap-theme)
|
4
4
|
[](https://github.com/blocknotes/administrate-bootstrap-theme/actions/workflows/linters.yml)
|
5
5
|
[](https://github.com/blocknotes/administrate-bootstrap-theme/actions/workflows/specs.yml)
|
6
|
+
[](https://github.com/blocknotes/administrate-bootstrap-theme/actions/workflows/codeql-analysis.yml)
|
6
7
|
|
7
8
|
A Bootstrap 5 theme for [Administrate](https://github.com/thoughtbot/administrate).
|
8
9
|
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Bootstrap v5.1.
|
2
|
+
* Bootstrap v5.1.3 (https://getbootstrap.com/)
|
3
3
|
* Copyright 2011-2021 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
|
4
4
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
5
5
|
*/
|
@@ -7,11 +7,11 @@
|
|
7
7
|
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
|
8
8
|
typeof define === 'function' && define.amd ? define(factory) :
|
9
9
|
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.bootstrap = factory());
|
10
|
-
}(this, (function () { 'use strict';
|
10
|
+
})(this, (function () { 'use strict';
|
11
11
|
|
12
12
|
/**
|
13
13
|
* --------------------------------------------------------------------------
|
14
|
-
* Bootstrap (v5.1.
|
14
|
+
* Bootstrap (v5.1.3): util/index.js
|
15
15
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
16
16
|
* --------------------------------------------------------------------------
|
17
17
|
*/
|
@@ -322,7 +322,7 @@
|
|
322
322
|
|
323
323
|
/**
|
324
324
|
* --------------------------------------------------------------------------
|
325
|
-
* Bootstrap (v5.1.
|
325
|
+
* Bootstrap (v5.1.3): dom/event-handler.js
|
326
326
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
327
327
|
* --------------------------------------------------------------------------
|
328
328
|
*/
|
@@ -385,7 +385,6 @@
|
|
385
385
|
event.delegateTarget = target;
|
386
386
|
|
387
387
|
if (handler.oneOff) {
|
388
|
-
// eslint-disable-next-line unicorn/consistent-destructuring
|
389
388
|
EventHandler.off(element, event.type, selector, fn);
|
390
389
|
}
|
391
390
|
|
@@ -611,7 +610,7 @@
|
|
611
610
|
|
612
611
|
/**
|
613
612
|
* --------------------------------------------------------------------------
|
614
|
-
* Bootstrap (v5.1.
|
613
|
+
* Bootstrap (v5.1.3): dom/data.js
|
615
614
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
616
615
|
* --------------------------------------------------------------------------
|
617
616
|
*/
|
@@ -622,7 +621,7 @@
|
|
622
621
|
* ------------------------------------------------------------------------
|
623
622
|
*/
|
624
623
|
const elementMap = new Map();
|
625
|
-
|
624
|
+
const Data = {
|
626
625
|
set(element, key, instance) {
|
627
626
|
if (!elementMap.has(element)) {
|
628
627
|
elementMap.set(element, new Map());
|
@@ -665,7 +664,7 @@
|
|
665
664
|
|
666
665
|
/**
|
667
666
|
* --------------------------------------------------------------------------
|
668
|
-
* Bootstrap (v5.1.
|
667
|
+
* Bootstrap (v5.1.3): base-component.js
|
669
668
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
670
669
|
* --------------------------------------------------------------------------
|
671
670
|
*/
|
@@ -675,7 +674,7 @@
|
|
675
674
|
* ------------------------------------------------------------------------
|
676
675
|
*/
|
677
676
|
|
678
|
-
const VERSION = '5.1.
|
677
|
+
const VERSION = '5.1.3';
|
679
678
|
|
680
679
|
class BaseComponent {
|
681
680
|
constructor(element) {
|
@@ -731,7 +730,7 @@
|
|
731
730
|
|
732
731
|
/**
|
733
732
|
* --------------------------------------------------------------------------
|
734
|
-
* Bootstrap (v5.1.
|
733
|
+
* Bootstrap (v5.1.3): util/component-functions.js
|
735
734
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
736
735
|
* --------------------------------------------------------------------------
|
737
736
|
*/
|
@@ -757,7 +756,7 @@
|
|
757
756
|
|
758
757
|
/**
|
759
758
|
* --------------------------------------------------------------------------
|
760
|
-
* Bootstrap (v5.1.
|
759
|
+
* Bootstrap (v5.1.3): alert.js
|
761
760
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
762
761
|
* --------------------------------------------------------------------------
|
763
762
|
*/
|
@@ -846,7 +845,7 @@
|
|
846
845
|
|
847
846
|
/**
|
848
847
|
* --------------------------------------------------------------------------
|
849
|
-
* Bootstrap (v5.1.
|
848
|
+
* Bootstrap (v5.1.3): button.js
|
850
849
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
851
850
|
* --------------------------------------------------------------------------
|
852
851
|
*/
|
@@ -917,7 +916,7 @@
|
|
917
916
|
|
918
917
|
/**
|
919
918
|
* --------------------------------------------------------------------------
|
920
|
-
* Bootstrap (v5.1.
|
919
|
+
* Bootstrap (v5.1.3): dom/manipulator.js
|
921
920
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
922
921
|
* --------------------------------------------------------------------------
|
923
922
|
*/
|
@@ -991,7 +990,7 @@
|
|
991
990
|
|
992
991
|
/**
|
993
992
|
* --------------------------------------------------------------------------
|
994
|
-
* Bootstrap (v5.1.
|
993
|
+
* Bootstrap (v5.1.3): dom/selector-engine.js
|
995
994
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
996
995
|
* --------------------------------------------------------------------------
|
997
996
|
*/
|
@@ -1061,7 +1060,7 @@
|
|
1061
1060
|
|
1062
1061
|
/**
|
1063
1062
|
* --------------------------------------------------------------------------
|
1064
|
-
* Bootstrap (v5.1.
|
1063
|
+
* Bootstrap (v5.1.3): carousel.js
|
1065
1064
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
1066
1065
|
* --------------------------------------------------------------------------
|
1067
1066
|
*/
|
@@ -1286,8 +1285,12 @@
|
|
1286
1285
|
}
|
1287
1286
|
|
1288
1287
|
_addTouchEventListeners() {
|
1288
|
+
const hasPointerPenTouch = event => {
|
1289
|
+
return this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH);
|
1290
|
+
};
|
1291
|
+
|
1289
1292
|
const start = event => {
|
1290
|
-
if (
|
1293
|
+
if (hasPointerPenTouch(event)) {
|
1291
1294
|
this.touchStartX = event.clientX;
|
1292
1295
|
} else if (!this._pointerEvent) {
|
1293
1296
|
this.touchStartX = event.touches[0].clientX;
|
@@ -1300,7 +1303,7 @@
|
|
1300
1303
|
};
|
1301
1304
|
|
1302
1305
|
const end = event => {
|
1303
|
-
if (
|
1306
|
+
if (hasPointerPenTouch(event)) {
|
1304
1307
|
this.touchDeltaX = event.clientX - this.touchStartX;
|
1305
1308
|
}
|
1306
1309
|
|
@@ -1325,7 +1328,7 @@
|
|
1325
1328
|
};
|
1326
1329
|
|
1327
1330
|
SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => {
|
1328
|
-
EventHandler.on(itemImg, EVENT_DRAG_START,
|
1331
|
+
EventHandler.on(itemImg, EVENT_DRAG_START, event => event.preventDefault());
|
1329
1332
|
});
|
1330
1333
|
|
1331
1334
|
if (this._pointerEvent) {
|
@@ -1606,7 +1609,7 @@
|
|
1606
1609
|
|
1607
1610
|
/**
|
1608
1611
|
* --------------------------------------------------------------------------
|
1609
|
-
* Bootstrap (v5.1.
|
1612
|
+
* Bootstrap (v5.1.3): collapse.js
|
1610
1613
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
1611
1614
|
* --------------------------------------------------------------------------
|
1612
1615
|
*/
|
@@ -1637,10 +1640,11 @@
|
|
1637
1640
|
const CLASS_NAME_COLLAPSE = 'collapse';
|
1638
1641
|
const CLASS_NAME_COLLAPSING = 'collapsing';
|
1639
1642
|
const CLASS_NAME_COLLAPSED = 'collapsed';
|
1643
|
+
const CLASS_NAME_DEEPER_CHILDREN = `:scope .${CLASS_NAME_COLLAPSE} .${CLASS_NAME_COLLAPSE}`;
|
1640
1644
|
const CLASS_NAME_HORIZONTAL = 'collapse-horizontal';
|
1641
1645
|
const WIDTH = 'width';
|
1642
1646
|
const HEIGHT = 'height';
|
1643
|
-
const SELECTOR_ACTIVES = '.show, .collapsing';
|
1647
|
+
const SELECTOR_ACTIVES = '.collapse.show, .collapse.collapsing';
|
1644
1648
|
const SELECTOR_DATA_TOGGLE$4 = '[data-bs-toggle="collapse"]';
|
1645
1649
|
/**
|
1646
1650
|
* ------------------------------------------------------------------------
|
@@ -1706,7 +1710,7 @@
|
|
1706
1710
|
let activesData;
|
1707
1711
|
|
1708
1712
|
if (this._config.parent) {
|
1709
|
-
const children = SelectorEngine.find(
|
1713
|
+
const children = SelectorEngine.find(CLASS_NAME_DEEPER_CHILDREN, this._config.parent);
|
1710
1714
|
actives = SelectorEngine.find(SELECTOR_ACTIVES, this._config.parent).filter(elem => !children.includes(elem)); // remove children if greater depth
|
1711
1715
|
}
|
1712
1716
|
|
@@ -1844,7 +1848,7 @@
|
|
1844
1848
|
return;
|
1845
1849
|
}
|
1846
1850
|
|
1847
|
-
const children = SelectorEngine.find(
|
1851
|
+
const children = SelectorEngine.find(CLASS_NAME_DEEPER_CHILDREN, this._config.parent);
|
1848
1852
|
SelectorEngine.find(SELECTOR_DATA_TOGGLE$4, this._config.parent).filter(elem => !children.includes(elem)).forEach(element => {
|
1849
1853
|
const selected = getElementFromSelector(element);
|
1850
1854
|
|
@@ -2065,7 +2069,7 @@
|
|
2065
2069
|
} // eslint-disable-next-line import/no-unused-modules
|
2066
2070
|
|
2067
2071
|
|
2068
|
-
|
2072
|
+
const applyStyles$1 = {
|
2069
2073
|
name: 'applyStyles',
|
2070
2074
|
enabled: true,
|
2071
2075
|
phase: 'write',
|
@@ -2078,31 +2082,39 @@
|
|
2078
2082
|
return placement.split('-')[0];
|
2079
2083
|
}
|
2080
2084
|
|
2081
|
-
|
2082
|
-
function getBoundingClientRect(element,
|
2083
|
-
|
2084
|
-
includeScale = false;
|
2085
|
-
}
|
2085
|
+
// import { isHTMLElement } from './instanceOf';
|
2086
|
+
function getBoundingClientRect(element, // eslint-disable-next-line unused-imports/no-unused-vars
|
2087
|
+
includeScale) {
|
2086
2088
|
|
2087
2089
|
var rect = element.getBoundingClientRect();
|
2088
2090
|
var scaleX = 1;
|
2089
|
-
var scaleY = 1;
|
2090
|
-
|
2091
|
-
|
2092
|
-
|
2093
|
-
|
2094
|
-
|
2095
|
-
|
2091
|
+
var scaleY = 1; // FIXME:
|
2092
|
+
// `offsetWidth` returns an integer while `getBoundingClientRect`
|
2093
|
+
// returns a float. This results in `scaleX` or `scaleY` being
|
2094
|
+
// non-1 when it should be for elements that aren't a full pixel in
|
2095
|
+
// width or height.
|
2096
|
+
// if (isHTMLElement(element) && includeScale) {
|
2097
|
+
// const offsetHeight = element.offsetHeight;
|
2098
|
+
// const offsetWidth = element.offsetWidth;
|
2099
|
+
// // Do not attempt to divide by 0, otherwise we get `Infinity` as scale
|
2100
|
+
// // Fallback to 1 in case both values are `0`
|
2101
|
+
// if (offsetWidth > 0) {
|
2102
|
+
// scaleX = rect.width / offsetWidth || 1;
|
2103
|
+
// }
|
2104
|
+
// if (offsetHeight > 0) {
|
2105
|
+
// scaleY = rect.height / offsetHeight || 1;
|
2106
|
+
// }
|
2107
|
+
// }
|
2096
2108
|
|
2097
2109
|
return {
|
2098
|
-
width:
|
2099
|
-
height:
|
2100
|
-
top:
|
2101
|
-
right:
|
2102
|
-
bottom:
|
2103
|
-
left:
|
2104
|
-
x:
|
2105
|
-
y:
|
2110
|
+
width: rect.width / scaleX,
|
2111
|
+
height: rect.height / scaleY,
|
2112
|
+
top: rect.top / scaleY,
|
2113
|
+
right: rect.right / scaleX,
|
2114
|
+
bottom: rect.bottom / scaleY,
|
2115
|
+
left: rect.left / scaleX,
|
2116
|
+
x: rect.left / scaleX,
|
2117
|
+
y: rect.top / scaleY
|
2106
2118
|
};
|
2107
2119
|
}
|
2108
2120
|
|
@@ -2347,7 +2359,7 @@
|
|
2347
2359
|
} // eslint-disable-next-line import/no-unused-modules
|
2348
2360
|
|
2349
2361
|
|
2350
|
-
|
2362
|
+
const arrow$1 = {
|
2351
2363
|
name: 'arrow',
|
2352
2364
|
enabled: true,
|
2353
2365
|
phase: 'main',
|
@@ -2357,6 +2369,10 @@
|
|
2357
2369
|
requiresIfExists: ['preventOverflow']
|
2358
2370
|
};
|
2359
2371
|
|
2372
|
+
function getVariation(placement) {
|
2373
|
+
return placement.split('-')[1];
|
2374
|
+
}
|
2375
|
+
|
2360
2376
|
var unsetSides = {
|
2361
2377
|
top: 'auto',
|
2362
2378
|
right: 'auto',
|
@@ -2383,6 +2399,7 @@
|
|
2383
2399
|
var popper = _ref2.popper,
|
2384
2400
|
popperRect = _ref2.popperRect,
|
2385
2401
|
placement = _ref2.placement,
|
2402
|
+
variation = _ref2.variation,
|
2386
2403
|
offsets = _ref2.offsets,
|
2387
2404
|
position = _ref2.position,
|
2388
2405
|
gpuAcceleration = _ref2.gpuAcceleration,
|
@@ -2409,7 +2426,7 @@
|
|
2409
2426
|
if (offsetParent === getWindow(popper)) {
|
2410
2427
|
offsetParent = getDocumentElement(popper);
|
2411
2428
|
|
2412
|
-
if (getComputedStyle$1(offsetParent).position !== 'static') {
|
2429
|
+
if (getComputedStyle$1(offsetParent).position !== 'static' && position === 'absolute') {
|
2413
2430
|
heightProp = 'scrollHeight';
|
2414
2431
|
widthProp = 'scrollWidth';
|
2415
2432
|
}
|
@@ -2418,14 +2435,14 @@
|
|
2418
2435
|
|
2419
2436
|
offsetParent = offsetParent;
|
2420
2437
|
|
2421
|
-
if (placement === top) {
|
2438
|
+
if (placement === top || (placement === left || placement === right) && variation === end) {
|
2422
2439
|
sideY = bottom; // $FlowFixMe[prop-missing]
|
2423
2440
|
|
2424
2441
|
y -= offsetParent[heightProp] - popperRect.height;
|
2425
2442
|
y *= gpuAcceleration ? 1 : -1;
|
2426
2443
|
}
|
2427
2444
|
|
2428
|
-
if (placement === left) {
|
2445
|
+
if (placement === left || (placement === top || placement === bottom) && variation === end) {
|
2429
2446
|
sideX = right; // $FlowFixMe[prop-missing]
|
2430
2447
|
|
2431
2448
|
x -= offsetParent[widthProp] - popperRect.width;
|
@@ -2440,7 +2457,7 @@
|
|
2440
2457
|
if (gpuAcceleration) {
|
2441
2458
|
var _Object$assign;
|
2442
2459
|
|
2443
|
-
return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1)
|
2460
|
+
return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) <= 1 ? "translate(" + x + "px, " + y + "px)" : "translate3d(" + x + "px, " + y + "px, 0)", _Object$assign));
|
2444
2461
|
}
|
2445
2462
|
|
2446
2463
|
return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + "px" : '', _Object$assign2[sideX] = hasX ? x + "px" : '', _Object$assign2.transform = '', _Object$assign2));
|
@@ -2458,6 +2475,7 @@
|
|
2458
2475
|
|
2459
2476
|
var commonStyles = {
|
2460
2477
|
placement: getBasePlacement(state.placement),
|
2478
|
+
variation: getVariation(state.placement),
|
2461
2479
|
popper: state.elements.popper,
|
2462
2480
|
popperRect: state.rects.popper,
|
2463
2481
|
gpuAcceleration: gpuAcceleration
|
@@ -2487,7 +2505,7 @@
|
|
2487
2505
|
} // eslint-disable-next-line import/no-unused-modules
|
2488
2506
|
|
2489
2507
|
|
2490
|
-
|
2508
|
+
const computeStyles$1 = {
|
2491
2509
|
name: 'computeStyles',
|
2492
2510
|
enabled: true,
|
2493
2511
|
phase: 'beforeWrite',
|
@@ -2534,7 +2552,7 @@
|
|
2534
2552
|
} // eslint-disable-next-line import/no-unused-modules
|
2535
2553
|
|
2536
2554
|
|
2537
|
-
|
2555
|
+
const eventListeners = {
|
2538
2556
|
name: 'eventListeners',
|
2539
2557
|
enabled: true,
|
2540
2558
|
phase: 'write',
|
@@ -2760,10 +2778,6 @@
|
|
2760
2778
|
return clippingRect;
|
2761
2779
|
}
|
2762
2780
|
|
2763
|
-
function getVariation(placement) {
|
2764
|
-
return placement.split('-')[1];
|
2765
|
-
}
|
2766
|
-
|
2767
2781
|
function computeOffsets(_ref) {
|
2768
2782
|
var reference = _ref.reference,
|
2769
2783
|
element = _ref.element,
|
@@ -2849,11 +2863,10 @@
|
|
2849
2863
|
padding = _options$padding === void 0 ? 0 : _options$padding;
|
2850
2864
|
var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));
|
2851
2865
|
var altContext = elementContext === popper ? reference : popper;
|
2852
|
-
var referenceElement = state.elements.reference;
|
2853
2866
|
var popperRect = state.rects.popper;
|
2854
2867
|
var element = state.elements[altBoundary ? altContext : elementContext];
|
2855
2868
|
var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary);
|
2856
|
-
var referenceClientRect = getBoundingClientRect(
|
2869
|
+
var referenceClientRect = getBoundingClientRect(state.elements.reference);
|
2857
2870
|
var popperOffsets = computeOffsets({
|
2858
2871
|
reference: referenceClientRect,
|
2859
2872
|
element: popperRect,
|
@@ -3053,7 +3066,7 @@
|
|
3053
3066
|
} // eslint-disable-next-line import/no-unused-modules
|
3054
3067
|
|
3055
3068
|
|
3056
|
-
|
3069
|
+
const flip$1 = {
|
3057
3070
|
name: 'flip',
|
3058
3071
|
enabled: true,
|
3059
3072
|
phase: 'main',
|
@@ -3115,7 +3128,7 @@
|
|
3115
3128
|
} // eslint-disable-next-line import/no-unused-modules
|
3116
3129
|
|
3117
3130
|
|
3118
|
-
|
3131
|
+
const hide$1 = {
|
3119
3132
|
name: 'hide',
|
3120
3133
|
enabled: true,
|
3121
3134
|
phase: 'main',
|
@@ -3167,7 +3180,7 @@
|
|
3167
3180
|
} // eslint-disable-next-line import/no-unused-modules
|
3168
3181
|
|
3169
3182
|
|
3170
|
-
|
3183
|
+
const offset$1 = {
|
3171
3184
|
name: 'offset',
|
3172
3185
|
enabled: true,
|
3173
3186
|
phase: 'main',
|
@@ -3191,7 +3204,7 @@
|
|
3191
3204
|
} // eslint-disable-next-line import/no-unused-modules
|
3192
3205
|
|
3193
3206
|
|
3194
|
-
|
3207
|
+
const popperOffsets$1 = {
|
3195
3208
|
name: 'popperOffsets',
|
3196
3209
|
enabled: true,
|
3197
3210
|
phase: 'read',
|
@@ -3307,7 +3320,7 @@
|
|
3307
3320
|
} // eslint-disable-next-line import/no-unused-modules
|
3308
3321
|
|
3309
3322
|
|
3310
|
-
|
3323
|
+
const preventOverflow$1 = {
|
3311
3324
|
name: 'preventOverflow',
|
3312
3325
|
enabled: true,
|
3313
3326
|
phase: 'main',
|
@@ -3345,9 +3358,9 @@
|
|
3345
3358
|
}
|
3346
3359
|
|
3347
3360
|
var isOffsetParentAnElement = isHTMLElement(offsetParent);
|
3348
|
-
|
3361
|
+
isHTMLElement(offsetParent) && isElementScaled(offsetParent);
|
3349
3362
|
var documentElement = getDocumentElement(offsetParent);
|
3350
|
-
var rect = getBoundingClientRect(elementOrVirtualElement
|
3363
|
+
var rect = getBoundingClientRect(elementOrVirtualElement);
|
3351
3364
|
var scroll = {
|
3352
3365
|
scrollLeft: 0,
|
3353
3366
|
scrollTop: 0
|
@@ -3364,7 +3377,7 @@
|
|
3364
3377
|
}
|
3365
3378
|
|
3366
3379
|
if (isHTMLElement(offsetParent)) {
|
3367
|
-
offsets = getBoundingClientRect(offsetParent
|
3380
|
+
offsets = getBoundingClientRect(offsetParent);
|
3368
3381
|
offsets.x += offsetParent.clientLeft;
|
3369
3382
|
offsets.y += offsetParent.clientTop;
|
3370
3383
|
} else if (documentElement) {
|
@@ -3501,7 +3514,8 @@
|
|
3501
3514
|
var isDestroyed = false;
|
3502
3515
|
var instance = {
|
3503
3516
|
state: state,
|
3504
|
-
setOptions: function setOptions(
|
3517
|
+
setOptions: function setOptions(setOptionsAction) {
|
3518
|
+
var options = typeof setOptionsAction === 'function' ? setOptionsAction(state.options) : setOptionsAction;
|
3505
3519
|
cleanupModifierEffects();
|
3506
3520
|
state.options = Object.assign({}, defaultOptions, state.options, options);
|
3507
3521
|
state.scrollParents = {
|
@@ -3656,41 +3670,41 @@
|
|
3656
3670
|
defaultModifiers: defaultModifiers
|
3657
3671
|
}); // eslint-disable-next-line import/no-unused-modules
|
3658
3672
|
|
3659
|
-
|
3673
|
+
const Popper = /*#__PURE__*/Object.freeze({
|
3660
3674
|
__proto__: null,
|
3661
|
-
popperGenerator
|
3662
|
-
detectOverflow
|
3675
|
+
popperGenerator,
|
3676
|
+
detectOverflow,
|
3663
3677
|
createPopperBase: createPopper$2,
|
3664
|
-
createPopper
|
3678
|
+
createPopper,
|
3665
3679
|
createPopperLite: createPopper$1,
|
3666
|
-
top
|
3667
|
-
bottom
|
3668
|
-
right
|
3669
|
-
left
|
3670
|
-
auto
|
3671
|
-
basePlacements
|
3672
|
-
start
|
3673
|
-
end
|
3674
|
-
clippingParents
|
3675
|
-
viewport
|
3676
|
-
popper
|
3677
|
-
reference
|
3678
|
-
variationPlacements
|
3679
|
-
placements
|
3680
|
-
beforeRead
|
3681
|
-
read
|
3682
|
-
afterRead
|
3683
|
-
beforeMain
|
3684
|
-
main
|
3685
|
-
afterMain
|
3686
|
-
beforeWrite
|
3687
|
-
write
|
3688
|
-
afterWrite
|
3689
|
-
modifierPhases
|
3680
|
+
top,
|
3681
|
+
bottom,
|
3682
|
+
right,
|
3683
|
+
left,
|
3684
|
+
auto,
|
3685
|
+
basePlacements,
|
3686
|
+
start,
|
3687
|
+
end,
|
3688
|
+
clippingParents,
|
3689
|
+
viewport,
|
3690
|
+
popper,
|
3691
|
+
reference,
|
3692
|
+
variationPlacements,
|
3693
|
+
placements,
|
3694
|
+
beforeRead,
|
3695
|
+
read,
|
3696
|
+
afterRead,
|
3697
|
+
beforeMain,
|
3698
|
+
main,
|
3699
|
+
afterMain,
|
3700
|
+
beforeWrite,
|
3701
|
+
write,
|
3702
|
+
afterWrite,
|
3703
|
+
modifierPhases,
|
3690
3704
|
applyStyles: applyStyles$1,
|
3691
3705
|
arrow: arrow$1,
|
3692
3706
|
computeStyles: computeStyles$1,
|
3693
|
-
eventListeners
|
3707
|
+
eventListeners,
|
3694
3708
|
flip: flip$1,
|
3695
3709
|
hide: hide$1,
|
3696
3710
|
offset: offset$1,
|
@@ -3700,7 +3714,7 @@
|
|
3700
3714
|
|
3701
3715
|
/**
|
3702
3716
|
* --------------------------------------------------------------------------
|
3703
|
-
* Bootstrap (v5.1.
|
3717
|
+
* Bootstrap (v5.1.3): dropdown.js
|
3704
3718
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
3705
3719
|
* --------------------------------------------------------------------------
|
3706
3720
|
*/
|
@@ -4162,7 +4176,7 @@
|
|
4162
4176
|
|
4163
4177
|
/**
|
4164
4178
|
* --------------------------------------------------------------------------
|
4165
|
-
* Bootstrap (v5.1.
|
4179
|
+
* Bootstrap (v5.1.3): util/scrollBar.js
|
4166
4180
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
4167
4181
|
* --------------------------------------------------------------------------
|
4168
4182
|
*/
|
@@ -4266,8 +4280,8 @@
|
|
4266
4280
|
|
4267
4281
|
/**
|
4268
4282
|
* --------------------------------------------------------------------------
|
4269
|
-
* Bootstrap (v5.1.
|
4270
|
-
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/
|
4283
|
+
* Bootstrap (v5.1.3): util/backdrop.js
|
4284
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
4271
4285
|
* --------------------------------------------------------------------------
|
4272
4286
|
*/
|
4273
4287
|
const Default$7 = {
|
@@ -4390,8 +4404,8 @@
|
|
4390
4404
|
|
4391
4405
|
/**
|
4392
4406
|
* --------------------------------------------------------------------------
|
4393
|
-
* Bootstrap (v5.1.
|
4394
|
-
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/
|
4407
|
+
* Bootstrap (v5.1.3): util/focustrap.js
|
4408
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
4395
4409
|
* --------------------------------------------------------------------------
|
4396
4410
|
*/
|
4397
4411
|
const Default$6 = {
|
@@ -4493,7 +4507,7 @@
|
|
4493
4507
|
|
4494
4508
|
/**
|
4495
4509
|
* --------------------------------------------------------------------------
|
4496
|
-
* Bootstrap (v5.1.
|
4510
|
+
* Bootstrap (v5.1.3): modal.js
|
4497
4511
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
4498
4512
|
* --------------------------------------------------------------------------
|
4499
4513
|
*/
|
@@ -4533,6 +4547,7 @@
|
|
4533
4547
|
const CLASS_NAME_FADE$3 = 'fade';
|
4534
4548
|
const CLASS_NAME_SHOW$4 = 'show';
|
4535
4549
|
const CLASS_NAME_STATIC = 'modal-static';
|
4550
|
+
const OPEN_SELECTOR$1 = '.modal.show';
|
4536
4551
|
const SELECTOR_DIALOG = '.modal-dialog';
|
4537
4552
|
const SELECTOR_MODAL_BODY = '.modal-body';
|
4538
4553
|
const SELECTOR_DATA_TOGGLE$2 = '[data-bs-toggle="modal"]';
|
@@ -4898,7 +4913,14 @@
|
|
4898
4913
|
this.focus();
|
4899
4914
|
}
|
4900
4915
|
});
|
4901
|
-
});
|
4916
|
+
}); // avoid conflict when clicking moddal toggler while another one is open
|
4917
|
+
|
4918
|
+
const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR$1);
|
4919
|
+
|
4920
|
+
if (allReadyOpen) {
|
4921
|
+
Modal.getInstance(allReadyOpen).hide();
|
4922
|
+
}
|
4923
|
+
|
4902
4924
|
const data = Modal.getOrCreateInstance(target);
|
4903
4925
|
data.toggle(this);
|
4904
4926
|
});
|
@@ -4914,8 +4936,8 @@
|
|
4914
4936
|
|
4915
4937
|
/**
|
4916
4938
|
* --------------------------------------------------------------------------
|
4917
|
-
* Bootstrap (v5.1.
|
4918
|
-
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/
|
4939
|
+
* Bootstrap (v5.1.3): offcanvas.js
|
4940
|
+
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
4919
4941
|
* --------------------------------------------------------------------------
|
4920
4942
|
*/
|
4921
4943
|
/**
|
@@ -5170,42 +5192,42 @@
|
|
5170
5192
|
|
5171
5193
|
/**
|
5172
5194
|
* --------------------------------------------------------------------------
|
5173
|
-
* Bootstrap (v5.1.
|
5195
|
+
* Bootstrap (v5.1.3): util/sanitizer.js
|
5174
5196
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
5175
5197
|
* --------------------------------------------------------------------------
|
5176
5198
|
*/
|
5177
|
-
const
|
5199
|
+
const uriAttributes = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']);
|
5178
5200
|
const ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i;
|
5179
5201
|
/**
|
5180
5202
|
* A pattern that recognizes a commonly useful subset of URLs that are safe.
|
5181
5203
|
*
|
5182
|
-
* Shoutout to Angular
|
5204
|
+
* Shoutout to Angular https://github.com/angular/angular/blob/12.2.x/packages/core/src/sanitization/url_sanitizer.ts
|
5183
5205
|
*/
|
5184
5206
|
|
5185
|
-
const SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i;
|
5207
|
+
const SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i;
|
5186
5208
|
/**
|
5187
5209
|
* A pattern that matches safe data URLs. Only matches image, video and audio types.
|
5188
5210
|
*
|
5189
|
-
* Shoutout to Angular
|
5211
|
+
* Shoutout to Angular https://github.com/angular/angular/blob/12.2.x/packages/core/src/sanitization/url_sanitizer.ts
|
5190
5212
|
*/
|
5191
5213
|
|
5192
5214
|
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;
|
5193
5215
|
|
5194
|
-
const allowedAttribute = (
|
5195
|
-
const
|
5216
|
+
const allowedAttribute = (attribute, allowedAttributeList) => {
|
5217
|
+
const attributeName = attribute.nodeName.toLowerCase();
|
5196
5218
|
|
5197
|
-
if (allowedAttributeList.includes(
|
5198
|
-
if (
|
5199
|
-
return Boolean(SAFE_URL_PATTERN.test(
|
5219
|
+
if (allowedAttributeList.includes(attributeName)) {
|
5220
|
+
if (uriAttributes.has(attributeName)) {
|
5221
|
+
return Boolean(SAFE_URL_PATTERN.test(attribute.nodeValue) || DATA_URL_PATTERN.test(attribute.nodeValue));
|
5200
5222
|
}
|
5201
5223
|
|
5202
5224
|
return true;
|
5203
5225
|
}
|
5204
5226
|
|
5205
|
-
const regExp = allowedAttributeList.filter(
|
5227
|
+
const regExp = allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp); // Check if a regular expression validates the attribute.
|
5206
5228
|
|
5207
5229
|
for (let i = 0, len = regExp.length; i < len; i++) {
|
5208
|
-
if (regExp[i].test(
|
5230
|
+
if (regExp[i].test(attributeName)) {
|
5209
5231
|
return true;
|
5210
5232
|
}
|
5211
5233
|
}
|
@@ -5257,23 +5279,22 @@
|
|
5257
5279
|
|
5258
5280
|
const domParser = new window.DOMParser();
|
5259
5281
|
const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html');
|
5260
|
-
const allowlistKeys = Object.keys(allowList);
|
5261
5282
|
const elements = [].concat(...createdDocument.body.querySelectorAll('*'));
|
5262
5283
|
|
5263
5284
|
for (let i = 0, len = elements.length; i < len; i++) {
|
5264
|
-
const
|
5265
|
-
const
|
5285
|
+
const element = elements[i];
|
5286
|
+
const elementName = element.nodeName.toLowerCase();
|
5266
5287
|
|
5267
|
-
if (!
|
5268
|
-
|
5288
|
+
if (!Object.keys(allowList).includes(elementName)) {
|
5289
|
+
element.remove();
|
5269
5290
|
continue;
|
5270
5291
|
}
|
5271
5292
|
|
5272
|
-
const attributeList = [].concat(...
|
5273
|
-
const allowedAttributes = [].concat(allowList['*'] || [], allowList[
|
5274
|
-
attributeList.forEach(
|
5275
|
-
if (!allowedAttribute(
|
5276
|
-
|
5293
|
+
const attributeList = [].concat(...element.attributes);
|
5294
|
+
const allowedAttributes = [].concat(allowList['*'] || [], allowList[elementName] || []);
|
5295
|
+
attributeList.forEach(attribute => {
|
5296
|
+
if (!allowedAttribute(attribute, allowedAttributes)) {
|
5297
|
+
element.removeAttribute(attribute.nodeName);
|
5277
5298
|
}
|
5278
5299
|
});
|
5279
5300
|
}
|
@@ -5283,7 +5304,7 @@
|
|
5283
5304
|
|
5284
5305
|
/**
|
5285
5306
|
* --------------------------------------------------------------------------
|
5286
|
-
* Bootstrap (v5.1.
|
5307
|
+
* Bootstrap (v5.1.3): tooltip.js
|
5287
5308
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
5288
5309
|
* --------------------------------------------------------------------------
|
5289
5310
|
*/
|
@@ -5457,9 +5478,7 @@
|
|
5457
5478
|
this.tip.remove();
|
5458
5479
|
}
|
5459
5480
|
|
5460
|
-
|
5461
|
-
this._popper.destroy();
|
5462
|
-
}
|
5481
|
+
this._disposePopper();
|
5463
5482
|
|
5464
5483
|
super.dispose();
|
5465
5484
|
}
|
@@ -5479,6 +5498,15 @@
|
|
5479
5498
|
|
5480
5499
|
if (showEvent.defaultPrevented || !isInTheDom) {
|
5481
5500
|
return;
|
5501
|
+
} // A trick to recreate a tooltip in case a new title is given by using the NOT documented `data-bs-original-title`
|
5502
|
+
// This will be removed later in favor of a `setContent` method
|
5503
|
+
|
5504
|
+
|
5505
|
+
if (this.constructor.NAME === 'tooltip' && this.tip && this.getTitle() !== this.tip.querySelector(SELECTOR_TOOLTIP_INNER).innerHTML) {
|
5506
|
+
this._disposePopper();
|
5507
|
+
|
5508
|
+
this.tip.remove();
|
5509
|
+
this.tip = null;
|
5482
5510
|
}
|
5483
5511
|
|
5484
5512
|
const tip = this.getTipElement();
|
@@ -5568,11 +5596,7 @@
|
|
5568
5596
|
|
5569
5597
|
EventHandler.trigger(this._element, this.constructor.Event.HIDDEN);
|
5570
5598
|
|
5571
|
-
|
5572
|
-
this._popper.destroy();
|
5573
|
-
|
5574
|
-
this._popper = null;
|
5575
|
-
}
|
5599
|
+
this._disposePopper();
|
5576
5600
|
};
|
5577
5601
|
|
5578
5602
|
const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE);
|
@@ -5952,6 +5976,14 @@
|
|
5952
5976
|
this._cleanTipClass();
|
5953
5977
|
|
5954
5978
|
this._addAttachmentClass(this._getAttachment(state.placement));
|
5979
|
+
}
|
5980
|
+
|
5981
|
+
_disposePopper() {
|
5982
|
+
if (this._popper) {
|
5983
|
+
this._popper.destroy();
|
5984
|
+
|
5985
|
+
this._popper = null;
|
5986
|
+
}
|
5955
5987
|
} // Static
|
5956
5988
|
|
5957
5989
|
|
@@ -5982,7 +6014,7 @@
|
|
5982
6014
|
|
5983
6015
|
/**
|
5984
6016
|
* --------------------------------------------------------------------------
|
5985
|
-
* Bootstrap (v5.1.
|
6017
|
+
* Bootstrap (v5.1.3): popover.js
|
5986
6018
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
5987
6019
|
* --------------------------------------------------------------------------
|
5988
6020
|
*/
|
@@ -6092,7 +6124,7 @@
|
|
6092
6124
|
|
6093
6125
|
/**
|
6094
6126
|
* --------------------------------------------------------------------------
|
6095
|
-
* Bootstrap (v5.1.
|
6127
|
+
* Bootstrap (v5.1.3): scrollspy.js
|
6096
6128
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
6097
6129
|
* --------------------------------------------------------------------------
|
6098
6130
|
*/
|
@@ -6327,7 +6359,7 @@
|
|
6327
6359
|
|
6328
6360
|
/**
|
6329
6361
|
* --------------------------------------------------------------------------
|
6330
|
-
* Bootstrap (v5.1.
|
6362
|
+
* Bootstrap (v5.1.3): tab.js
|
6331
6363
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
6332
6364
|
* --------------------------------------------------------------------------
|
6333
6365
|
*/
|
@@ -6525,7 +6557,7 @@
|
|
6525
6557
|
|
6526
6558
|
/**
|
6527
6559
|
* --------------------------------------------------------------------------
|
6528
|
-
* Bootstrap (v5.1.
|
6560
|
+
* Bootstrap (v5.1.3): toast.js
|
6529
6561
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
6530
6562
|
* --------------------------------------------------------------------------
|
6531
6563
|
*/
|
@@ -6755,11 +6787,11 @@
|
|
6755
6787
|
|
6756
6788
|
/**
|
6757
6789
|
* --------------------------------------------------------------------------
|
6758
|
-
* Bootstrap (v5.1.
|
6790
|
+
* Bootstrap (v5.1.3): index.umd.js
|
6759
6791
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
6760
6792
|
* --------------------------------------------------------------------------
|
6761
6793
|
*/
|
6762
|
-
|
6794
|
+
const index_umd = {
|
6763
6795
|
Alert,
|
6764
6796
|
Button,
|
6765
6797
|
Carousel,
|
@@ -6776,5 +6808,5 @@
|
|
6776
6808
|
|
6777
6809
|
return index_umd;
|
6778
6810
|
|
6779
|
-
}))
|
6811
|
+
}));
|
6780
6812
|
//# sourceMappingURL=bootstrap.bundle.js.map
|
@@ -37,11 +37,17 @@
|
|
37
37
|
@return red($value), green($value), blue($value);
|
38
38
|
}
|
39
39
|
|
40
|
+
// stylelint-disable scss/dollar-variable-pattern
|
40
41
|
@function rgba-css-var($identifier, $target) {
|
41
|
-
@
|
42
|
+
@if $identifier == "body" and $target == "bg" {
|
43
|
+
@return rgba(var(--#{$variable-prefix}#{$identifier}-bg-rgb), var(--#{$variable-prefix}#{$target}-opacity));
|
44
|
+
} @if $identifier == "body" and $target == "text" {
|
45
|
+
@return rgba(var(--#{$variable-prefix}#{$identifier}-color-rgb), var(--#{$variable-prefix}#{$target}-opacity));
|
46
|
+
} @else {
|
47
|
+
@return rgba(var(--#{$variable-prefix}#{$identifier}-rgb), var(--#{$variable-prefix}#{$target}-opacity));
|
48
|
+
}
|
42
49
|
}
|
43
50
|
|
44
|
-
// stylelint-disable scss/dollar-variable-pattern
|
45
51
|
@function map-loop($map, $func, $args...) {
|
46
52
|
$_map: ();
|
47
53
|
|
@@ -23,7 +23,8 @@
|
|
23
23
|
|
24
24
|
--#{$variable-prefix}white-rgb: #{to-rgb($white)};
|
25
25
|
--#{$variable-prefix}black-rgb: #{to-rgb($black)};
|
26
|
-
--#{$variable-prefix}body-rgb: #{to-rgb($body-color)};
|
26
|
+
--#{$variable-prefix}body-color-rgb: #{to-rgb($body-color)};
|
27
|
+
--#{$variable-prefix}body-bg-rgb: #{to-rgb($body-bg)};
|
27
28
|
|
28
29
|
// Fonts
|
29
30
|
|
@@ -39,8 +39,8 @@
|
|
39
39
|
}
|
40
40
|
|
41
41
|
// Highlight border color between thead, tbody and tfoot.
|
42
|
-
> :not(:
|
43
|
-
border-
|
42
|
+
> :not(:first-child) {
|
43
|
+
border-top: (2 * $table-border-width) solid $table-group-separator-color;
|
44
44
|
}
|
45
45
|
}
|
46
46
|
|
@@ -91,6 +91,10 @@
|
|
91
91
|
> :not(caption) > * > * {
|
92
92
|
border-bottom-width: 0;
|
93
93
|
}
|
94
|
+
|
95
|
+
> :not(:first-child) {
|
96
|
+
border-top-width: 0;
|
97
|
+
}
|
94
98
|
}
|
95
99
|
|
96
100
|
// Zebra-striping
|
@@ -98,7 +102,7 @@
|
|
98
102
|
// Default zebra-stripe styles (alternating gray and transparent backgrounds)
|
99
103
|
|
100
104
|
.table-striped {
|
101
|
-
> tbody > tr:nth-of-type(#{$table-striped-order}) {
|
105
|
+
> tbody > tr:nth-of-type(#{$table-striped-order}) > * {
|
102
106
|
--#{$variable-prefix}table-accent-bg: var(--#{$variable-prefix}table-striped-bg);
|
103
107
|
color: var(--#{$variable-prefix}table-striped-color);
|
104
108
|
}
|
@@ -118,7 +122,7 @@
|
|
118
122
|
// Placed here since it has to come after the potential zebra striping
|
119
123
|
|
120
124
|
.table-hover {
|
121
|
-
> tbody > tr:hover {
|
125
|
+
> tbody > tr:hover > * {
|
122
126
|
--#{$variable-prefix}table-accent-bg: var(--#{$variable-prefix}table-hover-bg);
|
123
127
|
color: var(--#{$variable-prefix}table-hover-color);
|
124
128
|
}
|
@@ -409,23 +409,33 @@ $body-text-align: null !default;
|
|
409
409
|
//
|
410
410
|
// Extends the default `$theme-colors` maps to help create our utilities.
|
411
411
|
|
412
|
+
// Come v6, we'll de-dupe these variables. Until then, for backward compatibility, we keep them to reassign.
|
412
413
|
// scss-docs-start utilities-colors
|
413
|
-
$utilities-colors:
|
414
|
-
|
414
|
+
$utilities-colors: $theme-colors-rgb !default;
|
415
|
+
// scss-docs-end utilities-colors
|
416
|
+
|
417
|
+
// scss-docs-start utilities-text-colors
|
418
|
+
$utilities-text: map-merge(
|
419
|
+
$utilities-colors,
|
415
420
|
(
|
416
421
|
"black": to-rgb($black),
|
417
422
|
"white": to-rgb($white),
|
418
|
-
"body":
|
423
|
+
"body": to-rgb($body-color)
|
419
424
|
)
|
420
425
|
) !default;
|
421
|
-
|
422
|
-
|
423
|
-
// scss-docs-start utilities-text-colors
|
424
|
-
$utilities-text-colors: map-loop($utilities-colors, rgba-css-var, "$key", "text") !default;
|
426
|
+
$utilities-text-colors: map-loop($utilities-text, rgba-css-var, "$key", "text") !default;
|
425
427
|
// scss-docs-end utilities-text-colors
|
426
428
|
|
427
429
|
// scss-docs-start utilities-bg-colors
|
428
|
-
$utilities-bg
|
430
|
+
$utilities-bg: map-merge(
|
431
|
+
$utilities-colors,
|
432
|
+
(
|
433
|
+
"black": to-rgb($black),
|
434
|
+
"white": to-rgb($white),
|
435
|
+
"body": to-rgb($body-bg)
|
436
|
+
)
|
437
|
+
) !default;
|
438
|
+
$utilities-bg-colors: map-loop($utilities-bg, rgba-css-var, "$key", "bg") !default;
|
429
439
|
// scss-docs-end utilities-bg-colors
|
430
440
|
|
431
441
|
// Links
|
@@ -914,7 +924,7 @@ $form-check-inline-margin-end: 1rem !default;
|
|
914
924
|
// scss-docs-end form-check-variables
|
915
925
|
|
916
926
|
// scss-docs-start form-switch-variables
|
917
|
-
$form-switch-color: rgba(
|
927
|
+
$form-switch-color: rgba($black, .25) !default;
|
918
928
|
$form-switch-width: 2em !default;
|
919
929
|
$form-switch-padding-start: $form-switch-width + .5em !default;
|
920
930
|
$form-switch-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='#{$form-switch-color}'/></svg>") !default;
|
@@ -962,7 +972,7 @@ $form-select-feedback-icon-size: $input-height-inner-half $input-height-i
|
|
962
972
|
|
963
973
|
$form-select-border-width: $input-border-width !default;
|
964
974
|
$form-select-border-color: $input-border-color !default;
|
965
|
-
$form-select-border-radius: $border-radius !default;
|
975
|
+
$form-select-border-radius: $input-border-radius !default;
|
966
976
|
$form-select-box-shadow: $box-shadow-inset !default;
|
967
977
|
|
968
978
|
$form-select-focus-border-color: $input-focus-border-color !default;
|
@@ -972,10 +982,12 @@ $form-select-focus-box-shadow: 0 0 0 $form-select-focus-width $input-btn-focu
|
|
972
982
|
$form-select-padding-y-sm: $input-padding-y-sm !default;
|
973
983
|
$form-select-padding-x-sm: $input-padding-x-sm !default;
|
974
984
|
$form-select-font-size-sm: $input-font-size-sm !default;
|
985
|
+
$form-select-border-radius-sm: $input-border-radius-sm !default;
|
975
986
|
|
976
987
|
$form-select-padding-y-lg: $input-padding-y-lg !default;
|
977
988
|
$form-select-padding-x-lg: $input-padding-x-lg !default;
|
978
989
|
$form-select-font-size-lg: $input-font-size-lg !default;
|
990
|
+
$form-select-border-radius-lg: $input-border-radius-lg !default;
|
979
991
|
|
980
992
|
$form-select-transition: $input-transition !default;
|
981
993
|
// scss-docs-end form-select-variables
|
@@ -1157,7 +1169,7 @@ $dropdown-divider-margin-y: $spacer * .5 !default;
|
|
1157
1169
|
$dropdown-box-shadow: $box-shadow !default;
|
1158
1170
|
|
1159
1171
|
$dropdown-link-color: $gray-900 !default;
|
1160
|
-
$dropdown-link-hover-color: shade-color($
|
1172
|
+
$dropdown-link-hover-color: shade-color($dropdown-link-color, 10%) !default;
|
1161
1173
|
$dropdown-link-hover-bg: $gray-200 !default;
|
1162
1174
|
|
1163
1175
|
$dropdown-link-active-color: $component-active-color !default;
|
@@ -1362,14 +1374,14 @@ $toast-font-size: .875rem !default;
|
|
1362
1374
|
$toast-color: null !default;
|
1363
1375
|
$toast-background-color: rgba($white, .85) !default;
|
1364
1376
|
$toast-border-width: 1px !default;
|
1365
|
-
$toast-border-color: rgba(
|
1377
|
+
$toast-border-color: rgba($black, .1) !default;
|
1366
1378
|
$toast-border-radius: $border-radius !default;
|
1367
1379
|
$toast-box-shadow: $box-shadow !default;
|
1368
1380
|
$toast-spacing: $container-padding-x !default;
|
1369
1381
|
|
1370
1382
|
$toast-header-color: $gray-600 !default;
|
1371
1383
|
$toast-header-background-color: rgba($white, .85) !default;
|
1372
|
-
$toast-header-border-color: rgba(
|
1384
|
+
$toast-header-border-color: rgba($black, .05) !default;
|
1373
1385
|
// scss-docs-end toast-variables
|
1374
1386
|
|
1375
1387
|
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Bootstrap Grid v5.1.
|
2
|
+
* Bootstrap Grid v5.1.3 (https://getbootstrap.com/)
|
3
3
|
* Copyright 2011-2021 The Bootstrap Authors
|
4
4
|
* Copyright 2011-2021 Twitter, Inc.
|
5
5
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
@@ -18,6 +18,8 @@ $include-column-box-sizing: true !default;
|
|
18
18
|
|
19
19
|
@import "vendor/rfs";
|
20
20
|
|
21
|
+
@import "root";
|
22
|
+
|
21
23
|
@import "containers";
|
22
24
|
@import "grid";
|
23
25
|
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Bootstrap Reboot v5.1.
|
2
|
+
* Bootstrap Reboot v5.1.3 (https://getbootstrap.com/)
|
3
3
|
* Copyright 2011-2021 The Bootstrap Authors
|
4
4
|
* Copyright 2011-2021 Twitter, Inc.
|
5
5
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
@@ -8,8 +8,6 @@
|
|
8
8
|
|
9
9
|
@import "functions";
|
10
10
|
@import "variables";
|
11
|
-
// Prevent the usage of custom properties since we don't add them to `:root` in reboot
|
12
|
-
$font-family-base: $font-family-sans-serif; // stylelint-disable-line scss/dollar-variable-default
|
13
|
-
$font-family-code: $font-family-monospace; // stylelint-disable-line scss/dollar-variable-default
|
14
11
|
@import "mixins";
|
12
|
+
@import "root";
|
15
13
|
@import "reboot";
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/*!
|
2
|
-
* Bootstrap Utilities v5.1.
|
2
|
+
* Bootstrap Utilities v5.1.3 (https://getbootstrap.com/)
|
3
3
|
* Copyright 2011-2021 The Bootstrap Authors
|
4
4
|
* Copyright 2011-2021 Twitter, Inc.
|
5
5
|
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
|
@@ -60,6 +60,7 @@
|
|
60
60
|
padding-bottom: $form-select-padding-y-sm;
|
61
61
|
padding-left: $form-select-padding-x-sm;
|
62
62
|
@include font-size($form-select-font-size-sm);
|
63
|
+
@include border-radius($form-select-border-radius-sm);
|
63
64
|
}
|
64
65
|
|
65
66
|
.form-select-lg {
|
@@ -67,4 +68,5 @@
|
|
67
68
|
padding-bottom: $form-select-padding-y-lg;
|
68
69
|
padding-left: $form-select-padding-x-lg;
|
69
70
|
@include font-size($form-select-font-size-lg);
|
71
|
+
@include border-radius($form-select-border-radius-lg);
|
70
72
|
}
|
@@ -7,9 +7,10 @@
|
|
7
7
|
--#{$variable-prefix}gutter-y: 0;
|
8
8
|
display: flex;
|
9
9
|
flex-wrap: wrap;
|
10
|
-
|
11
|
-
margin-
|
12
|
-
margin-
|
10
|
+
// TODO: Revisit calc order after https://github.com/react-bootstrap/react-bootstrap/issues/6039 is fixed
|
11
|
+
margin-top: calc(-1 * var(--#{$variable-prefix}gutter-y)); // stylelint-disable-line function-disallowed-list
|
12
|
+
margin-right: calc(-.5 * var(--#{$variable-prefix}gutter-x)); // stylelint-disable-line function-disallowed-list
|
13
|
+
margin-left: calc(-.5 * var(--#{$variable-prefix}gutter-x)); // stylelint-disable-line function-disallowed-list
|
13
14
|
}
|
14
15
|
|
15
16
|
@mixin make-col-ready($gutter: $grid-gutter-width) {
|
data/app/assets/stylesheets/administrate-bootstrap-theme/bootstrap/mixins/_visually-hidden.scss
CHANGED
@@ -3,7 +3,7 @@
|
|
3
3
|
// Hide content visually while keeping it accessible to assistive technologies
|
4
4
|
//
|
5
5
|
// See: https://www.a11yproject.com/posts/2013-01-11-how-to-hide-content/
|
6
|
-
// See: https://
|
6
|
+
// See: https://kittygiraudel.com/2016/10/13/css-hide-and-seek/
|
7
7
|
|
8
8
|
@mixin visually-hidden() {
|
9
9
|
position: absolute !important;
|
data/package.json
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: administrate-bootstrap-theme
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mattia Roccoberton
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-02-
|
11
|
+
date: 2022-02-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: administrate
|