administrate-bootstrap-theme 1.0.4 → 1.0.6
Sign up to get free protection for your applications and to get access to all the features.
- 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
|
[![gem downloads](https://badgen.net/rubygems/dt/administrate-bootstrap-theme)](https://rubygems.org/gems/administrate-bootstrap-theme)
|
4
4
|
[![linters](https://github.com/blocknotes/administrate-bootstrap-theme/actions/workflows/linters.yml/badge.svg)](https://github.com/blocknotes/administrate-bootstrap-theme/actions/workflows/linters.yml)
|
5
5
|
[![specs](https://github.com/blocknotes/administrate-bootstrap-theme/actions/workflows/specs.yml/badge.svg)](https://github.com/blocknotes/administrate-bootstrap-theme/actions/workflows/specs.yml)
|
6
|
+
[![CodeQL](https://github.com/blocknotes/administrate-bootstrap-theme/actions/workflows/codeql-analysis.yml/badge.svg)](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
|