@servicetitan/anvil2 1.32.0 → 1.33.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +32 -0
- package/dist/{Alert-BcjnX40X-DdR5a1fS.js → Alert-BcjnX40X-DK8meb2Z.js} +2 -3
- package/dist/{Alert-BcjnX40X-DdR5a1fS.js.map → Alert-BcjnX40X-DK8meb2Z.js.map} +1 -1
- package/dist/{Alert-S-riTJp2.js → Alert-D4O5XFXo.js} +2 -2
- package/dist/{Alert-S-riTJp2.js.map → Alert-D4O5XFXo.js.map} +1 -1
- package/dist/Alert.js +1 -1
- package/dist/{Announcement-BUNvjkVo.js → Announcement-D30SgkZg.js} +2 -3
- package/dist/{Announcement-BUNvjkVo.js.map → Announcement-D30SgkZg.js.map} +1 -1
- package/dist/Announcement.js +1 -1
- package/dist/{Calendar-BzyPkdAu.js → Calendar-DFbt6fWP.js} +2 -2
- package/dist/{Calendar-BzyPkdAu.js.map → Calendar-DFbt6fWP.js.map} +1 -1
- package/dist/{Calendar-Zfsv8y4j-Vja4BE7W.js → Calendar-ch54N6OS-0vxeSJFt.js} +17 -15
- package/dist/{Calendar-Zfsv8y4j-Vja4BE7W.js.map → Calendar-ch54N6OS-0vxeSJFt.js.map} +1 -1
- package/dist/Calendar.js +1 -1
- package/dist/{Checkbox-DdIDGlbE.js → Checkbox-C4JF-LvE.js} +2 -2
- package/dist/{Checkbox-DdIDGlbE.js.map → Checkbox-C4JF-LvE.js.map} +1 -1
- package/dist/{Checkbox-B1OkhWY6-BXBzUXK4.js → Checkbox-ZLz_xJx9-CxqouREp.js} +44 -10
- package/dist/Checkbox-ZLz_xJx9-CxqouREp.js.map +1 -0
- package/dist/Checkbox.css +69 -72
- package/dist/Checkbox.js +1 -1
- package/dist/{Checkbox.module-DMrZNVpb-DOdjd86H.js → Checkbox.module-B6diiZe0-DDAy-YPr.js} +19 -18
- package/dist/Checkbox.module-B6diiZe0-DDAy-YPr.js.map +1 -0
- package/dist/{Combobox-wrmxS_0C.js → Combobox-VCa5Qplb.js} +5 -6
- package/dist/Combobox-VCa5Qplb.js.map +1 -0
- package/dist/Combobox.js +1 -1
- package/dist/{DateField-Bef-bUUm.js → DateField-Ex0bquMB.js} +6 -6
- package/dist/{DateField-Bef-bUUm.js.map → DateField-Ex0bquMB.js.map} +1 -1
- package/dist/DateField.js +1 -1
- package/dist/{DaysOfTheWeek-DmdZW53u.js → DaysOfTheWeek-CQqCFF2f.js} +3 -4
- package/dist/DaysOfTheWeek-CQqCFF2f.js.map +1 -0
- package/dist/DaysOfTheWeek.js +1 -1
- package/dist/Dialog-QtgPY3ji.js +333 -0
- package/dist/Dialog-QtgPY3ji.js.map +1 -0
- package/dist/Dialog.css +146 -0
- package/dist/Dialog.js +1 -1
- package/dist/{DndSort-8xmZRn1w.js → DndSort-BVcdqJLB.js} +2 -2
- package/dist/{DndSort-8xmZRn1w.js.map → DndSort-BVcdqJLB.js.map} +1 -1
- package/dist/DndSort.js +1 -1
- package/dist/{Drawer-BEIt_Ylz.js → Drawer-18QCWW4F.js} +2 -2
- package/dist/{Drawer-BEIt_Ylz.js.map → Drawer-18QCWW4F.js.map} +1 -1
- package/dist/Drawer.js +1 -1
- package/dist/{Flex-DlNiHX1G-CBMDzqYU.js → Flex-CLu2TnzF-aW2OhBYv.js} +9 -4
- package/dist/Flex-CLu2TnzF-aW2OhBYv.js.map +1 -0
- package/dist/{Flex-DlNiHX1G.css → Flex-CLu2TnzF.css} +14 -1
- package/dist/{Flex-CqNlL2mR.js → Flex-Dvn6ix9U.js} +2 -2
- package/dist/{Flex-CqNlL2mR.js.map → Flex-Dvn6ix9U.js.map} +1 -1
- package/dist/Flex.js +1 -1
- package/dist/{InputMask-BSchnaNh-BiWbAA0e.js → InputMask-CAaKh5xX-n62jt7dp.js} +2 -2
- package/dist/{InputMask-BSchnaNh-BiWbAA0e.js.map → InputMask-CAaKh5xX-n62jt7dp.js.map} +1 -1
- package/dist/{InputMask-CQUSkhJk.js → InputMask-txxn_qIf.js} +2 -2
- package/dist/{InputMask-CQUSkhJk.js.map → InputMask-txxn_qIf.js.map} +1 -1
- package/dist/InputMask.js +1 -1
- package/dist/{ListView-BQ98sGH5.js → ListView-DNwkCrxf.js} +7 -3
- package/dist/ListView-DNwkCrxf.js.map +1 -0
- package/dist/ListView.js +1 -1
- package/dist/{Listbox-CthJSHQ3-BnNf4vnZ.js → Listbox-DlKyRbri-Dc3ny9gH.js} +2 -2
- package/dist/{Listbox-CthJSHQ3-BnNf4vnZ.js.map → Listbox-DlKyRbri-Dc3ny9gH.js.map} +1 -1
- package/dist/{Listbox-Oz_LxoiF.js → Listbox-eNhS0Wmx.js} +2 -2
- package/dist/{Listbox-Oz_LxoiF.js.map → Listbox-eNhS0Wmx.js.map} +1 -1
- package/dist/Listbox.js +1 -1
- package/dist/{Menu-COy3N3q2.js → Menu-DvVci7Qr.js} +227 -111
- package/dist/Menu-DvVci7Qr.js.map +1 -0
- package/dist/Menu.css +35 -26
- package/dist/Menu.js +1 -1
- package/dist/{Overflow-DXWJ1gWT-6WRtRAc3.js → Overflow-D6S5X1N4-C7YfnaOv.js} +3 -3
- package/dist/{Overflow-DXWJ1gWT-6WRtRAc3.js.map → Overflow-D6S5X1N4-C7YfnaOv.js.map} +1 -1
- package/dist/{Overflow-STQ_RpAD.js → Overflow-DDsq_uUA.js} +2 -2
- package/dist/{Overflow-STQ_RpAD.js.map → Overflow-DDsq_uUA.js.map} +1 -1
- package/dist/Overflow.js +1 -1
- package/dist/{Page-DsRpGk2z.js → Page-BFVfMExj.js} +6 -6
- package/dist/{Page-DsRpGk2z.js.map → Page-BFVfMExj.js.map} +1 -1
- package/dist/Page.js +1 -1
- package/dist/{Popover-Dy82-soT.js → Popover-BbcT-mFU.js} +2 -2
- package/dist/{Popover-Dy82-soT.js.map → Popover-BbcT-mFU.js.map} +1 -1
- package/dist/{Popover-xQT2l-O--3ITnWB47.js → Popover-CbeghwZg--83MWVgP.js} +3 -3
- package/dist/{Popover-xQT2l-O--3ITnWB47.js.map → Popover-CbeghwZg--83MWVgP.js.map} +1 -1
- package/dist/Popover.js +1 -1
- package/dist/{ProgressBar-CXUHzFT7-Chfc-aG4.js → ProgressBar-DojG9LHF-nlymvlXw.js} +316 -536
- package/dist/ProgressBar-DojG9LHF-nlymvlXw.js.map +1 -0
- package/dist/{ProgressBar-CXUHzFT7.css → ProgressBar-DojG9LHF.css} +167 -276
- package/dist/{ProgressBar-DiozEP49.js → ProgressBar-OtKoZ_jO.js} +2 -2
- package/dist/{ProgressBar-DiozEP49.js.map → ProgressBar-OtKoZ_jO.js.map} +1 -1
- package/dist/ProgressBar.js +1 -1
- package/dist/{Radio-zEofJnTU.js → Radio-BWK27b7p.js} +2 -2
- package/dist/{Radio-zEofJnTU.js.map → Radio-BWK27b7p.js.map} +1 -1
- package/dist/{Radio-DE79qJFW-BRf9rOOV.js → Radio-BbohS64t-Ch6NvYfF.js} +54 -24
- package/dist/Radio-BbohS64t-Ch6NvYfF.js.map +1 -0
- package/dist/{Radio-DE79qJFW.css → Radio-BbohS64t.css} +50 -54
- package/dist/Radio.js +1 -1
- package/dist/SelectCard.js +1 -1
- package/dist/{SelectCardGroup-B_CVDaUI.js → SelectCardGroup-4MngIOom.js} +3 -3
- package/dist/{SelectCardGroup-B_CVDaUI.js.map → SelectCardGroup-4MngIOom.js.map} +1 -1
- package/dist/{Stepper-CeH1RiN9.js → Stepper-CuQn-jSf.js} +2 -2
- package/dist/{Stepper-CeH1RiN9.js.map → Stepper-CuQn-jSf.js.map} +1 -1
- package/dist/Stepper.js +1 -1
- package/dist/{TextField-LtQFLlk6.js → TextField-Djr02a3D.js} +2 -2
- package/dist/{TextField-LtQFLlk6.js.map → TextField-Djr02a3D.js.map} +1 -1
- package/dist/{TextField-Ca8YUPjX-BS4ojPnU.js → TextField-DtlCGV8B-BPoNBGYn.js} +2 -3
- package/dist/TextField-DtlCGV8B-BPoNBGYn.js.map +1 -0
- package/dist/TextField.js +1 -1
- package/dist/{Textarea-DgspneHG.js → Textarea-DjqGI_N0.js} +2 -3
- package/dist/Textarea-DjqGI_N0.js.map +1 -0
- package/dist/Textarea.js +1 -1
- package/dist/Toast.js +1 -1
- package/dist/{Toolbar-5E1u00Tg.js → Toolbar-DiUrfZ4O.js} +5 -5
- package/dist/{Toolbar-5E1u00Tg.js.map → Toolbar-DiUrfZ4O.js.map} +1 -1
- package/dist/Toolbar.js +1 -1
- package/dist/{Tooltip-D38RQJQI.js → Tooltip-DE8tqyR3.js} +2 -2
- package/dist/{Tooltip-D38RQJQI.js.map → Tooltip-DE8tqyR3.js.map} +1 -1
- package/dist/Tooltip.js +1 -1
- package/dist/{check_circle-BGfigqq-.js → check_circle-DJhuiYqa.js} +4 -2
- package/dist/check_circle-DJhuiYqa.js.map +1 -0
- package/dist/components/Checkbox/Checkbox.d.ts +2 -2
- package/dist/components/Flex/Flex.d.ts +12 -6
- package/dist/components/Radio/Radio.d.ts +2 -2
- package/dist/index.js +27 -27
- package/dist/internal/utils/generateChromaticStickersheetProps.d.ts +16 -0
- package/dist/{toast-DULP2LM1.js → toast-BRfZ2rPu.js} +2 -2
- package/dist/{toast-DULP2LM1.js.map → toast-BRfZ2rPu.js.map} +1 -1
- package/package.json +4 -4
- package/dist/Checkbox-B1OkhWY6-BXBzUXK4.js.map +0 -1
- package/dist/Checkbox.module-DMrZNVpb-DOdjd86H.js.map +0 -1
- package/dist/Combobox-wrmxS_0C.js.map +0 -1
- package/dist/DaysOfTheWeek-DmdZW53u.js.map +0 -1
- package/dist/Dialog-DJUMOPjL.js +0 -66
- package/dist/Dialog-DJUMOPjL.js.map +0 -1
- package/dist/Flex-DlNiHX1G-CBMDzqYU.js.map +0 -1
- package/dist/Helper-DBmwQvEP-BB75un4q.js +0 -55
- package/dist/Helper-DBmwQvEP-BB75un4q.js.map +0 -1
- package/dist/Helper-DBmwQvEP.css +0 -25
- package/dist/ListView-BQ98sGH5.js.map +0 -1
- package/dist/Menu-COy3N3q2.js.map +0 -1
- package/dist/ProgressBar-CXUHzFT7-Chfc-aG4.js.map +0 -1
- package/dist/Radio-DE79qJFW-BRf9rOOV.js.map +0 -1
- package/dist/TextField-Ca8YUPjX-BS4ojPnU.js.map +0 -1
- package/dist/Textarea-DgspneHG.js.map +0 -1
- package/dist/check_circle-BGfigqq-.js.map +0 -1
- package/dist/warning-c4Wj1rI4.js +0 -6
- package/dist/warning-c4Wj1rI4.js.map +0 -1
- /package/dist/{Calendar-Zfsv8y4j.css → Calendar-ch54N6OS.css} +0 -0
- /package/dist/{Overflow-DXWJ1gWT.css → Overflow-D6S5X1N4.css} +0 -0
- /package/dist/{Popover-xQT2l-O-.css → Popover-CbeghwZg.css} +0 -0
|
@@ -1,25 +1,24 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
2
|
import { useState, useRef, useEffect, forwardRef, useId, createContext, useContext, useCallback, useMemo, cloneElement, isValidElement, Fragment as Fragment$1, useLayoutEffect } from 'react';
|
|
3
3
|
import { c as cx } from './index-tZvMCc77.js';
|
|
4
4
|
import { I as Icon } from './Icon-DuwR7O2z-C_rTZRSc.js';
|
|
5
|
-
import {
|
|
5
|
+
import { b as SvgCheckCircle, S as SvgError, a as SvgWarning, c as SvgInfo } from './check_circle-DJhuiYqa.js';
|
|
6
6
|
import { t as tabbable, q as useDelayGroup, F as FloatingPortal, b as FloatingArrow, p as computePosition, n as autoUpdate, o as offset, f as flip, d as shift, e as arrow$1, l as limitShift, r as useDelayGroupContext, c as useFloating, h as useHover, i as safePolygon, v as useFocus, j as useDismiss, k as useRole, m as useInteractions } from './floating-ui.react-Domgunz0.js';
|
|
7
7
|
import { a as PortalProviderContext } from './PortalProvider-9lXkQ0xY-BKoGegS1.js';
|
|
8
8
|
import { S as SvgClose } from './close-DZj38AEh.js';
|
|
9
9
|
import { T as Text } from './Text-BCRKWTMM-B3ftA79H.js';
|
|
10
10
|
import { B as Button } from './Button-CEDmdZ-2-DJVJnigb.js';
|
|
11
|
-
import { A as Alert } from './Alert-BcjnX40X-
|
|
12
|
-
import { F as Flex } from './Flex-
|
|
11
|
+
import { A as Alert } from './Alert-BcjnX40X-DK8meb2Z.js';
|
|
12
|
+
import { F as Flex } from './Flex-CLu2TnzF-aW2OhBYv.js';
|
|
13
13
|
import { u as useLayoutPropsUtil } from './useLayoutPropsUtil-3B2XYWSr-5ZanZ8Ew.js';
|
|
14
|
-
import { H as Helper } from './Helper-DBmwQvEP-BB75un4q.js';
|
|
15
|
-
import { u as useSwipe } from './useSwipe-DIUHs7T5-DIUHs7T5.js';
|
|
16
14
|
import { S as SrOnly } from './SrOnly-BXm1DGl3-BJVodjQp.js';
|
|
15
|
+
import { u as useSwipe } from './useSwipe-DIUHs7T5-DIUHs7T5.js';
|
|
17
16
|
import { u as useMergeRefs } from './useMergeRefs-Bde85AWI-Bde85AWI.js';
|
|
18
17
|
import { T as ThemeProvider, a as ThemeProviderContext } from './ThemeProvider-DrK12Ru--CcKMzgE3.js';
|
|
19
18
|
import { g as getKeyboardFocusableElements } from './getKeyboardFocusableElements-QqcABz0D.js';
|
|
20
19
|
import { u as useTooltipLegacyGroup } from './HammerProvider-C9QySDSZ-3uQ0NgD4.js';
|
|
21
20
|
|
|
22
|
-
import './ProgressBar-
|
|
21
|
+
import './ProgressBar-DojG9LHF.css';/**
|
|
23
22
|
* Convert array of 16 byte values to UUID string format of the form:
|
|
24
23
|
* XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
|
|
25
24
|
*/
|
|
@@ -128,114 +127,176 @@ const useKeyboardFocusables = (element, options = {
|
|
|
128
127
|
return { focusables, updateFocusables };
|
|
129
128
|
};
|
|
130
129
|
|
|
131
|
-
const
|
|
132
|
-
const
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
130
|
+
const getActiveElement = (activeDocument) => {
|
|
131
|
+
const activeElement = activeDocument.activeElement;
|
|
132
|
+
if (!activeElement) {
|
|
133
|
+
return activeElement;
|
|
134
|
+
}
|
|
135
|
+
if (!activeElement.shadowRoot) {
|
|
136
|
+
return activeElement;
|
|
137
|
+
}
|
|
138
|
+
if (activeElement.shadowRoot) {
|
|
139
|
+
return getActiveElement(activeElement.shadowRoot);
|
|
140
|
+
}
|
|
141
|
+
return activeElement;
|
|
142
|
+
};
|
|
143
|
+
|
|
144
|
+
const label = "_label_iolth_3";
|
|
145
|
+
const required = "_required_iolth_47";
|
|
139
146
|
const styles$6 = {
|
|
140
|
-
|
|
141
|
-
container:
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
"
|
|
145
|
-
|
|
146
|
-
large: large$1,
|
|
147
|
-
fullscreen: fullscreen,
|
|
148
|
-
sticky: sticky$1,
|
|
149
|
-
"close-button": "_close-button_1uzo4_125"
|
|
147
|
+
label: label,
|
|
148
|
+
"top-container": "_top-container_iolth_38",
|
|
149
|
+
"label-text": "_label-text_iolth_43",
|
|
150
|
+
required: required,
|
|
151
|
+
"info-trigger": "_info-trigger_iolth_52",
|
|
152
|
+
"info-content": "_info-content_iolth_57"
|
|
150
153
|
};
|
|
151
154
|
|
|
152
|
-
const
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
155
|
+
const content$1 = "_content_tjoaw_3";
|
|
156
|
+
const scroller = "_scroller_tjoaw_30";
|
|
157
|
+
const arrow = "_arrow_tjoaw_33";
|
|
158
|
+
const trigger = "_trigger_tjoaw_39";
|
|
159
|
+
const styles$5 = {
|
|
160
|
+
content: content$1,
|
|
161
|
+
scroller: scroller,
|
|
162
|
+
arrow: arrow,
|
|
163
|
+
trigger: trigger
|
|
164
|
+
};
|
|
165
|
+
|
|
166
|
+
function useTooltipContext() {
|
|
167
|
+
const context = useContext(TooltipContext);
|
|
168
|
+
const invokerRef = useRef(null);
|
|
169
|
+
const popoverRef = useRef(null);
|
|
170
|
+
const arrowRef = useRef(null);
|
|
171
|
+
useLayoutEffect(() => {
|
|
172
|
+
if (!invokerRef.current) return;
|
|
173
|
+
context?.setInvoker?.(invokerRef.current);
|
|
174
|
+
if (!context?.openState) return;
|
|
175
|
+
context.openTooltip();
|
|
176
|
+
}, [context, invokerRef]);
|
|
177
|
+
useLayoutEffect(() => {
|
|
178
|
+
if (!popoverRef.current) return;
|
|
179
|
+
context?.setTooltip?.(popoverRef.current);
|
|
180
|
+
context?.setRootNode?.(popoverRef.current.getRootNode());
|
|
181
|
+
if (!arrowRef.current) return;
|
|
182
|
+
context?.setArrowElement?.(arrowRef.current);
|
|
183
|
+
}, [context, popoverRef]);
|
|
184
|
+
const onMouseEnterHandler = () => {
|
|
185
|
+
context?.openTooltip();
|
|
158
186
|
};
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
187
|
+
const onMouseLeaveHandler = () => {
|
|
188
|
+
context?.closeTooltip();
|
|
189
|
+
};
|
|
190
|
+
const onFocusHandler = () => {
|
|
191
|
+
if (context?.controlled) return;
|
|
192
|
+
context?.openTooltip();
|
|
193
|
+
};
|
|
194
|
+
const onBlurHandler = () => {
|
|
195
|
+
if (context?.controlled) return;
|
|
196
|
+
context?.closeTooltip();
|
|
197
|
+
};
|
|
198
|
+
const onKeyDownHandler = (e) => {
|
|
199
|
+
if (!context?.openState) return;
|
|
200
|
+
if (e.code === "Escape" && !context.controlled) {
|
|
201
|
+
context?.closeTooltip();
|
|
202
|
+
return;
|
|
167
203
|
}
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
204
|
+
};
|
|
205
|
+
if (!context || !invokerRef || !popoverRef) return;
|
|
206
|
+
return {
|
|
207
|
+
invoker: {
|
|
208
|
+
ref: invokerRef,
|
|
209
|
+
element: context.invoker,
|
|
210
|
+
onMouseEnter: onMouseEnterHandler,
|
|
211
|
+
onMouseLeave: onMouseLeaveHandler,
|
|
212
|
+
onKeyDown: onKeyDownHandler,
|
|
213
|
+
onFocus: onFocusHandler,
|
|
214
|
+
onBlur: onBlurHandler,
|
|
215
|
+
"aria-haspopup": true,
|
|
216
|
+
"aria-expanded": context.openState,
|
|
217
|
+
"aria-details": context.tooltipId,
|
|
218
|
+
"data-state": context.openState ? "open" : "closed",
|
|
219
|
+
"aria-describedby": context.tooltipId
|
|
220
|
+
},
|
|
221
|
+
tooltip: {
|
|
222
|
+
ref: popoverRef,
|
|
223
|
+
element: context.popover,
|
|
224
|
+
id: context.tooltipId,
|
|
225
|
+
show: context.openTooltip,
|
|
226
|
+
close: context.closeTooltip,
|
|
227
|
+
style: context.tooltipStyle,
|
|
228
|
+
arrowRef,
|
|
229
|
+
key: context.resetKey
|
|
230
|
+
},
|
|
231
|
+
setOpen: context.setOpenState,
|
|
232
|
+
open: context.openState,
|
|
233
|
+
controlled: context.controlled,
|
|
234
|
+
placement: context.placement,
|
|
235
|
+
disableFlipFallback: context.disableFlipFallback
|
|
236
|
+
};
|
|
237
|
+
}
|
|
171
238
|
|
|
172
|
-
|
|
173
|
-
(
|
|
174
|
-
|
|
175
|
-
const headerClassNames = cx(className, styles$6["header"]);
|
|
176
|
-
return /* @__PURE__ */ jsxs(
|
|
177
|
-
"header",
|
|
178
|
-
{
|
|
179
|
-
className: headerClassNames,
|
|
180
|
-
"data-anv": "dialog-header",
|
|
181
|
-
ref,
|
|
182
|
-
...rest,
|
|
183
|
-
children: [
|
|
184
|
-
/* @__PURE__ */ jsx(Text, { variant: "headline", el: "h1", children }),
|
|
185
|
-
/* @__PURE__ */ jsx("span", { className: styles$6["close-container"], children: /* @__PURE__ */ jsx(
|
|
186
|
-
DialogCancelButton,
|
|
187
|
-
{
|
|
188
|
-
className: styles$6["close-button"],
|
|
189
|
-
size: "small",
|
|
190
|
-
appearance: "ghost",
|
|
191
|
-
"aria-label": "Close dialog",
|
|
192
|
-
icon: SvgClose
|
|
193
|
-
}
|
|
194
|
-
) })
|
|
195
|
-
]
|
|
196
|
-
}
|
|
197
|
-
);
|
|
198
|
-
}
|
|
199
|
-
);
|
|
200
|
-
DialogHeader.displayName = "DialogHeader";
|
|
239
|
+
function supportsPopover() {
|
|
240
|
+
return Object.prototype.hasOwnProperty.call(HTMLElement.prototype, "popover");
|
|
241
|
+
}
|
|
201
242
|
|
|
202
|
-
const
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
return /* @__PURE__ */ jsx(
|
|
209
|
-
"footer",
|
|
210
|
-
{
|
|
211
|
-
className: footerClassNames,
|
|
212
|
-
"data-anv": "dialog-footer",
|
|
213
|
-
ref,
|
|
214
|
-
...rest,
|
|
215
|
-
children
|
|
216
|
-
}
|
|
243
|
+
const TooltipLegacyContext = createContext(null);
|
|
244
|
+
const useTooltipLegacyContext = () => {
|
|
245
|
+
const context = useContext(TooltipLegacyContext);
|
|
246
|
+
if (context == null) {
|
|
247
|
+
throw new Error(
|
|
248
|
+
"TooltipLegacy components must be wrapped in <TooltipLegacy />"
|
|
217
249
|
);
|
|
218
250
|
}
|
|
219
|
-
|
|
220
|
-
|
|
251
|
+
return context;
|
|
252
|
+
};
|
|
221
253
|
|
|
222
|
-
const
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
254
|
+
const styles$4 = {
|
|
255
|
+
"content-legacy": "_content-legacy_19gkz_4",
|
|
256
|
+
"arrow-legacy": "_arrow-legacy_19gkz_30",
|
|
257
|
+
"trigger-legacy": "_trigger-legacy_19gkz_33"
|
|
258
|
+
};
|
|
259
|
+
|
|
260
|
+
const ATTRIBUTE_NAME_LIST = "data-anv-dialogs";
|
|
261
|
+
const ATTRIBUTE_NAME_BOOL = "data-anv-dialogs-open";
|
|
262
|
+
const useDialogScrollLock = ({
|
|
263
|
+
open,
|
|
264
|
+
id,
|
|
265
|
+
enableScrollChaining,
|
|
266
|
+
elementRef
|
|
267
|
+
}) => {
|
|
268
|
+
useEffect(() => {
|
|
269
|
+
if (enableScrollChaining) return () => {
|
|
270
|
+
};
|
|
271
|
+
const root = elementRef.current?.getRootNode();
|
|
272
|
+
if (!(root instanceof ShadowRoot)) return () => {
|
|
273
|
+
};
|
|
274
|
+
const updateDialogAttributes = (shouldAdd) => {
|
|
275
|
+
const currentDialogs = root.host.getAttribute(ATTRIBUTE_NAME_LIST)?.split(" ").filter(Boolean) ?? [];
|
|
276
|
+
const newDialogs = new Set(currentDialogs);
|
|
277
|
+
if (shouldAdd) {
|
|
278
|
+
newDialogs.add(id);
|
|
279
|
+
} else {
|
|
280
|
+
newDialogs.delete(id);
|
|
234
281
|
}
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
)
|
|
238
|
-
|
|
282
|
+
const dialogList = Array.from(newDialogs);
|
|
283
|
+
root.host.setAttribute(ATTRIBUTE_NAME_LIST, dialogList.join(" "));
|
|
284
|
+
if (dialogList.length > 0) {
|
|
285
|
+
root.host.setAttribute(ATTRIBUTE_NAME_BOOL, "true");
|
|
286
|
+
} else {
|
|
287
|
+
root.host.removeAttribute(ATTRIBUTE_NAME_BOOL);
|
|
288
|
+
}
|
|
289
|
+
};
|
|
290
|
+
updateDialogAttributes(open);
|
|
291
|
+
return () => {
|
|
292
|
+
if (elementRef.current?.getRootNode() === root) {
|
|
293
|
+
updateDialogAttributes(false);
|
|
294
|
+
}
|
|
295
|
+
};
|
|
296
|
+
}, [open, id, enableScrollChaining, elementRef]);
|
|
297
|
+
};
|
|
298
|
+
|
|
299
|
+
const DialogContext = createContext(null);
|
|
239
300
|
|
|
240
301
|
const ToastProviderContext = createContext({
|
|
241
302
|
toasts: [],
|
|
@@ -339,7 +400,7 @@ const hidden = "_hidden_lombm_25";
|
|
|
339
400
|
const stacked = "_stacked_lombm_89";
|
|
340
401
|
const open = "_open_lombm_184";
|
|
341
402
|
const close = "_close_lombm_185";
|
|
342
|
-
const styles$
|
|
403
|
+
const styles$3 = {
|
|
343
404
|
popover: popover,
|
|
344
405
|
toaster: toaster,
|
|
345
406
|
hidden: hidden,
|
|
@@ -606,7 +667,7 @@ const Toast = forwardRef(
|
|
|
606
667
|
...alertProps
|
|
607
668
|
}, ref) => {
|
|
608
669
|
const { setToastHeights, extraToastsVisible, isDialogToaster } = useToasts();
|
|
609
|
-
const closeToast = useCloseToast(styles$
|
|
670
|
+
const closeToast = useCloseToast(styles$3.close);
|
|
610
671
|
const toastPositionStyles = useToastPositionStyles(index);
|
|
611
672
|
const toastWrapperRef = useRef(null);
|
|
612
673
|
const timerRef = useRef();
|
|
@@ -614,18 +675,18 @@ const Toast = forwardRef(
|
|
|
614
675
|
const createdAtRef = useRef(createdAt ?? 0);
|
|
615
676
|
const hasBeenStackedRef = useRef(false);
|
|
616
677
|
const [transitionClass, setTransitionClass] = useState(
|
|
617
|
-
styles$
|
|
678
|
+
styles$3.hidden
|
|
618
679
|
);
|
|
619
680
|
const [toastOpened, setToastOpened] = useState(false);
|
|
620
681
|
const duration = actions ? false : durationProp;
|
|
621
682
|
const alertClasses = cx(
|
|
622
|
-
styles$
|
|
683
|
+
styles$3["toast-alert"],
|
|
623
684
|
toastClassName,
|
|
624
685
|
transitionClass
|
|
625
686
|
);
|
|
626
687
|
useEffect(() => {
|
|
627
688
|
if (!toastOpened) {
|
|
628
|
-
setTransitionClass(styles$
|
|
689
|
+
setTransitionClass(styles$3.open);
|
|
629
690
|
setTimeout(() => {
|
|
630
691
|
setTransitionClass(void 0);
|
|
631
692
|
}, ANIMATION_DURATION);
|
|
@@ -734,7 +795,7 @@ const Toast = forwardRef(
|
|
|
734
795
|
hasMessage ? /* @__PURE__ */ jsx(
|
|
735
796
|
"div",
|
|
736
797
|
{
|
|
737
|
-
className: styles$
|
|
798
|
+
className: styles$3["message-container"],
|
|
738
799
|
id: `toast-message-${alertProps.id}`,
|
|
739
800
|
children: message
|
|
740
801
|
}
|
|
@@ -752,7 +813,7 @@ const Toast = forwardRef(
|
|
|
752
813
|
value: progress
|
|
753
814
|
}
|
|
754
815
|
) }) : null,
|
|
755
|
-
actions ? /* @__PURE__ */ jsxs("div", { className: styles$
|
|
816
|
+
actions ? /* @__PURE__ */ jsxs("div", { className: styles$3["alert-action"], children: [
|
|
756
817
|
/* @__PURE__ */ jsx(
|
|
757
818
|
Button,
|
|
758
819
|
{
|
|
@@ -781,6 +842,53 @@ const Toast = forwardRef(
|
|
|
781
842
|
);
|
|
782
843
|
Toast.displayName = "Toast";
|
|
783
844
|
|
|
845
|
+
const helper = "_helper_1mtj6_2";
|
|
846
|
+
const messages = "_messages_1mtj6_9";
|
|
847
|
+
const styles$2 = {
|
|
848
|
+
helper: helper,
|
|
849
|
+
messages: messages,
|
|
850
|
+
"error-container": "_error-container_1mtj6_15",
|
|
851
|
+
"error-icon": "_error-icon_1mtj6_21"
|
|
852
|
+
};
|
|
853
|
+
|
|
854
|
+
const Helper = forwardRef((props, ref) => {
|
|
855
|
+
const {
|
|
856
|
+
id,
|
|
857
|
+
hint,
|
|
858
|
+
description,
|
|
859
|
+
errorAriaLive = "assertive",
|
|
860
|
+
errorMessage,
|
|
861
|
+
maxLength,
|
|
862
|
+
isTyping,
|
|
863
|
+
inputLength = 0,
|
|
864
|
+
showCounter
|
|
865
|
+
} = props;
|
|
866
|
+
return /* @__PURE__ */ jsxs("div", { className: styles$2["helper"], ref, id, children: [
|
|
867
|
+
/* @__PURE__ */ jsxs("div", { className: styles$2["messages"], children: [
|
|
868
|
+
errorMessage ? /* @__PURE__ */ jsxs("div", { className: styles$2["error-container"], children: [
|
|
869
|
+
/* @__PURE__ */ jsx(
|
|
870
|
+
Icon,
|
|
871
|
+
{
|
|
872
|
+
inherit: true,
|
|
873
|
+
className: styles$2["error-icon"],
|
|
874
|
+
"aria-hidden": true,
|
|
875
|
+
svg: SvgWarning
|
|
876
|
+
}
|
|
877
|
+
),
|
|
878
|
+
/* @__PURE__ */ jsx("span", { className: styles$2["error-message"], "aria-live": errorAriaLive, children: errorMessage })
|
|
879
|
+
] }) : hint ?? null,
|
|
880
|
+
description ? /* @__PURE__ */ jsx("div", { className: styles$2["description-container"], children: description ? /* @__PURE__ */ jsx("span", { children: description }) : null }) : null
|
|
881
|
+
] }),
|
|
882
|
+
showCounter ? /* @__PURE__ */ jsx("div", { className: styles$2["counter"], children: /* @__PURE__ */ jsxs("span", { "aria-hidden": "true", children: [
|
|
883
|
+
inputLength,
|
|
884
|
+
"/",
|
|
885
|
+
maxLength
|
|
886
|
+
] }) }) : null,
|
|
887
|
+
isTyping && !!maxLength ? maxLength - inputLength >= 1 ? /* @__PURE__ */ jsx(SrOnly, { children: /* @__PURE__ */ jsx("span", { "aria-live": "polite", "aria-atomic": "true", children: `${maxLength - inputLength} character${maxLength - inputLength !== 1 ? "s" : ""} left` }) }) : /* @__PURE__ */ jsx(SrOnly, { children: /* @__PURE__ */ jsx("span", { role: "alert", children: "Maximum characters count reached" }) }) : null
|
|
888
|
+
] });
|
|
889
|
+
});
|
|
890
|
+
Helper.displayName = "Helper";
|
|
891
|
+
|
|
784
892
|
function useHotkeyFocus({
|
|
785
893
|
disabled,
|
|
786
894
|
hotkey,
|
|
@@ -801,7 +909,7 @@ function useHotkeyFocus({
|
|
|
801
909
|
setShouldEscapeRefocus(false);
|
|
802
910
|
};
|
|
803
911
|
const keyDownHandler = async (e) => {
|
|
804
|
-
const activeElement = document
|
|
912
|
+
const activeElement = getActiveElement(document);
|
|
805
913
|
if (activeElement?.tagName.toLowerCase() !== "input" && activeElement?.tagName.toLowerCase() !== "textarea" && activeElement?.tagName.toLowerCase() !== "pre" && e.key === hotkey) {
|
|
806
914
|
e.preventDefault();
|
|
807
915
|
previousFocusElement.current = activeElement;
|
|
@@ -939,10 +1047,10 @@ const ToastStack = forwardRef(
|
|
|
939
1047
|
const showMoreButton = !extraToastsVisible && toastCount > toastsBeforeStack;
|
|
940
1048
|
const extraToastsLength = toastCount - toastsBeforeStack;
|
|
941
1049
|
const showMoreButtonText = `${extraToastsLength} more message${extraToastsLength > 1 ? "s" : ""}`;
|
|
942
|
-
const toastStackClasses = cx(styles$
|
|
943
|
-
[styles$
|
|
944
|
-
[styles$
|
|
945
|
-
[styles$
|
|
1050
|
+
const toastStackClasses = cx(styles$3["toast-stack"], className, {
|
|
1051
|
+
[styles$3["show-more-button"]]: showMoreButton,
|
|
1052
|
+
[styles$3["show-extra-toast"]]: extraToastsVisible,
|
|
1053
|
+
[styles$3["disable-animations"]]: disableAnimations
|
|
946
1054
|
});
|
|
947
1055
|
const handleToastStackFocusHover = () => {
|
|
948
1056
|
if (toastPausedStatus === "resumed" || toastPausedStatus === void 0) {
|
|
@@ -978,13 +1086,13 @@ const ToastStack = forwardRef(
|
|
|
978
1086
|
const isStacked = !extraToastsVisible && index < toastCount - toastsBeforeStack;
|
|
979
1087
|
const isLastToastDisplayed = index === toastCount - toastsBeforeStack;
|
|
980
1088
|
const isHidden = index < toastCount - toastsBeforeStack - 2;
|
|
981
|
-
const toastClasses = cx(styles$
|
|
982
|
-
const toastContainerClasses = cx(styles$
|
|
983
|
-
[styles$
|
|
984
|
-
[styles$
|
|
985
|
-
[styles$
|
|
986
|
-
[styles$
|
|
987
|
-
[styles$
|
|
1089
|
+
const toastClasses = cx(styles$3.toast, toastClassName);
|
|
1090
|
+
const toastContainerClasses = cx(styles$3["toast-wrapper"], {
|
|
1091
|
+
[styles$3.stacked]: isStacked || isLastToastDisplayed,
|
|
1092
|
+
[styles$3["stack-one"]]: isStacked && index === toastCount - toastsBeforeStack - 1,
|
|
1093
|
+
[styles$3["stack-two"]]: isStacked && index === toastCount - toastsBeforeStack - 2,
|
|
1094
|
+
[styles$3["stacked-extra"]]: isHidden,
|
|
1095
|
+
[styles$3["stacked-show-extra"]]: extraToastsVisible
|
|
988
1096
|
});
|
|
989
1097
|
const handleOnClose = (e) => {
|
|
990
1098
|
onClose?.(e);
|
|
@@ -1011,12 +1119,12 @@ const ToastStack = forwardRef(
|
|
|
1011
1119
|
showMoreButton && /* @__PURE__ */ jsx(
|
|
1012
1120
|
"div",
|
|
1013
1121
|
{
|
|
1014
|
-
className: styles$
|
|
1122
|
+
className: styles$3["show-more-button-container"],
|
|
1015
1123
|
style: showMoreButtonPositionStyles,
|
|
1016
1124
|
children: /* @__PURE__ */ jsx(
|
|
1017
1125
|
Button,
|
|
1018
1126
|
{
|
|
1019
|
-
className: styles$
|
|
1127
|
+
className: styles$3["show-collapse-button"],
|
|
1020
1128
|
onClick: handleShowMoreButtonClick,
|
|
1021
1129
|
appearance: "secondary",
|
|
1022
1130
|
tabIndex: 0,
|
|
@@ -1033,10 +1141,10 @@ const ToastStack = forwardRef(
|
|
|
1033
1141
|
]
|
|
1034
1142
|
}
|
|
1035
1143
|
),
|
|
1036
|
-
extraToastsVisible && /* @__PURE__ */ jsx("div", { className: styles$
|
|
1144
|
+
extraToastsVisible && /* @__PURE__ */ jsx("div", { className: styles$3["show-collapse-button-container"], children: /* @__PURE__ */ jsx(
|
|
1037
1145
|
Button,
|
|
1038
1146
|
{
|
|
1039
|
-
className: styles$
|
|
1147
|
+
className: styles$3["show-collapse-button"],
|
|
1040
1148
|
onClick: handleToastStackBlur,
|
|
1041
1149
|
appearance: "secondary",
|
|
1042
1150
|
children: "Collapse Messages"
|
|
@@ -1077,7 +1185,7 @@ const ToasterPopover = forwardRef(
|
|
|
1077
1185
|
}
|
|
1078
1186
|
};
|
|
1079
1187
|
}, [toastCount, isDialogToaster]);
|
|
1080
|
-
return /* @__PURE__ */ jsx("div", { ref: combinedRef, className: styles$
|
|
1188
|
+
return /* @__PURE__ */ jsx("div", { ref: combinedRef, className: styles$3.popover, popover: "manual", children: props.children });
|
|
1081
1189
|
}
|
|
1082
1190
|
);
|
|
1083
1191
|
ToasterPopover.displayName = "ToasterPopover";
|
|
@@ -1145,7 +1253,7 @@ const ToasterContent = forwardRef(
|
|
|
1145
1253
|
});
|
|
1146
1254
|
dispatchEvent(DialogToasterEvent);
|
|
1147
1255
|
}, [isDialogToaster]);
|
|
1148
|
-
const closeToast = useCloseToast(styles$
|
|
1256
|
+
const closeToast = useCloseToast(styles$3.close);
|
|
1149
1257
|
useEffect(() => {
|
|
1150
1258
|
let timeout;
|
|
1151
1259
|
updateDialogToasterStorage(isDialogToaster);
|
|
@@ -1244,8 +1352,8 @@ const ToasterContent = forwardRef(
|
|
|
1244
1352
|
updateDialogToasterStorage(false);
|
|
1245
1353
|
};
|
|
1246
1354
|
}, []);
|
|
1247
|
-
const toasterClasses = cx(styles$
|
|
1248
|
-
[styles$
|
|
1355
|
+
const toasterClasses = cx(styles$3.toaster, {
|
|
1356
|
+
[styles$3["hidden"]]: shouldHideToaster,
|
|
1249
1357
|
[`${className}`]: className != null
|
|
1250
1358
|
});
|
|
1251
1359
|
return /* @__PURE__ */ jsx(
|
|
@@ -1278,218 +1386,25 @@ const Toaster = forwardRef(
|
|
|
1278
1386
|
Toaster.displayName = "Toaster";
|
|
1279
1387
|
ToasterContent.displayName = "ToasterContent";
|
|
1280
1388
|
|
|
1281
|
-
const
|
|
1282
|
-
const
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
onClose,
|
|
1291
|
-
onCancel,
|
|
1292
|
-
onKeyDown,
|
|
1293
|
-
fullScreen = false,
|
|
1294
|
-
disableCloseOnEscape = false,
|
|
1295
|
-
disableCloseOnClickOutside = false,
|
|
1296
|
-
size,
|
|
1297
|
-
enableScrollChaining,
|
|
1298
|
-
...rest
|
|
1299
|
-
} = props;
|
|
1300
|
-
const elRef = useRef(null);
|
|
1301
|
-
const contentRef = useRef(null);
|
|
1302
|
-
const [hasOpenPopover, setHasOpenPopover] = useState(false);
|
|
1303
|
-
const id = useId();
|
|
1304
|
-
const DialogClassNames = cx([styles$6["dialog"]], className, {
|
|
1305
|
-
[styles$6["fullscreen"]]: fullScreen,
|
|
1306
|
-
[styles$6["large"]]: size === "large"
|
|
1307
|
-
});
|
|
1308
|
-
const { focusables } = useKeyboardFocusables(contentRef, {
|
|
1309
|
-
observeChange: true
|
|
1310
|
-
});
|
|
1311
|
-
useEffect(() => {
|
|
1312
|
-
if (!open || enableScrollChaining) return;
|
|
1313
|
-
let blockDocumentScroll = false;
|
|
1314
|
-
const content = contentRef.current;
|
|
1315
|
-
const scrollHandler = (e) => {
|
|
1316
|
-
const target = e.target;
|
|
1317
|
-
const isShadow2 = contentRef.current?.getRootNode() instanceof ShadowRoot;
|
|
1318
|
-
const isOverflowing = elRef.current && elRef.current.scrollHeight > elRef.current.clientHeight;
|
|
1319
|
-
if (isShadow2) {
|
|
1320
|
-
if (blockDocumentScroll) {
|
|
1321
|
-
e.preventDefault();
|
|
1322
|
-
return;
|
|
1323
|
-
}
|
|
1324
|
-
return;
|
|
1325
|
-
}
|
|
1326
|
-
if (!isOverflowing || !content?.contains(target)) {
|
|
1327
|
-
e.preventDefault();
|
|
1328
|
-
return;
|
|
1329
|
-
}
|
|
1330
|
-
return;
|
|
1331
|
-
};
|
|
1332
|
-
const shadowScrollHandler = (e) => {
|
|
1333
|
-
const target = e.target;
|
|
1334
|
-
const isTargetInsideContent = content?.contains(target);
|
|
1335
|
-
const isOverflowing = elRef.current && elRef.current.scrollHeight > elRef.current.clientHeight;
|
|
1336
|
-
blockDocumentScroll = !isTargetInsideContent;
|
|
1337
|
-
if (!isOverflowing || !content?.contains(target)) {
|
|
1338
|
-
e.preventDefault();
|
|
1339
|
-
}
|
|
1340
|
-
return;
|
|
1341
|
-
};
|
|
1342
|
-
const isShadow = content?.getRootNode() instanceof ShadowRoot;
|
|
1343
|
-
document.addEventListener("wheel", scrollHandler, {
|
|
1344
|
-
passive: false
|
|
1345
|
-
});
|
|
1346
|
-
if (isShadow) {
|
|
1347
|
-
content?.getRootNode().addEventListener("wheel", shadowScrollHandler, {
|
|
1348
|
-
passive: false
|
|
1349
|
-
});
|
|
1350
|
-
}
|
|
1351
|
-
return () => {
|
|
1352
|
-
document.getRootNode().removeEventListener("wheel", scrollHandler);
|
|
1353
|
-
if (isShadow) {
|
|
1354
|
-
content?.getRootNode().removeEventListener("wheel", shadowScrollHandler);
|
|
1355
|
-
}
|
|
1356
|
-
};
|
|
1357
|
-
}, [enableScrollChaining, open]);
|
|
1358
|
-
useEffect(() => {
|
|
1359
|
-
if (typeof document === "undefined" || disableCloseOnClickOutside) return;
|
|
1360
|
-
const onClickOutsideHandler = (e) => {
|
|
1361
|
-
if (hasOpenPopover) return;
|
|
1362
|
-
if (e.composedPath()[0] === elRef.current) {
|
|
1363
|
-
onClose?.();
|
|
1364
|
-
}
|
|
1365
|
-
};
|
|
1366
|
-
document.addEventListener("mousedown", onClickOutsideHandler);
|
|
1367
|
-
return () => document.removeEventListener("mousedown", onClickOutsideHandler);
|
|
1368
|
-
}, [disableCloseOnClickOutside, onClose, onOpenChange, hasOpenPopover]);
|
|
1369
|
-
const initial = useRef(true);
|
|
1370
|
-
useEffect(() => {
|
|
1371
|
-
if (initial.current) {
|
|
1372
|
-
initial.current = false;
|
|
1373
|
-
} else {
|
|
1374
|
-
onOpenChange?.(open);
|
|
1375
|
-
}
|
|
1376
|
-
if (open) {
|
|
1377
|
-
onOpen?.();
|
|
1378
|
-
elRef.current?.showModal();
|
|
1379
|
-
return;
|
|
1380
|
-
}
|
|
1381
|
-
setTimeout(() => {
|
|
1382
|
-
elRef.current?.close();
|
|
1383
|
-
}, 1);
|
|
1384
|
-
}, [id, onOpen, onOpenChange, open]);
|
|
1385
|
-
useEffect(() => {
|
|
1386
|
-
if (!open) return;
|
|
1387
|
-
if (!focusables) return;
|
|
1388
|
-
const activeElement = document.activeElement;
|
|
1389
|
-
if (activeElement.dataset.anv !== "dialog-header-close-button" && focusables.includes(activeElement)) {
|
|
1390
|
-
return;
|
|
1391
|
-
}
|
|
1392
|
-
if (focusables[0]?.dataset.anv === "dialog-header-close-button" && focusables[1]) {
|
|
1393
|
-
focusables[1].focus();
|
|
1394
|
-
} else {
|
|
1395
|
-
focusables[0]?.focus();
|
|
1396
|
-
}
|
|
1397
|
-
}, [open, focusables]);
|
|
1398
|
-
const onKeyDownHandler = (e) => {
|
|
1399
|
-
onKeyDown?.(e);
|
|
1400
|
-
if (e.code === "Escape") {
|
|
1401
|
-
e.preventDefault();
|
|
1402
|
-
if (disableCloseOnEscape) return;
|
|
1403
|
-
if (hasOpenPopover) return;
|
|
1404
|
-
onClose?.();
|
|
1405
|
-
return;
|
|
1406
|
-
}
|
|
1407
|
-
if (e.code === "Tab") {
|
|
1408
|
-
if (e.shiftKey && e.target === focusables?.[0]) {
|
|
1409
|
-
e.preventDefault();
|
|
1410
|
-
focusables[focusables.length - 1]?.focus();
|
|
1411
|
-
return;
|
|
1412
|
-
}
|
|
1413
|
-
if (e.target === focusables?.[focusables.length - 1] && !e.shiftKey) {
|
|
1414
|
-
e.preventDefault();
|
|
1415
|
-
focusables[0].focus();
|
|
1416
|
-
return;
|
|
1417
|
-
}
|
|
1418
|
-
}
|
|
1419
|
-
};
|
|
1420
|
-
const close = useCallback(() => {
|
|
1421
|
-
onClose?.();
|
|
1422
|
-
}, [onClose]);
|
|
1423
|
-
return (
|
|
1424
|
-
// dialog element does seem to be interactive on MDN guideline
|
|
1425
|
-
// eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions
|
|
1426
|
-
/* @__PURE__ */ jsxs(
|
|
1427
|
-
"dialog",
|
|
1428
|
-
{
|
|
1429
|
-
className: DialogClassNames,
|
|
1430
|
-
"data-anv": "dialog",
|
|
1431
|
-
ref: useMergeRefs([ref, elRef]),
|
|
1432
|
-
onKeyDown: onKeyDownHandler,
|
|
1433
|
-
...rest,
|
|
1434
|
-
children: [
|
|
1435
|
-
/* @__PURE__ */ jsx(ToastProvider, { isDialogToaster: open, children: /* @__PURE__ */ jsx(ToasterPopover, { children: /* @__PURE__ */ jsx(ToasterContent, { id: "dialog-toaster" }) }) }),
|
|
1436
|
-
/* @__PURE__ */ jsx(
|
|
1437
|
-
DialogContext.Provider,
|
|
1438
|
-
{
|
|
1439
|
-
value: { close, ref: elRef, hasOpenPopover, setHasOpenPopover },
|
|
1440
|
-
children: /* @__PURE__ */ jsx(
|
|
1441
|
-
"section",
|
|
1442
|
-
{
|
|
1443
|
-
ref: contentRef,
|
|
1444
|
-
className: styles$6["container"],
|
|
1445
|
-
"data-open": open,
|
|
1446
|
-
children
|
|
1447
|
-
}
|
|
1448
|
-
)
|
|
1449
|
-
}
|
|
1450
|
-
)
|
|
1451
|
-
]
|
|
1452
|
-
}
|
|
1453
|
-
)
|
|
1454
|
-
);
|
|
1455
|
-
}
|
|
1456
|
-
);
|
|
1457
|
-
function useDialogContext() {
|
|
1458
|
-
const context = useContext(DialogContext);
|
|
1459
|
-
if (!context) {
|
|
1460
|
-
throw new Error(
|
|
1461
|
-
"useDialogContext must be used within a DialogContextProvider"
|
|
1462
|
-
);
|
|
1463
|
-
}
|
|
1464
|
-
return context;
|
|
1465
|
-
}
|
|
1466
|
-
DialogElement.displayName = "Dialog";
|
|
1467
|
-
const Dialog = Object.assign(DialogElement, {
|
|
1468
|
-
Header: DialogHeader,
|
|
1469
|
-
Footer: DialogFooter,
|
|
1470
|
-
Content: DialogContent,
|
|
1471
|
-
CancelButton: DialogCancelButton
|
|
1472
|
-
});
|
|
1473
|
-
|
|
1474
|
-
const drawer = "_drawer_pysn1_3";
|
|
1475
|
-
const container = "_container_pysn1_29";
|
|
1476
|
-
const content$1 = "_content_pysn1_42";
|
|
1477
|
-
const header = "_header_pysn1_49";
|
|
1478
|
-
const footer = "_footer_pysn1_73";
|
|
1479
|
-
const remove = "_remove_pysn1_91";
|
|
1480
|
-
const large = "_large_pysn1_100";
|
|
1481
|
-
const sticky = "_sticky_pysn1_103";
|
|
1482
|
-
const styles$4 = {
|
|
1389
|
+
const drawer = "_drawer_vyd6b_3";
|
|
1390
|
+
const container = "_container_vyd6b_29";
|
|
1391
|
+
const content = "_content_vyd6b_42";
|
|
1392
|
+
const header = "_header_vyd6b_49";
|
|
1393
|
+
const footer = "_footer_vyd6b_73";
|
|
1394
|
+
const remove = "_remove_vyd6b_91";
|
|
1395
|
+
const large = "_large_vyd6b_100";
|
|
1396
|
+
const sticky = "_sticky_vyd6b_103";
|
|
1397
|
+
const styles$1 = {
|
|
1483
1398
|
drawer: drawer,
|
|
1484
1399
|
container: container,
|
|
1485
|
-
content: content
|
|
1400
|
+
content: content,
|
|
1486
1401
|
header: header,
|
|
1487
|
-
"close-container": "_close-
|
|
1402
|
+
"close-container": "_close-container_vyd6b_66",
|
|
1488
1403
|
footer: footer,
|
|
1489
1404
|
remove: remove,
|
|
1490
1405
|
large: large,
|
|
1491
1406
|
sticky: sticky,
|
|
1492
|
-
"close-button": "_close-
|
|
1407
|
+
"close-button": "_close-button_vyd6b_109"
|
|
1493
1408
|
};
|
|
1494
1409
|
|
|
1495
1410
|
const DrawerCancelButton = forwardRef((props, ref) => {
|
|
@@ -1515,12 +1430,12 @@ DrawerCancelButton.displayName = "DrawerCancelButton";
|
|
|
1515
1430
|
const DrawerHeader = forwardRef(
|
|
1516
1431
|
(props, ref) => {
|
|
1517
1432
|
const { children } = props;
|
|
1518
|
-
return /* @__PURE__ */ jsxs("header", { className: styles$
|
|
1433
|
+
return /* @__PURE__ */ jsxs("header", { className: styles$1.header, "data-anv": "drawer-header", ref, children: [
|
|
1519
1434
|
/* @__PURE__ */ jsx(Text, { variant: "headline", el: "h1", children }),
|
|
1520
|
-
/* @__PURE__ */ jsx("span", { className: styles$
|
|
1435
|
+
/* @__PURE__ */ jsx("span", { className: styles$1["close-container"], children: /* @__PURE__ */ jsx(
|
|
1521
1436
|
DrawerCancelButton,
|
|
1522
1437
|
{
|
|
1523
|
-
className: styles$
|
|
1438
|
+
className: styles$1["close-button"],
|
|
1524
1439
|
size: "small",
|
|
1525
1440
|
appearance: "ghost",
|
|
1526
1441
|
"aria-label": "Close drawer",
|
|
@@ -1536,8 +1451,8 @@ DrawerHeader.displayName = "DrawerHeader";
|
|
|
1536
1451
|
const DrawerFooter = forwardRef(
|
|
1537
1452
|
(props, ref) => {
|
|
1538
1453
|
const { children, sticky = false, ...rest } = props;
|
|
1539
|
-
const DrawerFooterCX = cx(styles$
|
|
1540
|
-
[styles$
|
|
1454
|
+
const DrawerFooterCX = cx(styles$1.footer, {
|
|
1455
|
+
[styles$1["sticky"]]: sticky
|
|
1541
1456
|
});
|
|
1542
1457
|
return /* @__PURE__ */ jsx(
|
|
1543
1458
|
"footer",
|
|
@@ -1556,7 +1471,7 @@ DrawerFooter.displayName = "DrawerFooter";
|
|
|
1556
1471
|
const DrawerContent = forwardRef(
|
|
1557
1472
|
(props, ref) => {
|
|
1558
1473
|
const { children, ...rest } = props;
|
|
1559
|
-
const DrawerContentCX = cx(styles$
|
|
1474
|
+
const DrawerContentCX = cx(styles$1.content, {});
|
|
1560
1475
|
return /* @__PURE__ */ jsx(
|
|
1561
1476
|
"div",
|
|
1562
1477
|
{
|
|
@@ -1594,15 +1509,22 @@ const DrawerElement = forwardRef(
|
|
|
1594
1509
|
const toasterRef = useRef(null);
|
|
1595
1510
|
const combinedRef = useMergeRefs([elRef, ref]);
|
|
1596
1511
|
const [remove, setRemove] = useState(false);
|
|
1597
|
-
const
|
|
1598
|
-
|
|
1599
|
-
[styles$
|
|
1512
|
+
const id = useId();
|
|
1513
|
+
const DrawerClassNames = cx([styles$1.drawer], className, {
|
|
1514
|
+
[styles$1.remove]: remove,
|
|
1515
|
+
[styles$1.large]: size === "large"
|
|
1600
1516
|
});
|
|
1601
1517
|
const { focusables } = useKeyboardFocusables(contentRef, {
|
|
1602
1518
|
observeChange: false
|
|
1603
1519
|
});
|
|
1604
1520
|
const firstFocusable = focusables?.[0];
|
|
1605
1521
|
const lastFocusable = focusables?.[focusables.length - 1];
|
|
1522
|
+
useDialogScrollLock({
|
|
1523
|
+
open,
|
|
1524
|
+
id,
|
|
1525
|
+
enableScrollChaining,
|
|
1526
|
+
elementRef: elRef
|
|
1527
|
+
});
|
|
1606
1528
|
useEffect(() => {
|
|
1607
1529
|
if (open) {
|
|
1608
1530
|
onOpen?.();
|
|
@@ -1618,7 +1540,8 @@ const DrawerElement = forwardRef(
|
|
|
1618
1540
|
useEffect(() => {
|
|
1619
1541
|
if (!open) return;
|
|
1620
1542
|
if (!focusables) return;
|
|
1621
|
-
const activeElement = document
|
|
1543
|
+
const activeElement = getActiveElement(document);
|
|
1544
|
+
if (!activeElement) return;
|
|
1622
1545
|
if (activeElement.dataset.anv !== "drawer-header-close-button" && focusables.includes(activeElement)) {
|
|
1623
1546
|
return;
|
|
1624
1547
|
}
|
|
@@ -1628,53 +1551,6 @@ const DrawerElement = forwardRef(
|
|
|
1628
1551
|
focusables[0]?.focus();
|
|
1629
1552
|
}
|
|
1630
1553
|
}, [open, focusables]);
|
|
1631
|
-
useEffect(() => {
|
|
1632
|
-
if (!open || enableScrollChaining) return;
|
|
1633
|
-
let blockDocumentScroll = false;
|
|
1634
|
-
const content = contentRef.current;
|
|
1635
|
-
const scrollHandler = (e) => {
|
|
1636
|
-
const target = e.target;
|
|
1637
|
-
const isShadow2 = contentRef.current?.getRootNode() instanceof ShadowRoot;
|
|
1638
|
-
const isOverflowing = elRef.current && elRef.current.scrollHeight > elRef.current.clientHeight;
|
|
1639
|
-
if (isShadow2) {
|
|
1640
|
-
if (blockDocumentScroll) {
|
|
1641
|
-
e.preventDefault();
|
|
1642
|
-
return;
|
|
1643
|
-
}
|
|
1644
|
-
return;
|
|
1645
|
-
}
|
|
1646
|
-
if (!isOverflowing || !content?.contains(target)) {
|
|
1647
|
-
e.preventDefault();
|
|
1648
|
-
return;
|
|
1649
|
-
}
|
|
1650
|
-
return;
|
|
1651
|
-
};
|
|
1652
|
-
const shadowScrollHandler = (e) => {
|
|
1653
|
-
const target = e.target;
|
|
1654
|
-
const isTargetInsideContent = content?.contains(target);
|
|
1655
|
-
const isOverflowing = elRef.current && elRef.current.scrollHeight > elRef.current.clientHeight;
|
|
1656
|
-
blockDocumentScroll = !isTargetInsideContent;
|
|
1657
|
-
if (!isOverflowing || !content?.contains(target)) {
|
|
1658
|
-
e.preventDefault();
|
|
1659
|
-
}
|
|
1660
|
-
return;
|
|
1661
|
-
};
|
|
1662
|
-
const isShadow = content?.getRootNode() instanceof ShadowRoot;
|
|
1663
|
-
document.addEventListener("wheel", scrollHandler, {
|
|
1664
|
-
passive: false
|
|
1665
|
-
});
|
|
1666
|
-
if (isShadow) {
|
|
1667
|
-
content?.getRootNode().addEventListener("wheel", shadowScrollHandler, {
|
|
1668
|
-
passive: false
|
|
1669
|
-
});
|
|
1670
|
-
}
|
|
1671
|
-
return () => {
|
|
1672
|
-
document.getRootNode().removeEventListener("wheel", scrollHandler);
|
|
1673
|
-
if (isShadow) {
|
|
1674
|
-
content?.getRootNode().removeEventListener("wheel", shadowScrollHandler);
|
|
1675
|
-
}
|
|
1676
|
-
};
|
|
1677
|
-
}, [enableScrollChaining, open]);
|
|
1678
1554
|
const onCancelHandler = (e) => {
|
|
1679
1555
|
e.preventDefault();
|
|
1680
1556
|
if (disableCloseOnEscape) return;
|
|
@@ -1722,6 +1598,7 @@ const DrawerElement = forwardRef(
|
|
|
1722
1598
|
{
|
|
1723
1599
|
className: DrawerClassNames,
|
|
1724
1600
|
"data-anv": "drawer",
|
|
1601
|
+
"data-anv-scroll-chaining": enableScrollChaining,
|
|
1725
1602
|
ref: combinedRef,
|
|
1726
1603
|
onCancel: onCancelHandler,
|
|
1727
1604
|
onClick: onClickHandler,
|
|
@@ -1733,7 +1610,7 @@ const DrawerElement = forwardRef(
|
|
|
1733
1610
|
"section",
|
|
1734
1611
|
{
|
|
1735
1612
|
ref: contentRef,
|
|
1736
|
-
className: styles$
|
|
1613
|
+
className: styles$1.container,
|
|
1737
1614
|
"data-open": open,
|
|
1738
1615
|
children
|
|
1739
1616
|
}
|
|
@@ -1761,122 +1638,6 @@ const Drawer = Object.assign(DrawerElement, {
|
|
|
1761
1638
|
CancelButton: DrawerCancelButton
|
|
1762
1639
|
});
|
|
1763
1640
|
|
|
1764
|
-
function supportsPopover() {
|
|
1765
|
-
return Object.prototype.hasOwnProperty.call(HTMLElement.prototype, "popover");
|
|
1766
|
-
}
|
|
1767
|
-
|
|
1768
|
-
const label = "_label_iolth_3";
|
|
1769
|
-
const required = "_required_iolth_47";
|
|
1770
|
-
const styles$3 = {
|
|
1771
|
-
label: label,
|
|
1772
|
-
"top-container": "_top-container_iolth_38",
|
|
1773
|
-
"label-text": "_label-text_iolth_43",
|
|
1774
|
-
required: required,
|
|
1775
|
-
"info-trigger": "_info-trigger_iolth_52",
|
|
1776
|
-
"info-content": "_info-content_iolth_57"
|
|
1777
|
-
};
|
|
1778
|
-
|
|
1779
|
-
const content = "_content_tjoaw_3";
|
|
1780
|
-
const scroller = "_scroller_tjoaw_30";
|
|
1781
|
-
const arrow = "_arrow_tjoaw_33";
|
|
1782
|
-
const trigger = "_trigger_tjoaw_39";
|
|
1783
|
-
const styles$2 = {
|
|
1784
|
-
content: content,
|
|
1785
|
-
scroller: scroller,
|
|
1786
|
-
arrow: arrow,
|
|
1787
|
-
trigger: trigger
|
|
1788
|
-
};
|
|
1789
|
-
|
|
1790
|
-
function useTooltipContext() {
|
|
1791
|
-
const context = useContext(TooltipContext);
|
|
1792
|
-
const invokerRef = useRef(null);
|
|
1793
|
-
const popoverRef = useRef(null);
|
|
1794
|
-
const arrowRef = useRef(null);
|
|
1795
|
-
useLayoutEffect(() => {
|
|
1796
|
-
if (!invokerRef.current) return;
|
|
1797
|
-
context?.setInvoker?.(invokerRef.current);
|
|
1798
|
-
if (!context?.openState) return;
|
|
1799
|
-
context.openTooltip();
|
|
1800
|
-
}, [context, invokerRef]);
|
|
1801
|
-
useLayoutEffect(() => {
|
|
1802
|
-
if (!popoverRef.current) return;
|
|
1803
|
-
context?.setTooltip?.(popoverRef.current);
|
|
1804
|
-
context?.setRootNode?.(popoverRef.current.getRootNode());
|
|
1805
|
-
if (!arrowRef.current) return;
|
|
1806
|
-
context?.setArrowElement?.(arrowRef.current);
|
|
1807
|
-
}, [context, popoverRef]);
|
|
1808
|
-
const onMouseEnterHandler = () => {
|
|
1809
|
-
context?.openTooltip();
|
|
1810
|
-
};
|
|
1811
|
-
const onMouseLeaveHandler = () => {
|
|
1812
|
-
context?.closeTooltip();
|
|
1813
|
-
};
|
|
1814
|
-
const onFocusHandler = () => {
|
|
1815
|
-
if (context?.controlled) return;
|
|
1816
|
-
context?.openTooltip();
|
|
1817
|
-
};
|
|
1818
|
-
const onBlurHandler = () => {
|
|
1819
|
-
if (context?.controlled) return;
|
|
1820
|
-
context?.closeTooltip();
|
|
1821
|
-
};
|
|
1822
|
-
const onKeyDownHandler = (e) => {
|
|
1823
|
-
if (!context?.openState) return;
|
|
1824
|
-
if (e.code === "Escape" && !context.controlled) {
|
|
1825
|
-
context?.closeTooltip();
|
|
1826
|
-
return;
|
|
1827
|
-
}
|
|
1828
|
-
};
|
|
1829
|
-
if (!context || !invokerRef || !popoverRef) return;
|
|
1830
|
-
return {
|
|
1831
|
-
invoker: {
|
|
1832
|
-
ref: invokerRef,
|
|
1833
|
-
element: context.invoker,
|
|
1834
|
-
onMouseEnter: onMouseEnterHandler,
|
|
1835
|
-
onMouseLeave: onMouseLeaveHandler,
|
|
1836
|
-
onKeyDown: onKeyDownHandler,
|
|
1837
|
-
onFocus: onFocusHandler,
|
|
1838
|
-
onBlur: onBlurHandler,
|
|
1839
|
-
"aria-haspopup": true,
|
|
1840
|
-
"aria-expanded": context.openState,
|
|
1841
|
-
"aria-details": context.tooltipId,
|
|
1842
|
-
"data-state": context.openState ? "open" : "closed",
|
|
1843
|
-
"aria-describedby": context.tooltipId
|
|
1844
|
-
},
|
|
1845
|
-
tooltip: {
|
|
1846
|
-
ref: popoverRef,
|
|
1847
|
-
element: context.popover,
|
|
1848
|
-
id: context.tooltipId,
|
|
1849
|
-
show: context.openTooltip,
|
|
1850
|
-
close: context.closeTooltip,
|
|
1851
|
-
style: context.tooltipStyle,
|
|
1852
|
-
arrowRef,
|
|
1853
|
-
key: context.resetKey
|
|
1854
|
-
},
|
|
1855
|
-
setOpen: context.setOpenState,
|
|
1856
|
-
open: context.openState,
|
|
1857
|
-
controlled: context.controlled,
|
|
1858
|
-
placement: context.placement,
|
|
1859
|
-
disableFlipFallback: context.disableFlipFallback
|
|
1860
|
-
};
|
|
1861
|
-
}
|
|
1862
|
-
|
|
1863
|
-
const TooltipLegacyContext = createContext(null);
|
|
1864
|
-
const useTooltipLegacyContext = () => {
|
|
1865
|
-
const context = useContext(TooltipLegacyContext);
|
|
1866
|
-
if (context == null) {
|
|
1867
|
-
throw new Error(
|
|
1868
|
-
"TooltipLegacy components must be wrapped in <TooltipLegacy />"
|
|
1869
|
-
);
|
|
1870
|
-
}
|
|
1871
|
-
return context;
|
|
1872
|
-
};
|
|
1873
|
-
|
|
1874
|
-
const styles$1 = {
|
|
1875
|
-
"content-legacy": "_content-legacy_19gkz_4",
|
|
1876
|
-
"arrow-legacy": "_arrow-legacy_19gkz_30",
|
|
1877
|
-
"trigger-legacy": "_trigger-legacy_19gkz_33"
|
|
1878
|
-
};
|
|
1879
|
-
|
|
1880
1641
|
const TooltipLegacyContent = forwardRef(function TooltipLegacyContent2({ style, className, ...props }, propRef) {
|
|
1881
1642
|
const {
|
|
1882
1643
|
context: floatingContext,
|
|
@@ -1892,7 +1653,7 @@ const TooltipLegacyContent = forwardRef(function TooltipLegacyContent2({ style,
|
|
|
1892
1653
|
useDelayGroup(floatingContext, { id });
|
|
1893
1654
|
const ref = useMergeRefs([context.refs.setFloating, propRef]);
|
|
1894
1655
|
if (!floatingContext.open) return null;
|
|
1895
|
-
const contentCx = cx(styles$
|
|
1656
|
+
const contentCx = cx(styles$4["content-legacy"], className);
|
|
1896
1657
|
return /* @__PURE__ */ jsx(
|
|
1897
1658
|
FloatingPortal,
|
|
1898
1659
|
{
|
|
@@ -1915,7 +1676,7 @@ const TooltipLegacyContent = forwardRef(function TooltipLegacyContent2({ style,
|
|
|
1915
1676
|
{
|
|
1916
1677
|
ref: context.arrowRef,
|
|
1917
1678
|
context: floatingContext,
|
|
1918
|
-
className: styles$
|
|
1679
|
+
className: styles$4["arrow-legacy"]
|
|
1919
1680
|
}
|
|
1920
1681
|
),
|
|
1921
1682
|
props.children
|
|
@@ -1940,7 +1701,7 @@ const TooltipContentElement = forwardRef(
|
|
|
1940
1701
|
...rest
|
|
1941
1702
|
} = props;
|
|
1942
1703
|
const context = useTooltipContext();
|
|
1943
|
-
const tooltipClassNames = cx(className, styles$
|
|
1704
|
+
const tooltipClassNames = cx(className, styles$5["content"]);
|
|
1944
1705
|
const childrenRef = useRef(null);
|
|
1945
1706
|
const focusItems = useRef();
|
|
1946
1707
|
const combinedStyles = {
|
|
@@ -1996,7 +1757,7 @@ const TooltipContentElement = forwardRef(
|
|
|
1996
1757
|
/* @__PURE__ */ jsx(
|
|
1997
1758
|
"div",
|
|
1998
1759
|
{
|
|
1999
|
-
className: styles$
|
|
1760
|
+
className: styles$5.scroller,
|
|
2000
1761
|
role: "presentation",
|
|
2001
1762
|
tabIndex: -1,
|
|
2002
1763
|
ref: childrenRef,
|
|
@@ -2005,7 +1766,7 @@ const TooltipContentElement = forwardRef(
|
|
|
2005
1766
|
},
|
|
2006
1767
|
context?.tooltip.key
|
|
2007
1768
|
),
|
|
2008
|
-
/* @__PURE__ */ jsx("span", { className: styles$
|
|
1769
|
+
/* @__PURE__ */ jsx("span", { className: styles$5["arrow"], ref: context?.tooltip.arrowRef, children: /* @__PURE__ */ jsxs("svg", { "aria-hidden": "true", width: "14", height: "14", viewBox: "0 0 14 14", children: [
|
|
2009
1770
|
/* @__PURE__ */ jsx("path", { stroke: "none", d: "M0,0 H14 L7,7 Q7,7 7,7 Z" }),
|
|
2010
1771
|
/* @__PURE__ */ jsx("clipPath", { id: ":r9:", children: /* @__PURE__ */ jsx("rect", { x: "0", y: "0", width: "14", height: "14" }) })
|
|
2011
1772
|
] }) })
|
|
@@ -2034,7 +1795,7 @@ const TooltipLegacyTrigger = forwardRef(function TooltipLegacyTrigger2({ childre
|
|
|
2034
1795
|
"span",
|
|
2035
1796
|
{
|
|
2036
1797
|
ref,
|
|
2037
|
-
className: cx([styles$
|
|
1798
|
+
className: cx([styles$4["trigger-legacy"]], className),
|
|
2038
1799
|
"data-anv": "tooltip-trigger",
|
|
2039
1800
|
"data-state": context.open ? "open" : "closed",
|
|
2040
1801
|
...restOfContextProps,
|
|
@@ -2060,9 +1821,10 @@ const TooltipTriggerElement = forwardRef(
|
|
|
2060
1821
|
() => isValidElement(children) && children.type !== Fragment$1 && typeof children.type !== "function",
|
|
2061
1822
|
[children]
|
|
2062
1823
|
);
|
|
1824
|
+
const refs = useMergeRefs([children?.ref, context?.invoker.ref]);
|
|
2063
1825
|
const childProps = useMemo(
|
|
2064
1826
|
() => ({
|
|
2065
|
-
ref:
|
|
1827
|
+
ref: refs,
|
|
2066
1828
|
"aria-haspopup": context?.invoker["aria-haspopup"],
|
|
2067
1829
|
"aria-expanded": context?.invoker["aria-expanded"],
|
|
2068
1830
|
"aria-details": context?.invoker["aria-details"],
|
|
@@ -2096,7 +1858,7 @@ const TooltipTriggerElement = forwardRef(
|
|
|
2096
1858
|
return /* @__PURE__ */ jsx(
|
|
2097
1859
|
"span",
|
|
2098
1860
|
{
|
|
2099
|
-
className: cx([styles$
|
|
1861
|
+
className: cx([styles$5["trigger"]], className),
|
|
2100
1862
|
"data-anv": "tooltip-trigger",
|
|
2101
1863
|
ref: propRef,
|
|
2102
1864
|
onMouseEnter: onMouseEnterHandler,
|
|
@@ -2400,30 +2162,48 @@ const Tooltip = Object.assign(TooltipElement, {
|
|
|
2400
2162
|
Context: TooltipContext
|
|
2401
2163
|
});
|
|
2402
2164
|
|
|
2165
|
+
const LabelMoreInfoIcon = ({
|
|
2166
|
+
moreInfo,
|
|
2167
|
+
openMoreInfo
|
|
2168
|
+
}) => {
|
|
2169
|
+
const [open, setOpen] = useState(openMoreInfo);
|
|
2170
|
+
useEffect(() => {
|
|
2171
|
+
if (openMoreInfo) {
|
|
2172
|
+
setOpen(true);
|
|
2173
|
+
} else {
|
|
2174
|
+
setOpen(false);
|
|
2175
|
+
setTimeout(() => {
|
|
2176
|
+
setOpen(void 0);
|
|
2177
|
+
});
|
|
2178
|
+
}
|
|
2179
|
+
}, [openMoreInfo]);
|
|
2180
|
+
return /* @__PURE__ */ jsxs(
|
|
2181
|
+
Tooltip,
|
|
2182
|
+
{
|
|
2183
|
+
open,
|
|
2184
|
+
placement: "top",
|
|
2185
|
+
offset: 5,
|
|
2186
|
+
fallbackPlacements: ["right", "bottom", "left"],
|
|
2187
|
+
children: [
|
|
2188
|
+
/* @__PURE__ */ jsx(Tooltip.Trigger, { className: styles$6["info-trigger"], children: /* @__PURE__ */ jsx(Icon, { svg: SvgInfo }) }),
|
|
2189
|
+
/* @__PURE__ */ jsx(Tooltip.Content, { className: styles$6["info-content"], children: moreInfo })
|
|
2190
|
+
]
|
|
2191
|
+
}
|
|
2192
|
+
);
|
|
2193
|
+
};
|
|
2403
2194
|
const Label = forwardRef((props, ref) => {
|
|
2404
2195
|
const { children, className, moreInfo, required, openMoreInfo, ...rest } = props;
|
|
2405
|
-
const LabelClassNames = cx([styles$
|
|
2196
|
+
const LabelClassNames = cx([styles$6["label"]], className);
|
|
2406
2197
|
return /* @__PURE__ */ jsxs("label", { className: LabelClassNames, "data-anv": "label", ref, ...rest, children: [
|
|
2407
|
-
/* @__PURE__ */ jsxs("div", { className: styles$
|
|
2408
|
-
/* @__PURE__ */ jsxs("span", { className: styles$
|
|
2198
|
+
/* @__PURE__ */ jsxs("div", { className: styles$6["top-container"], "aria-atomic": "true", children: [
|
|
2199
|
+
/* @__PURE__ */ jsxs("span", { className: styles$6["label-text"], children: [
|
|
2409
2200
|
children,
|
|
2410
2201
|
required ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
2411
|
-
/* @__PURE__ */ jsx("span", { "aria-hidden": true, className: styles$
|
|
2202
|
+
/* @__PURE__ */ jsx("span", { "aria-hidden": true, className: styles$6["required"], children: "*" }),
|
|
2412
2203
|
/* @__PURE__ */ jsx(SrOnly, { children: "Required" })
|
|
2413
2204
|
] }) : null
|
|
2414
2205
|
] }),
|
|
2415
|
-
moreInfo ? /* @__PURE__ */
|
|
2416
|
-
Tooltip,
|
|
2417
|
-
{
|
|
2418
|
-
open: openMoreInfo ? openMoreInfo : void 0,
|
|
2419
|
-
placement: "top",
|
|
2420
|
-
fallbackPlacements: ["right", "bottom", "left"],
|
|
2421
|
-
children: [
|
|
2422
|
-
/* @__PURE__ */ jsx(Tooltip.Trigger, { className: styles$3["info-trigger"], children: /* @__PURE__ */ jsx(Icon, { svg: SvgInfo }) }),
|
|
2423
|
-
/* @__PURE__ */ jsx(Tooltip.Content, { className: styles$3["info-content"], children: moreInfo })
|
|
2424
|
-
]
|
|
2425
|
-
}
|
|
2426
|
-
) : null
|
|
2206
|
+
moreInfo ? /* @__PURE__ */ jsx(LabelMoreInfoIcon, { moreInfo, openMoreInfo }) : null
|
|
2427
2207
|
] }),
|
|
2428
2208
|
moreInfo ? /* @__PURE__ */ jsx(SrOnly, { children: moreInfo }) : null
|
|
2429
2209
|
] });
|
|
@@ -2548,5 +2328,5 @@ const ProgressBar = forwardRef(
|
|
|
2548
2328
|
);
|
|
2549
2329
|
ProgressBar.displayName = "ProgressBar";
|
|
2550
2330
|
|
|
2551
|
-
export {
|
|
2552
|
-
//# sourceMappingURL=ProgressBar-
|
|
2331
|
+
export { DrawerCancelButton as D, Helper as H, Label as L, ProgressBar as P, TooltipTrigger as T, DrawerFooter as a, DrawerHeader as b, DrawerContent as c, Drawer as d, TooltipContent as e, Tooltip as f, getActiveElement as g, Toaster as h, DialogContext as i, useDialogScrollLock as j, ToastProvider as k, ToasterPopover as l, ToasterContent as m, DrawerContext as n, supportsPopover as s, toast as t, useKeyboardFocusables as u };
|
|
2332
|
+
//# sourceMappingURL=ProgressBar-DojG9LHF-nlymvlXw.js.map
|