@itwin/itwinui-react 3.7.3 → 3.7.4
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 +11 -0
- package/cjs/core/Carousel/Carousel.d.ts +2 -38
- package/cjs/core/Tile/Tile.d.ts +2 -8
- package/cjs/core/Tooltip/Tooltip.js +5 -2
- package/cjs/core/utils/components/ShadowRoot.d.ts +6 -4
- package/cjs/core/utils/components/ShadowRoot.js +56 -22
- package/esm/core/Carousel/Carousel.d.ts +2 -38
- package/esm/core/Tile/Tile.d.ts +2 -8
- package/esm/core/Tooltip/Tooltip.js +6 -3
- package/esm/core/utils/components/ShadowRoot.d.ts +6 -4
- package/esm/core/utils/components/ShadowRoot.js +56 -22
- package/package.json +1 -1
- package/styles.css +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 3.7.4
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#1944](https://github.com/iTwin/iTwinUI/pull/1944): Fixed an issue where `Tooltip` would stay open after clicking on the trigger element. The tooltip will now be correctly dismissed upon click.
|
|
8
|
+
|
|
9
|
+
Also affects other components that use tooltips internally: `IconButton`, `SideNavigation`, etc.
|
|
10
|
+
|
|
11
|
+
- [#1955](https://github.com/iTwin/iTwinUI/pull/1955): Fixed a regression in `Tabs` where the panel content was not occupying the full width of the container.
|
|
12
|
+
- [#1954](https://github.com/iTwin/iTwinUI/pull/1954): Fixed an issue in older Safari versions where visually-hidden styles inside `ProgressRadial` were not being applied.
|
|
13
|
+
|
|
3
14
|
## 3.7.3
|
|
4
15
|
|
|
5
16
|
### Patch Changes
|
|
@@ -71,25 +71,7 @@ export declare const Carousel: PolymorphicForwardRefComponent<"section", Carouse
|
|
|
71
71
|
ariaStrategy?: "label" | "description" | "none" | undefined;
|
|
72
72
|
id?: string | undefined;
|
|
73
73
|
}> & {
|
|
74
|
-
content: React.ReactNode;
|
|
75
|
-
* The Carousel component consists of a set of slides, normally displayed one at a time. A navigation section is
|
|
76
|
-
* shown below the slides, consisting of "dots" and "previous"/"next" buttons, used for changing slides; this navigation
|
|
77
|
-
* section must be present _before_ the slides in DOM order, even though it is visually shown below the slides.
|
|
78
|
-
*
|
|
79
|
-
* The currently shown slide can also be changed using the left/right arrow keys or by dragging on a touch device.
|
|
80
|
-
*
|
|
81
|
-
* This component uses a composition approach so it should be used with the provided subcomponents.
|
|
82
|
-
*
|
|
83
|
-
* @example
|
|
84
|
-
* <Carousel>
|
|
85
|
-
* <Carousel.Navigation />
|
|
86
|
-
* <Carousel.Slider>
|
|
87
|
-
* <Carousel.Slide>...</Carousel.Slide>
|
|
88
|
-
* <Carousel.Slide>...</Carousel.Slide>
|
|
89
|
-
* <Carousel.Slide>...</Carousel.Slide>
|
|
90
|
-
* </Carousel.Slider>
|
|
91
|
-
* </Carousel>
|
|
92
|
-
*/
|
|
74
|
+
content: React.ReactNode;
|
|
93
75
|
children?: React.ReactNode;
|
|
94
76
|
} & import("../utils/index.js").PortalProps & {
|
|
95
77
|
placement?: import("@floating-ui/core").Placement | undefined;
|
|
@@ -152,25 +134,7 @@ export declare const Carousel: PolymorphicForwardRefComponent<"section", Carouse
|
|
|
152
134
|
ariaStrategy?: "label" | "description" | "none" | undefined;
|
|
153
135
|
id?: string | undefined;
|
|
154
136
|
}> & {
|
|
155
|
-
content: React.ReactNode;
|
|
156
|
-
* The Carousel component consists of a set of slides, normally displayed one at a time. A navigation section is
|
|
157
|
-
* shown below the slides, consisting of "dots" and "previous"/"next" buttons, used for changing slides; this navigation
|
|
158
|
-
* section must be present _before_ the slides in DOM order, even though it is visually shown below the slides.
|
|
159
|
-
*
|
|
160
|
-
* The currently shown slide can also be changed using the left/right arrow keys or by dragging on a touch device.
|
|
161
|
-
*
|
|
162
|
-
* This component uses a composition approach so it should be used with the provided subcomponents.
|
|
163
|
-
*
|
|
164
|
-
* @example
|
|
165
|
-
* <Carousel>
|
|
166
|
-
* <Carousel.Navigation />
|
|
167
|
-
* <Carousel.Slider>
|
|
168
|
-
* <Carousel.Slide>...</Carousel.Slide>
|
|
169
|
-
* <Carousel.Slide>...</Carousel.Slide>
|
|
170
|
-
* <Carousel.Slide>...</Carousel.Slide>
|
|
171
|
-
* </Carousel.Slider>
|
|
172
|
-
* </Carousel>
|
|
173
|
-
*/
|
|
137
|
+
content: React.ReactNode;
|
|
174
138
|
children?: React.ReactNode;
|
|
175
139
|
} & import("../utils/index.js").PortalProps & {
|
|
176
140
|
placement?: import("@floating-ui/core").Placement | undefined;
|
package/cjs/core/Tile/Tile.d.ts
CHANGED
|
@@ -260,10 +260,7 @@ export declare const Tile: PolymorphicForwardRefComponent<"div", TileLegacyProps
|
|
|
260
260
|
onVisibleChange?: ((visible: boolean) => void) | undefined;
|
|
261
261
|
autoUpdateOptions?: {
|
|
262
262
|
ancestorScroll?: boolean | undefined;
|
|
263
|
-
ancestorResize?: boolean | undefined;
|
|
264
|
-
* Display a loading state.
|
|
265
|
-
* @default false
|
|
266
|
-
*/
|
|
263
|
+
ancestorResize?: boolean | undefined;
|
|
267
264
|
elementResize?: boolean | undefined;
|
|
268
265
|
animationFrame?: boolean | undefined;
|
|
269
266
|
layoutShift?: boolean | undefined;
|
|
@@ -289,10 +286,7 @@ export declare const Tile: PolymorphicForwardRefComponent<"div", TileLegacyProps
|
|
|
289
286
|
onVisibleChange?: ((visible: boolean) => void) | undefined;
|
|
290
287
|
autoUpdateOptions?: {
|
|
291
288
|
ancestorScroll?: boolean | undefined;
|
|
292
|
-
ancestorResize?: boolean | undefined;
|
|
293
|
-
* Display a loading state.
|
|
294
|
-
* @default false
|
|
295
|
-
*/
|
|
289
|
+
ancestorResize?: boolean | undefined;
|
|
296
290
|
elementResize?: boolean | undefined;
|
|
297
291
|
animationFrame?: boolean | undefined;
|
|
298
292
|
layoutShift?: boolean | undefined;
|
|
@@ -66,10 +66,13 @@ const useTooltip = (options = {}) => {
|
|
|
66
66
|
(0, react_1.useHover)(floating.context, {
|
|
67
67
|
delay: delay ?? { open: 50, close: 250 },
|
|
68
68
|
handleClose: (0, react_1.safePolygon)({ buffer: -Infinity }),
|
|
69
|
+
move: false,
|
|
69
70
|
}),
|
|
70
71
|
(0, react_1.useFocus)(floating.context),
|
|
71
|
-
(0, react_1.
|
|
72
|
-
|
|
72
|
+
(0, react_1.useDismiss)(floating.context, {
|
|
73
|
+
referencePress: true,
|
|
74
|
+
referencePressEvent: 'click',
|
|
75
|
+
}),
|
|
73
76
|
]);
|
|
74
77
|
// Manually add attributes and event handlers to external reference element,
|
|
75
78
|
// because we cannot spread getReferenceProps onto it.
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
+
type ShadowRootProps = {
|
|
3
|
+
children: React.ReactNode;
|
|
4
|
+
css?: string;
|
|
5
|
+
};
|
|
2
6
|
/**
|
|
3
7
|
* Wrapper around `<template>` element that attaches shadow root to its parent
|
|
4
8
|
* and moves its children into the shadow root.
|
|
5
9
|
*
|
|
6
10
|
* @private
|
|
7
11
|
*/
|
|
8
|
-
export declare const ShadowRoot: ({ children, css
|
|
9
|
-
|
|
10
|
-
css?: string | undefined;
|
|
11
|
-
}) => React.JSX.Element | null;
|
|
12
|
+
export declare const ShadowRoot: ({ children, css }: ShadowRootProps) => React.JSX.Element | null;
|
|
13
|
+
export {};
|
|
@@ -30,6 +30,7 @@ exports.ShadowRoot = void 0;
|
|
|
30
30
|
*--------------------------------------------------------------------------------------------*/
|
|
31
31
|
const React = __importStar(require("react"));
|
|
32
32
|
const ReactDOM = __importStar(require("react-dom"));
|
|
33
|
+
const index_js_1 = require("../hooks/index.js");
|
|
33
34
|
const isBrowser = typeof document !== 'undefined';
|
|
34
35
|
const supportsDSD = isBrowser && 'shadowRootMode' in HTMLTemplateElement.prototype;
|
|
35
36
|
const supportsAdoptedStylesheets = isBrowser && 'adoptedStyleSheets' in Document.prototype;
|
|
@@ -39,28 +40,8 @@ const supportsAdoptedStylesheets = isBrowser && 'adoptedStyleSheets' in Document
|
|
|
39
40
|
*
|
|
40
41
|
* @private
|
|
41
42
|
*/
|
|
42
|
-
const ShadowRoot = ({ children, css
|
|
43
|
-
const [shadowRoot, setShadowRoot] = React.useState();
|
|
43
|
+
const ShadowRoot = ({ children, css }) => {
|
|
44
44
|
const isFirstRender = useIsFirstRender();
|
|
45
|
-
const styleSheet = React.useRef();
|
|
46
|
-
const attachShadowRef = React.useCallback((template) => {
|
|
47
|
-
const parent = template?.parentElement;
|
|
48
|
-
if (!template || !parent) {
|
|
49
|
-
return;
|
|
50
|
-
}
|
|
51
|
-
if (parent.shadowRoot) {
|
|
52
|
-
parent.shadowRoot.replaceChildren(); // Remove previous shadowroot content
|
|
53
|
-
}
|
|
54
|
-
queueMicrotask(() => {
|
|
55
|
-
const shadow = parent.shadowRoot || parent.attachShadow({ mode: 'open' });
|
|
56
|
-
if (css && supportsAdoptedStylesheets) {
|
|
57
|
-
styleSheet.current || (styleSheet.current = new CSSStyleSheet());
|
|
58
|
-
styleSheet.current.replaceSync(css);
|
|
59
|
-
shadow.adoptedStyleSheets = [styleSheet.current];
|
|
60
|
-
}
|
|
61
|
-
ReactDOM.flushSync(() => setShadowRoot(shadow));
|
|
62
|
-
});
|
|
63
|
-
}, [css]);
|
|
64
45
|
if (!isBrowser) {
|
|
65
46
|
return (React.createElement("template", { shadowrootmode: 'open' },
|
|
66
47
|
css && React.createElement("style", null, css),
|
|
@@ -71,10 +52,63 @@ const ShadowRoot = ({ children, css, }) => {
|
|
|
71
52
|
if (supportsDSD && isFirstRender) {
|
|
72
53
|
return null;
|
|
73
54
|
}
|
|
74
|
-
return
|
|
55
|
+
return React.createElement(ClientShadowRoot, { css: css }, children);
|
|
75
56
|
};
|
|
76
57
|
exports.ShadowRoot = ShadowRoot;
|
|
77
58
|
// ----------------------------------------------------------------------------
|
|
59
|
+
const ClientShadowRoot = ({ children, css }) => {
|
|
60
|
+
const templateRef = React.useRef(null);
|
|
61
|
+
const shadowRoot = useShadowRoot(templateRef, { css });
|
|
62
|
+
// fallback to <style> tag if adoptedStyleSheets is not supported
|
|
63
|
+
const fallbackCss = !supportsAdoptedStylesheets && css ? React.createElement("style", null, css) : null;
|
|
64
|
+
return shadowRoot ? (ReactDOM.createPortal(React.createElement(React.Fragment, null,
|
|
65
|
+
fallbackCss,
|
|
66
|
+
children), shadowRoot)) : (React.createElement("template", { ref: templateRef }));
|
|
67
|
+
};
|
|
68
|
+
// ----------------------------------------------------------------------------
|
|
69
|
+
/**
|
|
70
|
+
* Given a ref, this hook will return a shadowRoot attached to its parent element.
|
|
71
|
+
*
|
|
72
|
+
* The css will be added to the shadowRoot using `adoptedStyleSheets` (if supported).
|
|
73
|
+
*/
|
|
74
|
+
function useShadowRoot(templateRef, { css = '' }) {
|
|
75
|
+
const [shadowRoot, setShadowRoot] = React.useState(null);
|
|
76
|
+
const styleSheet = React.useRef();
|
|
77
|
+
const latestCss = (0, index_js_1.useLatestRef)(css);
|
|
78
|
+
(0, index_js_1.useLayoutEffect)(() => {
|
|
79
|
+
const parent = templateRef.current?.parentElement;
|
|
80
|
+
if (!parent) {
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
if (parent.shadowRoot) {
|
|
84
|
+
parent.shadowRoot.replaceChildren(); // Remove previous shadowroot content
|
|
85
|
+
}
|
|
86
|
+
const shadow = parent.shadowRoot || parent.attachShadow({ mode: 'open' });
|
|
87
|
+
if (supportsAdoptedStylesheets) {
|
|
88
|
+
// create an empty stylesheet and add it to the shadowRoot
|
|
89
|
+
const currentWindow = shadow.ownerDocument.defaultView || globalThis;
|
|
90
|
+
styleSheet.current = new currentWindow.CSSStyleSheet();
|
|
91
|
+
shadow.adoptedStyleSheets = [styleSheet.current];
|
|
92
|
+
// add the CSS immediately to avoid FOUC (one-time)
|
|
93
|
+
if (latestCss.current) {
|
|
94
|
+
styleSheet.current.replaceSync(latestCss.current);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
queueMicrotask(() => {
|
|
98
|
+
// Flush the state immediately to ensure layout measurements in parent component are correct
|
|
99
|
+
ReactDOM.flushSync(() => setShadowRoot(shadow));
|
|
100
|
+
});
|
|
101
|
+
return () => void setShadowRoot(null);
|
|
102
|
+
}, [templateRef, latestCss]);
|
|
103
|
+
// Synchronize `css` with contents of the existing stylesheet
|
|
104
|
+
(0, index_js_1.useLayoutEffect)(() => {
|
|
105
|
+
if (css && supportsAdoptedStylesheets) {
|
|
106
|
+
styleSheet.current?.replaceSync(css);
|
|
107
|
+
}
|
|
108
|
+
}, [css]);
|
|
109
|
+
return shadowRoot;
|
|
110
|
+
}
|
|
111
|
+
// ----------------------------------------------------------------------------
|
|
78
112
|
function useIsFirstRender() {
|
|
79
113
|
const [isFirstRender, setIsFirstRender] = React.useState(true);
|
|
80
114
|
React.useEffect(() => setIsFirstRender(false), []);
|
|
@@ -71,25 +71,7 @@ export declare const Carousel: PolymorphicForwardRefComponent<"section", Carouse
|
|
|
71
71
|
ariaStrategy?: "label" | "description" | "none" | undefined;
|
|
72
72
|
id?: string | undefined;
|
|
73
73
|
}> & {
|
|
74
|
-
content: React.ReactNode;
|
|
75
|
-
* The Carousel component consists of a set of slides, normally displayed one at a time. A navigation section is
|
|
76
|
-
* shown below the slides, consisting of "dots" and "previous"/"next" buttons, used for changing slides; this navigation
|
|
77
|
-
* section must be present _before_ the slides in DOM order, even though it is visually shown below the slides.
|
|
78
|
-
*
|
|
79
|
-
* The currently shown slide can also be changed using the left/right arrow keys or by dragging on a touch device.
|
|
80
|
-
*
|
|
81
|
-
* This component uses a composition approach so it should be used with the provided subcomponents.
|
|
82
|
-
*
|
|
83
|
-
* @example
|
|
84
|
-
* <Carousel>
|
|
85
|
-
* <Carousel.Navigation />
|
|
86
|
-
* <Carousel.Slider>
|
|
87
|
-
* <Carousel.Slide>...</Carousel.Slide>
|
|
88
|
-
* <Carousel.Slide>...</Carousel.Slide>
|
|
89
|
-
* <Carousel.Slide>...</Carousel.Slide>
|
|
90
|
-
* </Carousel.Slider>
|
|
91
|
-
* </Carousel>
|
|
92
|
-
*/
|
|
74
|
+
content: React.ReactNode;
|
|
93
75
|
children?: React.ReactNode;
|
|
94
76
|
} & import("../utils/index.js").PortalProps & {
|
|
95
77
|
placement?: import("@floating-ui/core").Placement | undefined;
|
|
@@ -152,25 +134,7 @@ export declare const Carousel: PolymorphicForwardRefComponent<"section", Carouse
|
|
|
152
134
|
ariaStrategy?: "label" | "description" | "none" | undefined;
|
|
153
135
|
id?: string | undefined;
|
|
154
136
|
}> & {
|
|
155
|
-
content: React.ReactNode;
|
|
156
|
-
* The Carousel component consists of a set of slides, normally displayed one at a time. A navigation section is
|
|
157
|
-
* shown below the slides, consisting of "dots" and "previous"/"next" buttons, used for changing slides; this navigation
|
|
158
|
-
* section must be present _before_ the slides in DOM order, even though it is visually shown below the slides.
|
|
159
|
-
*
|
|
160
|
-
* The currently shown slide can also be changed using the left/right arrow keys or by dragging on a touch device.
|
|
161
|
-
*
|
|
162
|
-
* This component uses a composition approach so it should be used with the provided subcomponents.
|
|
163
|
-
*
|
|
164
|
-
* @example
|
|
165
|
-
* <Carousel>
|
|
166
|
-
* <Carousel.Navigation />
|
|
167
|
-
* <Carousel.Slider>
|
|
168
|
-
* <Carousel.Slide>...</Carousel.Slide>
|
|
169
|
-
* <Carousel.Slide>...</Carousel.Slide>
|
|
170
|
-
* <Carousel.Slide>...</Carousel.Slide>
|
|
171
|
-
* </Carousel.Slider>
|
|
172
|
-
* </Carousel>
|
|
173
|
-
*/
|
|
137
|
+
content: React.ReactNode;
|
|
174
138
|
children?: React.ReactNode;
|
|
175
139
|
} & import("../utils/index.js").PortalProps & {
|
|
176
140
|
placement?: import("@floating-ui/core").Placement | undefined;
|
package/esm/core/Tile/Tile.d.ts
CHANGED
|
@@ -260,10 +260,7 @@ export declare const Tile: PolymorphicForwardRefComponent<"div", TileLegacyProps
|
|
|
260
260
|
onVisibleChange?: ((visible: boolean) => void) | undefined;
|
|
261
261
|
autoUpdateOptions?: {
|
|
262
262
|
ancestorScroll?: boolean | undefined;
|
|
263
|
-
ancestorResize?: boolean | undefined;
|
|
264
|
-
* Display a loading state.
|
|
265
|
-
* @default false
|
|
266
|
-
*/
|
|
263
|
+
ancestorResize?: boolean | undefined;
|
|
267
264
|
elementResize?: boolean | undefined;
|
|
268
265
|
animationFrame?: boolean | undefined;
|
|
269
266
|
layoutShift?: boolean | undefined;
|
|
@@ -289,10 +286,7 @@ export declare const Tile: PolymorphicForwardRefComponent<"div", TileLegacyProps
|
|
|
289
286
|
onVisibleChange?: ((visible: boolean) => void) | undefined;
|
|
290
287
|
autoUpdateOptions?: {
|
|
291
288
|
ancestorScroll?: boolean | undefined;
|
|
292
|
-
ancestorResize?: boolean | undefined;
|
|
293
|
-
* Display a loading state.
|
|
294
|
-
* @default false
|
|
295
|
-
*/
|
|
289
|
+
ancestorResize?: boolean | undefined;
|
|
296
290
|
elementResize?: boolean | undefined;
|
|
297
291
|
animationFrame?: boolean | undefined;
|
|
298
292
|
layoutShift?: boolean | undefined;
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*--------------------------------------------------------------------------------------------*/
|
|
5
5
|
import * as React from 'react';
|
|
6
6
|
import cx from 'classnames';
|
|
7
|
-
import { useFloating, autoUpdate, offset, flip, shift,
|
|
7
|
+
import { useFloating, autoUpdate, offset, flip, shift, useHover, useFocus, useDismiss, useInteractions, safePolygon, size, autoPlacement, hide, inline, useDelayGroupContext, useDelayGroup, } from '@floating-ui/react';
|
|
8
8
|
import { Box, Portal, cloneElementWithRef, useControlledState, useId, useMergedRefs, } from '../utils/index.js';
|
|
9
9
|
const useTooltip = (options = {}) => {
|
|
10
10
|
const uniqueId = useId();
|
|
@@ -37,10 +37,13 @@ const useTooltip = (options = {}) => {
|
|
|
37
37
|
useHover(floating.context, {
|
|
38
38
|
delay: delay ?? { open: 50, close: 250 },
|
|
39
39
|
handleClose: safePolygon({ buffer: -Infinity }),
|
|
40
|
+
move: false,
|
|
40
41
|
}),
|
|
41
42
|
useFocus(floating.context),
|
|
42
|
-
|
|
43
|
-
|
|
43
|
+
useDismiss(floating.context, {
|
|
44
|
+
referencePress: true,
|
|
45
|
+
referencePressEvent: 'click',
|
|
46
|
+
}),
|
|
44
47
|
]);
|
|
45
48
|
// Manually add attributes and event handlers to external reference element,
|
|
46
49
|
// because we cannot spread getReferenceProps onto it.
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
+
type ShadowRootProps = {
|
|
3
|
+
children: React.ReactNode;
|
|
4
|
+
css?: string;
|
|
5
|
+
};
|
|
2
6
|
/**
|
|
3
7
|
* Wrapper around `<template>` element that attaches shadow root to its parent
|
|
4
8
|
* and moves its children into the shadow root.
|
|
5
9
|
*
|
|
6
10
|
* @private
|
|
7
11
|
*/
|
|
8
|
-
export declare const ShadowRoot: ({ children, css
|
|
9
|
-
|
|
10
|
-
css?: string | undefined;
|
|
11
|
-
}) => React.JSX.Element | null;
|
|
12
|
+
export declare const ShadowRoot: ({ children, css }: ShadowRootProps) => React.JSX.Element | null;
|
|
13
|
+
export {};
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
*--------------------------------------------------------------------------------------------*/
|
|
5
5
|
import * as React from 'react';
|
|
6
6
|
import * as ReactDOM from 'react-dom';
|
|
7
|
+
import { useLatestRef, useLayoutEffect } from '../hooks/index.js';
|
|
7
8
|
const isBrowser = typeof document !== 'undefined';
|
|
8
9
|
const supportsDSD = isBrowser && 'shadowRootMode' in HTMLTemplateElement.prototype;
|
|
9
10
|
const supportsAdoptedStylesheets = isBrowser && 'adoptedStyleSheets' in Document.prototype;
|
|
@@ -13,28 +14,8 @@ const supportsAdoptedStylesheets = isBrowser && 'adoptedStyleSheets' in Document
|
|
|
13
14
|
*
|
|
14
15
|
* @private
|
|
15
16
|
*/
|
|
16
|
-
export const ShadowRoot = ({ children, css
|
|
17
|
-
const [shadowRoot, setShadowRoot] = React.useState();
|
|
17
|
+
export const ShadowRoot = ({ children, css }) => {
|
|
18
18
|
const isFirstRender = useIsFirstRender();
|
|
19
|
-
const styleSheet = React.useRef();
|
|
20
|
-
const attachShadowRef = React.useCallback((template) => {
|
|
21
|
-
const parent = template?.parentElement;
|
|
22
|
-
if (!template || !parent) {
|
|
23
|
-
return;
|
|
24
|
-
}
|
|
25
|
-
if (parent.shadowRoot) {
|
|
26
|
-
parent.shadowRoot.replaceChildren(); // Remove previous shadowroot content
|
|
27
|
-
}
|
|
28
|
-
queueMicrotask(() => {
|
|
29
|
-
const shadow = parent.shadowRoot || parent.attachShadow({ mode: 'open' });
|
|
30
|
-
if (css && supportsAdoptedStylesheets) {
|
|
31
|
-
styleSheet.current || (styleSheet.current = new CSSStyleSheet());
|
|
32
|
-
styleSheet.current.replaceSync(css);
|
|
33
|
-
shadow.adoptedStyleSheets = [styleSheet.current];
|
|
34
|
-
}
|
|
35
|
-
ReactDOM.flushSync(() => setShadowRoot(shadow));
|
|
36
|
-
});
|
|
37
|
-
}, [css]);
|
|
38
19
|
if (!isBrowser) {
|
|
39
20
|
return (React.createElement("template", { shadowrootmode: 'open' },
|
|
40
21
|
css && React.createElement("style", null, css),
|
|
@@ -45,9 +26,62 @@ export const ShadowRoot = ({ children, css, }) => {
|
|
|
45
26
|
if (supportsDSD && isFirstRender) {
|
|
46
27
|
return null;
|
|
47
28
|
}
|
|
48
|
-
return
|
|
29
|
+
return React.createElement(ClientShadowRoot, { css: css }, children);
|
|
30
|
+
};
|
|
31
|
+
// ----------------------------------------------------------------------------
|
|
32
|
+
const ClientShadowRoot = ({ children, css }) => {
|
|
33
|
+
const templateRef = React.useRef(null);
|
|
34
|
+
const shadowRoot = useShadowRoot(templateRef, { css });
|
|
35
|
+
// fallback to <style> tag if adoptedStyleSheets is not supported
|
|
36
|
+
const fallbackCss = !supportsAdoptedStylesheets && css ? React.createElement("style", null, css) : null;
|
|
37
|
+
return shadowRoot ? (ReactDOM.createPortal(React.createElement(React.Fragment, null,
|
|
38
|
+
fallbackCss,
|
|
39
|
+
children), shadowRoot)) : (React.createElement("template", { ref: templateRef }));
|
|
49
40
|
};
|
|
50
41
|
// ----------------------------------------------------------------------------
|
|
42
|
+
/**
|
|
43
|
+
* Given a ref, this hook will return a shadowRoot attached to its parent element.
|
|
44
|
+
*
|
|
45
|
+
* The css will be added to the shadowRoot using `adoptedStyleSheets` (if supported).
|
|
46
|
+
*/
|
|
47
|
+
function useShadowRoot(templateRef, { css = '' }) {
|
|
48
|
+
const [shadowRoot, setShadowRoot] = React.useState(null);
|
|
49
|
+
const styleSheet = React.useRef();
|
|
50
|
+
const latestCss = useLatestRef(css);
|
|
51
|
+
useLayoutEffect(() => {
|
|
52
|
+
const parent = templateRef.current?.parentElement;
|
|
53
|
+
if (!parent) {
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
if (parent.shadowRoot) {
|
|
57
|
+
parent.shadowRoot.replaceChildren(); // Remove previous shadowroot content
|
|
58
|
+
}
|
|
59
|
+
const shadow = parent.shadowRoot || parent.attachShadow({ mode: 'open' });
|
|
60
|
+
if (supportsAdoptedStylesheets) {
|
|
61
|
+
// create an empty stylesheet and add it to the shadowRoot
|
|
62
|
+
const currentWindow = shadow.ownerDocument.defaultView || globalThis;
|
|
63
|
+
styleSheet.current = new currentWindow.CSSStyleSheet();
|
|
64
|
+
shadow.adoptedStyleSheets = [styleSheet.current];
|
|
65
|
+
// add the CSS immediately to avoid FOUC (one-time)
|
|
66
|
+
if (latestCss.current) {
|
|
67
|
+
styleSheet.current.replaceSync(latestCss.current);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
queueMicrotask(() => {
|
|
71
|
+
// Flush the state immediately to ensure layout measurements in parent component are correct
|
|
72
|
+
ReactDOM.flushSync(() => setShadowRoot(shadow));
|
|
73
|
+
});
|
|
74
|
+
return () => void setShadowRoot(null);
|
|
75
|
+
}, [templateRef, latestCss]);
|
|
76
|
+
// Synchronize `css` with contents of the existing stylesheet
|
|
77
|
+
useLayoutEffect(() => {
|
|
78
|
+
if (css && supportsAdoptedStylesheets) {
|
|
79
|
+
styleSheet.current?.replaceSync(css);
|
|
80
|
+
}
|
|
81
|
+
}, [css]);
|
|
82
|
+
return shadowRoot;
|
|
83
|
+
}
|
|
84
|
+
// ----------------------------------------------------------------------------
|
|
51
85
|
function useIsFirstRender() {
|
|
52
86
|
const [isFirstRender, setIsFirstRender] = React.useState(true);
|
|
53
87
|
React.useEffect(() => setIsFirstRender(false), []);
|
package/package.json
CHANGED
package/styles.css
CHANGED
|
@@ -686,14 +686,14 @@
|
|
|
686
686
|
}
|
|
687
687
|
|
|
688
688
|
@layer itwinui.v3{
|
|
689
|
-
._iui3-progress-indicator-radial :is(svg,img){inline-size:var(--iui-size-m);block-size:var(--iui-size-m);fill:var(--iui-color-icon);flex-shrink:0;display:flex}._iui3-progress-indicator-radial[data-iui-status=positive]{color:var(--iui-color-text-positive)}._iui3-progress-indicator-radial[data-iui-status=positive]:after{background-color:var(--iui-color-border-positive)}._iui3-progress-indicator-radial[data-iui-status=positive] :is(svg,img){fill:var(--iui-color-icon-positive)}._iui3-progress-indicator-radial[data-iui-status=negative]{color:var(--iui-color-text-negative)}._iui3-progress-indicator-radial[data-iui-status=negative]:after{background-color:var(--iui-color-border-negative)}._iui3-progress-indicator-radial[data-iui-status=negative] :is(svg,img){fill:var(--iui-color-icon-negative)}._iui3-progress-indicator-radial[data-iui-status=warning]{color:var(--iui-color-text-warning)}._iui3-progress-indicator-radial[data-iui-status=warning]:after{background-color:var(--iui-color-border-warning)}._iui3-progress-indicator-radial[data-iui-status=warning] :is(svg,img){fill:var(--iui-color-icon-warning)}._iui3-progress-indicator-radial[data-iui-size=x-small]{--_iui-progress-indicator-radial-size:var(--iui-size-m)}._iui3-progress-indicator-radial[data-iui-size=x-small]:before,._iui3-progress-indicator-radial[data-iui-size=x-small]:after{border-width:var(--iui-size-3xs)}._iui3-progress-indicator-radial[data-iui-size=x-small]>*{display:none}._iui3-progress-indicator-radial[data-iui-size=small]{--_iui-progress-indicator-radial-size:calc(1.5*var(--iui-size-m))}._iui3-progress-indicator-radial[data-iui-size=small]:before,._iui3-progress-indicator-radial[data-iui-size=small]:after{border-width:calc(var(--iui-size-3xs)*1.5)}._iui3-progress-indicator-radial[data-iui-size=large]{--_iui-progress-indicator-radial-size:calc(3*var(--iui-size-m));font-size:var(--iui-font-size-2)}._iui3-progress-indicator-radial[data-iui-size=large]:before,._iui3-progress-indicator-radial[data-iui-size=large]:after{border-width:calc(var(--iui-size-2xs)*1.5)}._iui3-progress-indicator-radial[data-iui-size=large] :is(svg,img){inline-size:calc(1.5*var(--iui-size-m));block-size:calc(1.5*var(--iui-size-m));flex-shrink:0;display:flex}._iui3-progress-indicator-radial:where(:not([data-iui-indeterminate=true])):after{-webkit-mask-image:conic-gradient(#000 var(--iui-progress-percentage,100%),#0000 var(--iui-progress-percentage,100%)),linear-gradient(#000 0 0);mask-image:conic-gradient(#000 var(--iui-progress-percentage,100%),#0000 var(--iui-progress-percentage,100%)),linear-gradient(#000 0 0)}._iui3-progress-indicator-radial:where([data-iui-indeterminate=true]):after{animation:.8s cubic-bezier(.6,.4,.4,.6) infinite _iui3-
|
|
689
|
+
._iui3-progress-indicator-radial :is(svg,img){inline-size:var(--iui-size-m);block-size:var(--iui-size-m);fill:var(--iui-color-icon);flex-shrink:0;display:flex}._iui3-progress-indicator-radial[data-iui-status=positive]{color:var(--iui-color-text-positive)}._iui3-progress-indicator-radial[data-iui-status=positive]:after{background-color:var(--iui-color-border-positive)}._iui3-progress-indicator-radial[data-iui-status=positive] :is(svg,img){fill:var(--iui-color-icon-positive)}._iui3-progress-indicator-radial[data-iui-status=negative]{color:var(--iui-color-text-negative)}._iui3-progress-indicator-radial[data-iui-status=negative]:after{background-color:var(--iui-color-border-negative)}._iui3-progress-indicator-radial[data-iui-status=negative] :is(svg,img){fill:var(--iui-color-icon-negative)}._iui3-progress-indicator-radial[data-iui-status=warning]{color:var(--iui-color-text-warning)}._iui3-progress-indicator-radial[data-iui-status=warning]:after{background-color:var(--iui-color-border-warning)}._iui3-progress-indicator-radial[data-iui-status=warning] :is(svg,img){fill:var(--iui-color-icon-warning)}._iui3-progress-indicator-radial[data-iui-size=x-small]{--_iui-progress-indicator-radial-size:var(--iui-size-m)}._iui3-progress-indicator-radial[data-iui-size=x-small]:before,._iui3-progress-indicator-radial[data-iui-size=x-small]:after{border-width:var(--iui-size-3xs)}._iui3-progress-indicator-radial[data-iui-size=x-small]>*{display:none}._iui3-progress-indicator-radial[data-iui-size=small]{--_iui-progress-indicator-radial-size:calc(1.5*var(--iui-size-m))}._iui3-progress-indicator-radial[data-iui-size=small]:before,._iui3-progress-indicator-radial[data-iui-size=small]:after{border-width:calc(var(--iui-size-3xs)*1.5)}._iui3-progress-indicator-radial[data-iui-size=large]{--_iui-progress-indicator-radial-size:calc(3*var(--iui-size-m));font-size:var(--iui-font-size-2)}._iui3-progress-indicator-radial[data-iui-size=large]:before,._iui3-progress-indicator-radial[data-iui-size=large]:after{border-width:calc(var(--iui-size-2xs)*1.5)}._iui3-progress-indicator-radial[data-iui-size=large] :is(svg,img){inline-size:calc(1.5*var(--iui-size-m));block-size:calc(1.5*var(--iui-size-m));flex-shrink:0;display:flex}._iui3-progress-indicator-radial:where(:not([data-iui-indeterminate=true])):after{-webkit-mask-image:conic-gradient(#000 var(--iui-progress-percentage,100%),#0000 var(--iui-progress-percentage,100%)),linear-gradient(#000 0 0);mask-image:conic-gradient(#000 var(--iui-progress-percentage,100%),#0000 var(--iui-progress-percentage,100%)),linear-gradient(#000 0 0)}._iui3-progress-indicator-radial:where([data-iui-indeterminate=true]):after{animation:.8s cubic-bezier(.6,.4,.4,.6) infinite _iui3-uajocub;-webkit-mask-image:conic-gradient(#0000,#000),linear-gradient(#000 0 0);mask-image:conic-gradient(#0000,#000),linear-gradient(#000 0 0)}@keyframes _iui3-uajocub{to{transform:rotate(360deg)}}._iui3-progress-indicator-linear-label{font-size:var(--iui-font-size-0);color:var(--_iui-progress-indicator-linear-label-color);--iui-svg-fill:var(--_iui-progress-indicator-linear-label-fill);justify-content:space-between;align-items:center;display:flex}._iui3-progress-indicator-linear-label>:only-child{margin-inline:auto}._iui3-progress-indicator-linear{gap:var(--iui-size-2xs);display:grid}._iui3-progress-indicator-linear:before{content:"";block-size:var(--iui-size-2xs);background-color:var(--iui-color-border);background-image:linear-gradient(90deg,var(--_iui-progress-indicator-track-fill,var(--iui-color-border-accent))0% 100%);background-repeat:no-repeat;background-size:var(--iui-progress-percentage,100%)100%;forced-color-adjust:none}
|
|
690
690
|
}
|
|
691
691
|
|
|
692
692
|
@layer itwinui.v3{@media (forced-colors:active){._iui3-progress-indicator-linear:before{background-color:#0000;background-image:linear-gradient(90deg,canvastext 0% 100%);border:.5px solid}}
|
|
693
693
|
}
|
|
694
694
|
|
|
695
695
|
@layer itwinui.v3{
|
|
696
|
-
._iui3-progress-indicator-linear[data-iui-status=positive]{--_iui-progress-indicator-track-fill:var(--iui-color-border-positive);--_iui-progress-indicator-linear-label-color:var(--iui-color-text-positive);--_iui-progress-indicator-linear-label-fill:var(--iui-color-icon-positive)}._iui3-progress-indicator-linear[data-iui-status=positive]::selection,._iui3-progress-indicator-linear[data-iui-status=positive] ::selection{background-color:hsl(var(--iui-color-positive-hsl)/var(--iui-opacity-5))}._iui3-progress-indicator-linear[data-iui-status=negative]{--_iui-progress-indicator-track-fill:var(--iui-color-border-negative);--_iui-progress-indicator-linear-label-color:var(--iui-color-text-negative);--_iui-progress-indicator-linear-label-fill:var(--iui-color-icon-negative)}._iui3-progress-indicator-linear[data-iui-status=negative]::selection,._iui3-progress-indicator-linear[data-iui-status=negative] ::selection{background-color:hsl(var(--iui-color-negative-hsl)/var(--iui-opacity-5))}._iui3-progress-indicator-linear[data-iui-status=warning]{--_iui-progress-indicator-track-fill:var(--iui-color-border-warning);--_iui-progress-indicator-linear-label-color:var(--iui-color-text-warning);--_iui-progress-indicator-linear-label-fill:var(--iui-color-icon-warning)}._iui3-progress-indicator-linear[data-iui-status=warning]::selection,._iui3-progress-indicator-linear[data-iui-status=warning] ::selection{background-color:hsl(var(--iui-color-warning-hsl)/var(--iui-opacity-5))}._iui3-progress-indicator-linear:where([data-iui-animated=true]:not([data-iui-indeterminate=true])):before{transition:background-size 1s ease-in-out}._iui3-progress-indicator-linear:where([data-iui-indeterminate=true]):before{animation:1.5s linear infinite _iui3-
|
|
696
|
+
._iui3-progress-indicator-linear[data-iui-status=positive]{--_iui-progress-indicator-track-fill:var(--iui-color-border-positive);--_iui-progress-indicator-linear-label-color:var(--iui-color-text-positive);--_iui-progress-indicator-linear-label-fill:var(--iui-color-icon-positive)}._iui3-progress-indicator-linear[data-iui-status=positive]::selection,._iui3-progress-indicator-linear[data-iui-status=positive] ::selection{background-color:hsl(var(--iui-color-positive-hsl)/var(--iui-opacity-5))}._iui3-progress-indicator-linear[data-iui-status=negative]{--_iui-progress-indicator-track-fill:var(--iui-color-border-negative);--_iui-progress-indicator-linear-label-color:var(--iui-color-text-negative);--_iui-progress-indicator-linear-label-fill:var(--iui-color-icon-negative)}._iui3-progress-indicator-linear[data-iui-status=negative]::selection,._iui3-progress-indicator-linear[data-iui-status=negative] ::selection{background-color:hsl(var(--iui-color-negative-hsl)/var(--iui-opacity-5))}._iui3-progress-indicator-linear[data-iui-status=warning]{--_iui-progress-indicator-track-fill:var(--iui-color-border-warning);--_iui-progress-indicator-linear-label-color:var(--iui-color-text-warning);--_iui-progress-indicator-linear-label-fill:var(--iui-color-icon-warning)}._iui3-progress-indicator-linear[data-iui-status=warning]::selection,._iui3-progress-indicator-linear[data-iui-status=warning] ::selection{background-color:hsl(var(--iui-color-warning-hsl)/var(--iui-opacity-5))}._iui3-progress-indicator-linear:where([data-iui-animated=true]:not([data-iui-indeterminate=true])):before{transition:background-size 1s ease-in-out}._iui3-progress-indicator-linear:where([data-iui-indeterminate=true]):before{animation:1.5s linear infinite _iui3-uajocuk}@keyframes _iui3-uajocuk{0%{background-position:-60% 0;background-size:30% 100%}40%{background-position:-40% 0;background-size:40% 100%}to{background-position:200% 0;background-size:50% 100%}}._iui3-radio-wrapper{vertical-align:baseline;font-size:var(--iui-font-size-1);-webkit-user-select:none;user-select:none;cursor:pointer;color:var(--iui-color-text);align-items:center;gap:var(--iui-size-xs);border:none;inline-size:-moz-fit-content;inline-size:fit-content;margin:0;padding:0;display:flex;position:relative}._iui3-radio-wrapper._iui3-loading{cursor:progress;color:var(--iui-color-text-disabled);font-style:italic}._iui3-radio-wrapper>._iui3-checkbox-label,._iui3-radio-wrapper>._iui3-radio-label{line-height:var(--iui-size-l)}._iui3-radio-wrapper>._iui3-checkbox-label svg,._iui3-radio-wrapper>._iui3-radio-label svg{inline-size:var(--iui-size-m);block-size:var(--iui-size-m);vertical-align:middle;fill:var(--iui-color-icon);flex-shrink:0;display:flex}._iui3-radio-wrapper._iui3-disabled{cursor:not-allowed;color:var(--iui-color-text-disabled)}._iui3-radio-wrapper._iui3-disabled svg{fill:var(--iui-color-icon-disabled)}._iui3-radio-wrapper._iui3-positive{color:var(--iui-color-text-positive)}._iui3-radio-wrapper._iui3-warning{color:var(--iui-color-text-warning)}._iui3-radio-wrapper._iui3-negative{color:var(--iui-color-text-negative)}._iui3-radio{--_iui-checkbox-checkmark-svg:url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\"><path d=\"m6.5 12.5-4.5-4.5 1.5-1.5 3 3 6-6 1.5 1.5z\" /></svg>");--_iui-checkbox-indeterminate-svg:url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\"><path d=\"m2.75 6.875h10.5v2.25h-10.5z\" /></svg>");--_iui-checkbox-unchecked-svg:url("data:image/svg+xml;utf8,<svg viewBox=\"0 0 16 16\"></svg>");--_iui-checkbox-svg-color:var(--iui-color-icon-accent);--_iui-checkbox-border-color:var(--iui-color-border-foreground);--_iui-checkbox-background-color:var(--iui-color-background);--_iui-checkbox-mask-image:initial;inline-size:var(--iui-size-m);block-size:var(--iui-size-m);appearance:none;border-radius:var(--iui-border-radius-1);background-color:var(--_iui-checkbox-background-color);cursor:pointer;transition:outline-color var(--iui-duration-1)ease-out;outline:solid 1px var(--_iui-checkbox-border-color);outline-offset:-1px;border-radius:50%;flex-shrink:0;margin:0;display:flex;position:relative}._iui3-radio:before{content:"";inset:calc((var(--iui-checkbox-target-size,24px) - 16px)/-2);position:absolute}._iui3-radio:after{content:"";background-color:var(--_iui-checkbox-svg-color);-webkit-mask:var(--_iui-checkbox-mask-image)no-repeat center;mask:var(--_iui-checkbox-mask-image)no-repeat center;position:absolute;inset:0}._iui3-radio:not(:checked){--_iui-checkbox-mask-image:var(--_iui-checkbox-unchecked-svg)}._iui3-radio:indeterminate{--_iui-checkbox-mask-image:var(--_iui-checkbox-indeterminate-svg)}._iui3-radio:hover{--_iui-checkbox-border-color:var(--iui-color-border-foreground-hover)}._iui3-radio:focus-visible{outline:2px solid var(--iui-color-border-accent);outline-offset:-1px}._iui3-radio:disabled{--_iui-checkbox-svg-color:var(--iui-color-icon-disabled);--_iui-checkbox-border-color:var(--iui-color-border-disabled);--_iui-checkbox-background-color:var(--iui-color-background-disabled);cursor:not-allowed}._iui3-radio._iui3-checkbox-visibility{--_iui-checkbox-checkmark-svg:url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\"><path d=\"m8 2.99051a8.81883 8.81883 0 0 0 -8 4.95062 8.74664 8.74664 0 0 0 8 5.06836 8.63266 8.63266 0 0 0 8-5.06836 8.83631 8.83631 0 0 0 -8-4.95062zm-1.31445 1.86981a1.47663 1.47663 0 1 1 -1.47663 1.47668 1.47665 1.47665 0 0 1 1.47663-1.47668zm1.31445 6.64917a7.17486 7.17486 0 0 1 -6.30475-3.55237 7.4952 7.4952 0 0 1 2.81475-2.6336 3.83956 3.83956 0 1 0 6.98126.00244 7.522 7.522 0 0 1 2.81774 2.63916 7.09785 7.09785 0 0 1 -6.309 3.54437z\" /></svg>");--_iui-checkbox-indeterminate-svg:url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\"><path d=\"m8 3v7.9a4.01179 4.01179 0 0 0 4-4 6.7509 6.7509 0 0 0 -.2-1.4l.1.1a6.89429 6.89429 0 0 1 2.4 2.4 8.39088 8.39088 0 0 1 -2.3 2.3 6.89412 6.89412 0 0 1 -3.9 1.2c-.03345 0-.06653-.00677-.1-.0072v1.5072a8.90686 8.90686 0 0 0 8-5 8.90686 8.90686 0 0 0 -8-5z\" opacity=\".33\" /><path d=\"m8 0a1 1 0 0 0 -1 1v2.07135a8.91637 8.91637 0 0 0 -7 4.92865 8.91637 8.91637 0 0 0 7 4.92865v2.07135a1 1 0 0 0 2 0v-14a1 1 0 0 0 -1-1zm-1.5 4.9a1.55426 1.55426 0 0 1 .5.087v2.81451a1.40746 1.40746 0 0 1 -.5.09849 1.538 1.538 0 0 1 -1.5-1.5 1.53794 1.53794 0 0 1 1.5-1.5zm-2.3 5.4a6.97279 6.97279 0 0 1 -2.5-2.3 6.89429 6.89429 0 0 1 2.4-2.4c.1 0 .1-.1.2-.1a3.194 3.194 0 0 0 -.3 1.4 4.0047 4.0047 0 0 0 3 3.857v.65289a6.37491 6.37491 0 0 1 -2.8-1.10989z\" /></svg>");--_iui-checkbox-unchecked-svg:url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\"><path d=\"m1.70671 12.879 11.17218-11.17219 1.4142 1.4142-11.17218 11.17218zm.99329-1.679 1.1-1.1a5.06317 5.06317 0 0 1 -2-2.1 7.48268 7.48268 0 0 1 6.2-3.5 4.86877 4.86877 0 0 1 1.2.1l1.3-1.3a10.07431 10.07431 0 0 0 -2.5-.3 8.84129 8.84129 0 0 0 -8 5 8.42455 8.42455 0 0 0 2.7 3.2zm10.7-6.4-1.1 1.1a7.08625 7.08625 0 0 1 2 2.1 7.50323 7.50323 0 0 1 -6.2 3.5 8.31665 8.31665 0 0 1 -1.3-.2l-1.3 1.3a8.909 8.909 0 0 0 6.4-.5 9.04344 9.04344 0 0 0 4.1-4.1 9.168 9.168 0 0 0 -2.6-3.2z\" /></svg>");--_iui-checkbox-border-color:transparent;--_iui-checkbox-background-color:transparent;outline-width:1px}._iui3-radio._iui3-checkbox-visibility:where(:not(:checked):not(:indeterminate)){--_iui-checkbox-svg-color:var(--iui-color-icon)}._iui3-radio._iui3-checkbox-visibility:where(:hover){--_iui-checkbox-border-color:transparent;--_iui-checkbox-background-color:var(--iui-color-background-transparent-hover)}._iui3-radio._iui3-checkbox-visibility:where(:disabled){--_iui-checkbox-svg-color:var(--iui-color-icon-disabled);--_iui-checkbox-background-color:var(--iui-color-background-disabled)}._iui3-radio._iui3-loading{--_iui-checkbox-border-color:transparent;--_iui-checkbox-background-color:transparent;opacity:0;cursor:wait;position:absolute}._iui3-radio:checked{--_iui-checkbox-mask-image:url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 16 16\" ><circle cx=\"8\" cy=\"8\" r=\"4\" /></svg>")}._iui3-radio:not(:checked),._iui3-radio:indeterminate{--_iui-checkbox-mask-image:var(--_iui-checkbox-unchecked-svg)}._iui3-radio-tile{-webkit-tap-highlight-color:hsl(var(--iui-color-accent-hsl)/var(--iui-opacity-6));inline-size:calc(var(--iui-size-xl)*5);padding:var(--iui-size-xs);z-index:1;outline:1px solid var(--iui-color-border);background-color:var(--iui-color-background);transition:outline-color var(--iui-duration-1)ease-out;align-content:center;justify-items:center;display:grid;position:relative}._iui3-radio-tile:where(:hover){z-index:2;outline-color:var(--iui-color-border-hover)}._iui3-radio-tile:where(:hover) ._iui3-radio-tile-icon svg{fill:var(--iui-color-icon-hover)}._iui3-radio-tile:where(:has(input:disabled),[data-iui-disabled=true]){outline-color:var(--iui-color-border-disabled);background-color:var(--iui-color-background-disabled)}._iui3-radio-tile-container{-webkit-user-select:none;user-select:none;isolation:isolate;flex-wrap:wrap;gap:1px;display:inline-flex;position:relative}._iui3-radio-tile-input{z-index:1;appearance:none;cursor:pointer;margin:0;position:absolute;inset:0}._iui3-radio-tile-input:checked{z-index:3;outline:2px solid var(--iui-color-border-accent);outline-offset:-2px}
|
|
697
697
|
}
|
|
698
698
|
|
|
699
699
|
@layer itwinui.v3{@media (forced-colors:active){._iui3-radio-tile-input:checked{outline-color:highlight}}
|
|
@@ -850,7 +850,7 @@
|
|
|
850
850
|
}
|
|
851
851
|
|
|
852
852
|
@layer itwinui.v3{
|
|
853
|
-
._iui3-table-body ._iui3-table-row:not([aria-selected=true])+[aria-selected=true] ._iui3-table-cell,._iui3-table-body ._iui3-table-row[aria-selected=true]:first-child ._iui3-table-cell{border-block-end-color:#0000}._iui3-table-body ._iui3-table-row[aria-selected=true] ._iui3-table-cell{border-color:var(--iui-color-border-accent);background-color:var(--iui-color-background-accent-muted)}._iui3-table-body ._iui3-table-row[aria-selected=true]+[aria-selected=true] ._iui3-table-cell{border-block-end-color:#0000;border-block-start-color:hsl(var(--iui-color-accent-hsl)/var(--iui-opacity-4))}._iui3-table-body ._iui3-table-row[aria-selected=true]:last-child ._iui3-table-cell{border-block-end-color:var(--iui-color-border-accent)}._iui3-table-body ._iui3-table-row[aria-selected=true]+:not([aria-selected=true]) ._iui3-table-cell,._iui3-table-body ._iui3-table-row[aria-selected=true]+._iui3-table-expanded-content+._iui3-table-row:not([aria-selected=true]) ._iui3-table-cell{border-block-start-color:var(--iui-color-border-accent)}._iui3-table-body ._iui3-table-row[aria-selected=true]+._iui3-table-expanded-content{border-color:transparent var(--iui-color-border-accent)}._iui3-table-body ._iui3-table-row[aria-selected=true]+._iui3-table-expanded-content:last-child{border-block-end-color:var(--iui-color-border-accent)}._iui3-table-body ._iui3-table-row._iui3-new{font-weight:var(--iui-font-weight-semibold)}._iui3-table-body ._iui3-table-row._iui3-new>._iui3-main-column:before{content:"•";font-size:var(--iui-font-size-4);color:var(--iui-color-icon-positive);position:absolute;inset-inline-start:0}._iui3-table-body ._iui3-table-row._iui3-loading,._iui3-table-body ._iui3-table-row ._iui3-table-cell[aria-disabled=true],._iui3-table-body ._iui3-table-row._iui3-table-expanded-content[aria-disabled=true]{--_iui-table-cell-icon-fill:var(--iui-color-icon-muted);--_iui-table-cell-image-filter:grayscale(100%);color:var(--iui-color-text-disabled)}._iui3-table-body ._iui3-table-row._iui3-loading img,._iui3-table-body ._iui3-table-row._iui3-loading svg,._iui3-table-body ._iui3-table-row._iui3-loading ._iui3-avatar,._iui3-table-body ._iui3-table-row ._iui3-table-cell[aria-disabled=true] img,._iui3-table-body ._iui3-table-row ._iui3-table-cell[aria-disabled=true] svg,._iui3-table-body ._iui3-table-row ._iui3-table-cell[aria-disabled=true] ._iui3-avatar,._iui3-table-body ._iui3-table-row._iui3-table-expanded-content[aria-disabled=true] img,._iui3-table-body ._iui3-table-row._iui3-table-expanded-content[aria-disabled=true] svg,._iui3-table-body ._iui3-table-row._iui3-table-expanded-content[aria-disabled=true] ._iui3-avatar{filter:var(--_iui-table-cell-image-filter)}._iui3-table-body ._iui3-table-row._iui3-loading{font-style:italic}._iui3-table-body ._iui3-table-row._iui3-loading,._iui3-table-body ._iui3-table-row._iui3-loading ._iui3-checkbox{cursor:progress}._iui3-table-body ._iui3-table-row ._iui3-table-cell[aria-disabled=true],._iui3-table-body ._iui3-table-row._iui3-table-expanded-content[aria-disabled=true]{cursor:not-allowed}._iui3-table-body ._iui3-table-row[data-iui-status=positive] ._iui3-table-cell:first-of-type,._iui3-table-body ._iui3-table-row[data-iui-status=positive]+._iui3-table-expanded-content{box-shadow:inset var(--iui-size-2xs)0 0 0 var(--iui-color-border-positive)}._iui3-table-body ._iui3-table-row[data-iui-status=positive] ._iui3-table-cell:first-of-type::selection,._iui3-table-body ._iui3-table-row[data-iui-status=positive] ._iui3-table-cell:first-of-type ::selection,._iui3-table-body ._iui3-table-row[data-iui-status=positive]+._iui3-table-expanded-content::selection,._iui3-table-body ._iui3-table-row[data-iui-status=positive]+._iui3-table-expanded-content ::selection{background-color:hsl(var(--iui-color-positive-hsl)/var(--iui-opacity-5))}._iui3-table-body ._iui3-table-row[data-iui-status=positive] ._iui3-table-cell-end-icon{--_iui-table-cell-icon-fill:var(--iui-color-icon-positive)}._iui3-table-body ._iui3-table-row[data-iui-status=positive] ._iui3-table-cell[aria-disabled=true] ._iui3-table-cell-end-icon{--_iui-table-cell-image-filter:none}._iui3-table-body ._iui3-table-row[data-iui-status=warning] ._iui3-table-cell:first-of-type,._iui3-table-body ._iui3-table-row[data-iui-status=warning]+._iui3-table-expanded-content{box-shadow:inset var(--iui-size-2xs)0 0 0 var(--iui-color-border-warning)}._iui3-table-body ._iui3-table-row[data-iui-status=warning] ._iui3-table-cell:first-of-type::selection,._iui3-table-body ._iui3-table-row[data-iui-status=warning] ._iui3-table-cell:first-of-type ::selection,._iui3-table-body ._iui3-table-row[data-iui-status=warning]+._iui3-table-expanded-content::selection,._iui3-table-body ._iui3-table-row[data-iui-status=warning]+._iui3-table-expanded-content ::selection{background-color:hsl(var(--iui-color-warning-hsl)/var(--iui-opacity-5))}._iui3-table-body ._iui3-table-row[data-iui-status=warning] ._iui3-table-cell-end-icon{--_iui-table-cell-icon-fill:var(--iui-color-icon-warning)}._iui3-table-body ._iui3-table-row[data-iui-status=warning] ._iui3-table-cell[aria-disabled=true] ._iui3-table-cell-end-icon{--_iui-table-cell-image-filter:none}._iui3-table-body ._iui3-table-row[data-iui-status=negative] ._iui3-table-cell:first-of-type,._iui3-table-body ._iui3-table-row[data-iui-status=negative]+._iui3-table-expanded-content{box-shadow:inset var(--iui-size-2xs)0 0 0 var(--iui-color-border-negative)}._iui3-table-body ._iui3-table-row[data-iui-status=negative] ._iui3-table-cell:first-of-type::selection,._iui3-table-body ._iui3-table-row[data-iui-status=negative] ._iui3-table-cell:first-of-type ::selection,._iui3-table-body ._iui3-table-row[data-iui-status=negative]+._iui3-table-expanded-content::selection,._iui3-table-body ._iui3-table-row[data-iui-status=negative]+._iui3-table-expanded-content ::selection{background-color:hsl(var(--iui-color-negative-hsl)/var(--iui-opacity-5))}._iui3-table-body ._iui3-table-row[data-iui-status=negative] ._iui3-table-cell-end-icon{--_iui-table-cell-icon-fill:var(--iui-color-icon-negative)}._iui3-table-body ._iui3-table-row[data-iui-status=negative] ._iui3-table-cell[aria-disabled=true] ._iui3-table-cell-end-icon{--_iui-table-cell-image-filter:none}._iui3-table-header-actions-container{flex-wrap:wrap;flex-grow:1;align-items:center;margin-inline-end:var(--iui-size-s);display:flex}._iui3-table-header-actions-container ._iui3-table-cell-end-icon{inline-size:unset;block-size:unset;margin:0;margin-inline-start:auto}._iui3-table-body{flex-direction:column;flex-grow:1;align-items:flex-start;display:flex}._iui3-table-body:has(>._iui3-table-empty){position:sticky;inset-inline-start:0}._iui3-table-body._iui3-scroll-snapping{scroll-snap-type:y mandatory}._iui3-table-body._iui3-scroll-snapping ._iui3-table-row{scroll-snap-align:start none}._iui3-table-body:last-child{border-end-end-radius:var(--iui-border-radius-1);border-end-start-radius:var(--iui-border-radius-1)}._iui3-table-body._iui3-zebra-striping ._iui3-table-row:nth-child(2n):not([aria-selected=true]) ._iui3-table-cell{background-color:var(--iui-color-background-zebra)}._iui3-table-body._iui3-zebra-striping ._iui3-table-row:nth-child(2n):not([aria-selected=true]):hover ._iui3-table-cell{background-color:var(--iui-color-background-hover)}._iui3-table-body>._iui3-table-empty{text-align:center;padding:var(--iui-size-xl);color:var(--iui-color-text-muted);background-color:var(--iui-color-background);flex-direction:column;flex-grow:1;justify-content:center;display:flex;position:sticky;inset-inline-start:50%;transform:translate(-50%)}._iui3-table-body-extra{justify-content:center;align-items:center;display:flex}._iui3-table-body-extra[data-iui-loading=true]{position:sticky;inset-inline-start:0}._iui3-table-cell{min-inline-size:var(--iui-size-2xl);flex-grow:1;flex-basis:var(--iui-size-2xl);word-break:break-word;align-items:center;padding-inline-start:var(--iui-size-m);display:flex;position:relative}._iui3-table-cell:first-of-type{border-inline-start:1px solid #0000;border-end-start-radius:inherit}._iui3-table-cell:last-of-type{border-inline-end:1px solid #0000}._iui3-table-cell._iui3-slot{inline-size:calc(var(--iui-size-l)*2);flex-grow:0;flex-basis:calc(var(--iui-size-l)*2);--iui-checkbox-target-size:32px;justify-content:center;align-items:center;min-inline-size:0;padding:0;display:flex}._iui3-table-cell._iui3-table-cell-sticky{z-index:2;position:sticky;inset-inline-start:var(--iui-table-sticky-left,initial);inset-inline-end:var(--iui-table-sticky-right,initial)}._iui3-table-cell:not(._iui3-slot):last-child{padding-inline-end:var(--iui-size-m)}._iui3-table-cell[data-iui-status=positive]::selection,._iui3-table-cell[data-iui-status=positive] ::selection{background-color:hsl(var(--iui-color-positive-hsl)/var(--iui-opacity-5))}._iui3-table-cell[data-iui-status=positive]:before{content:"";background-color:hsl(var(--iui-color-positive-hsl)/var(--iui-opacity-6));position:absolute;inset:0}._iui3-table-cell[data-iui-status=warning]::selection,._iui3-table-cell[data-iui-status=warning] ::selection{background-color:hsl(var(--iui-color-warning-hsl)/var(--iui-opacity-5))}._iui3-table-cell[data-iui-status=warning]:before{content:"";background-color:hsl(var(--iui-color-warning-hsl)/var(--iui-opacity-6));position:absolute;inset:0}._iui3-table-cell[data-iui-status=negative]::selection,._iui3-table-cell[data-iui-status=negative] ::selection{background-color:hsl(var(--iui-color-negative-hsl)/var(--iui-opacity-5))}._iui3-table-cell[data-iui-status=negative]:before{content:"";background-color:hsl(var(--iui-color-negative-hsl)/var(--iui-opacity-6));position:absolute;inset:0}._iui3-table-cell[contenteditable]{outline-offset:-1px}._iui3-table-cell[contenteditable]:hover{outline:1px solid var(--iui-color-border-accent)}._iui3-table-cell[contenteditable]:focus{background-color:var(--iui-color-background);outline:1px solid var(--iui-color-text-accent)}._iui3-table-cell-shadow-left{inline-size:var(--iui-size-l);pointer-events:none;box-shadow:inset -10px 0 5px -10px var(--iui-shadow-color);position:absolute;inset-block:-1px;inset-inline-start:0;transform:translate(-100%)}._iui3-table-header ._iui3-table-cell-shadow-left{inset-block:0}._iui3-table-cell-shadow-right{inline-size:var(--iui-size-l);pointer-events:none;box-shadow:inset 10px 0 5px -10px var(--iui-shadow-color);position:absolute;inset-block:-1px;inset-inline-end:0;transform:translate(100%)}._iui3-table-header ._iui3-table-cell-shadow-right{inset-block:0}._iui3-table-paginator{vertical-align:baseline;padding:0;padding-inline:var(--iui-size-m);-webkit-user-select:none;user-select:none;background-color:var(--iui-color-background);border:none;border-block-start:1px solid var(--iui-color-border);border-end-end-radius:var(--iui-border-radius-1);border-end-start-radius:var(--iui-border-radius-1);justify-content:space-between;align-items:center;margin:0;display:flex}._iui3-table-paginator>._iui3-left,._iui3-table-paginator>._iui3-center,._iui3-table-paginator>._iui3-right{flex:1;align-items:center;min-inline-size:0;display:flex;position:relative}._iui3-table-paginator>._iui3-center{color:var(--iui-color-text);flex:2;justify-content:center}._iui3-table-paginator>._iui3-right{justify-content:flex-end}._iui3-table-paginator-page-size-label{color:var(--iui-color-text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}._iui3-table-paginator-ellipsis{padding-inline:var(--iui-size-xs);justify-content:center;align-items:center;display:flex}._iui3-table-paginator-ellipsis-small{padding-inline:var(--iui-size-2xs)}._iui3-table-paginator-pages-group{margin-inline:var(--iui-size-xs);align-items:center;display:inline-flex}._iui3-table-paginator-page-button{vertical-align:baseline;vertical-align:middle;border-radius:var(--iui-border-radius-1);font-family:inherit;line-height:1.2;font-size:var(--iui-font-size-1);font-weight:var(--iui-font-weight-normal);-webkit-user-select:none;user-select:none;cursor:pointer;white-space:nowrap;border:none;border:1px solid var(--_iui-button-border-color);background:var(--_iui-button-background-color);color:var(--_iui-button-text-color);justify-content:center;align-items:center;gap:var(--_iui-button-gap);min-block-size:var(--_iui-button-min-height);min-inline-size:var(--_iui-button-min-height);padding:0;padding-block:var(--_iui-button-padding-block);padding-inline:var(--_iui-button-padding-inline);transition:background-color var(--iui-duration-1)ease-out,border-color var(--iui-duration-1)ease-out;-webkit-tap-highlight-color:transparent;--_iui-button-gap:var(--iui-size-xs);--_iui-button-padding-block:var(--iui-size-2xs);--_iui-button-padding-inline:var(--iui-size-xs);--_iui-button-min-height:var(--iui-component-height);--_iui-button-text-color:var(--iui-color-text);--_iui-button-background-color:transparent;--_iui-button-border-color:transparent;--_iui-button-icon-fill:var(--iui-color-icon);flex-shrink:0;margin:0;text-decoration:none;display:inline-flex;position:relative}._iui3-table-paginator-page-button:focus-visible{outline:1px solid var(--iui-color-border-accent);outline-offset:-1px}._iui3-table-paginator-page-button:where(:hover,:active){--_iui-button-text-color:var(--iui-color-text-hover);--_iui-button-background-color:var(--iui-color-background-transparent-hover);--_iui-button-icon-fill:var(--iui-color-icon-hover)}._iui3-table-paginator-page-button:where(:focus){outline-offset:-1px;outline-width:1px}._iui3-table-paginator-page-button:where([disabled],:disabled,[aria-disabled=true],[data-iui-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)}._iui3-table-paginator-page-button[data-iui-shift=left]{margin-inline-start:calc(-1*var(--_iui-button-padding-inline))}._iui3-table-paginator-page-button[data-iui-shift=right]{margin-inline-end:calc(-1*var(--_iui-button-padding-inline))}._iui3-table-paginator-page-button-small{--_iui-button-gap:var(--iui-size-2xs);--_iui-button-padding-block:0;--_iui-button-padding-inline:var(--iui-size-xs);--_iui-button-min-height:var(--iui-component-height-small)}._iui3-table-paginator-page-button[data-iui-active=true]{--_iui-button-active-stripe-inset-block:calc(100% - var(--iui-size-2xs))var(--iui-size-3xs);--_iui-button-active-stripe-inset-inline:var(--iui-size-3xs);--_iui-button-active-stripe-background:var(--iui-color-border-accent);--_iui-button-text-color:var(--iui-color-text-accent);--_iui-button-icon-fill:var(--iui-color-icon-accent);--_iui-button-background-color:hsl(var(--iui-color-accent-hsl)/var(--iui-opacity-6))}._iui3-table-paginator-page-button[data-iui-active=true]:after{content:"";inset-block:var(--_iui-button-active-stripe-inset-block);inset-inline:var(--_iui-button-active-stripe-inset-inline);background:var(--_iui-button-active-stripe-background);position:absolute}._iui3-table-paginator-page-button[data-iui-active=true]:is([disabled],:disabled,[aria-disabled=true],[data-iui-disabled=true]){--_iui-button-active-stripe-background:var(--iui-color-icon-disabled);--_iui-button-text-color:var(--iui-color-text-disabled);--_iui-button-icon-fill:var(--iui-color-icon-disabled)}._iui3-table-column-filter{padding:var(--iui-size-s);align-items:flex-end;gap:var(--iui-size-s);flex-direction:column;display:inline-flex}._iui3-table-column-filter>._iui3-input-grid:not([data-iui-label-placement=inline]){inline-size:100%}._iui3-table-column-filter>._iui3-button-bar{align-content:center;gap:var(--iui-size-xs);inline-size:100%;display:flex}._iui3-table-column-filter>._iui3-button-bar>._iui3-button:first-of-type{margin-inline-start:auto}._iui3-tabs-wrapper{display:grid;position:relative}._iui3-tabs-wrapper._iui3-horizontal{contain:inline-size;grid-template:"tabs tabs-actions""tabs-content tabs-content"1fr/1fr auto}._iui3-tabs-wrapper._iui3-horizontal ._iui3-tabs{animation-timeline:scroll(self inline);animation-name:_iui3-scroll-shadow-inset-horizontal;animation-timing-function:linear;display:flex;overflow-x:auto;container-type:inline-size}._iui3-tabs-wrapper._iui3-horizontal ._iui3-tabs._iui3-borderless{min-block-size:calc(var(--iui-size-s)*3 + var(--iui-size-xs))}@keyframes _iui3-scroll-shadow-inset-horizontal{0%{-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 0% 95%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 0% 95%,#0000 100%)}5%{-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 5% 95%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 5% 95%,#0000 100%)}95%{-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 5% 95%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 5% 95%,#0000 100%)}to{-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 5% 100%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 5% 100%,#0000 100%)}}._iui3-tabs-wrapper._iui3-horizontal ._iui3-tab{flex-shrink:0;max-inline-size:60cqi}._iui3-tabs-wrapper._iui3-horizontal ._iui3-tab:after{block-size:0;inline-size:100%}._iui3-tabs-wrapper._iui3-horizontal ._iui3-tab[aria-selected=true]:after{block-size:var(--iui-size-3xs)}._iui3-tabs-wrapper._iui3-vertical{grid-template:"tabs tabs-content"1fr"tabs-actions tabs-content"/auto minmax(0,1fr);block-size:100%}._iui3-tabs-wrapper._iui3-vertical ._iui3-tabs{animation-timeline:scroll(self inline);align-content:start;animation-name:_iui3-scroll-shadow-inset-vertical;animation-timing-function:linear;display:grid;overflow:hidden auto}._iui3-tabs-wrapper._iui3-vertical ._iui3-tabs~._iui3-tabs-content{overflow:auto}@keyframes _iui3-scroll-shadow-inset-vertical{0%{-webkit-mask-image:linear-gradient(#0000 0%,#000 0% 95%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 0% 95%,#0000 100%)}5%{-webkit-mask-image:linear-gradient(#0000 0%,#000 5% 95%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 5% 95%,#0000 100%)}95%{-webkit-mask-image:linear-gradient(#0000 0%,#000 5% 95%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 5% 95%,#0000 100%)}to{-webkit-mask-image:linear-gradient(#0000 0%,#000 5% 100%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 5% 100%,#0000 100%)}}._iui3-tabs-wrapper._iui3-vertical ._iui3-tab:after{block-size:100%;inline-size:0}._iui3-tabs-wrapper._iui3-vertical ._iui3-tab[aria-selected=true]:after{inline-size:var(--iui-size-3xs)}._iui3-tabs-actions-wrapper{flex-direction:column;grid-area:tabs-actions;justify-content:center;display:flex}:where(._iui3-tabs-wrapper._iui3-horizontal) ._iui3-tabs-actions-wrapper{margin-inline-start:var(--iui-size-s)}:where(._iui3-tabs-wrapper._iui3-horizontal) ._iui3-tabs-actions-wrapper:before,:where(._iui3-tabs-wrapper._iui3-horizontal) ._iui3-tabs-actions-wrapper:after{content:"";flex:1}:where(._iui3-tabs-wrapper._iui3-horizontal) :where(._iui3-tabs._iui3-default)+._iui3-tabs-actions-wrapper:after{min-block-size:var(--iui-size-2xs)}:where(._iui3-tabs-wrapper._iui3-horizontal) :where(._iui3-tabs._iui3-borderless)+._iui3-tabs-actions-wrapper:after{min-block-size:var(--iui-size-xs)}:where(._iui3-tabs-wrapper._iui3-vertical) ._iui3-tabs-actions-wrapper{padding-inline:var(--iui-size-xs);margin-block-start:var(--iui-size-s)}._iui3-tabs-actions{display:flex}:where(._iui3-tabs-wrapper._iui3-horizontal) ._iui3-tabs-actions{align-items:center;column-gap:var(--iui-size-xs)}:where(._iui3-tabs-wrapper._iui3-vertical) ._iui3-tabs-actions{align-items:stretch;row-gap:var(--iui-size-xs);flex-direction:column}._iui3-tabs-content{grid-area:tabs-content}._iui3-tabs-content[hidden]{display:none!important}._iui3-tabs{position:relative}
|
|
853
|
+
._iui3-table-body ._iui3-table-row:not([aria-selected=true])+[aria-selected=true] ._iui3-table-cell,._iui3-table-body ._iui3-table-row[aria-selected=true]:first-child ._iui3-table-cell{border-block-end-color:#0000}._iui3-table-body ._iui3-table-row[aria-selected=true] ._iui3-table-cell{border-color:var(--iui-color-border-accent);background-color:var(--iui-color-background-accent-muted)}._iui3-table-body ._iui3-table-row[aria-selected=true]+[aria-selected=true] ._iui3-table-cell{border-block-end-color:#0000;border-block-start-color:hsl(var(--iui-color-accent-hsl)/var(--iui-opacity-4))}._iui3-table-body ._iui3-table-row[aria-selected=true]:last-child ._iui3-table-cell{border-block-end-color:var(--iui-color-border-accent)}._iui3-table-body ._iui3-table-row[aria-selected=true]+:not([aria-selected=true]) ._iui3-table-cell,._iui3-table-body ._iui3-table-row[aria-selected=true]+._iui3-table-expanded-content+._iui3-table-row:not([aria-selected=true]) ._iui3-table-cell{border-block-start-color:var(--iui-color-border-accent)}._iui3-table-body ._iui3-table-row[aria-selected=true]+._iui3-table-expanded-content{border-color:transparent var(--iui-color-border-accent)}._iui3-table-body ._iui3-table-row[aria-selected=true]+._iui3-table-expanded-content:last-child{border-block-end-color:var(--iui-color-border-accent)}._iui3-table-body ._iui3-table-row._iui3-new{font-weight:var(--iui-font-weight-semibold)}._iui3-table-body ._iui3-table-row._iui3-new>._iui3-main-column:before{content:"•";font-size:var(--iui-font-size-4);color:var(--iui-color-icon-positive);position:absolute;inset-inline-start:0}._iui3-table-body ._iui3-table-row._iui3-loading,._iui3-table-body ._iui3-table-row ._iui3-table-cell[aria-disabled=true],._iui3-table-body ._iui3-table-row._iui3-table-expanded-content[aria-disabled=true]{--_iui-table-cell-icon-fill:var(--iui-color-icon-muted);--_iui-table-cell-image-filter:grayscale(100%);color:var(--iui-color-text-disabled)}._iui3-table-body ._iui3-table-row._iui3-loading img,._iui3-table-body ._iui3-table-row._iui3-loading svg,._iui3-table-body ._iui3-table-row._iui3-loading ._iui3-avatar,._iui3-table-body ._iui3-table-row ._iui3-table-cell[aria-disabled=true] img,._iui3-table-body ._iui3-table-row ._iui3-table-cell[aria-disabled=true] svg,._iui3-table-body ._iui3-table-row ._iui3-table-cell[aria-disabled=true] ._iui3-avatar,._iui3-table-body ._iui3-table-row._iui3-table-expanded-content[aria-disabled=true] img,._iui3-table-body ._iui3-table-row._iui3-table-expanded-content[aria-disabled=true] svg,._iui3-table-body ._iui3-table-row._iui3-table-expanded-content[aria-disabled=true] ._iui3-avatar{filter:var(--_iui-table-cell-image-filter)}._iui3-table-body ._iui3-table-row._iui3-loading{font-style:italic}._iui3-table-body ._iui3-table-row._iui3-loading,._iui3-table-body ._iui3-table-row._iui3-loading ._iui3-checkbox{cursor:progress}._iui3-table-body ._iui3-table-row ._iui3-table-cell[aria-disabled=true],._iui3-table-body ._iui3-table-row._iui3-table-expanded-content[aria-disabled=true]{cursor:not-allowed}._iui3-table-body ._iui3-table-row[data-iui-status=positive] ._iui3-table-cell:first-of-type,._iui3-table-body ._iui3-table-row[data-iui-status=positive]+._iui3-table-expanded-content{box-shadow:inset var(--iui-size-2xs)0 0 0 var(--iui-color-border-positive)}._iui3-table-body ._iui3-table-row[data-iui-status=positive] ._iui3-table-cell:first-of-type::selection,._iui3-table-body ._iui3-table-row[data-iui-status=positive] ._iui3-table-cell:first-of-type ::selection,._iui3-table-body ._iui3-table-row[data-iui-status=positive]+._iui3-table-expanded-content::selection,._iui3-table-body ._iui3-table-row[data-iui-status=positive]+._iui3-table-expanded-content ::selection{background-color:hsl(var(--iui-color-positive-hsl)/var(--iui-opacity-5))}._iui3-table-body ._iui3-table-row[data-iui-status=positive] ._iui3-table-cell-end-icon{--_iui-table-cell-icon-fill:var(--iui-color-icon-positive)}._iui3-table-body ._iui3-table-row[data-iui-status=positive] ._iui3-table-cell[aria-disabled=true] ._iui3-table-cell-end-icon{--_iui-table-cell-image-filter:none}._iui3-table-body ._iui3-table-row[data-iui-status=warning] ._iui3-table-cell:first-of-type,._iui3-table-body ._iui3-table-row[data-iui-status=warning]+._iui3-table-expanded-content{box-shadow:inset var(--iui-size-2xs)0 0 0 var(--iui-color-border-warning)}._iui3-table-body ._iui3-table-row[data-iui-status=warning] ._iui3-table-cell:first-of-type::selection,._iui3-table-body ._iui3-table-row[data-iui-status=warning] ._iui3-table-cell:first-of-type ::selection,._iui3-table-body ._iui3-table-row[data-iui-status=warning]+._iui3-table-expanded-content::selection,._iui3-table-body ._iui3-table-row[data-iui-status=warning]+._iui3-table-expanded-content ::selection{background-color:hsl(var(--iui-color-warning-hsl)/var(--iui-opacity-5))}._iui3-table-body ._iui3-table-row[data-iui-status=warning] ._iui3-table-cell-end-icon{--_iui-table-cell-icon-fill:var(--iui-color-icon-warning)}._iui3-table-body ._iui3-table-row[data-iui-status=warning] ._iui3-table-cell[aria-disabled=true] ._iui3-table-cell-end-icon{--_iui-table-cell-image-filter:none}._iui3-table-body ._iui3-table-row[data-iui-status=negative] ._iui3-table-cell:first-of-type,._iui3-table-body ._iui3-table-row[data-iui-status=negative]+._iui3-table-expanded-content{box-shadow:inset var(--iui-size-2xs)0 0 0 var(--iui-color-border-negative)}._iui3-table-body ._iui3-table-row[data-iui-status=negative] ._iui3-table-cell:first-of-type::selection,._iui3-table-body ._iui3-table-row[data-iui-status=negative] ._iui3-table-cell:first-of-type ::selection,._iui3-table-body ._iui3-table-row[data-iui-status=negative]+._iui3-table-expanded-content::selection,._iui3-table-body ._iui3-table-row[data-iui-status=negative]+._iui3-table-expanded-content ::selection{background-color:hsl(var(--iui-color-negative-hsl)/var(--iui-opacity-5))}._iui3-table-body ._iui3-table-row[data-iui-status=negative] ._iui3-table-cell-end-icon{--_iui-table-cell-icon-fill:var(--iui-color-icon-negative)}._iui3-table-body ._iui3-table-row[data-iui-status=negative] ._iui3-table-cell[aria-disabled=true] ._iui3-table-cell-end-icon{--_iui-table-cell-image-filter:none}._iui3-table-header-actions-container{flex-wrap:wrap;flex-grow:1;align-items:center;margin-inline-end:var(--iui-size-s);display:flex}._iui3-table-header-actions-container ._iui3-table-cell-end-icon{inline-size:unset;block-size:unset;margin:0;margin-inline-start:auto}._iui3-table-body{flex-direction:column;flex-grow:1;align-items:flex-start;display:flex}._iui3-table-body:has(>._iui3-table-empty){position:sticky;inset-inline-start:0}._iui3-table-body._iui3-scroll-snapping{scroll-snap-type:y mandatory}._iui3-table-body._iui3-scroll-snapping ._iui3-table-row{scroll-snap-align:start none}._iui3-table-body:last-child{border-end-end-radius:var(--iui-border-radius-1);border-end-start-radius:var(--iui-border-radius-1)}._iui3-table-body._iui3-zebra-striping ._iui3-table-row:nth-child(2n):not([aria-selected=true]) ._iui3-table-cell{background-color:var(--iui-color-background-zebra)}._iui3-table-body._iui3-zebra-striping ._iui3-table-row:nth-child(2n):not([aria-selected=true]):hover ._iui3-table-cell{background-color:var(--iui-color-background-hover)}._iui3-table-body>._iui3-table-empty{text-align:center;padding:var(--iui-size-xl);color:var(--iui-color-text-muted);background-color:var(--iui-color-background);flex-direction:column;flex-grow:1;justify-content:center;display:flex;position:sticky;inset-inline-start:50%;transform:translate(-50%)}._iui3-table-body-extra{justify-content:center;align-items:center;display:flex}._iui3-table-body-extra[data-iui-loading=true]{position:sticky;inset-inline-start:0}._iui3-table-cell{min-inline-size:var(--iui-size-2xl);flex-grow:1;flex-basis:var(--iui-size-2xl);word-break:break-word;align-items:center;padding-inline-start:var(--iui-size-m);display:flex;position:relative}._iui3-table-cell:first-of-type{border-inline-start:1px solid #0000;border-end-start-radius:inherit}._iui3-table-cell:last-of-type{border-inline-end:1px solid #0000}._iui3-table-cell._iui3-slot{inline-size:calc(var(--iui-size-l)*2);flex-grow:0;flex-basis:calc(var(--iui-size-l)*2);--iui-checkbox-target-size:32px;justify-content:center;align-items:center;min-inline-size:0;padding:0;display:flex}._iui3-table-cell._iui3-table-cell-sticky{z-index:2;position:sticky;inset-inline-start:var(--iui-table-sticky-left,initial);inset-inline-end:var(--iui-table-sticky-right,initial)}._iui3-table-cell:not(._iui3-slot):last-child{padding-inline-end:var(--iui-size-m)}._iui3-table-cell[data-iui-status=positive]::selection,._iui3-table-cell[data-iui-status=positive] ::selection{background-color:hsl(var(--iui-color-positive-hsl)/var(--iui-opacity-5))}._iui3-table-cell[data-iui-status=positive]:before{content:"";background-color:hsl(var(--iui-color-positive-hsl)/var(--iui-opacity-6));position:absolute;inset:0}._iui3-table-cell[data-iui-status=warning]::selection,._iui3-table-cell[data-iui-status=warning] ::selection{background-color:hsl(var(--iui-color-warning-hsl)/var(--iui-opacity-5))}._iui3-table-cell[data-iui-status=warning]:before{content:"";background-color:hsl(var(--iui-color-warning-hsl)/var(--iui-opacity-6));position:absolute;inset:0}._iui3-table-cell[data-iui-status=negative]::selection,._iui3-table-cell[data-iui-status=negative] ::selection{background-color:hsl(var(--iui-color-negative-hsl)/var(--iui-opacity-5))}._iui3-table-cell[data-iui-status=negative]:before{content:"";background-color:hsl(var(--iui-color-negative-hsl)/var(--iui-opacity-6));position:absolute;inset:0}._iui3-table-cell[contenteditable]{outline-offset:-1px}._iui3-table-cell[contenteditable]:hover{outline:1px solid var(--iui-color-border-accent)}._iui3-table-cell[contenteditable]:focus{background-color:var(--iui-color-background);outline:1px solid var(--iui-color-text-accent)}._iui3-table-cell-shadow-left{inline-size:var(--iui-size-l);pointer-events:none;box-shadow:inset -10px 0 5px -10px var(--iui-shadow-color);position:absolute;inset-block:-1px;inset-inline-start:0;transform:translate(-100%)}._iui3-table-header ._iui3-table-cell-shadow-left{inset-block:0}._iui3-table-cell-shadow-right{inline-size:var(--iui-size-l);pointer-events:none;box-shadow:inset 10px 0 5px -10px var(--iui-shadow-color);position:absolute;inset-block:-1px;inset-inline-end:0;transform:translate(100%)}._iui3-table-header ._iui3-table-cell-shadow-right{inset-block:0}._iui3-table-paginator{vertical-align:baseline;padding:0;padding-inline:var(--iui-size-m);-webkit-user-select:none;user-select:none;background-color:var(--iui-color-background);border:none;border-block-start:1px solid var(--iui-color-border);border-end-end-radius:var(--iui-border-radius-1);border-end-start-radius:var(--iui-border-radius-1);justify-content:space-between;align-items:center;margin:0;display:flex}._iui3-table-paginator>._iui3-left,._iui3-table-paginator>._iui3-center,._iui3-table-paginator>._iui3-right{flex:1;align-items:center;min-inline-size:0;display:flex;position:relative}._iui3-table-paginator>._iui3-center{color:var(--iui-color-text);flex:2;justify-content:center}._iui3-table-paginator>._iui3-right{justify-content:flex-end}._iui3-table-paginator-page-size-label{color:var(--iui-color-text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}._iui3-table-paginator-ellipsis{padding-inline:var(--iui-size-xs);justify-content:center;align-items:center;display:flex}._iui3-table-paginator-ellipsis-small{padding-inline:var(--iui-size-2xs)}._iui3-table-paginator-pages-group{margin-inline:var(--iui-size-xs);align-items:center;display:inline-flex}._iui3-table-paginator-page-button{vertical-align:baseline;vertical-align:middle;border-radius:var(--iui-border-radius-1);font-family:inherit;line-height:1.2;font-size:var(--iui-font-size-1);font-weight:var(--iui-font-weight-normal);-webkit-user-select:none;user-select:none;cursor:pointer;white-space:nowrap;border:none;border:1px solid var(--_iui-button-border-color);background:var(--_iui-button-background-color);color:var(--_iui-button-text-color);justify-content:center;align-items:center;gap:var(--_iui-button-gap);min-block-size:var(--_iui-button-min-height);min-inline-size:var(--_iui-button-min-height);padding:0;padding-block:var(--_iui-button-padding-block);padding-inline:var(--_iui-button-padding-inline);transition:background-color var(--iui-duration-1)ease-out,border-color var(--iui-duration-1)ease-out;-webkit-tap-highlight-color:transparent;--_iui-button-gap:var(--iui-size-xs);--_iui-button-padding-block:var(--iui-size-2xs);--_iui-button-padding-inline:var(--iui-size-xs);--_iui-button-min-height:var(--iui-component-height);--_iui-button-text-color:var(--iui-color-text);--_iui-button-background-color:transparent;--_iui-button-border-color:transparent;--_iui-button-icon-fill:var(--iui-color-icon);flex-shrink:0;margin:0;text-decoration:none;display:inline-flex;position:relative}._iui3-table-paginator-page-button:focus-visible{outline:1px solid var(--iui-color-border-accent);outline-offset:-1px}._iui3-table-paginator-page-button:where(:hover,:active){--_iui-button-text-color:var(--iui-color-text-hover);--_iui-button-background-color:var(--iui-color-background-transparent-hover);--_iui-button-icon-fill:var(--iui-color-icon-hover)}._iui3-table-paginator-page-button:where(:focus){outline-offset:-1px;outline-width:1px}._iui3-table-paginator-page-button:where([disabled],:disabled,[aria-disabled=true],[data-iui-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)}._iui3-table-paginator-page-button[data-iui-shift=left]{margin-inline-start:calc(-1*var(--_iui-button-padding-inline))}._iui3-table-paginator-page-button[data-iui-shift=right]{margin-inline-end:calc(-1*var(--_iui-button-padding-inline))}._iui3-table-paginator-page-button-small{--_iui-button-gap:var(--iui-size-2xs);--_iui-button-padding-block:0;--_iui-button-padding-inline:var(--iui-size-xs);--_iui-button-min-height:var(--iui-component-height-small)}._iui3-table-paginator-page-button[data-iui-active=true]{--_iui-button-active-stripe-inset-block:calc(100% - var(--iui-size-2xs))var(--iui-size-3xs);--_iui-button-active-stripe-inset-inline:var(--iui-size-3xs);--_iui-button-active-stripe-background:var(--iui-color-border-accent);--_iui-button-text-color:var(--iui-color-text-accent);--_iui-button-icon-fill:var(--iui-color-icon-accent);--_iui-button-background-color:hsl(var(--iui-color-accent-hsl)/var(--iui-opacity-6))}._iui3-table-paginator-page-button[data-iui-active=true]:after{content:"";inset-block:var(--_iui-button-active-stripe-inset-block);inset-inline:var(--_iui-button-active-stripe-inset-inline);background:var(--_iui-button-active-stripe-background);position:absolute}._iui3-table-paginator-page-button[data-iui-active=true]:is([disabled],:disabled,[aria-disabled=true],[data-iui-disabled=true]){--_iui-button-active-stripe-background:var(--iui-color-icon-disabled);--_iui-button-text-color:var(--iui-color-text-disabled);--_iui-button-icon-fill:var(--iui-color-icon-disabled)}._iui3-table-column-filter{padding:var(--iui-size-s);align-items:flex-end;gap:var(--iui-size-s);flex-direction:column;display:inline-flex}._iui3-table-column-filter>._iui3-input-grid:not([data-iui-label-placement=inline]){inline-size:100%}._iui3-table-column-filter>._iui3-button-bar{align-content:center;gap:var(--iui-size-xs);inline-size:100%;display:flex}._iui3-table-column-filter>._iui3-button-bar>._iui3-button:first-of-type{margin-inline-start:auto}._iui3-tabs-wrapper{display:grid;position:relative}._iui3-tabs-wrapper._iui3-horizontal{contain:inline-size;grid-template:"tabs tabs-actions""tabs-content tabs-content"1fr/1fr auto;inline-size:100%}._iui3-tabs-wrapper._iui3-horizontal ._iui3-tabs{animation-timeline:scroll(self inline);animation-name:_iui3-scroll-shadow-inset-horizontal;animation-timing-function:linear;display:flex;overflow-x:auto;container-type:inline-size}._iui3-tabs-wrapper._iui3-horizontal ._iui3-tabs._iui3-borderless{min-block-size:calc(var(--iui-size-s)*3 + var(--iui-size-xs))}@keyframes _iui3-scroll-shadow-inset-horizontal{0%{-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 0% 95%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 0% 95%,#0000 100%)}5%{-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 5% 95%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 5% 95%,#0000 100%)}95%{-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 5% 95%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 5% 95%,#0000 100%)}to{-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 5% 100%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 5% 100%,#0000 100%)}}._iui3-tabs-wrapper._iui3-horizontal ._iui3-tab{flex-shrink:0;max-inline-size:60cqi}._iui3-tabs-wrapper._iui3-horizontal ._iui3-tab:after{block-size:0;inline-size:100%}._iui3-tabs-wrapper._iui3-horizontal ._iui3-tab[aria-selected=true]:after{block-size:var(--iui-size-3xs)}._iui3-tabs-wrapper._iui3-vertical{grid-template:"tabs tabs-content"1fr"tabs-actions tabs-content"/auto minmax(0,1fr);block-size:100%}._iui3-tabs-wrapper._iui3-vertical ._iui3-tabs{animation-timeline:scroll(self inline);align-content:start;animation-name:_iui3-scroll-shadow-inset-vertical;animation-timing-function:linear;display:grid;overflow:hidden auto}._iui3-tabs-wrapper._iui3-vertical ._iui3-tabs~._iui3-tabs-content{overflow:auto}@keyframes _iui3-scroll-shadow-inset-vertical{0%{-webkit-mask-image:linear-gradient(#0000 0%,#000 0% 95%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 0% 95%,#0000 100%)}5%{-webkit-mask-image:linear-gradient(#0000 0%,#000 5% 95%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 5% 95%,#0000 100%)}95%{-webkit-mask-image:linear-gradient(#0000 0%,#000 5% 95%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 5% 95%,#0000 100%)}to{-webkit-mask-image:linear-gradient(#0000 0%,#000 5% 100%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 5% 100%,#0000 100%)}}._iui3-tabs-wrapper._iui3-vertical ._iui3-tab:after{block-size:100%;inline-size:0}._iui3-tabs-wrapper._iui3-vertical ._iui3-tab[aria-selected=true]:after{inline-size:var(--iui-size-3xs)}._iui3-tabs-actions-wrapper{flex-direction:column;grid-area:tabs-actions;justify-content:center;display:flex}:where(._iui3-tabs-wrapper._iui3-horizontal) ._iui3-tabs-actions-wrapper{margin-inline-start:var(--iui-size-s)}:where(._iui3-tabs-wrapper._iui3-horizontal) ._iui3-tabs-actions-wrapper:before,:where(._iui3-tabs-wrapper._iui3-horizontal) ._iui3-tabs-actions-wrapper:after{content:"";flex:1}:where(._iui3-tabs-wrapper._iui3-horizontal) :where(._iui3-tabs._iui3-default)+._iui3-tabs-actions-wrapper:after{min-block-size:var(--iui-size-2xs)}:where(._iui3-tabs-wrapper._iui3-horizontal) :where(._iui3-tabs._iui3-borderless)+._iui3-tabs-actions-wrapper:after{min-block-size:var(--iui-size-xs)}:where(._iui3-tabs-wrapper._iui3-vertical) ._iui3-tabs-actions-wrapper{padding-inline:var(--iui-size-xs);margin-block-start:var(--iui-size-s)}._iui3-tabs-actions{display:flex}:where(._iui3-tabs-wrapper._iui3-horizontal) ._iui3-tabs-actions{align-items:center;column-gap:var(--iui-size-xs)}:where(._iui3-tabs-wrapper._iui3-vertical) ._iui3-tabs-actions{align-items:stretch;row-gap:var(--iui-size-xs);flex-direction:column}._iui3-tabs-content{grid-area:tabs-content}._iui3-tabs-content[hidden]{display:none!important}._iui3-tabs{position:relative}
|
|
854
854
|
}
|
|
855
855
|
|
|
856
856
|
@layer itwinui.v3{@media (prefers-reduced-motion:no-preference){._iui3-tabs{scroll-behavior:smooth}}
|