@fluentui/react-popover 9.5.4 → 9.5.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (124) hide show
  1. package/.swcrc +30 -0
  2. package/CHANGELOG.json +82 -1
  3. package/CHANGELOG.md +22 -2
  4. package/lib/Popover.js.map +1 -1
  5. package/lib/PopoverSurface.js.map +1 -1
  6. package/lib/PopoverTrigger.js.map +1 -1
  7. package/lib/components/Popover/Popover.js +1 -0
  8. package/lib/components/Popover/Popover.js.map +1 -1
  9. package/lib/components/Popover/Popover.types.js +1 -1
  10. package/lib/components/Popover/Popover.types.js.map +1 -1
  11. package/lib/components/Popover/constants.js +1 -2
  12. package/lib/components/Popover/constants.js.map +1 -1
  13. package/lib/components/Popover/index.js.map +1 -1
  14. package/lib/components/Popover/renderPopover.js.map +1 -1
  15. package/lib/components/Popover/usePopover.js +8 -8
  16. package/lib/components/Popover/usePopover.js.map +1 -1
  17. package/lib/components/PopoverSurface/PopoverSurface.js.map +1 -1
  18. package/lib/components/PopoverSurface/PopoverSurface.types.js.map +1 -1
  19. package/lib/components/PopoverSurface/index.js.map +1 -1
  20. package/lib/components/PopoverSurface/renderPopoverSurface.js +1 -3
  21. package/lib/components/PopoverSurface/renderPopoverSurface.js.map +1 -1
  22. package/lib/components/PopoverSurface/usePopoverSurface.js +3 -2
  23. package/lib/components/PopoverSurface/usePopoverSurface.js.map +1 -1
  24. package/lib/components/PopoverSurface/usePopoverSurfaceStyles.js.map +1 -1
  25. package/lib/components/PopoverTrigger/PopoverTrigger.js +1 -0
  26. package/lib/components/PopoverTrigger/PopoverTrigger.js.map +1 -1
  27. package/lib/components/PopoverTrigger/PopoverTrigger.types.js +1 -1
  28. package/lib/components/PopoverTrigger/PopoverTrigger.types.js.map +1 -1
  29. package/lib/components/PopoverTrigger/index.js.map +1 -1
  30. package/lib/components/PopoverTrigger/renderPopoverTrigger.js +1 -2
  31. package/lib/components/PopoverTrigger/renderPopoverTrigger.js.map +1 -1
  32. package/lib/components/PopoverTrigger/usePopoverTrigger.js +1 -0
  33. package/lib/components/PopoverTrigger/usePopoverTrigger.js.map +1 -1
  34. package/lib/index.js.map +1 -1
  35. package/lib/popoverContext.js.map +1 -1
  36. package/lib-commonjs/Popover.js +5 -4
  37. package/lib-commonjs/Popover.js.map +1 -1
  38. package/lib-commonjs/PopoverSurface.js +5 -4
  39. package/lib-commonjs/PopoverSurface.js.map +1 -1
  40. package/lib-commonjs/PopoverTrigger.js +5 -4
  41. package/lib-commonjs/PopoverTrigger.js.map +1 -1
  42. package/lib-commonjs/components/Popover/Popover.js +14 -13
  43. package/lib-commonjs/components/Popover/Popover.js.map +1 -1
  44. package/lib-commonjs/components/Popover/Popover.types.js +5 -2
  45. package/lib-commonjs/components/Popover/Popover.types.js.map +1 -1
  46. package/lib-commonjs/components/Popover/constants.js +10 -8
  47. package/lib-commonjs/components/Popover/constants.js.map +1 -1
  48. package/lib-commonjs/components/Popover/index.js +8 -7
  49. package/lib-commonjs/components/Popover/index.js.map +1 -1
  50. package/lib-commonjs/components/Popover/renderPopover.js +31 -47
  51. package/lib-commonjs/components/Popover/renderPopover.js.map +1 -1
  52. package/lib-commonjs/components/Popover/usePopover.js +179 -173
  53. package/lib-commonjs/components/Popover/usePopover.js.map +1 -1
  54. package/lib-commonjs/components/PopoverSurface/PopoverSurface.js +19 -20
  55. package/lib-commonjs/components/PopoverSurface/PopoverSurface.js.map +1 -1
  56. package/lib-commonjs/components/PopoverSurface/PopoverSurface.types.js +3 -2
  57. package/lib-commonjs/components/PopoverSurface/PopoverSurface.types.js.map +1 -1
  58. package/lib-commonjs/components/PopoverSurface/index.js +9 -8
  59. package/lib-commonjs/components/PopoverSurface/index.js.map +1 -1
  60. package/lib-commonjs/components/PopoverSurface/renderPopoverSurface.js +23 -28
  61. package/lib-commonjs/components/PopoverSurface/renderPopoverSurface.js.map +1 -1
  62. package/lib-commonjs/components/PopoverSurface/usePopoverSurface.js +70 -81
  63. package/lib-commonjs/components/PopoverSurface/usePopoverSurface.js.map +1 -1
  64. package/lib-commonjs/components/PopoverSurface/usePopoverSurfaceStyles.js +243 -113
  65. package/lib-commonjs/components/PopoverSurface/usePopoverSurfaceStyles.js.map +1 -1
  66. package/lib-commonjs/components/PopoverTrigger/PopoverTrigger.js +15 -14
  67. package/lib-commonjs/components/PopoverTrigger/PopoverTrigger.js.map +1 -1
  68. package/lib-commonjs/components/PopoverTrigger/PopoverTrigger.types.js +5 -2
  69. package/lib-commonjs/components/PopoverTrigger/PopoverTrigger.types.js.map +1 -1
  70. package/lib-commonjs/components/PopoverTrigger/index.js +8 -7
  71. package/lib-commonjs/components/PopoverTrigger/index.js.map +1 -1
  72. package/lib-commonjs/components/PopoverTrigger/renderPopoverTrigger.js +12 -11
  73. package/lib-commonjs/components/PopoverTrigger/renderPopoverTrigger.js.map +1 -1
  74. package/lib-commonjs/components/PopoverTrigger/usePopoverTrigger.js +71 -80
  75. package/lib-commonjs/components/PopoverTrigger/usePopoverTrigger.js.map +1 -1
  76. package/lib-commonjs/index.js +30 -92
  77. package/lib-commonjs/index.js.map +1 -1
  78. package/lib-commonjs/popoverContext.js +34 -25
  79. package/lib-commonjs/popoverContext.js.map +1 -1
  80. package/package.json +14 -13
  81. package/lib-amd/Popover.js +0 -6
  82. package/lib-amd/Popover.js.map +0 -1
  83. package/lib-amd/PopoverSurface.js +0 -6
  84. package/lib-amd/PopoverSurface.js.map +0 -1
  85. package/lib-amd/PopoverTrigger.js +0 -6
  86. package/lib-amd/PopoverTrigger.js.map +0 -1
  87. package/lib-amd/components/Popover/Popover.js +0 -15
  88. package/lib-amd/components/Popover/Popover.js.map +0 -1
  89. package/lib-amd/components/Popover/Popover.types.js +0 -5
  90. package/lib-amd/components/Popover/Popover.types.js.map +0 -1
  91. package/lib-amd/components/Popover/constants.js +0 -15
  92. package/lib-amd/components/Popover/constants.js.map +0 -1
  93. package/lib-amd/components/Popover/index.js +0 -9
  94. package/lib-amd/components/Popover/index.js.map +0 -1
  95. package/lib-amd/components/Popover/renderPopover.js +0 -32
  96. package/lib-amd/components/Popover/renderPopover.js.map +0 -1
  97. package/lib-amd/components/Popover/usePopover.js +0 -147
  98. package/lib-amd/components/Popover/usePopover.js.map +0 -1
  99. package/lib-amd/components/PopoverSurface/PopoverSurface.js +0 -17
  100. package/lib-amd/components/PopoverSurface/PopoverSurface.js.map +0 -1
  101. package/lib-amd/components/PopoverSurface/PopoverSurface.types.js +0 -5
  102. package/lib-amd/components/PopoverSurface/PopoverSurface.types.js.map +0 -1
  103. package/lib-amd/components/PopoverSurface/index.js +0 -10
  104. package/lib-amd/components/PopoverSurface/index.js.map +0 -1
  105. package/lib-amd/components/PopoverSurface/renderPopoverSurface.js +0 -20
  106. package/lib-amd/components/PopoverSurface/renderPopoverSurface.js.map +0 -1
  107. package/lib-amd/components/PopoverSurface/usePopoverSurface.js +0 -69
  108. package/lib-amd/components/PopoverSurface/usePopoverSurface.js.map +0 -1
  109. package/lib-amd/components/PopoverSurface/usePopoverSurfaceStyles.js +0 -44
  110. package/lib-amd/components/PopoverSurface/usePopoverSurfaceStyles.js.map +0 -1
  111. package/lib-amd/components/PopoverTrigger/PopoverTrigger.js +0 -17
  112. package/lib-amd/components/PopoverTrigger/PopoverTrigger.js.map +0 -1
  113. package/lib-amd/components/PopoverTrigger/PopoverTrigger.types.js +0 -5
  114. package/lib-amd/components/PopoverTrigger/PopoverTrigger.types.js.map +0 -1
  115. package/lib-amd/components/PopoverTrigger/index.js +0 -9
  116. package/lib-amd/components/PopoverTrigger/index.js.map +0 -1
  117. package/lib-amd/components/PopoverTrigger/renderPopoverTrigger.js +0 -13
  118. package/lib-amd/components/PopoverTrigger/renderPopoverTrigger.js.map +0 -1
  119. package/lib-amd/components/PopoverTrigger/usePopoverTrigger.js +0 -61
  120. package/lib-amd/components/PopoverTrigger/usePopoverTrigger.js.map +0 -1
  121. package/lib-amd/index.js +0 -20
  122. package/lib-amd/index.js.map +0 -1
  123. package/lib-amd/popoverContext.js +0 -28
  124. package/lib-amd/popoverContext.js.map +0 -1
