paraqeet 0.10.0 → 0.11.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d1b24b26941dcec658b52b53f187f8590f9144e4f649f20ac5ee1a5554c414f6
4
- data.tar.gz: ebefa7f9d62094133767184559f741dda4b1c24d6df26697ff6484e86b2508fa
3
+ metadata.gz: 391f88568a5e1b736a13d1720a364d53dfcd043277743a00b92e86f245fe0005
4
+ data.tar.gz: 8f608681f19c476de6c8d06bef7ad82a495c766bbe101ec3abaabd851f573d5f
5
5
  SHA512:
6
- metadata.gz: 7cb7cbf7cfffe1079dfc49b50d6ab3e97ed77fe063a9c2f4e0de7327f28bf208fe062b3d4bfe46c7567d7e42ea5b964fe2e718fac0a09e0acabe13265d3ff731
7
- data.tar.gz: bf8216d36df55b745d48424c9d9ec8fe58f29c13098e42fc534ee63bf01ee11992c7847fa5a9f100cfb7bacf38d50ddfa8c14e9b211bdc22430b24464c96362d
6
+ metadata.gz: 5105d882799bb610e05f30e1fe23e49df55f40126084f7a77b1a9076323e51c01b6e8a72eb590b4dc210c5cd0c7a14807910325d3d3826806b8efa3c9bf68c8a
7
+ data.tar.gz: be39a89eb81ab2bde8f6cdc6d274da0db8431fbf24fdce3e9c5ffb25f6bff61a5d00a5b4479616fb1b69bd6395ab2f0678388cf33c39276903d07171c6da9e53
data/_config.yml CHANGED
@@ -3,7 +3,11 @@ description: A Jekyll theme for building websites with Bootstrap
3
3
  baseurl: "/paraqeet"
4
4
  url: "https://signified.github.io"
5
5
 
6
+ sass:
7
+ style: compressed
8
+
6
9
  exclude:
7
10
  - LICENSE
8
11
  - README.md
9
12
  - paraqeet.gemspec
13
+ - Rakefile
@@ -20,6 +20,6 @@
20
20
  </head>
21
21
  <body>
22
22
  {{ content }}
23
- <script src="{{- '/assets/js/script.js' | relative_url -}}"></script>
23
+ <script src="{{- '/assets/js/bootstrap.bundle.min.js' | relative_url -}}"></script>
24
24
  </body>
25
25
  </html>
@@ -266,7 +266,8 @@
266
266
  @include deprecate("`.navbar-light`", "v5.2.0", "v6.0.0", true);
267
267
  }
268
268
 
