@dxos/react-ui-editor 0.8.4-main.dedc0f3 → 0.8.4-main.e098934
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/lib/browser/index.mjs +82 -190
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +71 -1
- package/dist/lib/browser/testing/index.mjs.map +4 -4
- package/dist/lib/node-esm/index.mjs +82 -190
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/testing/index.mjs +71 -1
- package/dist/lib/node-esm/testing/index.mjs.map +4 -4
- package/dist/types/src/components/{Popover → CommandMenu}/CommandMenu.d.ts +10 -6
- package/dist/types/src/components/CommandMenu/CommandMenu.d.ts.map +1 -0
- package/dist/types/src/components/CommandMenu/index.d.ts +2 -0
- package/dist/types/src/components/CommandMenu/index.d.ts.map +1 -0
- package/dist/types/src/components/index.d.ts +1 -1
- package/dist/types/src/components/index.d.ts.map +1 -1
- package/dist/types/src/extensions/autoscroll.d.ts.map +1 -1
- package/dist/types/src/extensions/command/action.d.ts.map +1 -1
- package/dist/types/src/extensions/command/floating-menu.d.ts.map +1 -1
- package/dist/types/src/extensions/command/useCommandMenu.d.ts +1 -2
- package/dist/types/src/extensions/command/useCommandMenu.d.ts.map +1 -1
- package/dist/types/src/extensions/markdown/link.d.ts.map +1 -1
- package/dist/types/src/extensions/preview/preview.d.ts +0 -1
- package/dist/types/src/extensions/preview/preview.d.ts.map +1 -1
- package/dist/types/src/hooks/useTextEditor.d.ts.map +1 -1
- package/dist/types/src/stories/CommandMenu.stories.d.ts.map +1 -1
- package/dist/types/src/stories/Outliner.stories.d.ts.map +1 -1
- package/dist/types/src/testing/PreviewPopover.d.ts +20 -0
- package/dist/types/src/testing/PreviewPopover.d.ts.map +1 -0
- package/dist/types/src/testing/index.d.ts +1 -0
- package/dist/types/src/testing/index.d.ts.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +33 -33
- package/src/components/{Popover → CommandMenu}/CommandMenu.tsx +93 -26
- package/src/components/{Popover → CommandMenu}/index.ts +0 -2
- package/src/components/index.ts +1 -1
- package/src/extensions/autoscroll.ts +14 -8
- package/src/extensions/command/action.ts +0 -1
- package/src/extensions/command/command-menu.ts +1 -1
- package/src/extensions/command/floating-menu.ts +9 -14
- package/src/extensions/command/useCommandMenu.ts +3 -7
- package/src/extensions/markdown/link.ts +3 -0
- package/src/extensions/outliner/outliner.ts +1 -1
- package/src/extensions/preview/preview.ts +0 -3
- package/src/hooks/useTextEditor.ts +0 -12
- package/src/stories/CommandMenu.stories.tsx +5 -7
- package/src/stories/Outliner.stories.tsx +28 -19
- package/src/stories/Preview.stories.tsx +4 -4
- package/src/{components/Popover/RefDropdownMenu.tsx → testing/PreviewPopover.tsx} +19 -30
- package/src/testing/index.ts +1 -0
- package/dist/types/src/components/Popover/CommandMenu.d.ts.map +0 -1
- package/dist/types/src/components/Popover/RefDropdownMenu.d.ts +0 -14
- package/dist/types/src/components/Popover/RefDropdownMenu.d.ts.map +0 -1
- package/dist/types/src/components/Popover/RefPopover.d.ts +0 -37
- package/dist/types/src/components/Popover/RefPopover.d.ts.map +0 -1
- package/dist/types/src/components/Popover/index.d.ts +0 -4
- package/dist/types/src/components/Popover/index.d.ts.map +0 -1
- package/src/components/Popover/RefPopover.tsx +0 -117
@@ -6,38 +6,27 @@ import { createContext } from '@radix-ui/react-context';
|
|
6
6
|
import React, { type PropsWithChildren, type RefObject, useCallback, useEffect, useRef, useState } from 'react';
|
7
7
|
|
8
8
|
import { addEventListener } from '@dxos/async';
|
9
|
-
import { type
|
10
|
-
import { DropdownMenu } from '@dxos/react-ui';
|
9
|
+
import { type DxAnchorActivate, Popover } from '@dxos/react-ui';
|
11
10
|
|
12
|
-
import { type PreviewLinkRef, type PreviewLinkTarget
|
11
|
+
import { type PreviewLinkRef, type PreviewLinkTarget } from '../extensions';
|
13
12
|
|
14
|
-
|
13
|
+
type PreviewLookup = (link: PreviewLinkRef) => Promise<PreviewLinkTarget | null | undefined>;
|
15
14
|
|
16
|
-
|
17
|
-
// Context
|
18
|
-
//
|
19
|
-
|
20
|
-
type RefDropdownMenuValue = Partial<{
|
15
|
+
type PreviewPopoverValue = Partial<{
|
21
16
|
link: PreviewLinkRef;
|
22
17
|
target: PreviewLinkTarget;
|
23
18
|
pending: boolean;
|
24
19
|
}>;
|
25
20
|
|
26
|
-
const [
|
21
|
+
const [PreviewPopoverContextProvider, usePreviewPopover] = createContext<PreviewPopoverValue>('PreviewPopover', {});
|
27
22
|
|
28
|
-
|
29
|
-
// Context Provider
|
30
|
-
// NOTE: This is handled by the preview-plugin.
|
31
|
-
//
|
32
|
-
|
33
|
-
type RefDropdownMenuProviderProps = PropsWithChildren<{
|
23
|
+
type PopoverLookupProviderProps = PropsWithChildren<{
|
34
24
|
onLookup?: PreviewLookup;
|
35
25
|
}>;
|
36
26
|
|
37
|
-
const
|
38
|
-
const trigger = useRef<
|
39
|
-
const [value, setValue] = useState<
|
40
|
-
const [rootRef, setRootRef] = useState<HTMLDivElement | null>(null);
|
27
|
+
const PreviewPopoverProvider = ({ children, onLookup }: PopoverLookupProviderProps) => {
|
28
|
+
const trigger = useRef<HTMLElement | null>(null);
|
29
|
+
const [value, setValue] = useState<PreviewPopoverValue>({});
|
41
30
|
const [open, setOpen] = useState(false);
|
42
31
|
|
43
32
|
const handleDxAnchorActivate = useCallback(
|
@@ -61,8 +50,9 @@ const RefDropdownMenuProvider = ({ children, onLookup }: RefDropdownMenuProvider
|
|
61
50
|
[onLookup],
|
62
51
|
);
|
63
52
|
|
53
|
+
const [rootRef, setRootRef] = useState<HTMLDivElement | null>(null);
|
64
54
|
useEffect(() => {
|
65
|
-
if (!rootRef) {
|
55
|
+
if (!rootRef || !handleDxAnchorActivate) {
|
66
56
|
return;
|
67
57
|
}
|
68
58
|
|
@@ -70,20 +60,19 @@ const RefDropdownMenuProvider = ({ children, onLookup }: RefDropdownMenuProvider
|
|
70
60
|
capture: true,
|
71
61
|
passive: false,
|
72
62
|
});
|
73
|
-
}, [rootRef]);
|
63
|
+
}, [rootRef, handleDxAnchorActivate]);
|
74
64
|
|
75
65
|
return (
|
76
|
-
<
|
77
|
-
<
|
78
|
-
<
|
66
|
+
<PreviewPopoverContextProvider pending={value.pending} link={value.link} target={value.target}>
|
67
|
+
<Popover.Root open={open} onOpenChange={setOpen}>
|
68
|
+
<Popover.VirtualTrigger virtualRef={trigger as unknown as RefObject<HTMLButtonElement>} />
|
79
69
|
<div role='none' className='contents' ref={setRootRef}>
|
80
70
|
{children}
|
81
71
|
</div>
|
82
|
-
</
|
83
|
-
</
|
72
|
+
</Popover.Root>
|
73
|
+
</PreviewPopoverContextProvider>
|
84
74
|
);
|
85
75
|
};
|
76
|
+
export { PreviewPopoverProvider, usePreviewPopover };
|
86
77
|
|
87
|
-
export {
|
88
|
-
|
89
|
-
export type { RefDropdownMenuProviderProps, RefDropdownMenuValue };
|
78
|
+
export type { PopoverLookupProviderProps, PreviewPopoverValue };
|
package/src/testing/index.ts
CHANGED
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"CommandMenu.d.ts","sourceRoot":"","sources":["../../../../../src/components/Popover/CommandMenu.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAmD,MAAM,OAAO,CAAC;AAExE,OAAO,EAAQ,KAAK,KAAK,EAA+D,MAAM,gBAAgB,CAAC;AAC/G,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAI/C,MAAM,MAAM,gBAAgB,GAAG;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,KAAK,EAAE,eAAe,EAAE,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,KAAK,YAAY,CAAC,IAAI,CAAC,CAAC;CACnE,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,IAAI,CAAC;CAC3C,CAAC;AAGF,eAAO,MAAM,WAAW,GAAI,mCAAmC,gBAAgB,sBAyB9E,CAAC;AAiEF,eAAO,MAAM,OAAO,GAAI,QAAQ,gBAAgB,EAAE,EAAE,KAAK,MAAM,KAAG,eAAe,GAAG,SAEnF,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,QAAQ,gBAAgB,EAAE,EAAE,KAAK,MAAM,KAAG,eAIrE,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,QAAQ,gBAAgB,EAAE,EAAE,KAAK,MAAM,KAAG,eAIzE,CAAC;AAEF,eAAO,MAAM,WAAW,GACtB,QAAQ,gBAAgB,EAAE,EAC1B,QAAQ,CAAC,IAAI,EAAE,eAAe,KAAK,OAAO,KACzC,gBAAgB,EAKlB,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,MAAM,UAAU,EAAE,MAAM,MAAM,EAAE,QAAQ,MAAM,SAK5E,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAAI,MAAM,UAAU,EAAE,MAAM,MAAM,EAAE,QAAQ,MAAM,SAW/E,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,gBA6E/B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,gBA2B/B,CAAC"}
|
@@ -1,14 +0,0 @@
|
|
1
|
-
import React, { type PropsWithChildren } from 'react';
|
2
|
-
import { type PreviewLinkRef, type PreviewLinkTarget, type PreviewLookup } from '../../extensions';
|
3
|
-
type RefDropdownMenuValue = Partial<{
|
4
|
-
link: PreviewLinkRef;
|
5
|
-
target: PreviewLinkTarget;
|
6
|
-
pending: boolean;
|
7
|
-
}>;
|
8
|
-
type RefDropdownMenuProviderProps = PropsWithChildren<{
|
9
|
-
onLookup?: PreviewLookup;
|
10
|
-
}>;
|
11
|
-
declare const RefDropdownMenuProvider: ({ children, onLookup }: RefDropdownMenuProviderProps) => React.JSX.Element;
|
12
|
-
export { RefDropdownMenuProvider };
|
13
|
-
export type { RefDropdownMenuProviderProps, RefDropdownMenuValue };
|
14
|
-
//# sourceMappingURL=RefDropdownMenu.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"RefDropdownMenu.d.ts","sourceRoot":"","sources":["../../../../../src/components/Popover/RefDropdownMenu.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAAE,KAAK,iBAAiB,EAA4D,MAAM,OAAO,CAAC;AAMhH,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,iBAAiB,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAQnG,KAAK,oBAAoB,GAAG,OAAO,CAAC;IAClC,IAAI,EAAE,cAAc,CAAC;IACrB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC,CAAC;AASH,KAAK,4BAA4B,GAAG,iBAAiB,CAAC;IACpD,QAAQ,CAAC,EAAE,aAAa,CAAC;CAC1B,CAAC,CAAC;AAEH,QAAA,MAAM,uBAAuB,GAAI,wBAAwB,4BAA4B,sBAgDpF,CAAC;AAEF,OAAO,EAAE,uBAAuB,EAAE,CAAC;AAEnC,YAAY,EAAE,4BAA4B,EAAE,oBAAoB,EAAE,CAAC"}
|
@@ -1,37 +0,0 @@
|
|
1
|
-
import React, { type PropsWithChildren } from 'react';
|
2
|
-
import { type DxAnchor, type DxAnchorActivate } from '@dxos/lit-ui';
|
3
|
-
import { type PreviewLinkRef, type PreviewLinkTarget, type PreviewLookup } from '../../extensions';
|
4
|
-
type RefPopoverValue = Partial<{
|
5
|
-
link: PreviewLinkRef;
|
6
|
-
target: PreviewLinkTarget;
|
7
|
-
pending: boolean;
|
8
|
-
}>;
|
9
|
-
declare const useRefPopover: (consumerName: string) => Partial<{
|
10
|
-
link: PreviewLinkRef;
|
11
|
-
target: PreviewLinkTarget;
|
12
|
-
pending: boolean;
|
13
|
-
}>;
|
14
|
-
type PreviewProviderProps = PropsWithChildren<{
|
15
|
-
onLookup?: PreviewLookup;
|
16
|
-
}>;
|
17
|
-
declare const PreviewProvider: ({ children, onLookup }: PreviewProviderProps) => React.JSX.Element;
|
18
|
-
type RefPopoverProps = PropsWithChildren<{
|
19
|
-
modal?: boolean;
|
20
|
-
open?: boolean;
|
21
|
-
onOpenChange?: (open: boolean) => void;
|
22
|
-
onActivate?: (event: DxAnchorActivate) => void;
|
23
|
-
}>;
|
24
|
-
/**
|
25
|
-
* Wraps components that contain <dx-anchor> elements?
|
26
|
-
*/
|
27
|
-
declare const RefPopover: React.ForwardRefExoticComponent<{
|
28
|
-
modal?: boolean;
|
29
|
-
open?: boolean;
|
30
|
-
onOpenChange?: (open: boolean) => void;
|
31
|
-
onActivate?: (event: DxAnchorActivate) => void;
|
32
|
-
} & {
|
33
|
-
children?: React.ReactNode | undefined;
|
34
|
-
} & React.RefAttributes<DxAnchor | null>>;
|
35
|
-
export { RefPopover, PreviewProvider, useRefPopover };
|
36
|
-
export type { RefPopoverProps, PreviewProviderProps, RefPopoverValue };
|
37
|
-
//# sourceMappingURL=RefPopover.d.ts.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"RefPopover.d.ts","sourceRoot":"","sources":["../../../../../src/components/Popover/RefPopover.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EACZ,KAAK,iBAAiB,EAOvB,MAAM,OAAO,CAAC;AAGf,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAGpE,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,iBAAiB,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAQnG,KAAK,eAAe,GAAG,OAAO,CAAC;IAC7B,IAAI,EAAE,cAAc,CAAC;IACrB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC,CAAC;AAEH,QAAA,MAAkC,aAAa;UALvC,cAAc;YACZ,iBAAiB;aAChB,OAAO;EAGiF,CAAC;AAMpG,KAAK,oBAAoB,GAAG,iBAAiB,CAAC;IAC5C,QAAQ,CAAC,EAAE,aAAa,CAAC;CAC1B,CAAC,CAAC;AAEH,QAAA,MAAM,eAAe,GAAI,wBAAwB,oBAAoB,sBAiCpE,CAAC;AAMF,KAAK,eAAe,GAAG,iBAAiB,CAAC;IACvC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;CAChD,CAAC,CAAC;AAEH;;GAEG;AACH,QAAA,MAAM,UAAU;YATN,OAAO;WACR,OAAO;mBACC,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI;iBACzB,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI;;;yCA0B/C,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,CAAC;AAEtD,YAAY,EAAE,eAAe,EAAE,oBAAoB,EAAE,eAAe,EAAE,CAAC"}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/Popover/index.ts"],"names":[],"mappings":"AAIA,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC"}
|
@@ -1,117 +0,0 @@
|
|
1
|
-
//
|
2
|
-
// Copyright 2025 DXOS.org
|
3
|
-
//
|
4
|
-
|
5
|
-
import { createContext } from '@radix-ui/react-context';
|
6
|
-
import React, {
|
7
|
-
type PropsWithChildren,
|
8
|
-
type RefObject,
|
9
|
-
forwardRef,
|
10
|
-
useCallback,
|
11
|
-
useEffect,
|
12
|
-
useRef,
|
13
|
-
useState,
|
14
|
-
} from 'react';
|
15
|
-
|
16
|
-
import { addEventListener } from '@dxos/async';
|
17
|
-
import { type DxAnchor, type DxAnchorActivate } from '@dxos/lit-ui';
|
18
|
-
import { Popover } from '@dxos/react-ui';
|
19
|
-
|
20
|
-
import { type PreviewLinkRef, type PreviewLinkTarget, type PreviewLookup } from '../../extensions';
|
21
|
-
|
22
|
-
// TODO(burdon): Move to @dxos/lit-ui
|
23
|
-
|
24
|
-
//
|
25
|
-
// Context
|
26
|
-
//
|
27
|
-
|
28
|
-
type RefPopoverValue = Partial<{
|
29
|
-
link: PreviewLinkRef;
|
30
|
-
target: PreviewLinkTarget;
|
31
|
-
pending: boolean;
|
32
|
-
}>;
|
33
|
-
|
34
|
-
const [RefPopoverContextProvider, useRefPopover] = createContext<RefPopoverValue>('RefPopover', {});
|
35
|
-
|
36
|
-
//
|
37
|
-
// ContextProvider
|
38
|
-
//
|
39
|
-
|
40
|
-
type PreviewProviderProps = PropsWithChildren<{
|
41
|
-
onLookup?: PreviewLookup;
|
42
|
-
}>;
|
43
|
-
|
44
|
-
const PreviewProvider = ({ children, onLookup }: PreviewProviderProps) => {
|
45
|
-
const trigger = useRef<DxAnchor | null>(null);
|
46
|
-
const [value, setValue] = useState<RefPopoverValue>({});
|
47
|
-
const [open, setOpen] = useState(false);
|
48
|
-
|
49
|
-
const handleDxAnchorActivate = useCallback(
|
50
|
-
(event: DxAnchorActivate) => {
|
51
|
-
const { refId, label, trigger: dxTrigger } = event;
|
52
|
-
setValue((value) => ({
|
53
|
-
...value,
|
54
|
-
link: { label, ref: refId },
|
55
|
-
pending: true,
|
56
|
-
}));
|
57
|
-
trigger.current = dxTrigger;
|
58
|
-
queueMicrotask(() => setOpen(true));
|
59
|
-
void onLookup?.({ label, ref: refId }).then((target) =>
|
60
|
-
setValue((value) => ({
|
61
|
-
...value,
|
62
|
-
target: target ?? undefined,
|
63
|
-
pending: false,
|
64
|
-
})),
|
65
|
-
);
|
66
|
-
},
|
67
|
-
[onLookup],
|
68
|
-
);
|
69
|
-
|
70
|
-
return (
|
71
|
-
<RefPopoverContextProvider pending={value.pending} link={value.link} target={value.target}>
|
72
|
-
<RefPopover ref={trigger} open={open} onOpenChange={setOpen} onActivate={handleDxAnchorActivate}>
|
73
|
-
{children}
|
74
|
-
</RefPopover>
|
75
|
-
</RefPopoverContextProvider>
|
76
|
-
);
|
77
|
-
};
|
78
|
-
|
79
|
-
//
|
80
|
-
// Popover
|
81
|
-
//
|
82
|
-
|
83
|
-
type RefPopoverProps = PropsWithChildren<{
|
84
|
-
modal?: boolean;
|
85
|
-
open?: boolean;
|
86
|
-
onOpenChange?: (open: boolean) => void;
|
87
|
-
onActivate?: (event: DxAnchorActivate) => void;
|
88
|
-
}>;
|
89
|
-
|
90
|
-
/**
|
91
|
-
* Wraps components that contain <dx-anchor> elements?
|
92
|
-
*/
|
93
|
-
const RefPopover = forwardRef<DxAnchor | null, RefPopoverProps>(
|
94
|
-
({ children, open, onOpenChange, modal, onActivate }, ref) => {
|
95
|
-
const [rootRef, setRootRef] = useState<HTMLDivElement | null>(null);
|
96
|
-
useEffect(() => {
|
97
|
-
if (!rootRef || !onActivate) {
|
98
|
-
return;
|
99
|
-
}
|
100
|
-
|
101
|
-
return addEventListener(rootRef, 'dx-anchor-activate' as any, onActivate, { capture: true, passive: false });
|
102
|
-
}, [rootRef, onActivate]);
|
103
|
-
|
104
|
-
return (
|
105
|
-
<Popover.Root open={open} onOpenChange={onOpenChange} modal={modal}>
|
106
|
-
<Popover.VirtualTrigger virtualRef={ref as unknown as RefObject<HTMLButtonElement>} />
|
107
|
-
<div role='none' className='contents' ref={setRootRef}>
|
108
|
-
{children}
|
109
|
-
</div>
|
110
|
-
</Popover.Root>
|
111
|
-
);
|
112
|
-
},
|
113
|
-
);
|
114
|
-
|
115
|
-
export { RefPopover, PreviewProvider, useRefPopover };
|
116
|
-
|
117
|
-
export type { RefPopoverProps, PreviewProviderProps, RefPopoverValue };
|