tabulator-tables 6.5.0 → 6.5.1

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.
Files changed (222) hide show
  1. package/dist/js/tabulator.js +1 -1
  2. package/dist/js/tabulator.min.js +1 -1
  3. package/dist/js/tabulator_esm.js +1 -1
  4. package/dist/js/tabulator_esm.min.js +1 -1
  5. package/dist/js/tabulator_esm.min.mjs +1 -1
  6. package/dist/js/tabulator_esm.mjs +1 -1
  7. package/package.json +2 -1
  8. package/src/js/builds/esm.js +16 -0
  9. package/src/js/builds/jquery_wrapper.js +63 -0
  10. package/src/js/builds/usd.js +1 -0
  11. package/src/js/core/ColumnManager.js +789 -0
  12. package/src/js/core/CoreFeature.js +140 -0
  13. package/src/js/core/FooterManager.js +102 -0
  14. package/src/js/core/Module.js +140 -0
  15. package/src/js/core/RowManager.js +1140 -0
  16. package/src/js/core/Tabulator.js +928 -0
  17. package/src/js/core/TabulatorFull.js +21 -0
  18. package/src/js/core/cell/Cell.js +299 -0
  19. package/src/js/core/cell/CellComponent.js +79 -0
  20. package/src/js/core/column/Column.js +978 -0
  21. package/src/js/core/column/ColumnComponent.js +151 -0
  22. package/src/js/core/column/defaults/options.js +18 -0
  23. package/src/js/core/defaults/options.js +66 -0
  24. package/src/js/core/modules/core.js +3 -0
  25. package/src/js/core/modules/optional.js +37 -0
  26. package/src/js/core/rendering/Renderer.js +204 -0
  27. package/src/js/core/rendering/renderers/BasicHorizontal.js +27 -0
  28. package/src/js/core/rendering/renderers/BasicVertical.js +103 -0
  29. package/src/js/core/rendering/renderers/VirtualDomHorizontal.js +587 -0
  30. package/src/js/core/rendering/renderers/VirtualDomVertical.js +642 -0
  31. package/src/js/core/row/PseudoRow.js +47 -0
  32. package/src/js/core/row/Row.js +487 -0
  33. package/src/js/core/row/RowComponent.js +94 -0
  34. package/src/js/core/tools/Alert.js +66 -0
  35. package/src/js/core/tools/ComponentFunctionBinder.js +32 -0
  36. package/src/js/core/tools/DataLoader.js +128 -0
  37. package/src/js/core/tools/DependencyRegistry.js +82 -0
  38. package/src/js/core/tools/DeprecationAdvisor.js +51 -0
  39. package/src/js/core/tools/ExternalEventBus.js +105 -0
  40. package/src/js/core/tools/Helpers.js +66 -0
  41. package/src/js/core/tools/InteractionMonitor.js +329 -0
  42. package/src/js/core/tools/InternalEventBus.js +162 -0
  43. package/src/js/core/tools/ModuleBinder.js +153 -0
  44. package/src/js/core/tools/OptionsList.js +45 -0
  45. package/src/js/core/tools/Popup.js +317 -0
  46. package/src/js/core/tools/TableRegistry.js +65 -0
  47. package/src/js/modules/Accessor/Accessor.js +115 -0
  48. package/src/js/modules/Accessor/defaults/accessors.js +5 -0
  49. package/src/js/modules/Ajax/Ajax.js +142 -0
  50. package/src/js/modules/Ajax/defaults/config.js +3 -0
  51. package/src/js/modules/Ajax/defaults/contentTypeFormatters.js +45 -0
  52. package/src/js/modules/Ajax/defaults/loaderPromise.js +87 -0
  53. package/src/js/modules/Ajax/defaults/urlGenerator.js +44 -0
  54. package/src/js/modules/Clipboard/Clipboard.js +282 -0
  55. package/src/js/modules/Clipboard/defaults/pasteActions.js +11 -0
  56. package/src/js/modules/Clipboard/defaults/pasteParsers.js +75 -0
  57. package/src/js/modules/Clipboard/extensions/extensions.js +9 -0
  58. package/src/js/modules/Clipboard/extensions/keybindings/actions.js +9 -0
  59. package/src/js/modules/Clipboard/extensions/keybindings/bindings.js +3 -0
  60. package/src/js/modules/ColumnCalcs/CalcComponent.js +46 -0
  61. package/src/js/modules/ColumnCalcs/ColumnCalcs.js +586 -0
  62. package/src/js/modules/ColumnCalcs/defaults/calculations.js +93 -0
  63. package/src/js/modules/Comms/Comms.js +49 -0
  64. package/src/js/modules/DataTree/DataTree.js +620 -0
  65. package/src/js/modules/Download/Download.js +146 -0
  66. package/src/js/modules/Download/defaults/downloaders/csv.js +61 -0
  67. package/src/js/modules/Download/defaults/downloaders/html.js +5 -0
  68. package/src/js/modules/Download/defaults/downloaders/json.js +34 -0
  69. package/src/js/modules/Download/defaults/downloaders/jsonLines.js +32 -0
  70. package/src/js/modules/Download/defaults/downloaders/pdf.js +113 -0
  71. package/src/js/modules/Download/defaults/downloaders/xlsx.js +103 -0
  72. package/src/js/modules/Download/defaults/downloaders.js +15 -0
  73. package/src/js/modules/Edit/Edit.js +845 -0
  74. package/src/js/modules/Edit/List.js +1060 -0
  75. package/src/js/modules/Edit/defaults/editors/adaptable.js +37 -0
  76. package/src/js/modules/Edit/defaults/editors/date.js +144 -0
  77. package/src/js/modules/Edit/defaults/editors/datetime.js +131 -0
  78. package/src/js/modules/Edit/defaults/editors/input.js +77 -0
  79. package/src/js/modules/Edit/defaults/editors/list.js +7 -0
  80. package/src/js/modules/Edit/defaults/editors/number.js +110 -0
  81. package/src/js/modules/Edit/defaults/editors/progress.js +127 -0
  82. package/src/js/modules/Edit/defaults/editors/range.js +81 -0
  83. package/src/js/modules/Edit/defaults/editors/star.js +146 -0
  84. package/src/js/modules/Edit/defaults/editors/textarea.js +123 -0
  85. package/src/js/modules/Edit/defaults/editors/tickCross.js +95 -0
  86. package/src/js/modules/Edit/defaults/editors/time.js +132 -0
  87. package/src/js/modules/Edit/defaults/editors.js +27 -0
  88. package/src/js/modules/Edit/inputMask.js +74 -0
  89. package/src/js/modules/Export/Export.js +654 -0
  90. package/src/js/modules/Export/ExportColumn.js +9 -0
  91. package/src/js/modules/Export/ExportRow.js +8 -0
  92. package/src/js/modules/Export/defaults/columnLookups.js +3 -0
  93. package/src/js/modules/Export/defaults/rowLookups.js +18 -0
  94. package/src/js/modules/Filter/Filter.js +902 -0
  95. package/src/js/modules/Filter/defaults/filters.js +215 -0
  96. package/src/js/modules/Format/Format.js +200 -0
  97. package/src/js/modules/Format/defaults/formatters/adaptable.js +32 -0
  98. package/src/js/modules/Format/defaults/formatters/array.js +30 -0
  99. package/src/js/modules/Format/defaults/formatters/buttonCross.js +3 -0
  100. package/src/js/modules/Format/defaults/formatters/buttonTick.js +3 -0
  101. package/src/js/modules/Format/defaults/formatters/color.js +4 -0
  102. package/src/js/modules/Format/defaults/formatters/datetime.js +39 -0
  103. package/src/js/modules/Format/defaults/formatters/datetimediff.js +43 -0
  104. package/src/js/modules/Format/defaults/formatters/handle.js +4 -0
  105. package/src/js/modules/Format/defaults/formatters/html.js +3 -0
  106. package/src/js/modules/Format/defaults/formatters/image.js +40 -0
  107. package/src/js/modules/Format/defaults/formatters/json.js +12 -0
  108. package/src/js/modules/Format/defaults/formatters/link.js +82 -0
  109. package/src/js/modules/Format/defaults/formatters/lookup.js +10 -0
  110. package/src/js/modules/Format/defaults/formatters/money.js +44 -0
  111. package/src/js/modules/Format/defaults/formatters/plaintext.js +3 -0
  112. package/src/js/modules/Format/defaults/formatters/progress.js +133 -0
  113. package/src/js/modules/Format/defaults/formatters/rownum.js +14 -0
  114. package/src/js/modules/Format/defaults/formatters/star.js +38 -0
  115. package/src/js/modules/Format/defaults/formatters/textarea.js +4 -0
  116. package/src/js/modules/Format/defaults/formatters/tickCross.js +22 -0
  117. package/src/js/modules/Format/defaults/formatters/toggle.js +48 -0
  118. package/src/js/modules/Format/defaults/formatters/traffic.js +47 -0
  119. package/src/js/modules/Format/defaults/formatters.js +47 -0
  120. package/src/js/modules/FrozenColumns/FrozenColumns.js +302 -0
  121. package/src/js/modules/FrozenRows/FrozenRows.js +175 -0
  122. package/src/js/modules/GroupRows/Group.js +615 -0
  123. package/src/js/modules/GroupRows/GroupComponent.js +69 -0
  124. package/src/js/modules/GroupRows/GroupRows.js +636 -0
  125. package/src/js/modules/History/History.js +172 -0
  126. package/src/js/modules/History/defaults/redoers.js +31 -0
  127. package/src/js/modules/History/defaults/undoers.js +33 -0
  128. package/src/js/modules/History/extensions/extensions.js +9 -0
  129. package/src/js/modules/History/extensions/keybindings/actions.js +27 -0
  130. package/src/js/modules/History/extensions/keybindings/bindings.js +4 -0
  131. package/src/js/modules/HtmlTableImport/HtmlTableImport.js +180 -0
  132. package/src/js/modules/Import/Import.js +303 -0
  133. package/src/js/modules/Import/defaults/importers/array.js +3 -0
  134. package/src/js/modules/Import/defaults/importers/csv.js +61 -0
  135. package/src/js/modules/Import/defaults/importers/json.js +8 -0
  136. package/src/js/modules/Import/defaults/importers/xlsx.js +7 -0
  137. package/src/js/modules/Import/defaults/importers.js +11 -0
  138. package/src/js/modules/Interaction/Interaction.js +339 -0
  139. package/src/js/modules/Keybindings/Keybindings.js +198 -0
  140. package/src/js/modules/Keybindings/defaults/actions.js +90 -0
  141. package/src/js/modules/Keybindings/defaults/bindings.js +12 -0
  142. package/src/js/modules/Layout/Layout.js +66 -0
  143. package/src/js/modules/Layout/defaults/modes/fitColumns.js +171 -0
  144. package/src/js/modules/Layout/defaults/modes/fitData.js +10 -0
  145. package/src/js/modules/Layout/defaults/modes/fitDataGeneral.js +10 -0
  146. package/src/js/modules/Layout/defaults/modes/fitDataStretch.js +40 -0
  147. package/src/js/modules/Layout/defaults/modes.js +12 -0
  148. package/src/js/modules/Localize/Localize.js +184 -0
  149. package/src/js/modules/Localize/defaults/langs.js +37 -0
  150. package/src/js/modules/Menu/Menu.js +302 -0
  151. package/src/js/modules/MoveColumns/MoveColumns.js +311 -0
  152. package/src/js/modules/MoveRows/MoveRows.js +604 -0
  153. package/src/js/modules/MoveRows/defaults/receivers.js +30 -0
  154. package/src/js/modules/MoveRows/defaults/senders.js +5 -0
  155. package/src/js/modules/Mutator/Mutator.js +164 -0
  156. package/src/js/modules/Mutator/defaults/mutators.js +1 -0
  157. package/src/js/modules/Page/Page.js +891 -0
  158. package/src/js/modules/Page/defaults/pageCounters/pages.js +33 -0
  159. package/src/js/modules/Page/defaults/pageCounters/rows.js +40 -0
  160. package/src/js/modules/Page/defaults/pageCounters.js +8 -0
  161. package/src/js/modules/Persistence/Persistence.js +473 -0
  162. package/src/js/modules/Persistence/defaults/readers.js +29 -0
  163. package/src/js/modules/Persistence/defaults/writers.js +13 -0
  164. package/src/js/modules/Popup/Popup.js +227 -0
  165. package/src/js/modules/Print/Print.js +136 -0
  166. package/src/js/modules/ReactiveData/ReactiveData.js +416 -0
  167. package/src/js/modules/ResizeColumns/ResizeColumns.js +365 -0
  168. package/src/js/modules/ResizeRows/ResizeRows.js +145 -0
  169. package/src/js/modules/ResizeTable/ResizeTable.js +158 -0
  170. package/src/js/modules/ResponsiveLayout/ResponsiveLayout.js +354 -0
  171. package/src/js/modules/ResponsiveLayout/extensions/extensions.js +9 -0
  172. package/src/js/modules/ResponsiveLayout/extensions/formatters/responsiveCollapse.js +44 -0
  173. package/src/js/modules/SelectRange/Range.js +366 -0
  174. package/src/js/modules/SelectRange/RangeComponent.js +91 -0
  175. package/src/js/modules/SelectRange/SelectRange.js +993 -0
  176. package/src/js/modules/SelectRange/extensions/clipboard/pasteActions.js +45 -0
  177. package/src/js/modules/SelectRange/extensions/clipboard/pasteParsers.js +57 -0
  178. package/src/js/modules/SelectRange/extensions/export/columnLookups.js +11 -0
  179. package/src/js/modules/SelectRange/extensions/export/rowLookups.js +5 -0
  180. package/src/js/modules/SelectRange/extensions/extensions.js +21 -0
  181. package/src/js/modules/SelectRange/extensions/keybindings/actions.js +38 -0
  182. package/src/js/modules/SelectRange/extensions/keybindings/bindings.js +14 -0
  183. package/src/js/modules/SelectRow/SelectRow.js +499 -0
  184. package/src/js/modules/SelectRow/extensions/extensions.js +9 -0
  185. package/src/js/modules/SelectRow/extensions/formatters/rowSelection.js +60 -0
  186. package/src/js/modules/Sort/Sort.js +480 -0
  187. package/src/js/modules/Sort/defaults/sorters/alphanum.js +44 -0
  188. package/src/js/modules/Sort/defaults/sorters/array.js +82 -0
  189. package/src/js/modules/Sort/defaults/sorters/boolean.js +7 -0
  190. package/src/js/modules/Sort/defaults/sorters/date.js +10 -0
  191. package/src/js/modules/Sort/defaults/sorters/datetime.js +48 -0
  192. package/src/js/modules/Sort/defaults/sorters/exists.js +7 -0
  193. package/src/js/modules/Sort/defaults/sorters/number.js +40 -0
  194. package/src/js/modules/Sort/defaults/sorters/string.js +34 -0
  195. package/src/js/modules/Sort/defaults/sorters/time.js +10 -0
  196. package/src/js/modules/Sort/defaults/sorters.js +21 -0
  197. package/src/js/modules/Spreadsheet/GridCalculator.js +64 -0
  198. package/src/js/modules/Spreadsheet/Sheet.js +243 -0
  199. package/src/js/modules/Spreadsheet/SheetComponent.js +59 -0
  200. package/src/js/modules/Spreadsheet/Spreadsheet.js +309 -0
  201. package/src/js/modules/Tooltip/Tooltip.js +128 -0
  202. package/src/js/modules/Validate/Validate.js +303 -0
  203. package/src/js/modules/Validate/defaults/validators.js +150 -0
  204. package/src/scss/tabulator.scss +1693 -0
  205. package/src/scss/themes/bootstrap/tabulator_bootstrap3.scss +302 -0
  206. package/src/scss/themes/bootstrap/tabulator_bootstrap4.scss +589 -0
  207. package/src/scss/themes/bootstrap/tabulator_bootstrap5.scss +979 -0
  208. package/src/scss/themes/bootstrap/variables3.scss +872 -0
  209. package/src/scss/themes/bootstrap/variables4.scss +1059 -0
  210. package/src/scss/themes/bootstrap/variables5.scss +1967 -0
  211. package/src/scss/themes/bulma/tabulator_bulma.scss +316 -0
  212. package/src/scss/themes/bulma/variables.scss +198 -0
  213. package/src/scss/themes/materialize/tabulator_materialize.scss +318 -0
  214. package/src/scss/themes/materialize/variables.scss +71 -0
  215. package/src/scss/themes/semanticui/tabulator_semanticui.scss +623 -0
  216. package/src/scss/themes/semanticui/variables.scss +843 -0
  217. package/src/scss/themes/semanticui/variables_table.scss +248 -0
  218. package/src/scss/themes/tabulator_midnight.scss +235 -0
  219. package/src/scss/themes/tabulator_modern.scss +308 -0
  220. package/src/scss/themes/tabulator_simple.scss +143 -0
  221. package/src/scss/themes/tabulator_site.scss +267 -0
  222. package/src/scss/themes/tabulator_site_dark.scss +496 -0
