intergalactic 15.60.1-prerelease-e7be36ff → 15.61.0-prerelease-5e9c09fb
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/CHANGELOG.md +23 -0
- package/base-trigger/lib/cjs/BaseTrigger.js +18 -18
- package/base-trigger/lib/cjs/ButtonTrigger.js +3 -3
- package/base-trigger/lib/cjs/FilterTrigger.js +7 -7
- package/base-trigger/lib/cjs/LinkTrigger.js +12 -12
- package/base-trigger/lib/es6/BaseTrigger.js +18 -18
- package/base-trigger/lib/es6/ButtonTrigger.js +3 -3
- package/base-trigger/lib/es6/FilterTrigger.js +7 -7
- package/base-trigger/lib/es6/LinkTrigger.js +12 -12
- package/components.json +10 -10
- package/d3-chart/lib/cjs/Area.js +11 -11
- package/d3-chart/lib/cjs/Axis.js +14 -14
- package/d3-chart/lib/cjs/Bar.js +10 -10
- package/d3-chart/lib/cjs/Bubble.js +12 -12
- package/d3-chart/lib/cjs/Donut.js +9 -9
- package/d3-chart/lib/cjs/Dots.js +8 -8
- package/d3-chart/lib/cjs/HorizontalBar.js +10 -10
- package/d3-chart/lib/cjs/Hover.js +3 -3
- package/d3-chart/lib/cjs/Line.js +9 -9
- package/d3-chart/lib/cjs/Plot.js +3 -3
- package/d3-chart/lib/cjs/Radar.js +19 -19
- package/d3-chart/lib/cjs/RadialTree.js +11 -11
- package/d3-chart/lib/cjs/ReferenceLine.js +9 -9
- package/d3-chart/lib/cjs/ScatterPlot.js +9 -9
- package/d3-chart/lib/cjs/Tooltip.js +9 -9
- package/d3-chart/lib/cjs/Venn.js +9 -9
- package/d3-chart/lib/cjs/a11y/PlotA11yModule.js +2 -2
- package/d3-chart/lib/cjs/a11y/PlotA11yView.js +2 -2
- package/d3-chart/lib/cjs/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
- package/d3-chart/lib/cjs/component/ChartLegend/LegendItem/LegendItem.js +17 -17
- package/d3-chart/lib/cjs/component/ChartLegend/LegendTable/LegendTable.js +6 -6
- package/d3-chart/lib/es6/Area.js +11 -11
- package/d3-chart/lib/es6/Axis.js +14 -14
- package/d3-chart/lib/es6/Bar.js +10 -10
- package/d3-chart/lib/es6/Bubble.js +12 -12
- package/d3-chart/lib/es6/Donut.js +9 -9
- package/d3-chart/lib/es6/Dots.js +8 -8
- package/d3-chart/lib/es6/HorizontalBar.js +10 -10
- package/d3-chart/lib/es6/Hover.js +3 -3
- package/d3-chart/lib/es6/Line.js +9 -9
- package/d3-chart/lib/es6/Plot.js +3 -3
- package/d3-chart/lib/es6/Radar.js +19 -19
- package/d3-chart/lib/es6/RadialTree.js +11 -11
- package/d3-chart/lib/es6/ReferenceLine.js +9 -9
- package/d3-chart/lib/es6/ScatterPlot.js +9 -9
- package/d3-chart/lib/es6/Tooltip.js +9 -9
- package/d3-chart/lib/es6/Venn.js +9 -9
- package/d3-chart/lib/es6/a11y/PlotA11yModule.js +2 -2
- package/d3-chart/lib/es6/a11y/PlotA11yView.js +2 -2
- package/d3-chart/lib/es6/component/ChartLegend/LegendFlex/LegendFlex.js +4 -4
- package/d3-chart/lib/es6/component/ChartLegend/LegendItem/LegendItem.js +17 -17
- package/d3-chart/lib/es6/component/ChartLegend/LegendTable/LegendTable.js +6 -6
- package/date-picker/lib/cjs/components/Calendar.js +21 -21
- package/date-picker/lib/cjs/components/DateRangeComparatorAbstract.js +26 -26
- package/date-picker/lib/cjs/components/InputTrigger.js +26 -26
- package/date-picker/lib/cjs/components/PickerAbstract.js +26 -26
- package/date-picker/lib/cjs/components/RangePickerAbstract.js +26 -26
- package/date-picker/lib/es6/components/Calendar.js +21 -21
- package/date-picker/lib/es6/components/DateRangeComparatorAbstract.js +26 -26
- package/date-picker/lib/es6/components/InputTrigger.js +26 -26
- package/date-picker/lib/es6/components/PickerAbstract.js +26 -26
- package/date-picker/lib/es6/components/RangePickerAbstract.js +26 -26
- package/dropdown/lib/cjs/Dropdown.js +2 -2
- package/dropdown/lib/es6/Dropdown.js +2 -2
- package/dropdown-menu/index.d.ts +9 -0
- package/dropdown-menu/lib/cjs/DropdownMenu.js +311 -95
- package/dropdown-menu/lib/cjs/DropdownMenu.js.map +1 -1
- package/dropdown-menu/lib/cjs/index.d.js.map +1 -1
- package/dropdown-menu/lib/cjs/style/dropdown-menu.shadow.css +20 -1
- package/dropdown-menu/lib/cjs/styleScrollArea.js +6 -6
- package/dropdown-menu/lib/es6/DropdownMenu.js +316 -97
- package/dropdown-menu/lib/es6/DropdownMenu.js.map +1 -1
- package/dropdown-menu/lib/es6/index.d.js.map +1 -1
- package/dropdown-menu/lib/es6/style/dropdown-menu.shadow.css +20 -1
- package/dropdown-menu/lib/es6/styleScrollArea.js +6 -6
- package/dropdown-menu/lib/types/index.d.ts +9 -0
- package/feature-popover/lib/cjs/FeaturePopover.js +10 -10
- package/feature-popover/lib/es6/FeaturePopover.js +10 -10
- package/format-text/lib/cjs/FormatText.js +5 -5
- package/format-text/lib/cjs/style/format-text.shadow.css +3 -1
- package/format-text/lib/es6/FormatText.js +5 -5
- package/format-text/lib/es6/style/format-text.shadow.css +3 -1
- package/link/lib/cjs/Link.js +12 -12
- package/link/lib/cjs/style/link.shadow.css +4 -6
- package/link/lib/es6/Link.js +12 -12
- package/link/lib/es6/style/link.shadow.css +4 -6
- package/package.json +3 -3
- package/popper/lib/cjs/Popper.js +6 -6
- package/popper/lib/es6/Popper.js +6 -6
- package/select/lib/cjs/InputSearch.js +6 -6
- package/select/lib/cjs/Select.js +9 -9
- package/select/lib/es6/InputSearch.js +6 -6
- package/select/lib/es6/Select.js +9 -9
- package/tag/index.d.ts +35 -33
- package/tag/lib/cjs/Tag.js +89 -56
- package/tag/lib/cjs/Tag.js.map +1 -1
- package/tag/lib/cjs/index.d.js.map +1 -1
- package/tag/lib/cjs/style/tag.shadow.css +27 -2
- package/tag/lib/es6/Tag.js +89 -56
- package/tag/lib/es6/Tag.js.map +1 -1
- package/tag/lib/es6/index.d.js.map +1 -1
- package/tag/lib/es6/style/tag.shadow.css +27 -2
- package/tag/lib/types/index.d.ts +35 -33
- package/time-picker/lib/cjs/TimePicker.js +12 -12
- package/time-picker/lib/es6/TimePicker.js +12 -12
- package/tooltip/lib/cjs/Tooltip.js +7 -7
- package/tooltip/lib/es6/Tooltip.js +7 -7
- package/utils/lib/themes/auto.css +6 -6
- package/utils/lib/themes/dark.css +0 -2
- package/utils/lib/themes/dark.json +0 -1
- package/utils/lib/themes/default.css +6 -4
- package/utils/lib/themes/default.json +3 -2
- package/utils/lib/themes/light.css +6 -4
- package/utils/lib/themes/light.json +3 -2
- package/utils/lib/use/useFocusLock.js +5 -0
- package/utils/lib/use/useFocusLock.js.map +1 -1
- package/utils/lib/use/useFocusLock.mjs +5 -0
- package/utils/lib/use/useFocusLock.mjs.map +1 -1
@@ -29,18 +29,18 @@ var _intergalacticDynamicLocales = require("./translations/__intergalactic-dynam
|
|
29
29
|
var _i18nEnhance = _interopRequireDefault(require("intergalactic/utils/lib/enhances/i18nEnhance"));
|
30
30
|
var _keyboardFocusEnhance = _interopRequireDefault(require("intergalactic/utils/lib/enhances/keyboardFocusEnhance"));
|
31
31
|
/*__reshadow-styles__:"./style/time-picker.shadow.css"*/
|
32
|
-
var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".
|
33
|
-
"__STimePicker": "
|
34
|
-
"_keyboardFocused": "
|
35
|
-
"_disabled": "
|
36
|
-
"__SPickerInput": "
|
37
|
-
"_size_m": "
|
38
|
-
"_size_l": "
|
39
|
-
"__SPickerFormat": "
|
40
|
-
"__STimePickerSeparator": "
|
41
|
-
"_placeholder": "
|
42
|
-
"_active": "
|
43
|
-
"__SPickerFormatText": "
|
32
|
+
var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___STimePicker_1ahze_gg_{position:relative;width:auto;outline:0}.___STimePicker_1ahze_gg_.__keyboardFocused_1ahze_gg_:focus{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___STimePicker_1ahze_gg_.__disabled_1ahze_gg_{color:var(--intergalactic-text-secondary, #6c6e79);cursor:default}.___SPickerInput_1ahze_gg_{box-sizing:content-box;text-align:center;z-index:1;height:1.5em}.___SPickerInput_1ahze_gg_.__placeholder_1ahze_gg_{text-overflow:initial}.___SPickerInput_1ahze_gg_:focus{background-color:var(--intergalactic-bg-highlight-focus, rgba(0, 143, 248, 0.2))}.___SPickerInput_1ahze_gg_._size_l_1ahze_gg_,.___SPickerInput_1ahze_gg_._size_m_1ahze_gg_{width:19px;margin:0 var(--intergalactic-spacing-2x, 8px);padding:0}.___SPickerInput_1ahze_gg_._size_l_1ahze_gg_{width:21px}.___SPickerFormat_1ahze_gg_{flex-shrink:0;position:relative;display:inline-flex;padding:0;white-space:nowrap;font-family:inherit;font-weight:var(--intergalactic-medium, 500);line-height:normal;-webkit-text-decoration:none;text-decoration:none;align-items:center;border:1px solid var(--intergalactic-border-primary, #c4c7cf);border-radius:0 var(--intergalactic-control-rounded, 6px) var(--intergalactic-control-rounded, 6px)0;outline:0;box-shadow:none;cursor:pointer;box-sizing:border-box;overflow:visible;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;color:var(--intergalactic-text-secondary, #6c6e79);background-color:var(--intergalactic-bg-secondary-neutral, #f4f5f9)}@media (hover:hover){.___SPickerFormat_1ahze_gg_:hover{color:var(--intergalactic-text-secondary, #6c6e79);background-color:var(--intergalactic-bg-secondary-neutral-hover, #e0e1e9)}}.___SPickerFormat_1ahze_gg_.__active_1ahze_gg_,.___SPickerFormat_1ahze_gg_:active{color:var(--intergalactic-text-secondary, #6c6e79);background-color:var(--intergalactic-bg-secondary-neutral-active, #c4c7cf)}.___SPickerFormat_1ahze_gg_._size_m_1ahze_gg_{height:var(--intergalactic-form-control-m, 28px);font-size:var(--intergalactic-fs-200, 14px);margin:0-1px 0 0}.___SPickerFormat_1ahze_gg_._size_m_1ahze_gg_ .___SPickerFormatText_1ahze_gg_{margin:0 var(--intergalactic-spacing-2x, 8px)}.___SPickerFormat_1ahze_gg_._size_l_1ahze_gg_{height:var(--intergalactic-form-control-l, 40px);font-size:var(--intergalactic-fs-300, 16px);margin:0 calc(-1*var(--intergalactic-spacing-1x, 4px))0 0}.___SPickerFormat_1ahze_gg_._size_l_1ahze_gg_ .___SPickerFormatText_1ahze_gg_{margin:0 var(--intergalactic-spacing-3x, 12px)}.___SPickerFormat_1ahze_gg_.__disabled_1ahze_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default;pointer-events:none;border-color:transparent transparent transparent var(--intergalactic-border-primary, #c4c7cf)}.___SPickerFormat_1ahze_gg_.__keyboardFocused_1ahze_gg_{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___STimePickerSeparator_1ahze_gg_{color:var(--intergalactic-text-primary, #191b23)}.___STimePickerSeparator_1ahze_gg_.__disabled_1ahze_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);pointer-events:none}" /*__inner_css_end__*/, "1ahze_gg_") /*__reshadow_css_end__*/, {
|
33
|
+
"__STimePicker": "___STimePicker_1ahze_gg_",
|
34
|
+
"_keyboardFocused": "__keyboardFocused_1ahze_gg_",
|
35
|
+
"_disabled": "__disabled_1ahze_gg_",
|
36
|
+
"__SPickerInput": "___SPickerInput_1ahze_gg_",
|
37
|
+
"_size_m": "_size_m_1ahze_gg_",
|
38
|
+
"_size_l": "_size_l_1ahze_gg_",
|
39
|
+
"__SPickerFormat": "___SPickerFormat_1ahze_gg_",
|
40
|
+
"__STimePickerSeparator": "___STimePickerSeparator_1ahze_gg_",
|
41
|
+
"_placeholder": "__placeholder_1ahze_gg_",
|
42
|
+
"_active": "__active_1ahze_gg_",
|
43
|
+
"__SPickerFormatText": "___SPickerFormatText_1ahze_gg_"
|
44
44
|
});
|
45
45
|
var MAP_MERIDIEM = {
|
46
46
|
AM: 'PM',
|
@@ -18,18 +18,18 @@ import Format from './PickerFormat';
|
|
18
18
|
import { localizedMessages } from './translations/__intergalactic-dynamic-locales';
|
19
19
|
import i18nEnhance from 'intergalactic/utils/lib/enhances/i18nEnhance';
|
20
20
|
/*__reshadow-styles__:"./style/time-picker.shadow.css"*/
|
21
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
22
|
-
"__STimePicker": "
|
23
|
-
"_keyboardFocused": "
|
24
|
-
"_disabled": "
|
25
|
-
"__SPickerInput": "
|
26
|
-
"_size_m": "
|
27
|
-
"_size_l": "
|
28
|
-
"__SPickerFormat": "
|
29
|
-
"__STimePickerSeparator": "
|
30
|
-
"_placeholder": "
|
31
|
-
"_active": "
|
32
|
-
"__SPickerFormatText": "
|
21
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___STimePicker_1ahze_gg_{position:relative;width:auto;outline:0}.___STimePicker_1ahze_gg_.__keyboardFocused_1ahze_gg_:focus{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___STimePicker_1ahze_gg_.__disabled_1ahze_gg_{color:var(--intergalactic-text-secondary, #6c6e79);cursor:default}.___SPickerInput_1ahze_gg_{box-sizing:content-box;text-align:center;z-index:1;height:1.5em}.___SPickerInput_1ahze_gg_.__placeholder_1ahze_gg_{text-overflow:initial}.___SPickerInput_1ahze_gg_:focus{background-color:var(--intergalactic-bg-highlight-focus, rgba(0, 143, 248, 0.2))}.___SPickerInput_1ahze_gg_._size_l_1ahze_gg_,.___SPickerInput_1ahze_gg_._size_m_1ahze_gg_{width:19px;margin:0 var(--intergalactic-spacing-2x, 8px);padding:0}.___SPickerInput_1ahze_gg_._size_l_1ahze_gg_{width:21px}.___SPickerFormat_1ahze_gg_{flex-shrink:0;position:relative;display:inline-flex;padding:0;white-space:nowrap;font-family:inherit;font-weight:var(--intergalactic-medium, 500);line-height:normal;-webkit-text-decoration:none;text-decoration:none;align-items:center;border:1px solid var(--intergalactic-border-primary, #c4c7cf);border-radius:0 var(--intergalactic-control-rounded, 6px) var(--intergalactic-control-rounded, 6px)0;outline:0;box-shadow:none;cursor:pointer;box-sizing:border-box;overflow:visible;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;color:var(--intergalactic-text-secondary, #6c6e79);background-color:var(--intergalactic-bg-secondary-neutral, #f4f5f9)}@media (hover:hover){.___SPickerFormat_1ahze_gg_:hover{color:var(--intergalactic-text-secondary, #6c6e79);background-color:var(--intergalactic-bg-secondary-neutral-hover, #e0e1e9)}}.___SPickerFormat_1ahze_gg_.__active_1ahze_gg_,.___SPickerFormat_1ahze_gg_:active{color:var(--intergalactic-text-secondary, #6c6e79);background-color:var(--intergalactic-bg-secondary-neutral-active, #c4c7cf)}.___SPickerFormat_1ahze_gg_._size_m_1ahze_gg_{height:var(--intergalactic-form-control-m, 28px);font-size:var(--intergalactic-fs-200, 14px);margin:0-1px 0 0}.___SPickerFormat_1ahze_gg_._size_m_1ahze_gg_ .___SPickerFormatText_1ahze_gg_{margin:0 var(--intergalactic-spacing-2x, 8px)}.___SPickerFormat_1ahze_gg_._size_l_1ahze_gg_{height:var(--intergalactic-form-control-l, 40px);font-size:var(--intergalactic-fs-300, 16px);margin:0 calc(-1*var(--intergalactic-spacing-1x, 4px))0 0}.___SPickerFormat_1ahze_gg_._size_l_1ahze_gg_ .___SPickerFormatText_1ahze_gg_{margin:0 var(--intergalactic-spacing-3x, 12px)}.___SPickerFormat_1ahze_gg_.__disabled_1ahze_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default;pointer-events:none;border-color:transparent transparent transparent var(--intergalactic-border-primary, #c4c7cf)}.___SPickerFormat_1ahze_gg_.__keyboardFocused_1ahze_gg_{box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5))}.___STimePickerSeparator_1ahze_gg_{color:var(--intergalactic-text-primary, #191b23)}.___STimePickerSeparator_1ahze_gg_.__disabled_1ahze_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);pointer-events:none}" /*__inner_css_end__*/, "1ahze_gg_") /*__reshadow_css_end__*/, {
|
22
|
+
"__STimePicker": "___STimePicker_1ahze_gg_",
|
23
|
+
"_keyboardFocused": "__keyboardFocused_1ahze_gg_",
|
24
|
+
"_disabled": "__disabled_1ahze_gg_",
|
25
|
+
"__SPickerInput": "___SPickerInput_1ahze_gg_",
|
26
|
+
"_size_m": "_size_m_1ahze_gg_",
|
27
|
+
"_size_l": "_size_l_1ahze_gg_",
|
28
|
+
"__SPickerFormat": "___SPickerFormat_1ahze_gg_",
|
29
|
+
"__STimePickerSeparator": "___STimePickerSeparator_1ahze_gg_",
|
30
|
+
"_placeholder": "__placeholder_1ahze_gg_",
|
31
|
+
"_active": "__active_1ahze_gg_",
|
32
|
+
"__SPickerFormatText": "___SPickerFormatText_1ahze_gg_"
|
33
33
|
});
|
34
34
|
import keyboardFocusEnhance from 'intergalactic/utils/lib/enhances/keyboardFocusEnhance';
|
35
35
|
var MAP_MERIDIEM = {
|
@@ -24,13 +24,13 @@ var _logger = _interopRequireDefault(require("intergalactic/utils/lib/logger"));
|
|
24
24
|
var _uniqueID = _interopRequireDefault(require("intergalactic/utils/lib/uniqueID"));
|
25
25
|
var _excluded = ["Children", "title", "offset", "forcedAdvancedMode"];
|
26
26
|
/*__reshadow-styles__:"./style/tooltip.shadow.css"*/
|
27
|
-
var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".
|
28
|
-
"__STooltip": "
|
29
|
-
"_theme_default": "
|
30
|
-
"_theme_invert": "
|
31
|
-
"_theme_warning": "
|
32
|
-
"__STooltipContent": "
|
33
|
-
"__SArrow": "
|
27
|
+
var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___STooltip_it8mm_gg_{position:relative;padding:var(--intergalactic-spacing-3x, 12px);border-radius:var(--intergalactic-popper-rounded, 6px);box-sizing:border-box;color:var(--intergalactic-text-primary, #191b23);font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%);word-wrap:break-word;max-width:250px;font-weight:400;white-space:normal;box-shadow:var(--intergalactic-box-shadow-popper, 0px 1px 12px 0px rgba(25, 27, 35, 0.15))}.___STooltip_it8mm_gg_._theme_default_it8mm_gg_{background-color:var(--intergalactic-tooltip-default, #ffffff);border:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___STooltip_it8mm_gg_._theme_invert_it8mm_gg_{color:var(--intergalactic-text-primary-invert, #ffffff);background-color:var(--intergalactic-tooltip-invert, #191b23);border:1px solid var(--intergalactic-border-tooltip-invert, #6c6e79)}.___STooltip_it8mm_gg_._theme_warning_it8mm_gg_{background-color:var(--intergalactic-tooltip-warning, #ffd7df);border:1px solid var(--intergalactic-border-critical-active, #d1002f)}.___STooltip_it8mm_gg_[data-popper-reference-hidden]{visibility:hidden;pointer-events:none}.___SArrow_it8mm_gg_,.___SArrow_it8mm_gg_:before{position:absolute;border:6px solid}.___SArrow_it8mm_gg_:before{content:\"\"}.___SArrow_it8mm_gg_._theme_default_it8mm_gg_{border-color:var(--intergalactic-border-secondary, #e0e1e9)}.___SArrow_it8mm_gg_._theme_default_it8mm_gg_:before{border-color:var(--intergalactic-tooltip-default, #ffffff)}.___SArrow_it8mm_gg_._theme_invert_it8mm_gg_{border-color:var(--intergalactic-border-tooltip-invert, #6c6e79)}.___SArrow_it8mm_gg_._theme_invert_it8mm_gg_::before{border-color:var(--intergalactic-tooltip-invert, #191b23)}.___SArrow_it8mm_gg_._theme_warning_it8mm_gg_{border-color:var(--intergalactic-border-critical-active, #d1002f)}.___SArrow_it8mm_gg_._theme_warning_it8mm_gg_::before{border-color:var(--intergalactic-tooltip-warning, #ffd7df)}.___STooltip_it8mm_gg_[data-popper-placement^=top] .___SArrow_it8mm_gg_,.___STooltip_it8mm_gg_[data-popper-placement^=top] .___SArrow_it8mm_gg_::before{top:100%;border-bottom:0 transparent;border-right-color:transparent!important;border-left-color:transparent!important}.___STooltip_it8mm_gg_[data-popper-placement^=top] .___SArrow_it8mm_gg_::before{top:-7px;left:-6px}.___STooltip_it8mm_gg_[data-popper-placement^=bottom] .___SArrow_it8mm_gg_{bottom:100%;border-top:0 transparent;border-right-color:transparent!important;border-left-color:transparent!important}.___STooltip_it8mm_gg_[data-popper-placement^=bottom] .___SArrow_it8mm_gg_::before{top:1px;left:-6px;border-top:0 transparent;border-right-color:transparent!important;border-left-color:transparent!important}.___STooltip_it8mm_gg_[data-popper-placement^=left] .___SArrow_it8mm_gg_,.___STooltip_it8mm_gg_[data-popper-placement^=left] .___SArrow_it8mm_gg_::before{left:100%;border-right:0 transparent;border-top-color:transparent!important;border-bottom-color:transparent!important}.___STooltip_it8mm_gg_[data-popper-placement^=left] .___SArrow_it8mm_gg_::before{top:-6px;left:-7px}.___STooltip_it8mm_gg_[data-popper-placement^=right] .___SArrow_it8mm_gg_{right:100%;border-left:0 transparent;border-top-color:transparent!important;border-bottom-color:transparent!important}.___STooltip_it8mm_gg_[data-popper-placement^=right] .___SArrow_it8mm_gg_::before{top:-6px;left:1px;border-left:0 transparent;border-top-color:transparent!important;border-bottom-color:transparent!important}.___STooltipContent_it8mm_gg_{display:contents}" /*__inner_css_end__*/, "it8mm_gg_") /*__reshadow_css_end__*/, {
|
28
|
+
"__STooltip": "___STooltip_it8mm_gg_",
|
29
|
+
"_theme_default": "_theme_default_it8mm_gg_",
|
30
|
+
"_theme_invert": "_theme_invert_it8mm_gg_",
|
31
|
+
"_theme_warning": "_theme_warning_it8mm_gg_",
|
32
|
+
"__STooltipContent": "___STooltipContent_it8mm_gg_",
|
33
|
+
"__SArrow": "___SArrow_it8mm_gg_"
|
34
34
|
});
|
35
35
|
var Popper = _popper["default"][_core.CREATE_COMPONENT]();
|
36
36
|
var TooltipRoot = /*#__PURE__*/function (_Component) {
|
@@ -20,13 +20,13 @@ import { isAdvanceMode } from 'intergalactic/utils/lib/findComponent';
|
|
20
20
|
import logger from 'intergalactic/utils/lib/logger';
|
21
21
|
import uniqueIDEnhancement from 'intergalactic/utils/lib/uniqueID';
|
22
22
|
/*__reshadow-styles__:"./style/tooltip.shadow.css"*/
|
23
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
24
|
-
"__STooltip": "
|
25
|
-
"_theme_default": "
|
26
|
-
"_theme_invert": "
|
27
|
-
"_theme_warning": "
|
28
|
-
"__STooltipContent": "
|
29
|
-
"__SArrow": "
|
23
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___STooltip_it8mm_gg_{position:relative;padding:var(--intergalactic-spacing-3x, 12px);border-radius:var(--intergalactic-popper-rounded, 6px);box-sizing:border-box;color:var(--intergalactic-text-primary, #191b23);font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%);word-wrap:break-word;max-width:250px;font-weight:400;white-space:normal;box-shadow:var(--intergalactic-box-shadow-popper, 0px 1px 12px 0px rgba(25, 27, 35, 0.15))}.___STooltip_it8mm_gg_._theme_default_it8mm_gg_{background-color:var(--intergalactic-tooltip-default, #ffffff);border:1px solid var(--intergalactic-border-secondary, #e0e1e9)}.___STooltip_it8mm_gg_._theme_invert_it8mm_gg_{color:var(--intergalactic-text-primary-invert, #ffffff);background-color:var(--intergalactic-tooltip-invert, #191b23);border:1px solid var(--intergalactic-border-tooltip-invert, #6c6e79)}.___STooltip_it8mm_gg_._theme_warning_it8mm_gg_{background-color:var(--intergalactic-tooltip-warning, #ffd7df);border:1px solid var(--intergalactic-border-critical-active, #d1002f)}.___STooltip_it8mm_gg_[data-popper-reference-hidden]{visibility:hidden;pointer-events:none}.___SArrow_it8mm_gg_,.___SArrow_it8mm_gg_:before{position:absolute;border:6px solid}.___SArrow_it8mm_gg_:before{content:\"\"}.___SArrow_it8mm_gg_._theme_default_it8mm_gg_{border-color:var(--intergalactic-border-secondary, #e0e1e9)}.___SArrow_it8mm_gg_._theme_default_it8mm_gg_:before{border-color:var(--intergalactic-tooltip-default, #ffffff)}.___SArrow_it8mm_gg_._theme_invert_it8mm_gg_{border-color:var(--intergalactic-border-tooltip-invert, #6c6e79)}.___SArrow_it8mm_gg_._theme_invert_it8mm_gg_::before{border-color:var(--intergalactic-tooltip-invert, #191b23)}.___SArrow_it8mm_gg_._theme_warning_it8mm_gg_{border-color:var(--intergalactic-border-critical-active, #d1002f)}.___SArrow_it8mm_gg_._theme_warning_it8mm_gg_::before{border-color:var(--intergalactic-tooltip-warning, #ffd7df)}.___STooltip_it8mm_gg_[data-popper-placement^=top] .___SArrow_it8mm_gg_,.___STooltip_it8mm_gg_[data-popper-placement^=top] .___SArrow_it8mm_gg_::before{top:100%;border-bottom:0 transparent;border-right-color:transparent!important;border-left-color:transparent!important}.___STooltip_it8mm_gg_[data-popper-placement^=top] .___SArrow_it8mm_gg_::before{top:-7px;left:-6px}.___STooltip_it8mm_gg_[data-popper-placement^=bottom] .___SArrow_it8mm_gg_{bottom:100%;border-top:0 transparent;border-right-color:transparent!important;border-left-color:transparent!important}.___STooltip_it8mm_gg_[data-popper-placement^=bottom] .___SArrow_it8mm_gg_::before{top:1px;left:-6px;border-top:0 transparent;border-right-color:transparent!important;border-left-color:transparent!important}.___STooltip_it8mm_gg_[data-popper-placement^=left] .___SArrow_it8mm_gg_,.___STooltip_it8mm_gg_[data-popper-placement^=left] .___SArrow_it8mm_gg_::before{left:100%;border-right:0 transparent;border-top-color:transparent!important;border-bottom-color:transparent!important}.___STooltip_it8mm_gg_[data-popper-placement^=left] .___SArrow_it8mm_gg_::before{top:-6px;left:-7px}.___STooltip_it8mm_gg_[data-popper-placement^=right] .___SArrow_it8mm_gg_{right:100%;border-left:0 transparent;border-top-color:transparent!important;border-bottom-color:transparent!important}.___STooltip_it8mm_gg_[data-popper-placement^=right] .___SArrow_it8mm_gg_::before{top:-6px;left:1px;border-left:0 transparent;border-top-color:transparent!important;border-bottom-color:transparent!important}.___STooltipContent_it8mm_gg_{display:contents}" /*__inner_css_end__*/, "it8mm_gg_") /*__reshadow_css_end__*/, {
|
24
|
+
"__STooltip": "___STooltip_it8mm_gg_",
|
25
|
+
"_theme_default": "_theme_default_it8mm_gg_",
|
26
|
+
"_theme_invert": "_theme_invert_it8mm_gg_",
|
27
|
+
"_theme_warning": "_theme_warning_it8mm_gg_",
|
28
|
+
"__STooltipContent": "___STooltipContent_it8mm_gg_",
|
29
|
+
"__SArrow": "___SArrow_it8mm_gg_"
|
30
30
|
});
|
31
31
|
var Popper = PopperOrigin[CREATE_COMPONENT]();
|
32
32
|
var TooltipRoot = /*#__PURE__*/function (_Component) {
|
@@ -139,8 +139,6 @@
|
|
139
139
|
--intergalactic-border-critical: #ffaeb5;
|
140
140
|
/* Active border in the focused input field with invalid state, and active state of the other components with invalid state. */
|
141
141
|
--intergalactic-border-critical-active: #d1002f;
|
142
|
-
/* Used for the invalidStatePattern utils component to mark all kinds of inputs with invalid states. */
|
143
|
-
--intergalactic-border-critical-pattern: repeating-linear-gradient(315deg, rgba(209, 0, 47, 1) 0, rgba(209, 0, 47, 1) 2px, transparent 0, transparent 50%);
|
144
142
|
/* Subtle secondary border in the warning message. */
|
145
143
|
--intergalactic-border-warning: #ffb26e;
|
146
144
|
/* Active border in components with warning intention. */
|
@@ -155,6 +153,8 @@
|
|
155
153
|
--intergalactic-border-table-accent: #a9abb6;
|
156
154
|
/* Border color of the second period for the comparison mode in the DatePicker. */
|
157
155
|
--intergalactic-border-date-picker-range-comparison: #8649e1;
|
156
|
+
/* Used for the invalidStatePattern utils component to mark all kinds of inputs with invalid states. */
|
157
|
+
--intergalactic-border-critical-pattern: repeating-linear-gradient(315deg, rgba(209, 0, 47, 1) 0, rgba(209, 0, 47, 1) 2px, transparent 0, transparent 50%);
|
158
158
|
/* Subtle background of the Switch control. */
|
159
159
|
--intergalactic-control-switch-bg: #a9abb6;
|
160
160
|
/* Background of the regular primary control. */
|
@@ -313,8 +313,6 @@
|
|
313
313
|
--intergalactic-progress-bar-bg-invert: rgba(255, 255, 255, 0.2);
|
314
314
|
/* Hover state for the inverted version of the background color of the ProgressBar. */
|
315
315
|
--intergalactic-progress-bar-bg-invert-hover: rgba(255, 255, 255, 0.4);
|
316
|
-
/* Value color of the ProgressBar. */
|
317
|
-
--intergalactic-progress-bar-value: #009f81;
|
318
316
|
/* Value with gradient for the ProgressBar. */
|
319
317
|
--intergalactic-progress-bar-value-gradient: linear-gradient(-45deg, rgba(0, 159, 129, 0.9) 25%, rgba(0, 159, 129, 1) 0%, rgba(0, 159, 129, 1) 50%, rgba(0, 159, 129, 0.9) 0%, rgba(0, 159, 129, 0.9) 75%, rgba(0, 159, 129, 1) 0%);
|
320
318
|
/* Null value gradient for the ProgressBar. */
|
@@ -401,6 +399,10 @@
|
|
401
399
|
--intergalactic-box-shadow-modal: 0px 3px 8px 0px rgba(25, 27, 35, 0.2);
|
402
400
|
/* Default shadow of all Poppers, Dropdowns and Tooltips. */
|
403
401
|
--intergalactic-box-shadow-popper: 0px 1px 12px 0px rgba(25, 27, 35, 0.15);
|
402
|
+
/* Color for default keyboard focus outline styles. */
|
403
|
+
--intergalactic-keyboard-focus-outline: rgba(0, 143, 248, 0.5);
|
404
|
+
/* Color for default keyboard focus outline styles to use on the dark and color background. */
|
405
|
+
--intergalactic-keyboard-focus-outline-invert: rgba(255, 255, 255, 0.7);
|
404
406
|
/* Default keyboard focus styles. */
|
405
407
|
--intergalactic-keyboard-focus: 0px 0px 0px 3px rgba(0, 143, 248, 0.5);
|
406
408
|
/* Keyboard focus styles for elements with invalid state. */
|
@@ -1029,8 +1031,6 @@
|
|
1029
1031
|
--intergalactic-progress-bar-bg-invert: rgba(255, 255, 255, 0.2);
|
1030
1032
|
/* Hover state for the inverted version of the background color of the ProgressBar. */
|
1031
1033
|
--intergalactic-progress-bar-bg-invert-hover: rgba(255, 255, 255, 0.4);
|
1032
|
-
/* Value color of the ProgressBar. */
|
1033
|
-
--intergalactic-progress-bar-value: #009f81;
|
1034
1034
|
/* Value with gradient for the ProgressBar. */
|
1035
1035
|
--intergalactic-progress-bar-value-gradient: linear-gradient(-45deg, rgba(0, 159, 129, 0.9) 25%, rgba(0, 159, 129, 1) 0%, rgba(0, 159, 129, 1) 50%, rgba(0, 159, 129, 0.9) 0%, rgba(0, 159, 129, 0.9) 75%, rgba(0, 159, 129, 1) 0%);
|
1036
1036
|
/* Null value gradient for the ProgressBar. */
|
@@ -303,8 +303,6 @@
|
|
303
303
|
--intergalactic-progress-bar-bg-invert: rgba(255, 255, 255, 0.2);
|
304
304
|
/* Hover state for the inverted version of the background color of the ProgressBar. */
|
305
305
|
--intergalactic-progress-bar-bg-invert-hover: rgba(255, 255, 255, 0.4);
|
306
|
-
/* Value color of the ProgressBar. */
|
307
|
-
--intergalactic-progress-bar-value: #009f81;
|
308
306
|
/* Value with gradient for the ProgressBar. */
|
309
307
|
--intergalactic-progress-bar-value-gradient: linear-gradient(-45deg, rgba(0, 159, 129, 0.9) 25%, rgba(0, 159, 129, 1) 0%, rgba(0, 159, 129, 1) 50%, rgba(0, 159, 129, 0.9) 0%, rgba(0, 159, 129, 0.9) 75%, rgba(0, 159, 129, 1) 0%);
|
310
308
|
/* Null value gradient for the ProgressBar. */
|
@@ -152,7 +152,6 @@
|
|
152
152
|
"--intergalactic-progress-bar-bg-hover": "#c4c7cf",
|
153
153
|
"--intergalactic-progress-bar-bg-invert": "rgba(255, 255, 255, 0.2)",
|
154
154
|
"--intergalactic-progress-bar-bg-invert-hover": "rgba(255, 255, 255, 0.4)",
|
155
|
-
"--intergalactic-progress-bar-value": "#009f81",
|
156
155
|
"--intergalactic-progress-bar-value-gradient": "linear-gradient(-45deg, rgba(0, 159, 129, 0.9) 25%, rgba(0, 159, 129, 1) 0%, rgba(0, 159, 129, 1) 50%, rgba(0, 159, 129, 0.9) 0%, rgba(0, 159, 129, 0.9) 75%, rgba(0, 159, 129, 1) 0%)",
|
157
156
|
"--intergalactic-progress-bar-pattern-gradient": "linear-gradient(-45deg, rgba(224, 225, 233, 0.9) 25%, rgba(224, 225, 233, 1) 0%, rgba(224, 225, 233, 1) 50%, rgba(224, 225, 233, 0.9) 0%, rgba(224, 225, 233, 0.9) 75%, rgba(224, 225, 233, 1) 0%)",
|
158
157
|
"--intergalactic-progress-bar-value-bg": "#000000",
|
@@ -139,8 +139,6 @@
|
|
139
139
|
--intergalactic-border-critical: #ffaeb5;
|
140
140
|
/* Active border in the focused input field with invalid state, and active state of the other components with invalid state. */
|
141
141
|
--intergalactic-border-critical-active: #d1002f;
|
142
|
-
/* Used for the invalidStatePattern utils component to mark all kinds of inputs with invalid states. */
|
143
|
-
--intergalactic-border-critical-pattern: repeating-linear-gradient(315deg, rgba(209, 0, 47, 1) 0, rgba(209, 0, 47, 1) 2px, transparent 0, transparent 50%);
|
144
142
|
/* Subtle secondary border in the warning message. */
|
145
143
|
--intergalactic-border-warning: #ffb26e;
|
146
144
|
/* Active border in components with warning intention. */
|
@@ -155,6 +153,8 @@
|
|
155
153
|
--intergalactic-border-table-accent: #a9abb6;
|
156
154
|
/* Border color of the second period for the comparison mode in the DatePicker. */
|
157
155
|
--intergalactic-border-date-picker-range-comparison: #8649e1;
|
156
|
+
/* Used for the invalidStatePattern utils component to mark all kinds of inputs with invalid states. */
|
157
|
+
--intergalactic-border-critical-pattern: repeating-linear-gradient(315deg, rgba(209, 0, 47, 1) 0, rgba(209, 0, 47, 1) 2px, transparent 0, transparent 50%);
|
158
158
|
/* Subtle background of the Switch control. */
|
159
159
|
--intergalactic-control-switch-bg: #a9abb6;
|
160
160
|
/* Background of the regular primary control. */
|
@@ -313,8 +313,6 @@
|
|
313
313
|
--intergalactic-progress-bar-bg-invert: rgba(255, 255, 255, 0.2);
|
314
314
|
/* Hover state for the inverted version of the background color of the ProgressBar. */
|
315
315
|
--intergalactic-progress-bar-bg-invert-hover: rgba(255, 255, 255, 0.4);
|
316
|
-
/* Value color of the ProgressBar. */
|
317
|
-
--intergalactic-progress-bar-value: #009f81;
|
318
316
|
/* Value with gradient for the ProgressBar. */
|
319
317
|
--intergalactic-progress-bar-value-gradient: linear-gradient(-45deg, rgba(0, 159, 129, 0.9) 25%, rgba(0, 159, 129, 1) 0%, rgba(0, 159, 129, 1) 50%, rgba(0, 159, 129, 0.9) 0%, rgba(0, 159, 129, 0.9) 75%, rgba(0, 159, 129, 1) 0%);
|
320
318
|
/* Null value gradient for the ProgressBar. */
|
@@ -401,6 +399,10 @@
|
|
401
399
|
--intergalactic-box-shadow-modal: 0px 3px 8px 0px rgba(25, 27, 35, 0.2);
|
402
400
|
/* Default shadow of all Poppers, Dropdowns and Tooltips. */
|
403
401
|
--intergalactic-box-shadow-popper: 0px 1px 12px 0px rgba(25, 27, 35, 0.15);
|
402
|
+
/* Color for default keyboard focus outline styles. */
|
403
|
+
--intergalactic-keyboard-focus-outline: rgba(0, 143, 248, 0.5);
|
404
|
+
/* Color for default keyboard focus outline styles to use on the dark and color background. */
|
405
|
+
--intergalactic-keyboard-focus-outline-invert: rgba(255, 255, 255, 0.7);
|
404
406
|
/* Default keyboard focus styles. */
|
405
407
|
--intergalactic-keyboard-focus: 0px 0px 0px 3px rgba(0, 143, 248, 0.5);
|
406
408
|
/* Keyboard focus styles for elements with invalid state. */
|
@@ -69,7 +69,6 @@
|
|
69
69
|
"--intergalactic-border-success-active": "#007c65",
|
70
70
|
"--intergalactic-border-critical": "#ffaeb5",
|
71
71
|
"--intergalactic-border-critical-active": "#d1002f",
|
72
|
-
"--intergalactic-border-critical-pattern": "repeating-linear-gradient(315deg, rgba(209, 0, 47, 1) 0, rgba(209, 0, 47, 1) 2px, transparent 0, transparent 50%)",
|
73
72
|
"--intergalactic-border-warning": "#ffb26e",
|
74
73
|
"--intergalactic-border-warning-active": "#c33909",
|
75
74
|
"--intergalactic-border-primary-invert": "#ffffff",
|
@@ -77,6 +76,7 @@
|
|
77
76
|
"--intergalactic-border-tooltip-invert": "#6c6e79",
|
78
77
|
"--intergalactic-border-table-accent": "#a9abb6",
|
79
78
|
"--intergalactic-border-date-picker-range-comparison": "#8649e1",
|
79
|
+
"--intergalactic-border-critical-pattern": "repeating-linear-gradient(315deg, rgba(209, 0, 47, 1) 0, rgba(209, 0, 47, 1) 2px, transparent 0, transparent 50%)",
|
80
80
|
"--intergalactic-control-switch-bg": "#a9abb6",
|
81
81
|
"--intergalactic-control-primary-info": "#008ff8",
|
82
82
|
"--intergalactic-control-primary-info-hover": "#006dca",
|
@@ -156,7 +156,6 @@
|
|
156
156
|
"--intergalactic-progress-bar-bg-hover": "#c4c7cf",
|
157
157
|
"--intergalactic-progress-bar-bg-invert": "rgba(255, 255, 255, 0.2)",
|
158
158
|
"--intergalactic-progress-bar-bg-invert-hover": "rgba(255, 255, 255, 0.4)",
|
159
|
-
"--intergalactic-progress-bar-value": "#009f81",
|
160
159
|
"--intergalactic-progress-bar-value-gradient": "linear-gradient(-45deg, rgba(0, 159, 129, 0.9) 25%, rgba(0, 159, 129, 1) 0%, rgba(0, 159, 129, 1) 50%, rgba(0, 159, 129, 0.9) 0%, rgba(0, 159, 129, 0.9) 75%, rgba(0, 159, 129, 1) 0%)",
|
161
160
|
"--intergalactic-progress-bar-pattern-gradient": "linear-gradient(-45deg, rgba(224, 225, 233, 0.9) 25%, rgba(224, 225, 233, 1) 0%, rgba(224, 225, 233, 1) 50%, rgba(224, 225, 233, 0.9) 0%, rgba(224, 225, 233, 0.9) 75%, rgba(224, 225, 233, 1) 0%)",
|
162
161
|
"--intergalactic-progress-bar-value-bg": "#000000",
|
@@ -200,6 +199,8 @@
|
|
200
199
|
"--intergalactic-box-shadow-dnd": "0px 0px 1px 0px rgba(25, 27, 35, 0.16), 0px 12px 40px 0px rgba(25, 27, 35, 0.16)",
|
201
200
|
"--intergalactic-box-shadow-modal": "0px 3px 8px 0px rgba(25, 27, 35, 0.2)",
|
202
201
|
"--intergalactic-box-shadow-popper": "0px 1px 12px 0px rgba(25, 27, 35, 0.15)",
|
202
|
+
"--intergalactic-keyboard-focus-outline": "rgba(0, 143, 248, 0.5)",
|
203
|
+
"--intergalactic-keyboard-focus-outline-invert": "rgba(255, 255, 255, 0.7)",
|
203
204
|
"--intergalactic-keyboard-focus": "0px 0px 0px 3px rgba(0, 143, 248, 0.5)",
|
204
205
|
"--intergalactic-keyboard-focus-invalid": "0px 0px 0px 3px rgba(255, 73, 83, 0.5)",
|
205
206
|
"--intergalactic-keyboard-focus-valid": "0px 0px 0px 3px rgba(0, 159, 129, 0.5)",
|
@@ -139,8 +139,6 @@
|
|
139
139
|
--intergalactic-border-critical: #ffaeb5;
|
140
140
|
/* Active border in the focused input field with invalid state, and active state of the other components with invalid state. */
|
141
141
|
--intergalactic-border-critical-active: #d1002f;
|
142
|
-
/* Used for the invalidStatePattern utils component to mark all kinds of inputs with invalid states. */
|
143
|
-
--intergalactic-border-critical-pattern: repeating-linear-gradient(315deg, rgba(209, 0, 47, 1) 0, rgba(209, 0, 47, 1) 2px, transparent 0, transparent 50%);
|
144
142
|
/* Subtle secondary border in the warning message. */
|
145
143
|
--intergalactic-border-warning: #ffb26e;
|
146
144
|
/* Active border in components with warning intention. */
|
@@ -155,6 +153,8 @@
|
|
155
153
|
--intergalactic-border-table-accent: #a9abb6;
|
156
154
|
/* Border color of the second period for the comparison mode in the DatePicker. */
|
157
155
|
--intergalactic-border-date-picker-range-comparison: #8649e1;
|
156
|
+
/* Used for the invalidStatePattern utils component to mark all kinds of inputs with invalid states. */
|
157
|
+
--intergalactic-border-critical-pattern: repeating-linear-gradient(315deg, rgba(209, 0, 47, 1) 0, rgba(209, 0, 47, 1) 2px, transparent 0, transparent 50%);
|
158
158
|
/* Subtle background of the Switch control. */
|
159
159
|
--intergalactic-control-switch-bg: #a9abb6;
|
160
160
|
/* Background of the regular primary control. */
|
@@ -313,8 +313,6 @@
|
|
313
313
|
--intergalactic-progress-bar-bg-invert: rgba(255, 255, 255, 0.2);
|
314
314
|
/* Hover state for the inverted version of the background color of the ProgressBar. */
|
315
315
|
--intergalactic-progress-bar-bg-invert-hover: rgba(255, 255, 255, 0.4);
|
316
|
-
/* Value color of the ProgressBar. */
|
317
|
-
--intergalactic-progress-bar-value: #009f81;
|
318
316
|
/* Value with gradient for the ProgressBar. */
|
319
317
|
--intergalactic-progress-bar-value-gradient: linear-gradient(-45deg, rgba(0, 159, 129, 0.9) 25%, rgba(0, 159, 129, 1) 0%, rgba(0, 159, 129, 1) 50%, rgba(0, 159, 129, 0.9) 0%, rgba(0, 159, 129, 0.9) 75%, rgba(0, 159, 129, 1) 0%);
|
320
318
|
/* Null value gradient for the ProgressBar. */
|
@@ -401,6 +399,10 @@
|
|
401
399
|
--intergalactic-box-shadow-modal: 0px 3px 8px 0px rgba(25, 27, 35, 0.2);
|
402
400
|
/* Default shadow of all Poppers, Dropdowns and Tooltips. */
|
403
401
|
--intergalactic-box-shadow-popper: 0px 1px 12px 0px rgba(25, 27, 35, 0.15);
|
402
|
+
/* Color for default keyboard focus outline styles. */
|
403
|
+
--intergalactic-keyboard-focus-outline: rgba(0, 143, 248, 0.5);
|
404
|
+
/* Color for default keyboard focus outline styles to use on the dark and color background. */
|
405
|
+
--intergalactic-keyboard-focus-outline-invert: rgba(255, 255, 255, 0.7);
|
404
406
|
/* Default keyboard focus styles. */
|
405
407
|
--intergalactic-keyboard-focus: 0px 0px 0px 3px rgba(0, 143, 248, 0.5);
|
406
408
|
/* Keyboard focus styles for elements with invalid state. */
|
@@ -69,7 +69,6 @@
|
|
69
69
|
"--intergalactic-border-success-active": "#007c65",
|
70
70
|
"--intergalactic-border-critical": "#ffaeb5",
|
71
71
|
"--intergalactic-border-critical-active": "#d1002f",
|
72
|
-
"--intergalactic-border-critical-pattern": "repeating-linear-gradient(315deg, rgba(209, 0, 47, 1) 0, rgba(209, 0, 47, 1) 2px, transparent 0, transparent 50%)",
|
73
72
|
"--intergalactic-border-warning": "#ffb26e",
|
74
73
|
"--intergalactic-border-warning-active": "#c33909",
|
75
74
|
"--intergalactic-border-primary-invert": "#ffffff",
|
@@ -77,6 +76,7 @@
|
|
77
76
|
"--intergalactic-border-tooltip-invert": "#6c6e79",
|
78
77
|
"--intergalactic-border-table-accent": "#a9abb6",
|
79
78
|
"--intergalactic-border-date-picker-range-comparison": "#8649e1",
|
79
|
+
"--intergalactic-border-critical-pattern": "repeating-linear-gradient(315deg, rgba(209, 0, 47, 1) 0, rgba(209, 0, 47, 1) 2px, transparent 0, transparent 50%)",
|
80
80
|
"--intergalactic-control-switch-bg": "#a9abb6",
|
81
81
|
"--intergalactic-control-primary-info": "#008ff8",
|
82
82
|
"--intergalactic-control-primary-info-hover": "#006dca",
|
@@ -156,7 +156,6 @@
|
|
156
156
|
"--intergalactic-progress-bar-bg-hover": "#c4c7cf",
|
157
157
|
"--intergalactic-progress-bar-bg-invert": "rgba(255, 255, 255, 0.2)",
|
158
158
|
"--intergalactic-progress-bar-bg-invert-hover": "rgba(255, 255, 255, 0.4)",
|
159
|
-
"--intergalactic-progress-bar-value": "#009f81",
|
160
159
|
"--intergalactic-progress-bar-value-gradient": "linear-gradient(-45deg, rgba(0, 159, 129, 0.9) 25%, rgba(0, 159, 129, 1) 0%, rgba(0, 159, 129, 1) 50%, rgba(0, 159, 129, 0.9) 0%, rgba(0, 159, 129, 0.9) 75%, rgba(0, 159, 129, 1) 0%)",
|
161
160
|
"--intergalactic-progress-bar-pattern-gradient": "linear-gradient(-45deg, rgba(224, 225, 233, 0.9) 25%, rgba(224, 225, 233, 1) 0%, rgba(224, 225, 233, 1) 50%, rgba(224, 225, 233, 0.9) 0%, rgba(224, 225, 233, 0.9) 75%, rgba(224, 225, 233, 1) 0%)",
|
162
161
|
"--intergalactic-progress-bar-value-bg": "#000000",
|
@@ -200,6 +199,8 @@
|
|
200
199
|
"--intergalactic-box-shadow-dnd": "0px 0px 1px 0px rgba(25, 27, 35, 0.16), 0px 12px 40px 0px rgba(25, 27, 35, 0.16)",
|
201
200
|
"--intergalactic-box-shadow-modal": "0px 3px 8px 0px rgba(25, 27, 35, 0.2)",
|
202
201
|
"--intergalactic-box-shadow-popper": "0px 1px 12px 0px rgba(25, 27, 35, 0.15)",
|
202
|
+
"--intergalactic-keyboard-focus-outline": "rgba(0, 143, 248, 0.5)",
|
203
|
+
"--intergalactic-keyboard-focus-outline-invert": "rgba(255, 255, 255, 0.7)",
|
203
204
|
"--intergalactic-keyboard-focus": "0px 0px 0px 3px rgba(0, 143, 248, 0.5)",
|
204
205
|
"--intergalactic-keyboard-focus-invalid": "0px 0px 0px 3px rgba(255, 73, 83, 0.5)",
|
205
206
|
"--intergalactic-keyboard-focus-valid": "0px 0px 0px 3px rgba(0, 159, 129, 0.5)",
|
@@ -117,6 +117,7 @@ var useFocusLockHook = function useFocusLockHook(React, trapRef, autoFocus, retu
|
|
117
117
|
if (currentFocusMaster && currentFocusMaster !== trapRef.current) return;
|
118
118
|
var trapNodes = currentFocusMaster ? [trapRef.current] : [trapRef.current].concat((0, _toConsumableArray2["default"])(focusLockAllTraps));
|
119
119
|
if ((0, _isFocusInside.isFocusInside)(trapNodes, focusMovedTo)) return;
|
120
|
+
if ((0, _typeof2["default"])(returnFocusTo) === 'object' && returnFocusTo !== null && returnFocusTo !== void 0 && returnFocusTo.current && (0, _isFocusInside.isFocusInside)(returnFocusTo.current)) return;
|
120
121
|
if (focusCameFrom) {
|
121
122
|
(0, _setFocus.setFocus)(trapRef.current, focusCameFrom, focusMovedTo);
|
122
123
|
}
|
@@ -160,6 +161,10 @@ var useFocusLockHook = function useFocusLockHook(React, trapRef, autoFocus, retu
|
|
160
161
|
if (disabled) return;
|
161
162
|
if (!(0, _canUseDOM["default"])()) return;
|
162
163
|
if (!trapRef.current) return;
|
164
|
+
var focusableChildren = Array.from(trapRef.current.children).flatMap(function (node) {
|
165
|
+
return (0, _getFocusableIn.getFocusableIn)(node);
|
166
|
+
});
|
167
|
+
if (focusableChildren.length === 0) return;
|
163
168
|
if (focusMaster) {
|
164
169
|
focusMastersStack.push(trapRef.current);
|
165
170
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"useFocusLock.js","names":["_canUseDOM","_interopRequireDefault","require","_react","_isFocusInside","_setFocus","_getFocusableIn","_focusBorders","focusBordersConsumers","Set","useFocusBorders","React","disabled","useUniqueIdHookMock","useEffect","id","getUniqueId","add","areFocusBordersPlacedCorrectly","removeFocusBorders","size","addFocusBorders","uniqueId","prefix","concat","Math","random","toString","slice","focusLockVersion","globalFocusLockHookKey","focusLockAllTraps","focusLockUsedInMountedComponents","focusMastersStack","noop","useState","undefined","useEnhancedEffect","canUseDOM","useLayoutEffect","useFocusLockHook","trapRef","autoFocus","returnFocusTo","arguments","length","focusMaster","onFocusOut","autoTriggerRef","useRef","lastUserInteractionRef","handleFocusOut","useCallback","event","focusCameFrom","target","focusMovedTo","relatedTarget","setTimeout","current","Promise","resolve","then","currentFocusMaster","trapNodes","_toConsumableArray2","isFocusInside","setFocus","handleMouseEvent","handleKeyboardEvent","returnFocus","trapNode","_typeof2","returnFocusNode","autoTrigger","node","push","pop","splice","indexOf","focusableChildren","Array","from","children","flatMap","getFocusableIn","document","body","addEventListener","removeEventListener","establishHookAsGlobal","globalThis","hook","version","usedInComponents","_globalFocusLockHookK","theirVersion","useFocusLock","_globalFocusLockHookK2","_globalFocusLockHookK3","LocalReact","exports","hasFocusableIn","element"],"sources":["../../src/use/useFocusLock.ts"],"sourcesContent":["import canUseDOM from '../canUseDOM';\nimport LocalReact from 'react';\n\nimport { isFocusInside } from '../focus-lock/isFocusInside';\nimport { setFocus } from '../focus-lock/setFocus';\nimport { getFocusableIn } from '../focus-lock/getFocusableIn';\nimport {\n addFocusBorders,\n removeFocusBorders,\n areFocusBordersPlacedCorrectly,\n} from '../focus-lock/focusBorders';\n\nexport { isFocusInside, setFocus };\n\nconst focusBordersConsumers = new Set();\n\nconst useFocusBorders = (React: ReactT, disabled?: boolean) => {\n useUniqueIdHookMock(React);\n React.useEffect(() => {\n const id = getUniqueId('focus-borders-consumer');\n if (!disabled) {\n focusBordersConsumers.add(id);\n }\n\n if (!areFocusBordersPlacedCorrectly()) removeFocusBorders();\n if (focusBordersConsumers.size > 0) addFocusBorders();\n\n return () => {\n focusBordersConsumers.delete(id);\n if (focusBordersConsumers.size === 0) removeFocusBorders();\n };\n }, [disabled]);\n};\n\ntype ReactT = typeof LocalReact;\n\nlet uniqueId = 0;\nconst getUniqueId = (prefix: string) =>\n `${prefix}-${Math.random().toString(36).slice(2)}-${uniqueId++}`;\n\n/**\n * # Focus lock hook merging\n * In some cases same page might contain different versions of components.\n * In such cases, we need to ensure that only one version of focus lock hook is used.\n * So, it's why we have `useFocusLockHook` function that is wrapped into `useFocusLock`.\n *\n * While evaluating this file code, we check if global focus lock hook is already defined.\n * If it's defined, we replace it ONLY if our version is higher and no components currently use it.\n * The last condition is very important because we are unable to replace React hook without reimplementing\n * React hooks lifecycle in some kind of wrapper.\n *\n * ## Versioning\n * Such versions merging requires us to keep hook api backward compatible.\n * When hook logic changes, the variable `focusLockVersion` should be incremented.\n *\n * Version update `1 -> 2`. Fixed call `safeMoveFocusInside` in `handleFocusIn` with correct second parameter (focusCameFrom instead of event.target)\n * Version update `2 -> 3`. Fixed React version isolation in nested hooks (`useFocusBorders`, `useUniqueId`).\n *\n * Initially (for a several versions) key was `__intergalactic_focus_lock_hook_`.\n * Making it respect react version required to change key. So key was changed to `__intergalactic_focus_lock_hook_react_v_respectful`.\n *\n * ## React hooks order\n * When updating from version 2 to version 3 `useUniqueId` hook was removed.\n * Due to replacing useFocusLock hook in runtime, the order of hooks must be preserved.\n * So, useUniqueIdHookMock helps to preserve hooks order when hook is being replaced from version 2 to version 3.\n *\n * If new update requires to remove some hooks – add mocks instead of them.\n * If new update requires to add some hooks and no workaround with current hooks list is possible – probably focus lock hook key should be changed.\n */\nconst focusLockVersion = 3;\nconst globalFocusLockHookKey = '__intergalactic_focus_lock_hook_react_v_respectful';\n\nconst focusLockAllTraps = new Set<HTMLElement>();\nconst focusLockUsedInMountedComponents = new Set<string>();\n/** Focus master is a special mode in which focus lock might work.\n * Normally, focus lock hook allows user focus to move freely between\n * all active focus traps. When component provides `focusMaster=true`\n * parameter, it says that it doesn't want to share focus with other traps.\n * It is very useful for a big components like modals or side-bars that\n * also have some visual backdrop.\n * The last element in focus masters stack is considered as a current focus master.\n */\nconst focusMastersStack: HTMLElement[] = [];\n\nconst noop = () => {};\nconst useUniqueIdHookMock = (React: ReactT) => {\n React.useState(undefined);\n const useEnhancedEffect = canUseDOM() ? React.useLayoutEffect : React.useEffect;\n useEnhancedEffect(noop, []);\n};\n\nconst useFocusLockHook = (\n React: ReactT,\n trapRef: React.RefObject<HTMLElement>,\n autoFocus: boolean,\n returnFocusTo: React.RefObject<HTMLElement> | null | 'auto',\n disabled = false,\n focusMaster = false,\n onFocusOut?: (event: Event) => void,\n) => {\n useFocusBorders(React, disabled);\n\n const autoTriggerRef = React.useRef<HTMLElement | null>(null);\n const lastUserInteractionRef = React.useRef<'mouse' | 'keyboard' | undefined>(undefined);\n\n const handleFocusOut = React.useCallback(\n (event: Event & { relatedTarget?: HTMLElement; target?: HTMLElement }) => {\n const focusCameFrom = event.target;\n const focusMovedTo = event.relatedTarget;\n\n setTimeout(() => {\n if (!focusCameFrom) return;\n if (autoTriggerRef.current) return;\n autoTriggerRef.current = focusCameFrom;\n }, 0);\n if (lastUserInteractionRef.current === 'mouse') return;\n Promise.resolve().then(() => {\n if (!trapRef.current) return;\n const currentFocusMaster = focusMastersStack[focusMastersStack.length - 1];\n if (currentFocusMaster && currentFocusMaster !== trapRef.current) return;\n const trapNodes = currentFocusMaster\n ? [trapRef.current]\n : [trapRef.current, ...focusLockAllTraps];\n if (isFocusInside(trapNodes, focusMovedTo)) return;\n\n if (focusCameFrom) {\n setFocus(trapRef.current, focusCameFrom, focusMovedTo);\n }\n\n onFocusOut?.(event);\n });\n },\n [onFocusOut],\n );\n const handleMouseEvent = React.useCallback(() => {\n lastUserInteractionRef.current = 'mouse';\n }, []);\n const handleKeyboardEvent = React.useCallback(() => {\n lastUserInteractionRef.current = 'keyboard';\n }, []);\n const returnFocus = React.useCallback(() => {\n const trapNode = trapRef.current;\n if (trapNode && !isFocusInside(trapNode)) return;\n if (typeof returnFocusTo === 'object' && returnFocusTo?.current) {\n const returnFocusNode = returnFocusTo?.current;\n setTimeout(() => setFocus(returnFocusNode, trapNode), 0);\n }\n if (returnFocusTo === 'auto' && autoTriggerRef.current) {\n const autoTrigger = autoTriggerRef.current;\n setTimeout(() => setFocus(autoTrigger, trapNode), 0);\n }\n }, [returnFocusTo]);\n React.useEffect(() => {\n if (typeof trapRef !== 'object' || trapRef === null) return;\n const node = trapRef.current;\n if (!node) return;\n focusLockAllTraps.add(node);\n return () => {\n if (!node) return;\n focusLockAllTraps.delete(node);\n };\n }, [disabled]);\n React.useEffect(() => {\n if (typeof trapRef !== 'object' || trapRef === null) return;\n if (disabled) return;\n if (!canUseDOM()) return;\n if (!trapRef.current) return;\n\n if (focusMaster) {\n focusMastersStack.push(trapRef.current);\n }\n\n return () => {\n if (!focusMaster) return;\n if (focusMastersStack[focusMastersStack.length - 1] === trapRef.current) {\n focusMastersStack.pop();\n } else {\n focusMastersStack.splice(focusMastersStack.indexOf(trapRef.current!), 1);\n }\n };\n }, [disabled, focusMaster]);\n React.useEffect(() => {\n if (disabled) return;\n if (!canUseDOM()) return;\n if (!trapRef.current) return;\n const focusableChildren = Array.from(trapRef.current.children).flatMap((node) =>\n getFocusableIn(node as HTMLElement),\n );\n if (focusableChildren.length === 0) return;\n\n document.body.addEventListener('focusout', handleFocusOut as any);\n document.body.addEventListener('mousedown', handleMouseEvent);\n document.body.addEventListener('touchstart', handleMouseEvent);\n document.body.addEventListener('keydown', handleKeyboardEvent);\n\n if (autoFocus)\n setFocus(\n trapRef.current,\n typeof returnFocusTo === 'object' ? returnFocusTo?.current : document.body,\n );\n\n return () => {\n document.body.removeEventListener('focusout', handleFocusOut as any);\n document.body.removeEventListener('mousedown', handleMouseEvent);\n document.body.removeEventListener('touchstart', handleMouseEvent);\n document.body.removeEventListener('keydown', handleKeyboardEvent);\n returnFocus();\n autoTriggerRef.current = null;\n };\n }, [disabled, autoFocus, returnFocusTo, returnFocus]);\n\n useUniqueIdHookMock(React);\n React.useEffect(() => {\n const id = getUniqueId('focus-lock-consumer');\n if (disabled) return;\n focusLockUsedInMountedComponents.add(id);\n return () => {\n focusLockUsedInMountedComponents.delete(id);\n };\n }, [disabled]);\n};\nconst establishHookAsGlobal = () => {\n (globalThis as any)[globalFocusLockHookKey] = {\n hook: useFocusLockHook,\n version: focusLockVersion,\n usedInComponents: focusLockUsedInMountedComponents,\n };\n};\nif (!(globalThis as any)[globalFocusLockHookKey]) {\n establishHookAsGlobal();\n} else if (typeof (globalThis as any)[globalFocusLockHookKey].version !== 'number') {\n establishHookAsGlobal();\n} else {\n const { version: theirVersion, usedInComponents } = (globalThis as any)[globalFocusLockHookKey];\n if (focusLockVersion > theirVersion && usedInComponents.size === 0) {\n establishHookAsGlobal();\n }\n}\n\nexport const useFocusLock = (\n trapRef: React.RefObject<HTMLElement>,\n autoFocus: boolean,\n returnFocusTo: React.RefObject<HTMLElement> | null | 'auto',\n disabled = false,\n focusMaster = false,\n onFocusOut?: (event: Event) => void,\n) => {\n const hook = (globalThis as any)[globalFocusLockHookKey]?.hook ?? useFocusLockHook;\n return hook(LocalReact, trapRef, autoFocus, returnFocusTo, disabled, focusMaster, onFocusOut);\n};\n\nexport const hasFocusableIn = (element: HTMLElement): boolean => {\n return (\n Array.from(element.children).flatMap((node) => getFocusableIn(node as HTMLElement)).length > 0\n );\n};\n"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"useFocusLock.js","names":["_canUseDOM","_interopRequireDefault","require","_react","_isFocusInside","_setFocus","_getFocusableIn","_focusBorders","focusBordersConsumers","Set","useFocusBorders","React","disabled","useUniqueIdHookMock","useEffect","id","getUniqueId","add","areFocusBordersPlacedCorrectly","removeFocusBorders","size","addFocusBorders","uniqueId","prefix","concat","Math","random","toString","slice","focusLockVersion","globalFocusLockHookKey","focusLockAllTraps","focusLockUsedInMountedComponents","focusMastersStack","noop","useState","undefined","useEnhancedEffect","canUseDOM","useLayoutEffect","useFocusLockHook","trapRef","autoFocus","returnFocusTo","arguments","length","focusMaster","onFocusOut","autoTriggerRef","useRef","lastUserInteractionRef","handleFocusOut","useCallback","event","focusCameFrom","target","focusMovedTo","relatedTarget","setTimeout","current","Promise","resolve","then","currentFocusMaster","trapNodes","_toConsumableArray2","isFocusInside","_typeof2","setFocus","handleMouseEvent","handleKeyboardEvent","returnFocus","trapNode","returnFocusNode","autoTrigger","node","focusableChildren","Array","from","children","flatMap","getFocusableIn","push","pop","splice","indexOf","document","body","addEventListener","removeEventListener","establishHookAsGlobal","globalThis","hook","version","usedInComponents","_globalFocusLockHookK","theirVersion","useFocusLock","_globalFocusLockHookK2","_globalFocusLockHookK3","LocalReact","exports","hasFocusableIn","element"],"sources":["../../src/use/useFocusLock.ts"],"sourcesContent":["import canUseDOM from '../canUseDOM';\nimport LocalReact from 'react';\n\nimport { isFocusInside } from '../focus-lock/isFocusInside';\nimport { setFocus } from '../focus-lock/setFocus';\nimport { getFocusableIn } from '../focus-lock/getFocusableIn';\nimport {\n addFocusBorders,\n removeFocusBorders,\n areFocusBordersPlacedCorrectly,\n} from '../focus-lock/focusBorders';\n\nexport { isFocusInside, setFocus };\n\nconst focusBordersConsumers = new Set();\n\nconst useFocusBorders = (React: ReactT, disabled?: boolean) => {\n useUniqueIdHookMock(React);\n React.useEffect(() => {\n const id = getUniqueId('focus-borders-consumer');\n if (!disabled) {\n focusBordersConsumers.add(id);\n }\n\n if (!areFocusBordersPlacedCorrectly()) removeFocusBorders();\n if (focusBordersConsumers.size > 0) addFocusBorders();\n\n return () => {\n focusBordersConsumers.delete(id);\n if (focusBordersConsumers.size === 0) removeFocusBorders();\n };\n }, [disabled]);\n};\n\ntype ReactT = typeof LocalReact;\n\nlet uniqueId = 0;\nconst getUniqueId = (prefix: string) =>\n `${prefix}-${Math.random().toString(36).slice(2)}-${uniqueId++}`;\n\n/**\n * # Focus lock hook merging\n * In some cases same page might contain different versions of components.\n * In such cases, we need to ensure that only one version of focus lock hook is used.\n * So, it's why we have `useFocusLockHook` function that is wrapped into `useFocusLock`.\n *\n * While evaluating this file code, we check if global focus lock hook is already defined.\n * If it's defined, we replace it ONLY if our version is higher and no components currently use it.\n * The last condition is very important because we are unable to replace React hook without reimplementing\n * React hooks lifecycle in some kind of wrapper.\n *\n * ## Versioning\n * Such versions merging requires us to keep hook api backward compatible.\n * When hook logic changes, the variable `focusLockVersion` should be incremented.\n *\n * Version update `1 -> 2`. Fixed call `safeMoveFocusInside` in `handleFocusIn` with correct second parameter (focusCameFrom instead of event.target)\n * Version update `2 -> 3`. Fixed React version isolation in nested hooks (`useFocusBorders`, `useUniqueId`).\n *\n * Initially (for a several versions) key was `__intergalactic_focus_lock_hook_`.\n * Making it respect react version required to change key. So key was changed to `__intergalactic_focus_lock_hook_react_v_respectful`.\n *\n * ## React hooks order\n * When updating from version 2 to version 3 `useUniqueId` hook was removed.\n * Due to replacing useFocusLock hook in runtime, the order of hooks must be preserved.\n * So, useUniqueIdHookMock helps to preserve hooks order when hook is being replaced from version 2 to version 3.\n *\n * If new update requires to remove some hooks – add mocks instead of them.\n * If new update requires to add some hooks and no workaround with current hooks list is possible – probably focus lock hook key should be changed.\n */\nconst focusLockVersion = 3;\nconst globalFocusLockHookKey = '__intergalactic_focus_lock_hook_react_v_respectful';\n\nconst focusLockAllTraps = new Set<HTMLElement>();\nconst focusLockUsedInMountedComponents = new Set<string>();\n/** Focus master is a special mode in which focus lock might work.\n * Normally, focus lock hook allows user focus to move freely between\n * all active focus traps. When component provides `focusMaster=true`\n * parameter, it says that it doesn't want to share focus with other traps.\n * It is very useful for a big components like modals or side-bars that\n * also have some visual backdrop.\n * The last element in focus masters stack is considered as a current focus master.\n */\nconst focusMastersStack: HTMLElement[] = [];\n\nconst noop = () => {};\nconst useUniqueIdHookMock = (React: ReactT) => {\n React.useState(undefined);\n const useEnhancedEffect = canUseDOM() ? React.useLayoutEffect : React.useEffect;\n useEnhancedEffect(noop, []);\n};\n\nconst useFocusLockHook = (\n React: ReactT,\n trapRef: React.RefObject<HTMLElement>,\n autoFocus: boolean,\n returnFocusTo: React.RefObject<HTMLElement> | null | 'auto',\n disabled = false,\n focusMaster = false,\n onFocusOut?: (event: Event) => void,\n) => {\n useFocusBorders(React, disabled);\n\n const autoTriggerRef = React.useRef<HTMLElement | null>(null);\n const lastUserInteractionRef = React.useRef<'mouse' | 'keyboard' | undefined>(undefined);\n\n const handleFocusOut = React.useCallback(\n (event: Event & { relatedTarget?: HTMLElement; target?: HTMLElement }) => {\n const focusCameFrom = event.target;\n const focusMovedTo = event.relatedTarget;\n\n setTimeout(() => {\n if (!focusCameFrom) return;\n if (autoTriggerRef.current) return;\n autoTriggerRef.current = focusCameFrom;\n }, 0);\n if (lastUserInteractionRef.current === 'mouse') return;\n Promise.resolve().then(() => {\n if (!trapRef.current) return;\n const currentFocusMaster = focusMastersStack[focusMastersStack.length - 1];\n if (currentFocusMaster && currentFocusMaster !== trapRef.current) return;\n const trapNodes = currentFocusMaster\n ? [trapRef.current]\n : [trapRef.current, ...focusLockAllTraps];\n if (isFocusInside(trapNodes, focusMovedTo)) return;\n if (\n typeof returnFocusTo === 'object' &&\n returnFocusTo?.current &&\n isFocusInside(returnFocusTo.current)\n )\n return;\n\n if (focusCameFrom) {\n setFocus(trapRef.current, focusCameFrom, focusMovedTo);\n }\n\n onFocusOut?.(event);\n });\n },\n [onFocusOut],\n );\n const handleMouseEvent = React.useCallback(() => {\n lastUserInteractionRef.current = 'mouse';\n }, []);\n const handleKeyboardEvent = React.useCallback(() => {\n lastUserInteractionRef.current = 'keyboard';\n }, []);\n const returnFocus = React.useCallback(() => {\n const trapNode = trapRef.current;\n if (trapNode && !isFocusInside(trapNode)) return;\n if (typeof returnFocusTo === 'object' && returnFocusTo?.current) {\n const returnFocusNode = returnFocusTo?.current;\n setTimeout(() => setFocus(returnFocusNode, trapNode), 0);\n }\n if (returnFocusTo === 'auto' && autoTriggerRef.current) {\n const autoTrigger = autoTriggerRef.current;\n setTimeout(() => setFocus(autoTrigger, trapNode), 0);\n }\n }, [returnFocusTo]);\n React.useEffect(() => {\n if (typeof trapRef !== 'object' || trapRef === null) return;\n const node = trapRef.current;\n if (!node) return;\n focusLockAllTraps.add(node);\n return () => {\n if (!node) return;\n focusLockAllTraps.delete(node);\n };\n }, [disabled]);\n React.useEffect(() => {\n if (typeof trapRef !== 'object' || trapRef === null) return;\n if (disabled) return;\n if (!canUseDOM()) return;\n if (!trapRef.current) return;\n const focusableChildren = Array.from(trapRef.current.children).flatMap((node) =>\n getFocusableIn(node as HTMLElement),\n );\n if (focusableChildren.length === 0) return;\n\n if (focusMaster) {\n focusMastersStack.push(trapRef.current);\n }\n\n return () => {\n if (!focusMaster) return;\n if (focusMastersStack[focusMastersStack.length - 1] === trapRef.current) {\n focusMastersStack.pop();\n } else {\n focusMastersStack.splice(focusMastersStack.indexOf(trapRef.current!), 1);\n }\n };\n }, [disabled, focusMaster]);\n React.useEffect(() => {\n if (disabled) return;\n if (!canUseDOM()) return;\n if (!trapRef.current) return;\n const focusableChildren = Array.from(trapRef.current.children).flatMap((node) =>\n getFocusableIn(node as HTMLElement),\n );\n if (focusableChildren.length === 0) return;\n\n document.body.addEventListener('focusout', handleFocusOut as any);\n document.body.addEventListener('mousedown', handleMouseEvent);\n document.body.addEventListener('touchstart', handleMouseEvent);\n document.body.addEventListener('keydown', handleKeyboardEvent);\n\n if (autoFocus)\n setFocus(\n trapRef.current,\n typeof returnFocusTo === 'object' ? returnFocusTo?.current : document.body,\n );\n\n return () => {\n document.body.removeEventListener('focusout', handleFocusOut as any);\n document.body.removeEventListener('mousedown', handleMouseEvent);\n document.body.removeEventListener('touchstart', handleMouseEvent);\n document.body.removeEventListener('keydown', handleKeyboardEvent);\n returnFocus();\n autoTriggerRef.current = null;\n };\n }, [disabled, autoFocus, returnFocusTo, returnFocus]);\n\n useUniqueIdHookMock(React);\n React.useEffect(() => {\n const id = getUniqueId('focus-lock-consumer');\n if (disabled) return;\n focusLockUsedInMountedComponents.add(id);\n return () => {\n focusLockUsedInMountedComponents.delete(id);\n };\n }, [disabled]);\n};\nconst establishHookAsGlobal = () => {\n (globalThis as any)[globalFocusLockHookKey] = {\n hook: useFocusLockHook,\n version: focusLockVersion,\n usedInComponents: focusLockUsedInMountedComponents,\n };\n};\nif (!(globalThis as any)[globalFocusLockHookKey]) {\n establishHookAsGlobal();\n} else if (typeof (globalThis as any)[globalFocusLockHookKey].version !== 'number') {\n establishHookAsGlobal();\n} else {\n const { version: theirVersion, usedInComponents } = (globalThis as any)[globalFocusLockHookKey];\n if (focusLockVersion > theirVersion && usedInComponents.size === 0) {\n establishHookAsGlobal();\n }\n}\n\nexport const useFocusLock = (\n trapRef: React.RefObject<HTMLElement>,\n autoFocus: boolean,\n returnFocusTo: React.RefObject<HTMLElement> | null | 'auto',\n disabled = false,\n focusMaster = false,\n onFocusOut?: (event: Event) => void,\n) => {\n const hook = (globalThis as any)[globalFocusLockHookKey]?.hook ?? useFocusLockHook;\n return hook(LocalReact, trapRef, autoFocus, returnFocusTo, disabled, focusMaster, onFocusOut);\n};\n\nexport const hasFocusableIn = (element: HTMLElement): boolean => {\n return (\n Array.from(element.children).flatMap((node) => getFocusableIn(node as HTMLElement)).length > 0\n );\n};\n"],"mappings":"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"}
|
@@ -98,6 +98,7 @@ var useFocusLockHook = function useFocusLockHook(React, trapRef, autoFocus, retu
|
|
98
98
|
if (currentFocusMaster && currentFocusMaster !== trapRef.current) return;
|
99
99
|
var trapNodes = currentFocusMaster ? [trapRef.current] : [trapRef.current].concat(_toConsumableArray(focusLockAllTraps));
|
100
100
|
if (isFocusInside(trapNodes, focusMovedTo)) return;
|
101
|
+
if (_typeof(returnFocusTo) === 'object' && returnFocusTo !== null && returnFocusTo !== void 0 && returnFocusTo.current && isFocusInside(returnFocusTo.current)) return;
|
101
102
|
if (focusCameFrom) {
|
102
103
|
setFocus(trapRef.current, focusCameFrom, focusMovedTo);
|
103
104
|
}
|
@@ -141,6 +142,10 @@ var useFocusLockHook = function useFocusLockHook(React, trapRef, autoFocus, retu
|
|
141
142
|
if (disabled) return;
|
142
143
|
if (!canUseDOM()) return;
|
143
144
|
if (!trapRef.current) return;
|
145
|
+
var focusableChildren = Array.from(trapRef.current.children).flatMap(function (node) {
|
146
|
+
return getFocusableIn(node);
|
147
|
+
});
|
148
|
+
if (focusableChildren.length === 0) return;
|
144
149
|
if (focusMaster) {
|
145
150
|
focusMastersStack.push(trapRef.current);
|
146
151
|
}
|