@itwin/itwinui-react 3.0.0-dev.1 → 3.0.0-dev.3
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 +25 -0
- package/cjs/core/Alert/Alert.d.ts +47 -28
- package/cjs/core/Alert/Alert.js +73 -21
- package/cjs/core/Avatar/Avatar.js +1 -1
- package/cjs/core/AvatarGroup/AvatarGroup.js +1 -1
- package/cjs/core/Breadcrumbs/Breadcrumbs.js +2 -3
- package/cjs/core/ButtonGroup/ButtonGroup.js +1 -4
- package/cjs/core/Buttons/DropdownButton/DropdownButton.js +3 -5
- package/cjs/core/Carousel/Carousel.d.ts +2 -2
- package/cjs/core/Carousel/Carousel.js +3 -5
- package/cjs/core/Carousel/CarouselDotsList.js +8 -10
- package/cjs/core/Carousel/CarouselNavigation.d.ts +2 -2
- package/cjs/core/Carousel/CarouselNavigation.js +3 -5
- package/cjs/core/Carousel/CarouselSlider.js +10 -15
- package/cjs/core/ColorPicker/ColorBuilder.js +7 -10
- package/cjs/core/ColorPicker/ColorInputPanel.js +12 -15
- package/cjs/core/ColorPicker/ColorPalette.js +4 -6
- package/cjs/core/ColorPicker/ColorPicker.js +3 -3
- package/cjs/core/ComboBox/ComboBox.js +25 -32
- package/cjs/core/ComboBox/ComboBoxDropdown.js +1 -2
- package/cjs/core/ComboBox/ComboBoxEndIcon.js +1 -1
- package/cjs/core/ComboBox/ComboBoxInput.js +21 -20
- package/cjs/core/ComboBox/ComboBoxMenu.js +3 -4
- package/cjs/core/ComboBox/ComboBoxMenuItem.js +2 -2
- package/cjs/core/ComboBox/helpers.js +4 -5
- package/cjs/core/DatePicker/DatePicker.js +32 -32
- package/cjs/core/Dialog/Dialog.js +11 -4
- package/cjs/core/Dialog/DialogBackdrop.js +1 -1
- package/cjs/core/Dialog/DialogContext.d.ts +11 -0
- package/cjs/core/Dialog/DialogMain.js +16 -22
- package/cjs/core/DropdownMenu/DropdownMenu.js +6 -8
- package/cjs/core/ExpandableBlock/ExpandableBlock.js +2 -2
- package/cjs/core/FileUpload/FileEmptyCard.js +1 -1
- package/cjs/core/FileUpload/FileUpload.d.ts +3 -4
- package/cjs/core/FileUpload/FileUpload.js +5 -8
- package/cjs/core/FileUpload/FileUploadCard.js +9 -10
- package/cjs/core/FileUpload/FileUploadTemplate.d.ts +1 -0
- package/cjs/core/FileUpload/FileUploadTemplate.js +1 -0
- package/cjs/core/InformationPanel/InformationPanel.js +1 -4
- package/cjs/core/LabeledInput/LabeledInput.js +1 -1
- package/cjs/core/LabeledTextarea/LabeledTextarea.js +1 -1
- package/cjs/core/Menu/Menu.js +3 -4
- package/cjs/core/Menu/MenuItem.js +8 -11
- package/cjs/core/Modal/Modal.d.ts +8 -9
- package/cjs/core/Modal/Modal.js +7 -17
- package/cjs/core/SearchBox/SearchBox.js +12 -12
- package/cjs/core/Select/Select.js +12 -17
- package/cjs/core/SideNavigation/SideNavigation.js +2 -2
- package/cjs/core/Slider/Slider.js +16 -19
- package/cjs/core/Slider/Thumb.js +1 -1
- package/cjs/core/StatusMessage/StatusMessage.js +1 -1
- package/cjs/core/Stepper/Stepper.js +1 -1
- package/cjs/core/Stepper/StepperStep.js +1 -1
- package/cjs/core/Table/Table.js +15 -15
- package/cjs/core/Table/TablePaginator.js +2 -3
- package/cjs/core/Table/TableRowMemoized.js +38 -45
- package/cjs/core/Table/actionHandlers/expandHandler.js +3 -3
- package/cjs/core/Table/actionHandlers/filterHandler.js +4 -5
- package/cjs/core/Table/actionHandlers/selectHandler.js +6 -6
- package/cjs/core/Table/cells/DefaultCell.js +1 -1
- package/cjs/core/Table/cells/EditableCell.js +6 -12
- package/cjs/core/Table/columns/actionColumn.js +3 -6
- package/cjs/core/Table/columns/expanderColumn.js +3 -3
- package/cjs/core/Table/columns/selectionColumn.js +4 -4
- package/cjs/core/Table/filters/DateRangeFilter/DatePickerInput.js +2 -4
- package/cjs/core/Table/filters/DateRangeFilter/DateRangeFilter.js +2 -3
- package/cjs/core/Table/filters/NumberRangeFilter/NumberRangeFilter.js +2 -3
- package/cjs/core/Table/filters/TextFilter/TextFilter.js +1 -2
- package/cjs/core/Table/hooks/useResizeColumns.js +16 -22
- package/cjs/core/Table/hooks/useScrollToRow.js +1 -2
- package/cjs/core/Table/hooks/useStickyColumns.js +3 -5
- package/cjs/core/Table/hooks/useSubRowFiltering.js +2 -4
- package/cjs/core/Tabs/Tabs.js +13 -16
- package/cjs/core/ThemeProvider/ThemeContext.d.ts +1 -1
- package/cjs/core/ThemeProvider/ThemeProvider.d.ts +2 -3
- package/cjs/core/ThemeProvider/ThemeProvider.js +14 -13
- package/cjs/core/Tile/Tile.js +2 -3
- package/cjs/core/TimePicker/TimePicker.js +13 -13
- package/cjs/core/Toast/Toast.d.ts +5 -10
- package/cjs/core/Toast/Toast.js +17 -16
- package/cjs/core/Toast/Toaster.d.ts +24 -26
- package/cjs/core/Toast/Toaster.js +91 -121
- package/cjs/core/Toast/index.d.ts +1 -4
- package/cjs/core/Toast/index.js +3 -6
- package/cjs/core/TransferList/TransferList.js +3 -4
- package/cjs/core/Tree/Tree.js +9 -13
- package/cjs/core/Tree/TreeNode.js +9 -10
- package/cjs/core/index.d.ts +1 -2
- package/cjs/core/index.js +2 -5
- package/cjs/core/utils/color/ColorValue.js +9 -15
- package/cjs/core/utils/components/AutoclearingHiddenLiveRegion.js +2 -3
- package/cjs/core/utils/components/FocusTrap.js +4 -4
- package/cjs/core/utils/components/MiddleTextTruncation.js +1 -2
- package/cjs/core/utils/components/Popover.d.ts +1 -1
- package/cjs/core/utils/components/Popover.js +5 -8
- package/cjs/core/utils/components/Resizer.js +7 -6
- package/cjs/core/utils/components/VirtualScroll.js +14 -21
- package/cjs/core/utils/functions/dom.d.ts +0 -8
- package/cjs/core/utils/functions/dom.js +3 -26
- package/cjs/core/utils/functions/polymorphic.d.ts +1 -1
- package/cjs/core/utils/functions/polymorphic.js +1 -1
- package/cjs/core/utils/functions/supports.js +1 -1
- package/cjs/core/utils/hooks/index.d.ts +0 -1
- package/cjs/core/utils/hooks/index.js +0 -1
- package/cjs/core/utils/hooks/useContainerWidth.js +1 -1
- package/cjs/core/utils/hooks/useDragAndDrop.js +8 -10
- package/cjs/core/utils/hooks/useEventListener.js +1 -1
- package/cjs/core/utils/hooks/useGlobals.d.ts +9 -2
- package/cjs/core/utils/hooks/useGlobals.js +6 -4
- package/cjs/core/utils/hooks/useId.js +1 -2
- package/cjs/core/utils/hooks/useIntersection.js +2 -3
- package/cjs/core/utils/hooks/useMediaQuery.js +6 -8
- package/cjs/core/utils/hooks/useOverflow.js +1 -2
- package/cjs/core/utils/hooks/useResizeObserver.js +3 -4
- package/cjs/styles.js +1 -4
- package/esm/core/Alert/Alert.d.ts +47 -28
- package/esm/core/Alert/Alert.js +74 -22
- package/esm/core/Avatar/Avatar.js +1 -1
- package/esm/core/AvatarGroup/AvatarGroup.js +1 -1
- package/esm/core/Breadcrumbs/Breadcrumbs.js +2 -3
- package/esm/core/ButtonGroup/ButtonGroup.js +1 -4
- package/esm/core/Buttons/DropdownButton/DropdownButton.js +3 -5
- package/esm/core/Carousel/Carousel.d.ts +2 -2
- package/esm/core/Carousel/Carousel.js +3 -5
- package/esm/core/Carousel/CarouselDotsList.js +8 -10
- package/esm/core/Carousel/CarouselNavigation.d.ts +2 -2
- package/esm/core/Carousel/CarouselNavigation.js +3 -5
- package/esm/core/Carousel/CarouselSlider.js +10 -15
- package/esm/core/ColorPicker/ColorBuilder.js +7 -10
- package/esm/core/ColorPicker/ColorInputPanel.js +12 -15
- package/esm/core/ColorPicker/ColorPalette.js +4 -6
- package/esm/core/ColorPicker/ColorPicker.js +3 -3
- package/esm/core/ComboBox/ComboBox.js +25 -32
- package/esm/core/ComboBox/ComboBoxDropdown.js +1 -2
- package/esm/core/ComboBox/ComboBoxEndIcon.js +1 -1
- package/esm/core/ComboBox/ComboBoxInput.js +21 -20
- package/esm/core/ComboBox/ComboBoxMenu.js +3 -4
- package/esm/core/ComboBox/ComboBoxMenuItem.js +2 -2
- package/esm/core/ComboBox/helpers.js +4 -5
- package/esm/core/DatePicker/DatePicker.js +32 -32
- package/esm/core/Dialog/Dialog.js +12 -5
- package/esm/core/Dialog/DialogBackdrop.js +1 -1
- package/esm/core/Dialog/DialogContext.d.ts +11 -0
- package/esm/core/Dialog/DialogMain.js +16 -22
- package/esm/core/DropdownMenu/DropdownMenu.js +6 -8
- package/esm/core/ExpandableBlock/ExpandableBlock.js +2 -2
- package/esm/core/FileUpload/FileEmptyCard.js +1 -1
- package/esm/core/FileUpload/FileUpload.d.ts +3 -4
- package/esm/core/FileUpload/FileUpload.js +5 -8
- package/esm/core/FileUpload/FileUploadCard.js +9 -10
- package/esm/core/FileUpload/FileUploadTemplate.d.ts +1 -0
- package/esm/core/FileUpload/FileUploadTemplate.js +1 -0
- package/esm/core/InformationPanel/InformationPanel.js +1 -4
- package/esm/core/LabeledInput/LabeledInput.js +1 -1
- package/esm/core/LabeledTextarea/LabeledTextarea.js +1 -1
- package/esm/core/Menu/Menu.js +3 -4
- package/esm/core/Menu/MenuItem.js +8 -11
- package/esm/core/Modal/Modal.d.ts +8 -9
- package/esm/core/Modal/Modal.js +3 -10
- package/esm/core/SearchBox/SearchBox.js +12 -12
- package/esm/core/Select/Select.js +12 -17
- package/esm/core/SideNavigation/SideNavigation.js +2 -2
- package/esm/core/Slider/Slider.js +16 -19
- package/esm/core/Slider/Thumb.js +1 -1
- package/esm/core/StatusMessage/StatusMessage.js +1 -1
- package/esm/core/Stepper/Stepper.js +1 -1
- package/esm/core/Stepper/StepperStep.js +1 -1
- package/esm/core/Table/Table.js +15 -15
- package/esm/core/Table/TablePaginator.js +2 -3
- package/esm/core/Table/TableRowMemoized.js +38 -45
- package/esm/core/Table/actionHandlers/expandHandler.js +3 -3
- package/esm/core/Table/actionHandlers/filterHandler.js +4 -5
- package/esm/core/Table/actionHandlers/selectHandler.js +6 -6
- package/esm/core/Table/cells/DefaultCell.js +1 -1
- package/esm/core/Table/cells/EditableCell.js +6 -12
- package/esm/core/Table/columns/actionColumn.js +3 -6
- package/esm/core/Table/columns/expanderColumn.js +3 -3
- package/esm/core/Table/columns/selectionColumn.js +4 -4
- package/esm/core/Table/filters/DateRangeFilter/DatePickerInput.js +2 -4
- package/esm/core/Table/filters/DateRangeFilter/DateRangeFilter.js +2 -3
- package/esm/core/Table/filters/NumberRangeFilter/NumberRangeFilter.js +2 -3
- package/esm/core/Table/filters/TextFilter/TextFilter.js +1 -2
- package/esm/core/Table/hooks/useResizeColumns.js +16 -22
- package/esm/core/Table/hooks/useScrollToRow.js +1 -2
- package/esm/core/Table/hooks/useStickyColumns.js +3 -5
- package/esm/core/Table/hooks/useSubRowFiltering.js +2 -4
- package/esm/core/Tabs/Tabs.js +13 -16
- package/esm/core/ThemeProvider/ThemeContext.d.ts +1 -1
- package/esm/core/ThemeProvider/ThemeProvider.d.ts +2 -3
- package/esm/core/ThemeProvider/ThemeProvider.js +15 -14
- package/esm/core/Tile/Tile.js +2 -3
- package/esm/core/TimePicker/TimePicker.js +13 -13
- package/esm/core/Toast/Toast.d.ts +5 -10
- package/esm/core/Toast/Toast.js +18 -17
- package/esm/core/Toast/Toaster.d.ts +24 -26
- package/esm/core/Toast/Toaster.js +85 -121
- package/esm/core/Toast/index.d.ts +1 -4
- package/esm/core/Toast/index.js +1 -3
- package/esm/core/TransferList/TransferList.js +3 -4
- package/esm/core/Tree/Tree.js +9 -13
- package/esm/core/Tree/TreeNode.js +9 -10
- package/esm/core/index.d.ts +1 -2
- package/esm/core/index.js +1 -1
- package/esm/core/utils/color/ColorValue.js +9 -15
- package/esm/core/utils/components/AutoclearingHiddenLiveRegion.js +2 -3
- package/esm/core/utils/components/FocusTrap.js +4 -4
- package/esm/core/utils/components/MiddleTextTruncation.js +1 -2
- package/esm/core/utils/components/Popover.d.ts +1 -1
- package/esm/core/utils/components/Popover.js +5 -8
- package/esm/core/utils/components/Resizer.js +7 -6
- package/esm/core/utils/components/VirtualScroll.js +14 -21
- package/esm/core/utils/functions/dom.d.ts +0 -8
- package/esm/core/utils/functions/dom.js +2 -21
- package/esm/core/utils/functions/polymorphic.d.ts +1 -1
- package/esm/core/utils/functions/polymorphic.js +1 -1
- package/esm/core/utils/functions/supports.js +1 -1
- package/esm/core/utils/hooks/index.d.ts +0 -1
- package/esm/core/utils/hooks/index.js +0 -1
- package/esm/core/utils/hooks/useContainerWidth.js +1 -1
- package/esm/core/utils/hooks/useDragAndDrop.js +8 -10
- package/esm/core/utils/hooks/useEventListener.js +1 -1
- package/esm/core/utils/hooks/useGlobals.d.ts +9 -2
- package/esm/core/utils/hooks/useGlobals.js +6 -4
- package/esm/core/utils/hooks/useId.js +1 -2
- package/esm/core/utils/hooks/useIntersection.js +2 -3
- package/esm/core/utils/hooks/useMediaQuery.js +6 -8
- package/esm/core/utils/hooks/useOverflow.js +1 -2
- package/esm/core/utils/hooks/useResizeObserver.js +3 -4
- package/esm/styles.js +1 -4
- package/package.json +2 -2
- package/styles.css +19 -20
- package/cjs/core/Toast/ToastWrapper.d.ts +0 -10
- package/cjs/core/Toast/ToastWrapper.js +0 -49
- package/cjs/core/utils/hooks/useIsThemeAlreadySet.d.ts +0 -7
- package/cjs/core/utils/hooks/useIsThemeAlreadySet.js +0 -54
- package/esm/core/Toast/ToastWrapper.d.ts +0 -10
- package/esm/core/Toast/ToastWrapper.js +0 -20
- package/esm/core/utils/hooks/useIsThemeAlreadySet.d.ts +0 -7
- package/esm/core/utils/hooks/useIsThemeAlreadySet.js +0 -27
package/styles.css
CHANGED
|
@@ -353,7 +353,7 @@
|
|
|
353
353
|
:where(._iui3-root,._iui3-root *)::-webkit-scrollbar-thumb:hover{background-color:hsl(var(--iui-color-foreground-hsl)/var(--iui-opacity-3))}
|
|
354
354
|
:where(._iui3-root,._iui3-root *)::-webkit-scrollbar-track,:where(._iui3-root,._iui3-root *)::-webkit-scrollbar-corner{background-color:#0000}
|
|
355
355
|
:where(._iui3-root,._iui3-root *),:where(._iui3-root,._iui3-root *):before,:where(._iui3-root,._iui3-root *):after{box-sizing:border-box}
|
|
356
|
-
._iui3-alert{vertical-align:baseline;--_iui-alert-border-color:var(--iui-color-border);border-radius:var(--iui-border-radius-1);color:var(--iui-color-text);background-color:var(--iui-color-background);border:none;border:1px solid var(--_iui-alert-border-color);box-shadow:inset var(--iui-size-2xs)0 0 var(--_iui-alert-border-color);align-items:center;margin:0;padding:
|
|
356
|
+
._iui3-alert{vertical-align:baseline;--_iui-alert-border-color:var(--iui-color-border);border-radius:var(--iui-border-radius-1);color:var(--iui-color-text);background-color:var(--iui-color-background);border:none;border:1px solid var(--_iui-alert-border-color);box-shadow:inset var(--iui-size-2xs)0 0 var(--_iui-alert-border-color);padding:0;align-items:center;margin:0;padding-inline-start:var(--iui-size-m);padding-inline-end:var(--iui-size-xs);display:flex}
|
|
357
357
|
._iui3-alert:where([data-iui-status=informational]){--_iui-alert-border-color:var(--iui-color-border-informational);--_iui-alert-icon-color:var(--iui-color-icon-informational)}
|
|
358
358
|
._iui3-alert:where([data-iui-status=informational])::selection,._iui3-alert:where([data-iui-status=informational]) ::selection{background-color:hsl(var(--iui-color-informational-hsl)/var(--iui-opacity-5))}
|
|
359
359
|
._iui3-alert:where([data-iui-status=informational]) ._iui3-alert-link{color:var(--iui-color-text-informational);-webkit-tap-highlight-color:hsl(var(--iui-color-informational-hsl)/var(--iui-opacity-6))}
|
|
@@ -361,7 +361,7 @@
|
|
|
361
361
|
@supports not selector(*:focus-visible){._iui3-alert:where([data-iui-status=informational]) ._iui3-alert-link:focus{outline:1px solid var(--iui-color-text-informational);outline-offset:1px}}
|
|
362
362
|
._iui3-alert:where([data-iui-status=informational]) ._iui3-alert-link::selection,._iui3-alert:where([data-iui-status=informational]) ._iui3-alert-link ::selection{background-color:hsl(var(--iui-color-informational-hsl)/var(--iui-opacity-5))}
|
|
363
363
|
._iui3-alert:where([data-iui-status=informational]) ._iui3-alert-link:hover{color:var(--iui-color-text-informational-hover)}
|
|
364
|
-
._iui3-alert:where([data-iui-status=informational]) ._iui3-
|
|
364
|
+
._iui3-alert:where([data-iui-status=informational]) ._iui3-button:focus{outline-color:var(--iui-color-text-informational)}
|
|
365
365
|
._iui3-alert:where([data-iui-status=positive]){--_iui-alert-border-color:var(--iui-color-border-positive);--_iui-alert-icon-color:var(--iui-color-icon-positive)}
|
|
366
366
|
._iui3-alert:where([data-iui-status=positive])::selection,._iui3-alert:where([data-iui-status=positive]) ::selection{background-color:hsl(var(--iui-color-positive-hsl)/var(--iui-opacity-5))}
|
|
367
367
|
._iui3-alert:where([data-iui-status=positive]) ._iui3-alert-link{color:var(--iui-color-text-positive);-webkit-tap-highlight-color:hsl(var(--iui-color-positive-hsl)/var(--iui-opacity-6))}
|
|
@@ -369,7 +369,7 @@
|
|
|
369
369
|
@supports not selector(*:focus-visible){._iui3-alert:where([data-iui-status=positive]) ._iui3-alert-link:focus{outline:1px solid var(--iui-color-text-positive);outline-offset:1px}}
|
|
370
370
|
._iui3-alert:where([data-iui-status=positive]) ._iui3-alert-link::selection,._iui3-alert:where([data-iui-status=positive]) ._iui3-alert-link ::selection{background-color:hsl(var(--iui-color-positive-hsl)/var(--iui-opacity-5))}
|
|
371
371
|
._iui3-alert:where([data-iui-status=positive]) ._iui3-alert-link:hover{color:var(--iui-color-text-positive-hover)}
|
|
372
|
-
._iui3-alert:where([data-iui-status=positive]) ._iui3-
|
|
372
|
+
._iui3-alert:where([data-iui-status=positive]) ._iui3-button:focus{outline-color:var(--iui-color-text-positive)}
|
|
373
373
|
._iui3-alert:where([data-iui-status=warning]){--_iui-alert-border-color:var(--iui-color-border-warning);--_iui-alert-icon-color:var(--iui-color-icon-warning)}
|
|
374
374
|
._iui3-alert:where([data-iui-status=warning])::selection,._iui3-alert:where([data-iui-status=warning]) ::selection{background-color:hsl(var(--iui-color-warning-hsl)/var(--iui-opacity-5))}
|
|
375
375
|
._iui3-alert:where([data-iui-status=warning]) ._iui3-alert-link{color:var(--iui-color-text-warning);-webkit-tap-highlight-color:hsl(var(--iui-color-warning-hsl)/var(--iui-opacity-6))}
|
|
@@ -377,7 +377,7 @@
|
|
|
377
377
|
@supports not selector(*:focus-visible){._iui3-alert:where([data-iui-status=warning]) ._iui3-alert-link:focus{outline:1px solid var(--iui-color-text-warning);outline-offset:1px}}
|
|
378
378
|
._iui3-alert:where([data-iui-status=warning]) ._iui3-alert-link::selection,._iui3-alert:where([data-iui-status=warning]) ._iui3-alert-link ::selection{background-color:hsl(var(--iui-color-warning-hsl)/var(--iui-opacity-5))}
|
|
379
379
|
._iui3-alert:where([data-iui-status=warning]) ._iui3-alert-link:hover{color:var(--iui-color-text-warning-hover)}
|
|
380
|
-
._iui3-alert:where([data-iui-status=warning]) ._iui3-
|
|
380
|
+
._iui3-alert:where([data-iui-status=warning]) ._iui3-button:focus{outline-color:var(--iui-color-text-warning)}
|
|
381
381
|
._iui3-alert:where([data-iui-status=negative]){--_iui-alert-border-color:var(--iui-color-border-negative);--_iui-alert-icon-color:var(--iui-color-icon-negative)}
|
|
382
382
|
._iui3-alert:where([data-iui-status=negative])::selection,._iui3-alert:where([data-iui-status=negative]) ::selection{background-color:hsl(var(--iui-color-negative-hsl)/var(--iui-opacity-5))}
|
|
383
383
|
._iui3-alert:where([data-iui-status=negative]) ._iui3-alert-link{color:var(--iui-color-text-negative);-webkit-tap-highlight-color:hsl(var(--iui-color-negative-hsl)/var(--iui-opacity-6))}
|
|
@@ -385,21 +385,17 @@
|
|
|
385
385
|
@supports not selector(*:focus-visible){._iui3-alert:where([data-iui-status=negative]) ._iui3-alert-link:focus{outline:1px solid var(--iui-color-text-negative);outline-offset:1px}}
|
|
386
386
|
._iui3-alert:where([data-iui-status=negative]) ._iui3-alert-link::selection,._iui3-alert:where([data-iui-status=negative]) ._iui3-alert-link ::selection{background-color:hsl(var(--iui-color-negative-hsl)/var(--iui-opacity-5))}
|
|
387
387
|
._iui3-alert:where([data-iui-status=negative]) ._iui3-alert-link:hover{color:var(--iui-color-text-negative-hover)}
|
|
388
|
-
._iui3-alert:where([data-iui-status=negative]) ._iui3-
|
|
388
|
+
._iui3-alert:where([data-iui-status=negative]) ._iui3-button:focus{outline-color:var(--iui-color-text-negative)}
|
|
389
389
|
._iui3-alert:where([data-iui-variant=sticky]){border-radius:0;position:sticky;top:0;left:0}
|
|
390
|
-
._iui3-alert-
|
|
391
|
-
|
|
392
|
-
._iui3-alert-
|
|
393
|
-
._iui3-alert-link{
|
|
394
|
-
._iui3-alert-link:
|
|
395
|
-
._iui3-alert-
|
|
396
|
-
._iui3-alert-
|
|
397
|
-
|
|
398
|
-
._iui3-alert-
|
|
399
|
-
._iui3-alert-button:where(:focus){outline-offset:-1px;outline-width:1px}
|
|
400
|
-
._iui3-alert-button:where([disabled],:disabled,[aria-disabled=true]){--_iui-button-text-color:var(--iui-color-text-disabled);--_iui-button-background-color:transparent;--_iui-button-border-color:transparent;--_iui-button-icon-fill:var(--iui-color-icon-disabled)}
|
|
401
|
-
._iui3-alert-button-icon{display:inline-flex}
|
|
402
|
-
._iui3-alert-button-icon svg{width:var(--iui-size-m);height:var(--iui-size-m);transition:fill var(--iui-duration-1)ease-out;fill:var(--_iui-button-icon-fill,currentColor);flex-shrink:0;display:flex}
|
|
390
|
+
._iui3-alert-message{margin:var(--iui-size-s)var(--iui-size-m);word-break:normal;overflow-wrap:anywhere;flex:999}
|
|
391
|
+
._iui3-alert-link{color:var(--iui-color-text-accent);-webkit-tap-highlight-color:hsl(var(--iui-color-accent-hsl)/var(--iui-opacity-6));border-radius:var(--iui-border-radius-1);cursor:pointer;border-radius:var(--iui-border-radius-1);cursor:pointer;margin-left:var(--iui-size-xs);-webkit-user-select:none;user-select:none;white-space:nowrap;text-decoration:underline}
|
|
392
|
+
._iui3-alert-link:where(button){font:inherit;background:0 0;border:none;padding:0}
|
|
393
|
+
._iui3-alert-link:focus-visible{outline:1px solid var(--iui-color-text-accent);outline-offset:1px}
|
|
394
|
+
@supports not selector(*:focus-visible){._iui3-alert-link:focus{outline:1px solid var(--iui-color-text-accent);outline-offset:1px}}
|
|
395
|
+
._iui3-alert-link:hover{color:var(--iui-color-text-accent-hover);text-decoration:underline}
|
|
396
|
+
@media (prefers-contrast:more){._iui3-alert-link{text-decoration:underline}._iui3-alert-link:hover{text-decoration:none}}
|
|
397
|
+
:is([data-iui-contrast=high] ._iui3-alert-link){text-decoration:underline}
|
|
398
|
+
:is([data-iui-contrast=high] ._iui3-alert-link):hover,._iui3-alert-link:hover{text-decoration:none}
|
|
403
399
|
._iui3-anchor{color:var(--iui-color-text-accent);-webkit-tap-highlight-color:hsl(var(--iui-color-accent-hsl)/var(--iui-opacity-6));border-radius:var(--iui-border-radius-1);cursor:pointer;text-decoration:none}
|
|
404
400
|
._iui3-anchor:where(button){font:inherit;background:0 0;border:none;padding:0}
|
|
405
401
|
._iui3-anchor:focus-visible{outline:1px solid var(--iui-color-text-accent);outline-offset:1px}
|
|
@@ -601,6 +597,7 @@
|
|
|
601
597
|
._iui3-carousel-navigation-right{justify-content:flex-end}
|
|
602
598
|
._iui3-checkbox-wrapper{vertical-align:baseline;font-size:var(--iui-font-size-1);width:-moz-fit-content;width:fit-content;-webkit-user-select:none;user-select:none;cursor:pointer;color:var(--iui-color-text);align-items:center;gap:var(--iui-size-xs);border:none;margin:0;padding:0;display:flex;position:relative}
|
|
603
599
|
._iui3-checkbox-wrapper._iui3-loading{cursor:progress;color:var(--iui-color-text-disabled);font-style:italic}
|
|
600
|
+
._iui3-checkbox-wrapper>._iui3-checkbox-label,._iui3-checkbox-wrapper>._iui3-radio-label{line-height:var(--iui-size-l)}
|
|
604
601
|
._iui3-checkbox-wrapper>._iui3-checkbox-label svg,._iui3-checkbox-wrapper>._iui3-radio-label svg{width:var(--iui-size-m);height:var(--iui-size-m);vertical-align:middle;fill:var(--iui-color-icon);flex-shrink:0;display:flex}
|
|
605
602
|
._iui3-checkbox-wrapper._iui3-disabled{cursor:not-allowed;color:var(--iui-color-text-disabled)}
|
|
606
603
|
._iui3-checkbox-wrapper._iui3-disabled svg{fill:var(--iui-color-icon-disabled)}
|
|
@@ -935,7 +932,7 @@
|
|
|
935
932
|
._iui3-information-body-content._iui3-inline{row-gap:var(--iui-size-s);grid-template-columns:auto 1fr;align-items:center}
|
|
936
933
|
._iui3-information-body-content._iui3-inline ._iui3-input-label{margin:0 var(--iui-size-m)0 0;text-align:end;justify-self:end}
|
|
937
934
|
._iui3-information-body-content._iui3-inline ._iui3-input-label._iui3-required{margin-right:calc(var(--iui-size-2xs)*1.5 - 1px)}
|
|
938
|
-
._iui3-input{--_iui-input-background-color:var(--iui-color-background);--_iui-input-border-color:var(--iui-color-border-foreground);--_iui-input-text-color:var(--iui-color-text);vertical-align:baseline;width:100%;font-family:inherit;font-size:var(--iui-font-size-1);font-weight:var(--iui-font-weight-normal);border-radius:var(--iui-border-radius-1);-webkit-appearance:none;appearance:none;min-height:var(--_iui-input-min-height);padding:0;padding-block:var(--_iui-input-padding-block);padding-inline:var(--iui-size-s);color:var(--_iui-input-text-color);background-color:var(--_iui-input-background-color);border:none;border:1px solid var(--_iui-input-border-color);transition:border-color var(--iui-duration-1)ease-out;--_iui-input-padding-block:var(--iui-size-2xs);--_iui-input-min-height:var(--iui-component-height);margin:0}
|
|
935
|
+
._iui3-input{--_iui-input-background-color:var(--iui-color-background);--_iui-input-border-color:var(--iui-color-border-foreground);--_iui-input-text-color:var(--iui-color-text);vertical-align:baseline;width:100%;font-family:inherit;font-size:var(--iui-font-size-1);font-weight:var(--iui-font-weight-normal);line-height:var(--iui-size-l);border-radius:var(--iui-border-radius-1);-webkit-appearance:none;appearance:none;min-height:var(--_iui-input-min-height);padding:0;padding-block:var(--_iui-input-padding-block);padding-inline:var(--iui-size-s);color:var(--_iui-input-text-color);background-color:var(--_iui-input-background-color);border:none;border:1px solid var(--_iui-input-border-color);transition:border-color var(--iui-duration-1)ease-out;--_iui-input-padding-block:var(--iui-size-2xs);--_iui-input-min-height:var(--iui-component-height);margin:0}
|
|
939
936
|
._iui3-input:focus-visible{outline:2px solid var(--iui-color-border-accent);outline-offset:-2px}
|
|
940
937
|
@supports not selector(*:focus-visible){._iui3-input:focus{outline:2px solid var(--iui-color-border-accent);outline-offset:-2px}}
|
|
941
938
|
._iui3-input::placeholder{--_iui-input-text-color:var(--iui-color-text-disabled);-webkit-user-select:none;user-select:none;color:var(--_iui-input-text-color)}
|
|
@@ -1166,6 +1163,7 @@
|
|
|
1166
1163
|
._iui3-progress-indicator-overlay ._iui3-overlay-exiting{animation:_iui3-closeAnimation var(--iui-duration-1)linear}
|
|
1167
1164
|
._iui3-radio-wrapper{vertical-align:baseline;font-size:var(--iui-font-size-1);width:-moz-fit-content;width:fit-content;-webkit-user-select:none;user-select:none;cursor:pointer;color:var(--iui-color-text);align-items:center;gap:var(--iui-size-xs);border:none;margin:0;padding:0;display:flex;position:relative}
|
|
1168
1165
|
._iui3-radio-wrapper._iui3-loading{cursor:progress;color:var(--iui-color-text-disabled);font-style:italic}
|
|
1166
|
+
._iui3-radio-wrapper>._iui3-checkbox-label,._iui3-radio-wrapper>._iui3-radio-label{line-height:var(--iui-size-l)}
|
|
1169
1167
|
._iui3-radio-wrapper>._iui3-checkbox-label svg,._iui3-radio-wrapper>._iui3-radio-label svg{width:var(--iui-size-m);height:var(--iui-size-m);vertical-align:middle;fill:var(--iui-color-icon);flex-shrink:0;display:flex}
|
|
1170
1168
|
._iui3-radio-wrapper._iui3-disabled{cursor:not-allowed;color:var(--iui-color-text-disabled)}
|
|
1171
1169
|
._iui3-radio-wrapper._iui3-disabled svg{fill:var(--iui-color-icon-disabled)}
|
|
@@ -1229,7 +1227,7 @@
|
|
|
1229
1227
|
._iui3-expandable-searchbox:where([data-iui-expanded=true]){width:100%;border-color:var(--_iui-input-border-color)}
|
|
1230
1228
|
._iui3-search-icon{margin:0 var(--iui-size-s)}
|
|
1231
1229
|
._iui3-search-icon:is(:first-child){margin:0 var(--_iui-flex-input-icon-margin,10px)}
|
|
1232
|
-
._iui3-select-button{width:100%;border-radius:var(--iui-border-radius-1);min-height:var(--_iui-select-min-height);padding-block:var(--_iui-select-padding-block);padding-inline:var(--iui-size-s);gap:var(--iui-size-xs);transition:border-color var(--iui-duration-1)ease-out;-webkit-user-select:none;user-select:none;color:var(--iui-color-text);background-color:var(--iui-color-background);border:1px solid var(--iui-color-border-foreground);--_iui-select-padding-block:var(--iui-size-2xs);--_iui-select-min-height:var(--iui-component-height);align-items:center;display:flex;position:relative;overflow:hidden}
|
|
1230
|
+
._iui3-select-button{width:100%;border-radius:var(--iui-border-radius-1);min-height:var(--_iui-select-min-height);padding-block:var(--_iui-select-padding-block);padding-inline:var(--iui-size-s);gap:var(--iui-size-xs);transition:border-color var(--iui-duration-1)ease-out;-webkit-user-select:none;user-select:none;color:var(--iui-color-text);background-color:var(--iui-color-background);border:1px solid var(--iui-color-border-foreground);line-height:var(--iui-size-l);--_iui-select-padding-block:var(--iui-size-2xs);--_iui-select-min-height:var(--iui-component-height);align-items:center;display:flex;position:relative;overflow:hidden}
|
|
1233
1231
|
._iui3-select-button:focus-visible{outline:2px solid var(--iui-color-border-accent);outline-offset:-2px}
|
|
1234
1232
|
@supports not selector(*:focus-visible){._iui3-select-button:focus{outline:2px solid var(--iui-color-border-accent);outline-offset:-2px}}
|
|
1235
1233
|
._iui3-select-button._iui3-disabled{background-color:var(--iui-color-background-disabled);border-color:var(--iui-color-border-disabled);--_iui-input-with-icon-hover-border-color:var(--iui-color-border-disabled);cursor:not-allowed}
|
|
@@ -1771,6 +1769,7 @@ a._iui3-tag-basic:focus-visible{outline:1px solid var(--iui-color-border-accent)
|
|
|
1771
1769
|
._iui3-toast>._iui3-status-area>._iui3-icon{width:var(--iui-size-m);height:var(--iui-size-m);fill:var(--iui-color-icon-muted);flex-shrink:0;display:flex}
|
|
1772
1770
|
._iui3-toast>._iui3-message{font-size:var(--iui-font-size-1);margin-top:calc(var(--iui-size-s)*.5);margin-bottom:calc(var(--iui-size-s)*.5);margin-right:var(--iui-size-l);margin-left:var(--iui-size-m);font-weight:var(--iui-font-weight-normal);color:var(--iui-color-text);word-break:normal;overflow-wrap:anywhere;flex-grow:1;font-style:normal}
|
|
1773
1771
|
._iui3-toast-anchor{border-radius:var(--iui-border-radius-1);cursor:pointer;font-size:var(--iui-font-size-0);margin-right:var(--iui-size-m);-webkit-user-select:none;user-select:none;white-space:nowrap;text-decoration:underline}
|
|
1772
|
+
._iui3-toast-anchor:where(button){background:0 0;border:none;padding:0;font-family:inherit}
|
|
1774
1773
|
._iui3-toast-anchor:hover{text-decoration:none}
|
|
1775
1774
|
._iui3-toast>._iui3-button{margin-right:var(--iui-size-xs)}
|
|
1776
1775
|
@media screen and (max-width:400px){._iui3-toast{width:calc(100vw - 36px)}}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import type { ToastProps } from './Toast.js';
|
|
3
|
-
import type { ToasterSettings } from './Toaster.js';
|
|
4
|
-
declare type ToastPlacement = NonNullable<ToasterSettings['placement']>;
|
|
5
|
-
export declare type ToastWrapperHandle = {
|
|
6
|
-
setToasts: (toasts: ToastProps[]) => void;
|
|
7
|
-
setPlacement: (placement: ToastPlacement) => void;
|
|
8
|
-
};
|
|
9
|
-
export declare const ToastWrapper: React.ForwardRefExoticComponent<React.RefAttributes<ToastWrapperHandle>>;
|
|
10
|
-
export {};
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
-
};
|
|
28
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.ToastWrapper = void 0;
|
|
30
|
-
/*---------------------------------------------------------------------------------------------
|
|
31
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
32
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
33
|
-
*--------------------------------------------------------------------------------------------*/
|
|
34
|
-
const React = __importStar(require("react"));
|
|
35
|
-
const classnames_1 = __importDefault(require("classnames"));
|
|
36
|
-
const Toast_js_1 = __importDefault(require("./Toast.js"));
|
|
37
|
-
const index_js_1 = require("../utils/index.js");
|
|
38
|
-
exports.ToastWrapper = React.forwardRef((_, ref) => {
|
|
39
|
-
const [toasts, setToasts] = React.useState([]);
|
|
40
|
-
const [placement, setPlacement] = React.useState('top');
|
|
41
|
-
const placementPosition = placement.startsWith('top') ? 'top' : 'bottom';
|
|
42
|
-
React.useImperativeHandle(ref, () => ({
|
|
43
|
-
setToasts,
|
|
44
|
-
setPlacement,
|
|
45
|
-
}), []);
|
|
46
|
-
return (React.createElement(index_js_1.Box, { className: (0, classnames_1.default)(`iui-toast-wrapper`, `iui-placement-${placement}`) }, toasts.map((toastProps) => {
|
|
47
|
-
return (React.createElement(Toast_js_1.default, { key: toastProps.id, placementPosition: placementPosition, ...toastProps }));
|
|
48
|
-
})));
|
|
49
|
-
});
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
/**
|
|
3
|
-
* Hook that returns a boolean ref which is true if either:
|
|
4
|
-
* - There is a parent `ThemeProvider` in the tree, or
|
|
5
|
-
* - The <body> element has data-iui-theme attribute
|
|
6
|
-
*/
|
|
7
|
-
export declare const useIsThemeAlreadySet: (ownerDocument?: Document | undefined) => React.MutableRefObject<boolean>;
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.useIsThemeAlreadySet = void 0;
|
|
27
|
-
/*---------------------------------------------------------------------------------------------
|
|
28
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
29
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
30
|
-
*--------------------------------------------------------------------------------------------*/
|
|
31
|
-
const React = __importStar(require("react"));
|
|
32
|
-
const ThemeContext_js_1 = require("../../ThemeProvider/ThemeContext.js");
|
|
33
|
-
const useIsomorphicLayoutEffect_js_1 = require("./useIsomorphicLayoutEffect.js");
|
|
34
|
-
const index_js_1 = require("../functions/index.js");
|
|
35
|
-
/**
|
|
36
|
-
* Hook that returns a boolean ref which is true if either:
|
|
37
|
-
* - There is a parent `ThemeProvider` in the tree, or
|
|
38
|
-
* - The <body> element has data-iui-theme attribute
|
|
39
|
-
*/
|
|
40
|
-
const useIsThemeAlreadySet = (ownerDocument = (0, index_js_1.getDocument)()) => {
|
|
41
|
-
const parentContext = React.useContext(ThemeContext_js_1.ThemeContext);
|
|
42
|
-
const isThemeAlreadySet = React.useRef(!!parentContext || !!(ownerDocument === null || ownerDocument === void 0 ? void 0 : ownerDocument.body.dataset.iuiTheme));
|
|
43
|
-
(0, useIsomorphicLayoutEffect_js_1.useIsomorphicLayoutEffect)(() => {
|
|
44
|
-
if (parentContext ||
|
|
45
|
-
(ownerDocument && !!ownerDocument.body.dataset.iuiTheme)) {
|
|
46
|
-
isThemeAlreadySet.current = true;
|
|
47
|
-
}
|
|
48
|
-
return () => {
|
|
49
|
-
isThemeAlreadySet.current = false;
|
|
50
|
-
};
|
|
51
|
-
}, [parentContext, ownerDocument]);
|
|
52
|
-
return isThemeAlreadySet;
|
|
53
|
-
};
|
|
54
|
-
exports.useIsThemeAlreadySet = useIsThemeAlreadySet;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import type { ToastProps } from './Toast.js';
|
|
3
|
-
import type { ToasterSettings } from './Toaster.js';
|
|
4
|
-
declare type ToastPlacement = NonNullable<ToasterSettings['placement']>;
|
|
5
|
-
export declare type ToastWrapperHandle = {
|
|
6
|
-
setToasts: (toasts: ToastProps[]) => void;
|
|
7
|
-
setPlacement: (placement: ToastPlacement) => void;
|
|
8
|
-
};
|
|
9
|
-
export declare const ToastWrapper: React.ForwardRefExoticComponent<React.RefAttributes<ToastWrapperHandle>>;
|
|
10
|
-
export {};
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
3
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
|
5
|
-
import * as React from 'react';
|
|
6
|
-
import cx from 'classnames';
|
|
7
|
-
import Toast from './Toast.js';
|
|
8
|
-
import { Box } from '../utils/index.js';
|
|
9
|
-
export const ToastWrapper = React.forwardRef((_, ref) => {
|
|
10
|
-
const [toasts, setToasts] = React.useState([]);
|
|
11
|
-
const [placement, setPlacement] = React.useState('top');
|
|
12
|
-
const placementPosition = placement.startsWith('top') ? 'top' : 'bottom';
|
|
13
|
-
React.useImperativeHandle(ref, () => ({
|
|
14
|
-
setToasts,
|
|
15
|
-
setPlacement,
|
|
16
|
-
}), []);
|
|
17
|
-
return (React.createElement(Box, { className: cx(`iui-toast-wrapper`, `iui-placement-${placement}`) }, toasts.map((toastProps) => {
|
|
18
|
-
return (React.createElement(Toast, { key: toastProps.id, placementPosition: placementPosition, ...toastProps }));
|
|
19
|
-
})));
|
|
20
|
-
});
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
/**
|
|
3
|
-
* Hook that returns a boolean ref which is true if either:
|
|
4
|
-
* - There is a parent `ThemeProvider` in the tree, or
|
|
5
|
-
* - The <body> element has data-iui-theme attribute
|
|
6
|
-
*/
|
|
7
|
-
export declare const useIsThemeAlreadySet: (ownerDocument?: Document | undefined) => React.MutableRefObject<boolean>;
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
/*---------------------------------------------------------------------------------------------
|
|
2
|
-
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
3
|
-
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
4
|
-
*--------------------------------------------------------------------------------------------*/
|
|
5
|
-
import * as React from 'react';
|
|
6
|
-
import { ThemeContext } from '../../ThemeProvider/ThemeContext.js';
|
|
7
|
-
import { useIsomorphicLayoutEffect } from './useIsomorphicLayoutEffect.js';
|
|
8
|
-
import { getDocument } from '../functions/index.js';
|
|
9
|
-
/**
|
|
10
|
-
* Hook that returns a boolean ref which is true if either:
|
|
11
|
-
* - There is a parent `ThemeProvider` in the tree, or
|
|
12
|
-
* - The <body> element has data-iui-theme attribute
|
|
13
|
-
*/
|
|
14
|
-
export const useIsThemeAlreadySet = (ownerDocument = getDocument()) => {
|
|
15
|
-
const parentContext = React.useContext(ThemeContext);
|
|
16
|
-
const isThemeAlreadySet = React.useRef(!!parentContext || !!(ownerDocument === null || ownerDocument === void 0 ? void 0 : ownerDocument.body.dataset.iuiTheme));
|
|
17
|
-
useIsomorphicLayoutEffect(() => {
|
|
18
|
-
if (parentContext ||
|
|
19
|
-
(ownerDocument && !!ownerDocument.body.dataset.iuiTheme)) {
|
|
20
|
-
isThemeAlreadySet.current = true;
|
|
21
|
-
}
|
|
22
|
-
return () => {
|
|
23
|
-
isThemeAlreadySet.current = false;
|
|
24
|
-
};
|
|
25
|
-
}, [parentContext, ownerDocument]);
|
|
26
|
-
return isThemeAlreadySet;
|
|
27
|
-
};
|