@@ -1,187 +1,193 @@
1
1
  "use strict";
2
-
3
2
  Object.defineProperty(exports, "__esModule", {
4
- value: true
3
+ value: true
5
4
  });
6
- exports.usePopover_unstable = void 0;
7
- const React = /*#__PURE__*/require("react");
8
- const react_utilities_1 = /*#__PURE__*/require("@fluentui/react-utilities");
9
- const react_shared_contexts_1 = /*#__PURE__*/require("@fluentui/react-shared-contexts");
10
- const react_positioning_1 = /*#__PURE__*/require("@fluentui/react-positioning");
11
- const react_portal_1 = /*#__PURE__*/require("@fluentui/react-portal");
12
- const react_tabster_1 = /*#__PURE__*/require("@fluentui/react-tabster");
13
- const index_1 = /*#__PURE__*/require("../PopoverSurface/index");
14
- const constants_1 = /*#__PURE__*/require("./constants");
15
- /**
16
- * Create the state required to render Popover.
17
- *
18
- * The returned state can be modified with hooks such as usePopoverStyles,
19
- * before being passed to renderPopover_unstable.
20
- *
21
- * @param props - props from this instance of Popover
22
- */
23
- const usePopover_unstable = props => {
24
- var _a;
25
- const [contextTarget, setContextTarget] = react_positioning_1.usePositioningMouseTarget();
26
- const initialState = {
27
- size: 'medium',
28
- contextTarget,
29
- setContextTarget,
30
- ...props
31
- };
32
- const children = React.Children.toArray(props.children);
33
- if (process.env.NODE_ENV !== 'production') {
34
- if (children.length === 0) {
35
- // eslint-disable-next-line no-console
36
- console.warn('Popover must contain at least one child');
37
- }
38
- if (children.length > 2) {
39
- // eslint-disable-next-line no-console
40
- console.warn('Popover must contain at most two children');
41
- }
42
- }
43
- let popoverTrigger = undefined;
44
- let popoverSurface = undefined;
45
- if (children.length === 2) {
46
- popoverTrigger = children[0];
47
- popoverSurface = children[1];
48
- } else if (children.length === 1) {
49
- popoverSurface = children[0];
50
- }
51
- const [open, setOpenState] = useOpenState(initialState);
52
- const setOpenTimeoutRef = React.useRef(0);
53
- const setOpen = react_utilities_1.useEventCallback((e, shouldOpen) => {
54
- var _a;
55
- clearTimeout(setOpenTimeoutRef.current);
56
- if (!(e instanceof Event) && e.persist) {
57
- // < React 17 still uses pooled synthetic events
58
- e.persist();
59
- }
60
- if (e.type === 'mouseleave') {
61
- // FIXME leaking Node timeout type
62
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
63
- // @ts-ignore
64
- setOpenTimeoutRef.current = setTimeout(() => {
65
- setOpenState(e, shouldOpen);
66
- }, (_a = props.mouseLeaveDelay) !== null && _a !== void 0 ? _a : 500);
67
- } else {
68
- setOpenState(e, shouldOpen);
69
- }
70
- });
71
- // Clear timeout on unmount
72
- // Setting state after a component unmounts can cause memory leaks
73
- React.useEffect(() => {
74
- return () => {
75
- clearTimeout(setOpenTimeoutRef.current);
5
+ Object.defineProperty(exports, "usePopover_unstable", {
6
+ enumerable: true,
7
+ get: ()=>usePopover_unstable
8
+ });
9
+ const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
10
+ const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
11
+ const _reactUtilities = require("@fluentui/react-utilities");
12
+ const _reactSharedContexts = require("@fluentui/react-shared-contexts");
13
+ const _reactPositioning = require("@fluentui/react-positioning");
14
+ const _reactPortal = require("@fluentui/react-portal");
15
+ const _reactTabster = require("@fluentui/react-tabster");
16
+ const _index = require("../PopoverSurface/index");
17
+ const _constants = require("./constants");
18
+ const usePopover_unstable = (props)=>{
19
+ const [contextTarget, setContextTarget] = (0, _reactPositioning.usePositioningMouseTarget)();
20
+ const initialState = {
21
+ size: 'medium',
22
+ contextTarget,
23
+ setContextTarget,
24
+ ...props
76
25
  };
77
- }, []);
78
- const toggleOpen = React.useCallback(e => {
79
- setOpen(e, !open);
80
- }, [setOpen, open]);
81
- const positioningRefs = usePopoverRefs(initialState);
82
- const {
83
- targetDocument
84
- } = react_shared_contexts_1.useFluent_unstable();
85
- react_utilities_1.useOnClickOutside({
86
- contains: react_portal_1.elementContains,
87
- element: targetDocument,
88
- callback: ev => setOpen(ev, false),
89
- refs: [positioningRefs.triggerRef, positioningRefs.contentRef],
90
- disabled: !open
91
- });
92
- // only close on scroll for context, or when closeOnScroll is specified
93
- const closeOnScroll = initialState.openOnContext || initialState.closeOnScroll;
94
- react_utilities_1.useOnScrollOutside({
95
- contains: react_portal_1.elementContains,
96
- element: targetDocument,
97
- callback: ev => setOpen(ev, false),
98
- refs: [positioningRefs.triggerRef, positioningRefs.contentRef],
99
- disabled: !open || !closeOnScroll
100
- });
101
- const {
102
- findFirstFocusable
103
- } = react_tabster_1.useFocusFinders();
104
- React.useEffect(() => {
105
- var _a;
106
- if (props.unstable_disableAutoFocus) {
107
- return;
26
+ const children = _react.Children.toArray(props.children);
27
+ if (process.env.NODE_ENV !== 'production') {
28
+ if (children.length === 0) {
29
+ // eslint-disable-next-line no-console
30
+ console.warn('Popover must contain at least one child');
31
+ }
32
+ if (children.length > 2) {
33
+ // eslint-disable-next-line no-console
34
+ console.warn('Popover must contain at most two children');
35
+ }
108
36
  }
109
- if (open && positioningRefs.contentRef.current) {
110
- const containerTabIndex = (_a = positioningRefs.contentRef.current.getAttribute('tabIndex')) !== null && _a !== void 0 ? _a : undefined;
111
- const firstFocusable = isNaN(containerTabIndex) ? findFirstFocusable(positioningRefs.contentRef.current) : positioningRefs.contentRef.current;
112
- firstFocusable === null || firstFocusable === void 0 ? void 0 : firstFocusable.focus();
37
+ let popoverTrigger = undefined;
38
+ let popoverSurface = undefined;
39
+ if (children.length === 2) {
40
+ popoverTrigger = children[0];
41
+ popoverSurface = children[1];
42
+ } else if (children.length === 1) {
43
+ popoverSurface = children[0];
113
44
  }
114
- }, [findFirstFocusable, open, positioningRefs.contentRef, props.unstable_disableAutoFocus]);
115
- return {
116
- ...initialState,
117
- ...positioningRefs,
118
- popoverTrigger,
119
- popoverSurface,
120
- open,
121
- setOpen,
122
- toggleOpen,
123
- setContextTarget,
124
- contextTarget,
125
- inline: (_a = props.inline) !== null && _a !== void 0 ? _a : false
126
- };
45
+ const [open, setOpenState] = useOpenState(initialState);
46
+ const setOpenTimeoutRef = _react.useRef(0);
47
+ const setOpen = (0, _reactUtilities.useEventCallback)((e, shouldOpen)=>{
48
+ clearTimeout(setOpenTimeoutRef.current);
49
+ if (!(e instanceof Event) && e.persist) {
50
+ // < React 17 still uses pooled synthetic events
51
+ e.persist();
52
+ }
53
+ if (e.type === 'mouseleave') {
54
+ var _props_mouseLeaveDelay;
55
+ // FIXME leaking Node timeout type
56
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
57
+ // @ts-ignore
58
+ setOpenTimeoutRef.current = setTimeout(()=>{
59
+ setOpenState(e, shouldOpen);
60
+ }, (_props_mouseLeaveDelay = props.mouseLeaveDelay) !== null && _props_mouseLeaveDelay !== void 0 ? _props_mouseLeaveDelay : 500);
61
+ } else {
62
+ setOpenState(e, shouldOpen);
63
+ }
64
+ });
65
+ // Clear timeout on unmount
66
+ // Setting state after a component unmounts can cause memory leaks
67
+ _react.useEffect(()=>{
68
+ return ()=>{
69
+ clearTimeout(setOpenTimeoutRef.current);
70
+ };
71
+ }, []);
72
+ const toggleOpen = _react.useCallback((e)=>{
73
+ setOpen(e, !open);
74
+ }, [
75
+ setOpen,
76
+ open
77
+ ]);
78
+ const positioningRefs = usePopoverRefs(initialState);
79
+ const { targetDocument } = (0, _reactSharedContexts.useFluent_unstable)();
80
+ (0, _reactUtilities.useOnClickOutside)({
81
+ contains: _reactPortal.elementContains,
82
+ element: targetDocument,
83
+ callback: (ev)=>setOpen(ev, false),
84
+ refs: [
85
+ positioningRefs.triggerRef,
86
+ positioningRefs.contentRef
87
+ ],
88
+ disabled: !open
89
+ });
90
+ // only close on scroll for context, or when closeOnScroll is specified
91
+ const closeOnScroll = initialState.openOnContext || initialState.closeOnScroll;
92
+ (0, _reactUtilities.useOnScrollOutside)({
93
+ contains: _reactPortal.elementContains,
94
+ element: targetDocument,
95
+ callback: (ev)=>setOpen(ev, false),
96
+ refs: [
97
+ positioningRefs.triggerRef,
98
+ positioningRefs.contentRef
99
+ ],
100
+ disabled: !open || !closeOnScroll
101
+ });
102
+ const { findFirstFocusable } = (0, _reactTabster.useFocusFinders)();
103
+ _react.useEffect(()=>{
104
+ if (props.unstable_disableAutoFocus) {
105
+ return;
106
+ }
107
+ if (open && positioningRefs.contentRef.current) {
108
+ var _positioningRefs_contentRef_current_getAttribute;
109
+ const containerTabIndex = (_positioningRefs_contentRef_current_getAttribute = positioningRefs.contentRef.current.getAttribute('tabIndex')) !== null && _positioningRefs_contentRef_current_getAttribute !== void 0 ? _positioningRefs_contentRef_current_getAttribute : undefined;
110
+ const firstFocusable = isNaN(containerTabIndex) ? findFirstFocusable(positioningRefs.contentRef.current) : positioningRefs.contentRef.current;
111
+ firstFocusable === null || firstFocusable === void 0 ? void 0 : firstFocusable.focus();
112
+ }
113
+ }, [
114
+ findFirstFocusable,
115
+ open,
116
+ positioningRefs.contentRef,
117
+ props.unstable_disableAutoFocus
118
+ ]);
119
+ var _props_inline;
120
+ return {
121
+ ...initialState,
122
+ ...positioningRefs,
123
+ popoverTrigger,
124
+ popoverSurface,
125
+ open,
126
+ setOpen,
127
+ toggleOpen,
128
+ setContextTarget,
129
+ contextTarget,
130
+ inline: (_props_inline = props.inline) !== null && _props_inline !== void 0 ? _props_inline : false
131
+ };
127
132
  };
128
- exports.usePopover_unstable = usePopover_unstable;
129
133
  /**
130
134
  * Creates and manages the Popover open state
131
- */
132
- function useOpenState(state) {
133
- const onOpenChange = react_utilities_1.useEventCallback((e, data) => {
134
- var _a;
135
- return (_a = state.onOpenChange) === null || _a === void 0 ? void 0 : _a.call(state, e, data);
136
- });
137
- const [open, setOpenState] = react_utilities_1.useControllableState({
138
- state: state.open,
139
- defaultState: state.defaultOpen,
140
- initialState: false
141
- });
142
- state.open = open !== undefined ? open : state.open;
143
- const setContextTarget = state.setContextTarget;
144
- const setOpen = React.useCallback((e, shouldOpen) => {
145
- if (shouldOpen && e.type === 'contextmenu') {
146
- setContextTarget(e);
147
- }
148
- if (!shouldOpen) {
149
- setContextTarget(undefined);
150
- }
151
- setOpenState(shouldOpen);
152
- onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(e, {
153
- open: shouldOpen
135
+ */ function useOpenState(state) {
136
+ const onOpenChange = (0, _reactUtilities.useEventCallback)((e, data)=>{
137
+ var _state_onOpenChange;
138
+ return (_state_onOpenChange = state.onOpenChange) === null || _state_onOpenChange === void 0 ? void 0 : _state_onOpenChange.call(state, e, data);
154
139
  });
155
- }, [setOpenState, onOpenChange, setContextTarget]);
156
- return [open, setOpen];
140
+ const [open, setOpenState] = (0, _reactUtilities.useControllableState)({
141
+ state: state.open,
142
+ defaultState: state.defaultOpen,
143
+ initialState: false
144
+ });
145
+ state.open = open !== undefined ? open : state.open;
146
+ const setContextTarget = state.setContextTarget;
147
+ const setOpen = _react.useCallback((e, shouldOpen)=>{
148
+ if (shouldOpen && e.type === 'contextmenu') {
149
+ setContextTarget(e);
150
+ }
151
+ if (!shouldOpen) {
152
+ setContextTarget(undefined);
153
+ }
154
+ setOpenState(shouldOpen);
155
+ onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(e, {
156
+ open: shouldOpen
157
+ });
158
+ }, [
159
+ setOpenState,
160
+ onOpenChange,
161
+ setContextTarget
162
+ ]);
163
+ return [
164
+ open,
165
+ setOpen
166
+ ];
157
167
  }
158
168
  /**
159
169
  * Creates and sets the necessary trigger, target and content refs used by Popover
160
- */
161
- function usePopoverRefs(state) {
162
- const positioningOptions = {
163
- position: 'above',
164
- align: 'center',
165
- arrowPadding: 2 * constants_1.popoverSurfaceBorderRadius,
166
- target: state.openOnContext ? state.contextTarget : undefined,
167
- ...react_positioning_1.resolvePositioningShorthand(state.positioning)
168
- };
169
- // no reason to render arrow when covering the target
170
- if (positioningOptions.coverTarget) {
171
- state.withArrow = false;
172
- }
173
- if (state.withArrow) {
174
- positioningOptions.offset = react_positioning_1.mergeArrowOffset(positioningOptions.offset, index_1.arrowHeights[state.size]);
175
- }
176
- const {
177
- targetRef: triggerRef,
178
- containerRef: contentRef,
179
- arrowRef
180
- } = react_positioning_1.usePositioning(positioningOptions);
181
- return {
182
- triggerRef,
183
- contentRef,
184
- arrowRef
185
- };
186
- }
170
+ */ function usePopoverRefs(state) {
171
+ const positioningOptions = {
172
+ position: 'above',
173
+ align: 'center',
174
+ arrowPadding: 2 * _constants.popoverSurfaceBorderRadius,
175
+ target: state.openOnContext ? state.contextTarget : undefined,
176
+ ...(0, _reactPositioning.resolvePositioningShorthand)(state.positioning)
177
+ };
178
+ // no reason to render arrow when covering the target
179
+ if (positioningOptions.coverTarget) {
180
+ state.withArrow = false;
181
+ }
182
+ if (state.withArrow) {
183
+ positioningOptions.offset = (0, _reactPositioning.mergeArrowOffset)(positioningOptions.offset, _index.arrowHeights[state.size]);
184
+ }
185
+ const { targetRef: triggerRef , containerRef: contentRef , arrowRef } = (0, _reactPositioning.usePositioning)(positioningOptions);
186
+ return {
187
+ triggerRef,
188
+ contentRef,
189
+ arrowRef
190
+ };
191
+ } //# sourceMappingURL=usePopover.js.map
192
+
187
193
  //# sourceMappingURL=usePopover.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","require","react_utilities_1","react_shared_contexts_1","react_positioning_1","react_portal_1","react_tabster_1","index_1","constants_1","usePopover_unstable","props","contextTarget","setContextTarget","usePositioningMouseTarget","initialState","size","children","Children","toArray","process","env","NODE_ENV","length","console","warn","popoverTrigger","undefined","popoverSurface","open","setOpenState","useOpenState","setOpenTimeoutRef","useRef","setOpen","useEventCallback","e","shouldOpen","clearTimeout","current","Event","persist","type","setTimeout","_a","mouseLeaveDelay","useEffect","toggleOpen","useCallback","positioningRefs","usePopoverRefs","targetDocument","useFluent_unstable","useOnClickOutside","contains","elementContains","element","callback","ev","refs","triggerRef","contentRef","disabled","closeOnScroll","openOnContext","useOnScrollOutside","findFirstFocusable","useFocusFinders","unstable_disableAutoFocus","containerTabIndex","getAttribute","firstFocusable","isNaN","focus","inline","exports","state","onOpenChange","data","call","useControllableState","defaultState","defaultOpen","positioningOptions","position","align","arrowPadding","popoverSurfaceBorderRadius","target","resolvePositioningShorthand","positioning","coverTarget","withArrow","offset","mergeArrowOffset","arrowHeights","targetRef","containerRef","arrowRef","usePositioning"],"sources":["../src/packages/react-components/react-popover/src/components/Popover/usePopover.ts"],"sourcesContent":["import * as React from 'react';\nimport {\n useControllableState,\n useEventCallback,\n useOnClickOutside,\n useOnScrollOutside,\n} from '@fluentui/react-utilities';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\nimport {\n usePositioning,\n resolvePositioningShorthand,\n mergeArrowOffset,\n usePositioningMouseTarget,\n} from '@fluentui/react-positioning';\nimport { elementContains } from '@fluentui/react-portal';\nimport { useFocusFinders } from '@fluentui/react-tabster';\nimport { arrowHeights } from '../PopoverSurface/index';\nimport type { OpenPopoverEvents, PopoverProps, PopoverState } from './Popover.types';\nimport { popoverSurfaceBorderRadius } from './constants';\n\n/**\n * Create the state required to render Popover.\n *\n * The returned state can be modified with hooks such as usePopoverStyles,\n * before being passed to renderPopover_unstable.\n *\n * @param props - props from this instance of Popover\n */\nexport const usePopover_unstable = (props: PopoverProps): PopoverState => {\n const [contextTarget, setContextTarget] = usePositioningMouseTarget();\n const initialState = {\n size: 'medium',\n contextTarget,\n setContextTarget,\n ...props,\n } as const;\n\n const children = React.Children.toArray(props.children) as React.ReactElement[];\n\n if (process.env.NODE_ENV !== 'production') {\n if (children.length === 0) {\n // eslint-disable-next-line no-console\n console.warn('Popover must contain at least one child');\n }\n\n if (children.length > 2) {\n // eslint-disable-next-line no-console\n console.warn('Popover must contain at most two children');\n }\n }\n\n let popoverTrigger: React.ReactElement | undefined = undefined;\n let popoverSurface: React.ReactElement | undefined = undefined;\n if (children.length === 2) {\n popoverTrigger = children[0];\n popoverSurface = children[1];\n } else if (children.length === 1) {\n popoverSurface = children[0];\n }\n\n const [open, setOpenState] = useOpenState(initialState);\n\n const setOpenTimeoutRef = React.useRef(0);\n\n const setOpen = useEventCallback((e: OpenPopoverEvents, shouldOpen: boolean) => {\n clearTimeout(setOpenTimeoutRef.current);\n if (!(e instanceof Event) && e.persist) {\n // < React 17 still uses pooled synthetic events\n e.persist();\n }\n\n if (e.type === 'mouseleave') {\n // FIXME leaking Node timeout type\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n setOpenTimeoutRef.current = setTimeout(() => {\n setOpenState(e, shouldOpen);\n }, props.mouseLeaveDelay ?? 500);\n } else {\n setOpenState(e, shouldOpen);\n }\n });\n\n // Clear timeout on unmount\n // Setting state after a component unmounts can cause memory leaks\n React.useEffect(() => {\n return () => {\n clearTimeout(setOpenTimeoutRef.current);\n };\n }, []);\n\n const toggleOpen = React.useCallback<PopoverState['toggleOpen']>(\n e => {\n setOpen(e, !open);\n },\n [setOpen, open],\n );\n\n const positioningRefs = usePopoverRefs(initialState);\n\n const { targetDocument } = useFluent();\n useOnClickOutside({\n contains: elementContains,\n element: targetDocument,\n callback: ev => setOpen(ev, false),\n refs: [positioningRefs.triggerRef, positioningRefs.contentRef],\n disabled: !open,\n });\n\n // only close on scroll for context, or when closeOnScroll is specified\n const closeOnScroll = initialState.openOnContext || initialState.closeOnScroll;\n useOnScrollOutside({\n contains: elementContains,\n element: targetDocument,\n callback: ev => setOpen(ev, false),\n refs: [positioningRefs.triggerRef, positioningRefs.contentRef],\n disabled: !open || !closeOnScroll,\n });\n\n const { findFirstFocusable } = useFocusFinders();\n\n React.useEffect(() => {\n if (props.unstable_disableAutoFocus) {\n return;\n }\n\n if (open && positioningRefs.contentRef.current) {\n const containerTabIndex = positioningRefs.contentRef.current.getAttribute('tabIndex') ?? undefined;\n const firstFocusable = isNaN(containerTabIndex)\n ? findFirstFocusable(positioningRefs.contentRef.current)\n : positioningRefs.contentRef.current;\n firstFocusable?.focus();\n }\n }, [findFirstFocusable, open, positioningRefs.contentRef, props.unstable_disableAutoFocus]);\n\n return {\n ...initialState,\n ...positioningRefs,\n popoverTrigger,\n popoverSurface,\n open,\n setOpen,\n toggleOpen,\n setContextTarget,\n contextTarget,\n inline: props.inline ?? false,\n };\n};\n\n/**\n * Creates and manages the Popover open state\n */\nfunction useOpenState(\n state: Pick<PopoverState, 'setContextTarget' | 'onOpenChange'> & Pick<PopoverProps, 'open' | 'defaultOpen'>,\n) {\n const onOpenChange: PopoverState['onOpenChange'] = useEventCallback((e, data) => state.onOpenChange?.(e, data));\n\n const [open, setOpenState] = useControllableState({\n state: state.open,\n defaultState: state.defaultOpen,\n initialState: false,\n });\n state.open = open !== undefined ? open : state.open;\n const setContextTarget = state.setContextTarget;\n\n const setOpen = React.useCallback(\n (e: OpenPopoverEvents, shouldOpen: boolean) => {\n if (shouldOpen && e.type === 'contextmenu') {\n setContextTarget(e as React.MouseEvent);\n }\n\n if (!shouldOpen) {\n setContextTarget(undefined);\n }\n\n setOpenState(shouldOpen);\n onOpenChange?.(e, { open: shouldOpen });\n },\n [setOpenState, onOpenChange, setContextTarget],\n );\n\n return [open, setOpen] as const;\n}\n\n/**\n * Creates and sets the necessary trigger, target and content refs used by Popover\n */\nfunction usePopoverRefs(\n state: Pick<PopoverState, 'size' | 'contextTarget'> &\n Pick<PopoverProps, 'positioning' | 'openOnContext' | 'withArrow'>,\n) {\n const positioningOptions = {\n position: 'above' as const,\n align: 'center' as const,\n arrowPadding: 2 * popoverSurfaceBorderRadius,\n target: state.openOnContext ? state.contextTarget : undefined,\n ...resolvePositioningShorthand(state.positioning),\n };\n\n // no reason to render arrow when covering the target\n if (positioningOptions.coverTarget) {\n state.withArrow = false;\n }\n\n if (state.withArrow) {\n positioningOptions.offset = mergeArrowOffset(positioningOptions.offset, arrowHeights[state.size]);\n }\n\n const { targetRef: triggerRef, containerRef: contentRef, arrowRef } = usePositioning(positioningOptions);\n\n return {\n triggerRef,\n contentRef,\n arrowRef,\n } as const;\n}\n"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../lib/components/Popover/usePopover.js"],"sourcesContent":["import * as React from 'react';\nimport { useControllableState, useEventCallback, useOnClickOutside, useOnScrollOutside } from '@fluentui/react-utilities';\nimport { useFluent_unstable as useFluent } from '@fluentui/react-shared-contexts';\nimport { usePositioning, resolvePositioningShorthand, mergeArrowOffset, usePositioningMouseTarget } from '@fluentui/react-positioning';\nimport { elementContains } from '@fluentui/react-portal';\nimport { useFocusFinders } from '@fluentui/react-tabster';\nimport { arrowHeights } from '../PopoverSurface/index';\nimport { popoverSurfaceBorderRadius } from './constants';\n/**\n * Create the state required to render Popover.\n *\n * The returned state can be modified with hooks such as usePopoverStyles,\n * before being passed to renderPopover_unstable.\n *\n * @param props - props from this instance of Popover\n */\nexport const usePopover_unstable = props => {\n const [contextTarget, setContextTarget] = usePositioningMouseTarget();\n const initialState = {\n size: 'medium',\n contextTarget,\n setContextTarget,\n ...props\n };\n const children = React.Children.toArray(props.children);\n if (process.env.NODE_ENV !== 'production') {\n if (children.length === 0) {\n // eslint-disable-next-line no-console\n console.warn('Popover must contain at least one child');\n }\n if (children.length > 2) {\n // eslint-disable-next-line no-console\n console.warn('Popover must contain at most two children');\n }\n }\n let popoverTrigger = undefined;\n let popoverSurface = undefined;\n if (children.length === 2) {\n popoverTrigger = children[0];\n popoverSurface = children[1];\n } else if (children.length === 1) {\n popoverSurface = children[0];\n }\n const [open, setOpenState] = useOpenState(initialState);\n const setOpenTimeoutRef = React.useRef(0);\n const setOpen = useEventCallback((e, shouldOpen) => {\n clearTimeout(setOpenTimeoutRef.current);\n if (!(e instanceof Event) && e.persist) {\n // < React 17 still uses pooled synthetic events\n e.persist();\n }\n if (e.type === 'mouseleave') {\n var _props_mouseLeaveDelay;\n // FIXME leaking Node timeout type\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n setOpenTimeoutRef.current = setTimeout(() => {\n setOpenState(e, shouldOpen);\n }, (_props_mouseLeaveDelay = props.mouseLeaveDelay) !== null && _props_mouseLeaveDelay !== void 0 ? _props_mouseLeaveDelay : 500);\n } else {\n setOpenState(e, shouldOpen);\n }\n });\n // Clear timeout on unmount\n // Setting state after a component unmounts can cause memory leaks\n React.useEffect(() => {\n return () => {\n clearTimeout(setOpenTimeoutRef.current);\n };\n }, []);\n const toggleOpen = React.useCallback(e => {\n setOpen(e, !open);\n }, [setOpen, open]);\n const positioningRefs = usePopoverRefs(initialState);\n const {\n targetDocument\n } = useFluent();\n useOnClickOutside({\n contains: elementContains,\n element: targetDocument,\n callback: ev => setOpen(ev, false),\n refs: [positioningRefs.triggerRef, positioningRefs.contentRef],\n disabled: !open\n });\n // only close on scroll for context, or when closeOnScroll is specified\n const closeOnScroll = initialState.openOnContext || initialState.closeOnScroll;\n useOnScrollOutside({\n contains: elementContains,\n element: targetDocument,\n callback: ev => setOpen(ev, false),\n refs: [positioningRefs.triggerRef, positioningRefs.contentRef],\n disabled: !open || !closeOnScroll\n });\n const {\n findFirstFocusable\n } = useFocusFinders();\n React.useEffect(() => {\n if (props.unstable_disableAutoFocus) {\n return;\n }\n if (open && positioningRefs.contentRef.current) {\n var _positioningRefs_contentRef_current_getAttribute;\n const containerTabIndex = (_positioningRefs_contentRef_current_getAttribute = positioningRefs.contentRef.current.getAttribute('tabIndex')) !== null && _positioningRefs_contentRef_current_getAttribute !== void 0 ? _positioningRefs_contentRef_current_getAttribute : undefined;\n const firstFocusable = isNaN(containerTabIndex) ? findFirstFocusable(positioningRefs.contentRef.current) : positioningRefs.contentRef.current;\n firstFocusable === null || firstFocusable === void 0 ? void 0 : firstFocusable.focus();\n }\n }, [findFirstFocusable, open, positioningRefs.contentRef, props.unstable_disableAutoFocus]);\n var _props_inline;\n return {\n ...initialState,\n ...positioningRefs,\n popoverTrigger,\n popoverSurface,\n open,\n setOpen,\n toggleOpen,\n setContextTarget,\n contextTarget,\n inline: (_props_inline = props.inline) !== null && _props_inline !== void 0 ? _props_inline : false\n };\n};\n/**\n * Creates and manages the Popover open state\n */\nfunction useOpenState(state) {\n const onOpenChange = useEventCallback((e, data) => {\n var _state_onOpenChange;\n return (_state_onOpenChange = state.onOpenChange) === null || _state_onOpenChange === void 0 ? void 0 : _state_onOpenChange.call(state, e, data);\n });\n const [open, setOpenState] = useControllableState({\n state: state.open,\n defaultState: state.defaultOpen,\n initialState: false\n });\n state.open = open !== undefined ? open : state.open;\n const setContextTarget = state.setContextTarget;\n const setOpen = React.useCallback((e, shouldOpen) => {\n if (shouldOpen && e.type === 'contextmenu') {\n setContextTarget(e);\n }\n if (!shouldOpen) {\n setContextTarget(undefined);\n }\n setOpenState(shouldOpen);\n onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(e, {\n open: shouldOpen\n });\n }, [setOpenState, onOpenChange, setContextTarget]);\n return [open, setOpen];\n}\n/**\n * Creates and sets the necessary trigger, target and content refs used by Popover\n */\nfunction usePopoverRefs(state) {\n const positioningOptions = {\n position: 'above',\n align: 'center',\n arrowPadding: 2 * popoverSurfaceBorderRadius,\n target: state.openOnContext ? state.contextTarget : undefined,\n ...resolvePositioningShorthand(state.positioning)\n };\n // no reason to render arrow when covering the target\n if (positioningOptions.coverTarget) {\n state.withArrow = false;\n }\n if (state.withArrow) {\n positioningOptions.offset = mergeArrowOffset(positioningOptions.offset, arrowHeights[state.size]);\n }\n const {\n targetRef: triggerRef,\n containerRef: contentRef,\n arrowRef\n } = usePositioning(positioningOptions);\n return {\n triggerRef,\n contentRef,\n arrowRef\n };\n}\n//# sourceMappingURL=usePopover.js.map"],"names":["usePopover_unstable","props","contextTarget","setContextTarget","usePositioningMouseTarget","initialState","size","children","React","Children","toArray","process","env","NODE_ENV","length","console","warn","popoverTrigger","undefined","popoverSurface","open","setOpenState","useOpenState","setOpenTimeoutRef","useRef","setOpen","useEventCallback","e","shouldOpen","clearTimeout","current","Event","persist","type","_props_mouseLeaveDelay","setTimeout","mouseLeaveDelay","useEffect","toggleOpen","useCallback","positioningRefs","usePopoverRefs","targetDocument","useFluent","useOnClickOutside","contains","elementContains","element","callback","ev","refs","triggerRef","contentRef","disabled","closeOnScroll","openOnContext","useOnScrollOutside","findFirstFocusable","useFocusFinders","unstable_disableAutoFocus","_positioningRefs_contentRef_current_getAttribute","containerTabIndex","getAttribute","firstFocusable","isNaN","focus","_props_inline","inline","state","onOpenChange","data","_state_onOpenChange","call","useControllableState","defaultState","defaultOpen","positioningOptions","position","align","arrowPadding","popoverSurfaceBorderRadius","target","resolvePositioningShorthand","positioning","coverTarget","withArrow","offset","mergeArrowOffset","arrowHeights","targetRef","containerRef","arrowRef","usePositioning"],"mappings":"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"}
@@ -1,25 +1,24 @@
1
1
  "use strict";
2
-
3
2
  Object.defineProperty(exports, "__esModule", {
4
- value: true
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "PopoverSurface", {
6
+ enumerable: true,
7
+ get: ()=>PopoverSurface
5
8
  });
6
- exports.PopoverSurface = void 0;
7
- const React = /*#__PURE__*/require("react");
8
- const usePopoverSurface_1 = /*#__PURE__*/require("./usePopoverSurface");
9
- const renderPopoverSurface_1 = /*#__PURE__*/require("./renderPopoverSurface");
10
- const usePopoverSurfaceStyles_1 = /*#__PURE__*/require("./usePopoverSurfaceStyles");
11
- const react_shared_contexts_1 = /*#__PURE__*/require("@fluentui/react-shared-contexts");
12
- /**
13
- * PopoverSurface component renders react children in a positioned box
14
- */
15
- exports.PopoverSurface = /*#__PURE__*/React.forwardRef((props, ref) => {
16
- const state = usePopoverSurface_1.usePopoverSurface_unstable(props, ref);
17
- usePopoverSurfaceStyles_1.usePopoverSurfaceStyles_unstable(state);
18
- const {
19
- usePopoverSurfaceStyles_unstable: useCustomStyles
20
- } = react_shared_contexts_1.useCustomStyleHooks_unstable();
21
- useCustomStyles(state);
22
- return renderPopoverSurface_1.renderPopoverSurface_unstable(state);
9
+ const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
10
+ const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
11
+ const _usePopoverSurface = require("./usePopoverSurface");
12
+ const _renderPopoverSurface = require("./renderPopoverSurface");
13
+ const _usePopoverSurfaceStyles = require("./usePopoverSurfaceStyles");
14
+ const _reactSharedContexts = require("@fluentui/react-shared-contexts");
15
+ const PopoverSurface = /*#__PURE__*/ _react.forwardRef((props, ref)=>{
16
+ const state = (0, _usePopoverSurface.usePopoverSurface_unstable)(props, ref);
17
+ (0, _usePopoverSurfaceStyles.usePopoverSurfaceStyles_unstable)(state);
18
+ const { usePopoverSurfaceStyles_unstable: useCustomStyles } = (0, _reactSharedContexts.useCustomStyleHooks_unstable)();
19
+ useCustomStyles(state);
20
+ return (0, _renderPopoverSurface.renderPopoverSurface_unstable)(state);
23
21
  });
24
- exports.PopoverSurface.displayName = 'PopoverSurface';
22
+ PopoverSurface.displayName = 'PopoverSurface'; //# sourceMappingURL=PopoverSurface.js.map
23
+
25
24
  //# sourceMappingURL=PopoverSurface.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","require","usePopoverSurface_1","renderPopoverSurface_1","usePopoverSurfaceStyles_1","react_shared_contexts_1","exports","PopoverSurface","forwardRef","props","ref","state","usePopoverSurface_unstable","usePopoverSurfaceStyles_unstable","useCustomStyles","useCustomStyleHooks_unstable","renderPopoverSurface_unstable","displayName"],"sources":["../src/packages/react-components/react-popover/src/components/PopoverSurface/PopoverSurface.tsx"],"sourcesContent":["import * as React from 'react';\nimport { usePopoverSurface_unstable } from './usePopoverSurface';\nimport { renderPopoverSurface_unstable } from './renderPopoverSurface';\nimport { usePopoverSurfaceStyles_unstable } from './usePopoverSurfaceStyles';\nimport type { PopoverSurfaceProps } from './PopoverSurface.types';\nimport type { ForwardRefComponent } from '@fluentui/react-utilities';\nimport { useCustomStyleHooks_unstable } from '@fluentui/react-shared-contexts';\n\n/**\n * PopoverSurface component renders react children in a positioned box\n */\nexport const PopoverSurface: ForwardRefComponent<PopoverSurfaceProps> = React.forwardRef((props, ref) => {\n const state = usePopoverSurface_unstable(props, ref);\n\n usePopoverSurfaceStyles_unstable(state);\n\n const { usePopoverSurfaceStyles_unstable: useCustomStyles } = useCustomStyleHooks_unstable();\n useCustomStyles(state);\n\n return renderPopoverSurface_unstable(state);\n});\n\nPopoverSurface.displayName = 'PopoverSurface';\n"],"mappings":";;;;;;AAAA,MAAAA,KAAA,gBAAAC,OAAA;AACA,MAAAC,mBAAA,gBAAAD,OAAA;AACA,MAAAE,sBAAA,gBAAAF,OAAA;AACA,MAAAG,yBAAA,gBAAAH,OAAA;AAGA,MAAAI,uBAAA,gBAAAJ,OAAA;AAEA;;;AAGaK,OAAA,CAAAC,cAAc,gBAA6CP,KAAK,CAACQ,UAAU,CAAC,CAACC,KAAK,EAAEC,GAAG,KAAI;EACtG,MAAMC,KAAK,GAAGT,mBAAA,CAAAU,0BAA0B,CAACH,KAAK,EAAEC,GAAG,CAAC;EAEpDN,yBAAA,CAAAS,gCAAgC,CAACF,KAAK,CAAC;EAEvC,MAAM;IAAEE,gCAAgC,EAAEC;EAAe,CAAE,GAAGT,uBAAA,CAAAU,4BAA4B,EAAE;EAC5FD,eAAe,CAACH,KAAK,CAAC;EAEtB,OAAOR,sBAAA,CAAAa,6BAA6B,CAACL,KAAK,CAAC;AAC7C,CAAC,CAAC;AAEFL,OAAA,CAAAC,cAAc,CAACU,WAAW,GAAG,gBAAgB"}
1
+ {"version":3,"sources":["../../../lib/components/PopoverSurface/PopoverSurface.js"],"sourcesContent":["import * as React from 'react';\nimport { usePopoverSurface_unstable } from './usePopoverSurface';\nimport { renderPopoverSurface_unstable } from './renderPopoverSurface';\nimport { usePopoverSurfaceStyles_unstable } from './usePopoverSurfaceStyles';\nimport { useCustomStyleHooks_unstable } from '@fluentui/react-shared-contexts';\n/**\n * PopoverSurface component renders react children in a positioned box\n */\nexport const PopoverSurface = /*#__PURE__*/React.forwardRef((props, ref) => {\n const state = usePopoverSurface_unstable(props, ref);\n usePopoverSurfaceStyles_unstable(state);\n const {\n usePopoverSurfaceStyles_unstable: useCustomStyles\n } = useCustomStyleHooks_unstable();\n useCustomStyles(state);\n return renderPopoverSurface_unstable(state);\n});\nPopoverSurface.displayName = 'PopoverSurface';\n//# sourceMappingURL=PopoverSurface.js.map"],"names":["PopoverSurface","React","forwardRef","props","ref","state","usePopoverSurface_unstable","usePopoverSurfaceStyles_unstable","useCustomStyles","useCustomStyleHooks_unstable","renderPopoverSurface_unstable","displayName"],"mappings":";;;;+BAQaA;;aAAAA;;;6DARU;mCACoB;sCACG;yCACG;qCACJ;AAItC,MAAMA,iBAAiB,WAAW,GAAEC,OAAMC,UAAU,CAAC,CAACC,OAAOC,MAAQ;IAC1E,MAAMC,QAAQC,IAAAA,6CAA0B,EAACH,OAAOC;IAChDG,IAAAA,yDAAgC,EAACF;IACjC,MAAM,EACJE,kCAAkCC,gBAAe,EAClD,GAAGC,IAAAA,iDAA4B;IAChCD,gBAAgBH;IAChB,OAAOK,IAAAA,mDAA6B,EAACL;AACvC;AACAL,eAAeW,WAAW,GAAG,kBAC7B,0CAA0C"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
-
3
2
  Object.defineProperty(exports, "__esModule", {
4
- value: true
3
+ value: true
5
4
  });
5
+ //# sourceMappingURL=PopoverSurface.types.js.map
6
+
6
7
  //# sourceMappingURL=PopoverSurface.types.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["../src/packages/react-components/react-popover/src/components/PopoverSurface/PopoverSurface.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\nimport type { PopoverContextValue } from '../../popoverContext';\n\n/**\n * PopoverSurface Props\n */\nexport type PopoverSurfaceProps = ComponentProps<PopoverSurfaceSlots>;\n\n/**\n * Names of the slots in PopoverSurfaceProps\n */\nexport type PopoverSurfaceSlots = {\n root: Slot<'div'>;\n};\n\n/**\n * PopoverSurface State\n */\nexport type PopoverSurfaceState = ComponentState<PopoverSurfaceSlots> &\n Pick<PopoverContextValue, 'appearance' | 'arrowRef' | 'inline' | 'mountNode' | 'size' | 'withArrow'> & {\n /**\n * CSS class for the arrow element\n */\n arrowClassName?: string;\n };\n"],"mappings":""}
1
+ {"version":3,"sources":["../../../lib/components/PopoverSurface/PopoverSurface.types.js"],"sourcesContent":["export {};\n//# sourceMappingURL=PopoverSurface.types.js.map"],"names":[],"mappings":";;;;CACA,gDAAgD"}
@@ -1,12 +1,13 @@
1
1
  "use strict";
2
-
3
2
  Object.defineProperty(exports, "__esModule", {
4
- value: true
3
+ value: true
5
4
  });
6
- const tslib_1 = /*#__PURE__*/require("tslib");
7
- tslib_1.__exportStar(require("./PopoverSurface"), exports);
8
- tslib_1.__exportStar(require("./PopoverSurface.types"), exports);
9
- tslib_1.__exportStar(require("./renderPopoverSurface"), exports);
10
- tslib_1.__exportStar(require("./usePopoverSurface"), exports);
11
- tslib_1.__exportStar(require("./usePopoverSurfaceStyles"), exports);
5
+ const _exportStar = require("@swc/helpers/lib/_export_star.js").default;
6
+ _exportStar(require("./PopoverSurface"), exports);
7
+ _exportStar(require("./PopoverSurface.types"), exports);
8
+ _exportStar(require("./renderPopoverSurface"), exports);
9
+ _exportStar(require("./usePopoverSurface"), exports);
10
+ _exportStar(require("./usePopoverSurfaceStyles"), exports);
11
+ //# sourceMappingURL=index.js.map
12
+
12
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["tslib_1","__exportStar","require","exports"],"sources":["../src/packages/react-components/react-popover/src/components/PopoverSurface/index.ts"],"sourcesContent":["export * from './PopoverSurface';\nexport * from './PopoverSurface.types';\nexport * from './renderPopoverSurface';\nexport * from './usePopoverSurface';\nexport * from './usePopoverSurfaceStyles';\n"],"mappings":";;;;;;AAAAA,OAAA,CAAAC,YAAA,CAAAC,OAAA,sBAAAC,OAAA;AACAH,OAAA,CAAAC,YAAA,CAAAC,OAAA,4BAAAC,OAAA;AACAH,OAAA,CAAAC,YAAA,CAAAC,OAAA,4BAAAC,OAAA;AACAH,OAAA,CAAAC,YAAA,CAAAC,OAAA,yBAAAC,OAAA;AACAH,OAAA,CAAAC,YAAA,CAAAC,OAAA,+BAAAC,OAAA"}
1
+ {"version":3,"sources":["../../../lib/components/PopoverSurface/index.js"],"sourcesContent":["export * from './PopoverSurface';\nexport * from './PopoverSurface.types';\nexport * from './renderPopoverSurface';\nexport * from './usePopoverSurface';\nexport * from './usePopoverSurfaceStyles';\n//# sourceMappingURL=index.js.map"],"names":[],"mappings":";;;;;oBAAc;oBACA;oBACA;oBACA;oBACA;CACd,iCAAiC"}
@@ -1,32 +1,27 @@
1
1
  "use strict";
2
-
3
2
  Object.defineProperty(exports, "__esModule", {
4
- value: true
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "renderPopoverSurface_unstable", {
6
+ enumerable: true,
7
+ get: ()=>renderPopoverSurface_unstable
5
8
  });
6
- exports.renderPopoverSurface_unstable = void 0;
7
- const React = /*#__PURE__*/require("react");
8
- const react_portal_1 = /*#__PURE__*/require("@fluentui/react-portal");
9
- const react_utilities_1 = /*#__PURE__*/require("@fluentui/react-utilities");
10
- /**
11
- * Render the final JSX of PopoverSurface
12
- */
13
- const renderPopoverSurface_unstable = state => {
14
- const {
15
- slots,
16
- slotProps
17
- } = react_utilities_1.getSlots(state);
18
- const surface = React.createElement(slots.root, {
19
- ...slotProps.root
20
- }, state.withArrow && React.createElement("div", {
21
- ref: state.arrowRef,
22
- className: state.arrowClassName
23
- }), slotProps.root.children);
24
- if (state.inline) {
25
- return surface;
26
- }
27
- return React.createElement(react_portal_1.Portal, {
28
- mountNode: state.mountNode
29
- }, surface);
30
- };
31
- exports.renderPopoverSurface_unstable = renderPopoverSurface_unstable;
9
+ const _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
10
+ const _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
11
+ const _reactPortal = require("@fluentui/react-portal");
12
+ const _reactUtilities = require("@fluentui/react-utilities");
13
+ const renderPopoverSurface_unstable = (state)=>{
14
+ const { slots , slotProps } = (0, _reactUtilities.getSlots)(state);
15
+ const surface = /*#__PURE__*/ _react.createElement(slots.root, slotProps.root, state.withArrow && /*#__PURE__*/ _react.createElement("div", {
16
+ ref: state.arrowRef,
17
+ className: state.arrowClassName
18
+ }), slotProps.root.children);
19
+ if (state.inline) {
20
+ return surface;
21
+ }
22
+ return /*#__PURE__*/ _react.createElement(_reactPortal.Portal, {
23
+ mountNode: state.mountNode
24
+ }, surface);
25
+ }; //# sourceMappingURL=renderPopoverSurface.js.map
26
+
32
27
  //# sourceMappingURL=renderPopoverSurface.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","require","react_portal_1","react_utilities_1","renderPopoverSurface_unstable","state","slots","slotProps","getSlots","surface","createElement","root","withArrow","ref","arrowRef","className","arrowClassName","children","inline","Portal","mountNode","exports"],"sources":["../src/packages/react-components/react-popover/src/components/PopoverSurface/renderPopoverSurface.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Portal } from '@fluentui/react-portal';\nimport { getSlots } from '@fluentui/react-utilities';\nimport type { PopoverSurfaceSlots, PopoverSurfaceState } from './PopoverSurface.types';\n\n/**\n * Render the final JSX of PopoverSurface\n */\nexport const renderPopoverSurface_unstable = (state: PopoverSurfaceState) => {\n const { slots, slotProps } = getSlots<PopoverSurfaceSlots>(state);\n\n const surface = (\n <slots.root {...slotProps.root}>\n {state.withArrow && <div ref={state.arrowRef} className={state.arrowClassName} />}\n {slotProps.root.children}\n </slots.root>\n );\n\n if (state.inline) {\n return surface;\n }\n\n return <Portal mountNode={state.mountNode}>{surface}</Portal>;\n};\n"],"mappings":";;;;;;AAAA,MAAAA,KAAA,gBAAAC,OAAA;AACA,MAAAC,cAAA,gBAAAD,OAAA;AACA,MAAAE,iBAAA,gBAAAF,OAAA;AAGA;;;AAGO,MAAMG,6BAA6B,GAAIC,KAA0B,IAAI;EAC1E,MAAM;IAAEC,KAAK;IAAEC;EAAS,CAAE,GAAGJ,iBAAA,CAAAK,QAAQ,CAAsBH,KAAK,CAAC;EAEjE,MAAMI,OAAO,GACXT,KAAA,CAAAU,aAAA,CAACJ,KAAK,CAACK,IAAI;IAAA,GAAKJ,SAAS,CAACI;EAAI,GAC3BN,KAAK,CAACO,SAAS,IAAIZ,KAAA,CAAAU,aAAA;IAAKG,GAAG,EAAER,KAAK,CAACS,QAAQ;IAAEC,SAAS,EAAEV,KAAK,CAACW;EAAc,EAAI,EAChFT,SAAS,CAACI,IAAI,CAACM,QAAQ,CAE3B;EAED,IAAIZ,KAAK,CAACa,MAAM,EAAE;IAChB,OAAOT,OAAO;;EAGhB,OAAOT,KAAA,CAAAU,aAAA,CAACR,cAAA,CAAAiB,MAAM;IAACC,SAAS,EAAEf,KAAK,CAACe;EAAS,GAAGX,OAAO,CAAU;AAC/D,CAAC;AAfYY,OAAA,CAAAjB,6BAA6B,GAAAA,6BAAA"}
1
+ {"version":3,"sources":["../../../lib/components/PopoverSurface/renderPopoverSurface.js"],"sourcesContent":["import * as React from 'react';\nimport { Portal } from '@fluentui/react-portal';\nimport { getSlots } from '@fluentui/react-utilities';\n/**\n * Render the final JSX of PopoverSurface\n */\nexport const renderPopoverSurface_unstable = state => {\n const {\n slots,\n slotProps\n } = getSlots(state);\n const surface = /*#__PURE__*/React.createElement(slots.root, slotProps.root, state.withArrow && /*#__PURE__*/React.createElement(\"div\", {\n ref: state.arrowRef,\n className: state.arrowClassName\n }), slotProps.root.children);\n if (state.inline) {\n return surface;\n }\n return /*#__PURE__*/React.createElement(Portal, {\n mountNode: state.mountNode\n }, surface);\n};\n//# sourceMappingURL=renderPopoverSurface.js.map"],"names":["renderPopoverSurface_unstable","state","slots","slotProps","getSlots","surface","React","createElement","root","withArrow","ref","arrowRef","className","arrowClassName","children","inline","Portal","mountNode"],"mappings":";;;;+BAMaA;;aAAAA;;;6DANU;6BACA;gCACE;AAIlB,MAAMA,gCAAgCC,CAAAA,QAAS;IACpD,MAAM,EACJC,MAAK,EACLC,UAAS,EACV,GAAGC,IAAAA,wBAAQ,EAACH;IACb,MAAMI,UAAU,WAAW,GAAEC,OAAMC,aAAa,CAACL,MAAMM,IAAI,EAAEL,UAAUK,IAAI,EAAEP,MAAMQ,SAAS,IAAI,WAAW,GAAEH,OAAMC,aAAa,CAAC,OAAO;QACtIG,KAAKT,MAAMU,QAAQ;QACnBC,WAAWX,MAAMY,cAAc;IACjC,IAAIV,UAAUK,IAAI,CAACM,QAAQ;IAC3B,IAAIb,MAAMc,MAAM,EAAE;QAChB,OAAOV;IACT,CAAC;IACD,OAAO,WAAW,GAAEC,OAAMC,aAAa,CAACS,mBAAM,EAAE;QAC9CC,WAAWhB,MAAMgB,SAAS;IAC5B,GAAGZ;AACL,GACA,gDAAgD"}