269
- .navbar-dark {
269
+ .navbar-dark,
270
+ .navbar[data-bs-theme="dark"] {
270
271
  // scss-docs-start navbar-dark-css-vars
271
272
  --#{$prefix}navbar-color: #{$navbar-dark-color};
272
273
  --#{$prefix}navbar-hover-color: #{$navbar-dark-hover-color};
@@ -87,7 +87,7 @@ hr {
87
87
  font-style: $headings-font-style;
88
88
  font-weight: $headings-font-weight;
89
89
  line-height: $headings-line-height;
90
- color: var(--#{$prefix}heading-color, inherit);
90
+ color: var(--#{$prefix}heading-color);
91
91
  }
92
92
 
93
93
  h1 {
@@ -77,9 +77,7 @@
77
77
  --#{$prefix}tertiary-bg-rgb: #{to-rgb($body-tertiary-bg)};
78
78
  // scss-docs-end root-body-variables
79
79
 
80
- @if $headings-color != null {
81
- --#{$prefix}heading-color: #{$headings-color};
82
- }
80
+ --#{$prefix}heading-color: #{$headings-color};
83
81
 
84
82
  --#{$prefix}link-color: #{$link-color};
85
83
  --#{$prefix}link-color-rgb: #{to-rgb($link-color)};
@@ -165,9 +163,7 @@
165
163
  --#{$prefix}#{$color}-border-subtle: #{$value};
166
164
  }
167
165
 
168
- @if $headings-color-dark != null {
169
- --#{$prefix}heading-color: #{$headings-color-dark};
170
- }
166
+ --#{$prefix}heading-color: #{$headings-color-dark};
171
167
 
172
168
  --#{$prefix}link-color: #{$link-color-dark};
173
169
  --#{$prefix}link-hover-color: #{$link-hover-color-dark};
@@ -3,6 +3,12 @@
3
3
  //
4
4
 
5
5
  .table {
6
+ // Reset needed for nesting tables
7
+ --#{$prefix}table-color-type: initial;
8
+ --#{$prefix}table-bg-type: initial;
9
+ --#{$prefix}table-color-state: initial;
10
+ --#{$prefix}table-bg-state: initial;
11
+ // End of reset
6
12
  --#{$prefix}table-color: #{$table-color};
7
13
  --#{$prefix}table-bg: #{$table-bg};
8
14
  --#{$prefix}table-border-color: #{$table-border-color};
@@ -16,7 +22,6 @@
16
22
 
17
23
  width: 100%;
18
24
  margin-bottom: $spacer;
19
- color: var(--#{$prefix}table-color);
20
25
  vertical-align: $table-cell-vertical-align;
21
26
  border-color: var(--#{$prefix}table-border-color);
22
27
 
@@ -27,9 +32,11 @@
27
32
  // stylelint-disable-next-line selector-max-universal
28
33
  > :not(caption) > * > * {
29
34
  padding: $table-cell-padding-y $table-cell-padding-x;
35
+ // Following the precept of cascades: https://codepen.io/miriamsuzanne/full/vYNgodb
36
+ color: var(--#{$prefix}table-color-state, var(--#{$prefix}table-color-type, var(--#{$prefix}table-color)));
30
37
  background-color: var(--#{$prefix}table-bg);
31
38
  border-bottom-width: $table-border-width;
32
- box-shadow: inset 0 0 0 9999px var(--#{$prefix}table-accent-bg);
39
+ box-shadow: inset 0 0 0 9999px var(--#{$prefix}table-bg-state, var(--#{$prefix}table-bg-type, var(--#{$prefix}table-accent-bg)));
33
40
  }
34
41
 
35
42
  > tbody {
@@ -104,16 +111,16 @@
104
111
  // For rows
105
112
  .table-striped {
106
113
  > tbody > tr:nth-of-type(#{$table-striped-order}) > * {
107
- --#{$prefix}table-accent-bg: var(--#{$prefix}table-striped-bg);
108
- color: var(--#{$prefix}table-striped-color);
114
+ --#{$prefix}table-color-type: var(--#{$prefix}table-striped-color);
115
+ --#{$prefix}table-bg-type: var(--#{$prefix}table-striped-bg);
109
116
  }
110
117
  }
111
118
 
112
119
  // For columns
113
120
  .table-striped-columns {
114
121
  > :not(caption) > tr > :nth-child(#{$table-striped-columns-order}) {
115
- --#{$prefix}table-accent-bg: var(--#{$prefix}table-striped-bg);
116
- color: var(--#{$prefix}table-striped-color);
122
+ --#{$prefix}table-color-type: var(--#{$prefix}table-striped-color);
123
+ --#{$prefix}table-bg-type: var(--#{$prefix}table-striped-bg);
117
124
  }
118
125
  }
119
126
 
@@ -122,8 +129,8 @@
122
129
  // The `.table-active` class can be added to highlight rows or cells
123
130
 
124
131
  .table-active {
125
- --#{$prefix}table-accent-bg: var(--#{$prefix}table-active-bg);
126
- color: var(--#{$prefix}table-active-color);
132
+ --#{$prefix}table-color-state: var(--#{$prefix}table-active-color);
133
+ --#{$prefix}table-bg-state: var(--#{$prefix}table-active-bg);
127
134
  }
128
135
 
129
136
  // Hover effect
@@ -132,8 +139,8 @@
132
139
 
133
140
  .table-hover {
134
141
  > tbody > tr:hover > * {
135
- --#{$prefix}table-accent-bg: var(--#{$prefix}table-hover-bg);
136
- color: var(--#{$prefix}table-hover-color);
142
+ --#{$prefix}table-color-state: var(--#{$prefix}table-hover-color);
143
+ --#{$prefix}table-bg-state: var(--#{$prefix}table-hover-bg);
137
144
  }
138
145
  }
139
146
 
@@ -49,7 +49,7 @@ $body-tertiary-bg-dark: mix($gray-800, $gray-900, 50%) !default;
49
49
  $body-emphasis-color-dark: $white !default;
50
50
  $border-color-dark: $gray-700 !default;
51
51
  $border-color-translucent-dark: rgba($white, .15) !default;
52
- $headings-color-dark: null !default;
52
+ $headings-color-dark: inherit !default;
53
53
  $link-color-dark: tint-color($primary, 40%) !default;
54
54
  $link-hover-color-dark: shift-color($link-color-dark, -$link-shade-percentage) !default;
55
55
  $code-color-dark: tint-color($code-color, 40%) !default;
@@ -655,7 +655,7 @@ $headings-font-family: null !default;
655
655
  $headings-font-style: null !default;
656
656
  $headings-font-weight: 500 !default;
657
657
  $headings-line-height: 1.2 !default;
658
- $headings-color: null !default;
658
+ $headings-color: inherit !default;
659
659
  // scss-docs-end headings-variables
660
660
 
661
661
  // scss-docs-start display-headings
@@ -731,7 +731,7 @@ $table-cell-padding-x-sm: .25rem !default;
731
731
  $table-cell-vertical-align: top !default;
732
732
 
733
733
  $table-color: var(--#{$prefix}body-color) !default;
734
- $table-bg: transparent !default;
734
+ $table-bg: var(--#{$prefix}body-bg) !default;
735
735
  $table-accent-bg: transparent !default;
736
736
 
737
737
  $table-th-font-weight: null !default;
@@ -5,6 +5,7 @@
5
5
  > .form-control-plaintext,
6
6
  > .form-select {
7
7
  height: $form-floating-height;
8
+ min-height: $form-floating-height;
8
9
  line-height: $form-floating-line-height;
9
10
  }
10
11
 
@@ -1,5 +1,3 @@
1
- // stylelint-disable function-name-case
2
-
3
1
  // All-caps `RGBA()` function used because of this Sass bug: https://github.com/sass/node-sass/issues/2251
4
2
  @each $color, $value in $theme-colors {
5
3
  $color-rgb: to-rgb($value);
@@ -1,17 +1,15 @@
1
- // stylelint-disable function-name-case
2
-
3
1
  // All-caps `RGBA()` function used because of this Sass bug: https://github.com/sass/node-sass/issues/2251
4
2
  @each $color, $value in $theme-colors {
5
3
  .link-#{$color} {
6
- color: RGBA(var(--#{$prefix}#{$color}-rgb, var(--#{$prefix}link-opacity, 1)));
7
- text-decoration-color: RGBA(var(--#{$prefix}#{$color}-rgb), var(--#{$prefix}link-underline-opacity, 1));
4
+ color: RGBA(var(--#{$prefix}#{$color}-rgb), var(--#{$prefix}link-opacity, 1)) if($enable-important-utilities, !important, null);
5
+ text-decoration-color: RGBA(var(--#{$prefix}#{$color}-rgb), var(--#{$prefix}link-underline-opacity, 1)) if($enable-important-utilities, !important, null);
8
6
 
9
7
  @if $link-shade-percentage != 0 {
10
8
  &:hover,
11
9
  &:focus {
12
10
  $hover-color: if(color-contrast($value) == $color-contrast-light, shade-color($value, $link-shade-percentage), tint-color($value, $link-shade-percentage));
13
- color: RGBA(#{to-rgb($hover-color)}, var(--#{$prefix}link-opacity, 1));
14
- text-decoration-color: RGBA(to-rgb($hover-color), var(--#{$prefix}link-underline-opacity, 1));
11
+ color: RGBA(#{to-rgb($hover-color)}, var(--#{$prefix}link-opacity, 1)) if($enable-important-utilities, !important, null);
12
+ text-decoration-color: RGBA(to-rgb($hover-color), var(--#{$prefix}link-underline-opacity, 1)) if($enable-important-utilities, !important, null);
15
13
  }
16
14
  }
17
15
  }
@@ -19,14 +17,14 @@
19
17
 
20
18
  // One-off special link helper as a bridge until v6
21
19
  .link-body-emphasis {
22
- color: RGBA(var(--#{$prefix}emphasis-color-rgb), var(--#{$prefix}link-opacity, 1));
23
- text-decoration-color: RGBA(var(--#{$prefix}emphasis-color-rgb), var(--#{$prefix}link-underline-opacity, 1));
20
+ color: RGBA(var(--#{$prefix}emphasis-color-rgb), var(--#{$prefix}link-opacity, 1)) if($enable-important-utilities, !important, null);
21
+ text-decoration-color: RGBA(var(--#{$prefix}emphasis-color-rgb), var(--#{$prefix}link-underline-opacity, 1)) if($enable-important-utilities, !important, null);
24
22
 
25
23
  @if $link-shade-percentage != 0 {
26
24
  &:hover,
27
25
  &:focus {
28
- color: RGBA(var(--#{$prefix}emphasis-color-rgb), var(--#{$prefix}link-opacity, .75));
29
- text-decoration-color: RGBA(var(--#{$prefix}emphasis-color-rgb), var(--#{$prefix}link-underline-opacity, .75));
26
+ color: RGBA(var(--#{$prefix}emphasis-color-rgb), var(--#{$prefix}link-opacity, .75)) if($enable-important-utilities, !important, null);
27
+ text-decoration-color: RGBA(var(--#{$prefix}emphasis-color-rgb), var(--#{$prefix}link-underline-opacity, .75)) if($enable-important-utilities, !important, null);
30
28
  }
31
29
  }
32
30
  }
@@ -1,6 +1,6 @@
1
1
  @mixin bsBanner($file) {
2
2
  /*!
3
- * Bootstrap #{$file} v5.3.0-alpha3 (https://getbootstrap.com/)
3
+ * Bootstrap #{$file} v5.3.0 (https://getbootstrap.com/)
4
4
  * Copyright 2011-2023 The Bootstrap Authors
5
5
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
6
6
  */
@@ -258,7 +258,7 @@ $enable-important-utilities: false;
258
258
  .desaturated-color-blue {
259
259
  --bs-color-opacity: 1;
260
260
  // Sass compilation will put a leading zero so we want to keep that one
261
- // stylelint-disable-next-line number-leading-zero
261
+ // stylelint-disable-next-line stylistic/number-leading-zero
262
262
  --bs-color-saturation: 0.25;
263
263
  color: hsla(192deg, var(--bs-color-saturation), 0, var(--bs-color-opacity));
264
264
  }
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Bootstrap v5.3.0-alpha3 (https://getbootstrap.com/)
2
+ * Bootstrap v5.3.0 (https://getbootstrap.com/)
3
3
  * Copyright 2011-2023 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
  */
@@ -311,6 +311,7 @@
311
311
  * --------------------------------------------------------------------------
312
312
  */
313
313
 
314
+
314
315
  /**
315
316
  * Constants
316
317
  */
@@ -589,6 +590,7 @@
589
590
  * --------------------------------------------------------------------------
590
591
  */
591
592
 
593
+
592
594
  /**
593
595
  * Class definition
594
596
  */
@@ -641,11 +643,12 @@
641
643
  * --------------------------------------------------------------------------
642
644
  */
643
645
 
646
+
644
647
  /**
645
648
  * Constants
646
649
  */
647
650
 
648
- const VERSION = '5.3.0-alpha2';
651
+ const VERSION = '5.3.0';
649
652
 
650
653
  /**
651
654
  * Class definition
@@ -708,6 +711,7 @@
708
711
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
709
712
  * --------------------------------------------------------------------------
710
713
  */
714
+
711
715
  const getSelector = element => {
712
716
  let selector = element.getAttribute('data-bs-target');
713
717
  if (!selector || selector === '#') {
@@ -796,6 +800,7 @@
796
800
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
797
801
  * --------------------------------------------------------------------------
798
802
  */
803
+
799
804
  const enableDismissTrigger = (component, method = 'hide') => {
800
805
  const clickEvent = `click.dismiss${component.EVENT_KEY}`;
801
806
  const name = component.NAME;
@@ -821,6 +826,7 @@
821
826
  * --------------------------------------------------------------------------
822
827
  */
823
828
 
829
+
824
830
  /**
825
831
  * Constants
826
832
  */
@@ -895,6 +901,7 @@
895
901
  * --------------------------------------------------------------------------
896
902
  */
897
903
 
904
+
898
905
  /**
899
906
  * Constants
900
907
  */
@@ -958,6 +965,7 @@
958
965
  * --------------------------------------------------------------------------
959
966
  */
960
967
 
968
+
961
969
  /**
962
970
  * Constants
963
971
  */
@@ -1077,6 +1085,7 @@
1077
1085
  * --------------------------------------------------------------------------
1078
1086
  */
1079
1087
 
1088
+
1080
1089
  /**
1081
1090
  * Constants
1082
1091
  */
@@ -1449,6 +1458,7 @@
1449
1458
  * --------------------------------------------------------------------------
1450
1459
  */
1451
1460
 
1461
+
1452
1462
  /**
1453
1463
  * Constants
1454
1464
  */
@@ -2126,7 +2136,6 @@
2126
2136
  }
2127
2137
 
2128
2138
  if (!contains(state.elements.popper, arrowElement)) {
2129
-
2130
2139
  return;
2131
2140
  }
2132
2141
 
@@ -2268,7 +2277,6 @@
2268
2277
  adaptive = _options$adaptive === void 0 ? true : _options$adaptive,
2269
2278
  _options$roundOffsets = options.roundOffsets,
2270
2279
  roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;
2271
-
2272
2280
  var commonStyles = {
2273
2281
  placement: getBasePlacement(state.placement),
2274
2282
  variation: getVariation(state.placement),
@@ -3336,8 +3344,7 @@
3336
3344
 
3337
3345
  state.orderedModifiers = orderedModifiers.filter(function (m) {
3338
3346
  return m.enabled;
3339
- }); // Validate the provided modifiers so that the consumer will get warned
3340
-
3347
+ });
3341
3348
  runModifierEffects();
3342
3349
  return instance.update();
3343
3350
  },
@@ -3357,7 +3364,6 @@
3357
3364
  // anymore
3358
3365
 
3359
3366
  if (!areValidElements(reference, popper)) {
3360
-
3361
3367
  return;
3362
3368
  } // Store the reference and popper rects to be read by modifiers
3363
3369
 
@@ -3382,7 +3388,6 @@
3382
3388
  });
3383
3389
 
3384
3390
  for (var index = 0; index < state.orderedModifiers.length; index++) {
3385
-
3386
3391
  if (state.reset === true) {
3387
3392
  state.reset = false;
3388
3393
  index = -1;
@@ -3420,7 +3425,6 @@
3420
3425
  };
3421
3426
 
3422
3427
  if (!areValidElements(reference, popper)) {
3423
-
3424
3428
  return instance;
3425
3429
  }
3426
3430
 
@@ -3435,11 +3439,11 @@
3435
3439
  // one.
3436
3440
 
3437
3441
  function runModifierEffects() {
3438
- state.orderedModifiers.forEach(function (_ref3) {
3439
- var name = _ref3.name,
3440
- _ref3$options = _ref3.options,
3441
- options = _ref3$options === void 0 ? {} : _ref3$options,
3442
- effect = _ref3.effect;
3442
+ state.orderedModifiers.forEach(function (_ref) {
3443
+ var name = _ref.name,
3444
+ _ref$options = _ref.options,
3445
+ options = _ref$options === void 0 ? {} : _ref$options,
3446
+ effect = _ref.effect;
3443
3447
 
3444
3448
  if (typeof effect === 'function') {
3445
3449
  var cleanupFn = effect({
@@ -3527,6 +3531,7 @@
3527
3531
  * --------------------------------------------------------------------------
3528
3532
  */
3529
3533
 
3534
+
3530
3535
  /**
3531
3536
  * Constants
3532
3537
  */
@@ -3894,6 +3899,7 @@
3894
3899
  * --------------------------------------------------------------------------
3895
3900
  */
3896
3901
 
3902
+
3897
3903
  /**
3898
3904
  * Constants
3899
3905
  */
@@ -4018,6 +4024,7 @@
4018
4024
  * --------------------------------------------------------------------------
4019
4025
  */
4020
4026
 
4027
+
4021
4028
  /**
4022
4029
  * Constants
4023
4030
  */
@@ -4116,6 +4123,7 @@
4116
4123
  * --------------------------------------------------------------------------
4117
4124
  */
4118
4125
 
4126
+
4119
4127
  /**
4120
4128
  * Constants
4121
4129
  */
@@ -4213,6 +4221,7 @@
4213
4221
  * --------------------------------------------------------------------------
4214
4222
  */
4215
4223
 
4224
+
4216
4225
  /**
4217
4226
  * Constants
4218
4227
  */
@@ -4517,6 +4526,7 @@
4517
4526
  * --------------------------------------------------------------------------
4518
4527
  */
4519
4528
 
4529
+
4520
4530
  /**
4521
4531
  * Constants
4522
4532
  */
@@ -4747,34 +4757,6 @@
4747
4757
  * --------------------------------------------------------------------------
4748
4758
  */
4749
4759
 
4750
- const uriAttributes = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']);
4751
-
4752
- /**
4753
- * A pattern that recognizes a commonly useful subset of URLs that are safe.
4754
- *
4755
- * Shout-out to Angular https://github.com/angular/angular/blob/12.2.x/packages/core/src/sanitization/url_sanitizer.ts
4756
- */
4757
- const SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i;
4758
-
4759
- /**
4760
- * A pattern that matches safe data URLs. Only matches image, video and audio types.
4761
- *
4762
- * Shout-out to Angular https://github.com/angular/angular/blob/12.2.x/packages/core/src/sanitization/url_sanitizer.ts
4763
- */
4764
- 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;
4765
- const allowedAttribute = (attribute, allowedAttributeList) => {
4766
- const attributeName = attribute.nodeName.toLowerCase();
4767
- if (allowedAttributeList.includes(attributeName)) {
4768
- if (uriAttributes.has(attributeName)) {
4769
- return Boolean(SAFE_URL_PATTERN.test(attribute.nodeValue) || DATA_URL_PATTERN.test(attribute.nodeValue));
4770
- }
4771
- return true;
4772
- }
4773
-
4774
- // Check if a regular expression validates the attribute.
4775
- return allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp).some(regex => regex.test(attributeName));
4776
- };
4777
-
4778
4760
  // js-docs-start allow-list
4779
4761
  const ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i;
4780
4762
  const DefaultAllowlist = {
@@ -4812,6 +4794,28 @@
4812
4794
  };
4813
4795
  // js-docs-end allow-list
4814
4796
 
4797
+ const uriAttributes = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']);
4798
+
4799
+ /**
4800
+ * A pattern that recognizes URLs that are safe wrt. XSS in URL navigation
4801
+ * contexts.
4802
+ *
4803
+ * Shout-out to Angular https://github.com/angular/angular/blob/15.2.8/packages/core/src/sanitization/url_sanitizer.ts#L38
4804
+ */
4805
+ // eslint-disable-next-line unicorn/better-regex
4806
+ const SAFE_URL_PATTERN = /^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i;
4807
+ const allowedAttribute = (attribute, allowedAttributeList) => {
4808
+ const attributeName = attribute.nodeName.toLowerCase();
4809
+ if (allowedAttributeList.includes(attributeName)) {
4810
+ if (uriAttributes.has(attributeName)) {
4811
+ return Boolean(SAFE_URL_PATTERN.test(attribute.nodeValue));
4812
+ }
4813
+ return true;
4814
+ }
4815
+
4816
+ // Check if a regular expression validates the attribute.
4817
+ return allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp).some(regex => regex.test(attributeName));
4818
+ };
4815
4819
  function sanitizeHtml(unsafeHtml, allowList, sanitizeFunction) {
4816
4820
  if (!unsafeHtml.length) {
4817
4821
  return unsafeHtml;
@@ -4846,6 +4850,7 @@
4846
4850
  * --------------------------------------------------------------------------
4847
4851
  */
4848
4852
 
4853
+
4849
4854
  /**
4850
4855
  * Constants
4851
4856
  */
@@ -4981,6 +4986,7 @@
4981
4986
  * --------------------------------------------------------------------------
4982
4987
  */
4983
4988
 
4989
+
4984
4990
  /**
4985
4991
  * Constants
4986
4992
  */
@@ -5492,6 +5498,7 @@
5492
5498
  * --------------------------------------------------------------------------
5493
5499
  */
5494
5500
 
5501
+
5495
5502
  /**
5496
5503
  * Constants
5497
5504
  */
@@ -5572,6 +5579,7 @@
5572
5579
  * --------------------------------------------------------------------------
5573
5580
  */
5574
5581
 
5582
+
5575
5583
  /**
5576
5584
  * Constants
5577
5585
  */
@@ -5750,11 +5758,11 @@
5750
5758
  if (!anchor.hash || isDisabled(anchor)) {
5751
5759
  continue;
5752
5760
  }
5753
- const observableSection = SelectorEngine.findOne(anchor.hash, this._element);
5761
+ const observableSection = SelectorEngine.findOne(decodeURI(anchor.hash), this._element);
5754
5762
 
5755
5763
  // ensure that the observableSection exists & is visible
5756
5764
  if (isVisible(observableSection)) {
5757
- this._targetLinks.set(anchor.hash, anchor);
5765
+ this._targetLinks.set(decodeURI(anchor.hash), anchor);
5758
5766
  this._observableSections.set(anchor.hash, observableSection);
5759
5767
  }
5760
5768
  }
@@ -5831,6 +5839,7 @@
5831
5839
  * --------------------------------------------------------------------------
5832
5840
  */
5833
5841
 
5842
+
5834
5843
  /**
5835
5844
  * Constants
5836
5845
  */
@@ -6092,6 +6101,7 @@
6092
6101
  * --------------------------------------------------------------------------
6093
6102
  */
6094
6103
 
6104
+
6095
6105
  /**
6096
6106
  * Constants
6097
6107
  */
@@ -6274,6 +6284,7 @@
6274
6284
  * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
6275
6285
  * --------------------------------------------------------------------------
6276
6286
  */
6287
+
6277
6288
  const index_umd = {
6278
6289
  Alert,
6279
6290
  Button,