@@ -0,0 +1,1059 @@
1
+ @use "sass:color";
2
+ @use "sass:map";
3
+ @use "sass:string";
4
+ @use "sass:math";
5
+ @use "sass:list";
6
+
7
+ // Variables
8
+ //
9
+ // Variables should follow the `$component-state-property-size` formula for
10
+ // consistent naming. Ex: $nav-link-disabled-color and $modal-content-box-shadow-xs.
11
+
12
+
13
+ //
14
+ // Color system
15
+ //
16
+
17
+ // stylelint-disable
18
+ $white: #fff !default;
19
+ $gray-100: #f8f9fa !default;
20
+ $gray-200: #e9ecef !default;
21
+ $gray-300: #dee2e6 !default;
22
+ $gray-400: #ced4da !default;
23
+ $gray-500: #adb5bd !default;
24
+ $gray-600: #6c757d !default;
25
+ $gray-700: #495057 !default;
26
+ $gray-800: #343a40 !default;
27
+ $gray-900: #212529 !default;
28
+ $black: #000 !default;
29
+
30
+ $grays: () !default;
31
+ $grays: map.merge((
32
+ "100": $gray-100,
33
+ "200": $gray-200,
34
+ "300": $gray-300,
35
+ "400": $gray-400,
36
+ "500": $gray-500,
37
+ "600": $gray-600,
38
+ "700": $gray-700,
39
+ "800": $gray-800,
40
+ "900": $gray-900
41
+ ), $grays);
42
+
43
+ $blue: #007bff !default;
44
+ $indigo: #6610f2 !default;
45
+ $purple: #6f42c1 !default;
46
+ $pink: #e83e8c !default;
47
+ $red: #dc3545 !default;
48
+ $orange: #fd7e14 !default;
49
+ $yellow: #ffc107 !default;
50
+ $green: #28a745 !default;
51
+ $teal: #20c997 !default;
52
+ $cyan: #17a2b8 !default;
53
+
54
+ $colors: () !default;
55
+ $colors: map.merge((
56
+ "blue": $blue,
57
+ "indigo": $indigo,
58
+ "purple": $purple,
59
+ "pink": $pink,
60
+ "red": $red,
61
+ "orange": $orange,
62
+ "yellow": $yellow,
63
+ "green": $green,
64
+ "teal": $teal,
65
+ "cyan": $cyan,
66
+ "white": $white,
67
+ "gray": $gray-600,
68
+ "gray-dark": $gray-800
69
+ ), $colors);
70
+
71
+ $primary: $blue !default;
72
+ $secondary: $gray-600 !default;
73
+ $success: $green !default;
74
+ $info: $cyan !default;
75
+ $warning: $yellow !default;
76
+ $danger: $red !default;
77
+ $light: $gray-100 !default;
78
+ $dark: $gray-800 !default;
79
+
80
+ $theme-colors: () !default;
81
+ $theme-colors: map.merge((
82
+ "primary": $primary,
83
+ "secondary": $secondary,
84
+ "success": $success,
85
+ "info": $info,
86
+ "warning": $warning,
87
+ "danger": $danger,
88
+ "light": $light,
89
+ "dark": $dark
90
+ ), $theme-colors);
91
+ // stylelint-enable
92
+
93
+ // Set a specific jump point for requesting color jumps
94
+ $theme-color-interval: 8% !default;
95
+
96
+ // The yiq lightness value that determines when the lightness of color changes from "dark" to "light". Acceptable values are between 0 and 255.
97
+ $yiq-contrasted-threshold: 150 !default;
98
+
99
+ // Customize the light and dark text colors for use in our YIQ color contrast function.
100
+ $yiq-text-dark: $gray-900 !default;
101
+ $yiq-text-light: $white !default;
102
+
103
+ // Options
104
+ //
105
+ // Quickly modify global styling by enabling or disabling optional features.
106
+
107
+ $enable-caret: true !default;
108
+ $enable-rounded: true !default;
109
+ $enable-shadows: false !default;
110
+ $enable-gradients: false !default;
111
+ $enable-transitions: true !default;
112
+ $enable-hover-media-query: false !default; // Deprecated, no longer affects any compiled CSS
113
+ $enable-grid-classes: true !default;
114
+ $enable-print-styles: true !default;
115
+
116
+
117
+
118
+ // Bootstrap functions
119
+ //
120
+ // Utility mixins and functions for evaluating source code across our variables, maps, and mixins.
121
+
122
+ // Ascending
123
+ // Used to evaluate Sass maps like our grid breakpoints.
124
+ @mixin _assert-ascending($map, $map-name) {
125
+ $prev-key: null;
126
+ $prev-num: null;
127
+ @each $key, $num in $map {
128
+ @if $prev-num == null {
129
+ // Do nothing
130
+ } @else if not math.compatible($prev-num, $num) {
131
+ @warn "Potentially invalid value for #{$map-name}: This map must be in ascending order, but key '#{$key}' has value #{$num} whose unit makes it incomparable to #{$prev-num}, the value of the previous key '#{$prev-key}' !";
132
+ } @else if $prev-num >= $num {
133
+ @warn "Invalid value for #{$map-name}: This map must be in ascending order, but key '#{$key}' has value #{$num} which isn't greater than #{$prev-num}, the value of the previous key '#{$prev-key}' !";
134
+ }
135
+ $prev-key: $key;
136
+ $prev-num: $num;
137
+ }
138
+ }
139
+
140
+ // Starts at zero
141
+ // Another grid mixin that ensures the min-width of the lowest breakpoint starts at 0.
142
+ @mixin _assert-starts-at-zero($map) {
143
+ $values: map.values($map);
144
+ $first-value: list.nth($values, 1);
145
+ @if $first-value != 0 {
146
+ @warn "First breakpoint in `$grid-breakpoints` must start at 0, but starts at #{$first-value}.";
147
+ }
148
+ }
149
+
150
+ // Replace `$search` with `$replace` in `$string`
151
+ // Used on our SVG icon backgrounds for custom forms.
152
+ //
153
+ // @author Hugo Giraudel
154
+ // @param {String} $string - Initial string
155
+ // @param {String} $search - Substring to replace
156
+ // @param {String} $replace ('') - New value
157
+ // @return {String} - Updated string
158
+ @function str-replace($string, $search, $replace: "") {
159
+ $index: string.index($string, $search);
160
+
161
+ @if $index {
162
+ @return string.slice($string, 1, $index - 1) + $replace + str-replace(string.slice($string, $index + string.length($search)), $search, $replace);
163
+ }
164
+
165
+ @return $string;
166
+ }
167
+
168
+ // Color contrast
169
+ @function color-yiq($color) {
170
+ $r: red($color);
171
+ $g: green($color);
172
+ $b: blue($color);
173
+
174
+ $yiq: calc((($r * 299) + ($g * 587) + ($b * 114)) / 1000);
175
+
176
+ @if ($yiq >= $yiq-contrasted-threshold) {
177
+ @return $yiq-text-dark;
178
+ } @else {
179
+ @return $yiq-text-light;
180
+ }
181
+ }
182
+
183
+ // Retrieve color Sass maps
184
+ @function color($key: "blue") {
185
+ @return map.get($colors, $key);
186
+ }
187
+
188
+ @function theme-color($key: "primary") {
189
+ @return map.get($theme-colors, $key);
190
+ }
191
+
192
+ @function gray($key: "100") {
193
+ @return map.get($grays, $key);
194
+ }
195
+
196
+ // Request a theme color level
197
+ @function theme-color-level($color-name: "primary", $level: 0) {
198
+ $color: theme-color($color-name);
199
+ $color-base: if($level > 0, $black, $white);
200
+ $level: abs($level);
201
+
202
+ @return color.mix($color-base, $color, $level * $theme-color-interval);
203
+ }
204
+
205
+
206
+ // Tables
207
+
208
+ @mixin table-row-variant($state, $background) {
209
+ // Exact selectors below required to override `.table-striped` and prevent
210
+ // inheritance to nested tables.
211
+ .table-#{$state} {
212
+ &,
213
+ > th,
214
+ > td {
215
+ background-color: $background;
216
+ }
217
+ }
218
+
219
+ // Hover states for `.table-hover`
220
+ // Note: this is not available for cells or rows within `thead` or `tfoot`.
221
+ .table-hover {
222
+ $hover-background: color.adjust($background, $lightness: -5%);
223
+
224
+ .table-#{$state} {
225
+ @include hover {
226
+ background-color: $hover-background;
227
+
228
+ > td,
229
+ > th {
230
+ background-color: $hover-background;
231
+ }
232
+ }
233
+ }
234
+ }
235
+ }
236
+
237
+
238
+
239
+
240
+
241
+
242
+ // Spacing
243
+ //
244
+ // Control the default styling of most Bootstrap elements by modifying these
245
+ // variables. Mostly focused on spacing.
246
+ // You can add more entries to the $spacers map, should you need more variation.
247
+
248
+ // stylelint-disable
249
+ $spacer: 1rem !default;
250
+ $spacers: () !default;
251
+ $spacers: map.merge((
252
+ 0: 0,
253
+ 1: ($spacer * .25),
254
+ 2: ($spacer * .5),
255
+ 3: $spacer,
256
+ 4: ($spacer * 1.5),
257
+ 5: ($spacer * 3)
258
+ ), $spacers);
259
+
260
+ // This variable affects the `.h-*` and `.w-*` classes.
261
+ $sizes: () !default;
262
+ $sizes: map.merge((
263
+ 25: 25%,
264
+ 50: 50%,
265
+ 75: 75%,
266
+ 100: 100%,
267
+ auto: auto
268
+ ), $sizes);
269
+ // stylelint-enable
270
+
271
+ // Body
272
+ //
273
+ // Settings for the `<body>` element.
274
+
275
+ $body-bg: $white !default;
276
+ $body-color: $gray-900 !default;
277
+
278
+ // Links
279
+ //
280
+ // Style anchor elements.
281
+
282
+ $link-color: theme-color("primary") !default;
283
+ $link-decoration: none !default;
284
+ $link-hover-color: color.adjust($link-color, $lightness: -15%) !default;
285
+ $link-hover-decoration: underline !default;
286
+
287
+ // Paragraphs
288
+ //
289
+ // Style p element.
290
+
291
+ $paragraph-margin-bottom: 1rem !default;
292
+
293
+
294
+ // Grid breakpoints
295
+ //
296
+ // Define the minimum dimensions at which your layout will change,
297
+ // adapting to different screen sizes, for use in media queries.
298
+
299
+ $grid-breakpoints: (
300
+ xs: 0,
301
+ sm: 576px,
302
+ md: 768px,
303
+ lg: 992px,
304
+ xl: 1200px
305
+ ) !default;
306
+
307
+ @include _assert-ascending($grid-breakpoints, "$grid-breakpoints");
308
+ @include _assert-starts-at-zero($grid-breakpoints);
309
+
310
+
311
+ // Grid containers
312
+ //
313
+ // Define the maximum width of `.container` for different screen sizes.
314
+
315
+ $container-max-widths: (
316
+ sm: 540px,
317
+ md: 720px,
318
+ lg: 960px,
319
+ xl: 1140px
320
+ ) !default;
321
+
322
+ @include _assert-ascending($container-max-widths, "$container-max-widths");
323
+
324
+
325
+ // Grid columns
326
+ //
327
+ // Set the number of columns and specify the width of the gutters.
328
+
329
+ $grid-columns: 12 !default;
330
+ $grid-gutter-width: 30px !default;
331
+
332
+ // Components
333
+ //
334
+ // Define common padding and border radius sizes and more.
335
+
336
+ $line-height-lg: 1.5 !default;
337
+ $line-height-sm: 1.5 !default;
338
+
339
+ $border-width: 1px !default;
340
+ $border-color: $gray-300 !default;
341
+
342
+ $border-radius: .25rem !default;
343
+ $border-radius-lg: .3rem !default;
344
+ $border-radius-sm: .2rem !default;
345
+
346
+ $box-shadow-sm: 0 .125rem .25rem rgba($black, .075) !default;
347
+ $box-shadow: 0 .5rem 1rem rgba($black, .15) !default;
348
+ $box-shadow-lg: 0 1rem 3rem rgba($black, .175) !default;
349
+
350
+ $component-active-color: $white !default;
351
+ $component-active-bg: theme-color("primary") !default;
352
+
353
+ $caret-width: .3em !default;
354
+
355
+ $transition-base: all .2s ease-in-out !default;
356
+ $transition-fade: opacity .15s linear !default;
357
+ $transition-collapse: height .35s ease !default;
358
+
359
+
360
+ // Fonts
361
+ //
362
+ // Font, line-height, and color for body text, headings, and more.
363
+
364
+ // stylelint-disable value-keyword-case
365
+ $font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !default;
366
+ $font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !default;
367
+ $font-family-base: $font-family-sans-serif !default;
368
+ // stylelint-enable value-keyword-case
369
+
370
+ $font-size-base: 1rem !default; // Assumes the browser default, typically `16px`
371
+ $font-size-lg: ($font-size-base * 1.25) !default;
372
+ $font-size-sm: ($font-size-base * .875) !default;
373
+
374
+ $font-weight-light: 300 !default;
375
+ $font-weight-normal: 400 !default;
376
+ $font-weight-bold: 700 !default;
377
+
378
+ $font-weight-base: $font-weight-normal !default;
379
+ $line-height-base: 1.5 !default;
380
+
381
+ $h1-font-size: $font-size-base * 2.5 !default;
382
+ $h2-font-size: $font-size-base * 2 !default;
383
+ $h3-font-size: $font-size-base * 1.75 !default;
384
+ $h4-font-size: $font-size-base * 1.5 !default;
385
+ $h5-font-size: $font-size-base * 1.25 !default;
386
+ $h6-font-size: $font-size-base !default;
387
+
388
+ $headings-margin-bottom: calc($spacer / 2) !default;
389
+ $headings-font-family: inherit !default;
390
+ $headings-font-weight: 500 !default;
391
+ $headings-line-height: 1.2 !default;
392
+ $headings-color: inherit !default;
393
+
394
+ $display1-size: 6rem !default;
395
+ $display2-size: 5.5rem !default;
396
+ $display3-size: 4.5rem !default;
397
+ $display4-size: 3.5rem !default;
398
+
399
+ $display1-weight: 300 !default;
400
+ $display2-weight: 300 !default;
401
+ $display3-weight: 300 !default;
402
+ $display4-weight: 300 !default;
403
+ $display-line-height: $headings-line-height !default;
404
+
405
+ $lead-font-size: ($font-size-base * 1.25) !default;
406
+ $lead-font-weight: 300 !default;
407
+
408
+ $small-font-size: 80% !default;
409
+
410
+ $text-muted: $gray-600 !default;
411
+
412
+ $blockquote-small-color: $gray-600 !default;
413
+ $blockquote-font-size: ($font-size-base * 1.25) !default;
414
+
415
+ $hr-border-color: rgba($black, .1) !default;
416
+ $hr-border-width: $border-width !default;
417
+
418
+ $mark-padding: .2em !default;
419
+
420
+ $dt-font-weight: $font-weight-bold !default;
421
+
422
+ $kbd-box-shadow: inset 0 -.1rem 0 rgba($black, .25) !default;
423
+ $nested-kbd-font-weight: $font-weight-bold !default;
424
+
425
+ $list-inline-padding: .5rem !default;
426
+
427
+ $mark-bg: #fcf8e3 !default;
428
+
429
+ $hr-margin-y: $spacer !default;
430
+
431
+
432
+ // Tables
433
+ //
434
+ // Customizes the `.table` component with basic values, each used across all table variations.
435
+
436
+ $table-cell-padding: .75rem !default;
437
+ $table-cell-padding-sm: .3rem !default;
438
+
439
+ $table-bg: #fff !default;
440
+ $table-accent-bg: #f9f9f9 !default;
441
+ $table-hover-bg: #f5f5f5 !default;
442
+ $table-active-bg: $table-hover-bg !default;
443
+
444
+ $table-border-width: $border-width !default;
445
+ $table-border-color: $gray-300 !default;
446
+
447
+ $table-head-bg: $gray-200 !default;
448
+ $table-head-color: $gray-700 !default;
449
+
450
+ $table-dark-bg: $gray-900 !default;
451
+ $table-dark-accent-bg: rgba($white, .05) !default;
452
+ $table-dark-hover-bg: rgba($white, .075) !default;
453
+ $table-dark-border-color: color.adjust($gray-900, $lightness: 7.5%) !default;
454
+ $table-dark-color: $body-bg !default;
455
+
456
+ $table-striped-order: odd !default;
457
+
458
+ $table-caption-color: $text-muted !default;
459
+
460
+ // Buttons + Forms
461
+ //
462
+ // Shared variables that are reassigned to `$input-` and `$btn-` specific variables.
463
+
464
+ $input-btn-padding-y: .375rem !default;
465
+ $input-btn-padding-x: .75rem !default;
466
+ $input-btn-line-height: $line-height-base !default;
467
+
468
+ $input-btn-focus-width: .2rem !default;
469
+ $input-btn-focus-color: rgba($component-active-bg, .25) !default;
470
+ $input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color !default;
471
+
472
+ $input-btn-padding-y-sm: .25rem !default;
473
+ $input-btn-padding-x-sm: .5rem !default;
474
+ $input-btn-line-height-sm: $line-height-sm !default;
475
+
476
+ $input-btn-padding-y-lg: .5rem !default;
477
+ $input-btn-padding-x-lg: 1rem !default;
478
+ $input-btn-line-height-lg: $line-height-lg !default;
479
+
480
+ $input-btn-border-width: $border-width !default;
481
+
482
+
483
+ // Buttons
484
+ //
485
+ // For each of Bootstrap's buttons, define text, background, and border color.
486
+
487
+ $btn-padding-y: $input-btn-padding-y !default;
488
+ $btn-padding-x: $input-btn-padding-x !default;
489
+ $btn-line-height: $input-btn-line-height !default;
490
+
491
+ $btn-padding-y-sm: $input-btn-padding-y-sm !default;
492
+ $btn-padding-x-sm: $input-btn-padding-x-sm !default;
493
+ $btn-line-height-sm: $input-btn-line-height-sm !default;
494
+
495
+ $btn-padding-y-lg: $input-btn-padding-y-lg !default;
496
+ $btn-padding-x-lg: $input-btn-padding-x-lg !default;
497
+ $btn-line-height-lg: $input-btn-line-height-lg !default;
498
+
499
+ $btn-border-width: $input-btn-border-width !default;
500
+
501
+ $btn-font-weight: $font-weight-normal !default;
502
+ $btn-box-shadow: inset 0 1px 0 rgba($white, .15), 0 1px 1px rgba($black, .075) !default;
503
+ $btn-focus-width: $input-btn-focus-width !default;
504
+ $btn-focus-box-shadow: $input-btn-focus-box-shadow !default;
505
+ $btn-disabled-opacity: .65 !default;
506
+ $btn-active-box-shadow: inset 0 3px 5px rgba($black, .125) !default;
507
+
508
+ $btn-link-disabled-color: $gray-600 !default;
509
+
510
+ $btn-block-spacing-y: .5rem !default;
511
+
512
+ // Allows for customizing button radius independently from global border radius
513
+ $btn-border-radius: $border-radius !default;
514
+ $btn-border-radius-lg: $border-radius-lg !default;
515
+ $btn-border-radius-sm: $border-radius-sm !default;
516
+
517
+ $btn-transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;
518
+
519
+
520
+ // Forms
521
+
522
+ $label-margin-bottom: .5rem !default;
523
+
524
+ $input-padding-y: $input-btn-padding-y !default;
525
+ $input-padding-x: $input-btn-padding-x !default;
526
+ $input-line-height: $input-btn-line-height !default;
527
+
528
+ $input-padding-y-sm: $input-btn-padding-y-sm !default;
529
+ $input-padding-x-sm: $input-btn-padding-x-sm !default;
530
+ $input-line-height-sm: $input-btn-line-height-sm !default;
531
+
532
+ $input-padding-y-lg: $input-btn-padding-y-lg !default;
533
+ $input-padding-x-lg: $input-btn-padding-x-lg !default;
534
+ $input-line-height-lg: $input-btn-line-height-lg !default;
535
+
536
+ $input-bg: $white !default;
537
+ $input-disabled-bg: $gray-200 !default;
538
+
539
+ $input-color: $gray-700 !default;
540
+ $input-border-color: $gray-400 !default;
541
+ $input-border-width: $input-btn-border-width !default;
542
+ $input-box-shadow: inset 0 1px 1px rgba($black, .075) !default;
543
+
544
+ $input-border-radius: $border-radius !default;
545
+ $input-border-radius-lg: $border-radius-lg !default;
546
+ $input-border-radius-sm: $border-radius-sm !default;
547
+
548
+ $input-focus-bg: $input-bg !default;
549
+ $input-focus-border-color: color.adjust($component-active-bg, $lightness: 25%) !default;
550
+ $input-focus-color: $input-color !default;
551
+ $input-focus-width: $input-btn-focus-width !default;
552
+ $input-focus-box-shadow: $input-btn-focus-box-shadow !default;
553
+
554
+ $input-placeholder-color: $gray-600 !default;
555
+ $input-plaintext-color: $body-color !default;
556
+
557
+ $input-height-border: $input-border-width * 2 !default;
558
+
559
+ $input-height-inner: ($font-size-base * $input-btn-line-height) + ($input-btn-padding-y * 2) !default;
560
+ $input-height: calc(#{$input-height-inner} + #{$input-height-border}) !default;
561
+
562
+ $input-height-inner-sm: ($font-size-sm * $input-btn-line-height-sm) + ($input-btn-padding-y-sm * 2) !default;
563
+ $input-height-sm: calc(#{$input-height-inner-sm} + #{$input-height-border}) !default;
564
+
565
+ $input-height-inner-lg: ($font-size-lg * $input-btn-line-height-lg) + ($input-btn-padding-y-lg * 2) !default;
566
+ $input-height-lg: calc(#{$input-height-inner-lg} + #{$input-height-border}) !default;
567
+
568
+ $input-transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;
569
+
570
+ $form-text-margin-top: .25rem !default;
571
+
572
+ $form-check-input-gutter: 1.25rem !default;
573
+ $form-check-input-margin-y: .3rem !default;
574
+ $form-check-input-margin-x: .25rem !default;
575
+
576
+ $form-check-inline-margin-x: .75rem !default;
577
+ $form-check-inline-input-margin-x: .3125rem !default;
578
+
579
+ $form-group-margin-bottom: 1rem !default;
580
+
581
+ $input-group-addon-color: $input-color !default;
582
+ $input-group-addon-bg: $gray-200 !default;
583
+ $input-group-addon-border-color: $input-border-color !default;
584
+
585
+ $custom-control-gutter: 1.5rem !default;
586
+ $custom-control-spacer-x: 1rem !default;
587
+
588
+ $custom-control-indicator-size: 1rem !default;
589
+ $custom-control-indicator-bg: $gray-300 !default;
590
+ $custom-control-indicator-bg-size: 50% 50% !default;
591
+ $custom-control-indicator-box-shadow: inset 0 .25rem .25rem rgba($black, .1) !default;
592
+
593
+ $custom-control-indicator-disabled-bg: $gray-200 !default;
594
+ $custom-control-label-disabled-color: $gray-600 !default;
595
+
596
+ $custom-control-indicator-checked-color: $component-active-color !default;
597
+ $custom-control-indicator-checked-bg: $component-active-bg !default;
598
+ $custom-control-indicator-checked-disabled-bg: rgba(theme-color("primary"), .5) !default;
599
+ $custom-control-indicator-checked-box-shadow: none !default;
600
+
601
+ $custom-control-indicator-focus-box-shadow: 0 0 0 1px $body-bg, $input-btn-focus-box-shadow !default;
602
+
603
+ $custom-control-indicator-active-color: $component-active-color !default;
604
+ $custom-control-indicator-active-bg: color.adjust($component-active-bg, $lightness: 35%) !default;
605
+ $custom-control-indicator-active-box-shadow: none !default;
606
+
607
+ $custom-checkbox-indicator-border-radius: $border-radius !default;
608
+ $custom-checkbox-indicator-icon-checked: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='#{$custom-control-indicator-checked-color}' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E"), "#", "%23") !default;
609
+
610
+ $custom-checkbox-indicator-indeterminate-bg: $component-active-bg !default;
611
+ $custom-checkbox-indicator-indeterminate-color: $custom-control-indicator-checked-color !default;
612
+ $custom-checkbox-indicator-icon-indeterminate: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='#{$custom-checkbox-indicator-indeterminate-color}' d='M0 2h4'/%3E%3C/svg%3E"), "#", "%23") !default;
613
+ $custom-checkbox-indicator-indeterminate-box-shadow: none !default;
614
+
615
+ $custom-radio-indicator-border-radius: 50% !default;
616
+ $custom-radio-indicator-icon-checked: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='#{$custom-control-indicator-checked-color}'/%3E%3C/svg%3E"), "#", "%23") !default;
617
+
618
+ $custom-select-padding-y: .375rem !default;
619
+ $custom-select-padding-x: .75rem !default;
620
+ $custom-select-height: $input-height !default;
621
+ $custom-select-indicator-padding: 1rem !default; // Extra padding to account for the presence of the background-image based indicator
622
+ $custom-select-line-height: $input-btn-line-height !default;
623
+ $custom-select-color: $input-color !default;
624
+ $custom-select-disabled-color: $gray-600 !default;
625
+ $custom-select-bg: $input-bg !default;
626
+ $custom-select-disabled-bg: $gray-200 !default;
627
+ $custom-select-bg-size: 8px 10px !default; // In pixels because image dimensions
628
+ $custom-select-indicator-color: $gray-800 !default;
629
+ $custom-select-indicator: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='#{$custom-select-indicator-color}' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E"), "#", "%23") !default;
630
+ $custom-select-border-width: $input-btn-border-width !default;
631
+ $custom-select-border-color: $input-border-color !default;
632
+ $custom-select-border-radius: $border-radius !default;
633
+
634
+ $custom-select-focus-border-color: $input-focus-border-color !default;
635
+ $custom-select-focus-box-shadow: inset 0 1px 2px rgba($black, .075), 0 0 5px rgba($custom-select-focus-border-color, .5) !default;
636
+
637
+ $custom-select-font-size-sm: 75% !default;
638
+ $custom-select-height-sm: $input-height-sm !default;
639
+
640
+ $custom-select-font-size-lg: 125% !default;
641
+ $custom-select-height-lg: $input-height-lg !default;
642
+
643
+ $custom-range-track-width: 100% !default;
644
+ $custom-range-track-height: .5rem !default;
645
+ $custom-range-track-cursor: pointer !default;
646
+ $custom-range-track-bg: $gray-300 !default;
647
+ $custom-range-track-border-radius: 1rem !default;
648
+ $custom-range-track-box-shadow: inset 0 .25rem .25rem rgba($black, .1) !default;
649
+
650
+ $custom-range-thumb-width: 1rem !default;
651
+ $custom-range-thumb-height: $custom-range-thumb-width !default;
652
+ $custom-range-thumb-bg: $component-active-bg !default;
653
+ $custom-range-thumb-border: 0 !default;
654
+ $custom-range-thumb-border-radius: 1rem !default;
655
+ $custom-range-thumb-box-shadow: 0 .1rem .25rem rgba($black, .1) !default;
656
+ $custom-range-thumb-focus-box-shadow: 0 0 0 1px $body-bg, $input-btn-focus-box-shadow !default;
657
+ $custom-range-thumb-active-bg: color.adjust($component-active-bg, $lightness: 35%) !default;
658
+
659
+ $custom-file-height: $input-height !default;
660
+ $custom-file-focus-border-color: $input-focus-border-color !default;
661
+ $custom-file-focus-box-shadow: $input-btn-focus-box-shadow !default;
662
+
663
+ $custom-file-padding-y: $input-btn-padding-y !default;
664
+ $custom-file-padding-x: $input-btn-padding-x !default;
665
+ $custom-file-line-height: $input-btn-line-height !default;
666
+ $custom-file-color: $input-color !default;
667
+ $custom-file-bg: $input-bg !default;
668
+ $custom-file-border-width: $input-btn-border-width !default;
669
+ $custom-file-border-color: $input-border-color !default;
670
+ $custom-file-border-radius: $input-border-radius !default;
671
+ $custom-file-box-shadow: $input-box-shadow !default;
672
+ $custom-file-button-color: $custom-file-color !default;
673
+ $custom-file-button-bg: $input-group-addon-bg !default;
674
+ $custom-file-text: (
675
+ en: "Browse"
676
+ ) !default;
677
+
678
+
679
+ // Form validation
680
+ $form-feedback-margin-top: $form-text-margin-top !default;
681
+ $form-feedback-font-size: $small-font-size !default;
682
+ $form-feedback-valid-color: theme-color("success") !default;
683
+ $form-feedback-invalid-color: theme-color("danger") !default;
684
+
685
+
686
+ // Dropdowns
687
+ //
688
+ // Dropdown menu container and contents.
689
+
690
+ $dropdown-min-width: 10rem !default;
691
+ $dropdown-padding-y: .5rem !default;
692
+ $dropdown-spacer: .125rem !default;
693
+ $dropdown-bg: $white !default;
694
+ $dropdown-border-color: rgba($black, .15) !default;
695
+ $dropdown-border-radius: $border-radius !default;
696
+ $dropdown-border-width: $border-width !default;
697
+ $dropdown-divider-bg: $gray-200 !default;
698
+ $dropdown-box-shadow: 0 .5rem 1rem rgba($black, .175) !default;
699
+
700
+ $dropdown-link-color: $gray-900 !default;
701
+ $dropdown-link-hover-color: color.adjust($gray-900, $lightness: -5%) !default;
702
+ $dropdown-link-hover-bg: $gray-100 !default;
703
+
704
+ $dropdown-link-active-color: $component-active-color !default;
705
+ $dropdown-link-active-bg: $component-active-bg !default;
706
+
707
+ $dropdown-link-disabled-color: $gray-600 !default;
708
+
709
+ $dropdown-item-padding-y: .25rem !default;
710
+ $dropdown-item-padding-x: 1.5rem !default;
711
+
712
+ $dropdown-header-color: $gray-600 !default;
713
+
714
+
715
+ // Z-index master list
716
+ //
717
+ // Warning: Avoid customizing these values. They're used for a bird's eye view
718
+ // of components dependent on the z-axis and are designed to all work together.
719
+
720
+ $zindex-dropdown: 1000 !default;
721
+ $zindex-sticky: 1020 !default;
722
+ $zindex-fixed: 1030 !default;
723
+ $zindex-modal-backdrop: 1040 !default;
724
+ $zindex-modal: 1050 !default;
725
+ $zindex-popover: 1060 !default;
726
+ $zindex-tooltip: 1070 !default;
727
+
728
+ // Navs
729
+
730
+ $nav-link-padding-y: .5rem !default;
731
+ $nav-link-padding-x: 1rem !default;
732
+ $nav-link-disabled-color: $gray-600 !default;
733
+
734
+ $nav-tabs-border-color: $gray-300 !default;
735
+ $nav-tabs-border-width: $border-width !default;
736
+ $nav-tabs-border-radius: $border-radius !default;
737
+ $nav-tabs-link-hover-border-color: $gray-200 $gray-200 $nav-tabs-border-color !default;
738
+ $nav-tabs-link-active-color: $gray-700 !default;
739
+ $nav-tabs-link-active-bg: $body-bg !default;
740
+ $nav-tabs-link-active-border-color: $gray-300 $gray-300 $nav-tabs-link-active-bg !default;
741
+
742
+ $nav-pills-border-radius: $border-radius !default;
743
+ $nav-pills-link-active-color: $component-active-color !default;
744
+ $nav-pills-link-active-bg: $component-active-bg !default;
745
+
746
+ $nav-divider-color: $gray-200 !default;
747
+ $nav-divider-margin-y: calc($spacer / 2) !default;
748
+
749
+ // Navbar
750
+
751
+ $navbar-padding-y: calc($spacer / 2) !default;
752
+ $navbar-padding-x: $spacer !default;
753
+
754
+ $navbar-nav-link-padding-x: .5rem !default;
755
+
756
+ $navbar-brand-font-size: $font-size-lg !default;
757
+ // Compute the navbar-brand padding-y so the navbar-brand will have the same height as navbar-text and nav-link
758
+ $nav-link-height: calc($font-size-base * $line-height-base + $nav-link-padding-y * 2) !default;
759
+ $navbar-brand-height: $navbar-brand-font-size * $line-height-base !default;
760
+ $navbar-brand-padding-y: calc(($nav-link-height - $navbar-brand-height) / 2) !default;
761
+
762
+ $navbar-toggler-padding-y: .25rem !default;
763
+ $navbar-toggler-padding-x: .75rem !default;
764
+ $navbar-toggler-font-size: $font-size-lg !default;
765
+ $navbar-toggler-border-radius: $btn-border-radius !default;
766
+
767
+ $navbar-dark-color: rgba($white, .5) !default;
768
+ $navbar-dark-hover-color: rgba($white, .75) !default;
769
+ $navbar-dark-active-color: $white !default;
770
+ $navbar-dark-disabled-color: rgba($white, .25) !default;
771
+ $navbar-dark-toggler-icon-bg: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='#{$navbar-dark-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"), "#", "%23") !default;
772
+ $navbar-dark-toggler-border-color: rgba($white, .1) !default;
773
+
774
+ $navbar-light-color: rgba($black, .5) !default;
775
+ $navbar-light-hover-color: rgba($black, .7) !default;
776
+ $navbar-light-active-color: rgba($black, .9) !default;
777
+ $navbar-light-disabled-color: rgba($black, .3) !default;
778
+ $navbar-light-toggler-icon-bg: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='#{$navbar-light-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E"), "#", "%23") !default;
779
+ $navbar-light-toggler-border-color: rgba($black, .1) !default;
780
+
781
+ // Pagination
782
+
783
+ $pagination-padding-y: .5rem !default;
784
+ $pagination-padding-x: .75rem !default;
785
+ $pagination-padding-y-sm: .25rem !default;
786
+ $pagination-padding-x-sm: .5rem !default;
787
+ $pagination-padding-y-lg: .75rem !default;
788
+ $pagination-padding-x-lg: 1.5rem !default;
789
+ $pagination-line-height: 1.25 !default;
790
+
791
+ $pagination-color: $link-color !default;
792
+ $pagination-bg: $white !default;
793
+ $pagination-border-width: $border-width !default;
794
+ $pagination-border-color: $gray-300 !default;
795
+
796
+ $pagination-focus-box-shadow: $input-btn-focus-box-shadow !default;
797
+ $pagination-focus-outline: 0 !default;
798
+
799
+ $pagination-hover-color: $link-hover-color !default;
800
+ $pagination-hover-bg: $gray-200 !default;
801
+ $pagination-hover-border-color: $gray-300 !default;
802
+
803
+ $pagination-active-color: $component-active-color !default;
804
+ $pagination-active-bg: $component-active-bg !default;
805
+ $pagination-active-border-color: $pagination-active-bg !default;
806
+
807
+ $pagination-disabled-color: $gray-600 !default;
808
+ $pagination-disabled-bg: $white !default;
809
+ $pagination-disabled-border-color: $gray-300 !default;
810
+
811
+
812
+ // Jumbotron
813
+
814
+ $jumbotron-padding: 2rem !default;
815
+ $jumbotron-bg: $gray-200 !default;
816
+
817
+
818
+ // Cards
819
+
820
+ $card-spacer-y: .75rem !default;
821
+ $card-spacer-x: 1.25rem !default;
822
+ $card-border-width: $border-width !default;
823
+ $card-border-radius: $border-radius !default;
824
+ $card-border-color: rgba($black, .125) !default;
825
+ $card-inner-border-radius: calc(#{$card-border-radius} - #{$card-border-width}) !default;
826
+ $card-cap-bg: rgba($black, .03) !default;
827
+ $card-bg: $white !default;
828
+
829
+ $card-img-overlay-padding: 1.25rem !default;
830
+
831
+ $card-group-margin: calc($grid-gutter-width / 2) !default;
832
+ $card-deck-margin: $card-group-margin !default;
833
+
834
+ $card-columns-count: 3 !default;
835
+ $card-columns-gap: 1.25rem !default;
836
+ $card-columns-margin: $card-spacer-y !default;
837
+
838
+
839
+ // Tooltips
840
+
841
+ $tooltip-font-size: $font-size-sm !default;
842
+ $tooltip-max-width: 200px !default;
843
+ $tooltip-color: $white !default;
844
+ $tooltip-bg: $black !default;
845
+ $tooltip-border-radius: $border-radius !default;
846
+ $tooltip-opacity: .9 !default;
847
+ $tooltip-padding-y: .25rem !default;
848
+ $tooltip-padding-x: .5rem !default;
849
+ $tooltip-margin: 0 !default;
850
+
851
+ $tooltip-arrow-width: .8rem !default;
852
+ $tooltip-arrow-height: .4rem !default;
853
+ $tooltip-arrow-color: $tooltip-bg !default;
854
+
855
+
856
+ // Popovers
857
+
858
+ $popover-font-size: $font-size-sm !default;
859
+ $popover-bg: $white !default;
860
+ $popover-max-width: 276px !default;
861
+ $popover-border-width: $border-width !default;
862
+ $popover-border-color: rgba($black, .2) !default;
863
+ $popover-border-radius: $border-radius-lg !default;
864
+ $popover-box-shadow: 0 .25rem .5rem rgba($black, .2) !default;
865
+
866
+ $popover-header-bg: color.adjust($popover-bg, $lightness: -3%) !default;
867
+ $popover-header-color: $headings-color !default;
868
+ $popover-header-padding-y: .5rem !default;
869
+ $popover-header-padding-x: .75rem !default;
870
+
871
+ $popover-body-color: $body-color !default;
872
+ $popover-body-padding-y: $popover-header-padding-y !default;
873
+ $popover-body-padding-x: $popover-header-padding-x !default;
874
+
875
+ $popover-arrow-width: 1rem !default;
876
+ $popover-arrow-height: .5rem !default;
877
+ $popover-arrow-color: $popover-bg !default;
878
+
879
+ $popover-arrow-outer-color: color.adjust($popover-border-color, $alpha: .05) !default;
880
+
881
+
882
+ // Badges
883
+
884
+ $badge-font-size: 75% !default;
885
+ $badge-font-weight: $font-weight-bold !default;
886
+ $badge-padding-y: .25em !default;
887
+ $badge-padding-x: .4em !default;
888
+ $badge-border-radius: $border-radius !default;
889
+
890
+ $badge-pill-padding-x: .6em !default;
891
+ // Use a higher than normal value to ensure completely rounded edges when
892
+ // customizing padding or font-size on labels.
893
+ $badge-pill-border-radius: 10rem !default;
894
+
895
+
896
+ // Modals
897
+
898
+ // Padding applied to the modal body
899
+ $modal-inner-padding: 1rem !default;
900
+
901
+ $modal-dialog-margin: .5rem !default;
902
+ $modal-dialog-margin-y-sm-up: 1.75rem !default;
903
+
904
+ $modal-title-line-height: $line-height-base !default;
905
+
906
+ $modal-content-bg: $white !default;
907
+ $modal-content-border-color: rgba($black, .2) !default;
908
+ $modal-content-border-width: $border-width !default;
909
+ $modal-content-border-radius: $border-radius-lg !default;
910
+ $modal-content-box-shadow-xs: 0 .25rem .5rem rgba($black, .5) !default;
911
+ $modal-content-box-shadow-sm-up: 0 .5rem 1rem rgba($black, .5) !default;
912
+
913
+ $modal-backdrop-bg: $black !default;
914
+ $modal-backdrop-opacity: .5 !default;
915
+ $modal-header-border-color: $gray-200 !default;
916
+ $modal-footer-border-color: $modal-header-border-color !default;
917
+ $modal-header-border-width: $modal-content-border-width !default;
918
+ $modal-footer-border-width: $modal-header-border-width !default;
919
+ $modal-header-padding: 1rem !default;
920
+
921
+ $modal-lg: 800px !default;
922
+ $modal-md: 500px !default;
923
+ $modal-sm: 300px !default;
924
+
925
+ $modal-transition: transform .3s ease-out !default;
926
+
927
+
928
+ // Alerts
929
+ //
930
+ // Define alert colors, border radius, and padding.
931
+
932
+ $alert-padding-y: .75rem !default;
933
+ $alert-padding-x: 1.25rem !default;
934
+ $alert-margin-bottom: 1rem !default;
935
+ $alert-border-radius: $border-radius !default;
936
+ $alert-link-font-weight: $font-weight-bold !default;
937
+ $alert-border-width: $border-width !default;
938
+
939
+ $alert-bg-level: -10 !default;
940
+ $alert-border-level: -9 !default;
941
+ $alert-color-level: 6 !default;
942
+
943
+
944
+ // Progress bars
945
+
946
+ $progress-height: 1rem !default;
947
+ $progress-font-size: ($font-size-base * .75) !default;
948
+ $progress-bg: $gray-200 !default;
949
+ $progress-border-radius: $border-radius !default;
950
+ $progress-box-shadow: inset 0 .1rem .1rem rgba($black, .1) !default;
951
+ $progress-bar-color: $white !default;
952
+ $progress-bar-bg: theme-color("primary") !default;
953
+ $progress-bar-animation-timing: 1s linear infinite !default;
954
+ $progress-bar-transition: width .6s ease !default;
955
+
956
+ // List group
957
+
958
+ $list-group-bg: $white !default;
959
+ $list-group-border-color: rgba($black, .125) !default;
960
+ $list-group-border-width: $border-width !default;
961
+ $list-group-border-radius: $border-radius !default;
962
+
963
+ $list-group-item-padding-y: .75rem !default;
964
+ $list-group-item-padding-x: 1.25rem !default;
965
+
966
+ $list-group-hover-bg: $gray-100 !default;
967
+ $list-group-active-color: $component-active-color !default;
968
+ $list-group-active-bg: $component-active-bg !default;
969
+ $list-group-active-border-color: $list-group-active-bg !default;
970
+
971
+ $list-group-disabled-color: $gray-600 !default;
972
+ $list-group-disabled-bg: $list-group-bg !default;
973
+
974
+ $list-group-action-color: $gray-700 !default;
975
+ $list-group-action-hover-color: $list-group-action-color !default;
976
+
977
+ $list-group-action-active-color: $body-color !default;
978
+ $list-group-action-active-bg: $gray-200 !default;
979
+
980
+
981
+ // Image thumbnails
982
+
983
+ $thumbnail-padding: .25rem !default;
984
+ $thumbnail-bg: $body-bg !default;
985
+ $thumbnail-border-width: $border-width !default;
986
+ $thumbnail-border-color: $gray-300 !default;
987
+ $thumbnail-border-radius: $border-radius !default;
988
+ $thumbnail-box-shadow: 0 1px 2px rgba($black, .075) !default;
989
+
990
+
991
+ // Figures
992
+
993
+ $figure-caption-font-size: 90% !default;
994
+ $figure-caption-color: $gray-600 !default;
995
+
996
+
997
+ // Breadcrumbs
998
+
999
+ $breadcrumb-padding-y: .75rem !default;
1000
+ $breadcrumb-padding-x: 1rem !default;
1001
+ $breadcrumb-item-padding: .5rem !default;
1002
+
1003
+ $breadcrumb-margin-bottom: 1rem !default;
1004
+
1005
+ $breadcrumb-bg: $gray-200 !default;
1006
+ $breadcrumb-divider-color: $gray-600 !default;
1007
+ $breadcrumb-active-color: $gray-600 !default;
1008
+ $breadcrumb-divider: string.quote("/") !default;
1009
+
1010
+ $breadcrumb-border-radius: $border-radius !default;
1011
+
1012
+
1013
+ // Carousel
1014
+
1015
+ $carousel-control-color: $white !default;
1016
+ $carousel-control-width: 15% !default;
1017
+ $carousel-control-opacity: .5 !default;
1018
+
1019
+ $carousel-indicator-width: 30px !default;
1020
+ $carousel-indicator-height: 3px !default;
1021
+ $carousel-indicator-spacer: 3px !default;
1022
+ $carousel-indicator-active-bg: $white !default;
1023
+
1024
+ $carousel-caption-width: 70% !default;
1025
+ $carousel-caption-color: $white !default;
1026
+
1027
+ $carousel-control-icon-width: 20px !default;
1028
+
1029
+ $carousel-control-prev-icon-bg: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E"), "#", "%23") !default;
1030
+ $carousel-control-next-icon-bg: str-replace(url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E"), "#", "%23") !default;
1031
+
1032
+ $carousel-transition: transform .6s ease !default; // Define transform transition first if using multiple transitons (e.g., `transform 2s ease, opacity .5s ease-out`)
1033
+
1034
+
1035
+ // Close
1036
+
1037
+ $close-font-size: $font-size-base * 1.5 !default;
1038
+ $close-font-weight: $font-weight-bold !default;
1039
+ $close-color: $black !default;
1040
+ $close-text-shadow: 0 1px 0 $white !default;
1041
+
1042
+ // Code
1043
+
1044
+ $code-font-size: 87.5% !default;
1045
+ $code-color: $pink !default;
1046
+
1047
+ $kbd-padding-y: .2rem !default;
1048
+ $kbd-padding-x: .4rem !default;
1049
+ $kbd-font-size: $code-font-size !default;
1050
+ $kbd-color: $white !default;
1051
+ $kbd-bg: $gray-900 !default;
1052
+
1053
+ $pre-color: $gray-900 !default;
1054
+ $pre-scrollable-max-height: 340px !default;
1055
+
1056
+
1057
+ // Printing
1058
+ $print-page-size: a3 !default;
1059
+ $print-body-min-width: map.get($grid-breakpoints, "lg") !default;