@allxsmith/bestax-bulma 5.29.0 → 5.31.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bestax.css +1 -1
- package/dist/bestax.css.map +1 -1
- package/dist/esm/components/ContextMenu.js +244 -0
- package/dist/esm/components/ContextMenu.js.map +1 -0
- package/dist/esm/components/Dropdown.js +37 -85
- package/dist/esm/components/Dropdown.js.map +1 -1
- package/dist/esm/components/HoverCard.js +3 -10
- package/dist/esm/components/HoverCard.js.map +1 -1
- package/dist/esm/components/Tooltip.js +88 -63
- package/dist/esm/components/Tooltip.js.map +1 -1
- package/dist/esm/elements/Button.js.map +1 -1
- package/dist/esm/elements/Buttons.js +2 -0
- package/dist/esm/elements/Buttons.js.map +1 -1
- package/dist/esm/elements/ToggleButton.js +68 -0
- package/dist/esm/elements/ToggleButton.js.map +1 -0
- package/dist/esm/form/DateTimeInputBase.js.map +1 -1
- package/dist/esm/form/TimeInputBase.js.map +1 -1
- package/dist/esm/form/_pickerInternals/pickerTypes.js +14 -6
- package/dist/esm/form/_pickerInternals/pickerTypes.js.map +1 -1
- package/dist/esm/helpers/useContextMenuTrigger.js +166 -0
- package/dist/esm/helpers/useContextMenuTrigger.js.map +1 -0
- package/dist/esm/helpers/useHoverOpen.js +40 -6
- package/dist/esm/helpers/useHoverOpen.js.map +1 -1
- package/dist/esm/helpers/useMenuKeys.js +182 -0
- package/dist/esm/helpers/useMenuKeys.js.map +1 -0
- package/dist/extras.css +1 -1
- package/dist/extras.css.map +1 -1
- package/dist/index.cjs +1896 -1261
- package/dist/index.cjs.map +1 -1
- package/dist/index.esm.js +2 -0
- package/dist/index.esm.js.map +1 -1
- package/dist/types/components/ContextMenu.d.ts +66 -0
- package/dist/types/components/Tooltip.d.ts +63 -9
- package/dist/types/elements/Button.d.ts +1 -1
- package/dist/types/elements/Buttons.d.ts +1 -0
- package/dist/types/elements/ToggleButton.d.ts +100 -0
- package/dist/types/form/DateTimeInputBase.d.ts +4 -1
- package/dist/types/form/TimeInputBase.d.ts +5 -2
- package/dist/types/form/_pickerInternals/pickerTypes.d.ts +16 -1
- package/dist/types/helpers/useContextMenuTrigger.d.ts +67 -0
- package/dist/types/helpers/useHoverOpen.d.ts +19 -3
- package/dist/types/helpers/useMenuKeys.d.ts +57 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types-cjs/components/ContextMenu.d.ts +66 -0
- package/dist/types-cjs/components/Tooltip.d.ts +63 -9
- package/dist/types-cjs/elements/Button.d.ts +1 -1
- package/dist/types-cjs/elements/Buttons.d.ts +1 -0
- package/dist/types-cjs/elements/ToggleButton.d.ts +100 -0
- package/dist/types-cjs/form/DateTimeInputBase.d.ts +4 -1
- package/dist/types-cjs/form/TimeInputBase.d.ts +5 -2
- package/dist/types-cjs/form/_pickerInternals/pickerTypes.d.ts +16 -1
- package/dist/types-cjs/helpers/useContextMenuTrigger.d.ts +67 -0
- package/dist/types-cjs/helpers/useHoverOpen.d.ts +19 -3
- package/dist/types-cjs/helpers/useMenuKeys.d.ts +57 -0
- package/dist/types-cjs/index.d.ts +2 -0
- package/dist/versions/bestax-no-dark-mode.css +1 -1
- package/dist/versions/bestax-no-dark-mode.css.map +1 -1
- package/dist/versions/bestax-no-helpers-prefixed.css +1 -1
- package/dist/versions/bestax-no-helpers-prefixed.css.map +1 -1
- package/dist/versions/bestax-no-helpers.css +1 -1
- package/dist/versions/bestax-no-helpers.css.map +1 -1
- package/dist/versions/bestax-prefixed.css +1 -1
- package/dist/versions/bestax-prefixed.css.map +1 -1
- package/package.json +1 -1
- package/src/scss/components/_contextmenu.scss +50 -0
- package/src/scss/components/_index.scss +1 -0
- package/src/scss/components/_tooltip.scss +76 -1
|
@@ -86,15 +86,19 @@ $tooltip-large-arrow-size: 7px !default;
|
|
|
86
86
|
background-color: cv.getVar("tooltip-background");
|
|
87
87
|
color: cv.getVar("tooltip-color");
|
|
88
88
|
border-radius: cv.getVar("tooltip-radius");
|
|
89
|
+
// A hidden tooltip, or one only `active` shows, lets the pointer through
|
|
90
|
+
// to what's under it.
|
|
89
91
|
pointer-events: none;
|
|
90
92
|
opacity: 0;
|
|
91
93
|
visibility: hidden;
|
|
92
94
|
|
|
93
|
-
// Arrow
|
|
95
|
+
// Arrow. Its box is taller than the gap the bridge covers, so taking the
|
|
96
|
+
// pointer it would reach over the trigger, and the bridge covers the gap.
|
|
94
97
|
&::before {
|
|
95
98
|
content: '';
|
|
96
99
|
position: absolute;
|
|
97
100
|
border: cv.getVar("tooltip-arrow-size") solid transparent;
|
|
101
|
+
pointer-events: none;
|
|
98
102
|
}
|
|
99
103
|
|
|
100
104
|
// Animation styles
|
|
@@ -108,6 +112,11 @@ $tooltip-large-arrow-size: 7px !default;
|
|
|
108
112
|
visibility: visible;
|
|
109
113
|
}
|
|
110
114
|
|
|
115
|
+
// Open by the pointer, focus or a tap: the pointer can move onto it
|
|
116
|
+
.#{iv.$class-prefix}tooltip.#{iv.$class-prefix}is-open & {
|
|
117
|
+
pointer-events: auto;
|
|
118
|
+
}
|
|
119
|
+
|
|
111
120
|
// Square corners
|
|
112
121
|
.#{iv.$class-prefix}tooltip.#{iv.$class-prefix}is-square & {
|
|
113
122
|
border-radius: 0;
|
|
@@ -178,6 +187,72 @@ $tooltip-large-arrow-size: 7px !default;
|
|
|
178
187
|
}
|
|
179
188
|
}
|
|
180
189
|
|
|
190
|
+
// Bridge: while the pointer, focus or a tap has it open, the gap between
|
|
191
|
+
// the trigger and the tooltip, as wide as the trigger, belongs to the
|
|
192
|
+
// wrapper, so the pointer crossing it never leaves. The gap's size is
|
|
193
|
+
// declared on `.tooltip-content`, out of the wrapper's reach, so the bridge
|
|
194
|
+
// takes the same defaults for each size.
|
|
195
|
+
@mixin tooltip-bridge-size($arrow-size) {
|
|
196
|
+
$gap: calc(#{$arrow-size} + #{$tooltip-arrow-margin});
|
|
197
|
+
|
|
198
|
+
&.#{iv.$class-prefix}is-top::after,
|
|
199
|
+
&:not(.#{iv.$class-prefix}is-bottom):not(.#{iv.$class-prefix}is-left):not(.#{iv.$class-prefix}is-right)::after,
|
|
200
|
+
&.#{iv.$class-prefix}is-bottom::after {
|
|
201
|
+
height: $gap;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
&.#{iv.$class-prefix}is-left::after,
|
|
205
|
+
&.#{iv.$class-prefix}is-right::after {
|
|
206
|
+
width: $gap;
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
.#{iv.$class-prefix}tooltip.#{iv.$class-prefix}is-open {
|
|
211
|
+
&::after {
|
|
212
|
+
content: '';
|
|
213
|
+
position: absolute;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
&.#{iv.$class-prefix}is-top::after,
|
|
217
|
+
&:not(.#{iv.$class-prefix}is-bottom):not(.#{iv.$class-prefix}is-left):not(.#{iv.$class-prefix}is-right)::after {
|
|
218
|
+
bottom: 100%;
|
|
219
|
+
left: 0;
|
|
220
|
+
right: 0;
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
&.#{iv.$class-prefix}is-bottom::after {
|
|
224
|
+
top: 100%;
|
|
225
|
+
left: 0;
|
|
226
|
+
right: 0;
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
&.#{iv.$class-prefix}is-left::after {
|
|
230
|
+
right: 100%;
|
|
231
|
+
top: 0;
|
|
232
|
+
bottom: 0;
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
&.#{iv.$class-prefix}is-right::after {
|
|
236
|
+
left: 100%;
|
|
237
|
+
top: 0;
|
|
238
|
+
bottom: 0;
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
@include tooltip-bridge-size($tooltip-arrow-size);
|
|
242
|
+
|
|
243
|
+
&.#{iv.$class-prefix}is-small {
|
|
244
|
+
@include tooltip-bridge-size($tooltip-small-arrow-size);
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
&.#{iv.$class-prefix}is-medium {
|
|
248
|
+
@include tooltip-bridge-size($tooltip-medium-arrow-size);
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
&.#{iv.$class-prefix}is-large {
|
|
252
|
+
@include tooltip-bridge-size($tooltip-large-arrow-size);
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
|
|
181
256
|
// Color variants
|
|
182
257
|
// Uses Bulma's -invert-l pattern for text contrast (same approach as buttons)
|
|
183
258
|
@mixin tooltip-color($name) {
|